|
OpenVDB 11.0.0
|
#include "version.h"#include "Platform.h"#include "TypeList.h"#include <openvdb/math/Half.h>#include <openvdb/math/Math.h>#include <openvdb/math/BBox.h>#include <openvdb/math/Quat.h>#include <openvdb/math/Vec2.h>#include <openvdb/math/Vec3.h>#include <openvdb/math/Vec4.h>#include <openvdb/math/Mat3.h>#include <openvdb/math/Mat4.h>#include <openvdb/math/Coord.h>#include <cstdint>#include <memory>#include <type_traits>Go to the source code of this file.
Classes | |
| class | ValueMask |
| struct | PointIndex< IntType_, Kind > |
| Integer wrapper, required to distinguish PointIndexGrid and PointDataGrid from Int32Grid and Int64Grid. More... | |
| struct | IsSpecializationOf< T, Template > |
| Helper metafunction used to determine if the first template parameter is a specialization of the class template given in the second template parameter. More... | |
| struct | IsSpecializationOf< Template< Args... >, Template > |
| struct | index_sequence< Ns > |
| Re-implementation of C++17's index_sequence and the helper alias make_index_sequence. This was introduced to fix an issue with clang's builtin implementation which treats template specializations of builtin templates differently when a subsequent parameter is dependent. The result is a resolution failure during partial specialization selection. For example, the following will fail to specialize: More... | |
| struct | VecTraits< T, bool > |
| struct | VecTraits< T, false > |
| struct | QuatTraits< T, bool > |
| struct | QuatTraits< T, false > |
| struct | MatTraits< T, bool > |
| struct | MatTraits< T, false > |
| struct | ValueTraits< T, bool > |
| struct | ValueTraits< T, false > |
| struct | ConvertElementType< T, SubT > |
| Conversion classes for changing the underlying type of VDB types. More... | |
| struct | ConvertElementType< math::Vec2< T >, SubT > |
| struct | ConvertElementType< math::Vec3< T >, SubT > |
| struct | ConvertElementType< math::Vec4< T >, SubT > |
| struct | ConvertElementType< math::Quat< T >, SubT > |
| struct | ConvertElementType< math::Mat3< T >, SubT > |
| struct | ConvertElementType< math::Mat4< T >, SubT > |
| struct | int_t< 8ul, true > |
| struct | int_t< 16ul, true > |
| struct | int_t< 32ul, true > |
| struct | int_t< 64ul, true > |
| struct | int_t< 8ul, false > |
| struct | int_t< 16ul, false > |
| struct | int_t< 32ul, false > |
| struct | int_t< 64ul, false > |
| struct | flt_t< 16ul > |
| struct | flt_t< 32ul > |
| struct | flt_t< 64ul > |
| struct | PromoteType< T > |
| Promotion classes which provide an interface for elevating and demoting a scalar or VDB type to a higher or lower precision. Integer types preserve their sign. Types promotion are only valid between 8 to 64 bits (long doubles are not supported). More... | |
| struct | PromoteContainerType< T, ContainerT > |
| struct | PromoteType< math::Vec2< T > > |
| struct | PromoteType< math::Vec3< T > > |
| struct | PromoteType< math::Vec4< T > > |
| struct | PromoteType< math::Quat< T > > |
| struct | PromoteType< math::Mat3< T > > |
| struct | PromoteType< math::Mat4< T > > |
| struct | CanConvertType< FromType, ToType > |
CanConvertType<FromType, ToType>::value is true if a value of type ToType can be constructed from a value of type FromType. More... | |
| struct | CanConvertType< T, math::Vec2< T > > |
| struct | CanConvertType< T, math::Vec3< T > > |
| struct | CanConvertType< T, math::Vec4< T > > |
| 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< T0, math::Vec2< T1 > > |
| struct | CanConvertType< T0, math::Vec3< T1 > > |
| struct | CanConvertType< T0, math::Vec4< T1 > > |
| struct | CanConvertType< PointIndex32, PointDataIndex32 > |
| struct | CanConvertType< PointDataIndex32, PointIndex32 > |
| struct | CanConvertType< T, ValueMask > |
| struct | CanConvertType< ValueMask, T > |
| struct | CopyConstness< FromType, ToType > |
CopyConstness<T1, T2>::Type is either const T2 or T2 with no const qualifier, depending on whether T1 is const. More... | |
| class | CombineArgs< AValueType, BValueType > |
| 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... | |
| struct | SwappedCombineOp< ValueType, CombineOp > |
| class | ShallowCopy |
| Tag dispatch class that distinguishes shallow copy constructors from deep copy constructors. More... | |
| class | TopologyCopy |
| Tag dispatch class that distinguishes topology copy constructors from deep copy constructors. More... | |
| class | DeepCopy |
| Tag dispatch class that distinguishes constructors that deep copy. More... | |
| class | Steal |
| Tag dispatch class that distinguishes constructors that steal. More... | |
| class | PartialCreate |
| Tag dispatch class that distinguishes constructors during file input. More... | |
Namespaces | |
| namespace | openvdb |
| namespace | openvdb::v11_0 |
| namespace | openvdb::v11_0::math |
| namespace | openvdb::v11_0::types_internal |
Macros | |
| #define | OPENVDB_TARGET_BITS(SHIFT, PROMOTE) |
Typedefs | |
| using | half = internal::half |
| using | Index32 = uint32_t |
| using | Index64 = uint64_t |
| using | Index = Index32 |
| using | Int16 = int16_t |
| using | Int32 = int32_t |
| using | Int64 = int64_t |
| using | Int = Int32 |
| using | Byte = unsigned char |
| using | Real = double |
| using | Vec2R = math::Vec2< Real > |
| using | Vec2I = math::Vec2< Index32 > |
| using | Vec2f = math::Vec2< float > |
| using | Vec2H = math::Vec2< math::half > |
| using | Vec3R = math::Vec3< Real > |
| using | Vec3I = math::Vec3< Index32 > |
| using | Vec3f = math::Vec3< float > |
| using | Vec3H = math::Vec3< math::half > |
| using | Vec3U8 = math::Vec3< uint8_t > |
| using | Vec3U16 = math::Vec3< uint16_t > |
| using | BBoxd = math::BBox< Vec3d > |
| using | Vec4R = math::Vec4< Real > |
| using | Vec4I = math::Vec4< Index32 > |
| using | Vec4f = math::Vec4< float > |
| using | Vec4H = math::Vec4< math::half > |
| using | Mat3R = math::Mat3< Real > |
| using | Mat4R = math::Mat4< Real > |
| using | QuatR = math::Quat< Real > |
| template<typename T > | |
| using | SharedPtr = std::shared_ptr< T > |
| template<typename T > | |
| using | WeakPtr = std::weak_ptr< T > |
| using | PointIndex32 = PointIndex< Index32, 0 > |
| using | PointIndex64 = PointIndex< Index64, 0 > |
| using | PointDataIndex32 = PointIndex< Index32, 1 > |
| using | PointDataIndex64 = PointIndex< Index64, 1 > |
| template<std::size_t N> | |
| using | make_index_sequence = std::decay_t< decltype(make_index_sequence_impl< N >())> |
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 } |
Functions | |
| template<typename T , typename U > | |
| SharedPtr< T > | ConstPtrCast (const SharedPtr< U > &ptr) |
Return a new shared pointer that points to the same object as the given pointer but with possibly different const-ness. | |
| template<typename T , typename U > | |
| SharedPtr< T > | DynamicPtrCast (const SharedPtr< U > &ptr) |
Return a new shared pointer that is either null or points to the same object as the given pointer after a dynamic_cast. | |
| template<typename T , typename U > | |
| SharedPtr< T > | StaticPtrCast (const SharedPtr< U > &ptr) |
Return a new shared pointer that points to the same object as the given pointer after a static_cast. | |
| template<std::size_t N, std::size_t... Is> | |
| auto | make_index_sequence_impl () |
| template<typename T > | |
| const char * | typeNameAsString () |
| template<> | |
| const char * | typeNameAsString< bool > () |
| template<> | |
| const char * | typeNameAsString< ValueMask > () |
| template<> | |
| const char * | typeNameAsString< math::half > () |
| template<> | |
| const char * | typeNameAsString< float > () |
| template<> | |
| const char * | typeNameAsString< double > () |
| template<> | |
| const char * | typeNameAsString< int8_t > () |
| template<> | |
| const char * | typeNameAsString< uint8_t > () |
| template<> | |
| const char * | typeNameAsString< int16_t > () |
| template<> | |
| const char * | typeNameAsString< uint16_t > () |
| 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< Vec3U8 > () |
| template<> | |
| const char * | typeNameAsString< Vec3U16 > () |
| template<> | |
| const char * | typeNameAsString< Vec3i > () |
| template<> | |
| const char * | typeNameAsString< Vec3f > () |
| template<> | |
| const char * | typeNameAsString< Vec3d > () |
| template<> | |
| const char * | typeNameAsString< Vec4i > () |
| template<> | |
| const char * | typeNameAsString< Vec4f > () |
| template<> | |
| const char * | typeNameAsString< Vec4d > () |
| template<> | |
| const char * | typeNameAsString< std::string > () |
| template<> | |
| const char * | typeNameAsString< Mat3s > () |
| template<> | |
| const char * | typeNameAsString< Mat3d > () |
| template<> | |
| const char * | typeNameAsString< Mat4s > () |
| template<> | |
| const char * | typeNameAsString< Mat4d > () |
| template<> | |
| const char * | typeNameAsString< math::Quats > () |
| template<> | |
| const char * | typeNameAsString< math::Quatd > () |
| template<> | |
| const char * | typeNameAsString< PointIndex32 > () |
| template<> | |
| const char * | typeNameAsString< PointIndex64 > () |
| template<> | |
| const char * | typeNameAsString< PointDataIndex32 > () |
| template<> | |
| const char * | typeNameAsString< PointDataIndex64 > () |
Variables | |
| static const Real | LEVEL_SET_HALF_WIDTH = 3 |
| #define OPENVDB_TARGET_BITS | ( | SHIFT, | |
| PROMOTE | |||
| ) |