#include <IOKit/IORegistryEntry.h>
IOKit/IORegistryEntry.h
@parseOnly
variablegIONameKey
extern const OSSymbol * gIONameKey
variablegIOLocationKey
extern const OSSymbol * gIOLocationKey
variablegIORegistryEntryIDKey
extern const OSSymbol * gIORegistryEntryIDKey
variablegIORegistryEntryPropertyKeysKey
extern const OSSymbol * gIORegistryEntryPropertyKeysKey
variablegIORegistryEntryAllowableSetPropertiesKey
extern const OSSymbol * gIORegistryEntryAllowableSetPropertiesKey
variablegIORegistryEntryDefaultLockingSetPropertiesKey
extern const OSSymbol * gIORegistryEntryDefaultLockingSetPropertiesKey
typedefIORegistryEntryApplierFunction
typedef void (*)(IORegistryEntry *, void *) IORegistryEntryApplierFunction;
enum(anonymous)
| kIORegistryIterateRecursively | 1 | |
| kIORegistryIterateParents | 2 |
classIORegistryEntry
: public OSObject
| ExpansionData * | reserved |
virtual OSPtr<OSObject> copyProperty( const char * aKey, const IORegistryPlane * plane, IOOptionBits options = kIORegistryIterateRecursively | kIORegistryIterateParents ) constvirtual
virtual OSPtr<OSObject> copyProperty( const OSString * aKey, const IORegistryPlane * plane, IOOptionBits options = kIORegistryIterateRecursively | kIORegistryIterateParents ) constvirtual
virtual OSPtr<OSObject> copyProperty( const OSSymbol * aKey, const IORegistryPlane * plane, IOOptionBits options = kIORegistryIterateRecursively | kIORegistryIterateParents ) constvirtual
virtual OSPtr<IORegistryEntry> copyParentEntry(const IORegistryPlane * plane) constvirtual
virtual OSPtr<IORegistryEntry> copyChildEntry(const IORegistryPlane * plane) constvirtual
virtual IOReturn runPropertyAction( Action action, OSObject *target, void *arg0 = NULL, void *arg1 = NULL, void *arg2 = NULL, void *arg3 = NULL )virtual
@function runPropertyAction
@abstract Single thread a call to an action w.r.t. the property lock
@discussion Client function that causes the given action to be called in a manner that syncrhonises with the registry iterators and serialisers. This functin can be used to synchronously manipulate the property table of this nub
@param action Pointer to function to be executed in work-loop context.
@param arg0 Parameter for action parameter, defaults to 0.
@param arg1 Parameter for action parameter, defaults to 0.
@param arg2 Parameter for action parameter, defaults to 0.
@param arg3 Parameter for action parameter, defaults to 0.
@result Returns the value of the Action callout.
IOReturn runPropertyActionBlock(ActionBlock block)
static IORegistryEntry * getRegistryRoot(void)static
static SInt32 getGenerationCount(void)static
static const IORegistryPlane * getPlane(const char * name)static
virtual bool init(OSDictionary * dictionary = NULL)virtual
APPLE_KEXT_OVERRIDE
virtual void free(void)virtualvirtual void setPropertyTable(OSDictionary * dict)virtual
virtual bool setProperty(const char * aKey, OSObject * anObject)virtual
virtual bool setProperty(const char * aKey, const char * aString)virtual
virtual bool setProperty(const char * aKey, bool aBoolean)virtual
virtual bool setProperty( const char * aKey, unsigned long long aValue, unsigned int aNumberOfBits )virtual
virtual bool setProperty(const char * aKey, void * bytes, unsigned int length)virtual
virtual void removeProperty(const OSSymbol * aKey)virtual
virtual void removeProperty(const OSString * aKey)virtual
virtual void removeProperty(const char * aKey)virtual
virtual OSObject * getProperty(const char * aKey) constvirtual
bool propertyExists(const OSSymbol * aKey)
bool propertyExists(const OSString * aKey)
bool propertyExists(const char * aKey)
bool propertyHasValue(const char * aKey, const OSObject * value)
virtual OSObject * getProperty( const OSSymbol * aKey, const IORegistryPlane * plane, IOOptionBits options = kIORegistryIterateRecursively | kIORegistryIterateParents ) constvirtual
virtual OSObject * getProperty( const OSString * aKey, const IORegistryPlane * plane, IOOptionBits options = kIORegistryIterateRecursively | kIORegistryIterateParents ) constvirtual
virtual OSObject * getProperty( const char * aKey, const IORegistryPlane * plane, IOOptionBits options = kIORegistryIterateRecursively | kIORegistryIterateParents ) constvirtual
bool propertyExists( const OSSymbol * aKey, const IORegistryPlane * plane, uint32_t options = kIORegistryIterateRecursively | kIORegistryIterateParents ) const
bool propertyExists( const OSString * aKey, const IORegistryPlane * plane, uint32_t options = kIORegistryIterateRecursively | kIORegistryIterateParents ) const
bool propertyExists( const char * aKey, const IORegistryPlane * plane, uint32_t options = kIORegistryIterateRecursively | kIORegistryIterateParents ) const
bool propertyHasValue( const OSSymbol * aKey, const OSObject * value, const IORegistryPlane * plane, uint32_t options = kIORegistryIterateRecursively | kIORegistryIterateParents ) const
bool propertyHasValue( const OSString * aKey, const OSObject * value, const IORegistryPlane * plane, uint32_t options = kIORegistryIterateRecursively | kIORegistryIterateParents ) const
bool propertyHasValue( const char * aKey, const OSObject * value, const IORegistryPlane * plane, uint32_t options = kIORegistryIterateRecursively | kIORegistryIterateParents ) const
virtual OSPtr<OSObject> copyProperty(const char * aKey) constvirtual
virtual OSPtr<OSDictionary> dictionaryWithProperties(void) constvirtual
virtual bool serializeProperties(OSSerialize * serialize) constvirtual
OSDictionary * getPropertyTable(void) const
inline
virtual OSPtr<OSIterator> getParentIterator(const IORegistryPlane * plane) constvirtual
virtual void applyToParents( IORegistryEntryApplierFunction applier, void * context, const IORegistryPlane * plane ) constvirtual
virtual IORegistryEntry * getParentEntry(const IORegistryPlane * plane) constvirtual
virtual OSPtr<OSIterator> getChildIterator(const IORegistryPlane * plane) constvirtual
virtual void applyToChildren( IORegistryEntryApplierFunction applier, void * context, const IORegistryPlane * plane ) constvirtual
virtual IORegistryEntry * getChildEntry(const IORegistryPlane * plane) constvirtual
virtual bool isChild( IORegistryEntry * child, const IORegistryPlane * plane, bool onlyChild = false ) constvirtual
virtual bool isParent( IORegistryEntry * parent, const IORegistryPlane * plane, bool onlyParent = false ) constvirtual
virtual bool inPlane(const IORegistryPlane * plane = NULL) constvirtual
virtual unsigned int getDepth(const IORegistryPlane * plane) constvirtual
virtual bool attachToParent(IORegistryEntry * parent, const IORegistryPlane * plane)virtual
virtual void detachFromParent(IORegistryEntry * parent, const IORegistryPlane * plane)virtual
virtual bool attachToChild(IORegistryEntry * child, const IORegistryPlane * plane)virtual
virtual void detachFromChild(IORegistryEntry * child, const IORegistryPlane * plane)virtual
virtual void detachAbove(const IORegistryPlane * plane)virtual
virtual void detachAll(const IORegistryPlane * plane)virtual
virtual const char * getName(const IORegistryPlane * plane = NULL) constvirtual
virtual void setName(const char * name, const IORegistryPlane * plane = NULL)virtual
virtual const char * getLocation(const IORegistryPlane * plane = NULL) constvirtual
virtual void setLocation(const char * location, const IORegistryPlane * plane = NULL)virtual
virtual bool getPath(char * path, int * length, const IORegistryPlane * plane) constvirtual
virtual bool getPathComponent( char * path, int * length, const IORegistryPlane * plane ) constvirtual
static OSPtr<IORegistryEntry> fromPath( const char * path, const IORegistryPlane * plane = NULL, char * residualPath = NULL, int * residualLength = NULL, IORegistryEntry * fromEntry = NULL )static
virtual OSPtr<IORegistryEntry> childFromPath( const char * path, const IORegistryPlane * plane = NULL, char * residualPath = NULL, int * residualLength = NULL )virtual
static const char * dealiasPath(const char ** opath, const IORegistryPlane * plane)static
static OSPtr<const IORegistryPlane> makePlane(const char * name)static
uint64_t getRegistryEntryID(void)
virtual bool init(IORegistryEntry * from, const IORegistryPlane * inPlane)virtual
classIORegistryIterator
: public OSIterator
static OSPtr<IORegistryIterator> iterateOver( IORegistryEntry * start, const IORegistryPlane * plane, IOOptionBits options = 0 )static
static OSPtr<IORegistryIterator> iterateOver( const IORegistryPlane * plane, IOOptionBits options = 0 )static
APPLE_KEXT_OVERRIDE virtual IORegistryEntry * getNextObject(void)virtual
virtual IORegistryEntry * getNextObjectFlat(void)virtual
virtual IORegistryEntry * getNextObjectRecursive(void)virtual
virtual IORegistryEntry * getCurrentEntry(void)virtual
virtual void enterEntry(void)virtual
virtual void enterEntry(const IORegistryPlane * plane)virtual
virtual bool exitEntry(void)virtual
APPLE_KEXT_OVERRIDE
virtual void reset(void)virtualAPPLE_KEXT_OVERRIDE
virtual bool isValid(void)virtualvirtual OSPtr<OSOrderedSet> iterateAll(void)virtual