OpenVDB: LeafIteratorBase< TreeT, RootChildOnIterT > Class Template Reference

OpenVDB 10.0.1

Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Static Public Attributes | List of all members
LeafIteratorBase< TreeT, RootChildOnIterT > Class Template Reference

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

`#include <openvdb/tree/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)
LeafIteratorBase & | operator= (const LeafIteratorBase &other)
LeafNodeT * | getLeaf () const
| Return the leaf node to which the iterator is pointing. More...
LeafNodeT & | operator* () const
LeafNodeT * | operator-> () const
bool | test () const
| operator bool () const
bool | next ()
| Advance the iterator to the next leaf node. More...
void | increment ()
LeafIteratorBase & | operator++ ()
void | increment (Index n)
| Increment the iterator n times. More...
TreeT * | getTree () const

## 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::v10_0::tree::LeafIteratorBase< TreeT, RootChildOnIterT >

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

## Member Typedef Documentation

## ◆ InvTreeT

using InvTreeT = typename iter::InvertedTree<NCRootNodeT, ROOT_LEVEL>::Type

## ◆ LeafNodeT

using LeafNodeT = typename CopyConstness<RootNodeT, NCLeafNodeT>::Type

## ◆ NCLeafNodeT

using NCLeafNodeT = typename InvTreeT::Front

## ◆ NCRootNodeT

using NCRootNodeT = typename RootIterT::NonConstNodeType

## ◆ RootIterT

using RootIterT = RootChildOnIterT

## ◆ RootIterTraits

using RootIterTraits = IterTraits<NCRootNodeT, RootIterT>

## ◆ RootNodeT

using RootNodeT = typename RootIterT::NodeType

## Constructor & Destructor Documentation

## ◆ LeafIteratorBase() [1/3]

LeafIteratorBase | ( |  | ) |
| inline

## ◆ LeafIteratorBase() [2/3]

LeafIteratorBase | ( | TreeT & | tree | ) |
| inline

## ◆ LeafIteratorBase() [3/3]

LeafIteratorBase | ( | const LeafIteratorBase< TreeT, RootChildOnIterT > & | other | ) |
| inline

## Member Function Documentation

## ◆ getLeaf()

LeafNodeT * getLeaf | ( |  | ) | const
| inline

Return the leaf node to which the iterator is pointing.

## ◆ getTree()

TreeT * getTree | ( |  | ) | const
| inline

## ◆ increment() [1/2]

void increment | ( |  | ) |
| inline

## ◆ increment() [2/2]

void increment | ( | Index | n | ) |
| inline

Increment the iterator n times.

## ◆ next()

bool next
| inline

Advance the iterator to the next leaf node.

## ◆ operator bool()

operator bool | ( |  | ) | const
| inline

## ◆ operator*()

LeafNodeT & operator* | ( |  | ) | const
| inline

## ◆ operator++()

LeafIteratorBase & operator++ | ( |  | ) |
| inline

## ◆ operator->()

LeafNodeT * operator-> | ( |  | ) | const
| inline

## ◆ operator=()

LeafIteratorBase & operator= | ( | const LeafIteratorBase< TreeT, RootChildOnIterT > & | other | ) |
| inline

## ◆ test()

bool test | ( |  | ) | const
| inline

## Member Data Documentation

## ◆ LEAF_LEVEL

const Index LEAF_LEVEL = 0
| static

## ◆ LEAF_PARENT_LEVEL

const Index LEAF_PARENT_LEVEL = LEAF_LEVEL + 1
| static

## ◆ ROOT_LEVEL

const Index ROOT_LEVEL = RootNodeT::LEVEL
| static