Open Inventor Reference
SoLightweightPath Class Reference

A SoLightweightPath is a light-weight version of an SoTempPath, intended to be used just to keep track of the current path during traversal. More...

#include <Inventor/SoPath.h>

Public Member Functions

 SoLightweightPath (int approxLength)
 Constructor given approximate number of nodes in chain.
 
void setHead (SoNode *node)
 Sets head node (first node in chain) Resulting path has only one node.
 
void append (int childIndex)
 Adds node specified by childindex to end of chain.
 
void push (int childIndex)
 Allows path to be treated as a stack: push a node at the end of the chain and pop the last node off.
 
void push ()
 
void pop ()
 
void setTail (int childIndex)
 
SoNodegetTail ()
 
SoNodegetHead () const
 Returns the first node in a path chain.
 
SoNodegetNode (int i) const
 Returns pointer to ith node in chain.
 
int getFullLength () const
 Returns full length of path chain (number of nodes) note that public/private distinction is ignored.
 
void truncate (int start)
 Removes all nodes from indexed node on.
 
void makeTempPath (SoTempPath *tmpPath) const
 fills in nodes for a TempPath that is represented by this SoLightweightPath.
 
 ~SoLightweightPath ()
 

Friends

class SoAction
 

Detailed Description

Eventually it is intended to replace SoTempPath (when appropriate modifications are made to SoDraggers). Unlike SoPath, it keeps only a chain of childIndices and a headnode. The methods implemented are only those needed for traversal.

Definition at line 350 of file SoPath.h.

Constructor & Destructor Documentation

◆ SoLightweightPath()

SoLightweightPath::SoLightweightPath ( int  approxLength)

◆ ~SoLightweightPath()

SoLightweightPath::~SoLightweightPath ( )

Member Function Documentation

◆ append()

void SoLightweightPath::append ( int  childIndex)
inline

Definition at line 363 of file SoPath.h.

References SbIntList::append().

◆ getFullLength()

int SoLightweightPath::getFullLength ( ) const
inline

Definition at line 385 of file SoPath.h.

References SbPList::getLength().

◆ getHead()

SoNode * SoLightweightPath::getHead ( ) const
inline

Definition at line 378 of file SoPath.h.

◆ getNode()

SoNode * SoLightweightPath::getNode ( int  i) const

◆ getTail()

SoNode * SoLightweightPath::getTail ( )
inline

Definition at line 374 of file SoPath.h.

◆ makeTempPath()

void SoLightweightPath::makeTempPath ( SoTempPath tmpPath) const

◆ pop()

void SoLightweightPath::pop ( )
inline

Definition at line 371 of file SoPath.h.

◆ push() [1/2]

void SoLightweightPath::push ( )
inline

Definition at line 370 of file SoPath.h.

◆ push() [2/2]

void SoLightweightPath::push ( int  childIndex)
inline

Definition at line 369 of file SoPath.h.

◆ setHead()

void SoLightweightPath::setHead ( SoNode node)

◆ setTail()

void SoLightweightPath::setTail ( int  childIndex)
inline

Definition at line 372 of file SoPath.h.

References SbPList::set().

◆ truncate()

void SoLightweightPath::truncate ( int  start)
inline

Definition at line 388 of file SoPath.h.

References SbPList::truncate().

Friends And Related Symbol Documentation

◆ SoAction

friend class SoAction
friend

Definition at line 403 of file SoPath.h.


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