---
title: IORegistryEntry
framework: kernel
role: symbol
role_heading: Class
path: kernel/ioregistryentry
---

# IORegistryEntry

The base class for all objects in the registry.

## Declaration

```occ
class IORegistryEntry : OSObject
```

## Overview

Overview The IORegistryEntry base class provides functions for describing graphs of connected registry entries, each with a dictionary-based property table. Entries may be connected in different planes, with differing topologies. Access to the registry is protected against multiple threads. Inside the kernel planes are specified with plane objects and are published by the creator - IOService exports the gIOServicePlane plane object for example. Non kernel clients specify planes by their name.

## Topics

### Miscellaneous

- [attachToChild](kernel/ioregistryentry/1810177-attachtochild.md)
- [attachToParent](kernel/ioregistryentry/1810196-attachtoparent.md)
- [childFromPath](kernel/ioregistryentry/1810215-childfrompath.md)
- [compareName](kernel/ioregistryentry/1810236-comparename.md)
- [compareNames](kernel/ioregistryentry/1810259-comparenames.md)
- [copyChildEntry](kernel/ioregistryentry/1810279-copychildentry.md)
- [copyLocation](kernel/ioregistryentry/1810296-copylocation.md)
- [copyName](kernel/ioregistryentry/1810315-copyname.md)
- [copyParentEntry](kernel/ioregistryentry/1810335-copyparententry.md)
- [copyProperty(const char *)](kernel/ioregistryentry/1810352-copyproperty.md)
- [copyProperty(const char *, const IORegistryPlane *, IOOptionBits)](kernel/ioregistryentry/1810371-copyproperty.md)
- [copyProperty(const OSString *)](kernel/ioregistryentry/1810386-copyproperty.md)
- [copyProperty(const OSString *, const IORegistryPlane *, IOOptionBits)](kernel/ioregistryentry/1810403-copyproperty.md)
- [copyProperty(const OSSymbol *)](kernel/ioregistryentry/1810428-copyproperty.md)
- [copyProperty(const OSSymbol *, const IORegistryPlane *, IOOptionBits)](kernel/ioregistryentry/1810451-copyproperty.md)
- [dealiasPath](kernel/ioregistryentry/1810478-dealiaspath.md)
- [detachAbove](kernel/ioregistryentry/1810509-detachabove.md)
- [detachAll](kernel/ioregistryentry/1810550-detachall.md)
- [detachFromChild](kernel/ioregistryentry/1810594-detachfromchild.md)
- [detachFromParent](kernel/ioregistryentry/1810632-detachfromparent.md)
- [dictionaryWithProperties](kernel/ioregistryentry/1810672-dictionarywithproperties.md)
- [free](kernel/ioregistryentry/1810704-free.md)
- [fromPath(const char *, const IORegistryPlane *, char *, int *)](kernel/ioregistryentry/1810742-frompath.md)
- [fromPath(const char *, const IORegistryPlane *, char *, int *, IORegistryEntry *)](kernel/ioregistryentry/1810796-frompath.md)
- [getChildEntry](kernel/ioregistryentry/1810842-getchildentry.md)
- [getChildIterator](kernel/ioregistryentry/1810873-getchilditerator.md)
- [getDepth](kernel/ioregistryentry/1810910-getdepth.md)
- [getGenerationCount](kernel/ioregistryentry/1810941-getgenerationcount.md)
- [getLocation](kernel/ioregistryentry/1810970-getlocation.md)
- [getName](kernel/ioregistryentry/1810990-getname.md)
- [getParentEntry](kernel/ioregistryentry/1811012-getparententry.md)
- [getParentIterator](kernel/ioregistryentry/1811037-getparentiterator.md)
- [getPath](kernel/ioregistryentry/1811074-getpath.md)
- [getPathComponent](kernel/ioregistryentry/1811114-getpathcomponent.md)
- [getPlane](kernel/ioregistryentry/1811147-getplane.md)
- [getProperty(const char *)](kernel/ioregistryentry/1811182-getproperty.md)
- [getProperty(const char *, const IORegistryPlane *, IOOptionBits)](kernel/ioregistryentry/1811215-getproperty.md)
- [getProperty(const OSString *)](kernel/ioregistryentry/1811230-getproperty.md)
- [getProperty(const OSString *, const IORegistryPlane *, IOOptionBits)](kernel/ioregistryentry/1811244-getproperty.md)
- [getProperty(const OSSymbol *)](kernel/ioregistryentry/1811254-getproperty.md)
- [getProperty(const OSSymbol *, const IORegistryPlane *, IOOptionBits)](kernel/ioregistryentry/1811263-getproperty.md)
- [getPropertyTable](kernel/ioregistryentry/1811272-getpropertytable.md)
- [getRegistryEntryID](kernel/ioregistryentry/1811281-getregistryentryid.md)
- [getRegistryRoot](kernel/ioregistryentry/1811288-getregistryroot.md)
- [init](kernel/ioregistryentry/1811299-init.md)
- [inPlane](kernel/ioregistryentry/1811307-inplane.md)
- [isChild](kernel/ioregistryentry/1811317-ischild.md)
- [isParent](kernel/ioregistryentry/1811327-isparent.md)
- [makePlane](kernel/ioregistryentry/1811335-makeplane.md)
- [removeProperty](kernel/ioregistryentry/1811343-removeproperty.md)
- [removeProperty(const OSString *)](kernel/ioregistryentry/1811354-removeproperty.md)
- [removeProperty(const OSSymbol *)](kernel/ioregistryentry/1811362-removeproperty.md)
- [runPropertyAction](kernel/ioregistryentry/1811370-runpropertyaction.md)
- [serializeProperties](kernel/ioregistryentry/1811384-serializeproperties.md)
- [setLocation](kernel/ioregistryentry/1811397-setlocation.md)
- [setName(const char *, const IORegistryPlane *)](kernel/ioregistryentry/1811407-setname.md)
- [setName(const OSSymbol *, const IORegistryPlane *)](kernel/ioregistryentry/1811420-setname.md)
- [setProperties](kernel/ioregistryentry/1811430-setproperties.md)
- [setProperty](kernel/ioregistryentry/1811442-setproperty.md)
- [setProperty(const char *, bool)](kernel/ioregistryentry/1811451-setproperty.md)
- [setProperty(const char *, const char *)](kernel/ioregistryentry/1811461-setproperty.md)
- [setProperty(const char *, OSObject *)](kernel/ioregistryentry/1811476-setproperty.md)
- [setProperty(const char *, unsigned long long, unsigned int)](kernel/ioregistryentry/1811491-setproperty.md)
- [setProperty(const OSString *, OSObject *)](kernel/ioregistryentry/1811507-setproperty.md)
- [setProperty(const OSSymbol *, OSObject *)](kernel/ioregistryentry/1811520-setproperty.md)
- [setPropertyTable](kernel/ioregistryentry/1811536-setpropertytable.md)

### Callbacks

- [Action](kernel/ioworkloop/action.md)

### DataTypes

- [ExpansionData](kernel/ioservice/expansiondata.md)

### Instance Variables

- [reserved](kernel/ioregistryentry/reserved.md)

### Instance Methods

- [applyToChildren](kernel/ioregistryentry/1437710-applytochildren.md)
- [applyToParents](kernel/ioregistryentry/1437647-applytoparents.md)
- [arrayMember](kernel/ioregistryentry/1437667-arraymember.md)
- [attachToChild](kernel/ioregistryentry/1437620-attachtochild.md)
- [attachToParent](kernel/ioregistryentry/1437643-attachtoparent.md)
- [breakLink](kernel/ioregistryentry/1437692-breaklink.md)
- [childFromPath](kernel/ioregistryentry/1437725-childfrompath.md)
- [compareName](kernel/ioregistryentry/1437671-comparename.md)
- [compareName](kernel/ioregistryentry/3553373-comparename.md)
- [compareNames](kernel/ioregistryentry/1437634-comparenames.md)
- [compareNames](kernel/ioregistryentry/3553374-comparenames.md)
- [copyChildEntry](kernel/ioregistryentry/1437719-copychildentry.md)
- [copyLocation](kernel/ioregistryentry/1437662-copylocation.md)
- [copyName](kernel/ioregistryentry/1437645-copyname.md)
- [copyParentEntry](kernel/ioregistryentry/1437598-copyparententry.md)
- [copyProperty](kernel/ioregistryentry/1437669-copyproperty.md)
- [copyProperty](kernel/ioregistryentry/3516459-copyproperty.md)
- [copyProperty](kernel/ioregistryentry/3516460-copyproperty.md)
- [copyProperty](kernel/ioregistryentry/3516461-copyproperty.md)
- [copyProperty](kernel/ioregistryentry/3516462-copyproperty.md)
- [copyProperty](kernel/ioregistryentry/3516463-copyproperty.md)
- [detachAbove](kernel/ioregistryentry/1437665-detachabove.md)
- [detachAll](kernel/ioregistryentry/1437623-detachall.md)
- [detachFromChild](kernel/ioregistryentry/1437682-detachfromchild.md)
- [detachFromParent](kernel/ioregistryentry/1437688-detachfromparent.md)
- [dictionaryWithProperties](kernel/ioregistryentry/1437651-dictionarywithproperties.md)
- [free](kernel/ioregistryentry/1437660-free.md)
- [getChildEntry](kernel/ioregistryentry/1437626-getchildentry.md)
- [getChildFromComponent](kernel/ioregistryentry/1437698-getchildfromcomponent.md)
- [getChildIterator](kernel/ioregistryentry/1437714-getchilditerator.md)
- [getChildSetReference](kernel/ioregistryentry/1437737-getchildsetreference.md)
- [getDepth](kernel/ioregistryentry/1437606-getdepth.md)
- [getLocation](kernel/ioregistryentry/1437624-getlocation.md)
- [getMetaClass](kernel/ioregistryentry/1437639-getmetaclass.md)
- [getName](kernel/ioregistryentry/1437600-getname.md)
- [getParentEntry](kernel/ioregistryentry/1437676-getparententry.md)
- [getParentIterator](kernel/ioregistryentry/1437717-getparentiterator.md)
- [getParentSetReference](kernel/ioregistryentry/1437656-getparentsetreference.md)
- [getPath](kernel/ioregistryentry/1437602-getpath.md)
- [getPathComponent](kernel/ioregistryentry/1437618-getpathcomponent.md)
- [getProperty](kernel/ioregistryentry/1437702-getproperty.md)
- [getProperty](kernel/ioregistryentry/3516464-getproperty.md)
- [getProperty](kernel/ioregistryentry/3516465-getproperty.md)
- [getProperty](kernel/ioregistryentry/3516466-getproperty.md)
- [getProperty](kernel/ioregistryentry/3516467-getproperty.md)
- [getProperty](kernel/ioregistryentry/3516468-getproperty.md)
- [getPropertyTable](kernel/ioregistryentry/1437690-getpropertytable.md)
- [getRegistryEntryID](kernel/ioregistryentry/1437608-getregistryentryid.md)
- [hasAlias](kernel/ioregistryentry/1437621-hasalias.md)
- [inPlane](kernel/ioregistryentry/1437614-inplane.md)
- [init](kernel/ioregistryentry/1437734-init.md)
- [init](kernel/ioregistryentry/3516469-init.md)
- [isChild](kernel/ioregistryentry/1437741-ischild.md)
- [isParent](kernel/ioregistryentry/1437658-isparent.md)
- [makeLink](kernel/ioregistryentry/1437712-makelink.md)
- [matchPathLocation](kernel/ioregistryentry/1437596-matchpathlocation.md)
- [propertyExists](kernel/ioregistryentry/3567128-propertyexists.md)
- [propertyExists](kernel/ioregistryentry/3567129-propertyexists.md)
- [propertyExists](kernel/ioregistryentry/3567130-propertyexists.md)
- [propertyExists](kernel/ioregistryentry/3567131-propertyexists.md)
- [propertyExists](kernel/ioregistryentry/3567132-propertyexists.md)
- [propertyExists](kernel/ioregistryentry/3567133-propertyexists.md)
- [propertyHasValue](kernel/ioregistryentry/3567134-propertyhasvalue.md)
- [propertyHasValue](kernel/ioregistryentry/3567135-propertyhasvalue.md)
- [propertyHasValue](kernel/ioregistryentry/3567136-propertyhasvalue.md)
- [propertyHasValue](kernel/ioregistryentry/3567137-propertyhasvalue.md)
- [propertyHasValue](kernel/ioregistryentry/3567138-propertyhasvalue.md)
- [propertyHasValue](kernel/ioregistryentry/3567139-propertyhasvalue.md)
- [removeProperty](kernel/ioregistryentry/1437751-removeproperty.md)
- [removeProperty](kernel/ioregistryentry/3516470-removeproperty.md)
- [removeProperty](kernel/ioregistryentry/3516471-removeproperty.md)
- [runPropertyAction](kernel/ioregistryentry/1437727-runpropertyaction.md)
- [runPropertyActionBlock](kernel/ioregistryentry/3538558-runpropertyactionblock.md)
- [serializeProperties](kernel/ioregistryentry/1437747-serializeproperties.md)
- [setLocation](kernel/ioregistryentry/1437680-setlocation.md)
- [setLocation](kernel/ioregistryentry/3516472-setlocation.md)
- [setName](kernel/ioregistryentry/1437735-setname.md)
- [setName](kernel/ioregistryentry/3516473-setname.md)
- [setProperties](kernel/ioregistryentry/1437678-setproperties.md)
- [setProperty](kernel/ioregistryentry/1437704-setproperty.md)
- [setProperty](kernel/ioregistryentry/3516474-setproperty.md)
- [setProperty](kernel/ioregistryentry/3516475-setproperty.md)
- [setProperty](kernel/ioregistryentry/3516476-setproperty.md)
- [setProperty](kernel/ioregistryentry/3516477-setproperty.md)
- [setProperty](kernel/ioregistryentry/3516478-setproperty.md)
- [setProperty](kernel/ioregistryentry/3516479-setproperty.md)
- [setPropertyTable](kernel/ioregistryentry/1437641-setpropertytable.md)

### Type Methods

- [dealiasPath](kernel/ioregistryentry/1437686-dealiaspath.md)
- [fromPath](kernel/ioregistryentry/1437706-frompath.md)
- [getGenerationCount](kernel/ioregistryentry/1437721-getgenerationcount.md)
- [getPlane](kernel/ioregistryentry/1437694-getplane.md)
- [getRegistryRoot](kernel/ioregistryentry/1437610-getregistryroot.md)
- [initialize](kernel/ioregistryentry/1437696-initialize.md)
- [makePlane](kernel/ioregistryentry/1437604-makeplane.md)

## Relationships

### Inherits From

- [OSObject](kernel/osobject.md)

## See Also

### Driver Registry

- [IORegistryIterator](kernel/ioregistryiterator.md)
- [IOBSDNameMatching](kernel/1575336-iobsdnamematching.md)
- [IOPrintPlane](kernel/1558295-ioprintplane.md)
- [Registry Utilities](kernel/iokit_fundamentals/registry_utilities.md)
- [Registry Keys](kernel/iokit_fundamentals/registry_keys.md)
