Coin  4.0.3
Coin3D core library
Loading...
Searching...
No Matches
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

int getIndexFromTail (const int index) const
 
int getLength (void) const
 
SoNodegetNodeFromTail (const int index) const
 
SoNodegetTail (void) const
 
void pop (void)
 
- Public Member Functions inherited from SoPath
 SoPath (const int approxlength=4)
 
 SoPath (const SoPath &rhs)
 
 SoPath (SoNode *const head)
 
void append (const int childindex)
 
void append (const SoPath *const frompath)
 
void append (SoNode *const node)
 
SbBool containsNode (const SoNode *const node) const
 
SbBool containsPath (const SoPath *const path) const
 
SoPathcopy (const int startfromnodeindex=0, int numnodes=0) const
 
int findFork (const SoPath *const path) const
 
int findNode (const SoNode *const node) const
 
SoNodegetHead (void) const
 
int getIndex (const int index) const
 
int getIndexFromTail (const int index) const
 
int getLength (void) const
 
SoNodegetNode (const int index) const
 
SoNodegetNodeFromTail (const int index) const
 
SoNodegetTail (void) const
 
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.
 
void insertIndex (SoNode *const parent, const int newindex)
 
SbBool isRelevantNotification (SoNotList *const l) const
 
SoPathoperator= (const SoPath &rhs)
 
void pop (void)
 
void push (const int childindex)
 
void removeIndex (SoNode *const parent, const int oldindex)
 
void replaceIndex (SoNode *const parent, const int index, SoNode *const newchild)
 
void setHead (SoNode *const head)
 
void truncate (const int length)
 
virtual void write (SoWriteAction *action)
 
- Public Member Functions inherited from SoBase
void addAuditor (void *const auditor, const SoNotRec::Type type)
 
virtual void addWriteReference (SoOutput *out, SbBool isfromfield=FALSE)
 
void assertAlive (void) const
 
const SoAuditorListgetAuditors (void) const
 
virtual SbName getName (void) const
 
int32_t getRefCount (void) const
 
SbBool isOfType (SoType type) const
 Returns TRUE if the type of this object is either of the same type or inherited from type.
 
virtual void notify (SoNotList *l)
 
void ref (void) const
 
void removeAuditor (void *const auditor, const SoNotRec::Type type)
 
virtual void setName (const SbName &newname)
 
SbBool shouldWrite (void)
 
virtual void startNotify (void)
 
void touch (void)
 
void unref (void) const
 
void unrefNoDelete (void) const
 

Additional Inherited Members

- Static Public Member Functions inherited from SoPath
static SoPathgetByName (const SbName name)
 
static int getByName (const SbName name, SoPathList &l)
 
static SoType getClassTypeId (void)
 This static method returns the SoType object associated with objects of this class.
 
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 Public Member Functions inherited from SoBase
static void addName (SoBase *const base, const char *const name)
 
static SbBool connectRoute (SoInput *input, const SbName &fromnodename, const SbName &fromfieldname, const SbName &tonodename, const SbName &tofieldname)
 
static void decrementCurrentWriteCounter (void)
 
static SoType getClassTypeId (void)
 This static method returns the SoType object associated with objects of this class.
 
static SoBasegetNamedBase (const SbName &name, SoType type)
 
static int getNamedBases (const SbName &name, SoBaseList &baselist, SoType type)
 
static SbBool getTraceRefs (void)
 
static void incrementCurrentWriteCounter (void)
 
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 SbBool read (SoInput *input, SoBase *&base, SoType expectedtype)
 
static SbBool readRoute (SoInput *input)
 
static void removeName (SoBase *const base, const char *const name)
 
static void setInstancePrefix (const SbString &c)
 
static void setTraceRefs (SbBool trace)
 
- 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 SoNotRec createNotRec (void)
 
virtual void destroy (void)
 
virtual const char * getFileFormatName (void) const
 
SbBool hasMultipleWriteRefs (void) const
 
void writeFooter (SoOutput *out) const
 
SbBool writeHeader (SoOutput *out, SbBool isgroup, SbBool isengine) const
 
- 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

◆ 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.

◆ 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.

◆ getTail()

SoNode * SoFullPath::getTail ( void ) const

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

◆ pop()

void SoFullPath::pop ( void )
inline

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


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