Provided by: inventor-doc_2.1.6+ds-2_all bug

NAME

       SoNodekitCatalog — nodekit catalog class

INHERITS FROM

       SoNodekitCatalog

SYNOPSIS

       #include <Inventor/nodekits/SoNodekitCatalog.h>

       #define SO_CATALOG_NAME_NOT_FOUND -1
       #define SO_CATALOG_THIS_PART_NUM   0

          Methods from class SoNodekitCatalog:

     static void         initClass()
     int                 getNumEntries() const
     int                 getPartNumber(const SbName &theName) const
     const SbName &      getName(int thePartNumber) const
     SoType              getType(int thePartNumber) const
     SoType              getType(const SbName &theName) const
     SoType              getDefaultType(int thePartNumber) const
     SoType              getDefaultType(const SbName &theName) const
     SbBool              isNullByDefault(int thePartNumber) const
     SbBool              isNullByDefault(const SbName &theName) const
     SbBool              isLeaf(int thePartNumber) const
     SbBool              isLeaf(const SbName &theName) const
     const SbName &      getParentName(int thePartNumber) const
     const SbName &      getParentName(const SbName &theName) const
     int                 getParentPartNumber(int thePartNumber) const
     int                 getParentPartNumber(const SbName &theName) const
     const SbName &      getRightSiblingName(int thePartNumber) const
     const SbName &      getRightSiblingName(const SbName &theName) const
     int                 getRightSiblingPartNumber(int thePartNumber) const
     int                 getRightSiblingPartNumber(const SbName &theName) const
     SbBool              isList(int thePartNumber) const
     SbBool              isList(const SbName &theName) const
     SoType              getListContainerType(int thePartNumber) const
     SoType              getListContainerType(const SbName &theName) const
     const SoTypeList &  getListItemTypes(int thePartNumber) const
     const SoTypeList &  getListItemTypes(const SbName &theName) const
     SbBool              isPublic(int thePartNumber) const
     SbBool              isPublic(const SbName &theName) const

DESCRIPTION

       This class describes the parts and structure of a nodekit. Each class of nodekit has one SoNodekitCatalog
       (a  static  variable  for  the  class). Internally, the catalog contains one entry for each "part" in the
       nodekit's structure. Users can query the catalog for information about each entry in  the  catalog.  This
       information  can be obtained either by part name (an SbName unique for the part within the catalog) or by
       part number (an index into an array of parts).

       Note that, although the catalog for a nodekit class may contain many entries, each instance of that class
       is not initially created with all of these parts intact. Rather, each instance of the class has  its  own
       parts list which keeps track of which parts the user has created. The nodekit uses the catalog as a guide
       in  creating  new  nodes  as  its  descendants;  the standard addChild(), removeChild() and other SoGroup
       methods are protected, so that users must create descendants indirectly by  asking  the  nodekit  to  get
       and/or set the different "parts" in the catalog.

       The first entry in any SoNodekitCatalog corresponds to the nodekit itself. Its partName is "this" and its
       partNumber is 0. All other parts in the catalog are described relative to "this."

METHODS

     static void         initClass()
          Initializes this object.

     int                 getNumEntries() const
          Returns number of entries in the catalog.

     int                 getPartNumber(const SbName &theName) const
          Given the name of a part, returns its part number in the catalog.

     const SbName &      getName(int thePartNumber) const
          Given the part number of a part, returns its name in the catalog.

     SoType              getType(int thePartNumber) const
     SoType              getType(const SbName &theName) const
     SoType              getDefaultType(int thePartNumber) const
     SoType              getDefaultType(const SbName &theName) const
     SbBool              isNullByDefault(int thePartNumber) const
     SbBool              isNullByDefault(const SbName &theName) const
     SbBool              isLeaf(int thePartNumber) const
     SbBool              isLeaf(const SbName &theName) const
     const SbName &      getParentName(int thePartNumber) const
     const SbName &      getParentName(const SbName &theName) const
     int                 getParentPartNumber(int thePartNumber) const
     int                 getParentPartNumber(const SbName &theName) const
     const SbName &      getRightSiblingName(int thePartNumber) const
     const SbName &      getRightSiblingName(const SbName &theName) const
     int                 getRightSiblingPartNumber(int thePartNumber) const
     int                 getRightSiblingPartNumber(const SbName &theName) const
     SbBool              isList(int thePartNumber) const
     SbBool              isList(const SbName &theName) const
     SoType              getListContainerType(int thePartNumber) const
     SoType              getListContainerType(const SbName &theName) const
     const SoTypeList &  getListItemTypes(int thePartNumber) const
     const SoTypeList &  getListItemTypes(const SbName &theName) const
     SbBool              isPublic(int thePartNumber) const
     SbBool              isPublic(const SbName &theName) const
          A full set of methods for finding out all parameters in the catalog, given either the part name or the
          part number.

SEE ALSO

       SoAppearanceKit,  SoBaseKit,  SoCameraKit,  SoLightKit,  SoNodeKit,  SoNodeKitDetail,  SoNodeKitListPart,
       SoNodeKitPath, SoSceneKit, SoSeparatorKit, SoShapeKit, SoWrapperKit

                                                                                         SoNodekitCatalog(3IV)()