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