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

#include <nanovdb/NanoVDB.h>

Inheritance diagram for LeafData< ValueOnIndexMask, CoordT, MaskT, LOG2DIM >:
LeafData< ValueOnIndex, CoordT, MaskT, LOG2DIM > LeafIndexBase< CoordT, MaskT, LOG2DIM >

Public Types

using BuildType = ValueOnIndexMask
 
using ValueType
 
using BuildType
 
using FloatType
 
using ArrayType
 
using BaseT = LeafIndexBase<CoordT, MaskT, LOG2DIM>
 

Public Member Functions

__hostdev__ bool isMaskOn (uint32_t offset) const
 
__hostdev__ void setMask (uint32_t offset, bool v)
 
__hostdev__ ValueType getValue (uint32_t i) const
 
__hostdev__ void setValueOnly (uint32_t offset, const ValueType &value)
 
__hostdev__ void setValue (uint32_t offset, const ValueType &value)
 
__hostdev__ void setOn (uint32_t offset)
 
__hostdev__ ValueType getMin () const
 
__hostdev__ ValueType getMax () const
 
__hostdev__ FloatType getAvg () const
 
__hostdev__ FloatType getDev () const
 
__hostdev__ void setMin (const ValueType &v)
 
__hostdev__ void setMax (const ValueType &v)
 
__hostdev__ void setAvg (const FloatType &v)
 
__hostdev__ void setDev (const FloatType &v)
 
__hostdev__ void setOrigin (const T &ijk)
 
__hostdev__ void fill (const ValueType &v)
 
 LeafData ()=delete
 This class cannot be constructed or deleted.
 
 LeafData (const LeafData &)=delete
 
LeafDataoperator= (const LeafData &)=delete
 
 ~LeafData ()=delete
 
__hostdev__ uint32_t valueCount () const
 
__hostdev__ uint64_t lastOffset () const
 
__hostdev__ bool hasStats () const
 
__hostdev__ void setValueOnly (uint32_t offset, const ValueType &value)
 
__hostdev__ void setValue (uint32_t offset, const ValueType &value)
 
__hostdev__ void setMin (const ValueType &v)
 
__hostdev__ void setMin (const ValueType &)
 
__hostdev__ void setMax (const ValueType &v)
 
__hostdev__ void setMax (const ValueType &)
 
__hostdev__ void setAvg (const FloatType &)
 
__hostdev__ void setDev (const FloatType &)
 
__hostdev__ void fill (const ValueType &v)
 
__hostdev__ const uint64_t & firstOffset () const
 

Static Public Member Functions

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

Public Attributes

MaskT< LOG2DIM > mMask
 
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]
 
uint64_t mOffset
 
uint64_t mPrefixSum
 

Static Public Attributes

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 = LeafIndexBase<CoordT, MaskT, LOG2DIM>
inherited

◆ BuildType [1/2]

using BuildType

◆ BuildType [2/2]

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

◆ FloatType

using FloatType

◆ ValueType

using ValueType

Constructor & Destructor Documentation

◆ LeafData() [1/2]

LeafData ( )
delete

This class cannot be constructed or deleted.

◆ LeafData() [2/2]

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

◆ ~LeafData()

~LeafData ( )
delete

Member Function Documentation

◆ fill() [1/2]

__hostdev__ void fill ( const ValueType & v)
inlineinherited

◆ fill() [2/2]

__hostdev__ void fill ( const ValueType & v)
inline

◆ firstOffset()

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
__hostdev__ const uint64_t & firstOffset ( ) const
inlineinherited

◆ getAvg()

__hostdev__ FloatType getAvg ( ) const
inline

◆ getDev()

__hostdev__ FloatType getDev ( ) const
inline

◆ getMax()

__hostdev__ ValueType getMax ( ) const
inline

◆ getMin()

__hostdev__ ValueType getMin ( ) const
inline

◆ getValue()

__hostdev__ ValueType getValue ( uint32_t i) const
inline

◆ hasStats() [1/2]

static __hostdev__ bool hasStats ( )
inlinestatic

◆ hasStats() [2/2]

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
__hostdev__ bool hasStats ( ) const
inlineinherited

◆ isMaskOn()

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
__hostdev__ bool isMaskOn ( uint32_t offset) const
inline

◆ lastOffset()

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
__hostdev__ uint64_t lastOffset ( ) const
inlineinherited

◆ memUsage() [1/2]

static __hostdev__ uint64_t memUsage ( )
inlinestatic

◆ memUsage() [2/2]

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
static __hostdev__ uint64_t memUsage ( )
inlinestatic

◆ operator=()

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

◆ padding()

static __hostdev__ 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.

◆ setAvg() [1/2]

__hostdev__ void setAvg ( const FloatType & v)
inline

◆ setAvg() [2/2]

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

◆ setDev() [1/2]

__hostdev__ void setDev ( const FloatType & v)
inline

◆ setDev() [2/2]

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

◆ setMask()

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
__hostdev__ void setMask ( uint32_t offset,
bool v )
inline

◆ setMax() [1/3]

__hostdev__ void setMax ( const ValueType & v)
inlineinherited

◆ setMax() [2/3]

__hostdev__ void setMax ( const ValueType & v)
inline

◆ setMax() [3/3]

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

◆ setMin() [1/3]

__hostdev__ void setMin ( const ValueType & v)
inlineinherited

◆ setMin() [2/3]

__hostdev__ void setMin ( const ValueType & v)
inline

◆ setMin() [3/3]

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

◆ setOn()

__hostdev__ void setOn ( uint32_t offset)
inline

◆ setOrigin()

__hostdev__ void setOrigin ( const T & ijk)
inline

◆ setValue() [1/2]

__hostdev__ void setValue ( uint32_t offset,
const ValueType & value )
inlineinherited

◆ setValue() [2/2]

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

◆ setValueOnly() [1/2]

__hostdev__ void setValueOnly ( uint32_t offset,
const ValueType & value )
inlineinherited

◆ setValueOnly() [2/2]

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

◆ valueCount()

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
__hostdev__ uint32_t valueCount ( ) const
inlineinherited

Member Data Documentation

◆ FIXED_SIZE

bool FIXED_SIZE
staticconstexpr

◆ mAverage

FloatType mAverage

◆ mBBoxDif

uint8_t mBBoxDif[3]

◆ mBBoxMin

CoordT mBBoxMin

◆ mFlags

uint8_t mFlags

◆ mMask

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
MaskT<LOG2DIM> mMask

◆ mMaximum

ValueType mMaximum

◆ mMinimum

ValueType mMinimum

◆ mOffset

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
uint64_t mOffset
inherited

◆ mPrefixSum

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
uint64_t mPrefixSum
inherited

◆ mStdDevi

FloatType mStdDevi

◆ mValueMask

MaskT<LOG2DIM> mValueMask

◆ mValues

ValueType mValues[1u<< 3 *LOG2DIM]