OpenVDB
9.0.1
|
A LeafManager manages a linear array of pointers to a given tree's leaf nodes, as well as optional auxiliary buffers (one or more per leaf) that can be swapped with the leaf nodes' voxel data buffers. More...
#include <openvdb/Types.h>
#include <openvdb/tree/RootNode.h>
#include <tbb/blocked_range.h>
#include <tbb/parallel_for.h>
#include <tbb/parallel_reduce.h>
#include <deque>
#include <functional>
#include <type_traits>
Go to the source code of this file.
Classes | |
struct | TreeTraits< TreeT > |
Useful traits for Tree types. More... | |
struct | TreeTraits< const TreeT > |
struct | LeafManagerImpl< ManagerT > |
class | LeafManager< TreeT > |
This class manages a linear array of pointers to a given tree's leaf nodes, as well as optional auxiliary buffers (one or more per leaf) that can be swapped with the leaf nodes' voxel data buffers. More... | |
class | LeafManager< TreeT >::LeafRange |
class | LeafManager< TreeT >::LeafRange::Iterator |
struct | LeafManagerImpl< LeafManager< const TreeT > > |
Namespaces | |
openvdb | |
openvdb::v9_0 | |
openvdb::v9_0::tree | |
openvdb::v9_0::tree::leafmgr | |
A LeafManager manages a linear array of pointers to a given tree's leaf nodes, as well as optional auxiliary buffers (one or more per leaf) that can be swapped with the leaf nodes' voxel data buffers.
The leaf array is useful for multithreaded computations over leaf voxels in a tree with static topology but varying voxel values. The auxiliary buffers are convenient for temporal integration. Efficient methods are provided for multithreaded swapping and synching (i.e., copying the contents) of these buffers.