HDK
|
Top-most node of the VDB tree structure. More...
#include <NanoVDB.h>
Classes | |
class | BaseIter |
class | ChildIter |
class | DenseIter |
class | ValueIter |
class | ValueOnIter |
Public Types | |
using | DataType = RootData< ChildT > |
using | ChildNodeType = ChildT |
using | RootType = RootNode< ChildT > |
using | RootNodeType = RootType |
using | UpperNodeType = ChildT |
using | LowerNodeType = typename UpperNodeType::ChildNodeType |
using | LeafNodeType = typename ChildT::LeafNodeType |
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 |
using | ChildIterator = ChildIter< RootNode > |
using | ConstChildIterator = ChildIter< const RootNode > |
using | ValueIterator = ValueIter< RootNode > |
using | ConstValueIterator = ValueIter< const RootNode > |
using | ValueOnIterator = ValueOnIter< RootNode > |
using | ConstValueOnIterator = ValueOnIter< const RootNode > |
using | DenseIterator = DenseIter< RootNode > |
using | ConstDenseIterator = DenseIter< const RootNode > |
Public Member Functions | |
__hostdev__ ChildIterator | beginChild () |
__hostdev__ ConstChildIterator | cbeginChild () const |
__hostdev__ ValueIterator | beginValue () |
__hostdev__ ConstValueIterator | cbeginValueAll () const |
__hostdev__ ValueOnIterator | beginValueOn () |
__hostdev__ ConstValueOnIterator | cbeginValueOn () const |
__hostdev__ DenseIterator | beginDense () |
__hostdev__ ConstDenseIterator | cbeginDense () const |
__hostdev__ ConstDenseIterator | cbeginChildAll () const |
RootNode ()=delete | |
This class cannot be constructed or deleted. More... | |
RootNode (const RootNode &)=delete | |
RootNode & | operator= (const RootNode &)=delete |
~RootNode ()=delete | |
__hostdev__ AccessorType | getAccessor () const |
__hostdev__ DataType * | data () |
__hostdev__ const DataType * | data () const |
__hostdev__ 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. More... | |
__hostdev__ const ValueType & | background () const |
Return the total number of active voxels in the root and all its child nodes. More... | |
__hostdev__ const uint32_t & | tileCount () const |
Return the number of tiles encoded in this root node. More... | |
__hostdev__ const uint32_t & | getTableSize () const |
__hostdev__ const ValueType & | minimum () const |
Return a const reference to the minimum active value encoded in this root node and any of its child nodes. More... | |
__hostdev__ const ValueType & | maximum () const |
Return a const reference to the maximum active value encoded in this root node and any of its child nodes. More... | |
__hostdev__ 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. More... | |
__hostdev__ FloatType | variance () const |
Return the variance of all the active values encoded in this root node and any of its child nodes. More... | |
__hostdev__ 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. More... | |
__hostdev__ uint64_t | memUsage () const |
Return the actual memory footprint of this root node. More... | |
__hostdev__ bool | isEmpty () const |
Return true if this RootNode is empty, i.e. contains no values or nodes. More... | |
__hostdev__ ValueType | getValue (const CoordType &ijk) const |
Return the value of the given voxel. More... | |
__hostdev__ ValueType | getValue (int i, int j, int k) const |
__hostdev__ bool | isActive (const CoordType &ijk) const |
__hostdev__ bool | probeValue (const CoordType &ijk, ValueType &v) const |
return the state and updates the value of the specified voxel More... | |
__hostdev__ const LeafNodeType * | probeLeaf (const CoordType &ijk) const |
__hostdev__ const ChildNodeType * | probeChild (const CoordType &ijk) const |
__hostdev__ ChildNodeType * | probeChild (const CoordType &ijk) |
template<typename OpT , typename... ArgsT> | |
__hostdev__ auto | get (const CoordType &ijk, ArgsT &&...args) const |
template<typename OpT , typename... ArgsT> | |
__hostdev__ auto | set (const CoordType &ijk, ArgsT &&...args) |
Static Public Member Functions | |
static __hostdev__ uint64_t | memUsage (uint32_t tableSize) |
Return the expected memory footprint in bytes with the specified number of tiles. More... | |
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 |
Top-most node of the VDB tree structure.
using nanovdb::RootNode< ChildT >::AccessorType = DefaultReadAccessor<BuildType> |
using nanovdb::RootNode< ChildT >::BBoxType = BBox<CoordType> |
using nanovdb::RootNode< ChildT >::BuildType = typename DataType::BuildT |
using nanovdb::RootNode< ChildT >::ChildIterator = ChildIter<RootNode> |
using nanovdb::RootNode< ChildT >::ChildNodeType = ChildT |
using nanovdb::RootNode< ChildT >::ConstChildIterator = ChildIter<const RootNode> |
using nanovdb::RootNode< ChildT >::ConstDenseIterator = DenseIter<const RootNode> |
using nanovdb::RootNode< ChildT >::ConstValueIterator = ValueIter<const RootNode> |
using nanovdb::RootNode< ChildT >::ConstValueOnIterator = ValueOnIter<const RootNode> |
using nanovdb::RootNode< ChildT >::CoordType = typename ChildT::CoordType |
using nanovdb::RootNode< ChildT >::DataType = RootData<ChildT> |
using nanovdb::RootNode< ChildT >::DenseIterator = DenseIter<RootNode> |
using nanovdb::RootNode< ChildT >::FloatType = typename DataType::StatsT |
using nanovdb::RootNode< ChildT >::LeafNodeType = typename ChildT::LeafNodeType |
using nanovdb::RootNode< ChildT >::LowerNodeType = typename UpperNodeType::ChildNodeType |
using nanovdb::RootNode< ChildT >::RootNodeType = RootType |
using nanovdb::RootNode< ChildT >::RootType = RootNode<ChildT> |
using nanovdb::RootNode< ChildT >::Tile = typename DataType::Tile |
using nanovdb::RootNode< ChildT >::UpperNodeType = ChildT |
using nanovdb::RootNode< ChildT >::ValueIterator = ValueIter<RootNode> |
using nanovdb::RootNode< ChildT >::ValueOnIterator = ValueOnIter<RootNode> |
using nanovdb::RootNode< ChildT >::ValueType = typename DataType::ValueT |
|
delete |
This class cannot be constructed or deleted.
|
delete |
|
delete |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinestatic |
|
inline |
|
inline |
|
delete |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
static |
|
static |