SoFullPath(3)
π SoFullPath π
ok so bestie, welcome to SoFullPath(3) β that's the Coin manual, third section, and yes we are doing this together. grab a boba. this one's short but it's so worth it, i promise π§β¨
β¨ NAME β¨
SoFullPath β the class that lets you peek at the hidden children in paths. like, the nodes that SoPath is too shy to show you π
πΈ SYNOPSIS πΈ
#include <Inventor/SoFullPath.h>
okay so the whole family tree situation:
- Inherits
SoPath. - Inherited by
SoTempPath.
π Public Member Functions π
void pop (void)SoNode * getTail (void) constSoNode * getNodeFromTail (const int index) constint getIndexFromTail (const int index) constint getLength (void) const
π Public Member Functions inherited from SoPath π
SoPath (const int approxlength=4)SoPath (SoNode *const head)SoPath (const SoPath &rhs)SoPath & operator= (const SoPath &rhs)virtual SoType getTypeId (void) constβ Returns the type identification of an object derived from a class inheritingSoBase. This is used for runtime type checking and downward"casting.void setHead (SoNode *const head)SoNode * getHead (void) constvoid append (const int childindex)void append (SoNode *const node)void append (const SoPath *const frompath)void push (const int childindex)void pop (void)SoNode * getTail (void) constSoNode * getNode (const int index) constSoNode * getNodeFromTail (const int index) constint getIndex (const int index) constint getIndexFromTail (const int index) constint getLength (void) constvoid truncate (const int length)int findFork (const SoPath *const path) constint findNode (const SoNode *const node) constSbBool containsNode (const SoNode *const node) constSbBool containsPath (const SoPath *const path) constSoPath * copy (const int startfromnodeindex=0, int numnodes=0) constvoid insertIndex (SoNode *const parent, const int newindex)void removeIndex (SoNode *const parent, const int oldindex)void replaceIndex (SoNode *const parent, const int index, SoNode *const newchild)SbBool isRelevantNotification (SoNotList *const l) constvirtual void write (SoWriteAction *action)
π¦ Public Member Functions inherited from SoBase π¦
void ref (void) constvoid unref (void) constvoid unrefNoDelete (void) constint32_t getRefCount (void) constvoid touch (void)SbBool isOfType (SoType type) constβ ReturnsTRUEif the type of this object is either of the same type or inherited from type.virtual SbName getName (void) constvirtual void setName (const SbName &newname)virtual void startNotify (void)virtual void notify (SoNotList *l)void addAuditor (void *const auditor, const SoNotRec::Type type)void removeAuditor (void *const auditor, const SoNotRec::Type type)const SoAuditorList & getAuditors (void) constvirtual void addWriteReference (SoOutput *out, SbBool isfromfield=FALSE)SbBool shouldWrite (void)void assertAlive (void) const
π Additional Inherited Members π
β Static Public Member Functions inherited from SoPath β
static void initClass (void)β Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.static SoType getClassTypeId (void)β This static method returns theSoTypeobject associated with objects of this class.static SoPath * getByName (const SbName name)static int getByName (const SbName name, SoPathList &l)
β Static Public Member Functions inherited from SoBase β
static void initClass (void)β Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.static SoType getClassTypeId (void)β This static method returns theSoTypeobject associated with objects of this class.static void addName (SoBase *const base, const char *const name)static void removeName (SoBase *const base, const char *const name)static void incrementCurrentWriteCounter (void)static void decrementCurrentWriteCounter (void)static SoBase * getNamedBase (const SbName &name, SoType type)static int getNamedBases (const SbName &name, SoBaseList &baselist, SoType type)static SbBool read (SoInput *input, SoBase *&base, SoType expectedtype)static void setInstancePrefix (const SbString &c)static void setTraceRefs (SbBool trace)static SbBool getTraceRefs (void)static SbBool connectRoute (SoInput *input, const SbName &fromnodename, const SbName &fromfieldname, const SbName &tonodename, const SbName &tofieldname)static SbBool readRoute (SoInput *input)
π Protected Types inherited from SoBase π
enum BaseFlags { IS_ENGINE = 0x01, IS_GROUP = 0x02 }
π Protected Member Functions inherited from SoPath π
virtual ~SoPath ()void auditPath (const SbBool flag)
π Protected Member Functions inherited from SoBase π
SoBase (void)virtual ~SoBase ()virtual void destroy (void)SbBool hasMultipleWriteRefs (void) constSbBool writeHeader (SoOutput *out, SbBool isgroup, SbBool isengine) constvoid writeFooter (SoOutput *out) constvirtual const char * getFileFormatName (void) constvirtual SoNotRec createNotRec (void)
π Static Protected Member Functions inherited from SoBase π
static uint32_t getCurrentWriteCounter (void)static void staticDataLock (void)static void staticDataUnlock (void)
π Detailed Description π
The SoFullPath class allows examination of hidden children in paths. bestie, that's the whole vibe β¨
okay so here's the tea: SoPath allows only access from the head node to the first node with hidden children, but not any further. it just stops. it's giving "i can only take you so far, you're on your own from here" π
Since the SoFullPath is derived from SoPath and contains no private data, you can cast SoPath instances to the SoFullPath type. This will allow you to examine hidden children. iconic behaviour honestly π«Ά
(Actually, you are not supposed to allocate instances of this class at all. It is only available as an "extended interface" into the superclass SoPath.)
like, do not new this thing. it's not that kind of class. it's an interface, not a main character you build yourself. periodt π
π₯ Member Function Documentation π₯
π void SoFullPath::pop (void ) [inline] π
This method overrides SoPath::pop() to allow clients to get at all the nodes in the path.
π SoNode * SoFullPath::getTail (void ) const π
This method overrides SoPath::getTail() to allow clients to get the tail node, counting internal path nodes.
π SoNode * SoFullPath::getNodeFromTail (const int index) const π
This method overrides SoPath::getNodeFromTail() to allow clients to get the node positioned index nodes from the tail, counting internal path nodes.
π int SoFullPath::getIndexFromTail (const int index) const π
This method overrides SoPath::getIndexFromTail() to allow clients to get the child index number for nodes based on their position from the tail, counting hidden nodes.
π int SoFullPath::getLength (void ) const π
This method returns the length of the path, counting hidden nodes also. yes, ALL of them. no cap π
π Author π
Generated automatically by Doxygen for Coin from the source code. it wrote itself, literally. we love an auto-generated king π
aaaand that's the page bestie!! Version 4.0.10, dated Thu Jun 25 2026 00:00:00, and it's the SoFullPath(3) manual through and through πβ¨ go forth and examine those hidden children, 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