HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT > Class Template Reference

Base class for tree-traversal iterators over all leaf nodes (but not leaf voxels) More...

#include <TreeIterator.h>

Public Types

using RootIterT = RootChildOnIterT
 
using RootNodeT = typename RootIterT::NodeType
 
using NCRootNodeT = typename RootIterT::NonConstNodeType
 
using InvTreeT = typename iter::InvertedTree< NCRootNodeT, ROOT_LEVEL >::Type
 
using NCLeafNodeT = typename InvTreeT::Front
 
using LeafNodeT = typename CopyConstness< RootNodeT, NCLeafNodeT >::Type
 
using RootIterTraits = IterTraits< NCRootNodeT, RootIterT >
 

Public Member Functions

 LeafIteratorBase ()
 
 LeafIteratorBase (TreeT &tree)
 
 LeafIteratorBase (const LeafIteratorBase &other)
 
LeafIteratorBaseoperator= (const LeafIteratorBase &other)
 
bool test () const
 
 operator bool () const
 
void increment (Index n)
 Increment the iterator n times. More...
 
TreeT * getTree () const
 
LeafNodeTgetLeaf () const
 Return the leaf node to which the iterator is pointing. More...
 
LeafNodeToperator* () const
 Return the leaf node to which the iterator is pointing. More...
 
LeafNodeToperator-> () const
 Return the leaf node to which the iterator is pointing. More...
 
bool next ()
 Advance the iterator to the next leaf node. More...
 
void increment ()
 Advance the iterator to the next leaf node. More...
 
LeafIteratorBaseoperator++ ()
 Advance the iterator to the next leaf node. More...
 

Static Public Attributes

static const Index ROOT_LEVEL = RootNodeT::LEVEL
 
static const Index LEAF_LEVEL = 0
 
static const Index LEAF_PARENT_LEVEL = LEAF_LEVEL + 1
 

Detailed Description

template<typename TreeT, typename RootChildOnIterT>
class openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >

Base class for tree-traversal iterators over all leaf nodes (but not leaf voxels)

Definition at line 1186 of file TreeIterator.h.

Member Typedef Documentation

template<typename TreeT , typename RootChildOnIterT >
using openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::InvTreeT = typename iter::InvertedTree<NCRootNodeT, ROOT_LEVEL>::Type

Definition at line 1193 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
using openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::LeafNodeT = typename CopyConstness<RootNodeT, NCLeafNodeT>::Type

Definition at line 1195 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
using openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::NCLeafNodeT = typename InvTreeT::Front

Definition at line 1194 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
using openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::NCRootNodeT = typename RootIterT::NonConstNodeType

Definition at line 1191 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
using openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::RootIterT = RootChildOnIterT

Definition at line 1189 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
using openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::RootIterTraits = IterTraits<NCRootNodeT, RootIterT>

Definition at line 1198 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
using openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::RootNodeT = typename RootIterT::NodeType

Definition at line 1190 of file TreeIterator.h.

Constructor & Destructor Documentation

template<typename TreeT , typename RootChildOnIterT >
openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::LeafIteratorBase ( )
inline

Definition at line 1200 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::LeafIteratorBase ( TreeT &  tree)
inline

Definition at line 1202 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::LeafIteratorBase ( const LeafIteratorBase< TreeT, RootChildOnIterT > &  other)
inline

Definition at line 1213 of file TreeIterator.h.

Member Function Documentation

template<typename TreeT , typename RootChildOnIterT >
LeafNodeT* openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::getLeaf ( ) const
inline

Return the leaf node to which the iterator is pointing.

Definition at line 1229 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
TreeT* openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::getTree ( ) const
inline

Definition at line 1251 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
void openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::increment ( )
inline

Advance the iterator to the next leaf node.

Definition at line 1245 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
void openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::increment ( Index  n)
inline

Increment the iterator n times.

Definition at line 1249 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
bool openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::next ( )
inline

Advance the iterator to the next leaf node.

Definition at line 1266 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::operator bool ( ) const
inline

Definition at line 1240 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
LeafNodeT& openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::operator* ( ) const
inline

Return the leaf node to which the iterator is pointing.

Definition at line 1235 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
LeafIteratorBase& openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::operator++ ( )
inline

Advance the iterator to the next leaf node.

Definition at line 1246 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
LeafNodeT* openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::operator-> ( ) const
inline

Return the leaf node to which the iterator is pointing.

Definition at line 1236 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
LeafIteratorBase& openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::operator= ( const LeafIteratorBase< TreeT, RootChildOnIterT > &  other)
inline

Definition at line 1217 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
bool openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::test ( ) const
inline

Definition at line 1239 of file TreeIterator.h.

Member Data Documentation

template<typename TreeT , typename RootChildOnIterT >
const Index openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::LEAF_LEVEL = 0
static

Definition at line 1196 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
const Index openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::LEAF_PARENT_LEVEL = LEAF_LEVEL + 1
static

Definition at line 1196 of file TreeIterator.h.

template<typename TreeT , typename RootChildOnIterT >
const Index openvdb::OPENVDB_VERSION_NAME::tree::LeafIteratorBase< TreeT, RootChildOnIterT >::ROOT_LEVEL = RootNodeT::LEVEL
static

Definition at line 1192 of file TreeIterator.h.


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