OpenVDB: IterListItem< PrevItemT, NodeVecT, VecSize, 0U > Class Template Reference

OpenVDB 12.1.1

Loading...
Searching...
No Matches
IterListItem< PrevItemT, NodeVecT, VecSize, 0U > Class Template Reference

The initial element of a compile-time linked list of iterators to nodes of different types. More...

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

## Public Types
using | PrevIterT = typename PrevItemT::IterT
| The type of iterator stored in the previous list item.
using | _NodeT = typename NodeVecT::Front
| The type of node (non-const) whose iterator is stored in this list item.
using | IterT
| The type of iterator stored in this list item (e.g., InternalNode::ValueOnCIter).
using | NodeT = typename IterT::NodeType
| The type of node (const or non-const) over which IterT iterates (e.g., const RootNode<...>).
using | NCNodeT = typename IterT::NonConstNodeType
| The type of the node with const qualifiers removed ("Non-Const").
using | NCValueT = typename IterT::NonConstValueType
| The type of value (with const qualifiers removed) to which the iterator points.
using | ITraits = IterTraits<NCNodeT, IterT>
using | ChildT
| NodeT's child node type, with the same constness (e.g., const InternalNode<...>).
using | NCChildT
| NodeT's child node type with const qualifiers removed.

## Public Member Functions
| IterListItem (PrevItemT *)
| IterListItem (const IterListItem &other)
IterListItem & | operator= (const IterListItem &other)
void | updateBackPointers (PrevItemT *=nullptr)
void | setIter (const IterT &iter)
template<typename OtherIterT>
void | setIter (const OtherIterT &iter)
void | getNode (Index lvl, NodeT *&node) const
template<typename OtherNodeT>
void | getNode (Index lvl, OtherNodeT *&node) const
template<typename OtherIterListItemT>
void | initLevel (Index lvl, OtherIterListItemT &otherListItem)
Index | pos (Index lvl) const
bool | test (Index lvl) const
bool | next (Index lvl)
bool | down (Index lvl)
Coord | getCoord (Index lvl) const
Index | getChildDim (Index lvl) const
Index64 | getVoxelCount (Index lvl) const
bool | isValueOn (Index lvl) const
const NCValueT & | getValue (Index lvl) const
void | setValue (Index lvl, const NCValueT &val) const
void | setValueOn (Index lvl, bool on=true) const
void | setValueOff (Index lvl) const
template<typename ModifyOp>
void | modifyValue (Index lvl, const ModifyOp &op) const

## Static Public Attributes
static const Index | Level = 0
| NodeT's level in its tree (0 = LeafNode).

## Detailed Description

template<typename PrevItemT, typename NodeVecT, size_t VecSize>
class openvdb::v12_1::tree::IterListItem< PrevItemT, NodeVecT, VecSize, 0U >

The initial element of a compile-time linked list of iterators to nodes of different types.

## Member Typedef Documentation

## ◆ _NodeT

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

using _NodeT = typename NodeVecT::Front

The type of node (non-const) whose iterator is stored in this list item.

## ◆ ChildT

using ChildT

NodeT's child node type, with the same constness (e.g., const InternalNode<...>).

## ◆ IterT

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

using IterT

Initial value:
typename IterTraits<typename PrevIterT::NonConstNodeType, PrevIterT>::template
NodeConverter<_NodeT>::Type
openvdb::v12_1::tree::IterTraits
Definition TreeIterator.h:61

The type of iterator stored in this list item (e.g., InternalNode::ValueOnCIter).

## ◆ ITraits

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

using ITraits = IterTraits<NCNodeT, IterT>

## ◆ NCChildT

using NCChildT

NodeT's child node type with const qualifiers removed.

## ◆ NCNodeT

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

using NCNodeT = typename IterT::NonConstNodeType

The type of the node with const qualifiers removed ("Non-Const").

## ◆ NCValueT

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

using NCValueT = typename IterT::NonConstValueType

The type of value (with const qualifiers removed) to which the iterator points.

## ◆ NodeT

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

using NodeT = typename IterT::NodeType

The type of node (const or non-const) over which IterT iterates (e.g., const RootNode<...>).

## ◆ PrevIterT

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

using PrevIterT = typename PrevItemT::IterT

The type of iterator stored in the previous list item.

## Constructor & Destructor Documentation

## ◆ IterListItem() [1/2]

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

IterListItem | ( | PrevItemT * |  | ) |
| inline

## ◆ IterListItem() [2/2]

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

IterListItem | ( | const IterListItem< PrevItemT, NodeVecT, VecSize, 0U > & | other | ) |
| inline

## Member Function Documentation

## ◆ down()

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

bool down | ( | Index | lvl | ) |
| inline

## ◆ getChildDim()

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

Index getChildDim | ( | Index | lvl | ) | const
| inline

## ◆ getCoord()

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

Coord getCoord | ( | Index | lvl | ) | const
| inline

## ◆ getNode() [1/2]

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

void getNode | ( | Index | lvl,
|  | NodeT *& | node ) const
| inline

## ◆ getNode() [2/2]

template<typename PrevItemT, typename NodeVecT, size_t VecSize>
template<typename OtherNodeT>

void getNode | ( | Index | lvl,
|  | OtherNodeT *& | node ) const
| inline

## ◆ getValue()

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

const NCValueT & getValue | ( | Index | lvl | ) | const
| inline

## ◆ getVoxelCount()

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

Index64 getVoxelCount | ( | Index | lvl | ) | const
| inline

## ◆ initLevel()

template<typename PrevItemT, typename NodeVecT, size_t VecSize>
template<typename OtherIterListItemT>

void initLevel | ( | Index | lvl,
|  | OtherIterListItemT & | otherListItem )
| inline

## ◆ isValueOn()

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

bool isValueOn | ( | Index | lvl | ) | const
| inline

## ◆ modifyValue()

template<typename PrevItemT, typename NodeVecT, size_t VecSize>
template<typename ModifyOp>

void modifyValue | ( | Index | lvl,
|  | const ModifyOp & | op ) const
| inline

## ◆ next()

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

bool next | ( | Index | lvl | ) |
| inline

## ◆ operator=()

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

IterListItem & operator= | ( | const IterListItem< PrevItemT, NodeVecT, VecSize, 0U > & | other | ) |
| inline

## ◆ pos()

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

Index pos | ( | Index | lvl | ) | const
| inline

## ◆ setIter() [1/2]

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

void setIter | ( | const IterT & | iter | ) |
| inline

## ◆ setIter() [2/2]

template<typename PrevItemT, typename NodeVecT, size_t VecSize>
template<typename OtherIterT>

void setIter | ( | const OtherIterT & | iter | ) |
| inline

## ◆ setValue()

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

void setValue | ( | Index | lvl,
|  | const NCValueT & | val ) const
| inline

## ◆ setValueOff()

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

void setValueOff | ( | Index | lvl | ) | const
| inline

## ◆ setValueOn()

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

void setValueOn | ( | Index | lvl,
|  | bool | on = true ) const
| inline

## ◆ test()

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

bool test | ( | Index | lvl | ) | const
| inline

## ◆ updateBackPointers()

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

void updateBackPointers | ( | PrevItemT * | = nullptr | ) |
| inline

## Member Data Documentation

## ◆ Level

template<typename PrevItemT, typename NodeVecT, size_t VecSize>

const Index Level = 0
| static

NodeT's level in its tree (0 = LeafNode).