Alembic Version 1.1
Loading...
Searching...
No Matches
Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS Namespace Reference

Namespaces

namespace  IllustrationOnly

Classes

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

Typedefs

typedef Alembic::Util::shared_ptr< ArraySampleArraySamplePtr
typedef Alembic::Util::shared_ptr< ArchiveWriterArchiveWriterPtr
 Smart Ptrs to Writers.
typedef Alembic::Util::shared_ptr< ObjectWriterObjectWriterPtr
typedef Alembic::Util::shared_ptr< CompoundPropertyWriterCompoundPropertyWriterPtr
typedef Alembic::Util::shared_ptr< ArrayPropertyWriterArrayPropertyWriterPtr
typedef Alembic::Util::shared_ptr< ScalarPropertyWriterScalarPropertyWriterPtr
typedef Alembic::Util::shared_ptr< BasePropertyWriterBasePropertyWriterPtr
typedef Alembic::Util::shared_ptr< ArchiveReaderArchiveReaderPtr
 Smart Ptrs to Readers.
typedef Alembic::Util::shared_ptr< ObjectReaderObjectReaderPtr
typedef Alembic::Util::shared_ptr< CompoundPropertyReaderCompoundPropertyReaderPtr
typedef Alembic::Util::shared_ptr< ArrayPropertyReaderArrayPropertyReaderPtr
typedef Alembic::Util::shared_ptr< ScalarPropertyReaderScalarPropertyReaderPtr
typedef Alembic::Util::shared_ptr< BasePropertyReaderBasePropertyReaderPtr
typedef int64_t index_t
typedef float64_t chrono_t
typedef Alembic::Util::shared_ptr< ReadArraySampleCacheReadArraySampleCachePtr
typedef Alembic::Util::shared_ptr< TimeSamplingTimeSamplingPtr

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

◆ ArchiveReaderPtr

Smart Ptrs to Readers.

Definition at line 90 of file ForwardDeclarations.h.

◆ ArchiveWriterPtr

Smart Ptrs to Writers.

Definition at line 81 of file ForwardDeclarations.h.

◆ ArrayPropertyReaderPtr

◆ ArrayPropertyWriterPtr

◆ ArraySamplePtr

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.

◆ BasePropertyReaderPtr

◆ BasePropertyWriterPtr

◆ chrono_t

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.

◆ CompoundPropertyReaderPtr

◆ CompoundPropertyWriterPtr

◆ index_t

Index type Just being pedantic.

Definition at line 62 of file Foundation.h.

◆ ObjectReaderPtr

Definition at line 91 of file ForwardDeclarations.h.

◆ ObjectWriterPtr

Definition at line 82 of file ForwardDeclarations.h.

◆ ReadArraySampleCachePtr

◆ ScalarPropertyReaderPtr

◆ ScalarPropertyWriterPtr

◆ TimeSamplingPtr

Definition at line 137 of file TimeSampling.h.

Enumeration Type Documentation

◆ PropertyType

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

◆ AllocateArraySample()

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.

◆ GetLibraryVersion()

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)"

References ALEMBIC_EXPORT.

◆ GetLibraryVersionShort()

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"

References ALEMBIC_EXPORT.

◆ operator<<()

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.

References Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::DataType::getExtent(), and Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::DataType::getPod().

Here is the call graph for this function:

◆ StdHash()

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

◆ TAllocateArraySample()

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

Definition at line 181 of file ArraySample.h.