OpenVDB 3.2.0

Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
openvdb::v3_2_0 Namespace Reference

## Namespaces
| io
| math
| tools
| tree
| util

## Classes
class | ArithmeticError
struct | CanConvertType
| CanConvertType<FromType, ToType>::value is `true` if a value of type ToType can be constructed from a value of type FromType. More...
struct | CanConvertType< math::Vec2< T >, math::Vec2< T > >
struct | CanConvertType< math::Vec3< T >, math::Vec3< T > >
struct | CanConvertType< math::Vec4< T >, math::Vec4< T > >
struct | CanConvertType< PointDataIndex32, PointIndex32 >
struct | CanConvertType< PointIndex32, PointDataIndex32 >
struct | CanConvertType< T, math::Vec2< T > >
struct | CanConvertType< T, math::Vec3< T > >
struct | CanConvertType< T, math::Vec4< T > >
struct | CanConvertType< T, ValueMask >
struct | CanConvertType< T0, math::Vec2< T1 > >
struct | CanConvertType< T0, math::Vec3< T1 > >
struct | CanConvertType< T0, math::Vec4< T1 > >
struct | CanConvertType< ValueMask, T >
class | CombineArgs
| This struct collects both input and output arguments to "grid combiner" functors used with the tree::TypedGrid::combineExtended() and combine2Extended() methods. AValueType and BValueType are the value types of the two grids being combined. More...
class | Exception
class | Grid
| Container class that associates a tree with a transform and metadata. More...
class | GridBase
| Abstract base class for typed grids. More...
struct | GridNamePred
| Predicate functor that returns `true` for grids that have a specified name. More...
class | IllegalValueException
class | IndexError
class | IoError
class | KeyError
class | LookupError
class | Metadata
| Base class for storing metadata information in a grid. More...
class | MetaMap
| Container that maps names (strings) to values of arbitrary types. More...
class | NotImplementedError
class | PartialCreate
struct | PointIndex
| Integer wrapper, required to distinguish PointIndexGrid and PointDataGrid from Int32Grid and Int64Grid. More...
class | ReferenceError
class | RuntimeError
class | ShallowCopy
struct | SwappedCombineOp
class | TopologyCopy
struct | TreeAdapter
| This adapter allows code that is templated on a Tree type to accept either a Tree type or a Grid type. More...
struct | TreeAdapter< Grid< _TreeType > >
| Partial specialization for Grid types. More...
struct | TreeAdapter< tree::ValueAccessor< _TreeType > >
| Partial specialization for ValueAccessor types. More...
class | TypedMetadata
| Templated metadata class to hold specific types. More...
class | TypeError
class | UnknownMetadata
| Subclass to read (and ignore) data of an unregistered type. More...
class | ValueError
class | ValueMask
struct | VecTraits
struct | VecTraits< math::Vec2< T > >
struct | VecTraits< math::Vec3< T > >
struct | VecTraits< math::Vec4< T > >
struct | VersionId

## Typedefs
typedef tree::TreeBase | TreeBase
typedef std::vector< GridBase::Ptr > | GridPtrVec
typedef GridPtrVec::iterator | GridPtrVecIter
typedef GridPtrVec::const_iterator | GridPtrVecCIter
typedef boost::shared_ptr< GridPtrVec > | GridPtrVecPtr
typedef std::vector< GridBase::ConstPtr > | GridCPtrVec
typedef GridCPtrVec::iterator | GridCPtrVecIter
typedef GridCPtrVec::const_iterator | GridCPtrVecCIter
typedef boost::shared_ptr< GridCPtrVec > | GridCPtrVecPtr
typedef std::set< GridBase::Ptr > | GridPtrSet
typedef GridPtrSet::iterator | GridPtrSetIter
typedef GridPtrSet::const_iterator | GridPtrSetCIter
typedef boost::shared_ptr< GridPtrSet > | GridPtrSetPtr
typedef std::set< GridBase::ConstPtr > | GridCPtrSet
typedef GridCPtrSet::iterator | GridCPtrSetIter
typedef GridCPtrSet::const_iterator | GridCPtrSetCIter
typedef boost::shared_ptr< GridCPtrSet > | GridCPtrSetPtr
typedef tree::Tree4< ValueMask, 5, 4, 3 >::Type | MaskTree
| Common tree types. More...
typedef tree::Tree4< bool, 5, 4, 3 >::Type | BoolTree
typedef tree::Tree4< float, 5, 4, 3 >::Type | FloatTree
typedef tree::Tree4< double, 5, 4, 3 >::Type | DoubleTree
typedef tree::Tree4< int32_t, 5, 4, 3 >::Type | Int32Tree
typedef tree::Tree4< uint32_t, 5, 4, 3 >::Type | UInt32Tree
typedef tree::Tree4< int64_t, 5, 4, 3 >::Type | Int64Tree
typedef tree::Tree4< Vec2i, 5, 4, 3 >::Type | Vec2ITree
typedef tree::Tree4< Vec2s, 5, 4, 3 >::Type | Vec2STree
typedef tree::Tree4< Vec2d, 5, 4, 3 >::Type | Vec2DTree
typedef tree::Tree4< Vec3i, 5, 4, 3 >::Type | Vec3ITree
typedef tree::Tree4< Vec3f, 5, 4, 3 >::Type | Vec3STree
typedef tree::Tree4< Vec3d, 5, 4, 3 >::Type | Vec3DTree
typedef tree::Tree4< std::string, 5, 4, 3 >::Type | StringTree
typedef MaskTree | TopologyTree
typedef Vec3STree | Vec3fTree
typedef Vec3DTree | Vec3dTree
typedef FloatTree | ScalarTree
typedef Vec3fTree | VectorTree
typedef Grid< MaskTree > | MaskGrid
| Common grid types. More...
typedef Grid< BoolTree > | BoolGrid
typedef Grid< FloatTree > | FloatGrid
typedef Grid< DoubleTree > | DoubleGrid
typedef Grid< Int32Tree > | Int32Grid
typedef Grid< Int64Tree > | Int64Grid
typedef Grid< Vec3ITree > | Vec3IGrid
typedef Grid< Vec3STree > | Vec3SGrid
typedef Grid< Vec3DTree > | Vec3DGrid
typedef Grid< StringTree > | StringGrid
typedef Vec3SGrid | Vec3fGrid
typedef Vec3DGrid | Vec3dGrid
typedef FloatGrid | ScalarGrid
typedef Vec3fGrid | VectorGrid
typedef MaskGrid | TopologyGrid
typedef uint32_t | Index32
typedef uint64_t | Index64
typedef Index32 | Index
typedef int16_t | Int16
typedef int32_t | Int32
typedef int64_t | Int64
typedef Int32 | Int
typedef unsigned char | Byte
typedef double | Real
typedef math::Vec2< Real > | Vec2R
typedef math::Vec2< Index32 > | Vec2I
typedef math::Vec2< float > | Vec2f
typedef math::Vec2< half > | Vec2H
typedef math::Vec3< Real > | Vec3R
typedef math::Vec3< Index32 > | Vec3I
typedef math::Vec3< float > | Vec3f
typedef math::Vec3< half > | Vec3H
typedef math::BBox< Vec3d > | BBoxd
typedef math::Vec4< Real > | Vec4R
typedef math::Vec4< Index32 > | Vec4I
typedef math::Vec4< float > | Vec4f
typedef math::Vec4< half > | Vec4H
typedef math::Mat3< Real > | Mat3R
typedef math::Mat4< Real > | Mat4R
typedef math::Mat4< double > | Mat4d
typedef math::Mat4< float > | Mat4s
typedef math::Quat< Real > | QuatR
typedef PointIndex< Index32, 0 > | PointIndex32
typedef PointIndex< Index64, 0 > | PointIndex64
typedef PointIndex< Index32, 1 > | PointDataIndex32
typedef PointIndex< Index64, 1 > | PointDataIndex64
typedef TypedMetadata< bool > | BoolMetadata
typedef TypedMetadata< double > | DoubleMetadata
typedef TypedMetadata< float > | FloatMetadata
typedef TypedMetadata< boost::int32_t > | Int32Metadata
typedef TypedMetadata< boost::int64_t > | Int64Metadata
typedef TypedMetadata< Vec2d > | Vec2DMetadata
typedef TypedMetadata< Vec2i > | Vec2IMetadata
typedef TypedMetadata< Vec2s > | Vec2SMetadata
typedef TypedMetadata< Vec3d > | Vec3DMetadata
typedef TypedMetadata< Vec3i > | Vec3IMetadata
typedef TypedMetadata< Vec3s > | Vec3SMetadata
typedef TypedMetadata< Mat4s > | Mat4SMetadata
typedef TypedMetadata< Mat4d > | Mat4DMetadata
typedef TypedMetadata< std::string > | StringMetadata
typedef std::string | Name

## Enumerations
enum | GridClass { GRID_UNKNOWN = 0, GRID_LEVEL_SET, GRID_FOG_VOLUME, GRID_STAGGERED }
enum | { NUM_GRID_CLASSES = GRID_STAGGERED + 1 }
enum | VecType { VEC_INVARIANT = 0, VEC_COVARIANT, VEC_COVARIANT_NORMALIZE, VEC_CONTRAVARIANT_RELATIVE, VEC_CONTRAVARIANT_ABSOLUTE }
enum | { NUM_VEC_TYPES = VEC_CONTRAVARIANT_ABSOLUTE + 1 }
enum | MergePolicy { MERGE_ACTIVE_STATES = 0, MERGE_NODES, MERGE_ACTIVE_STATES_AND_NODES }
enum | CopyPolicy { CP_NEW, CP_SHARE, CP_COPY }
enum | { OPENVDB_FILE_VERSION_ROOTNODE_MAP = 213, OPENVDB_FILE_VERSION_INTERNALNODE_COMPRESSION = 214, OPENVDB_FILE_VERSION_SIMPLIFIED_GRID_TYPENAME = 215, OPENVDB_FILE_VERSION_GRID_INSTANCING = 216, OPENVDB_FILE_VERSION_BOOL_LEAF_OPTIMIZATION = 217, OPENVDB_FILE_VERSION_BOOST_UUID = 218, OPENVDB_FILE_VERSION_NO_GRIDMAP = 219, OPENVDB_FILE_VERSION_NEW_TRANSFORM = 219, OPENVDB_FILE_VERSION_SELECTIVE_COMPRESSION = 220, OPENVDB_FILE_VERSION_FLOAT_FRUSTUM_BBOX = 221, OPENVDB_FILE_VERSION_NODE_MASK_COMPRESSION = 222, OPENVDB_FILE_VERSION_BLOSC_COMPRESSION = 223, OPENVDB_FILE_VERSION_POINT_INDEX_GRID = 223 }
| Notable file format version numbers. More...

## Functions
template<typename GridType >
GridType::Ptr | createGrid (const typename GridType::ValueType &background)
| Create a new grid of type `GridType` with a given background value. More...
template<typename GridType >
GridType::Ptr | createGrid ()
| Create a new grid of type `GridType` with background value zero. More...
template<typename TreePtrType >
Grid< typename TreePtrType::element_type >::Ptr | createGrid (TreePtrType)
| Create a new grid of the appropriate type that wraps the given tree. More...
template<typename GridType >
GridType::Ptr | createLevelSet (Real voxelSize=1.0, Real halfWidth=LEVEL_SET_HALF_WIDTH)
| Create a new grid of type `GridType` classified as a "Level Set", i.e., a narrow-band level set. More...
template<typename GridPtrContainerT >
GridPtrContainerT::value_type | findGridByName (const GridPtrContainerT &container, const Name &name)
| Return the first grid in the given container whose name is name. More...
template<typename KeyT , typename GridPtrT >
GridPtrT | findGridByName (const std::map< KeyT, GridPtrT > &container, const Name &name)
| Return the first grid in the given map whose name is name. More...
template<typename GridType >
GridType::Ptr | gridPtrCast (const GridBase::Ptr &grid)
| Cast a generic grid pointer to a pointer to a grid of a concrete class. More...
template<typename GridType >
GridType::ConstPtr | gridConstPtrCast (const GridBase::ConstPtr &grid)
| Cast a generic const grid pointer to a const pointer to a grid of a concrete class. More...
OPENVDB_IMPORT void | initialize ()
| Global registration of basic types. More...
OPENVDB_IMPORT void | uninitialize ()
| Global deregistration of basic types. More...
template<typename T >
const char * | typeNameAsString ()
template<>
const char * | typeNameAsString< bool > ()
template<>
const char * | typeNameAsString< ValueMask > ()
template<>
const char * | typeNameAsString< float > ()
template<>
const char * | typeNameAsString< double > ()
template<>
const char * | typeNameAsString< int32_t > ()
template<>
const char * | typeNameAsString< uint32_t > ()
template<>
const char * | typeNameAsString< int64_t > ()
template<>
const char * | typeNameAsString< Vec2i > ()
template<>
const char * | typeNameAsString< Vec2s > ()
template<>
const char * | typeNameAsString< Vec2d > ()
template<>
const char * | typeNameAsString< Vec3i > ()
template<>
const char * | typeNameAsString< Vec3f > ()
template<>
const char * | typeNameAsString< Vec3d > ()
template<>
const char * | typeNameAsString< std::string > ()
template<>
const char * | typeNameAsString< Mat4s > ()
template<>
const char * | typeNameAsString< Mat4d > ()
template<>
const char * | typeNameAsString< PointIndex32 > ()
template<>
const char * | typeNameAsString< PointIndex64 > ()
template<>
const char * | typeNameAsString< PointDataIndex32 > ()
template<>
const char * | typeNameAsString< PointDataIndex64 > ()
const char * | getLibraryVersionString ()
| Return a library version number string of the form "<major>.<minor>.<patch>". More...
template<>
math::Mat4s | zeroVal< math::Mat4s > ()
template<>
math::Mat4d | zeroVal< math::Mat4d > ()
template<typename T >
T | zeroVal ()
| Return the value of type T that corresponds to zero. More...
template<>
std::string | zeroVal< std::string > ()
| Return the `std::string` value that corresponds to zero. More...
template<>
bool | zeroVal< bool > ()
| Return the `bool` value that corresponds to zero. More...
std::ostream & | operator<< (std::ostream &ostr, const Metadata &metadata)
| Write a Metadata to an output stream. More...
std::ostream & | operator<< (std::ostream &, const MetaMap &)
| Write a MetaMap to an output stream. More...
Name | readString (std::istream &is)
void | writeString (std::ostream &os, const Name &name)
template<typename GridType >
GridType::Ptr | deepCopyTypedGrid (const GridBase::ConstPtr &grid)
| Return a pointer to a deep copy of the given grid, provided that the grid's concrete type is `GridType`. More...
template<typename GridType >
GridType::Ptr | deepCopyTypedGrid (const GridBase &grid)
| Return a pointer to a deep copy of the given grid, provided that the grid's concrete type is `GridType`. More...
std::string | operator+ (const std::string &s, bool)
| Needed to support the `(zeroVal<ValueType>() + val)` idiom when `ValueType` is `std::string`. More...
std::string | operator+ (const std::string &s, int)
| Needed to support the `(zeroVal<ValueType>() + val)` idiom when `ValueType` is `std::string`. More...
std::string | operator+ (const std::string &s, float)
| Needed to support the `(zeroVal<ValueType>() + val)` idiom when `ValueType` is `std::string`. More...
std::string | operator+ (const std::string &s, double)
| Needed to support the `(zeroVal<ValueType>() + val)` idiom when `ValueType` is `std::string`. More...

## Variables
static const Real | LEVEL_SET_HALF_WIDTH = 3
const int32_t | OPENVDB_MAGIC = 0x56444220
| The magic number is stored in the first four bytes of every VDB file. More...
const uint32_t | OPENVDB_LIBRARY_MAJOR_VERSION = 3
const uint32_t | OPENVDB_LIBRARY_MINOR_VERSION = 2
const uint32_t | OPENVDB_LIBRARY_PATCH_VERSION = 0
const uint32_t | OPENVDB_LIBRARY_VERSION = (( 3 << 24) | (( 2 & 0xFF) << 16) | ( 0 & 0xFFFF))
| Library version number as a packed integer ("%02x%02x%04x", major, minor, patch) More...
const uint32_t | OPENVDB_FILE_VERSION = 223
| The current version number of the VDB file format. More...

## Typedef Documentation

## ◆ BBoxd

typedef math::BBox<Vec3d> BBoxd

## ◆ BoolGrid

typedef Grid<BoolTree> BoolGrid

## ◆ BoolMetadata

typedef TypedMetadata<bool> BoolMetadata

## ◆ BoolTree

typedef tree::Tree4<bool, 5, 4, 3>::Type BoolTree

## ◆ Byte

typedef unsigned char Byte

## ◆ DoubleGrid

typedef Grid<DoubleTree> DoubleGrid

## ◆ DoubleMetadata

typedef TypedMetadata<double> DoubleMetadata

## ◆ DoubleTree

typedef tree::Tree4<double, 5, 4, 3>::Type DoubleTree

## ◆ FloatGrid

typedef Grid<FloatTree> FloatGrid

## ◆ FloatMetadata

typedef TypedMetadata<float> FloatMetadata

## ◆ FloatTree

typedef tree::Tree4<float, 5, 4, 3>::Type FloatTree

## ◆ GridCPtrSet

typedef std::set<GridBase::ConstPtr> GridCPtrSet

## ◆ GridCPtrSetCIter

typedef GridCPtrSet::const_iterator GridCPtrSetCIter

## ◆ GridCPtrSetIter

typedef GridCPtrSet::iterator GridCPtrSetIter

## ◆ GridCPtrSetPtr

typedef boost::shared_ptr<GridCPtrSet> GridCPtrSetPtr

## ◆ GridCPtrVec

typedef std::vector<GridBase::ConstPtr> GridCPtrVec

## ◆ GridCPtrVecCIter

typedef GridCPtrVec::const_iterator GridCPtrVecCIter

## ◆ GridCPtrVecIter

typedef GridCPtrVec::iterator GridCPtrVecIter

## ◆ GridCPtrVecPtr

typedef boost::shared_ptr<GridCPtrVec> GridCPtrVecPtr

## ◆ GridPtrSet

typedef std::set<GridBase::Ptr> GridPtrSet

## ◆ GridPtrSetCIter

typedef GridPtrSet::const_iterator GridPtrSetCIter

## ◆ GridPtrSetIter

typedef GridPtrSet::iterator GridPtrSetIter

## ◆ GridPtrSetPtr

typedef boost::shared_ptr<GridPtrSet> GridPtrSetPtr

## ◆ GridPtrVec

typedef std::vector<GridBase::Ptr> GridPtrVec

## ◆ GridPtrVecCIter

typedef GridPtrVec::const_iterator GridPtrVecCIter

## ◆ GridPtrVecIter

typedef GridPtrVec::iterator GridPtrVecIter

## ◆ GridPtrVecPtr

typedef boost::shared_ptr<GridPtrVec> GridPtrVecPtr

## ◆ Index

typedef Index32 Index

## ◆ Index32

typedef uint32_t Index32

## ◆ Index64

typedef uint64_t Index64

## ◆ Int

typedef Int32 Int

## ◆ Int16

typedef int16_t Int16

## ◆ Int32

typedef int32_t Int32

## ◆ Int32Grid

typedef Grid<Int32Tree> Int32Grid

## ◆ Int32Metadata

typedef TypedMetadata<boost::int32_t> Int32Metadata

## ◆ Int32Tree

typedef tree::Tree4<int32_t, 5, 4, 3>::Type Int32Tree

## ◆ Int64

typedef int64_t Int64

## ◆ Int64Grid

typedef Grid<Int64Tree> Int64Grid

## ◆ Int64Metadata

typedef TypedMetadata<boost::int64_t> Int64Metadata

## ◆ Int64Tree

typedef tree::Tree4<int64_t, 5, 4, 3>::Type Int64Tree

## ◆ MaskGrid

typedef Grid<MaskTree> MaskGrid

Common grid types.

## ◆ MaskTree

typedef tree::Tree4<ValueMask, 5, 4, 3>::Type MaskTree

Common tree types.

## ◆ Mat3R

typedef math::Mat3<Real> Mat3R

## ◆ Mat4d

typedef math::Mat4<double> Mat4d

## ◆ Mat4DMetadata

typedef TypedMetadata<Mat4d> Mat4DMetadata

## ◆ Mat4R

typedef math::Mat4<Real> Mat4R

## ◆ Mat4s

typedef math::Mat4<float> Mat4s

## ◆ Mat4SMetadata

typedef TypedMetadata<Mat4s> Mat4SMetadata

## ◆ Name

typedef std::string Name

## ◆ PointDataIndex32

typedef PointIndex<Index32, 1> PointDataIndex32

## ◆ PointDataIndex64

typedef PointIndex<Index64, 1> PointDataIndex64

## ◆ PointIndex32

typedef PointIndex<Index32, 0> PointIndex32

## ◆ PointIndex64

typedef PointIndex<Index64, 0> PointIndex64

## ◆ QuatR

typedef math::Quat<Real> QuatR

## ◆ Real

typedef double Real

## ◆ ScalarGrid

typedef FloatGrid ScalarGrid

## ◆ ScalarTree

typedef FloatTree ScalarTree

## ◆ StringGrid

typedef Grid<StringTree> StringGrid

## ◆ StringMetadata

typedef TypedMetadata<std::string> StringMetadata

## ◆ StringTree

typedef tree::Tree4<std::string, 5, 4, 3>::Type StringTree

## ◆ TopologyGrid

typedef MaskGrid TopologyGrid

## ◆ TopologyTree

typedef MaskTree TopologyTree

## ◆ TreeBase

typedef tree::TreeBase TreeBase

## ◆ UInt32Tree

typedef tree::Tree4<uint32_t, 5, 4, 3>::Type UInt32Tree

## ◆ Vec2DMetadata

typedef TypedMetadata<Vec2d> Vec2DMetadata

## ◆ Vec2DTree

typedef tree::Tree4<Vec2d, 5, 4, 3>::Type Vec2DTree

## ◆ Vec2f

typedef math::Vec2<float> Vec2f

## ◆ Vec2H

typedef math::Vec2<half> Vec2H

## ◆ Vec2I

typedef math::Vec2<Index32> Vec2I

## ◆ Vec2IMetadata

typedef TypedMetadata<Vec2i> Vec2IMetadata

## ◆ Vec2ITree

typedef tree::Tree4<Vec2i, 5, 4, 3>::Type Vec2ITree

## ◆ Vec2R

typedef math::Vec2<Real> Vec2R

## ◆ Vec2SMetadata

typedef TypedMetadata<Vec2s> Vec2SMetadata

## ◆ Vec2STree

typedef tree::Tree4<Vec2s, 5, 4, 3>::Type Vec2STree

## ◆ Vec3DGrid

typedef Grid<Vec3DTree> Vec3DGrid

## ◆ Vec3dGrid

typedef Vec3DGrid Vec3dGrid

## ◆ Vec3DMetadata

typedef TypedMetadata<Vec3d> Vec3DMetadata

## ◆ Vec3DTree

typedef tree::Tree4<Vec3d, 5, 4, 3>::Type Vec3DTree

## ◆ Vec3dTree

typedef Vec3DTree Vec3dTree

## ◆ Vec3f

typedef math::Vec3<float> Vec3f

## ◆ Vec3fGrid

typedef Vec3SGrid Vec3fGrid

## ◆ Vec3fTree

typedef Vec3STree Vec3fTree

## ◆ Vec3H

typedef math::Vec3<half> Vec3H

## ◆ Vec3I

typedef math::Vec3<Index32> Vec3I

## ◆ Vec3IGrid

typedef Grid<Vec3ITree> Vec3IGrid

## ◆ Vec3IMetadata

typedef TypedMetadata<Vec3i> Vec3IMetadata

## ◆ Vec3ITree

typedef tree::Tree4<Vec3i, 5, 4, 3>::Type Vec3ITree

## ◆ Vec3R

typedef math::Vec3<Real> Vec3R

## ◆ Vec3SGrid

typedef Grid<Vec3STree> Vec3SGrid

## ◆ Vec3SMetadata

typedef TypedMetadata<Vec3s> Vec3SMetadata

## ◆ Vec3STree

typedef tree::Tree4<Vec3f, 5, 4, 3>::Type Vec3STree

## ◆ Vec4f

typedef math::Vec4<float> Vec4f

## ◆ Vec4H

typedef math::Vec4<half> Vec4H

## ◆ Vec4I

typedef math::Vec4<Index32> Vec4I

## ◆ Vec4R

typedef math::Vec4<Real> Vec4R

## ◆ VectorGrid

typedef Vec3fGrid VectorGrid

## ◆ VectorTree

typedef Vec3fTree VectorTree

## Enumeration Type Documentation

## ◆ anonymous enum

anonymous enum

Enumerator
NUM_GRID_CLASSES |

## ◆ anonymous enum

anonymous enum

Enumerator
NUM_VEC_TYPES |

## ◆ anonymous enum

anonymous enum

Notable file format version numbers.

Enumerator
OPENVDB_FILE_VERSION_ROOTNODE_MAP |
OPENVDB_FILE_VERSION_INTERNALNODE_COMPRESSION |
OPENVDB_FILE_VERSION_SIMPLIFIED_GRID_TYPENAME |
OPENVDB_FILE_VERSION_GRID_INSTANCING |
OPENVDB_FILE_VERSION_BOOL_LEAF_OPTIMIZATION |
OPENVDB_FILE_VERSION_BOOST_UUID |
OPENVDB_FILE_VERSION_NO_GRIDMAP |
OPENVDB_FILE_VERSION_NEW_TRANSFORM |
OPENVDB_FILE_VERSION_SELECTIVE_COMPRESSION |
OPENVDB_FILE_VERSION_FLOAT_FRUSTUM_BBOX |
OPENVDB_FILE_VERSION_NODE_MASK_COMPRESSION |
OPENVDB_FILE_VERSION_BLOSC_COMPRESSION |
OPENVDB_FILE_VERSION_POINT_INDEX_GRID |

## ◆ CopyPolicy

enum CopyPolicy

In copy constructors, members stored as shared pointers can be handled in several ways:

CP_NEW

  Don't copy the member; default construct a new member object instead.

CP_SHARE

  Copy the shared pointer, so that the original and new objects share the same member.

CP_COPY
  Create a deep copy of the member.

Enumerator
CP_NEW |
CP_SHARE |
CP_COPY |

## ◆ GridClass

enum GridClass

Enumerator
GRID_UNKNOWN |
GRID_LEVEL_SET |
GRID_FOG_VOLUME |
GRID_STAGGERED |

## ◆ MergePolicy

enum MergePolicy

Specify how grids should be merged during certain (typically multithreaded) operations.

MERGE_ACTIVE_STATES

  The output grid is active wherever any of the input grids is active.

MERGE_NODES

  The output grid's tree has a node wherever any of the input grids' trees has a node, regardless of any active states.

MERGE_ACTIVE_STATES_AND_NODES
  The output grid is active wherever any of the input grids is active, and its tree has a node wherever any of the input grids' trees has a node.

Enumerator
MERGE_ACTIVE_STATES |
MERGE_NODES |
MERGE_ACTIVE_STATES_AND_NODES |

## ◆ VecType

enum VecType

The type of a vector determines how transforms are applied to it:

Invariant

  Does not transform (e.g., tuple, uvw, color)

Covariant

  Apply inverse-transpose transformation: w = 0, ignores translation (e.g., gradient/normal)

Covariant Normalize

  Apply inverse-transpose transformation: w = 0, ignores translation, vectors are renormalized (e.g., unit normal)

Contravariant Relative

  Apply "regular" transformation: w = 0, ignores translation (e.g., displacement, velocity, acceleration)

Contravariant Absolute
  Apply "regular" transformation: w = 1, vector translates (e.g., position)

Enumerator
VEC_INVARIANT |
VEC_COVARIANT |
VEC_COVARIANT_NORMALIZE |
VEC_CONTRAVARIANT_RELATIVE |
VEC_CONTRAVARIANT_ABSOLUTE |

## Function Documentation

## ◆ createGrid() [1/3]

GridType::Ptr createGrid | ( | const typename GridType::ValueType & | background | ) |
| inline

Create a new grid of type `GridType` with a given background value.

Note
  Calling createGrid<GridType>(background) is equivalent to calling GridType::create(background).

## ◆ createGrid() [2/3]

GridType::Ptr createGrid | ( |  | ) |
| inline

Create a new grid of type `GridType` with background value zero.

Note
  Calling createGrid<GridType>() is equivalent to calling GridType::create().

## ◆ createGrid() [3/3]

Grid< typename TreePtrType::element_type >::Ptr createGrid | ( | TreePtrType | tree | ) |
| inline

Create a new grid of the appropriate type that wraps the given tree.

Note
  This function can be called without specifying the template argument, i.e., as createGrid(tree).

## ◆ createLevelSet()

GridType::Ptr createLevelSet | ( | Real | voxelSize = `1.0`,
|  | Real | halfWidth = `LEVEL_SET_HALF_WIDTH`
| ) |  |

Create a new grid of type `GridType` classified as a "Level Set", i.e., a narrow-band level set.

Note
  `GridType::ValueType` must be a floating-point scalar.

Parameters

  voxelSize | the size of a voxel in world units
  halfWidth | the half width of the narrow band in voxel units

The voxel size and the narrow band half width define the grid's background value as halfWidth*voxelWidth. The transform is linear with a uniform scaling only corresponding to the specified voxel size.

Note
  It is generally advisable to specify a half-width of the narrow band that is larger than one voxel unit, otherwise zero crossings are not guaranteed.

## ◆ deepCopyTypedGrid() [1/2]

GridType::Ptr openvdb::v3_2_0::deepCopyTypedGrid | ( | const GridBase::ConstPtr & | grid | ) |
| inline

Return a pointer to a deep copy of the given grid, provided that the grid's concrete type is `GridType`.

Return a null pointer if the input pointer is null or if it points to a grid that is not of type `GridType`.

## ◆ deepCopyTypedGrid() [2/2]

GridType::Ptr openvdb::v3_2_0::deepCopyTypedGrid | ( | const GridBase & | grid | ) |
| inline

Return a pointer to a deep copy of the given grid, provided that the grid's concrete type is `GridType`.

Return a null pointer if the input pointer is null or if it points to a grid that is not of type `GridType`.

## ◆ findGridByName() [1/2]

GridPtrContainerT::value_type openvdb::v3_2_0::findGridByName | ( | const GridPtrContainerT & | container,
|  | const Name & | name
| ) |  |
| inline

Return the first grid in the given container whose name is name.

## ◆ findGridByName() [2/2]

GridPtrT openvdb::v3_2_0::findGridByName | ( | const std::map< KeyT, GridPtrT > & | container,
|  | const Name & | name
| ) |  |
| inline

Return the first grid in the given map whose name is name.

## ◆ getLibraryVersionString()

const char* openvdb::v3_2_0::getLibraryVersionString | ( |  | ) |
| inline

Return a library version number string of the form "<major>.<minor>.<patch>".

## ◆ gridConstPtrCast()

GridType::ConstPtr openvdb::v3_2_0::gridConstPtrCast | ( | const GridBase::ConstPtr & | grid | ) |
| inline

Cast a generic const grid pointer to a const pointer to a grid of a concrete class.

Return a null pointer if the input pointer is null or if it points to a grid that is not of type `GridType`.

Note
  Calling gridConstPtrCast<GridType>(grid) is equivalent to calling GridBase::constGrid<GridType>(grid).

## ◆ gridPtrCast()

GridType::Ptr openvdb::v3_2_0::gridPtrCast | ( | const GridBase::Ptr & | grid | ) |
| inline

Cast a generic grid pointer to a pointer to a grid of a concrete class.

Return a null pointer if the input pointer is null or if it points to a grid that is not of type `GridType`.

Note
  Calling gridPtrCast<GridType>(grid) is equivalent to calling GridBase::grid<GridType>(grid).

## ◆ initialize()

OPENVDB_IMPORT void openvdb::v3_2_0::initialize | ( |  | ) |

Global registration of basic types.

## ◆ operator+() [1/4]

std::string openvdb::v3_2_0::operator+ | ( | const std::string & | s,
|  | bool |
| ) |  |
| inline

Needed to support the `(zeroVal<ValueType>() + val)` idiom when `ValueType` is `std::string`.

## ◆ operator+() [2/4]

std::string openvdb::v3_2_0::operator+ | ( | const std::string & | s,
|  | int |
| ) |  |
| inline

Needed to support the `(zeroVal<ValueType>() + val)` idiom when `ValueType` is `std::string`.

## ◆ operator+() [3/4]

std::string openvdb::v3_2_0::operator+ | ( | const std::string & | s,
|  | float |
| ) |  |
| inline

Needed to support the `(zeroVal<ValueType>() + val)` idiom when `ValueType` is `std::string`.

## ◆ operator+() [4/4]

std::string openvdb::v3_2_0::operator+ | ( | const std::string & | s,
|  | double |
| ) |  |
| inline

Needed to support the `(zeroVal<ValueType>() + val)` idiom when `ValueType` is `std::string`.

## ◆ operator<<() [1/2]

std::ostream& openvdb::v3_2_0::operator<< | ( | std::ostream & | ,
|  | const MetaMap & |
| ) |  |

Write a MetaMap to an output stream.

## ◆ operator<<() [2/2]

std::ostream & operator<< | ( | std::ostream & | ostr,
|  | const Metadata & | metadata
| ) |  |
| inline

Write a Metadata to an output stream.

## ◆ readString()

Name openvdb::v3_2_0::readString | ( | std::istream & | is | ) |
| inline

## ◆ typeNameAsString()

const char* openvdb::v3_2_0::typeNameAsString | ( |  | ) |

## ◆ typeNameAsString< bool >()

const char* openvdb::v3_2_0::typeNameAsString< bool > | ( |  | ) |
| inline

## ◆ typeNameAsString< double >()

const char* openvdb::v3_2_0::typeNameAsString< double > | ( |  | ) |
| inline

## ◆ typeNameAsString< float >()

const char* openvdb::v3_2_0::typeNameAsString< float > | ( |  | ) |
| inline

## ◆ typeNameAsString< int32_t >()

const char* openvdb::v3_2_0::typeNameAsString< int32_t > | ( |  | ) |
| inline

## ◆ typeNameAsString< int64_t >()

const char* openvdb::v3_2_0::typeNameAsString< int64_t > | ( |  | ) |
| inline

## ◆ typeNameAsString< Mat4d >()

const char* openvdb::v3_2_0::typeNameAsString< Mat4d > | ( |  | ) |
| inline

## ◆ typeNameAsString< Mat4s >()

const char* openvdb::v3_2_0::typeNameAsString< Mat4s > | ( |  | ) |
| inline

## ◆ typeNameAsString< PointDataIndex32 >()

const char* openvdb::v3_2_0::typeNameAsString< PointDataIndex32 > | ( |  | ) |
| inline

## ◆ typeNameAsString< PointDataIndex64 >()

const char* openvdb::v3_2_0::typeNameAsString< PointDataIndex64 > | ( |  | ) |
| inline

## ◆ typeNameAsString< PointIndex32 >()

const char* openvdb::v3_2_0::typeNameAsString< PointIndex32 > | ( |  | ) |
| inline

## ◆ typeNameAsString< PointIndex64 >()

const char* openvdb::v3_2_0::typeNameAsString< PointIndex64 > | ( |  | ) |
| inline

## ◆ typeNameAsString< std::string >()

const char* openvdb::v3_2_0::typeNameAsString< std::string > | ( |  | ) |
| inline

## ◆ typeNameAsString< uint32_t >()

const char* openvdb::v3_2_0::typeNameAsString< uint32_t > | ( |  | ) |
| inline

## ◆ typeNameAsString< ValueMask >()

const char* openvdb::v3_2_0::typeNameAsString< ValueMask > | ( |  | ) |
| inline

## ◆ typeNameAsString< Vec2d >()

const char* openvdb::v3_2_0::typeNameAsString< Vec2d > | ( |  | ) |
| inline

## ◆ typeNameAsString< Vec2i >()

const char* openvdb::v3_2_0::typeNameAsString< Vec2i > | ( |  | ) |
| inline

## ◆ typeNameAsString< Vec2s >()

const char* openvdb::v3_2_0::typeNameAsString< Vec2s > | ( |  | ) |
| inline

## ◆ typeNameAsString< Vec3d >()

const char* openvdb::v3_2_0::typeNameAsString< Vec3d > | ( |  | ) |
| inline

## ◆ typeNameAsString< Vec3f >()

const char* openvdb::v3_2_0::typeNameAsString< Vec3f > | ( |  | ) |
| inline

## ◆ typeNameAsString< Vec3i >()

const char* openvdb::v3_2_0::typeNameAsString< Vec3i > | ( |  | ) |
| inline

## ◆ uninitialize()

OPENVDB_IMPORT void openvdb::v3_2_0::uninitialize | ( |  | ) |

Global deregistration of basic types.

## ◆ writeString()

void openvdb::v3_2_0::writeString | ( | std::ostream & | os,
|  | const Name & | name
| ) |  |
| inline

## ◆ zeroVal()

T openvdb::v3_2_0::zeroVal | ( |  | ) |
| inline

Return the value of type T that corresponds to zero.

Note
  A zeroVal<T>() specialization must be defined for each `ValueType` T that cannot be constructed using the form `T(0)`. For example, `std::string(0)` treats 0 as `NULL` and throws a `std::logic_error`.

## ◆ zeroVal< bool >()

bool openvdb::v3_2_0::zeroVal< bool > | ( |  | ) |
| inline

Return the `bool` value that corresponds to zero.

## ◆ zeroVal< math::Mat4d >()

math::Mat4d openvdb::v3_2_0::zeroVal< math::Mat4d > | ( |  | ) |
| inline

## ◆ zeroVal< math::Mat4s >()

math::Mat4s openvdb::v3_2_0::zeroVal< math::Mat4s > | ( |  | ) |
| inline

## ◆ zeroVal< std::string >()

std::string openvdb::v3_2_0::zeroVal< std::string > | ( |  | ) |
| inline

Return the `std::string` value that corresponds to zero.

## Variable Documentation

## ◆ LEVEL_SET_HALF_WIDTH

const Real LEVEL_SET_HALF_WIDTH = 3
| static

## ◆ OPENVDB_FILE_VERSION

const uint32_t OPENVDB_FILE_VERSION = 223

The current version number of the VDB file format.

This can be used to enable various backwards compatability switches or to reject files that cannot be read.

## ◆ OPENVDB_LIBRARY_MAJOR_VERSION

const uint32_t OPENVDB_LIBRARY_MAJOR_VERSION = 3

## ◆ OPENVDB_LIBRARY_MINOR_VERSION

const uint32_t OPENVDB_LIBRARY_MINOR_VERSION = 2

## ◆ OPENVDB_LIBRARY_PATCH_VERSION

const uint32_t OPENVDB_LIBRARY_PATCH_VERSION = 0

## ◆ OPENVDB_LIBRARY_VERSION

const uint32_t OPENVDB_LIBRARY_VERSION = (( 3 << 24) | (( 2 & 0xFF) << 16) | ( 0 & 0xFFFF))

Library version number as a packed integer ("%02x%02x%04x", major, minor, patch)

## ◆ OPENVDB_MAGIC

const int32_t OPENVDB_MAGIC = 0x56444220

The magic number is stored in the first four bytes of every VDB file.

This can be used to quickly test whether we have a valid file or not.