OpenVDB  12.0.0
Public Types | Static Public Member Functions | List of all members
DepthFirstNodeVisitor< NodeT, LEVEL > Struct Template Reference

Visit all nodes that are downstream of a specific node in depth-first order and apply a user-supplied functor to each node. More...

#include <openvdb/tools/NodeVisitor.h>

Public Types

using NonConstChildType = typename NodeT::ChildNodeType
 
using ChildNodeType = typename CopyConstness< NodeT, NonConstChildType >::Type
 

Static Public Member Functions

template<typename OpT >
static size_t visit (NodeT &node, OpT &op, size_t idx=0)
 

Detailed Description

template<typename NodeT, Index LEVEL>
struct openvdb::v12_0::tools::DepthFirstNodeVisitor< NodeT, LEVEL >

Visit all nodes that are downstream of a specific node in depth-first order and apply a user-supplied functor to each node.

Note
This uses the same operator interface as documented in visitNodesDepthFirst().
The LEVEL template argument can be used to reduce the traversal depth. For example, calling visit() with a RootNode and using NodeT::LEVEL-1 would not visit leaf nodes.

Member Typedef Documentation

using ChildNodeType = typename CopyConstness<NodeT, NonConstChildType>::Type
using NonConstChildType = typename NodeT::ChildNodeType

Member Function Documentation

static size_t visit ( NodeT &  node,
OpT &  op,
size_t  idx = 0 
)
inlinestatic