OpenVDB 12.0.0
 
Loading...
Searching...
No Matches
InternalNode< _ChildNodeType, Log2Dim >::ValueIter< NodeT, ValueT, MaskIterT, TagT > Struct Template Reference

#include <openvdb/tree/InternalNode.h>

Inheritance diagram for InternalNode< _ChildNodeType, Log2Dim >::ValueIter< NodeT, ValueT, MaskIterT, TagT >:
SparseIteratorBase< MaskIterT, ValueIter< NodeT, ValueT, MaskIterT, TagT >, NodeT, ValueT > IteratorBase< MaskIterT, NodeT >

Public Types

using NodeType
 
using ValueType
 
using NonConstNodeType
 
using NonConstValueType
 

Public Member Functions

 ValueIter ()
 
 ValueIter (const MaskIterT &iter, NodeT *parent)
 
const ValueT & getItem (Index pos) const
 
void setItem (Index pos, const ValueT &v) const
 
template<typename ModifyOp>
void modifyItem (Index pos, const ModifyOp &op) const
 
ValueT & operator* () const
 Return a reference to the item to which this iterator is pointing.
 
ValueT * operator-> () const
 Return a pointer to the item to which this iterator is pointing.
 
ValueT & getValue () const
 Return the item to which this iterator is pointing.
 
void setValue (const ValueT &value) const
 Set the value of the item to which this iterator is pointing. (Not valid for const iterators.)
 
void modifyValue (const ModifyOp &op) const
 Apply a functor to the item to which this iterator is pointing. (Not valid for const iterators.)
 
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.
 
void increment (Index n)
 Advance n items in the parent node's table.
 
IteratorBaseoperator++ ()
 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.
 
void getCoord (Coord &xyz) const
 Return in xyz 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

◆ NodeType

using NodeType
inherited

◆ NonConstNodeType

using NonConstNodeType
inherited

◆ NonConstValueType

using NonConstValueType
inherited

◆ ValueType

using ValueType
inherited

Constructor & Destructor Documentation

◆ ValueIter() [1/2]

template<typename _ChildNodeType, Index Log2Dim>
template<typename NodeT, typename ValueT, typename MaskIterT, typename TagT>
ValueIter ( )
inline

◆ ValueIter() [2/2]

template<typename _ChildNodeType, Index Log2Dim>
template<typename NodeT, typename ValueT, typename MaskIterT, typename TagT>
ValueIter ( const MaskIterT & iter,
NodeT * parent )
inline

Member Function Documentation

◆ getCoord() [1/2]

Coord getCoord ( ) const
inlineinherited

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

◆ getCoord() [2/2]

void getCoord ( Coord & xyz) const
inlineinherited

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

◆ getItem()

template<typename _ChildNodeType, Index Log2Dim>
template<typename NodeT, typename ValueT, typename MaskIterT, typename TagT>
const ValueT & getItem ( Index pos) const
inline

◆ getParentNode()

NodeT * getParentNode ( ) const
inlineinherited

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

◆ getValue()

ValueT & getValue ( ) const
inlineinherited

Return the item to which this iterator is pointing.

◆ increment() [1/2]

void increment ( )
inlineinherited

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

◆ increment() [2/2]

void increment ( Index n)
inlineinherited

Advance n items in the parent node's table.

◆ 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.

◆ modifyItem()

template<typename _ChildNodeType, Index Log2Dim>
template<typename NodeT, typename ValueT, typename MaskIterT, typename TagT>
template<typename ModifyOp>
void modifyItem ( Index pos,
const ModifyOp & op ) const
inline

◆ modifyValue()

void modifyValue ( const ModifyOp & op) const
inlineinherited

Apply a functor to the item to which this iterator is pointing. (Not valid for const iterators.)

Parameters
opa functor of the form void op(ValueType&) const that modifies its argument in place
See also
Tree::modifyValue()

◆ 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 & other) const
inlineinherited

◆ operator*()

ValueT & operator* ( ) const
inlineinherited

Return a reference to the item to which this iterator is pointing.

◆ operator++()

IteratorBase & operator++ ( )
inlineinherited

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

◆ operator->()

ValueT * operator-> ( ) const
inlineinherited

Return a pointer to the item to which this iterator is pointing.

◆ operator==()

bool operator== ( const IteratorBase & other) const
inlineinherited

◆ parent()

NodeT & parent ( ) const
inlineinherited

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

Exceptions
ValueErrorif there is no parent node.

◆ pos()

Index pos ( ) const
inlineinherited

Identical to offset.

◆ setItem()

template<typename _ChildNodeType, Index Log2Dim>
template<typename NodeT, typename ValueT, typename MaskIterT, typename TagT>
void setItem ( Index pos,
const ValueT & v ) const
inline

◆ setValue()

void setValue ( const ValueT & value) const
inlineinherited

Set the value of the item to which this iterator is pointing. (Not valid for const iterators.)

◆ 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.

Member Data Documentation

◆ IsDenseIterator

const bool IsDenseIterator
staticinherited

◆ IsSparseIterator

const bool IsSparseIterator
staticinherited