37#ifndef Alembic_AbcCoreHDF5_ArImpl_h
38#define Alembic_AbcCoreHDF5_ArImpl_h
40#include <Alembic/AbcCoreHDF5/Foundation.h>
41#include <Alembic/AbcCoreHDF5/HDF5Hierarchy.h>
44namespace AbcCoreHDF5 {
45namespace ALEMBIC_VERSION_NS {
52 :
public AbcA::ArchiveReader
53 ,
public Alembic::Util::enable_shared_from_this<ArImpl>
56 friend class ReadArchive;
58 ArImpl(
const std::string &iFileName,
59 AbcA::ReadArraySampleCachePtr iCache,
60 const bool iCacheHierarchy );
68 virtual const std::string &
getName()
const;
72 virtual AbcA::ObjectReaderPtr
getTop();
80 return m_readArraySampleCache;
87 m_readArraySampleCache = iPtr;
95 return m_timeSamples.size();
100 return m_archiveVersion;
104 std::string m_fileName;
107 Alembic::Util::weak_ptr< AbcA::ObjectReader > m_top;
108 Alembic::Util::shared_ptr < OrData > m_data;
109 ObjectHeaderPtr m_header;
112 int32_t m_archiveVersion;
114 std::vector < AbcA::TimeSamplingPtr > m_timeSamples;
115 std::vector < AbcA::index_t > m_maxSamples;
117 AbcA::ReadArraySampleCachePtr m_readArraySampleCache;
124using namespace ALEMBIC_VERSION_NS;
virtual AbcA::ObjectReaderPtr getTop()
Definition ArImpl.cpp:148
virtual AbcA::index_t getMaxNumSamplesForTimeSamplingIndex(uint32_t iIndex)
Definition ArImpl.cpp:179
virtual const AbcA::MetaData & getMetaData() const
Definition ArImpl.cpp:142
virtual uint32_t getNumTimeSamplings()
Definition ArImpl.h:93
virtual void setReadArraySampleCachePtr(AbcA::ReadArraySampleCachePtr iPtr)
THIS METHOD IS NOT MULTITHREAD SAFE.
Definition ArImpl.h:85
virtual AbcA::ArchiveReaderPtr asArchivePtr()
Definition ArImpl.cpp:173
virtual const std::string & getName() const
Definition ArImpl.cpp:136
virtual AbcA::TimeSamplingPtr getTimeSampling(uint32_t iIndex)
Returns the TimeSampling at a given index.
Definition ArImpl.cpp:164
virtual int32_t getArchiveVersion()
Definition ArImpl.h:98
virtual AbcA::ReadArraySampleCachePtr getReadArraySampleCachePtr()
Definition ArImpl.h:78
Definition HDF5Hierarchy.h:73
Definition Foundation.h:176
Alembic namespace ...
Definition ArchiveInfo.cpp:39