Template Class ChunkedNdtreeChunk

Class Documentation

template<typename DataT, int dim, int height>
class ChunkedNdtreeChunk

Public Types

using DataType = DataT
using BitRef = typename std::bitset<kNumInnerNodes>::reference

Public Functions

ChunkedNdtreeChunk() = default
~ChunkedNdtreeChunk() = default
bool empty() const
void clear()
size_t getMemoryUsage() const
bool hasNonzeroData() const
bool hasNonzeroData(FloatingPoint threshold) const
inline bool hasChildrenArray() const
bool hasAtLeastOneChild() const
inline void deleteChildrenArray()
bool hasChild(LinearIndex relative_child_index) const
bool eraseChild(LinearIndex relative_child_index)
ChunkedNdtreeChunk *getChild(LinearIndex relative_child_index)
const ChunkedNdtreeChunk *getChild(LinearIndex relative_child_index) const
template<typename ...DefaultArgs>
ChunkedNdtreeChunk &getOrAllocateChild(LinearIndex relative_child_index, DefaultArgs&&... args)
bool nodeHasNonzeroData(LinearIndex relative_node_index) const
bool nodeHasNonzeroData(LinearIndex relative_node_index, FloatingPoint threshold) const
DataT &nodeData(LinearIndex relative_node_index)
const DataT &nodeData(LinearIndex relative_node_index) const
BitRef nodeHasAtLeastOneChild(LinearIndex relative_node_index)
bool nodeHasAtLeastOneChild(LinearIndex relative_node_index) const
template<typename ...DefaultArgs>
ChunkedNdtreeChunk<DataT, dim, height> &getOrAllocateChild(LinearIndex relative_child_index, DefaultArgs&&... args)

Public Static Attributes

static constexpr int kDim = dim
static constexpr int kHeight = height
static constexpr int kNumInnerNodes = tree_math::perfect_tree::num_total_nodes<dim>(height)
static constexpr int kNumChildren = tree_math::perfect_tree::num_leaf_nodes<dim>(height + 1)

Friends

inline friend bool operator==(const ChunkedNdtreeChunk &lhs, const ChunkedNdtreeChunk &rhs)