SoNodekitCatalog(3IV)

SoNodekitCatalog - nodekit catalog class

As shipped in IRIX 6.5.22. Added in IRIX 6.5.22.

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