OpenVDB 11.0.0

Loading...
Searching...
No Matches
LeafNode< ValueMask > Struct Reference

`#include <nanovdb/util/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, const ValueType &, bool state)
| LeafNode (const LeafNode &)=delete
| LeafNode (LeafNode &&)=delete
LeafNode & | operator= (const LeafNode &)=delete
LeafNode & | operator= (LeafNode &&)=delete
| ~LeafNode ()=default
const Mask< LOG2DIM > & | valueMask () const
const Mask< LOG2DIM > & | getValueMask () const
const Coord & | origin () 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 OpT, typename... ArgsT>
auto | get (const Coord &ijk, ArgsT &&... args) const
template<typename OpT, typename... ArgsT>
auto | set (const Coord &ijk, ArgsT &&... args)
template<typename AccT>
bool | getValueAndCache (const Coord &ijk, const AccT &) const
template<typename AccT>
void | setValueAndCache (const Coord &ijk, bool, const AccT &)
template<typename AccT>
void | setValueOnAndCache (const Coord &ijk, const AccT &)
template<typename AccT>
bool | isActiveAndCache (const Coord &ijk, const AccT &) const
void | setValue (uint32_t n, bool)
void | setValue (const Coord &ijk)
void | merge (LeafNode &other)
std::enable_if< std::is_floating_point< T >::value >::type | signedFloodFill (T outside)

## Static Public Member Functions
static uint32_t | CoordToOffset (const Coord &ijk)
| Return the linear offset corresponding to the given coordinate.
static Coord | OffsetToLocalCoord (uint32_t n)

## Public Attributes
Coord | mOrigin
Mask< LOG2DIM > | mValueMask
union nanovdb::build::LeafNode< ValueMask >:: { ... } |
ValueType | mValues [SIZE]
union { |
NanoLeafT * mDstNode |
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)

## Member Typedef Documentation

## ◆ BuildType

using BuildType = ValueMask

## ◆ LeafNodeType

using LeafNodeType = LeafNode<BuildType>

## ◆ MaskIterT

template<bool ON>

using MaskIterT = typename Mask<LOG2DIM>::template Iterator<ON>

## ◆ NanoLeafT

using NanoLeafT = typename NanoNode<BuildType, 0>::Type

## ◆ NodeMaskType

using NodeMaskType = Mask<LOG2DIM>

## ◆ ValueType

using ValueType = bool

## Constructor & Destructor Documentation

## ◆ LeafNode() [1/3]

LeafNode | ( | const Coord & | ijk,
|  | const ValueType & | ,
|  | bool | state )
| inline

## ◆ LeafNode() [2/3]

LeafNode | ( | const LeafNode< ValueMask > & |  | ) |
| delete

## ◆ LeafNode() [3/3]

LeafNode | ( | LeafNode< ValueMask > && |  | ) |
| delete

## ◆ ~LeafNode()

~LeafNode | ( |  | ) |
| default

## Member Function Documentation

## ◆ beginValue()

ValueIterator beginValue | ( |  | ) |
| inline

## ◆ beginValueOff()

ValueOffIterator beginValueOff | ( |  | ) |
| inline

## ◆ beginValueOn()

ValueOnIterator beginValueOn | ( |  | ) |
| inline

## ◆ cbeginValueAll()

ValueIterator cbeginValueAll | ( |  | ) | const
| inline

## ◆ cbeginValueOff()

ValueOffIterator cbeginValueOff | ( |  | ) | const
| inline

## ◆ cbeginValueOn()

ValueOnIterator cbeginValueOn | ( |  | ) | const
| inline

## ◆ CoordToOffset()

uint32_t CoordToOffset | ( | const Coord & | ijk | ) |
| inline static

Return the linear offset corresponding to the given coordinate.

## ◆ get()

template<typename OpT, typename... ArgsT>

auto get | ( | const Coord & | ijk,
|  | ArgsT &&... | args ) const
| inline

## ◆ getFirstValue()

bool getFirstValue | ( |  | ) | const
| inline

## ◆ getLastValue()

bool getLastValue | ( |  | ) | const
| inline

## ◆ getValue() [1/2]

bool getValue | ( | const Coord & | ijk | ) | const
| inline

## ◆ getValue() [2/2]

bool getValue | ( | uint32_t | i | ) | const
| inline

## ◆ getValueAndCache()

template<typename AccT>

bool getValueAndCache | ( | const Coord & | ijk,
|  | const AccT & | ) const
| inline

## ◆ getValueMask()

const Mask< LOG2DIM > & getValueMask | ( |  | ) | const
| inline

## ◆ isActiveAndCache()

template<typename AccT>

bool isActiveAndCache | ( | const Coord & | ijk,
|  | const AccT & | ) const
| inline

## ◆ localToGlobalCoord()

void localToGlobalCoord | ( | Coord & | ijk | ) | const
| inline

## ◆ merge()

void merge | ( | LeafNode< ValueMask > & | other | ) |
| inline

## ◆ offsetToGlobalCoord()

Coord offsetToGlobalCoord | ( | uint32_t | n | ) | const
| inline

## ◆ OffsetToLocalCoord()

Coord OffsetToLocalCoord | ( | uint32_t | n | ) |
| inline static

## ◆ operator=() [1/2]

LeafNode & operator= | ( | const LeafNode< ValueMask > & |  | ) |
| delete

## ◆ operator=() [2/2]

LeafNode & operator= | ( | LeafNode< ValueMask > && |  | ) |
| delete

## ◆ origin()

const Coord & origin | ( |  | ) | const
| inline

## ◆ set()

template<typename OpT, typename... ArgsT>

auto set | ( | const Coord & | ijk,
|  | ArgsT &&... | args )
| inline

## ◆ setValue() [1/2]

void setValue | ( | const Coord & | ijk | ) |
| inline

## ◆ setValue() [2/2]

void setValue | ( | uint32_t | n,
|  | bool | )
| inline

## ◆ setValueAndCache()

template<typename AccT>

void setValueAndCache | ( | const Coord & | ijk,
|  | bool | ,
|  | const AccT & | )
| inline

## ◆ setValueOnAndCache()

template<typename AccT>

void setValueOnAndCache | ( | const Coord & | ijk,
|  | const AccT & | )
| inline

## ◆ signedFloodFill()

std::enable_if< std::is_floating_point< T >::value >::type signedFloodFill | ( | T | outside | ) |
| inline

## ◆ valueMask()

const Mask< LOG2DIM > & valueMask | ( |  | ) | const
| inline

## Member Data Documentation

## ◆ []

union nanovdb::build::LeafNode< ValueMask > { ... }

## ◆ [union]

union { ... }

## ◆ DIM

uint32_t DIM = 1u << TOTAL
| static constexpr

## ◆ LEVEL

uint32_t LEVEL = 0
| static constexpr

## ◆ LOG2DIM

uint32_t LOG2DIM = 3
| static constexpr

## ◆ MASK

uint32_t MASK = DIM - 1
| static constexpr

## ◆ mDstNode

NanoLeafT* mDstNode

## ◆ mDstOffset

uint64_t mDstOffset

## ◆ mOrigin

Coord mOrigin

## ◆ mValueMask

Mask<LOG2DIM> mValueMask

## ◆ mValues

ValueType mValues[SIZE]

## ◆ NUM_VALUES

uint64_t NUM_VALUES = uint64_t(1) << (3 * TOTAL)
| static constexpr

## ◆ SIZE

uint32_t SIZE = 1u << 3 * LOG2DIM
| static constexpr

## ◆ TOTAL

uint32_t TOTAL = LOG2DIM
| static constexpr