OpenVDB 11.0.0
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Friends | List of all members
LeafNode< BuildT, CoordT, MaskT, Log2Dim > Class Template Reference

Leaf nodes of the VDB tree. (defaults to 8x8x8 = 512 voxels) More...

#include <nanovdb/NanoVDB.h>

Inheritance diagram for LeafNode< BuildT, CoordT, MaskT, Log2Dim >:
LeafData< ValueT, CoordT, MaskT, LOG2DIM >

Classes

struct  ChildNodeType
 
class  ValueIterator
 Visits all values in a leaf node, i.e. both active and inactive values. More...
 
class  ValueOffIterator
 Visits all inactive values in a leaf node. More...
 
class  ValueOnIterator
 Visits all active values in a leaf node. More...
 

Public Types

using LeafNodeType = LeafNode<BuildT, CoordT, MaskT, Log2Dim>
 
using DataType = LeafData<BuildT, CoordT, MaskT, Log2Dim>
 
using ValueType = typename DataType::ValueType
 
using FloatType = typename DataType::FloatType
 
using BuildType = typename DataType::BuildType
 
using CoordType = CoordT
 
template<uint32_t LOG2>
using MaskType = MaskT<LOG2>
 
template<bool ON>
using MaskIterT = typename Mask<Log2Dim>::template Iterator<ON>
 
using ArrayType = ValueT
 

Public Member Functions

ValueOnIterator beginValueOn () const
 
ValueOnIterator cbeginValueOn () const
 
ValueOffIterator beginValueOff () const
 
ValueOffIterator cbeginValueOff () const
 
ValueIterator beginValue () const
 
ValueIterator cbeginValueAll () const
 
DataTypedata ()
 
const DataTypedata () const
 
const MaskType< LOG2DIM > & valueMask () const
 Return a const reference to the bit mask of active voxels in this leaf node.
 
const MaskType< LOG2DIM > & getValueMask () const
 
ValueType minimum () const
 Return a const reference to the minimum active value encoded in this leaf node.
 
ValueType maximum () const
 Return a const reference to the maximum active value encoded in this leaf node.
 
FloatType average () const
 Return a const reference to the average of all the active values encoded in this leaf node.
 
FloatType variance () const
 Return the variance of all the active values encoded in this leaf node.
 
FloatType stdDeviation () const
 Return a const reference to the standard deviation of all the active values encoded in this leaf node.
 
uint8_t flags () const
 
CoordT origin () const
 Return the origin in index space of this leaf node.
 
void localToGlobalCoord (Coord &ijk) const
 Converts (in place) a local index coordinate to a global index coordinate.
 
CoordT offsetToGlobalCoord (uint32_t n) const
 
BBox< CoordT > bbox () const
 Return the bounding box in index space of active values in this leaf node.
 
uint64_t memUsage () const
 return memory usage in bytes for the leaf node
 
 LeafNode ()=delete
 This class cannot be constructed or deleted.
 
 LeafNode (const LeafNode &)=delete
 
LeafNodeoperator= (const LeafNode &)=delete
 
 ~LeafNode ()=delete
 
ValueType getValue (uint32_t offset) const
 Return the voxel value at the given offset.
 
ValueType getValue (const CoordT &ijk) const
 Return the voxel value at the given coordinate.
 
ValueType getFirstValue () const
 Return the first value in this leaf node.
 
ValueType getLastValue () const
 Return the last value in this leaf node.
 
void setValue (const CoordT &ijk, const ValueType &v)
 Sets the value at the specified location and activate its state.
 
void setValueOnly (uint32_t offset, const ValueType &v)
 Sets the value at the specified location but leaves its state unchanged.
 
void setValueOnly (const CoordT &ijk, const ValueType &v)
 
bool isActive (const CoordT &ijk) const
 Return true if the voxel value at the given coordinate is active.
 
bool isActive (uint32_t n) const
 
bool isActive () const
 Return true if any of the voxel value are active in this leaf node.
 
bool hasBBox () const
 
bool probeValue (const CoordT &ijk, ValueType &v) const
 Return true if the voxel value at the given coordinate is active and updates v with the value.
 
const LeafNodeprobeLeaf (const CoordT &) const
 
bool updateBBox ()
 Updates the local bounding box of active voxels in this node. Return true if bbox was updated.
 
template<typename OpT , typename... ArgsT>
auto get (const CoordType &ijk, ArgsT &&... args) const
 
template<typename OpT , typename... ArgsT>
auto get (const uint32_t n, ArgsT &&... args) const
 
template<typename OpT , typename... ArgsT>
auto set (const CoordType &ijk, ArgsT &&... args)
 
template<typename OpT , typename... ArgsT>
auto set (const uint32_t n, ArgsT &&... args)
 
void setValue (uint32_t offset, const ValueType &value)
 
void setOn (uint32_t offset)
 
ValueType getMin () const
 
ValueType getMax () const
 
FloatType getAvg () const
 
FloatType getDev () const
 
void setMin (const ValueType &v)
 
void setMax (const ValueType &v)
 
void setAvg (const FloatType &v)
 
void setDev (const FloatType &v)
 
template<typename T >
void setOrigin (const T &ijk)
 
void fill (const ValueType &v)
 

Static Public Member Functions

static CoordT OffsetToLocalCoord (uint32_t n)
 Compute the local coordinates from a linear offset.
 
static uint32_t dim ()
 Return the dimension, in index space, of this leaf node (typically 8 as for openvdb leaf nodes!)
 
static uint32_t voxelCount ()
 Return the total number of voxels (e.g. values) encoded in this leaf node.
 
static uint32_t padding ()
 
static uint32_t CoordToOffset (const CoordT &ijk)
 Return the linear offset corresponding to the given coordinate.
 
static uint64_t memUsage ()
 
static bool hasStats ()
 

Public Attributes

CoordT mBBoxMin
 
uint8_t mBBoxDif [3]
 
uint8_t mFlags
 
MaskT< LOG2DIMmValueMask
 
ValueType mMinimum
 
ValueType mMaximum
 
FloatType mAverage
 
FloatType mStdDevi
 
ValueType mValues [1u<< 3 *LOG2DIM]
 

Static Public Attributes

static constexpr bool FIXED_SIZE = DataType::FIXED_SIZE
 
static constexpr uint32_t LOG2DIM = Log2Dim
 
static constexpr uint32_t TOTAL = LOG2DIM
 
static constexpr uint32_t DIM = 1u << TOTAL
 
static constexpr uint32_t SIZE = 1u << 3 * LOG2DIM
 
static constexpr uint32_t MASK = (1u << LOG2DIM) - 1u
 
static constexpr uint32_t LEVEL = 0
 
static constexpr uint64_t NUM_VALUES = uint64_t(1) << (3 * TOTAL)
 

Friends

template<typename , int , int , int >
class ReadAccessor
 
template<typename >
class RootNode
 
template<typename , uint32_t >
class InternalNode
 

Detailed Description

template<typename BuildT, typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
class nanovdb::LeafNode< BuildT, CoordT, MaskT, Log2Dim >

Leaf nodes of the VDB tree. (defaults to 8x8x8 = 512 voxels)

Member Typedef Documentation

◆ ArrayType

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
using ArrayType = ValueT
inherited

◆ BuildType

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
using BuildType = typename DataType::BuildType

◆ CoordType

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
using CoordType = CoordT

◆ DataType

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
using DataType = LeafData<BuildT, CoordT, MaskT, Log2Dim>

◆ FloatType

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
using FloatType = typename DataType::FloatType

◆ LeafNodeType

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
using LeafNodeType = LeafNode<BuildT, CoordT, MaskT, Log2Dim>

◆ MaskIterT

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
template<bool ON>
using MaskIterT = typename Mask<Log2Dim>::template Iterator<ON>

◆ MaskType

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
template<uint32_t LOG2>
using MaskType = MaskT<LOG2>

◆ ValueType

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
using ValueType = typename DataType::ValueType

Constructor & Destructor Documentation

◆ LeafNode() [1/2]

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
LeafNode ( )
delete

This class cannot be constructed or deleted.

◆ LeafNode() [2/2]

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
LeafNode ( const LeafNode< BuildT, CoordT, MaskT, Log2Dim > & )
delete

◆ ~LeafNode()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
~LeafNode ( )
delete

Member Function Documentation

◆ average()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
FloatType average ( ) const
inline

Return a const reference to the average of all the active values encoded in this leaf node.

◆ bbox()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
BBox< CoordT > bbox ( ) const
inline

Return the bounding box in index space of active values in this leaf node.

◆ beginValue()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
ValueIterator beginValue ( ) const
inline

◆ beginValueOff()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
ValueOffIterator beginValueOff ( ) const
inline

◆ beginValueOn()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
ValueOnIterator beginValueOn ( ) const
inline

◆ cbeginValueAll()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
ValueIterator cbeginValueAll ( ) const
inline

◆ cbeginValueOff()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
ValueOffIterator cbeginValueOff ( ) const
inline

◆ cbeginValueOn()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
ValueOnIterator cbeginValueOn ( ) const
inline

◆ CoordToOffset()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
static uint32_t CoordToOffset ( const CoordT & ijk)
inlinestatic

Return the linear offset corresponding to the given coordinate.

◆ data() [1/2]

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
DataType * data ( )
inline

◆ data() [2/2]

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
const DataType * data ( ) const
inline

◆ dim()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
static uint32_t dim ( )
inlinestatic

Return the dimension, in index space, of this leaf node (typically 8 as for openvdb leaf nodes!)

◆ fill()

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
void fill ( const ValueType & v)
inlineinherited

◆ flags()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
uint8_t flags ( ) const
inline

◆ get() [1/2]

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
template<typename OpT , typename... ArgsT>
auto get ( const CoordType & ijk,
ArgsT &&... args ) const
inline

◆ get() [2/2]

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
template<typename OpT , typename... ArgsT>
auto get ( const uint32_t n,
ArgsT &&... args ) const
inline

◆ getAvg()

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
FloatType getAvg ( ) const
inlineinherited

◆ getDev()

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
FloatType getDev ( ) const
inlineinherited

◆ getFirstValue()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
ValueType getFirstValue ( ) const
inline

Return the first value in this leaf node.

◆ getLastValue()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
ValueType getLastValue ( ) const
inline

Return the last value in this leaf node.

◆ getMax()

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
ValueType getMax ( ) const
inlineinherited

◆ getMin()

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
ValueType getMin ( ) const
inlineinherited

◆ getValue() [1/2]

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
ValueType getValue ( const CoordT & ijk) const
inline

Return the voxel value at the given coordinate.

◆ getValue() [2/2]

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
ValueType getValue ( uint32_t offset) const
inline

Return the voxel value at the given offset.

◆ getValueMask()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
const MaskType< LOG2DIM > & getValueMask ( ) const
inline

◆ hasBBox()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
bool hasBBox ( ) const
inline

◆ hasStats()

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
static bool hasStats ( )
inlinestaticinherited

◆ isActive() [1/3]

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
bool isActive ( ) const
inline

Return true if any of the voxel value are active in this leaf node.

◆ isActive() [2/3]

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
bool isActive ( const CoordT & ijk) const
inline

Return true if the voxel value at the given coordinate is active.

◆ isActive() [3/3]

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
bool isActive ( uint32_t n) const
inline

◆ localToGlobalCoord()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
void localToGlobalCoord ( Coord & ijk) const
inline

Converts (in place) a local index coordinate to a global index coordinate.

◆ maximum()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
ValueType maximum ( ) const
inline

Return a const reference to the maximum active value encoded in this leaf node.

◆ memUsage() [1/2]

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
static uint64_t memUsage ( )
inlinestaticinherited

◆ memUsage() [2/2]

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
uint64_t memUsage ( ) const
inline

return memory usage in bytes for the leaf node

◆ minimum()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
ValueType minimum ( ) const
inline

Return a const reference to the minimum active value encoded in this leaf node.

◆ offsetToGlobalCoord()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
CoordT offsetToGlobalCoord ( uint32_t n) const
inline

◆ OffsetToLocalCoord()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
static CoordT OffsetToLocalCoord ( uint32_t n)
inlinestatic

Compute the local coordinates from a linear offset.

Parameters
nLinear offset into this nodes dense table
Returns
Local (vs global) 3D coordinates

◆ operator=()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
LeafNode & operator= ( const LeafNode< BuildT, CoordT, MaskT, Log2Dim > & )
delete

◆ origin()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
CoordT origin ( ) const
inline

Return the origin in index space of this leaf node.

◆ padding()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
static uint32_t padding ( )
inlinestatic

◆ probeLeaf()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
const LeafNode * probeLeaf ( const CoordT & ) const
inline

◆ probeValue()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
bool probeValue ( const CoordT & ijk,
ValueType & v ) const
inline

Return true if the voxel value at the given coordinate is active and updates v with the value.

◆ set() [1/2]

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
template<typename OpT , typename... ArgsT>
auto set ( const CoordType & ijk,
ArgsT &&... args )
inline

◆ set() [2/2]

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
template<typename OpT , typename... ArgsT>
auto set ( const uint32_t n,
ArgsT &&... args )
inline

◆ setAvg()

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
void setAvg ( const FloatType & v)
inlineinherited

◆ setDev()

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
void setDev ( const FloatType & v)
inlineinherited

◆ setMax()

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
void setMax ( const ValueType & v)
inlineinherited

◆ setMin()

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
void setMin ( const ValueType & v)
inlineinherited

◆ setOn()

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
void setOn ( uint32_t offset)
inlineinherited

◆ setOrigin()

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
template<typename T >
void setOrigin ( const T & ijk)
inlineinherited

◆ setValue() [1/2]

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
void setValue ( const CoordT & ijk,
const ValueType & v )
inline

Sets the value at the specified location and activate its state.

Note
This is safe since it does not change the topology of the tree (unlike setValue methods on the other nodes)

◆ setValue() [2/2]

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
void setValue ( uint32_t offset,
const ValueType & value )
inlineinherited

◆ setValueOnly() [1/2]

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
void setValueOnly ( const CoordT & ijk,
const ValueType & v )
inline

◆ setValueOnly() [2/2]

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
void setValueOnly ( uint32_t offset,
const ValueType & v )
inline

Sets the value at the specified location but leaves its state unchanged.

Note
This is safe since it does not change the topology of the tree (unlike setValue methods on the other nodes)

◆ stdDeviation()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
FloatType stdDeviation ( ) const
inline

Return a const reference to the standard deviation of all the active values encoded in this leaf node.

◆ updateBBox()

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
bool updateBBox ( )
inline

Updates the local bounding box of active voxels in this node. Return true if bbox was updated.

Warning
It assumes that the origin and value mask have already been set.

This method is based on few (intrinsic) bit operations and hence is relatively fast. However, it should only only be called if either the value mask has changed or if the active bounding box is still undefined. e.g. during construction of this node.

◆ valueMask()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
const MaskType< LOG2DIM > & valueMask ( ) const
inline

Return a const reference to the bit mask of active voxels in this leaf node.

◆ variance()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
FloatType variance ( ) const
inline

Return the variance of all the active values encoded in this leaf node.

◆ voxelCount()

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
static uint32_t voxelCount ( )
inlinestatic

Return the total number of voxels (e.g. values) encoded in this leaf node.

Friends And Related Symbol Documentation

◆ InternalNode

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
template<typename , uint32_t >
friend class InternalNode
friend

◆ ReadAccessor

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
template<typename , int , int , int >
friend class ReadAccessor
friend

◆ RootNode

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
template<typename >
friend class RootNode
friend

Member Data Documentation

◆ DIM

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
constexpr uint32_t DIM = 1u << TOTAL
staticconstexpr

◆ FIXED_SIZE

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
constexpr bool FIXED_SIZE = DataType::FIXED_SIZE
staticconstexpr

◆ LEVEL

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
constexpr uint32_t LEVEL = 0
staticconstexpr

◆ LOG2DIM

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
constexpr uint32_t LOG2DIM = Log2Dim
staticconstexpr

◆ MASK

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
constexpr uint32_t MASK = (1u << LOG2DIM) - 1u
staticconstexpr

◆ mAverage

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
FloatType mAverage
inherited

◆ mBBoxDif

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
uint8_t mBBoxDif[3]
inherited

◆ mBBoxMin

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
CoordT mBBoxMin
inherited

◆ mFlags

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
uint8_t mFlags
inherited

◆ mMaximum

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
ValueType mMaximum
inherited

◆ mMinimum

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
ValueType mMinimum
inherited

◆ mStdDevi

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
FloatType mStdDevi
inherited

◆ mValueMask

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
MaskT<LOG2DIM> mValueMask
inherited

◆ mValues

template<typename ValueT , typename CoordT , template< uint32_t > class MaskT, uint32_t LOG2DIM>
ValueType mValues[1u<< 3 *LOG2DIM]
inherited

◆ NUM_VALUES

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
constexpr uint64_t NUM_VALUES = uint64_t(1) << (3 * TOTAL)
staticconstexpr

◆ SIZE

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
constexpr uint32_t SIZE = 1u << 3 * LOG2DIM
staticconstexpr

◆ TOTAL

template<typename BuildT , typename CoordT = Coord, template< uint32_t > class MaskT = Mask, uint32_t Log2Dim = 3>
constexpr uint32_t TOTAL = LOG2DIM
staticconstexpr