OpenVDB  1.2.0
Public Types | Public Member Functions | Static Public Attributes | List of all members
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 <TreeIterator.h>

Public Types

typedef boost::mpl::front
< NodeVecT >::type 
_NodeT
 
typedef PrevItemT::IterT PrevIterT
 The type of iterator stored in the previous list item. More...
 
typedef IterTraits< typename
PrevIterT::NonConstNodeType,
PrevIterT >::template
NodeConverter< _NodeT >::Type 
IterT
 The type of iterator stored in this list item (e.g., RootNode::ValueOnCIter) More...
 
typedef IterT::NodeType NodeT
 The type of node over which IterT iterates (e.g., const RootNode<...>) More...
 
typedef IterT::NonConstNodeType NCNodeT
 The type of the node with const qualifiers removed ("Non-Const") More...
 
typedef IterT::NonConstValueType NCValueT
 The type of value (with const qualifiers removed) to which the iterator points. More...
 
typedef CopyConstness< NodeT,
typename NodeT::ChildNodeType >
::Type 
ChildT
 NodeT's child node type, with the same constness (e.g., const InternalNode<...>) More...
 
typedef CopyConstness< NCNodeT,
typename
NCNodeT::ChildNodeType >::Type 
NCChildT
 NodeT's child node type with const qualifiers removed. More...
 
typedef IterTraits< NCNodeT,
IterT
ITraits
 

Public Member Functions

 IterListItem (PrevItemT *prev)
 
 IterListItem (const IterListItem &other)
 
IterListItemoperator= (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 NCValueTgetValue (Index lvl) const
 
void setValue (Index lvl, const NCValueT &val) const
 
void setValueOn (Index lvl, bool on=true) const
 
void setValueOff (Index lvl) const
 

Static Public Attributes

static const Index Level = _Level
 NodeT's level in its tree (0 = LeafNode) More...
 

Detailed Description

template<typename PrevItemT, typename NodeVecT, Index _Level>
class openvdb::v1_2_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

typedef boost::mpl::front<NodeVecT>::type _NodeT
typedef CopyConstness<NodeT, typename NodeT::ChildNodeType>::Type ChildT

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

typedef IterTraits<typename PrevIterT::NonConstNodeType, PrevIterT>::template NodeConverter<_NodeT>::Type IterT

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

typedef CopyConstness<NCNodeT, typename NCNodeT::ChildNodeType>::Type NCChildT

NodeT's child node type with const qualifiers removed.

typedef IterT::NonConstNodeType NCNodeT

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

typedef IterT::NonConstValueType NCValueT

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

typedef IterT::NodeType NodeT

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

typedef PrevItemT::IterT PrevIterT

The type of iterator stored in the previous list item.

Constructor & Destructor Documentation

IterListItem ( PrevItemT *  prev)
inline
IterListItem ( const IterListItem< PrevItemT, NodeVecT, 1, _Level > &  other)
inline

Member Function Documentation

bool down ( Index  lvl)
inline
Index getChildDim ( Index  lvl) const
inline
Coord getCoord ( Index  lvl) const
inline
void getNode ( Index  lvl,
NodeT *&  node 
) const
inline
const NCValueT& getValue ( Index  lvl) const
inline
Index64 getVoxelCount ( Index  lvl) const
inline
void initLevel ( Index  lvl,
OtherIterListItemT &  otherListItem 
)
inline
bool isValueOn ( Index  lvl) const
inline
bool next ( Index  lvl)
inline
IterListItem& operator= ( const IterListItem< PrevItemT, NodeVecT, 1, _Level > &  other)
inline
Index pos ( Index  lvl) const
inline
void setIter ( const IterT iter)
inline
void setValue ( Index  lvl,
const NCValueT val 
) const
inline
void setValueOff ( Index  lvl) const
inline
void setValueOn ( Index  lvl,
bool  on = true 
) const
inline
bool test ( Index  lvl) const
inline
void updateBackPointers ( PrevItemT *  prev)
inline

Member Data Documentation

const Index Level = _Level
static

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


The documentation for this class was generated from the following file: