|
class | ValueAccessor0< TreeType > |
| ValueAccessor with no mutex and no node caching. More...
|
|
class | ValueAccessor1< TreeType, L0 > |
| Value accessor with one level of node caching. More...
|
|
class | ValueAccessor2< TreeType, L0, L1 > |
| Value accessor with two levels of node caching. More...
|
|
class | ValueAccessor3< TreeType, L0, L1, L2 > |
| Value accessor with three levels of node caching. More...
|
|
struct | InvertedTree< HeadT, HeadLevel > |
| The classes below are for experts only and should rarely be used directly ///. More...
|
|
class | CacheItem< TreeCacheT, NodeVecT, AtRoot > |
|
class | ValueAccessorBase< TreeType > |
| 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, CacheLevels, MutexType > |
|
struct | ValueAccessor< TreeType, 0, tbb::null_mutex > |
|
struct | ValueAccessor< TreeType, 1, tbb::null_mutex > |
| Template specialization of the ValueAccessor with no mutex and 1 cache level. More...
|
|
struct | ValueAccessor< TreeType, 2, tbb::null_mutex > |
| Template specialization of the ValueAccessor with no mutex and 2 cache levels. More...
|
|
struct | ValueAccessor< TreeType, 3, tbb::null_mutex > |
| Template specialization of the ValueAccessor with no mutex and 3 cache levels. More...
|
|
struct | ValueAccessorRW< TreeType > |
|
struct | InvertedTree< HeadT, HeadLevel > |
| The classes below are for experts only and should rarely be used directly ///. More...
|
|
struct | InvertedTree< HeadT, 1 > |
|
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 > |
| ValueAccessor with no mutex and no node caching. More...
|
|
class | ValueAccessor1< TreeType, L0 > |
| Value accessor with one level of node caching. More...
|
|
class | ValueAccessor2< TreeType, L0, L1 > |
| Value accessor with two levels of node caching. More...
|
|
class | ValueAccessor3< TreeType, L0, L1, L2 > |
| Value accessor with three levels of node caching. More...
|
|
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.
- Example:
FloatGrid::Accessor acc = grid.getAccessor();
acc.setValue(
Coord(0, 0, 0), 100);
acc.setValue(
Coord(0, 0, 1), 100);
acc.getValue(
Coord(0, 2, 0), 100);
acc.getValue(
Coord(-1, -1, -1));
acc.getValue(
Coord(-1, -1, -2));
acc.setValue(
Coord(-1, -2, 0), -100);