HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
openvdb.h File Reference
#include "Platform.h"
#include "Types.h"
#include "TypeList.h"
#include "Metadata.h"
#include "math/Maps.h"
#include "math/Transform.h"
#include "Grid.h"
#include "tree/Tree.h"
#include "points/PointDataGrid.h"
#include "io/File.h"
+ Include dependency graph for openvdb.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 openvdb
 
 openvdb::OPENVDB_VERSION_NAME
 
 openvdb::OPENVDB_VERSION_NAME::io
 
 openvdb::OPENVDB_VERSION_NAME::internal
 

Typedefs

using openvdb::OPENVDB_VERSION_NAME::BoolTree = tree::Tree4< bool, 5, 4, 3 >::Type
 Common tree types. More...
 
using openvdb::OPENVDB_VERSION_NAME::DoubleTree = tree::Tree4< double, 5, 4, 3 >::Type
 
using openvdb::OPENVDB_VERSION_NAME::FloatTree = tree::Tree4< float, 5, 4, 3 >::Type
 
using openvdb::OPENVDB_VERSION_NAME::Int32Tree = tree::Tree4< int32_t, 5, 4, 3 >::Type
 
using openvdb::OPENVDB_VERSION_NAME::Int64Tree = tree::Tree4< int64_t, 5, 4, 3 >::Type
 
using openvdb::OPENVDB_VERSION_NAME::MaskTree = tree::Tree4< ValueMask, 5, 4, 3 >::Type
 
using openvdb::OPENVDB_VERSION_NAME::UInt32Tree = tree::Tree4< uint32_t, 5, 4, 3 >::Type
 
using openvdb::OPENVDB_VERSION_NAME::Vec2DTree = tree::Tree4< Vec2d, 5, 4, 3 >::Type
 
using openvdb::OPENVDB_VERSION_NAME::Vec2ITree = tree::Tree4< Vec2i, 5, 4, 3 >::Type
 
using openvdb::OPENVDB_VERSION_NAME::Vec2STree = tree::Tree4< Vec2s, 5, 4, 3 >::Type
 
using openvdb::OPENVDB_VERSION_NAME::Vec3DTree = tree::Tree4< Vec3d, 5, 4, 3 >::Type
 
using openvdb::OPENVDB_VERSION_NAME::Vec3ITree = tree::Tree4< Vec3i, 5, 4, 3 >::Type
 
using openvdb::OPENVDB_VERSION_NAME::Vec3STree = tree::Tree4< Vec3f, 5, 4, 3 >::Type
 
using openvdb::OPENVDB_VERSION_NAME::ScalarTree = FloatTree
 
using openvdb::OPENVDB_VERSION_NAME::TopologyTree = MaskTree
 
using openvdb::OPENVDB_VERSION_NAME::Vec3dTree = Vec3DTree
 
using openvdb::OPENVDB_VERSION_NAME::Vec3fTree = Vec3STree
 
using openvdb::OPENVDB_VERSION_NAME::VectorTree = Vec3fTree
 
using openvdb::OPENVDB_VERSION_NAME::BoolGrid = Grid< BoolTree >
 Common grid types. More...
 
using openvdb::OPENVDB_VERSION_NAME::DoubleGrid = Grid< DoubleTree >
 
using openvdb::OPENVDB_VERSION_NAME::FloatGrid = Grid< FloatTree >
 
using openvdb::OPENVDB_VERSION_NAME::Int32Grid = Grid< Int32Tree >
 
using openvdb::OPENVDB_VERSION_NAME::Int64Grid = Grid< Int64Tree >
 
using openvdb::OPENVDB_VERSION_NAME::MaskGrid = Grid< MaskTree >
 
using openvdb::OPENVDB_VERSION_NAME::Vec3DGrid = Grid< Vec3DTree >
 
using openvdb::OPENVDB_VERSION_NAME::Vec3IGrid = Grid< Vec3ITree >
 
using openvdb::OPENVDB_VERSION_NAME::Vec3SGrid = Grid< Vec3STree >
 
using openvdb::OPENVDB_VERSION_NAME::ScalarGrid = FloatGrid
 
using openvdb::OPENVDB_VERSION_NAME::TopologyGrid = MaskGrid
 
using openvdb::OPENVDB_VERSION_NAME::Vec3dGrid = Vec3DGrid
 
using openvdb::OPENVDB_VERSION_NAME::Vec3fGrid = Vec3SGrid
 
using openvdb::OPENVDB_VERSION_NAME::VectorGrid = Vec3fGrid
 
template<typename T >
using openvdb::OPENVDB_VERSION_NAME::internal::ToTreeType = typename T::TreeType
 
using openvdb::OPENVDB_VERSION_NAME::MapTypes = TypeList< math::AffineMap, math::UnitaryMap, math::ScaleMap, math::UniformScaleMap, math::TranslationMap, math::ScaleTranslateMap, math::UniformScaleTranslateMap, math::NonlinearFrustumMap >
 The Map types which OpenVDB will register by default. More...
 
using openvdb::OPENVDB_VERSION_NAME::MetaTypes = TypeList< BoolMetadata, DoubleMetadata, FloatMetadata, Int32Metadata, Int64Metadata, StringMetadata, Vec2IMetadata, Vec2SMetadata, Vec2DMetadata, Vec3IMetadata, Vec3SMetadata, Vec3DMetadata, Vec4IMetadata, Vec4SMetadata, Vec4DMetadata, Mat4SMetadata, Mat4DMetadata, io::DelayedLoadMetadata >
 The Metadata types which OpenVDB will register by default. More...
 
Lists of native Grid Types

The floating point Grid types which OpenVDB will register by default.

using openvdb::OPENVDB_VERSION_NAME::RealGridTypes = TypeList< FloatGrid, DoubleGrid >
 The integer Grid types which OpenVDB will register by default. More...
 
using openvdb::OPENVDB_VERSION_NAME::IntegerGridTypes = TypeList< Int32Grid, Int64Grid >
 The integer Grid types which OpenVDB will register by default. More...
 
using openvdb::OPENVDB_VERSION_NAME::NumericGridTypes = RealGridTypes::Append< IntegerGridTypes >
 
using openvdb::OPENVDB_VERSION_NAME::Vec3GridTypes = TypeList< Vec3IGrid, Vec3SGrid, Vec3DGrid >
 The Vec3 Grid types which OpenVDB will register by default. More...
 
using openvdb::OPENVDB_VERSION_NAME::GridTypes = NumericGridTypes::Append< Vec3GridTypes >::Append< tools::PointIndexGrid >::Append< points::PointDataGrid >::Append< BoolGrid, MaskGrid >
 The Grid types which OpenVDB will register by default. More...
 
Lists of native Tree Types
using openvdb::OPENVDB_VERSION_NAME::RealTreeTypes = RealGridTypes::Transform< internal::ToTreeType >
 
using openvdb::OPENVDB_VERSION_NAME::IntegerTreeTypes = IntegerGridTypes::Transform< internal::ToTreeType >
 
using openvdb::OPENVDB_VERSION_NAME::NumericTreeTypes = NumericGridTypes::Transform< internal::ToTreeType >
 
using openvdb::OPENVDB_VERSION_NAME::Vec3TreeTypes = Vec3GridTypes::Transform< internal::ToTreeType >
 
using openvdb::OPENVDB_VERSION_NAME::TreeTypes = GridTypes::Transform< internal::ToTreeType >
 
Lists of native TypedAttributeArray Types (for PointDataGrids)

The floating point attribute array types which OpenVDB will register by default.

using openvdb::OPENVDB_VERSION_NAME::RealAttributeTypes = TypeList< points::TypedAttributeArray< float >, points::TypedAttributeArray< double >, points::TypedAttributeArray< float, points::TruncateCodec >, points::TypedAttributeArray< float, points::FixedPointCodec< true, points::UnitRange >>, points::TypedAttributeArray< float, points::FixedPointCodec< false, points::UnitRange >> >
 The integer attribute array types which OpenVDB will register by default. More...
 
using openvdb::OPENVDB_VERSION_NAME::IntegerAttributeTypes = TypeList< points::TypedAttributeArray< int8_t >, points::TypedAttributeArray< int16_t >, points::TypedAttributeArray< int32_t >, points::TypedAttributeArray< int64_t > >
 The integer attribute array types which OpenVDB will register by default. More...
 
using openvdb::OPENVDB_VERSION_NAME::NumericAttributeTypes = RealAttributeTypes::Append< IntegerAttributeTypes >
 
using openvdb::OPENVDB_VERSION_NAME::Vec3AttributeTypes = TypeList< points::TypedAttributeArray< math::Vec3< int32_t >>, points::TypedAttributeArray< math::Vec3< float >>, points::TypedAttributeArray< math::Vec3< double >>, points::TypedAttributeArray< math::Vec3< float >, points::TruncateCodec >, points::TypedAttributeArray< math::Vec3< float >, points::FixedPointCodec< true, points::PositionRange >>, points::TypedAttributeArray< math::Vec3< float >, points::FixedPointCodec< false, points::PositionRange >>, points::TypedAttributeArray< math::Vec3< float >, points::FixedPointCodec< true, points::UnitRange >>, points::TypedAttributeArray< math::Vec3< float >, points::FixedPointCodec< false, points::UnitRange >>, points::TypedAttributeArray< math::Vec3< float >, points::UnitVecCodec > >
 The Vec3 attribute array types which OpenVDB will register by default. More...
 
using openvdb::OPENVDB_VERSION_NAME::Mat3AttributeTypes = TypeList< points::TypedAttributeArray< math::Mat3< float >>, points::TypedAttributeArray< math::Mat3< double >> >
 The Mat3 attribute array types which OpenVDB will register by default. More...
 
using openvdb::OPENVDB_VERSION_NAME::Mat4AttributeTypes = TypeList< points::TypedAttributeArray< math::Mat4< float >>, points::TypedAttributeArray< math::Mat4< double >> >
 The Mat4 attribute array types which OpenVDB will register by default. More...
 
using openvdb::OPENVDB_VERSION_NAME::QuatAttributeTypes = TypeList< points::TypedAttributeArray< math::Quat< float >>, points::TypedAttributeArray< math::Quat< double >> >
 The Quat attribute array types which OpenVDB will register by default. More...
 
using openvdb::OPENVDB_VERSION_NAME::AttributeTypes = NumericAttributeTypes::Append< Vec3AttributeTypes >::Append< Mat3AttributeTypes >::Append< Mat4AttributeTypes >::Append< QuatAttributeTypes >::Append< points::GroupAttributeArray >::Append< points::StringAttributeArray >::Append< points::TypedAttributeArray< bool >>
 The attribute array types which OpenVDB will register by default. More...
 

Functions

OPENVDB_API void openvdb::OPENVDB_VERSION_NAME::initialize ()
 Global registration of native Grid, Transform, Metadata and Point attribute types. Also initializes blosc (if enabled). More...
 
OPENVDB_API void openvdb::OPENVDB_VERSION_NAME::uninitialize ()
 Global deregistration of native Grid, Transform, Metadata and Point attribute types. More...