Loading...
Searching...
No Matches
Alembic::Util::ALEMBIC_VERSION_NS Namespace Reference

## Classes

class | BaseDimensions
class | bool_t
struct | Digest
class | Exception
| Base class for all exceptions in the Alembic libraries. Derived from both std::exception and std::string, publicly It is mostly commonly thrown using the macros. More...
class | int32_t
class | int64_t
class | int8_t
class | mutex
class | noncopyable
struct | PODTraits
struct | PODTraitsFromEnum
struct | PODTraitsFromEnum< kBooleanPOD >
struct | PODTraitsFromEnum< kFloat16POD >
struct | PODTraitsFromEnum< kFloat32POD >
struct | PODTraitsFromEnum< kFloat64POD >
struct | PODTraitsFromEnum< kInt16POD >
struct | PODTraitsFromEnum< kInt32POD >
struct | PODTraitsFromEnum< kInt64POD >
struct | PODTraitsFromEnum< kInt8POD >
struct | PODTraitsFromEnum< kStringPOD >
struct | PODTraitsFromEnum< kUint16POD >
struct | PODTraitsFromEnum< kUint32POD >
struct | PODTraitsFromEnum< kUint64POD >
struct | PODTraitsFromEnum< kUint8POD >
struct | PODTraitsFromEnum< kWstringPOD >
struct | PODTraitsFromType
struct | PODTraitsFromType< bool_t >
struct | PODTraitsFromType< float16_t >
struct | PODTraitsFromType< float32_t >
struct | PODTraitsFromType< float64_t >
struct | PODTraitsFromType< int16_t >
struct | PODTraitsFromType< int32_t >
struct | PODTraitsFromType< int64_t >
struct | PODTraitsFromType< int8_t >
struct | PODTraitsFromType< string >
struct | PODTraitsFromType< uint16_t >
struct | PODTraitsFromType< uint32_t >
struct | PODTraitsFromType< uint64_t >
struct | PODTraitsFromType< uint8_t >
struct | PODTraitsFromType< wstring >
class | scoped_lock
class | SpookyHash
class | string
class | TokenMap
| A wrapper around std::map that serializes and deserializes the map into a doubly-tokenized string, usually of the form token=value;token=value;token=value;. More...
class | totally_ordered
class | uint32_t
class | uint64_t
class | uint8_t

## Typedefs

typedef BaseDimensions< Alembic::Util::uint64_t > | Dimensions
typedef unsigned char | byte_t
typedef half | float16_t
typedef float | float32_t
typedef double | float64_t

## Enumerations

enum | PlainOldDataType { kBooleanPOD , kUint8POD , kInt8POD , kUint16POD , kInt16POD , kUint32POD , kInt32POD , kUint64POD , kInt64POD , kFloat16POD , kFloat32POD , kFloat64POD , kStringPOD , kWstringPOD , kNumPlainOldDataTypes , kUnknownPOD = 127 }

## Functions

std::ostream & | operator<< (std::ostream &ostr, const Digest &a)
template<class T, class Y>
bool | operator== (const BaseDimensions< T > &a, const BaseDimensions< Y > &b)
template<class T, class Y>
bool | operator!= (const BaseDimensions< T > &a, const BaseDimensions< Y > &b)
template<class T>
std::ostream & | operator<< (std::ostream &ostr, const BaseDimensions< T > &a)
ALEMBIC_EXPORT void | MurmurHash3_x64_128 (const void *key, const size_t len, const size_t podSize, void *out)
ALEMBIC_EXPORT bool | isStandardName (const std::string &name)
ALEMBIC_EXPORT void | makeStandardName (std::string &name, const char fixChar='_')
bool | operator== (const bool_t &a, const bool_t &b)
bool | operator== (const bool_t &a, bool b)
bool | operator== (bool a, const bool_t &b)
bool | operator!= (const bool_t &a, const bool_t &b)
bool | operator!= (const bool_t &a, bool b)
bool | operator!= (bool a, const bool_t &b)
| DECLARE_TRAITS (kBooleanPOD, bool_t, "bool_t", false, BooleanPODTraits)
| DECLARE_TRAITS (kUint8POD, uint8_t, "uint8_t", 0, Uint8PODTraits)
| DECLARE_TRAITS (kInt8POD, int8_t, "int8_t", 0, Int8PODTraits)
| DECLARE_TRAITS (kUint16POD, uint16_t, "uint16_t", 0, Uint16PODTraits)
| DECLARE_TRAITS (kInt16POD, int16_t, "int16_t", 0, Int16PODTraits)
| DECLARE_TRAITS (kUint32POD, uint32_t, "uint32_t", 0, Uint32PODTraits)
| DECLARE_TRAITS (kInt32POD, int32_t, "int32_t", 0, Int32PODTraits)
| DECLARE_TRAITS (kUint64POD, uint64_t, "uint64_t", 0, Uint64PODTraits)
| DECLARE_TRAITS (kInt64POD, int64_t, "int64_t", 0, Int64PODTraits)
| DECLARE_TRAITS (kFloat16POD, float16_t, "float16_t", 0, Float16PODTraits)
| DECLARE_TRAITS (kFloat32POD, float32_t, "float32_t", 0, Float32PODTraits)
| DECLARE_TRAITS (kFloat64POD, float64_t, "float64_t", 0, Float64PODTraits)
| DECLARE_TRAITS (kStringPOD, string, "string", "", StringPODTraits)
| DECLARE_TRAITS (kWstringPOD, wstring, "wstring", L"", WstringPODTraits)
size_t | PODNumBytes (PlainOldDataType pod)
const char * | PODName (PlainOldDataType pod)
PlainOldDataType | PODFromName (const std::string &n)
template<PlainOldDataType POD>
void | PODSetDefaultPOD (void *addr)
| This actually does work with strings!
void | PODSetDefault (PlainOldDataType pod, void *bytes)
bool | operator== (const TokenMap &iA, const TokenMap &iB)

## Typedef Documentation

## byte_t

typedef unsigned char Alembic::Util::ALEMBIC_VERSION_NS::byte_t

Bytes are unsigned chars, by definition. We use bytes in Alembic as the name of anonymous storage memory, since it is not possible to create arrays of voids.

Definition at line 56 of file PlainOldDataType.h.

## Dimensions

typedef BaseDimensions<Alembic::Util::uint64_t> Alembic::Util::ALEMBIC_VERSION_NS::Dimensions

Definition at line 189 of file Dimensions.h.

## float16_t

typedef half Alembic::Util::ALEMBIC_VERSION_NS::float16_t

Definition at line 159 of file PlainOldDataType.h.

## float32_t

typedef float Alembic::Util::ALEMBIC_VERSION_NS::float32_t

Definition at line 160 of file PlainOldDataType.h.

## float64_t

typedef double Alembic::Util::ALEMBIC_VERSION_NS::float64_t

Definition at line 161 of file PlainOldDataType.h.

## Enumeration Type Documentation

## PlainOldDataType

enum Alembic::Util::ALEMBIC_VERSION_NS::PlainOldDataType

I'm using explicit names here because the terms 'int', 'short', 'long', etc, have different bit-depths on different machine architectures. To avoid any ambiguity whatsoever, I'm just making these explicit. End users will rarely see these anyway, so it's okay to be a bit pedantic.

These are always represented in the endian-ness of the host machine when resident in working memory, but need to have an explicit endian-ness when being written out. That's hidden from the user by HDF5.

Enumerator
kBooleanPOD | Booleans are difficult to store in arrays in a 'one bit per bool' kind of way, so we actually file them as bytes (uint8). But again this is entirely hidden from the end user. Implemented via the "bool_t" type defined above.
kUint8POD | Char/UChar.
kInt8POD |
kUint16POD | Short/UShort.
kInt16POD |
kUint32POD | Int/UInt.
kInt32POD |
kUint64POD | Long/ULong.
kInt64POD |
kFloat16POD | Half/Float/Double.
kFloat32POD |
kFloat64POD |
kStringPOD | String Pointer.
kWstringPOD | Wide String Pointer.
kNumPlainOldDataTypes | Number of POD.
kUnknownPOD | Unknown.

Definition at line 183 of file PlainOldDataType.h.

## Function Documentation

## DECLARE_TRAITS() [1/14]

Alembic::Util::ALEMBIC_VERSION_NS::DECLARE_TRAITS | ( | kBooleanPOD | ,
|  | bool_t | ,
|  | "bool_t" | ,
|  | false | ,
|  | BooleanPODTraits | )

References kBooleanPOD.

## DECLARE_TRAITS() [2/14]

Alembic::Util::ALEMBIC_VERSION_NS::DECLARE_TRAITS | ( | kFloat16POD | ,
|  | float16_t | ,
|  | "float16_t" | ,
|  | 0 | ,
|  | Float16PODTraits | )

References kFloat16POD.

## DECLARE_TRAITS() [3/14]

Alembic::Util::ALEMBIC_VERSION_NS::DECLARE_TRAITS | ( | kFloat32POD | ,
|  | float32_t | ,
|  | "float32_t" | ,
|  | 0 | ,
|  | Float32PODTraits | )

References kFloat32POD.

## DECLARE_TRAITS() [4/14]

Alembic::Util::ALEMBIC_VERSION_NS::DECLARE_TRAITS | ( | kFloat64POD | ,
|  | float64_t | ,
|  | "float64_t" | ,
|  | 0 | ,
|  | Float64PODTraits | )

References kFloat64POD.

## DECLARE_TRAITS() [5/14]

Alembic::Util::ALEMBIC_VERSION_NS::DECLARE_TRAITS | ( | kInt16POD | ,
|  | int16_t | ,
|  | "int16_t" | ,
|  | 0 | ,
|  | Int16PODTraits | )

References kInt16POD.

## DECLARE_TRAITS() [6/14]

Alembic::Util::ALEMBIC_VERSION_NS::DECLARE_TRAITS | ( | kInt32POD | ,
|  | int32_t | ,
|  | "int32_t" | ,
|  | 0 | ,
|  | Int32PODTraits | )

References kInt32POD.

## DECLARE_TRAITS() [7/14]

Alembic::Util::ALEMBIC_VERSION_NS::DECLARE_TRAITS | ( | kInt64POD | ,
|  | int64_t | ,
|  | "int64_t" | ,
|  | 0 | ,
|  | Int64PODTraits | )

References kInt64POD.

## DECLARE_TRAITS() [8/14]

Alembic::Util::ALEMBIC_VERSION_NS::DECLARE_TRAITS | ( | kInt8POD | ,
|  | int8_t | ,
|  | "int8_t" | ,
|  | 0 | ,
|  | Int8PODTraits | )

References kInt8POD.

## DECLARE_TRAITS() [9/14]

Alembic::Util::ALEMBIC_VERSION_NS::DECLARE_TRAITS | ( | kStringPOD | ,
|  | string | ,
|  | "string" | ,
|  | "" | ,
|  | StringPODTraits | )

References kStringPOD.

## DECLARE_TRAITS() [10/14]

Alembic::Util::ALEMBIC_VERSION_NS::DECLARE_TRAITS | ( | kUint16POD | ,
|  | uint16_t | ,
|  | "uint16_t" | ,
|  | 0 | ,
|  | Uint16PODTraits | )

References kUint16POD.

## DECLARE_TRAITS() [11/14]

Alembic::Util::ALEMBIC_VERSION_NS::DECLARE_TRAITS | ( | kUint32POD | ,
|  | uint32_t | ,
|  | "uint32_t" | ,
|  | 0 | ,
|  | Uint32PODTraits | )

References kUint32POD.

## DECLARE_TRAITS() [12/14]

Alembic::Util::ALEMBIC_VERSION_NS::DECLARE_TRAITS | ( | kUint64POD | ,
|  | uint64_t | ,
|  | "uint64_t" | ,
|  | 0 | ,
|  | Uint64PODTraits | )

References kUint64POD.

## DECLARE_TRAITS() [13/14]

Alembic::Util::ALEMBIC_VERSION_NS::DECLARE_TRAITS | ( | kUint8POD | ,
|  | uint8_t | ,
|  | "uint8_t" | ,
|  | 0 | ,
|  | Uint8PODTraits | )

References kUint8POD.

## DECLARE_TRAITS() [14/14]

Alembic::Util::ALEMBIC_VERSION_NS::DECLARE_TRAITS | ( | kWstringPOD | ,
|  | wstring | ,
|  | "wstring" | ,
|  | L"" | ,
|  | WstringPODTraits | )

References kWstringPOD.

## isStandardName()

ALEMBIC_EXPORT bool Alembic::Util::ALEMBIC_VERSION_NS::isStandardName | ( | const std::string & | name | ) |

References ALEMBIC_EXPORT.

## makeStandardName()

ALEMBIC_EXPORT void Alembic::Util::ALEMBIC_VERSION_NS::makeStandardName | ( | std::string & | name,
|  | const char | fixChar = '_' )

## MurmurHash3_x64_128()

ALEMBIC_EXPORT void Alembic::Util::ALEMBIC_VERSION_NS::MurmurHash3_x64_128 | ( | const void * | key,
|  | const size_t | len,
|  | const size_t | podSize,
|  | void * | out )

## operator!=() [1/4]

bool Alembic::Util::ALEMBIC_VERSION_NS::operator!= | ( | bool | a,
|  | const bool_t & | b )

inline

Definition at line 134 of file PlainOldDataType.h.

References Alembic::Util::ALEMBIC_VERSION_NS::bool_t::asBool().

Here is the call graph for this function:

## operator!=() [2/4]

template<class T, class Y>

bool Alembic::Util::ALEMBIC_VERSION_NS::operator!= | ( | const BaseDimensions< T > & | a,
|  | const BaseDimensions< Y > & | b )

inline

Definition at line 165 of file Dimensions.h.

## operator!=() [3/4]

bool Alembic::Util::ALEMBIC_VERSION_NS::operator!= | ( | const bool_t & | a,
|  | bool | b )

inline

Definition at line 128 of file PlainOldDataType.h.

References Alembic::Util::ALEMBIC_VERSION_NS::bool_t::asBool().

Here is the call graph for this function:

## operator!=() [4/4]

bool Alembic::Util::ALEMBIC_VERSION_NS::operator!= | ( | const bool_t & | a,
|  | const bool_t & | b )

inline

Definition at line 122 of file PlainOldDataType.h.

References Alembic::Util::ALEMBIC_VERSION_NS::bool_t::asBool().

Here is the call graph for this function:

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

template<class T>

std::ostream & Alembic::Util::ALEMBIC_VERSION_NS::operator<< | ( | std::ostream & | ostr,
|  | const BaseDimensions< T > & | a )

Definition at line 173 of file Dimensions.h.

References Alembic::Util::ALEMBIC_VERSION_NS::BaseDimensions< T >::rank().

Here is the call graph for this function:

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

std::ostream & Alembic::Util::ALEMBIC_VERSION_NS::operator<< | ( | std::ostream & | ostr,
|  | const Digest & | a )

inline

Definition at line 109 of file Digest.h.

References Alembic::Util::ALEMBIC_VERSION_NS::Digest::print().

Here is the call graph for this function:

## operator==() [1/5]

bool Alembic::Util::ALEMBIC_VERSION_NS::operator== | ( | bool | a,
|  | const bool_t & | b )

inline

Definition at line 116 of file PlainOldDataType.h.

References Alembic::Util::ALEMBIC_VERSION_NS::bool_t::asBool().

Here is the call graph for this function:

## operator==() [2/5]

template<class T, class Y>

bool Alembic::Util::ALEMBIC_VERSION_NS::operator== | ( | const BaseDimensions< T > & | a,
|  | const BaseDimensions< Y > & | b )

Definition at line 137 of file Dimensions.h.

References Alembic::Util::ALEMBIC_VERSION_NS::BaseDimensions< T >::rank().

Here is the call graph for this function:

## operator==() [3/5]

bool Alembic::Util::ALEMBIC_VERSION_NS::operator== | ( | const bool_t & | a,
|  | bool | b )

inline

Definition at line 110 of file PlainOldDataType.h.

References Alembic::Util::ALEMBIC_VERSION_NS::bool_t::asBool().

Here is the call graph for this function:

## operator==() [4/5]

bool Alembic::Util::ALEMBIC_VERSION_NS::operator== | ( | const bool_t & | a,
|  | const bool_t & | b )

inline

Definition at line 104 of file PlainOldDataType.h.

References Alembic::Util::ALEMBIC_VERSION_NS::bool_t::asBool().

Here is the call graph for this function:

## operator==() [5/5]

bool Alembic::Util::ALEMBIC_VERSION_NS::operator== | ( | const TokenMap & | iA,
|  | const TokenMap & | iB )

inline

Definition at line 308 of file TokenMap.h.

References Alembic::Util::ALEMBIC_VERSION_NS::TokenMap::exactMatch().

Here is the call graph for this function:

## PODFromName()

PlainOldDataType Alembic::Util::ALEMBIC_VERSION_NS::PODFromName | ( | const std::string & | n | ) |

inline

Definition at line 385 of file PlainOldDataType.h.

References kUnknownPOD.

## PODName()

const char * Alembic::Util::ALEMBIC_VERSION_NS::PODName | ( | PlainOldDataType | pod | ) |

inline

Definition at line 358 of file PlainOldDataType.h.

References kBooleanPOD, kFloat16POD, kFloat32POD, kFloat64POD, kInt16POD, kInt32POD, kInt64POD, kInt8POD, kStringPOD, kUint16POD, kUint32POD, kUint64POD, kUint8POD, and kWstringPOD.

Referenced by Alembic::AbcGeom::ALEMBIC_VERSION_NS::OTypedGeomParam< BooleanTPTraits >::OTypedGeomParam(), Alembic::AbcGeom::ALEMBIC_VERSION_NS::ITypedGeomParam< BooleanTPTraits >::matches(), and Alembic::AbcGeom::ALEMBIC_VERSION_NS::OTypedGeomParam< BooleanTPTraits >::matches().

Here is the caller graph for this function:

## PODNumBytes()

size_t Alembic::Util::ALEMBIC_VERSION_NS::PODNumBytes | ( | PlainOldDataType | pod | ) |

inline

Definition at line 332 of file PlainOldDataType.h.

References kBooleanPOD, kFloat16POD, kFloat32POD, kFloat64POD, kInt16POD, kInt32POD, kInt64POD, kInt8POD, kStringPOD, kUint16POD, kUint32POD, kUint64POD, kUint8POD, and kWstringPOD.

## PODSetDefault()

void Alembic::Util::ALEMBIC_VERSION_NS::PODSetDefault | ( | PlainOldDataType | pod,
|  | void * | bytes )

inline

Definition at line 415 of file PlainOldDataType.h.

References kBooleanPOD, kFloat16POD, kFloat32POD, kFloat64POD, kInt16POD, kInt32POD, kInt64POD, kInt8POD, kStringPOD, kUint16POD, kUint32POD, kUint64POD, kUint8POD, kWstringPOD, and PODSetDefaultPOD().

Here is the call graph for this function:

## PODSetDefaultPOD()

template<PlainOldDataType POD>

void Alembic::Util::ALEMBIC_VERSION_NS::PODSetDefaultPOD | ( | void * | addr | ) |

inline

This actually does work with strings!

Definition at line 407 of file PlainOldDataType.h.

Referenced by PODSetDefault().

Here is the caller graph for this function: