Create an iterator rooted at the registry root.
- macOS 10.0+
- Mac Catalyst 13.0+Beta
The master port obtained from IOMasterPort(). Pass kIOMasterPortDefault to look up the default master port.
The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.
kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNext calls on the registry iterator.
A created iterator handle, to be released by the caller when it has finished with it.
A kern_return_t error code.
This method creates an IORegistryIterator in the kernel that is set up with options to iterate children of the registry root entry, and to recurse automatically into entries as they are returned, or only when instructed with calls to IORegistryIteratorEnterEntry. The iterator object keeps track of entries that have been recursed into previously to avoid loops.
Create a matching dictionary that specifies an IOService match based on BSD device name.
Creates and returns a mach port suitable for receiving IOKit messages of the specified type.
Returns the mach port used to initiate communication with IOKit.
Creates and returns a notification object for receiving IOKit notifications of new devices or state changes.
Returns kernel retain count of an IOKit object. Identical to IOObjectGetKernelRetainCount() but available prior to Mac OS 10.6.
Checks two object handles to see if they represent the same kernel object.
Retains an object handle previously returned by IOKitLib.
Look up registered IOService objects that match a matching dictionary, and install a notification request of new IOServices that match.
Close a connection to an IOService and destroy the connect handle.
Create a matching dictionary that specifies an IOService class match.
This documentation contains preliminary information about an API or technology in development. This information is subject to change, and software implemented according to this documentation should be tested with final operating system software.Learn more about using Apple's beta software