HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Alembic::AbcCoreFactory::ALEMBIC_VERSION_NS::IFactory Class Reference

#include <IFactory.h>

Public Types

enum  CoreType { kHDF5, kOgawa, kLayer, kUnknown }
 The type which yielded a valid IArchive (or kUnknown if invalid) More...
 
enum  OgawaReadStrategy { kFileStreams, kMemoryMappedFiles }
 

Public Member Functions

 IFactory ()
 
 ~IFactory ()
 
Alembic::Abc::IArchive getArchive (const std::string &iFileName, CoreType &oType)
 
Alembic::Abc::IArchive getArchive (const std::string &iFileName)
 
Alembic::Abc::IArchive getArchive (const std::vector< std::string > &iFileNames)
 
Alembic::Abc::IArchive getArchive (const std::vector< std::string > &iFileNames, CoreType &oType)
 
Alembic::Abc::IArchive getArchive (const std::vector< std::istream * > &iStreams, CoreType &oType)
 
void setHDF5CacheHierarchy (bool iCacheHierarchy)
 
bool getHDF5CacheHierarchy () const
 Gets whether an HDF5 file will use the cached hierarchy. More...
 
void setSampleCache (Alembic::AbcCoreAbstract::ReadArraySampleCachePtr iCachePtr)
 Set the array sample cache, the HDF5 implementation optionally uses this. More...
 
Alembic::AbcCoreAbstract::ReadArraySampleCachePtr getSampleCache () const
 Get the array sample cache. More...
 
size_t getOgawaNumStreams () const
 
void setOgawaNumStreams (size_t iNumStreams)
 
OgawaReadStrategy getOgawaReadStrategy ()
 Get the I/O strategy used for reading Ogawa files. More...
 
void setOgawaReadStrategy (OgawaReadStrategy iStrategy)
 
Alembic::Abc::ErrorHandler::Policy getPolicy ()
 Gets the error handler policy. More...
 
void setPolicy (Alembic::Abc::ErrorHandler::Policy iPolicy)
 Sets the error handler policy, the default is kThrowPolicy. More...
 

Detailed Description

Definition at line 48 of file IFactory.h.

Member Enumeration Documentation

The type which yielded a valid IArchive (or kUnknown if invalid)

Enumerator
kHDF5 
kOgawa 
kLayer 
kUnknown 

Definition at line 55 of file IFactory.h.

Enumerator
kFileStreams 
kMemoryMappedFiles 

Definition at line 126 of file IFactory.h.

Constructor & Destructor Documentation

Alembic::AbcCoreFactory::ALEMBIC_VERSION_NS::IFactory::IFactory ( )
Alembic::AbcCoreFactory::ALEMBIC_VERSION_NS::IFactory::~IFactory ( )

Member Function Documentation

Alembic::Abc::IArchive Alembic::AbcCoreFactory::ALEMBIC_VERSION_NS::IFactory::getArchive ( const std::string iFileName,
CoreType oType 
)

Try to open a file and set oType to the one that yields a successful oType, or kUnknown if the IArchive isn't valid

Alembic::Abc::IArchive Alembic::AbcCoreFactory::ALEMBIC_VERSION_NS::IFactory::getArchive ( const std::string iFileName)

Try to open a file and return IArchive. If the file wasn't a valid file or known type and invalid archive is returned.

Alembic::Abc::IArchive Alembic::AbcCoreFactory::ALEMBIC_VERSION_NS::IFactory::getArchive ( const std::vector< std::string > &  iFileNames)

Open a series of alembic files, layering each file on top of the next to present a single IArchive

Alembic::Abc::IArchive Alembic::AbcCoreFactory::ALEMBIC_VERSION_NS::IFactory::getArchive ( const std::vector< std::string > &  iFileNames,
CoreType oType 
)

Try to open and layer a series of files file and return IArchive. If all of the files are invalid, an invalid archive is returned. If only some of the archives are invalid, only the good ones are opened and layered, while invalid ones are ignored.

Alembic::Abc::IArchive Alembic::AbcCoreFactory::ALEMBIC_VERSION_NS::IFactory::getArchive ( const std::vector< std::istream * > &  iStreams,
CoreType oType 
)

Use the streams (Alembic does not take ownership) to read the data from This is currently only valid for Ogawa. The streams must all reference the same data.

bool Alembic::AbcCoreFactory::ALEMBIC_VERSION_NS::IFactory::getHDF5CacheHierarchy ( ) const
inline

Gets whether an HDF5 file will use the cached hierarchy.

Definition at line 100 of file IFactory.h.

size_t Alembic::AbcCoreFactory::ALEMBIC_VERSION_NS::IFactory::getOgawaNumStreams ( ) const
inline

Gets the number of streams that will be opened when opening an Ogawa file

Definition at line 117 of file IFactory.h.

OgawaReadStrategy Alembic::AbcCoreFactory::ALEMBIC_VERSION_NS::IFactory::getOgawaReadStrategy ( )
inline

Get the I/O strategy used for reading Ogawa files.

Definition at line 133 of file IFactory.h.

Alembic::Abc::ErrorHandler::Policy Alembic::AbcCoreFactory::ALEMBIC_VERSION_NS::IFactory::getPolicy ( )
inline

Gets the error handler policy.

Definition at line 144 of file IFactory.h.

Alembic::AbcCoreAbstract::ReadArraySampleCachePtr Alembic::AbcCoreFactory::ALEMBIC_VERSION_NS::IFactory::getSampleCache ( ) const
inline

Get the array sample cache.

Definition at line 110 of file IFactory.h.

void Alembic::AbcCoreFactory::ALEMBIC_VERSION_NS::IFactory::setHDF5CacheHierarchy ( bool  iCacheHierarchy)
inline

If opening an HDF5 file, sets whether to use the cached hierarchy if it exists, the default value is true

Definition at line 94 of file IFactory.h.

void Alembic::AbcCoreFactory::ALEMBIC_VERSION_NS::IFactory::setOgawaNumStreams ( size_t  iNumStreams)
inline

Sets the number of streams that will be opened when opening an Ogawa file, the default is 1

Definition at line 121 of file IFactory.h.

void Alembic::AbcCoreFactory::ALEMBIC_VERSION_NS::IFactory::setOgawaReadStrategy ( OgawaReadStrategy  iStrategy)
inline

Sets the I/O strategy used for reading Ogawa files. The default is kMemoryMappedFiles.

Definition at line 137 of file IFactory.h.

void Alembic::AbcCoreFactory::ALEMBIC_VERSION_NS::IFactory::setPolicy ( Alembic::Abc::ErrorHandler::Policy  iPolicy)
inline

Sets the error handler policy, the default is kThrowPolicy.

Definition at line 147 of file IFactory.h.

void Alembic::AbcCoreFactory::ALEMBIC_VERSION_NS::IFactory::setSampleCache ( Alembic::AbcCoreAbstract::ReadArraySampleCachePtr  iCachePtr)
inline

Set the array sample cache, the HDF5 implementation optionally uses this.

Definition at line 103 of file IFactory.h.


The documentation for this class was generated from the following file: