Lines Matching refs:plane
60 @discussion 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.
91 @param plane The plane to iterate over, eg. gIOServicePlane.
96 const IORegistryPlane * plane,
106 @param plane The plane to iterate over, eg. gIOServicePlane.
111 const IORegistryPlane * plane,
121 @param plane The plane to iterate over, eg. gIOServicePlane.
126 const IORegistryPlane * plane,
133 @abstract Returns an registry entry's first parent entry in a plane. Available in Mac OS X 10.1 or later.
135 @param plane The plane object.
136 @result Returns the first parent of the registry entry, or zero if the entry is not attached into the registry in that plane. A reference on the entry is returned to caller, which should be released. */
138 virtual IORegistryEntry * copyParentEntry( const IORegistryPlane * plane ) const;
142 @abstract Returns an registry entry's first child entry in a plane. Available in Mac OS X 10.1 or later.
144 @param plane The plane object.
145 @result Returns the first child of the registry entry, or zero if the entry is not attached into the registry in that plane. A reference on the entry is returned to caller, which should be released. */
147 virtual IORegistryEntry * copyChildEntry( const IORegistryPlane * plane ) const;
219 @discussion This method provides an accessor to the root of the registry for the machine. The root may be passed to a registry iterator when iterating a plane, and contains properties that describe the available planes, and diagnostic information for IOKit. Keys for these properties are in IOKitKeys.h.
232 @abstract Looks up the plane object by a C-string name.
234 @result A pointer to the plane object, or zero if no such plane exists. The returned plane should not be released. */
382 @param plane The plane to iterate over, eg. gIOServicePlane.
387 const IORegistryPlane * plane,
396 @param plane The plane to iterate over, eg. gIOServicePlane.
401 const IORegistryPlane * plane,
410 @param plane The plane to iterate over, eg. gIOServicePlane.
415 const IORegistryPlane * plane,
482 @abstract Returns an iterator over an registry entry's parent entries in a specified plane.
483 @param plane The plane object.
486 virtual OSIterator * getParentIterator( const IORegistryPlane * plane )
490 const IORegistryPlane * plane ) const;
493 @abstract Returns an registry entry's first parent entry in a plane.
495 @param plane The plane object.
496 @result Returns the first parent of the registry entry, or zero if the entry is not attached into the registry in that plane. The parent is retained while the entry is attached, and should not be released by the caller. */
498 virtual IORegistryEntry * getParentEntry( const IORegistryPlane * plane ) const;
501 @abstract Returns an iterator over an registry entry's child entries in a plane.
502 @discussion This method creates an iterator which will return each of a registry entry's child entries in a specified plane.
503 @param plane The plane object.
506 virtual OSIterator * getChildIterator( const IORegistryPlane * plane )
511 const IORegistryPlane * plane ) const;
514 @abstract Returns an registry entry's first child entry in a plane.
516 @param plane The plane object.
517 @result Returns the first child of the registry entry, or zero if the entry is not attached into the registry in that plane. The child is retained while the entry is attached, and should not be released by the caller. */
519 virtual IORegistryEntry * getChildEntry( const IORegistryPlane * plane ) const;
522 @abstract Determines whether a registry entry is the child of another in a plane.
523 @discussion This method called in the parent entry determines if the specified entry is a child, in a plane. Additionally, it can check if the child is the only child of the parent entry.
525 @param plane The plane object.
530 const IORegistryPlane * plane,
534 @abstract Determines whether a registry entry is the parent of another in a plane.
535 @discussion This method called in the child entry determines if the specified entry is a parent, in a plane. Additionally, it can check if the parent is the only parent of the child entry.
537 @param plane The plane object.
542 const IORegistryPlane * plane,
546 @abstract Determines whether a registry entry is attached in a plane.
547 @discussion This method determines if the entry is attached in a plane to any other entry. It can also be used to determine if the entry is a member of any plane.
548 @param plane The plane object, 0 indicates any plane.
549 @result If the entry has a parent in the given plane or if plane = 0 then if entry has any parent; return true, otherwise false. */
551 virtual bool inPlane( const IORegistryPlane * plane = 0) const;
554 @abstract Counts the maximum number of entries between an entry and the registry root, in a plane.
555 @discussion This method counts the number of entries between and entry and the registry root, in a plane, for each parent of the entry and returns the maximum value.
556 @param plane The plane object.
557 @result The maximum number of entries between the entry and the root. Zero is returned if the entry is not attached in the plane. */
559 virtual unsigned int getDepth( const IORegistryPlane * plane ) const;
564 @abstract Attaches a entry to a parent entry in a plane.
567 @param plane The plane object.
571 const IORegistryPlane * plane );
574 @abstract Detaches an entry from a parent entry in a plane.
577 @param plane The plane object. */
580 const IORegistryPlane * plane );
586 @param plane The plane object.
590 const IORegistryPlane * plane );
593 @abstract Detaches a child entry from its parent in a plane.
596 @param plane The plane object. */
599 const IORegistryPlane * plane );
602 @abstract Detaches an entry from all its parent entries in a plane.
603 @discussion This method calls detachFromParent in the entry for each of its parent entries in the plane.
604 @param plane The plane object. */
606 virtual void detachAbove( const IORegistryPlane * plane );
609 @abstract Detaches an entry and all its children recursively in a plane.
610 @discussion This method breaks the registry connections for a subtree. detachAbove is called in the entry, and all child entries and their children in the plane.
611 @param plane The plane object. */
613 virtual void detachAll( const IORegistryPlane * plane );
619 @discussion Entries can be named in a particular plane, or globally. If the entry is named in plane and the plane is specified that name will be returned, otherwise the global name is returned. The global name defaults to the entry's meta class name if it has not been named.
620 @param plane The plane object, or zero for the global name.
623 virtual const char * getName( const IORegistryPlane * plane = 0 ) const;
627 @discussion Entries can be named in a particular plane, or globally. If the entry is named in plane and the plane is specified that name will be returned, otherwise the global name is returned. The global name defaults to the entry's meta class name if it has not been named.
628 @param plane The plane object, or zero for the global name.
632 const IORegistryPlane * plane = 0 ) const;
653 @abstract Sets a name for the registry entry, in a particular plane, or globally.
654 @discussion Entries can be named in a particular plane, or globally. If the plane is specified the name applies only to that plane, otherwise the global name is set. The global name defaults to the entry's meta class name if it has not been named.
656 @param plane The plane object, or zero to set the global name. */
659 const IORegistryPlane * plane = 0 );
662 @abstract Sets a name for the registry entry, in a particular plane, or globally.
663 @discussion Entries can be named in a particular plane, or globally. If the plane is specified the name applies only to that plane, otherwise the global name is set. The global name defaults to the entry's meta class name if it has not been named.
665 @param plane The plane object, or zero to set the global name. */
668 const IORegistryPlane * plane = 0 );
672 @discussion Entries can given a location string in a particular plane, or globally. If the entry has had a location set in a plane and the plane is specified that location string will be returned, otherwise the global location string is returned. If no global location string has been set, zero is returned.
673 @param plane The plane object, or zero for the global name.
676 virtual const char * getLocation( const IORegistryPlane * plane = 0 ) const;
680 @discussion Entries can given a location string in a particular plane, or globally. If the entry has had a location set in a plane and the plane is specified that location string will be returned, otherwise the global location string is returned. If no global location string has been set, zero is returned.
681 @param plane The plane object, or zero for the global name.
685 const IORegistryPlane * plane = 0 ) const;
688 @abstract Sets a location string for the registry entry, in a particular plane, or globally.
689 @discussion Entries can be given a location string in a particular plane, or globally. If the plane is specified the location applies only to that plane, otherwise the global location is set. The location string may be used during path lookups of registry entries, to distinguish between sibling entries with the same name. The default IORegistryEntry parsing of location strings expects a list of hex numbers separated by commas, though subclasses of IORegistryEntry might do their own parsing.
691 @param plane The plane object, or zero to set the global location string. */
694 const IORegistryPlane * plane = 0 );
696 const IORegistryPlane * plane = 0 );
700 @discussion The path for a registry entry is copied to the caller's buffer. The path describes the entry's attachment in a particular plane, which must be specified. The path begins with the plane name followed by a colon, and then followed by '/' separated path components for each of the entries between the root and the registry entry. Each component is constructed with the getPathComponent method called in each entry. An alias may also exist for the entry, which are described as properties in a registry entry found at /aliases in the plane. If a property value interpreted as a path in a call to IORegistryEntry::fromPath yields the entry, then the property name is used as the entry's path.
703 @param plane The plane object.
704 @result getPath will fail if the entry is not attached in the plane, or if the buffer is not large enough to contain the path. */
707 const IORegistryPlane * plane) const;
711 @discussion Each component of a path created with getPath is created with getPathComponent. The default implementation concatenates the entry's name in the the plane, with the "at" symbol and the location string of the entry in the plane if it has been set.
714 @param plane The plane object.
718 const IORegistryPlane * plane ) const;
722 @discussion This function parses paths to lookup registry entries. The path may begin with the <plane name>: created by getPath, or the plane may be set by the caller. If there are characters remaining unparsed after an entry has been looked up, this may be considered an invalid lookup, or those characters may be passed back to the caller and the lookup successful.
724 @param plane The plane to lookup up the path, or zero, in which case the path must begin with the plane name.
727 @param fromEntry The lookup will proceed rooted at this entry if non-zero, otherwise it proceeds from the root of the plane.
731 const IORegistryPlane * plane = 0,
740 @param plane See IORegistryEntry::fromPath.
746 const IORegistryPlane * plane = 0,
754 @param plane A plane object must be specified.
758 const IORegistryPlane * plane );
777 const IORegistryPlane * plane ) const;
780 const IORegistryPlane * plane ) const;
782 virtual OSArray * getParentSetReference( const IORegistryPlane * plane )
784 virtual OSArray * getChildSetReference( const IORegistryPlane * plane )
787 const IORegistryPlane * plane );
789 virtual const OSSymbol * hasAlias( const IORegistryPlane * plane,
792 const IORegistryPlane * plane );
800 @discussion An iterator that can traverse the children or parents of a registry entry in a plane, and recurse. Access to the registry is protected against multiple threads, but an IORegistryIterator instance is for use by one thread only. */
816 const IORegistryPlane * plane;
826 @param plane A plane object must be specified.
831 const IORegistryPlane * plane,
837 @param plane A plane object must be specified.
841 static IORegistryIterator * iterateOver( const IORegistryPlane * plane,
880 @discussion This method recurses into an entry as with enterEntry, but also switches from the current plane to a new one set by the caller.
881 @param plane The new plane to switch into. */
883 virtual void enterEntry( const IORegistryPlane * plane );