OpenVDB 11.0.0
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Public Attributes | List of all members
Tree< BuildT > Struct Template Reference

#include <nanovdb/util/GridBuilder.h>

Inheritance diagram for Tree< BuildT >:
Grid< BuildT >

Classes

struct  WriteAccessor
 

Public Types

using ValueType = typename BuildToValueMap<BuildT>::type
 
using Node0 = build::LeafNode<BuildT>
 
using Node1 = build::InternalNode<Node0>
 
using Node2 = build::InternalNode<Node1>
 
using RootNodeType = build::RootNode<Node2>
 
using LeafNodeType = typename RootNodeType::LeafNodeType
 

Public Member Functions

 Tree (const ValueType &background)
 
 Tree (const Tree &)=delete
 
 Tree (Tree &&)=delete
 
Treetree ()
 
RootNodeTyperoot ()
 
ValueType getValue (const Coord &ijk) const
 
ValueType getValue (int i, int j, int k) const
 
void setValue (const Coord &ijk, const ValueType &value)
 
std::array< size_t, 3 > nodeCount () const
 
ValueAccessor< BuildT > getAccessor ()
 regular accessor for thread-safe reading and non-thread-safe writing
 
WriteAccessor getWriteAccessor ()
 special accessor for thread-safe writing only
 

Public Attributes

RootNodeType mRoot
 
std::mutex mMutex
 

Member Typedef Documentation

◆ LeafNodeType

template<typename BuildT >
using LeafNodeType = typename RootNodeType::LeafNodeType

◆ Node0

template<typename BuildT >
using Node0 = build::LeafNode<BuildT>

◆ Node1

template<typename BuildT >
using Node1 = build::InternalNode<Node0>

◆ Node2

template<typename BuildT >
using Node2 = build::InternalNode<Node1>

◆ RootNodeType

template<typename BuildT >
using RootNodeType = build::RootNode<Node2>

◆ ValueType

template<typename BuildT >
using ValueType = typename BuildToValueMap<BuildT>::type

Constructor & Destructor Documentation

◆ Tree() [1/3]

template<typename BuildT >
Tree ( const ValueType & background)
inline

◆ Tree() [2/3]

template<typename BuildT >
Tree ( const Tree< BuildT > & )
delete

◆ Tree() [3/3]

template<typename BuildT >
Tree ( Tree< BuildT > && )
delete

Member Function Documentation

◆ getAccessor()

template<typename BuildT >
ValueAccessor< BuildT > getAccessor ( )
inline

regular accessor for thread-safe reading and non-thread-safe writing

◆ getValue() [1/2]

template<typename BuildT >
ValueType getValue ( const Coord & ijk) const
inline

◆ getValue() [2/2]

template<typename BuildT >
ValueType getValue ( int i,
int j,
int k ) const
inline

◆ getWriteAccessor()

template<typename BuildT >
WriteAccessor getWriteAccessor ( )
inline

special accessor for thread-safe writing only

◆ nodeCount()

template<typename BuildT >
std::array< size_t, 3 > nodeCount ( ) const
inline

◆ root()

template<typename BuildT >
RootNodeType & root ( )
inline

◆ setValue()

template<typename BuildT >
void setValue ( const Coord & ijk,
const ValueType & value )
inline

◆ tree()

template<typename BuildT >
Tree & tree ( )
inline

Member Data Documentation

◆ mMutex

template<typename BuildT >
std::mutex mMutex

◆ mRoot

template<typename BuildT >
RootNodeType mRoot