|
OpenVDB
4.0.2
|
Base class for dense iterators over internal and leaf nodes. More...
#include <Iterator.h>
Inherits IteratorBase< MaskIterT, NodeT >.
Public Types | |
| typedef NodeT | NodeType |
| typedef UnsetItemT | ValueType |
| typedef SetItemT | ChildNodeType |
| typedef boost::remove_const< NodeT >::type | NonConstNodeType |
| typedef boost::remove_const< UnsetItemT >::type | NonConstValueType |
| typedef boost::remove_const< SetItemT >::type | NonConstChildNodeType |
Public Member Functions | |
| DenseIteratorBase () | |
| DenseIteratorBase (const MaskIterT &iter, NodeT *parent) | |
| bool | getItem (Index, SetItemT *&child, NonConstValueType &value) const |
Return true if the item at the given index in the parent node's table is a set value and return either the set value in child or the unset value in value. More... | |
| void | setItem (Index, SetItemT *) const |
| Set the value of the item at the given index in the parent node's table. More... | |
| void | unsetItem (Index, const UnsetItemT &) const |
| "Unset" the value of the item at the given index in the parent node's table. More... | |
| bool | isChildNode () const |
Return true if this iterator is pointing to a child node. More... | |
| SetItemT * | 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. More... | |
| bool | probeChild (SetItemT *&child, NonConstValueType &value) const |
If this iterator is pointing to a child node, return true and return a pointer to the child node in child. Otherwise, return false and return the value to which this iterator is pointing in value. More... | |
| bool | probeValue (NonConstValueType &value) const |
Return true if this iterator is pointing to a value and return the value in value. Otherwise, return false. More... | |
| void | setChild (SetItemT *child) const |
| Replace with the given child node the item in the parent node's table to which this iterator is pointing. More... | |
| void | setValue (const UnsetItemT &value) const |
| Replace with the given value the item in the parent node's table to which this iterator is pointing. More... | |
| 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. More... | |
| NodeT & | parent () const |
| Return a reference to the node over which this iterator is iterating. More... | |
| Index | offset () const |
| Return this iterator's position as an index into the parent node's table. More... | |
| Index | pos () const |
| Identical to offset. More... | |
| bool | test () const |
Return true if this iterator is not yet exhausted. More... | |
| operator bool () const | |
Return true if this iterator is not yet exhausted. More... | |
| bool | next () |
| Advance to the next item in the parent node's table. More... | |
| void | increment () |
| Advance to the next item in the parent node's table. More... | |
| void | increment (Index n) |
| Advance n items in the parent node's table. More... | |
| IteratorBase & | operator++ () |
| Advance to the next item in the parent node's table. More... | |
| 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. More... | |
| void | setValueOn (bool on=true) const |
| If this iterator is pointing to a value, set the value's active state. Otherwise, do nothing. More... | |
| void | setValueOff () const |
| If this iterator is pointing to a value, mark the value as inactive. More... | |
| Coord | getCoord () const |
| Return the coordinates of the item to which this iterator is pointing. More... | |
| void | getCoord (Coord &xyz) const |
| Return in xyz the coordinates of the item to which this iterator is pointing. More... | |
Static Public Attributes | |
| static const bool | IsSparseIterator = false |
| static const bool | IsDenseIterator = true |
Base class for dense iterators over internal and leaf nodes.
operator*() or operator->(), because their return type would have to vary depending on whether the iterator is pointing to a value or a child node. | typedef SetItemT ChildNodeType |
| typedef NodeT NodeType |
| typedef boost::remove_const<SetItemT>::type NonConstChildNodeType |
| typedef boost::remove_const<NodeT>::type NonConstNodeType |
| typedef boost::remove_const<UnsetItemT>::type NonConstValueType |
| typedef UnsetItemT ValueType |
|
inline |
|
inline |
|
inlineinherited |
Return the coordinates of the item to which this iterator is pointing.
|
inlineinherited |
Return in xyz the coordinates of the item to which this iterator is pointing.
| bool getItem | ( | Index | , |
| SetItemT *& | child, | ||
| NonConstValueType & | value | ||
| ) | const |
Return true if the item at the given index in the parent node's table is a set value and return either the set value in child or the unset value in value.
|
inlineinherited |
Return a pointer to the node (if any) over which this iterator is iterating.
|
inlineinherited |
Advance to the next item in the parent node's table.
|
inlineinherited |
Advance n items in the parent node's table.
|
inline |
Return true if this iterator is pointing to a child node.
|
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.
|
inlineinherited |
Advance to the next item in the parent node's table.
|
inlineinherited |
Return this iterator's position as an index into the parent node's table.
|
inlineinherited |
Return true if this iterator is not yet exhausted.
|
inlineinherited |
|
inlineinherited |
Advance to the next item in the parent node's table.
|
inlineinherited |
|
inlineinherited |
Return a reference to the node over which this iterator is iterating.
| ValueError | if there is no parent node. |
|
inlineinherited |
Identical to offset.
|
inline |
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.
|
inline |
If this iterator is pointing to a child node, return true and return a pointer to the child node in child. Otherwise, return false and return the value to which this iterator is pointing in value.
|
inline |
Return true if this iterator is pointing to a value and return the value in value. Otherwise, return false.
|
inline |
Replace with the given child node the item in the parent node's table to which this iterator is pointing.
| void setItem | ( | Index | , |
| SetItemT * | |||
| ) | const |
Set the value of the item at the given index in the parent node's table.
|
inline |
Replace with the given value the item in the parent node's table to which this iterator is pointing.
|
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.
|
inlineinherited |
If this iterator is pointing to a value, set the value's active state. Otherwise, do nothing.
|
inlineinherited |
Return true if this iterator is not yet exhausted.
| void unsetItem | ( | Index | , |
| const UnsetItemT & | |||
| ) | const |
"Unset" the value of the item at the given index in the parent node's table.
|
static |
|
static |
1.8.13