HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS Namespace Reference

Namespaces

 IllustrationOnly
 

Classes

class  ArchiveReader
 
class  ArchiveWriter
 
class  ArrayPropertyReader
 
class  ArrayPropertyWriter
 
class  ArraySample
 
struct  TArrayDeleter
 
struct  ArraySampleKey
 
struct  ArraySampleKeyEqualTo
 
struct  ArraySampleKeyStdHash
 
struct  UnorderedMapUtil
 
class  BasePropertyReader
 Base Property Reader. More...
 
class  BasePropertyWriter
 
class  CompoundPropertyReader
 
class  CompoundPropertyWriter
 
class  DataType
 
class  MetaData
 
class  ObjectHeader
 
class  ObjectReader
 
class  ObjectWriter
 
class  PropertyHeader
 
class  ReadArraySampleID
 
class  ReadArraySampleCache
 
class  ScalarPropertyReader
 
class  ScalarPropertyWriter
 
class  ScalarSample
 
class  TimeSampling
 
class  TimeSamplingType
 

Typedefs

typedef
Alembic::Util::shared_ptr
< ArraySample
ArraySamplePtr
 
typedef
Alembic::Util::shared_ptr
< ArchiveWriter
ArchiveWriterPtr
 Smart Ptrs to Writers. More...
 
typedef
Alembic::Util::shared_ptr
< ObjectWriter
ObjectWriterPtr
 
typedef
Alembic::Util::shared_ptr
< CompoundPropertyWriter
CompoundPropertyWriterPtr
 
typedef
Alembic::Util::shared_ptr
< ArrayPropertyWriter
ArrayPropertyWriterPtr
 
typedef
Alembic::Util::shared_ptr
< ScalarPropertyWriter
ScalarPropertyWriterPtr
 
typedef
Alembic::Util::shared_ptr
< BasePropertyWriter
BasePropertyWriterPtr
 
typedef
Alembic::Util::shared_ptr
< ArchiveReader
ArchiveReaderPtr
 Smart Ptrs to Readers. More...
 
typedef
Alembic::Util::shared_ptr
< ObjectReader
ObjectReaderPtr
 
typedef
Alembic::Util::shared_ptr
< CompoundPropertyReader
CompoundPropertyReaderPtr
 
typedef
Alembic::Util::shared_ptr
< ArrayPropertyReader
ArrayPropertyReaderPtr
 
typedef
Alembic::Util::shared_ptr
< ScalarPropertyReader
ScalarPropertyReaderPtr
 
typedef
Alembic::Util::shared_ptr
< BasePropertyReader
BasePropertyReaderPtr
 
typedef int64_t index_t
 
typedef float64_t chrono_t
 
typedef
Alembic::Util::shared_ptr
< ReadArraySampleCache
ReadArraySampleCachePtr
 
typedef
Alembic::Util::shared_ptr
< TimeSampling
TimeSamplingPtr
 

Enumerations

enum  PropertyType { kCompoundProperty = 0, kScalarProperty = 1, kArrayProperty = 2 }
 

Functions

ALEMBIC_EXPORT ArraySamplePtr AllocateArraySample (const DataType &iDtype, const Dimensions &iDims)
 
template<class T >
ArraySamplePtr TAllocateArraySample (size_t iDataTypeExtent, const Dimensions &iDims)
 
size_t StdHash (ArraySampleKey const &a)
 
std::ostream & operator<< (std::ostream &ostr, const DataType &a)
 
ALEMBIC_EXPORT std::string GetLibraryVersion ()
 
ALEMBIC_EXPORT std::string GetLibraryVersionShort ()
 

Typedef Documentation

Smart Ptrs to Readers.

Definition at line 90 of file ForwardDeclarations.h.

Smart Ptrs to Writers.

Definition at line 81 of file ForwardDeclarations.h.

The ArraySamplePtr can be used not only to share this ArraySample, but also to manage the data referred to by the memory address in the pointer, by way of a custom deleter. In this manner, ArraySample and ArraySamplePtr can be used both as a reference to data and as an explicit ownership of data. This greatly reduces the redundancy of this library's code.

Smart Ptrs to Helper types. The Ptr suffix in Alembic ALWAYS refers to a shared_ptr of whatever class name precedes the Ptr suffix.

Definition at line 138 of file ArraySample.h.

Chrono type. This is used whenever time values are needed in the library. They are generally assumed to be seconds, but this does not need to be explicitly enforced by the API.

Definition at line 71 of file Foundation.h.

Index type Just being pedantic.

Definition at line 62 of file Foundation.h.

Definition at line 91 of file ForwardDeclarations.h.

Definition at line 82 of file ForwardDeclarations.h.

Definition at line 137 of file TimeSampling.h.

Enumeration Type Documentation

In Alembic, Objects may have three distinct types of abstract properties. Any fancy type-specific properties are ultimately and instance of one of these three types of properties, identified here by an enum. "Simple" properties are simply "non-compound" properties - the SimpleProperty classes are simply common base classes for Scalar and Array Properties.

Enumerator
kCompoundProperty 

Compound Properties are groups of other properties, with their own unique name and set of MetaData. All objects have a single root compound property as the base of their property description.

kScalarProperty 

Scalar Properties represent Rank-0 properties, which contain a single element value for any given time sample.

kArrayProperty 

Array Properties represent Rank-N properties, which contain an array of values for any given time sample. Array properties may have any rank of 1 or higher, but will most often be ranks 1, 2, 3.

Definition at line 56 of file PropertyHeader.h.

Function Documentation

ALEMBIC_EXPORT ArraySamplePtr Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::AllocateArraySample ( const DataType &  iDtype,
const Dimensions &  iDims 
)

When creating an actual buffer for reading an array sample into, we need to allocate an array of some number of bytes, and then delete it with a special deleter. This function will return an array sample that is managed in this way. Dimensions tells us how many instances of the DataType to create DataType tells us what the instance is - and this works for pretty much every case, including std::string and std::wstring.

ALEMBIC_EXPORT std::string Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::GetLibraryVersion ( )

Helper function which returns the version and date built in a string e.g. "Alembic 1.0.0 (built Jul 6 2011)"

ALEMBIC_EXPORT std::string Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::GetLibraryVersionShort ( )

Returns just the version number, as a string, of the Alembic library. e.g. "1.0.0"

std::ostream& Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::operator<< ( std::ostream &  ostr,
const DataType &  a 
)
inline

Outputs DataType to a std::ostream Makes use of PlainOldDataType's string conversion functions

Definition at line 133 of file DataType.h.

size_t Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::StdHash ( ArraySampleKey const a)
inline

Definition at line 98 of file ArraySampleKey.h.

template<class T >
ArraySamplePtr Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::TAllocateArraySample ( size_t  iDataTypeExtent,
const Dimensions &  iDims 
)

Definition at line 181 of file ArraySample.h.