52 :
public AbcA::ArchiveReader
53 ,
public Alembic::Util::enable_shared_from_this<ArImpl>
56 friend class ReadArchive;
58 ArImpl(
const std::string &iFileName,
62 ArImpl(
const std::vector< std::istream * > & iStreams );
71 virtual const std::string &
getName()
const;
75 virtual AbcA::ObjectReaderPtr
getTop();
77 virtual AbcA::TimeSamplingPtr getTimeSampling( Util::uint32_t iIndex );
83 return AbcA::ReadArraySampleCachePtr();
87 setReadArraySampleCachePtr( AbcA::ReadArraySampleCachePtr iPtr )
91 virtual AbcA::index_t getMaxNumSamplesForTimeSamplingIndex(
92 Util::uint32_t iIndex );
96 return m_timeSamples.size();
101 return m_archiveVersion;
104 StreamIDPtr getStreamID();
106 const std::vector< AbcA::MetaData > & getIndexedMetaData();
111 std::string m_fileName;
116 Alembic::Util::weak_ptr< AbcA::ObjectReader > m_top;
117 Alembic::Util::shared_ptr < OrData > m_data;
120 Util::int32_t m_archiveVersion;
122 std::vector < AbcA::TimeSamplingPtr > m_timeSamples;
123 std::vector < AbcA::index_t > m_maxSamples;
125 ObjectHeaderPtr m_header;
129 std::vector< AbcA::MetaData > m_indexMetaData;