0.44.0
|
#include <iNodeVisitor.h>
Inherited by igor::iModelDataIOOMPF, igor::iNodeVisitorBoundings, igor::iNodeVisitorPrintTree, igor::iNodeVisitorRenderBoundings, igor::iNodeVisitorRenderColorID, igor::iNodeVisitorSearchName, and igor::iNodeVisitorUpdateTransform.
Public Member Functions | |
iNodeVisitor ()=default | |
virtual | ~iNodeVisitor ()=default |
void | setTraverseInactiveChildren (bool traverseInactive=true) |
void | setTraverseSiblings (bool traverseSiblings=true) |
void | traverseTree (iNodePtr node) |
Protected Member Functions | |
virtual void | preTraverse ()=0 |
virtual bool | preOrderVisit (iNodePtr node, iNodePtr nextSibling)=0 |
virtual void | postOrderVisit (iNodePtr node)=0 |
virtual void | postTraverse ()=0 |
base class for traversing a node tree
|
default |
does nothing
|
virtualdefault |
does nothing
|
protectedpure virtual |
is called after every node visited
has to be implemented by deriving class
Implemented in igor::iNodeVisitorBoundings, igor::iNodeVisitorPrintTree, igor::iNodeVisitorRenderBoundings, igor::iNodeVisitorRenderColorID, igor::iNodeVisitorSearchName, and igor::iNodeVisitorUpdateTransform.
|
protectedpure virtual |
is called after the whole traversal
has to be implemented by deriving class
Implemented in igor::iNodeVisitorBoundings, igor::iNodeVisitorPrintTree, igor::iNodeVisitorRenderBoundings, igor::iNodeVisitorRenderColorID, igor::iNodeVisitorSearchName, and igor::iNodeVisitorUpdateTransform.
|
protectedpure virtual |
is called before every node visited
has to be implemented by deriving class
Implemented in igor::iNodeVisitorBoundings, igor::iNodeVisitorPrintTree, igor::iNodeVisitorRenderBoundings, igor::iNodeVisitorRenderColorID, igor::iNodeVisitorSearchName, and igor::iNodeVisitorUpdateTransform.
|
protectedpure virtual |
is called before traversal
has to be implemented by deriving class
Implemented in igor::iNodeVisitorBoundings, igor::iNodeVisitorPrintTree, igor::iNodeVisitorRenderBoundings, igor::iNodeVisitorRenderColorID, igor::iNodeVisitorSearchName, and igor::iNodeVisitorUpdateTransform.
void igor::iNodeVisitor::setTraverseInactiveChildren | ( | bool | traverseInactive = true | ) |
setter if inactive children shall be traversed too
traverseInactive | if true inactive children will be traversed too |
void igor::iNodeVisitor::setTraverseSiblings | ( | bool | traverseSiblings = true | ) |
sets wether or not traversal will check for next sibling
traverseSiblings | if true traversal will call preOrderVisit with next sibling if available |
void igor::iNodeVisitor::traverseTree | ( | iNodePtr | node | ) |
traverses tree from given node on
node | node to start from |