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

The SoCompactPathList class is used to optimize SoPathList traversal. More...

#include <Inventor/misc/SoCompactPathList.h>

Public Member Functions

 SoCompactPathList (const SoPathList &list)
 
 ~SoCompactPathList ()
 
void reset (void)
 
void getChildren (int &numindices, const int *&indices)
 
SbBool push (int childindex)
 
void pop (void)
 
int getDepth (void) const
 

Detailed Description

The SoCompactPathList class is used to optimize SoPathList traversal.

This class creates a lookup table which is used while doing SoPathList traversal. For each node in the paths, it stores the following information:

  1. the number of distinct children at that level
  2. a child index to each distinct child to be used for IN_PATH traversal
  3. an index to each child's lookup table position
  1. and 2. are used for optimized IN_PATH action traversal. 3. is used internally to traverse this lookup table.

Constructor & Destructor Documentation

◆ SoCompactPathList()

SoCompactPathList::SoCompactPathList ( const SoPathList & list)

Constructor.

◆ ~SoCompactPathList()

SoCompactPathList::~SoCompactPathList ( )

Destructor.

Member Function Documentation

◆ reset()

void SoCompactPathList::reset ( void )

Reset path list.

◆ getChildren()

void SoCompactPathList::getChildren ( int & numindices,
const int *& indices )

Returns the children to be used for IN_PATH traversal.

◆ push()

SbBool SoCompactPathList::push ( int childindex)

Push childindex to the current path.

◆ pop()

void SoCompactPathList::pop ( void )

Pop the current node off the path.

◆ getDepth()

int SoCompactPathList::getDepth ( void ) const

Returns the depth of the current node.


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