Blender V4.5
nanovdb::InternalNode< ChildT, Log2Dim > Struct Template Reference

#include <nanovdb.h>

Classes

union  Tile

Public Types

using ValueType = typename ChildT::ValueType
using BuildType = typename ChildT::BuildType

Public Member Functions

const ccl_device_inline_method ccl_global ChildT * getChild (const uint32_t n) const ccl_global

Static Public Member Functions

static ccl_device_inline_method uint32_t CoordToOffset (const Coord ijk)

Public Attributes

Coord mBBox [2]
uint64_t mFlags
Mask< Log2Dim > mValueMask
Mask< Log2Dim > mChildMask
ValueType mMinimum
ValueType mMaximum
float mAverage
float mStdDevi
Tile mTable [1u<<(3 *Log2Dim)]
ccl_static_constexpr uint32_t LOG2DIM = Log2Dim
ccl_static_constexpr uint32_t TOTAL = LOG2DIM + ChildT::TOTAL
ccl_static_constexpr uint32_t DIM = 1u << TOTAL
ccl_static_constexpr uint32_t SIZE = 1u << (3 * LOG2DIM)
ccl_static_constexpr uint32_t MASK = (1u << TOTAL) - 1u
ccl_static_constexpr uint32_t LEVEL = 1 + ChildT::LEVEL

Detailed Description

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
struct nanovdb::InternalNode< ChildT, Log2Dim >

Definition at line 169 of file nanovdb.h.

Member Typedef Documentation

◆ BuildType

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
using nanovdb::InternalNode< ChildT, Log2Dim >::BuildType = typename ChildT::BuildType

Definition at line 171 of file nanovdb.h.

◆ ValueType

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
using nanovdb::InternalNode< ChildT, Log2Dim >::ValueType = typename ChildT::ValueType

Definition at line 170 of file nanovdb.h.

Member Function Documentation

◆ CoordToOffset()

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
ccl_device_inline_method uint32_t nanovdb::InternalNode< ChildT, Log2Dim >::CoordToOffset ( const Coord ijk)
inlinestatic

Definition at line 202 of file nanovdb.h.

◆ getChild()

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
const ccl_device_inline_method ccl_global ChildT * nanovdb::InternalNode< ChildT, Log2Dim >::getChild ( const uint32_t n) const
inline

Definition at line 190 of file nanovdb.h.

Member Data Documentation

◆ DIM

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
ccl_static_constexpr uint32_t nanovdb::InternalNode< ChildT, Log2Dim >::DIM = 1u << TOTAL

Definition at line 197 of file nanovdb.h.

◆ LEVEL

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
ccl_static_constexpr uint32_t nanovdb::InternalNode< ChildT, Log2Dim >::LEVEL = 1 + ChildT::LEVEL

Definition at line 200 of file nanovdb.h.

◆ LOG2DIM

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
ccl_static_constexpr uint32_t nanovdb::InternalNode< ChildT, Log2Dim >::LOG2DIM = Log2Dim

Definition at line 195 of file nanovdb.h.

◆ MASK

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
ccl_static_constexpr uint32_t nanovdb::InternalNode< ChildT, Log2Dim >::MASK = (1u << TOTAL) - 1u

Definition at line 199 of file nanovdb.h.

◆ mAverage

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
float nanovdb::InternalNode< ChildT, Log2Dim >::mAverage

Definition at line 185 of file nanovdb.h.

◆ mBBox

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
Coord nanovdb::InternalNode< ChildT, Log2Dim >::mBBox[2]

Definition at line 178 of file nanovdb.h.

◆ mChildMask

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
Mask<Log2Dim> nanovdb::InternalNode< ChildT, Log2Dim >::mChildMask

Definition at line 181 of file nanovdb.h.

◆ mFlags

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
uint64_t nanovdb::InternalNode< ChildT, Log2Dim >::mFlags

Definition at line 179 of file nanovdb.h.

◆ mMaximum

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
ValueType nanovdb::InternalNode< ChildT, Log2Dim >::mMaximum

Definition at line 184 of file nanovdb.h.

◆ mMinimum

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
ValueType nanovdb::InternalNode< ChildT, Log2Dim >::mMinimum

Definition at line 183 of file nanovdb.h.

◆ mStdDevi

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
float nanovdb::InternalNode< ChildT, Log2Dim >::mStdDevi

Definition at line 186 of file nanovdb.h.

◆ mTable

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
Tile nanovdb::InternalNode< ChildT, Log2Dim >::mTable[1u<<(3 *Log2Dim)]

Definition at line 188 of file nanovdb.h.

◆ mValueMask

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
Mask<Log2Dim> nanovdb::InternalNode< ChildT, Log2Dim >::mValueMask

Definition at line 180 of file nanovdb.h.

◆ SIZE

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
ccl_static_constexpr uint32_t nanovdb::InternalNode< ChildT, Log2Dim >::SIZE = 1u << (3 * LOG2DIM)

Definition at line 198 of file nanovdb.h.

◆ TOTAL

template<typename ChildT, const uint32_t Log2Dim = ChildT::LOG2DIM + 1>
ccl_static_constexpr uint32_t nanovdb::InternalNode< ChildT, Log2Dim >::TOTAL = LOG2DIM + ChildT::TOTAL

Definition at line 196 of file nanovdb.h.


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