OpenVDB  9.0.1
Public Types | Public Member Functions | List of all members
CacheItem< TreeCacheT, NodeVecT, true > Class Template Reference

The tail of a compile-time list of cached node pointers, ordered from LeafNode to RootNode. More...

#include <openvdb/tree/ValueAccessor.h>

Public Types

using RootNodeType = typename NodeVecT::Front
 
using ValueType = typename RootNodeType::ValueType
 
using LeafNodeType = typename RootNodeType::LeafNodeType
 

Public Member Functions

 CacheItem (TreeCacheT &parent)
 
 CacheItem (TreeCacheT &parent, const CacheItem &other)
 
CacheItemcopy (TreeCacheT &parent, const CacheItem &other)
 
bool isCached (const Coord &xyz) const
 
void insert (const Coord &, const RootNodeType *root)
 
template<typename OtherNodeType >
void insert (const Coord &, const OtherNodeType *)
 
void erase (const RootNodeType *)
 
void clear ()
 
void getNode (RootNodeType *&node)
 
void getNode (const RootNodeType *&node) const
 
void addLeaf (LeafNodeType *leaf)
 
void addTile (Index level, const Coord &xyz, const ValueType &value, bool state)
 
LeafNodeTypetouchLeaf (const Coord &xyz)
 
LeafNodeTypeprobeLeaf (const Coord &xyz)
 
const LeafNodeTypeprobeConstLeaf (const Coord &xyz)
 
template<typename NodeType >
NodeType * probeNode (const Coord &xyz)
 
template<typename NodeType >
const NodeType * probeConstNode (const Coord &xyz)
 
int getValueDepth (const Coord &xyz)
 
bool isValueOn (const Coord &xyz)
 
bool probeValue (const Coord &xyz, ValueType &value)
 
bool isVoxel (const Coord &xyz)
 
const ValueTypegetValue (const Coord &xyz)
 
void setValue (const Coord &xyz, const ValueType &value)
 
void setValueOnly (const Coord &xyz, const ValueType &value)
 
void setValueOn (const Coord &xyz, const ValueType &value)
 
template<typename ModifyOp >
void modifyValue (const Coord &xyz, const ModifyOp &op)
 
template<typename ModifyOp >
void modifyValueAndActiveState (const Coord &xyz, const ModifyOp &op)
 
void setValueOff (const Coord &xyz, const ValueType &value)
 
void setActiveState (const Coord &xyz, bool on)
 

Detailed Description

template<typename TreeCacheT, typename NodeVecT>
class openvdb::v9_0::tree::CacheItem< TreeCacheT, NodeVecT, true >

The tail of a compile-time list of cached node pointers, ordered from LeafNode to RootNode.

Member Typedef Documentation

using LeafNodeType = typename RootNodeType::LeafNodeType
using RootNodeType = typename NodeVecT::Front
using ValueType = typename RootNodeType::ValueType

Constructor & Destructor Documentation

CacheItem ( TreeCacheT &  parent)
inline
CacheItem ( TreeCacheT &  parent,
const CacheItem< TreeCacheT, NodeVecT, true > &  other 
)
inline

Member Function Documentation

void addLeaf ( LeafNodeType leaf)
inline
void addTile ( Index  level,
const Coord &  xyz,
const ValueType value,
bool  state 
)
inline
void clear ( )
inline
CacheItem& copy ( TreeCacheT &  parent,
const CacheItem< TreeCacheT, NodeVecT, true > &  other 
)
inline
void erase ( const RootNodeType )
inline
void getNode ( RootNodeType *&  node)
inline
void getNode ( const RootNodeType *&  node) const
inline
const ValueType& getValue ( const Coord &  xyz)
inline
int getValueDepth ( const Coord &  xyz)
inline
void insert ( const Coord &  ,
const RootNodeType root 
)
inline
void insert ( const Coord &  ,
const OtherNodeType *   
)
inline
bool isCached ( const Coord &  xyz) const
inline
bool isValueOn ( const Coord &  xyz)
inline
bool isVoxel ( const Coord &  xyz)
inline
void modifyValue ( const Coord &  xyz,
const ModifyOp &  op 
)
inline
void modifyValueAndActiveState ( const Coord &  xyz,
const ModifyOp &  op 
)
inline
const LeafNodeType* probeConstLeaf ( const Coord &  xyz)
inline
const NodeType* probeConstNode ( const Coord &  xyz)
inline
LeafNodeType* probeLeaf ( const Coord &  xyz)
inline
NodeType* probeNode ( const Coord &  xyz)
inline
bool probeValue ( const Coord &  xyz,
ValueType value 
)
inline
void setActiveState ( const Coord &  xyz,
bool  on 
)
inline
void setValue ( const Coord &  xyz,
const ValueType value 
)
inline
void setValueOff ( const Coord &  xyz,
const ValueType value 
)
inline
void setValueOn ( const Coord &  xyz,
const ValueType value 
)
inline
void setValueOnly ( const Coord &  xyz,
const ValueType value 
)
inline
LeafNodeType* touchLeaf ( const Coord &  xyz)
inline