OpenVDB  12.0.1
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
LeafData< Point, CoordT, MaskT, LOG2DIM > Struct Template Reference

#include <nanovdb/NanoVDB.h>

Public Types

using ValueType = uint64_t
 
using BuildType = Point
 
using FloatType = typename FloatTraits< ValueType >::FloatType
 
using ArrayType = uint16_t
 

Public Member Functions

__hostdev__ uint64_t offset () const
 
__hostdev__ uint64_t pointCount () const
 
__hostdev__ uint64_t first (uint32_t i) const
 
__hostdev__ uint64_t last (uint32_t i) const
 
__hostdev__ uint64_t getValue (uint32_t i) const
 
__hostdev__ void setValueOnly (uint32_t offset, uint16_t value)
 
__hostdev__ void setValue (uint32_t offset, uint16_t 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 &)
 
__hostdev__ void setMax (const ValueType &)
 
__hostdev__ void setAvg (const FloatType &)
 
__hostdev__ void setDev (const FloatType &)
 
template<typename T >
__hostdev__ void setOrigin (const T &ijk)
 
 LeafData ()=delete
 This class cannot be constructed or deleted. More...
 
 LeafData (const LeafData &)=delete
 
LeafDataoperator= (const LeafData &)=delete
 
 ~LeafData ()=delete
 

Static Public Member Functions

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

Public Attributes

CoordT mBBoxMin
 
uint8_t mBBoxDif [3]
 
uint8_t mFlags
 
MaskT< LOG2DIM > mValueMask
 
uint64_t mOffset
 
uint64_t mPointCount
 
uint16_t mValues [1u<< 3 *LOG2DIM]
 

Static Public Attributes

static constexpr bool FIXED_SIZE = true
 

Member Typedef Documentation

using ArrayType = uint16_t
using BuildType = Point
using ValueType = uint64_t

Constructor & Destructor Documentation

LeafData ( )
delete

This class cannot be constructed or deleted.

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

Member Function Documentation

__hostdev__ uint64_t first ( uint32_t  i) const
inline
__hostdev__ FloatType getAvg ( ) const
inline
__hostdev__ FloatType getDev ( ) const
inline
__hostdev__ ValueType getMax ( ) const
inline
__hostdev__ ValueType getMin ( ) const
inline
__hostdev__ uint64_t getValue ( uint32_t  i) const
inline
__hostdev__ uint64_t last ( uint32_t  i) const
inline
static __hostdev__ uint64_t memUsage ( )
inlinestatic
__hostdev__ uint64_t offset ( ) const
inline
LeafData& operator= ( const LeafData< Point, CoordT, MaskT, LOG2DIM > &  )
delete
static __hostdev__ constexpr uint32_t padding ( )
inlinestatic

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.
__hostdev__ uint64_t pointCount ( ) const
inline
__hostdev__ void setAvg ( const FloatType )
inline
__hostdev__ void setDev ( const FloatType )
inline
__hostdev__ void setMax ( const ValueType )
inline
__hostdev__ void setMin ( const ValueType )
inline
__hostdev__ void setOn ( uint32_t  offset)
inline
__hostdev__ void setOrigin ( const T &  ijk)
inline
__hostdev__ void setValue ( uint32_t  offset,
uint16_t  value 
)
inline
__hostdev__ void setValueOnly ( uint32_t  offset,
uint16_t  value 
)
inline

Member Data Documentation

constexpr bool FIXED_SIZE = true
static
uint8_t mBBoxDif[3]
CoordT mBBoxMin
uint8_t mFlags
uint64_t mOffset
uint64_t mPointCount
MaskT<LOG2DIM> mValueMask
uint16_t mValues[1u<< 3 *LOG2DIM]