OpenVDB 11.0.0

Loading...
Searching...
No Matches
Tree< BuildT > Struct Template Reference

`#include <nanovdb/util/GridBuilder.h>`

Inheritance diagram for Tree< 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
Tree & | tree ()
RootNodeType & | root ()
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