Scroll to navigation

SoNodekitCatalog(3IV)() SoNodekitCatalog(3IV)()

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