OpenVDB 11.0.0
 
Loading...
Searching...
No Matches
LeafData< FpN, CoordT, MaskT, LOG2DIM > Struct Template Reference

#include <nanovdb/NanoVDB.h>

Inheritance diagram for LeafData< FpN, CoordT, MaskT, LOG2DIM >:
LeafFnBase< CoordT, MaskT, LOG2DIM >

Public Types

using BaseT = LeafFnBase<CoordT, MaskT, LOG2DIM>
 
using BuildType = FpN
 
using ValueType
 
using BuildType
 
using FloatType
 
using ArrayType
 

Public Member Functions

uint8_t bitWidth () const
 
size_t memUsage () const
 
float getValue (uint32_t i) const
 
 LeafData ()=delete
 This class cannot be constructed or deleted.
 
 LeafData (const LeafData &)=delete
 
LeafDataoperator= (const LeafData &)=delete
 
 ~LeafData ()=delete
 
ValueType getValue (uint32_t i) const
 
void setValueOnly (uint32_t offset, const ValueType &value)
 
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)
 
void setOrigin (const T &ijk)
 
void fill (const ValueType &v)
 
 LeafData ()=delete
 This class cannot be constructed or deleted.
 
 LeafData (const LeafData &)=delete
 
LeafDataoperator= (const LeafData &)=delete
 
 ~LeafData ()=delete
 
void init (float min, float max, uint8_t bitWidth)
 
void setMin (float min)
 
void setMax (float max)
 
void setAvg (float avg)
 
void setDev (float dev)
 

Static Public Member Functions

static constexpr uint32_t padding ()
 
static size_t memUsage (uint32_t bitWidth)
 
static constexpr uint32_t padding ()
 Return padding of this class in bytes, due to aliasing and 32B alignment.
 
static uint64_t memUsage ()
 
static bool hasStats ()
 

Public Attributes

CoordT mBBoxMin
 
uint8_t mBBoxDif [3]
 
uint8_t mFlags
 
MaskT< LOG2DIM > mValueMask
 
ValueType mMinimum
 
ValueType mMaximum
 
FloatType mAverage
 
FloatType mStdDevi
 
ValueType mValues [1u<< 3 *LOG2DIM]
 
float mQuantum
 
uint16_t mMin
 
uint16_t mMax
 
uint16_t mAvg
 
uint16_t mDev
 

Static Public Attributes

static constexpr bool FIXED_SIZE = false
 
static constexpr bool FIXED_SIZE
 

Member Typedef Documentation

◆ ArrayType

using ArrayType

◆ BaseT

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
using BaseT = LeafFnBase<CoordT, MaskT, LOG2DIM>

◆ BuildType [1/2]

using BuildType

◆ BuildType [2/2]

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
using BuildType = FpN

◆ FloatType

using FloatType

◆ ValueType

using ValueType

Constructor & Destructor Documentation

◆ LeafData() [1/4]

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
LeafData ( )
delete

This class cannot be constructed or deleted.

◆ LeafData() [2/4]

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
LeafData ( const LeafData< FpN, CoordT, MaskT, LOG2DIM > & )
delete

◆ ~LeafData() [1/2]

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
~LeafData ( )
delete

◆ LeafData() [3/4]

LeafData ( )
delete

This class cannot be constructed or deleted.

◆ LeafData() [4/4]

LeafData ( const LeafData< FpN, CoordT, MaskT, LOG2DIM > & )
delete

◆ ~LeafData() [2/2]

~LeafData ( )
delete

Member Function Documentation

◆ bitWidth()

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
uint8_t bitWidth ( ) const
inline

◆ fill()

void fill ( const ValueType & v)
inline

◆ getAvg()

FloatType getAvg ( ) const
inline

◆ getDev()

FloatType getDev ( ) const
inline

◆ getMax()

ValueType getMax ( ) const
inline

◆ getMin()

ValueType getMin ( ) const
inline

◆ getValue() [1/2]

ValueType getValue ( uint32_t i) const
inline

◆ getValue() [2/2]

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
float getValue ( uint32_t i) const
inline

◆ hasStats()

static bool hasStats ( )
inlinestatic

◆ init()

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
void init ( float min,
float max,
uint8_t bitWidth )
inlineinherited

◆ memUsage() [1/3]

static uint64_t memUsage ( )
inlinestatic

◆ memUsage() [2/3]

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
size_t memUsage ( ) const
inline

◆ memUsage() [3/3]

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
static size_t memUsage ( uint32_t bitWidth)
inlinestatic

◆ operator=() [1/2]

LeafData & operator= ( const LeafData< FpN, CoordT, MaskT, LOG2DIM > & )
delete

◆ operator=() [2/2]

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
LeafData & operator= ( const LeafData< FpN, CoordT, MaskT, LOG2DIM > & )
delete

◆ padding() [1/2]

static constexpr uint32_t padding ( )
inlinestaticconstexpr

Return padding of this class in bytes, due to aliasing and 32B alignment.

Note
The extra bytes are not necessarily at the end, but can come from aliasing of individual data members.

◆ padding() [2/2]

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
static constexpr uint32_t padding ( )
inlinestaticconstexpr

◆ setAvg() [1/2]

void setAvg ( const FloatType & v)
inline

◆ setAvg() [2/2]

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
void setAvg ( float avg)
inlineinherited
Note
min <= avg <= max or 0 <= (avg-min)/(min-max) <= 1

◆ setDev() [1/2]

void setDev ( const FloatType & v)
inline

◆ setDev() [2/2]

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
void setDev ( float dev)
inlineinherited
Note
0 <= StdDev <= max-min or 0 <= StdDev/(max-min) <= 1

◆ setMax() [1/2]

void setMax ( const ValueType & v)
inline

◆ setMax() [2/2]

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
void setMax ( float max)
inlineinherited
Note
min <= X <= max or 0 <= (X-min)/(min-max) <= 1

◆ setMin() [1/2]

void setMin ( const ValueType & v)
inline

◆ setMin() [2/2]

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
void setMin ( float min)
inlineinherited
Note
min <= X <= max or 0 <= (X-min)/(min-max) <= 1

◆ setOn()

void setOn ( uint32_t offset)
inline

◆ setOrigin()

void setOrigin ( const T & ijk)
inline

◆ setValue()

void setValue ( uint32_t offset,
const ValueType & value )
inline

◆ setValueOnly()

void setValueOnly ( uint32_t offset,
const ValueType & value )
inline

Member Data Documentation

◆ FIXED_SIZE [1/2]

bool FIXED_SIZE
staticconstexpr

◆ FIXED_SIZE [2/2]

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
bool FIXED_SIZE = false
staticconstexpr

◆ mAverage

FloatType mAverage

◆ mAvg

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
uint16_t mAvg
inherited

◆ mBBoxDif

uint8_t mBBoxDif[3]

◆ mBBoxMin

CoordT mBBoxMin

◆ mDev

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
uint16_t mDev
inherited

◆ mFlags

uint8_t mFlags

◆ mMax

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
uint16_t mMax
inherited

◆ mMaximum

ValueType mMaximum

◆ mMin

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
uint16_t mMin
inherited

◆ mMinimum

ValueType mMinimum

◆ mQuantum

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
float mQuantum
inherited

◆ mStdDevi

FloatType mStdDevi

◆ mValueMask

MaskT<LOG2DIM> mValueMask

◆ mValues

ValueType mValues[1u<< 3 *LOG2DIM]