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