HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
nanovdb::build::LeafNode< bool > Struct Template Reference

#include <GridBuilder.h>

Classes

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 ValueType = bool
 
using BuildType = ValueMask
 
using LeafNodeType = LeafNode< BuildType >
 
using NodeMaskType = Mask< LOG2DIM >
 
template<bool ON>
using MaskIterT = typename Mask< LOG2DIM >::template Iterator< ON >
 
using NanoLeafT = typename NanoNode< BuildType, 0 >::Type
 

Public Member Functions

ValueOnIterator beginValueOn ()
 
ValueOnIterator cbeginValueOn () const
 
ValueOffIterator beginValueOff ()
 
ValueOffIterator cbeginValueOff () const
 
ValueIterator beginValue ()
 
ValueIterator cbeginValueAll () const
 
 LeafNode (const Coord &ijk, bool value, bool state)
 
 LeafNode (const LeafNode &)=delete
 
 LeafNode (LeafNode &&)=delete
 
LeafNodeoperator= (const LeafNode &)=delete
 
LeafNodeoperator= (LeafNode &&)=delete
 
 ~LeafNode ()=default
 
const Mask< LOG2DIM > & valueMask () const
 
const Mask< LOG2DIM > & getValueMask () const
 
const Coordorigin () const
 
void localToGlobalCoord (Coord &ijk) const
 
Coord offsetToGlobalCoord (uint32_t n) const
 
bool getFirstValue () const
 
bool getLastValue () const
 
bool getValue (uint32_t i) const
 
bool getValue (const Coord &ijk) const
 
template<typename AccT >
bool isActiveAndCache (const Coord &ijk, const AccT &) const
 
template<typename AccT >
bool getValueAndCache (const Coord &ijk, const AccT &) const
 
template<typename AccT >
void setValueAndCache (const Coord &ijk, bool value, const AccT &)
 
template<typename AccT >
void setValueOnAndCache (const Coord &ijk, const AccT &)
 
void setValue (uint32_t n, bool value)
 
void setValue (const Coord &ijk, bool value)
 
void merge (LeafNode &other)
 

Static Public Member Functions

static uint32_t CoordToOffset (const Coord &ijk)
 Return the linear offset corresponding to the given coordinate. More...
 
static Coord OffsetToLocalCoord (uint32_t n)
 

Public Attributes

Coord mOrigin
 
Mask< LOG2DIMmValueMask
 
Mask< LOG2DIMmValues
 
union nanovdb::build::LeafNode
< bool >:: { ... }  
 
NanoLeafTmDstNode
 
uint64_t mDstOffset
 

Static Public Attributes

static constexpr uint32_t LOG2DIM = 3
 
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 = DIM - 1
 
static constexpr uint32_t LEVEL = 0
 
static constexpr uint64_t NUM_VALUES = uint64_t(1) << (3 * TOTAL)
 

Detailed Description

template<>
struct nanovdb::build::LeafNode< bool >

Definition at line 1461 of file GridBuilder.h.

Member Typedef Documentation

Definition at line 1464 of file GridBuilder.h.

Definition at line 1465 of file GridBuilder.h.

template<bool ON>
using nanovdb::build::LeafNode< bool >::MaskIterT = typename Mask<LOG2DIM>::template Iterator<ON>

Definition at line 1475 of file GridBuilder.h.

using nanovdb::build::LeafNode< bool >::NanoLeafT = typename NanoNode<BuildType, 0>::Type

Definition at line 1476 of file GridBuilder.h.

Definition at line 1473 of file GridBuilder.h.

using nanovdb::build::LeafNode< bool >::ValueType = bool

Definition at line 1463 of file GridBuilder.h.

Constructor & Destructor Documentation

nanovdb::build::LeafNode< bool >::LeafNode ( const Coord ijk,
bool  value,
bool  state 
)
inline

Definition at line 1542 of file GridBuilder.h.

nanovdb::build::LeafNode< bool >::LeafNode ( const LeafNode< bool > &  )
delete
nanovdb::build::LeafNode< bool >::LeafNode ( LeafNode< bool > &&  )
delete
nanovdb::build::LeafNode< bool >::~LeafNode ( )
default

Member Function Documentation

ValueIterator nanovdb::build::LeafNode< bool >::beginValue ( )
inline

Definition at line 1539 of file GridBuilder.h.

ValueOffIterator nanovdb::build::LeafNode< bool >::beginValueOff ( )
inline

Definition at line 1514 of file GridBuilder.h.

ValueOnIterator nanovdb::build::LeafNode< bool >::beginValueOn ( )
inline

Definition at line 1498 of file GridBuilder.h.

ValueIterator nanovdb::build::LeafNode< bool >::cbeginValueAll ( ) const
inline

Definition at line 1540 of file GridBuilder.h.

ValueOffIterator nanovdb::build::LeafNode< bool >::cbeginValueOff ( ) const
inline

Definition at line 1515 of file GridBuilder.h.

ValueOnIterator nanovdb::build::LeafNode< bool >::cbeginValueOn ( ) const
inline

Definition at line 1499 of file GridBuilder.h.

static uint32_t nanovdb::build::LeafNode< bool >::CoordToOffset ( const Coord ijk)
inlinestatic

Return the linear offset corresponding to the given coordinate.

Definition at line 1560 of file GridBuilder.h.

bool nanovdb::build::LeafNode< bool >::getFirstValue ( ) const
inline

Definition at line 1585 of file GridBuilder.h.

bool nanovdb::build::LeafNode< bool >::getLastValue ( ) const
inline

Definition at line 1586 of file GridBuilder.h.

bool nanovdb::build::LeafNode< bool >::getValue ( uint32_t  i) const
inline

Definition at line 1588 of file GridBuilder.h.

bool nanovdb::build::LeafNode< bool >::getValue ( const Coord ijk) const
inline

Definition at line 1589 of file GridBuilder.h.

template<typename AccT >
bool nanovdb::build::LeafNode< bool >::getValueAndCache ( const Coord ijk,
const AccT &   
) const
inline

Definition at line 1601 of file GridBuilder.h.

const Mask<LOG2DIM>& nanovdb::build::LeafNode< bool >::getValueMask ( ) const
inline

Definition at line 1556 of file GridBuilder.h.

template<typename AccT >
bool nanovdb::build::LeafNode< bool >::isActiveAndCache ( const Coord ijk,
const AccT &   
) const
inline

Definition at line 1595 of file GridBuilder.h.

void nanovdb::build::LeafNode< bool >::localToGlobalCoord ( Coord ijk) const
inline

Definition at line 1574 of file GridBuilder.h.

void nanovdb::build::LeafNode< bool >::merge ( LeafNode< bool > &  other)
inline

Definition at line 1629 of file GridBuilder.h.

Coord nanovdb::build::LeafNode< bool >::offsetToGlobalCoord ( uint32_t  n) const
inline

Definition at line 1579 of file GridBuilder.h.

static Coord nanovdb::build::LeafNode< bool >::OffsetToLocalCoord ( uint32_t  n)
inlinestatic

Definition at line 1567 of file GridBuilder.h.

LeafNode& nanovdb::build::LeafNode< bool >::operator= ( const LeafNode< bool > &  )
delete
LeafNode& nanovdb::build::LeafNode< bool >::operator= ( LeafNode< bool > &&  )
delete
const Coord& nanovdb::build::LeafNode< bool >::origin ( ) const
inline

Definition at line 1557 of file GridBuilder.h.

void nanovdb::build::LeafNode< bool >::setValue ( uint32_t  n,
bool  value 
)
inline

Definition at line 1622 of file GridBuilder.h.

void nanovdb::build::LeafNode< bool >::setValue ( const Coord ijk,
bool  value 
)
inline

Definition at line 1627 of file GridBuilder.h.

template<typename AccT >
void nanovdb::build::LeafNode< bool >::setValueAndCache ( const Coord ijk,
bool  value,
const AccT &   
)
inline

Definition at line 1607 of file GridBuilder.h.

template<typename AccT >
void nanovdb::build::LeafNode< bool >::setValueOnAndCache ( const Coord ijk,
const AccT &   
)
inline

Definition at line 1615 of file GridBuilder.h.

const Mask<LOG2DIM>& nanovdb::build::LeafNode< bool >::valueMask ( ) const
inline

Definition at line 1555 of file GridBuilder.h.

Member Data Documentation

union { ... }
constexpr uint32_t nanovdb::build::LeafNode< bool >::DIM = 1u << TOTAL
static

Definition at line 1468 of file GridBuilder.h.

constexpr uint32_t nanovdb::build::LeafNode< bool >::LEVEL = 0
static

Definition at line 1471 of file GridBuilder.h.

constexpr uint32_t nanovdb::build::LeafNode< bool >::LOG2DIM = 3
static

Definition at line 1466 of file GridBuilder.h.

constexpr uint32_t nanovdb::build::LeafNode< bool >::MASK = DIM - 1
static

Definition at line 1470 of file GridBuilder.h.

NanoLeafT* nanovdb::build::LeafNode< bool >::mDstNode

Definition at line 1481 of file GridBuilder.h.

uint64_t nanovdb::build::LeafNode< bool >::mDstOffset

Definition at line 1482 of file GridBuilder.h.

Coord nanovdb::build::LeafNode< bool >::mOrigin

Definition at line 1478 of file GridBuilder.h.

Mask<LOG2DIM> nanovdb::build::LeafNode< bool >::mValueMask

Definition at line 1479 of file GridBuilder.h.

Definition at line 1479 of file GridBuilder.h.

constexpr uint64_t nanovdb::build::LeafNode< bool >::NUM_VALUES = uint64_t(1) << (3 * TOTAL)
static

Definition at line 1472 of file GridBuilder.h.

constexpr uint32_t nanovdb::build::LeafNode< bool >::SIZE = 1u << 3 * LOG2DIM
static

Definition at line 1469 of file GridBuilder.h.

constexpr uint32_t nanovdb::build::LeafNode< bool >::TOTAL = LOG2DIM
static

Definition at line 1467 of file GridBuilder.h.


The documentation for this struct was generated from the following file: