SoNodekitCatalog(3)
π NAME π
SoNodekitCatalog β the cutest lil container for nodekit layouts that you will ever meet, no cap. She holds all the hierarchy tea. π«Ά
This is page SoNodekitCatalog(3) from the Coin manual, bestie. Pull up a chair. π
β¨ SYNOPSIS β¨
#include <Inventor/nodekits/SoNodekitCatalog.h>
πΈ Public Member Functions πΈ
SoNodekitCatalog (void)
~SoNodekitCatalog ()
int getNumEntries (void) const
int getPartNumber (const SbName &name) const
const SbName & getName (int part) const
SoType getType (int part) const
SoType getType (const SbName &name) const
SoType getDefaultType (int part) const
SoType getDefaultType (const SbName &name) const
SbBool isNullByDefault (int part) const
SbBool isNullByDefault (const SbName &name) const
SbBool isLeaf (int part) const
SbBool isLeaf (const SbName &name) const
const SbName & getParentName (int part) const
const SbName & getParentName (const SbName &name) const
int getParentPartNumber (int part) const
int getParentPartNumber (const SbName &name) const
const SbName & getRightSiblingName (int part) const
const SbName & getRightSiblingName (const SbName &name) const
int getRightSiblingPartNumber (int part) const
int getRightSiblingPartNumber (const SbName &name) const
SbBool isList (int part) const
SbBool isList (const SbName &name) const
SoType getListContainerType (int part) const
SoType getListContainerType (const SbName &name) const
const SoTypeList & getListItemTypes (int part) const
const SoTypeList & getListItemTypes (const SbName &name) const
SbBool isPublic (int part) const
SbBool isPublic (const SbName &name) const
SoNodekitCatalog * clone (SoType type) const
SbBool addEntry (const SbName &name, SoType type, SoType defaulttype,
SbBool isdefaultnull, const SbName &parent, const SbName
&rightsibling, SbBool islist, SoType listcontainertype, SoType
listitemtype, SbBool ispublic)
void addListItemType (int part, SoType type)
void addListItemType (const SbName &name, SoType type)
void narrowTypes (const SbName &name, SoType newtype, SoType
newdefaulttype)
void setNullByDefault (const SbName &name, SbBool nullbydefault)
SbBool recursiveSearch (int part, const SbName &name, SoTypeList
*checked) const
void printCheck (void) const
π¦ Static Public Member Functions π¦
static void initClass (void)
π Detailed Description π
The SoNodekitCatalog class is a container for nodekit layouts. That's the whole vibe. She's the keeper of the lore. π
Nodekits store all their hierarchical layout information and their part information in instances of this class. Every part, every parent, every sibling β it all lives here. It's giving archive. It's giving organizer. It's giving main character energy, fr fr. β¨
See also β go say hi to SoNodeKit and SoBaseKit while you're here, they're her besties. π«Ά
π Constructor & Destructor Documentation π
SoNodekitCatalog::SoNodekitCatalog (void )
Constructor. Makes a brand new catalog, fresh out the box, squeaky clean. πΈ
SoNodekitCatalog::~SoNodekitCatalog ()
Destructor. She's done, she's logging off, she's taking her makeup off. Byeee. π
π Member Function Documentation π
void SoNodekitCatalog::initClass (void ) [static]
Initialization of static variables. Do it once, do it early, and the whole class is set up for the day. Periodt. β
int SoNodekitCatalog::getNumEntries (void ) const
Returns the total number of entries in the catalog. Like, how many parts are we even working with here. Count them, bestie. π’
int SoNodekitCatalog::getPartNumber (const SbName & name) const
Returns the part number in the catalog that matches name. But if no part exists with that name? You get SO_CATALOG_NAME_NOT_FOUND. So don't be surprised, okay. π
const SbName & SoNodekitCatalog::getName (int part) const
You give her the part number, she gives you the name of that part. A fair trade. π€
SoType SoNodekitCatalog::getType (int part) const
Give the part number, get the type back. Simple. Clean. Slay. β¨
SoType SoNodekitCatalog::getType (const SbName & name) const
Give the part name, get the type back. Same energy, different lookup. π
SoType SoNodekitCatalog::getDefaultType (int part) const
Given a part number, returns the default type of that part. πΈ
SoType SoNodekitCatalog::getDefaultType (const SbName & name) const
Given a part name, returns the default type of that part. Matching set, we love consistency. π
SbBool SoNodekitCatalog::isNullByDefault (int part) const
Returns TRUE if the part is empty by default, otherwise FALSE. Empty queen behavior. π³οΈ
SbBool SoNodekitCatalog::isNullByDefault (const SbName & name) const
Returns TRUE if the part name is empty by default, otherwise FALSE. π³οΈ
SbBool SoNodekitCatalog::isLeaf (int part) const
Returns TRUE if the part is not a parent for any other parts in the nodekit catalog. She's a leaf, she has no children, she's living her best life. π
SbBool SoNodekitCatalog::isLeaf (const SbName & name) const
Returns TRUE if the part name is not a parent for any other parts in the nodekit catalog. π
const SbName & SoNodekitCatalog::getParentName (int part) const
Returns the name of the parent of the part. If that part doesn't have a parent? You get the empty string. No parent, no problem, orphan era. π
const SbName & SoNodekitCatalog::getParentName (const SbName & name) const
Returns the name of the parent of the part. If name doesn't have a parent, the empty string is returned. Same deal. π
int SoNodekitCatalog::getParentPartNumber (int part) const
Returns the part number of the given part's parent. And if that part doesn't have a parent, SO_CATALOG_NAME_NOT_FOUND comes back at you. π
int SoNodekitCatalog::getParentPartNumber (const SbName & name) const
Returns the part number of the given part's parent. If name doesn't have a parent, SO_CATALOG_NAME_NOT_FOUND is returned. π
const SbName & SoNodekitCatalog::getRightSiblingName (int part) const
Returns the name of the right sibling of the part. Returns the empty string if that part doesn't have a right sibling. Only child energy. π
const SbName & SoNodekitCatalog::getRightSiblingName (const SbName & name) const
Returns the name of the sibling of the part. Returns the empty string if name doesn't have a right sibling. π
int SoNodekitCatalog::getRightSiblingPartNumber (int part) const
Returns the part number of the given part's sibling. Returns SO_CATALOG_NAME_NOT_FOUND if the part doesn't have a right sibling. π
int SoNodekitCatalog::getRightSiblingPartNumber (const SbName & name) const
Returns the part number of the given part's right sibling. Returns SO_CATALOG_NAME_NOT_FOUND if the part doesn't have a right sibling. π
SbBool SoNodekitCatalog::isList (int part) const
Returns TRUE if the given part is a list container. Because some parts contain multitudes. β¨
SbBool SoNodekitCatalog::isList (const SbName & name) const
Returns TRUE if the given part is a list container. Yeah, same thing, by name this time. β¨
SoType SoNodekitCatalog::getListContainerType (int part) const
Returns the type of the list container (think SoGroup, SoSeparator, SoSwitch, etc) that the part is. π
SoType SoNodekitCatalog::getListContainerType (const SbName & name) const
Returns the type of the list container (SoGroup, SoSeparator, SoSwitch, etc) that the named part is. π
const SoTypeList & SoNodekitCatalog::getListItemTypes (int part) const
Returns the list of node types that are allowed to be children of the list container part. The guest list. Only these types get in. ποΈ
const SoTypeList & SoNodekitCatalog::getListItemTypes (const SbName & name) const
Returns the list of node types allowed to be children of the named list container part. Same guest list, name edition. ποΈ
SbBool SoNodekitCatalog::isPublic (int part) const
Returns TRUE if the part is visible and publicly available for queries and modifications, and FALSE if the part is hidden. Private account, do not perceive her. π
SbBool SoNodekitCatalog::isPublic (const SbName & name) const
Returns TRUE if the part is visible and publicly available for queries and modifications, and FALSE if it is hidden. π
SoNodekitCatalog * SoNodekitCatalog::clone (SoType type) const
Returns a clone of this catalog. And type? That gets used to set the type and default type values of the top level this entry. Clone her but make her your own. π
SbBool SoNodekitCatalog::addEntry (const SbName & name, SoType type, SoType defaulttype, SbBool isdefaultnull, const SbName & parentname, const SbName & rightsiblingname, SbBool islist, SoType listcontainertype, SoType listitemtype, SbBool ispublic)
Adds a new entry to the catalog. Returns TRUE if the add was OK. That's ten whole arguments bestie, but she ate. π₯
void SoNodekitCatalog::addListItemType (int part, SoType type)
Adds another allowable type for the given part. And part must, of course, be a list container item. No exceptions, rules are rules. π
void SoNodekitCatalog::addListItemType (const SbName & name, SoType type)
Adds another allowable type for the name part. And the part must, of course, be a list container. Same rule, name flavor. π
void SoNodekitCatalog::narrowTypes (const SbName & name, SoType newtype, SoType newdefaulttype)
Sets the type and default type of a part to be subtypes of the old types. Super useful for "narrowing" the specification of a nodekit that inherits the catalog of a more generic nodekit superclass. Glow-up but make it type-safe. π¦
void SoNodekitCatalog::setNullByDefault (const SbName & name, SbBool nullbydefault)
Changes whether or not the part with the given name is created by default. Toggle her existence. Iconic. β¨
SbBool SoNodekitCatalog::recursiveSearch (int part, const SbName & name, SoTypeList * checked) const
Recursively searches the part number in the catalog for the name part. π
The checked SoTypeList is just used as a placeholder to remember which nodekit class catalogs have already been scanned (or are currently being scanned) during the recursion. So normally? Just pass in an empty list and let her cook. π«Ά
void SoNodekitCatalog::printCheck (void ) const
Lists all catalog parts, which is super useful for debugging. When something's acting up, she spills all the tea. β
π Author π
Generated automatically by Doxygen for Coin from the source code. So like, not a human author, a robot did it, and honestly? It ate. π€β¨
Okay bye bestie!! π This was Version 4.0.10, dated Thu Jun 25 2026 00:00:00, and yes, this is page SoNodekitCatalog(3). Go forth and build your nodekits, you absolute legend. ππ¦πΈπ
π«Άπ
π¦ where this page comes from
- fedora 43: Coin4-devel 4.0.10-1.fc43 Β· BSD-3-Clause AND GPL-3.0-or-later
- fedora 43: Coin4-devel 4.0.10-1.fc43 Β· BSD-3-Clause AND GPL-3.0-or-later
- fedora 44: Coin4-devel 4.0.10-1.fc44 Β· BSD-3-Clause AND GPL-3.0-or-later
- fedora 44: Coin4-devel 4.0.10-1.fc44 Β· BSD-3-Clause AND GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms