Create an iterator rooted at a given registry entry.
- macOS 10.0+
- Mac Catalyst 13.0+
The root entry to begin the iteration at.
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. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.
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 or parents of a 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.