Loading...
Searching...
No Matches
IterListItem< PrevItemT, NodeVecT, 1, _Level > Class Template Reference

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

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

## Public Types

using | _NodeT = typename NodeVecT::Front
using | PrevIterT = typename PrevItemT::IterT
| The type of iterator stored in the previous list item.
using | IterT
| The type of iterator stored in this list item (e.g., RootNode::ValueOnCIter).
using | NodeT = typename IterT::NodeType
| The type of node 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 | ChildT = typename CopyConstness<NodeT, typename NodeT::ChildNodeType>::Type
| NodeT's child node type, with the same constness (e.g., const InternalNode<...>).
using | NCChildT = typename CopyConstness<NCNodeT, typename NCNodeT::ChildNodeType>::Type
| NodeT's child node type with const qualifiers removed.
using | ITraits = IterTraits<NCNodeT, IterT>

## Public Member Functions

| IterListItem (PrevItemT *prev)
| IterListItem (const IterListItem &other)
IterListItem & | operator= (const IterListItem &other)
void | updateBackPointers (PrevItemT *prev)
void | setIter (const IterT &iter)
void | getNode (Index lvl, NodeT *&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 = _Level
| NodeT's level in its tree (0 = LeafNode).

## Detailed Description

template<typename PrevItemT, typename NodeVecT, Index _Level>
class openvdb::v10_0::tree::IterListItem< PrevItemT, NodeVecT, 1, _Level >

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

## Member Typedef Documentation

## _NodeT

template<typename PrevItemT, typename NodeVecT, Index _Level>

using _NodeT = typename NodeVecT::Front

## ChildT

template<typename PrevItemT, typename NodeVecT, Index _Level>

using ChildT = typename CopyConstness<NodeT, typename NodeT::ChildNodeType>::Type

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

## IterT

template<typename PrevItemT, typename NodeVecT, Index _Level>

using IterT

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

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

## ITraits

template<typename PrevItemT, typename NodeVecT, Index _Level>

using ITraits = IterTraits<NCNodeT, IterT>

## NCChildT

template<typename PrevItemT, typename NodeVecT, Index _Level>

using NCChildT = typename CopyConstness<NCNodeT, typename NCNodeT::ChildNodeType>::Type

NodeT's child node type with const qualifiers removed.

## NCNodeT

template<typename PrevItemT, typename NodeVecT, Index _Level>

using NCNodeT = typename IterT::NonConstNodeType

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

## NCValueT

template<typename PrevItemT, typename NodeVecT, Index _Level>

using NCValueT = typename IterT::NonConstValueType

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

## NodeT

template<typename PrevItemT, typename NodeVecT, Index _Level>

using NodeT = typename IterT::NodeType

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

## PrevIterT

template<typename PrevItemT, typename NodeVecT, Index _Level>

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, Index _Level>

IterListItem | ( | PrevItemT * | prev | ) |

inline

## IterListItem() [2/2]

template<typename PrevItemT, typename NodeVecT, Index _Level>

IterListItem | ( | const IterListItem< PrevItemT, NodeVecT, 1, _Level > & | other | ) |

inline

## Member Function Documentation

## down()

template<typename PrevItemT, typename NodeVecT, Index _Level>

bool down | ( | Index | lvl | ) |

inline

## getChildDim()

template<typename PrevItemT, typename NodeVecT, Index _Level>

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

inline

## getCoord()

template<typename PrevItemT, typename NodeVecT, Index _Level>

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

inline

## getNode()

template<typename PrevItemT, typename NodeVecT, Index _Level>

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

inline

## getValue()

template<typename PrevItemT, typename NodeVecT, Index _Level>

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

inline

## getVoxelCount()

template<typename PrevItemT, typename NodeVecT, Index _Level>

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

inline

## initLevel()

template<typename PrevItemT, typename NodeVecT, Index _Level>
template<typename OtherIterListItemT>

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

inline

## isValueOn()

template<typename PrevItemT, typename NodeVecT, Index _Level>

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

inline

## modifyValue()

template<typename PrevItemT, typename NodeVecT, Index _Level>
template<typename ModifyOp>

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

inline

## next()

template<typename PrevItemT, typename NodeVecT, Index _Level>

bool next | ( | Index | lvl | ) |

inline

## operator=()

template<typename PrevItemT, typename NodeVecT, Index _Level>

IterListItem & operator= | ( | const IterListItem< PrevItemT, NodeVecT, 1, _Level > & | other | ) |

inline

## pos()

template<typename PrevItemT, typename NodeVecT, Index _Level>

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

inline

## setIter()

template<typename PrevItemT, typename NodeVecT, Index _Level>

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

inline

## setValue()

template<typename PrevItemT, typename NodeVecT, Index _Level>

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

inline

## setValueOff()

template<typename PrevItemT, typename NodeVecT, Index _Level>

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

inline

## setValueOn()

template<typename PrevItemT, typename NodeVecT, Index _Level>

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

inline

## test()

template<typename PrevItemT, typename NodeVecT, Index _Level>

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

inline

## updateBackPointers()

template<typename PrevItemT, typename NodeVecT, Index _Level>

void updateBackPointers | ( | PrevItemT * | prev | ) |

inline

## Member Data Documentation

## Level

template<typename PrevItemT, typename NodeVecT, Index _Level>

const Index Level = _Level

static

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