Coin Logo Coin3D is Free Software,
published under the BSD 3-clause license.
https://coin3d.github.io
https://www.kongsberg.com/en/kogt/
SoFullPath Class Reference

The SoFullPath class allows examination of hidden children in paths. More...

#include <Inventor/SoFullPath.h>

Inheritance diagram for SoFullPath:
SoPath SoBase SoTempPath

Public Member Functions

void pop (void)
 
SoNodegetTail (void) const
 
SoNodegetNodeFromTail (const int index) const
 
int getIndexFromTail (const int index) const
 
int getLength (void) const
 
- Public Member Functions inherited from SoPath
 SoPath (const int approxlength=4)
 
 SoPath (SoNode *const head)
 
 SoPath (const SoPath &rhs)
 
SoPathoperator= (const SoPath &rhs)
 
virtual SoType getTypeId (void) const
 Returns the type identification of an object derived from a class inheriting SoBase. This is used for runtime type checking and "downward" casting. More...
 
void setHead (SoNode *const head)
 
SoNodegetHead (void) const
 
void append (const int childindex)
 
void append (SoNode *const node)
 
void append (const SoPath *const frompath)
 
void push (const int childindex)
 
void pop (void)
 
SoNodegetTail (void) const
 
SoNodegetNode (const int index) const
 
SoNodegetNodeFromTail (const int index) const
 
int getIndex (const int index) const
 
int getIndexFromTail (const int index) const
 
int getLength (void) const
 
void truncate (const int length)
 
int findFork (const SoPath *const path) const
 
int findNode (const SoNode *const node) const
 
SbBool containsNode (const SoNode *const node) const
 
SbBool containsPath (const SoPath *const path) const
 
SoPathcopy (const int startfromnodeindex=0, int numnodes=0) const
 
void 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) const
 
virtual void write (SoWriteAction *action)
 
- Public Member Functions inherited from SoBase
void ref (void) const
 
void unref (void) const
 
void unrefNoDelete (void) const
 
int32_t getRefCount (void) const
 
void touch (void)
 
SbBool isOfType (SoType type) const
 Returns TRUE if the type of this object is either of the same type or inherited from type. More...
 
virtual SbName getName (void) const
 
virtual 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 SoAuditorListgetAuditors (void) const
 
virtual 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)
 
static SoType getClassTypeId (void)
 
static SoPathgetByName (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 the SoType object 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 SoBasegetNamedBase (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) const
 
SbBool writeHeader (SoOutput *out, SbBool isgroup, SbBool isengine) const
 
void writeFooter (SoOutput *out) const
 
virtual const char * getFileFormatName (void) const
 
virtual 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.

SoPath allows only access from the head node to the first node with hidden children, but not any further.

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.

(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.)

Member Function Documentation

◆ pop()

void SoFullPath::pop ( void  )
inline

This method overrides SoPath::pop() to allow clients to get at all the nodes in the path.

◆ getTail()

SoNode * SoFullPath::getTail ( void  ) const

This method overrides SoPath::getTail() to allow clients to get the tail node, counting internal path nodes.

◆ getNodeFromTail()

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.

◆ getIndexFromTail()

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.

◆ getLength()

int SoFullPath::getLength ( void  ) const

This method returns the length of the path, counting hidden nodes also.


The documentation for this class was generated from the following files: