OpenVDB 10.0.1
|
NodeManager allows for sequential access to nodes. More...
#include <nanovdb/util/NodeManager.h>
Public Member Functions | |
NodeManager (const NodeManager &)=delete | |
NodeManager (NodeManager &&)=delete | |
NodeManager & | operator= (const NodeManager &)=delete |
NodeManager & | operator= (NodeManager &&)=delete |
~NodeManager ()=delete | |
bool | isLinear () const |
return true if the nodes have both fixed size and are arranged breadth-first in memory. This allows for direct and memory-efficient linear access to nodes. | |
uint64_t | memUsage () const |
Return the memory footprint in bytes of this instance. | |
GridT & | grid () |
Return a reference to the grid. | |
const GridT & | grid () const |
TreeT & | tree () |
Return a reference to the tree. | |
const TreeT & | tree () const |
RootT & | root () |
Return a reference to the root. | |
const RootT & | root () const |
uint64_t | nodeCount (int level) const |
Return the number of tree nodes at the specified level. | |
template<int LEVEL> | |
const NodeT< LEVEL > & | node (uint32_t i) const |
Return the i'th leaf node with respect to breadth-first ordering. | |
template<int LEVEL> | |
NodeT< LEVEL > & | node (uint32_t i) |
Return the i'th node with respect to breadth-first ordering. | |
const Node0 & | leaf (uint32_t i) const |
Return the i'th leaf node with respect to breadth-first ordering. | |
Node0 & | leaf (uint32_t i) |
const Node1 & | lower (uint32_t i) const |
Return the i'th lower internal node with respect to breadth-first ordering. | |
Node1 & | lower (uint32_t i) |
const Node2 & | upper (uint32_t i) const |
Return the i'th upper internal node with respect to breadth-first ordering. | |
Node2 & | upper (uint32_t i) |
Static Public Member Functions | |
static bool | isLinear (const GridT &grid) |
return true if the nodes have both fixed size and are arranged breadth-first in memory. This allows for direct and memory-efficient linear access to nodes. | |
static uint64_t | memUsage (const GridT &grid) |
Return the memory footprint in bytes of the NodeManager derived from the specified grid. | |
NodeManager allows for sequential access to nodes.
This class allows for sequential access to nodes in a NanoVDB tree.
Nodes are always arranged breadth first during sequential access of nodes at a particular level.
|
delete |
|
delete |
|
delete |
return true if the nodes have both fixed size and are arranged breadth-first in memory. This allows for direct and memory-efficient linear access to nodes.
return true if the nodes have both fixed size and are arranged breadth-first in memory. This allows for direct and memory-efficient linear access to nodes.
Return the i'th leaf node with respect to breadth-first ordering.
Return the i'th lower internal node with respect to breadth-first ordering.
Return the memory footprint in bytes of this instance.
Return the memory footprint in bytes of the NodeManager derived from the specified grid.
Return the i'th node with respect to breadth-first ordering.
|
inline |
Return the i'th leaf node with respect to breadth-first ordering.
Return the number of tree nodes at the specified level.
0 is leaf, 1 is lower internal, and 2 is upper internal level
|
delete |
|
delete |
|
inline |
Return a reference to the tree.