Loading...
Searching...
No Matches
RootNode< ChildT > Class Template Reference

Top-most node of the VDB tree structure. More...

`#include <nanovdb/NanoVDB.h>`

Inheritance diagram for RootNode< ChildT >:

## Classes

class | ChildIterator
class | ValueIterator
class | ValueOnIterator

## Public Types

using | DataType = RootData<ChildT>
using | LeafNodeType = typename ChildT::LeafNodeType
using | ChildNodeType = ChildT
using | RootType = RootNode<ChildT>
using | ValueType = typename DataType::ValueT
using | FloatType = typename DataType::StatsT
using | BuildType = typename DataType::BuildT
using | CoordType = typename ChildT::CoordType
using | BBoxType = BBox<CoordType>
using | AccessorType = DefaultReadAccessor<BuildType>
using | Tile = typename DataType::Tile

## Public Member Functions

ChildIterator | beginChild () const
ValueIterator | beginValue () const
ValueOnIterator | beginValueOn () const
| RootNode ()=delete
| This class cannot be constructed or deleted.
| RootNode (const RootNode &)=delete
RootNode & | operator= (const RootNode &)=delete
| ~RootNode ()=delete
AccessorType | getAccessor () const
DataType * | data ()
const DataType * | data () const
const BBoxType & | bbox () const
| Return a const reference to the index bounding box of all the active values in this tree, i.e. in all nodes of the tree.
const ValueType & | background () const
| Return the total number of active voxels in the root and all its child nodes.
const uint32_t & | tileCount () const
| Return the number of tiles encoded in this root node.
const ValueType & | minimum () const
| Return a const reference to the minimum active value encoded in this root node and any of its child nodes.
const ValueType & | maximum () const
| Return a const reference to the maximum active value encoded in this root node and any of its child nodes.
const FloatType & | average () const
| Return a const reference to the average of all the active values encoded in this root node and any of its child nodes.
FloatType | variance () const
| Return the variance of all the active values encoded in this root node and any of its child nodes.
const FloatType & | stdDeviation () const
| Return a const reference to the standard deviation of all the active values encoded in this root node and any of its child nodes.
uint64_t | memUsage () const
| Return the actual memory footprint of this root node.
ValueType | getValue (const CoordType &ijk) const
| Return the value of the given voxel.
bool | isActive (const CoordType &ijk) const
bool | isEmpty () const
| Return true if this RootNode is empty, i.e. contains no values or nodes.
bool | probeValue (const CoordType &ijk, ValueType &v) const
const LeafNodeType * | probeLeaf (const CoordType &ijk) const
const ChildNodeType * | probeChild (const CoordType &ijk) const
const Tile * | probeTile (const CoordType &ijk) const
| Find and return a Tile of this root node.

## Static Public Member Functions

static uint64_t | memUsage (uint32_t tableSize)
| Return the expected memory footprint in bytes with the specified number of tiles.

## Static Public Attributes

static constexpr bool | FIXED_SIZE = DataType::FIXED_SIZE
static constexpr uint32_t | LEVEL = 1 + ChildT::LEVEL

## Friends

template<typename, int, int, int>
class | ReadAccessor
template<typename>
class | Tree

## Detailed Description

template<typename ChildT>
class nanovdb::RootNode< ChildT >

Top-most node of the VDB tree structure.

## Member Typedef Documentation

## AccessorType

template<typename ChildT>

using AccessorType = DefaultReadAccessor<BuildType>

## BBoxType

template<typename ChildT>

using BBoxType = BBox<CoordType>

## BuildType

template<typename ChildT>

using BuildType = typename DataType::BuildT

## ChildNodeType

template<typename ChildT>

using ChildNodeType = ChildT

## CoordType

template<typename ChildT>

using CoordType = typename ChildT::CoordType

## DataType

template<typename ChildT>

using DataType = RootData<ChildT>

## FloatType

template<typename ChildT>

using FloatType = typename DataType::StatsT

## LeafNodeType

template<typename ChildT>

using LeafNodeType = typename ChildT::LeafNodeType

## RootType

template<typename ChildT>

using RootType = RootNode<ChildT>

## Tile

template<typename ChildT>

using Tile = typename DataType::Tile

## ValueType

template<typename ChildT>

using ValueType = typename DataType::ValueT

## Constructor & Destructor Documentation

## RootNode() [1/2]

template<typename ChildT>

RootNode | ( |  | ) |

delete

This class cannot be constructed or deleted.

## RootNode() [2/2]

template<typename ChildT>

RootNode | ( | const RootNode< ChildT > & |  | ) |

delete

## ~RootNode()

template<typename ChildT>

~RootNode | ( |  | ) |

delete

## Member Function Documentation

## average()

template<typename ChildT>

const FloatType & average | ( |  | ) | const

inline

Return a const reference to the average of all the active values encoded in this root node and any of its child nodes.

## background()

template<typename ChildT>

const ValueType & background | ( |  | ) | const

inline

Return the total number of active voxels in the root and all its child nodes.

Return a const reference to the background value, i.e. the value associated with any coordinate location that has not been set explicitly.

## bbox()

template<typename ChildT>

const BBoxType & bbox | ( |  | ) | const

inline

Return a const reference to the index bounding box of all the active values in this tree, i.e. in all nodes of the tree.

## beginChild()

template<typename ChildT>

ChildIterator beginChild | ( |  | ) | const

inline

## beginValue()

template<typename ChildT>

ValueIterator beginValue | ( |  | ) | const

inline

## beginValueOn()

template<typename ChildT>

ValueOnIterator beginValueOn | ( |  | ) | const

inline

## data() [1/2]

template<typename ChildT>

DataType * data | ( |  | ) |

inline

## data() [2/2]

template<typename ChildT>

const DataType * data | ( |  | ) | const

inline

## getAccessor()

template<typename ChildT>

AccessorType getAccessor | ( |  | ) | const

inline

## getValue()

template<typename ChildT>

ValueType getValue | ( | const CoordType & | ijk | ) | const

inline

Return the value of the given voxel.

## isActive()

template<typename ChildT>

bool isActive | ( | const CoordType & | ijk | ) | const

inline

## isEmpty()

template<typename ChildT>

bool isEmpty | ( |  | ) | const

inline

Return true if this RootNode is empty, i.e. contains no values or nodes.

## maximum()

template<typename ChildT>

const ValueType & maximum | ( |  | ) | const

inline

Return a const reference to the maximum active value encoded in this root node and any of its child nodes.

## memUsage() [1/2]

template<typename ChildT>

uint64_t memUsage | ( |  | ) | const

inline

Return the actual memory footprint of this root node.

## memUsage() [2/2]

template<typename ChildT>

uint64_t memUsage | ( | uint32_t | tableSize | ) |

inline static

Return the expected memory footprint in bytes with the specified number of tiles.

## minimum()

template<typename ChildT>

const ValueType & minimum | ( |  | ) | const

inline

Return a const reference to the minimum active value encoded in this root node and any of its child nodes.

## operator=()

template<typename ChildT>

RootNode & operator= | ( | const RootNode< ChildT > & |  | ) |

delete

## probeChild()

template<typename ChildT>

const ChildNodeType * probeChild | ( | const CoordType & | ijk | ) | const

inline

## probeLeaf()

template<typename ChildT>

const LeafNodeType * probeLeaf | ( | const CoordType & | ijk | ) | const

inline

## probeTile()

template<typename ChildT>

const Tile * probeTile | ( | const CoordType & | ijk | ) | const

inline

Find and return a Tile of this root node.

## probeValue()

template<typename ChildT>

bool probeValue | ( | const CoordType & | ijk,
|  | ValueType & | v ) const

inline

## stdDeviation()

template<typename ChildT>

const FloatType & stdDeviation | ( |  | ) | const

inline

Return a const reference to the standard deviation of all the active values encoded in this root node and any of its child nodes.

## tileCount()

template<typename ChildT>

const uint32_t & tileCount | ( |  | ) | const

inline

Return the number of tiles encoded in this root node.

## variance()

template<typename ChildT>

FloatType variance | ( |  | ) | const

inline

Return the variance of all the active values encoded in this root node and any of its child nodes.

## Friends And Related Symbol Documentation

## ReadAccessor

template<typename ChildT>
template<typename, int, int, int>

friend class ReadAccessor

friend

## Tree

template<typename ChildT>
template<typename>

friend class Tree

friend

## Member Data Documentation

## FIXED_SIZE

template<typename ChildT>

bool FIXED_SIZE = DataType::FIXED_SIZE

static constexpr

## LEVEL

template<typename ChildT>

uint32_t LEVEL = 1 + ChildT::LEVEL

static constexpr