OpenVDB
9.0.1
|
#include <tbb/null_mutex.h>
#include <tbb/spin_mutex.h>
#include <openvdb/version.h>
#include <openvdb/Types.h>
#include <cassert>
#include <limits>
#include <type_traits>
Go to the source code of this file.
Classes | |
class | ValueAccessor0< _TreeType, IsSafe > |
ValueAccessor with no mutex and no node caching. More... | |
class | ValueAccessor1< _TreeType, IsSafe, L0 > |
Value accessor with one level of node caching. More... | |
class | ValueAccessor2< _TreeType, IsSafe, L0, L1 > |
Value accessor with two levels of node caching. More... | |
class | ValueAccessor3< _TreeType, IsSafe, L0, L1, L2 > |
Value accessor with three levels of node caching. More... | |
class | CacheItem< TreeCacheT, NodeVecT, AtRoot > |
class | ValueAccessorBase< TreeType, IsSafe > |
This base class for ValueAccessors manages registration of an accessor with a tree so that the tree can automatically clear the accessor whenever one of its nodes is deleted. More... | |
class | ValueAccessor< _TreeType, IsSafe, CacheLevels, MutexType > |
class | ValueAccessor< TreeType, IsSafe, 0, tbb::null_mutex > |
Template specialization of the ValueAccessor with no mutex and no cache levels. More... | |
class | ValueAccessor< TreeType, IsSafe, 1, tbb::null_mutex > |
Template specialization of the ValueAccessor with no mutex and one cache level. More... | |
class | ValueAccessor< TreeType, IsSafe, 2, tbb::null_mutex > |
Template specialization of the ValueAccessor with no mutex and two cache levels. More... | |
class | ValueAccessor< TreeType, IsSafe, 3, tbb::null_mutex > |
Template specialization of the ValueAccessor with no mutex and three cache levels. More... | |
class | ValueAccessorRW< TreeType, IsSafe > |
This accessor is thread-safe (at the cost of speed) for both reading and writing to a tree. That is, multiple threads may safely access a single, shared ValueAccessorRW. More... | |
class | CacheItem< TreeCacheT, NodeVecT, AtRoot > |
class | CacheItem< TreeCacheT, NodeVecT, true > |
The tail of a compile-time list of cached node pointers, ordered from LeafNode to RootNode. More... | |
class | ValueAccessor0< _TreeType, IsSafe > |
ValueAccessor with no mutex and no node caching. More... | |
class | ValueAccessor1< _TreeType, IsSafe, L0 > |
Value accessor with one level of node caching. More... | |
class | ValueAccessor2< _TreeType, IsSafe, L0, L1 > |
Value accessor with two levels of node caching. More... | |
class | ValueAccessor3< _TreeType, IsSafe, L0, L1, L2 > |
Value accessor with three levels of node caching. More... | |
Namespaces | |
openvdb | |
openvdb::v9_0 | |
openvdb::v9_0::tree | |
When traversing a grid in a spatially coherent pattern (e.g., iterating over neighboring voxels), request a ValueAccessor
from the grid (with Grid::getAccessor()) and use the accessor's getValue()
and setValue()
methods. These will typically be significantly faster than accessing voxels directly in the grid's tree.