OpenVDB 13.0.0

Loading...
Searching...
No Matches
InternalData< ChildT, LOG2DIM > Struct Template Reference

Struct with all the member data of the InternalNode (useful during serialization of an openvdb InternalNode). More...

`#include <nanovdb/NanoVDB.h>`

Inheritance diagram for InternalData< ChildT, LOG2DIM >:

## Classes
union | Tile

## Public Types
using | ValueT = typename ChildT::ValueType
using | BuildT = typename ChildT::BuildType
using | StatsT = typename ChildT::FloatType
using | CoordT = typename ChildT::CoordType
using | MaskT = typename ChildT::template MaskType<LOG2DIM>

## Public Member Functions
__hostdev__ void | setChild (uint32_t n, const void *ptr)
template<typename ValueT>
__hostdev__ void | setValue (uint32_t n, const ValueT &v)
__hostdev__ ChildT * | getChild (uint32_t n)
| Returns a pointer to the child node at the specifed linear offset.
__hostdev__ const ChildT * | getChild (uint32_t n) const
__hostdev__ ValueT | getValue (uint32_t n) const
__hostdev__ bool | isActive (uint32_t n) const
__hostdev__ bool | isChild (uint32_t n) const
template<typename T>
__hostdev__ void | setOrigin (const T &ijk)
__hostdev__ const ValueT & | getMin () const
__hostdev__ const ValueT & | getMax () const
__hostdev__ const StatsT & | average () const
__hostdev__ const StatsT & | stdDeviation () const
__hostdev__ void | setMin (const ValueT &v)
__hostdev__ void | setMax (const ValueT &v)
__hostdev__ void | setAvg (const StatsT &v)
__hostdev__ void | setDev (const StatsT &v)
| InternalData ()=delete
| This class cannot be constructed or deleted.
| InternalData (const InternalData &)=delete
InternalData & | operator= (const InternalData &)=delete
| ~InternalData ()=delete

## Static Public Member Functions
static __hostdev__ constexpr uint32_t | padding ()
| Return padding of this class in bytes, due to aliasing and 32B alignment.
static __hostdev__ uint64_t | memUsage ()

## Public Attributes
math::BBox< CoordT > | mBBox
uint64_t | mFlags
MaskT | mValueMask
MaskT | mChildMask
ValueT | mMinimum
ValueT | mMaximum
StatsT | mAverage
StatsT | mStdDevi
Tile | mTable [1u<<(3 *LOG2DIM)]

## Static Public Attributes
static constexpr bool | FIXED_SIZE = true

## Detailed Description

template<typename ChildT, uint32_t LOG2DIM>
struct nanovdb::InternalData< ChildT, LOG2DIM >

Struct with all the member data of the InternalNode (useful during serialization of an openvdb InternalNode).

Note
  No client code should (or can) interface with this struct so it can safely be ignored!

## Member Typedef Documentation

## ◆ BuildT

template<typename ChildT, uint32_t LOG2DIM>

using BuildT = typename ChildT::BuildType

## ◆ CoordT

template<typename ChildT, uint32_t LOG2DIM>

using CoordT = typename ChildT::CoordType

## ◆ MaskT

template<typename ChildT, uint32_t LOG2DIM>

using MaskT = typename ChildT::template MaskType<LOG2DIM>

## ◆ StatsT

template<typename ChildT, uint32_t LOG2DIM>

using StatsT = typename ChildT::FloatType

## ◆ ValueT

template<typename ChildT, uint32_t LOG2DIM>

using ValueT = typename ChildT::ValueType

## Constructor & Destructor Documentation

## ◆ InternalData() [1/2]

template<typename ChildT, uint32_t LOG2DIM>

InternalData | ( |  | ) |
| delete

This class cannot be constructed or deleted.

## ◆ InternalData() [2/2]

template<typename ChildT, uint32_t LOG2DIM>

InternalData | ( | const InternalData< ChildT, LOG2DIM > & |  | ) |
| delete

## ◆ ~InternalData()

template<typename ChildT, uint32_t LOG2DIM>

~InternalData | ( |  | ) |
| delete

## Member Function Documentation

## ◆ average()

template<typename ChildT, uint32_t LOG2DIM>

__hostdev__ const StatsT & average | ( |  | ) | const
| inline

## ◆ getChild() [1/2]

template<typename ChildT, uint32_t LOG2DIM>

__hostdev__ ChildT * getChild | ( | uint32_t | n | ) |
| inline

Returns a pointer to the child node at the specifed linear offset.

## ◆ getChild() [2/2]

template<typename ChildT, uint32_t LOG2DIM>

__hostdev__ const ChildT * getChild | ( | uint32_t | n | ) | const
| inline

## ◆ getMax()

template<typename ChildT, uint32_t LOG2DIM>

__hostdev__ const ValueT & getMax | ( |  | ) | const
| inline

## ◆ getMin()

template<typename ChildT, uint32_t LOG2DIM>

__hostdev__ const ValueT & getMin | ( |  | ) | const
| inline

## ◆ getValue()

template<typename ChildT, uint32_t LOG2DIM>

__hostdev__ ValueT getValue | ( | uint32_t | n | ) | const
| inline

## ◆ isActive()

template<typename ChildT, uint32_t LOG2DIM>

__hostdev__ bool isActive | ( | uint32_t | n | ) | const
| inline

## ◆ isChild()

template<typename ChildT, uint32_t LOG2DIM>

__hostdev__ bool isChild | ( | uint32_t | n | ) | const
| inline

## ◆ memUsage()

template<typename ChildT, uint32_t LOG2DIM>

__hostdev__ uint64_t memUsage | ( |  | ) |
| inline static

## ◆ operator=()

template<typename ChildT, uint32_t LOG2DIM>

InternalData & operator= | ( | const InternalData< ChildT, LOG2DIM > & |  | ) |
| delete

## ◆ padding()

template<typename ChildT, uint32_t LOG2DIM>

__hostdev__ constexpr uint32_t padding | ( |  | ) |
| inline static constexpr

Return padding of this class in bytes, due to aliasing and 32B alignment.

Note
  The extra bytes are not necessarily at the end, but can come from aliasing of individual data members.

## ◆ setAvg()

template<typename ChildT, uint32_t LOG2DIM>

__hostdev__ void setAvg | ( | const StatsT & | v | ) |
| inline

## ◆ setChild()

template<typename ChildT, uint32_t LOG2DIM>

__hostdev__ void setChild | ( | uint32_t | n,
|  | const void * | ptr )
| inline

## ◆ setDev()

template<typename ChildT, uint32_t LOG2DIM>

__hostdev__ void setDev | ( | const StatsT & | v | ) |
| inline

## ◆ setMax()

template<typename ChildT, uint32_t LOG2DIM>

__hostdev__ void setMax | ( | const ValueT & | v | ) |
| inline

## ◆ setMin()

template<typename ChildT, uint32_t LOG2DIM>

__hostdev__ void setMin | ( | const ValueT & | v | ) |
| inline

## ◆ setOrigin()

template<typename ChildT, uint32_t LOG2DIM>
template<typename T>

__hostdev__ void setOrigin | ( | const T & | ijk | ) |
| inline

## ◆ setValue()

template<typename ChildT, uint32_t LOG2DIM>
template<typename ValueT>

__hostdev__ void setValue | ( | uint32_t | n,
|  | const ValueT & | v )
| inline

## ◆ stdDeviation()

template<typename ChildT, uint32_t LOG2DIM>

__hostdev__ const StatsT & stdDeviation | ( |  | ) | const
| inline

## Member Data Documentation

## ◆ FIXED_SIZE

template<typename ChildT, uint32_t LOG2DIM>

bool FIXED_SIZE = true
| static constexpr

## ◆ mAverage

template<typename ChildT, uint32_t LOG2DIM>

StatsT mAverage

## ◆ mBBox

template<typename ChildT, uint32_t LOG2DIM>

math::BBox<CoordT> mBBox

## ◆ mChildMask

template<typename ChildT, uint32_t LOG2DIM>

MaskT mChildMask

## ◆ mFlags

template<typename ChildT, uint32_t LOG2DIM>

uint64_t mFlags

## ◆ mMaximum

template<typename ChildT, uint32_t LOG2DIM>

ValueT mMaximum

## ◆ mMinimum

template<typename ChildT, uint32_t LOG2DIM>

ValueT mMinimum

## ◆ mStdDevi

template<typename ChildT, uint32_t LOG2DIM>

StatsT mStdDevi

## ◆ mTable

template<typename ChildT, uint32_t LOG2DIM>

Tile mTable[1u<<(3 *LOG2DIM)]

## ◆ mValueMask

template<typename ChildT, uint32_t LOG2DIM>

MaskT mValueMask