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

Classes

struct  ArchiveReaderConstructor
 
struct  ArchiveWriterConstructor
 

Detailed Description

In order for an implementation to concretely provide a starting point for using the abstract API, a single "explicitly linked" function to start from is necessary. That function will return, in the case of reading, an ArchiveReaderPtr. This typedef provides a signature that such a function should adhere to. This idiom is a workaround for the lack of virtual constructors in C++, and to avoid creating another class (such as "Implementation" or something similar) This is provided here as an illustration. It does not need to be derived from explicitly.

In order for an implementation to concretely provide a starting point for using the abstract API, a single "explicitly linked" function to start from is necessary. That function will return, in the case of writing, an ArchiveWriterPtr. This typedef provides a signature that such a function should adhere to. This idiom is a workaround for the lack of virtual constructors in C++, and to avoid creating another class (such as "Implementation" or something similar)