OpenVDB: InternalNode< _ChildNodeType, Log2Dim >::DenseIter< NodeT, ChildT, ValueT, TagT > Struct Template Reference

OpenVDB 13.0.0

Loading...
Searching...
No Matches
InternalNode< _ChildNodeType, Log2Dim >::DenseIter< NodeT, ChildT, ValueT, TagT > Struct Template Reference

`#include <openvdb/tree/InternalNode.h>`

Inheritance diagram for InternalNode< _ChildNodeType, Log2Dim >::DenseIter< NodeT, ChildT, ValueT, TagT >:

## Public Types
using | BaseT = DenseIteratorBase<MaskDenseIterator, DenseIter, NodeT, ChildT, ValueT>
using | NonConstValueT = typename BaseT::NonConstValueType
using | NodeType
using | ValueType
using | ChildNodeType
using | NonConstNodeType
using | NonConstValueType
using | NonConstChildNodeType

## Public Member Functions
| DenseIter ()
| DenseIter (const MaskDenseIterator &iter, NodeT *parent)
bool | getItem (Index pos, ChildT *&child, NonConstValueT &value) const
void | setItem (Index pos, ChildT *child) const
void | unsetItem (Index pos, const ValueT &value) const
bool | isChildNode () const
| Return `true` if this iterator is pointing to a child node.
ChildT * | probeChild (NonConstValueType &value) const
| If this iterator is pointing to a child node, return a pointer to the node. Otherwise, return nullptr and, in value, the value to which this iterator is pointing.
bool | probeValue (NonConstValueType &value) const
| Return `true` if this iterator is pointing to a value and return the value in value. Otherwise, return `false`.
void | setChild (ChildT *child) const
| Replace with the given child node the item in the parent node's table to which this iterator is pointing.
void | setValue (const ValueT &value) const
| Replace with the given value the item in the parent node's table to which this iterator is pointing.
bool | operator== (const IteratorBase &other) const
bool | operator!= (const IteratorBase &other) const
NodeT * | getParentNode () const
| Return a pointer to the node (if any) over which this iterator is iterating.
NodeT & | parent () const
| Return a reference to the node over which this iterator is iterating.
Index | offset () const
| Return this iterator's position as an index into the parent node's table.
Index | pos () const
| Identical to offset.
bool | test () const
| Return `true` if this iterator is not yet exhausted.
| operator bool () const
| Return `true` if this iterator is not yet exhausted.
bool | next ()
| Advance to the next item in the parent node's table.
void | increment ()
| Advance to the next item in the parent node's table.
IteratorBase & | operator++ ()
| Advance to the next item in the parent node's table.
bool | isValueOn () const
| Return `true` if this iterator is pointing to an active value. Return `false` if it is pointing to either an inactive value or a child node.
void | setValueOn (bool on=true) const
| If this iterator is pointing to a value, set the value's active state. Otherwise, do nothing.
void | setValueOff () const
| If this iterator is pointing to a value, mark the value as inactive.
Coord | getCoord () const
| Return the coordinates of the item to which this iterator is pointing.

## Static Public Attributes
static const bool | IsSparseIterator
static const bool | IsDenseIterator

## Member Typedef Documentation

## ◆ BaseT

template<typename _ChildNodeType, Index Log2Dim>
template<typename NodeT, typename ChildT, typename ValueT, typename TagT>

using BaseT = DenseIteratorBase<MaskDenseIterator, DenseIter, NodeT, ChildT, ValueT>

## ◆ ChildNodeType

using ChildNodeType
| inherited

## ◆ NodeType

using NodeType
| inherited

## ◆ NonConstChildNodeType

using NonConstChildNodeType
| inherited

## ◆ NonConstNodeType

using NonConstNodeType
| inherited

## ◆ NonConstValueT

template<typename _ChildNodeType, Index Log2Dim>
template<typename NodeT, typename ChildT, typename ValueT, typename TagT>

using NonConstValueT = typename BaseT::NonConstValueType

## ◆ NonConstValueType

using NonConstValueType
| inherited

## ◆ ValueType

using ValueType
| inherited

## Constructor & Destructor Documentation

## ◆ DenseIter() [1/2]

template<typename _ChildNodeType, Index Log2Dim>
template<typename NodeT, typename ChildT, typename ValueT, typename TagT>

DenseIter | ( |  | ) |
| inline

## ◆ DenseIter() [2/2]

template<typename _ChildNodeType, Index Log2Dim>
template<typename NodeT, typename ChildT, typename ValueT, typename TagT>

DenseIter | ( | const MaskDenseIterator & | iter,
|  | NodeT * | parent )
| inline

## Member Function Documentation

## ◆ getCoord()

Coord getCoord | ( |  | ) | const
| inlineinherited

Return the coordinates of the item to which this iterator is pointing.

## ◆ getItem()

template<typename _ChildNodeType, Index Log2Dim>
template<typename NodeT, typename ChildT, typename ValueT, typename TagT>

bool getItem | ( | Index | pos,
|  | ChildT *& | child,
|  | NonConstValueT & | value ) const
| inline

## ◆ getParentNode()

NodeT * getParentNode | ( |  | ) | const
| inlineinherited

Return a pointer to the node (if any) over which this iterator is iterating.

## ◆ increment()

void increment | ( |  | ) |
| inlineinherited

Advance to the next item in the parent node's table.

## ◆ isChildNode()

bool isChildNode | ( |  | ) | const
| inlineinherited

Return `true` if this iterator is pointing to a child node.

## ◆ isValueOn()

bool isValueOn | ( |  | ) | const
| inlineinherited

Return `true` if this iterator is pointing to an active value. Return `false` if it is pointing to either an inactive value or a child node.

## ◆ next()

bool next | ( |  | ) |
| inlineinherited

Advance to the next item in the parent node's table.

## ◆ offset()

Index offset | ( |  | ) | const
| inlineinherited

Return this iterator's position as an index into the parent node's table.

## ◆ operator bool()

operator bool | ( |  | ) | const
| inlineinherited

Return `true` if this iterator is not yet exhausted.

## ◆ operator!=()

bool operator!= | ( | const IteratorBase< MaskDenseIterator, NodeT > & | other | ) | const
| inlineinherited

## ◆ operator++()

IteratorBase & operator++ | ( |  | ) |
| inlineinherited

Advance to the next item in the parent node's table.

## ◆ operator==()

bool operator== | ( | const IteratorBase< MaskDenseIterator, NodeT > & | other | ) | const
| inlineinherited

## ◆ parent()

NodeT & parent | ( |  | ) | const
| inlineinherited

Return a reference to the node over which this iterator is iterating.

Exceptions

  ValueError | if there is no parent node.

## ◆ pos()

Index pos | ( |  | ) | const
| inlineinherited

Identical to offset.

## ◆ probeChild()

ChildT * probeChild | ( | NonConstValueType & | value | ) | const
| inlineinherited

If this iterator is pointing to a child node, return a pointer to the node. Otherwise, return nullptr and, in value, the value to which this iterator is pointing.

## ◆ probeValue()

bool probeValue | ( | NonConstValueType & | value | ) | const
| inlineinherited

Return `true` if this iterator is pointing to a value and return the value in value. Otherwise, return `false`.

## ◆ setChild()

void setChild | ( | ChildT * | child | ) | const
| inlineinherited

Replace with the given child node the item in the parent node's table to which this iterator is pointing.

## ◆ setItem()

template<typename _ChildNodeType, Index Log2Dim>
template<typename NodeT, typename ChildT, typename ValueT, typename TagT>

void setItem | ( | Index | pos,
|  | ChildT * | child ) const
| inline

## ◆ setValue()

void setValue | ( | const ValueT & | value | ) | const
| inlineinherited

Replace with the given value the item in the parent node's table to which this iterator is pointing.

## ◆ setValueOff()

void setValueOff | ( |  | ) | const
| inlineinherited

If this iterator is pointing to a value, mark the value as inactive.

If this iterator is pointing to a child node, then the current item in the parent node's table is required to be inactive. In that case, this method has no effect.

## ◆ setValueOn()

void setValueOn | ( | bool | on = true | ) | const
| inlineinherited

If this iterator is pointing to a value, set the value's active state. Otherwise, do nothing.

## ◆ test()

bool test | ( |  | ) | const
| inlineinherited

Return `true` if this iterator is not yet exhausted.

## ◆ unsetItem()

template<typename _ChildNodeType, Index Log2Dim>
template<typename NodeT, typename ChildT, typename ValueT, typename TagT>

void unsetItem | ( | Index | pos,
|  | const ValueT & | value ) const
| inline

## Member Data Documentation

## ◆ IsDenseIterator

const bool IsDenseIterator
| staticinherited

## ◆ IsSparseIterator

const bool IsSparseIterator
| staticinherited