OpenVDB 11.0.0
|
Internal nodes of a VDB treedim(),. More...
#include <nanovdb/NanoVDB.h>
Classes | |
class | ChildIter |
Visits child nodes of this node only. More... | |
class | DenseIterator |
Visits all tile values and child nodes of this node. More... | |
class | ValueIterator |
Visits all tile values in this node, i.e. both inactive and active tiles. More... | |
class | ValueOnIterator |
Visits active tile values of this node only. More... | |
Public Types | |
using | DataType = InternalData<ChildT, Log2Dim> |
using | ValueType = typename DataType::ValueT |
using | FloatType = typename DataType::StatsT |
using | BuildType = typename DataType::BuildT |
using | LeafNodeType = typename ChildT::LeafNodeType |
using | ChildNodeType = ChildT |
using | CoordType = typename ChildT::CoordType |
template<uint32_t LOG2> | |
using | MaskType = typename ChildT::template MaskType<LOG2> |
template<bool On> | |
using | MaskIterT = typename Mask<Log2Dim>::template Iterator<On> |
using | ChildIterator = ChildIter<InternalNode> |
using | ConstChildIterator = ChildIter<const InternalNode> |
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 | |
ChildIterator | beginChild () |
ConstChildIterator | cbeginChild () const |
ValueIterator | beginValue () const |
ValueIterator | cbeginValueAll () const |
ValueOnIterator | beginValueOn () const |
ValueOnIterator | cbeginValueOn () const |
DenseIterator | beginDense () const |
DenseIterator | cbeginChildAll () const |
InternalNode ()=delete | |
This class cannot be constructed or deleted. | |
InternalNode (const InternalNode &)=delete | |
InternalNode & | operator= (const InternalNode &)=delete |
~InternalNode ()=delete | |
DataType * | data () |
const DataType * | data () const |
const MaskType< LOG2DIM > & | valueMask () const |
Return a const reference to the bit mask of active voxels in this internal node. | |
const MaskType< LOG2DIM > & | getValueMask () const |
const MaskType< LOG2DIM > & | childMask () const |
Return a const reference to the bit mask of child nodes in this internal node. | |
const MaskType< LOG2DIM > & | getChildMask () const |
CoordType | origin () const |
Return the origin in index space of this leaf node. | |
const ValueType & | minimum () const |
Return a const reference to the minimum active value encoded in this internal node and any of its child nodes. | |
const ValueType & | maximum () const |
Return a const reference to the maximum active value encoded in this internal node and any of its child nodes. | |
const FloatType & | average () const |
Return a const reference to the average of all the active values encoded in this internal node and any of its child nodes. | |
FloatType | variance () const |
Return the variance of all the active values encoded in this internal node and any of its child nodes. | |
const FloatType & | stdDeviation () const |
Return a const reference to the standard deviation of all the active values encoded in this internal node and any of its child nodes. | |
const BBox< CoordType > & | bbox () const |
Return a const reference to the bounding box in index space of active values in this internal node and any of its child nodes. | |
ValueType | getFirstValue () const |
If the first entry in this node's table is a tile, return the tile's value. Otherwise, return the result of calling getFirstValue() on the child. | |
ValueType | getLastValue () const |
If the last entry in this node's table is a tile, return the tile's value. Otherwise, return the result of calling getLastValue() on the child. | |
ValueType | getValue (const CoordType &ijk) const |
Return the value of the given voxel. | |
bool | isActive (const CoordType &ijk) const |
bool | probeValue (const CoordType &ijk, ValueType &v) const |
return the state and updates the value of the specified voxel | |
const LeafNodeType * | probeLeaf (const CoordType &ijk) const |
ChildNodeType * | probeChild (const CoordType &ijk) |
const ChildNodeType * | probeChild (const CoordType &ijk) const |
void | localToGlobalCoord (Coord &ijk) const |
modifies local coordinates to global coordinates of a tile or child node | |
Coord | offsetToGlobalCoord (uint32_t n) const |
bool | isActive () const |
Return true if this node or any of its child nodes contain active values. | |
template<typename OpT , typename... ArgsT> | |
auto | get (const CoordType &ijk, ArgsT &&... args) const |
template<typename OpT , typename... ArgsT> | |
decltype(OpT::set(std::declval< InternalNode & >(), std::declval< uint32_t >(), std::declval< ArgsT >()...)) | set (const CoordType &ijk, ArgsT &&... args) |
void | setChild (uint32_t n, const void *ptr) |
template<typename ValueT > | |
void | setValue (uint32_t n, const ValueT &v) |
ChildT * | getChild (uint32_t n) |
Returns a pointer to the child node at the specifed linear offset. | |
const ChildT * | getChild (uint32_t n) const |
ValueT | getValue (uint32_t n) const |
bool | isActive (uint32_t n) const |
bool | isChild (uint32_t n) const |
template<typename T > | |
void | setOrigin (const T &ijk) |
const ValueT & | getMin () const |
const ValueT & | getMax () const |
void | setMin (const ValueT &v) |
void | setMax (const ValueT &v) |
void | setAvg (const StatsT &v) |
void | setDev (const StatsT &v) |
Static Public Member Functions | |
static uint32_t | dim () |
Return the dimension, in voxel units, of this internal node (typically 8*16 or 8*16*32) | |
static size_t | memUsage () |
Return memory usage in bytes for the class. | |
static uint32_t | CoordToOffset (const CoordType &ijk) |
Return the linear offset corresponding to the given coordinate. | |
static Coord | OffsetToLocalCoord (uint32_t n) |
static constexpr uint32_t | padding () |
Return padding of this class in bytes, due to aliasing and 32B alignment. | |
Public Attributes | |
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 = DataType::FIXED_SIZE |
static constexpr uint32_t | LOG2DIM = Log2Dim |
static constexpr uint32_t | TOTAL = LOG2DIM + ChildT::TOTAL |
static constexpr uint32_t | DIM = 1u << TOTAL |
static constexpr uint32_t | SIZE = 1u << (3 * LOG2DIM) |
static constexpr uint32_t | MASK = (1u << TOTAL) - 1u |
static constexpr uint32_t | LEVEL = 1 + ChildT::LEVEL |
static constexpr uint64_t | NUM_VALUES = uint64_t(1) << (3 * TOTAL) |
Friends | |
template<typename , int , int , int > | |
class | ReadAccessor |
template<typename > | |
class | RootNode |
template<typename , uint32_t > | |
class | InternalNode |
Internal nodes of a VDB treedim(),.
using ChildNodeType = ChildT |
using DataType = InternalData<ChildT, Log2Dim> |
using LeafNodeType = typename ChildT::LeafNodeType |
|
delete |
This class cannot be constructed or deleted.
|
delete |
|
delete |
Return a const reference to the average of all the active values encoded in this internal node and any of its child nodes.
Return a const reference to the bounding box in index space of active values in this internal node and any of its child nodes.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Return a const reference to the bit mask of child nodes in this internal node.
Return the linear offset corresponding to the given coordinate.
Return the dimension, in voxel units, of this internal node (typically 8*16 or 8*16*32)
|
inline |
Returns a pointer to the child node at the specifed linear offset.
|
inlineinherited |
|
inline |
If the first entry in this node's table is a tile, return the tile's value. Otherwise, return the result of calling getFirstValue() on the child.
|
inline |
If the last entry in this node's table is a tile, return the tile's value. Otherwise, return the result of calling getLastValue() on the child.
Return true if this node or any of its child nodes contain active values.
modifies local coordinates to global coordinates of a tile or child node
Return a const reference to the maximum active value encoded in this internal node and any of its child nodes.
Return a const reference to the minimum active value encoded in this internal node and any of its child nodes.
|
delete |
|
inline |
Return the origin in index space of this leaf node.
Return padding of this class in bytes, due to aliasing and 32B alignment.
|
inline |
|
inline |
|
inline |
return the state and updates the value of the specified voxel
|
inline |
|
inlineinherited |
|
inlineinherited |
Return a const reference to the standard deviation of all the active values encoded in this internal node and any of its child nodes.
Return a const reference to the bit mask of active voxels in this internal node.
|
inline |
Return the variance of all the active values encoded in this internal node and any of its child nodes.
|
friend |
|
friend |