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

#include <nanovdb/NanoVDB.h>

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

Public Types

using ValueType = uint64_t
 
using FloatType = uint64_t
 
using ArrayType = void
 

Public Member Functions

__hostdev__ bool hasStats () const
 
__hostdev__ const uint64_t & firstOffset () const
 
__hostdev__ void setMin (const ValueType &)
 
__hostdev__ void setMax (const ValueType &)
 
__hostdev__ void setAvg (const FloatType &)
 
__hostdev__ void setDev (const FloatType &)
 
__hostdev__ void setOn (uint32_t offset)
 
template<typename T>
__hostdev__ void setOrigin (const T &ijk)
 

Static Public Member Functions

static __hostdev__ constexpr uint32_t padding ()
 
static __hostdev__ uint64_t memUsage ()
 

Public Attributes

CoordT mBBoxMin
 
uint8_t mBBoxDif [3]
 
uint8_t mFlags
 
MaskT< LOG2DIM > mValueMask
 
uint64_t mOffset
 
uint64_t mPrefixSum
 

Static Public Attributes

static constexpr bool FIXED_SIZE = true
 

Protected Member Functions

 LeafIndexBase ()=default
 This class should be used as an abstract class and only constructed or deleted via child classes.
 
 LeafIndexBase (const LeafIndexBase &)=default
 
LeafIndexBaseoperator= (const LeafIndexBase &)=default
 
 ~LeafIndexBase ()=default
 

Member Typedef Documentation

◆ ArrayType

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

◆ FloatType

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
using FloatType = uint64_t

◆ ValueType

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
using ValueType = uint64_t

Constructor & Destructor Documentation

◆ LeafIndexBase() [1/2]

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
LeafIndexBase ( )
protecteddefault

This class should be used as an abstract class and only constructed or deleted via child classes.

◆ LeafIndexBase() [2/2]

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
LeafIndexBase ( const LeafIndexBase< CoordT, MaskT, LOG2DIM > & )
protecteddefault

◆ ~LeafIndexBase()

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
~LeafIndexBase ( )
protecteddefault

Member Function Documentation

◆ firstOffset()

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

◆ hasStats()

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

◆ memUsage()

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

◆ operator=()

template<typename CoordT, template< uint32_t > class MaskT, uint32_t LOG2DIM>
LeafIndexBase & operator= ( const LeafIndexBase< CoordT, MaskT, LOG2DIM > & )
protecteddefault

◆ padding()

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

◆ setAvg()

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

◆ setDev()

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

◆ setMax()

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

◆ setMin()

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

◆ setOn()

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

◆ setOrigin()

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

Member Data Documentation

◆ FIXED_SIZE

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

◆ mBBoxDif

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

◆ mBBoxMin

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

◆ mFlags

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

◆ mOffset

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

◆ mPrefixSum

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

◆ mValueMask

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