|
OpenVDB 11.0.0
|
This file defines a minimum set of tree nodes and tools that can be used (instead of OpenVDB) to build nanovdb grids on the CPU. More...
#include <iostream>#include <map>#include <limits>#include <sstream>#include <vector>#include <cstring>#include <mutex>#include <array>#include <atomic>#include <nanovdb/NanoVDB.h>#include "Range.h"#include "ForEach.h"Go to the source code of this file.
Classes | |
| struct | RootNode< ChildT > |
| struct | RootNode< ChildT >::Tile |
| class | RootNode< ChildT >::ChildIterator |
| class | RootNode< ChildT >::ValueIterator |
| class | RootNode< ChildT >::ValueOnIterator |
| class | RootNode< ChildT >::TileIterator |
| struct | InternalNode< ChildT > |
| struct | InternalNode< ChildT >::Tile |
| class | InternalNode< ChildT >::ChildIterator |
| Visits child nodes of this node only. More... | |
| class | InternalNode< ChildT >::ValueIterator |
| Visits all tile values in this node, i.e. both inactive and active tiles. More... | |
| class | InternalNode< ChildT >::ValueOnIterator |
| Visits active tile values of this node only. More... | |
| class | InternalNode< ChildT >::DenseIterator |
| Visits all tile values and child nodes of this node. More... | |
| struct | LeafNode< BuildT > |
| class | LeafNode< BuildT >::ValueOnIterator |
| Visits all active values in a leaf node. More... | |
| class | LeafNode< BuildT >::ValueOffIterator |
| Visits all inactive values in a leaf node. More... | |
| class | LeafNode< BuildT >::ValueIterator |
| Visits all values in a leaf node, i.e. both active and inactive values. More... | |
| struct | LeafNode< ValueMask > |
| class | LeafNode< ValueMask >::ValueOnIterator |
| Visits all active values in a leaf node. More... | |
| class | LeafNode< ValueMask >::ValueOffIterator |
| Visits all inactive values in a leaf node. More... | |
| class | LeafNode< ValueMask >::ValueIterator |
| Visits all values in a leaf node, i.e. both active and inactive values. More... | |
| struct | LeafNode< bool > |
| class | LeafNode< bool >::ValueOnIterator |
| Visits all active values in a leaf node. More... | |
| class | LeafNode< bool >::ValueOffIterator |
| Visits all inactive values in a leaf node. More... | |
| class | LeafNode< bool >::ValueIterator |
| Visits all values in a leaf node, i.e. both active and inactive values. More... | |
| struct | ValueAccessor< BuildT > |
| struct | Tree< BuildT > |
| struct | Tree< BuildT >::WriteAccessor |
| struct | Grid< BuildT > |
| class | NodeManager< GridT > |
| struct | TouchLeaf< T > |
| struct | GetValue< T > |
Implements Tree::getValue(Coord), i.e. return the value associated with a specific coordinate ijk. More... | |
| struct | GetState< T > |
| Implements Tree::isActive(Coord) More... | |
| struct | SetValue< T > |
| Set the value and its state at the leaf level mapped to by ijk, and create the leaf node and branch if needed. More... | |
| struct | ProbeValue< T > |
| Implements Tree::probeLeaf(Coord) More... | |
Namespaces | |
| namespace | nanovdb |
| Convert a base-pointer to an openvdb grid, denoted srcGrid, to a nanovdb grid of the same type, e.g. float -> float or openvdb::Vec3f -> nanovdb::Vec3f. | |
| namespace | nanovdb::build |
Typedefs | |
| template<typename T > | |
| using | BuildLeaf = LeafNode< T > |
| template<typename T > | |
| using | BuildLower = InternalNode< BuildLeaf< T > > |
| template<typename T > | |
| using | BuildUpper = InternalNode< BuildLower< T > > |
| template<typename T > | |
| using | BuildRoot = RootNode< BuildUpper< T > > |
| template<typename T > | |
| using | BuildTile = typename BuildRoot< T >::Tile |
| using | FloatGrid = Grid< float > |
| using | Fp4Grid = Grid< Fp4 > |
| using | Fp8Grid = Grid< Fp8 > |
| using | Fp16Grid = Grid< Fp16 > |
| using | FpNGrid = Grid< FpN > |
| using | DoubleGrid = Grid< double > |
| using | Int32Grid = Grid< int32_t > |
| using | UInt32Grid = Grid< uint32_t > |
| using | Int64Grid = Grid< int64_t > |
| using | Vec3fGrid = Grid< Vec3f > |
| using | Vec3dGrid = Grid< Vec3d > |
| using | Vec4fGrid = Grid< Vec4f > |
| using | Vec4dGrid = Grid< Vec4d > |
| using | MaskGrid = Grid< ValueMask > |
| using | IndexGrid = Grid< ValueIndex > |
| using | OnIndexGrid = Grid< ValueOnIndex > |
| using | BoolGrid = Grid< bool > |
Functions | |
| template<typename NodeManagerT > | |
| enable_if< is_floating_point< typenameNodeManagerT::ValueType >::value >::type | sdfToLevelSet (NodeManagerT &mgr) |
| template<typename NodeManagerT > | |
| void | levelSetToFog (NodeManagerT &mgr, bool rebuild=true) |
This file defines a minimum set of tree nodes and tools that can be used (instead of OpenVDB) to build nanovdb grids on the CPU.