Loading...
Searching...
No Matches
GridBuilder< ValueT, BuildT, StatsT >::BuildLeaf Struct Reference

`#include <nanovdb/util/GridBuilder.h>`

## Public Types

using | ValueType = ValueT
using | BuildType = BuildT
using | NodeMaskType = Mask<LOG2DIM>
using | NanoLeafT = typename NanoNode<BuildT, 0>::Type

## Public Member Functions

| BuildLeaf (const Coord &ijk, const ValueT &value, bool state)
| BuildLeaf (const BuildLeaf &)=delete
| BuildLeaf (BuildLeaf &&)=delete
BuildLeaf & | operator= (const BuildLeaf &)=delete
BuildLeaf & | operator= (BuildLeaf &&)=delete
| ~BuildLeaf ()=default
void | localToGlobalCoord (Coord &ijk) const
Coord | offsetToGlobalCoord (uint32_t n) const
template<typename AccT>
bool | isActiveAndCache (const Coord &ijk, const AccT &) const
ValueT | getFirstValue () const
ValueT | getLastValue () const
const ValueT & | getValue (const Coord &ijk) const
template<typename AccT>
const ValueT & | getValueAndCache (const Coord &ijk, const AccT &) const
template<typename AccT>
void | setValueAndCache (const Coord &ijk, const ValueT &value, const AccT &)
void | setValue (const Coord &ijk, const ValueT &value)
template<typename NodeT>
void | getNodes (std::vector< NodeT * > &)
template<typename NodeT>
void | addNode (NodeT *&)
template<typename NodeT>
uint32_t | nodeCount () const
template<typename T>
std::enable_if< std::is_floating_point< T >::value >::type | signedFloodFill (T outside)
template<typename T>
std::enable_if<!std::is_floating_point< T >::value >::type | signedFloodFill (T)

## 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
ValueT | mValues [SIZE]
union nanovdb::GridBuilder< ValueT, BuildT, StatsT >::BuildLeaf:: { ... } |

## 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 int32_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

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

using BuildType = BuildT

## NanoLeafT

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

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

## NodeMaskType

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

using NodeMaskType = Mask<LOG2DIM>

## ValueType

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

using ValueType = ValueT

## Constructor & Destructor Documentation

## BuildLeaf() [1/3]

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

BuildLeaf | ( | const Coord & | ijk,
|  | const ValueT & | value,
|  | bool | state )

inline

## BuildLeaf() [2/3]

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

BuildLeaf | ( | const BuildLeaf & |  | ) |

delete

## BuildLeaf() [3/3]

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

BuildLeaf | ( | BuildLeaf && |  | ) |

delete

## ~BuildLeaf()

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

~BuildLeaf | ( |  | ) |

default

## Member Function Documentation

## addNode()

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>
template<typename NodeT>

void addNode | ( | NodeT *& |  | ) |

inline

## CoordToOffset()

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

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

inline static

Return the linear offset corresponding to the given coordinate.

## getFirstValue()

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

ValueT getFirstValue | ( |  | ) | const

inline

## getLastValue()

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

ValueT getLastValue | ( |  | ) | const

inline

## getNodes()

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>
template<typename NodeT>

void getNodes | ( | std::vector< NodeT * > & |  | ) |

inline

## getValue()

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

const ValueT & getValue | ( | const Coord & | ijk | ) | const

inline

## getValueAndCache()

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>
template<typename AccT>

const ValueT & getValueAndCache | ( | const Coord & | ijk,
|  | const AccT & | ) const

inline

## isActiveAndCache()

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>
template<typename AccT>

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

inline

## localToGlobalCoord()

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

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

inline

## nodeCount()

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>
template<typename NodeT>

uint32_t nodeCount | ( |  | ) | const

inline

## offsetToGlobalCoord()

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

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

inline

## OffsetToLocalCoord()

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

Coord OffsetToLocalCoord | ( | uint32_t | n | ) |

inline static

## operator=() [1/2]

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

BuildLeaf & operator= | ( | BuildLeaf && |  | ) |

delete

## operator=() [2/2]

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

BuildLeaf & operator= | ( | const BuildLeaf & |  | ) |

delete

## setValue()

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

void setValue | ( | const Coord & | ijk,
|  | const ValueT & | value )

inline

## setValueAndCache()

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>
template<typename AccT>

void setValueAndCache | ( | const Coord & | ijk,
|  | const ValueT & | value,
|  | const AccT & | )

inline

## signedFloodFill() [1/2]

template<typename ValueT, typename BuildT, typename StatsT>
template<typename T>

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

inline

## signedFloodFill() [2/2]

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>
template<typename T>

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

inline

## Member Data Documentation

## []

union nanovdb::GridBuilder< ValueT, BuildT, StatsT > { ... }

## DIM

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

uint32_t DIM = 1u << TOTAL

static constexpr

## LEVEL

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

uint32_t LEVEL = 0

static constexpr

## LOG2DIM

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

uint32_t LOG2DIM = 3

static constexpr

## MASK

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

int32_t MASK = DIM - 1

static constexpr

## mOrigin

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

Coord mOrigin

## mValueMask

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

Mask<LOG2DIM> mValueMask

## mValues

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

ValueT mValues[SIZE]

## NUM_VALUES

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

uint64_t NUM_VALUES = uint64_t(1) << (3 * TOTAL)

static constexpr

## SIZE

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

uint32_t SIZE = 1u << 3 * LOG2DIM

static constexpr

## TOTAL

template<typename ValueT, typename BuildT = ValueT, typename StatsT = Stats<ValueT>>

uint32_t TOTAL = LOG2DIM

static constexpr