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::v11_0::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::v11_0::tree::IterTraits
Definition TreeIterator.h:60

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)