101 , myComputedTimes(false)
102 , myBadArchive(false)
129 {
return myComputedTimes && myStartTime != myEndTime; }
133 {
return myStartTime; }
135 {
return myEndTime; }
138 const std::vector<std::string> &
filenames()
const {
return myFilenames; }
147 std::vector<std::string> myFilenames;
150 bool myComputedTimes;
164 bool valid()
const {
return myArchive != NULL; }
167 void stopReceivingEvents();
171 virtual void cleared(
bool purged) = 0;
176 void setArchivePtr(
void *
a) { myArchive =
a; }
177 const void *
archive()
const {
return myArchive; }
188 static const char *getAlembicCompileNamespace();
204 box.max[0], box.max[1], box.max[2]);
213 static void clearCache(
const char *
filename=NULL);
215 static void setFileCacheSize(
int nfiles);
217 static int fileCacheSize();
226 static bool addEventHandler(
const std::vector<std::string> &filenames,
227 const ArchiveEventHandlerPtr &handler);
234 static GABC_IObject findObject(
const std::vector<std::string> &filenames,
236 static GABC_IObject findObject(
const std::vector<std::string> &filenames,
239 static const PathList &getObjectList(
const std::vector<std::string> &filenames,
240 bool include_face_sets=
false);
254 return M44d((
const double (*)[4])m.
data());
264 static bool getLocalTransform(
265 const std::vector<std::string> &filenames,
270 bool &inheritsXform);
277 static bool getWorldTransform(
278 const std::vector<std::string> &filenames,
283 bool &inheritsXform);
287 static bool getWorldTransform(
292 bool &inheritsXform);
294 static bool isTransformAnimated(
309 static bool getBoundingBox(
321 static bool walk(
const std::vector<std::string> &filenames, Walker &walker);
324 static bool walk(
const std::vector<std::string> &filenames, Walker &walker,
326 static bool walk(
const std::vector<std::string> &filenames, Walker &walker,
335 static bool isABCPropertyAnimated(ICompoundProperty arb);
336 static bool isABCPropertyConstant(ICompoundProperty arb);
344 static bool importUserPropertyDictionary(
UT_JSONWriter *vals_writer,
355 OCompoundProperty *ancestor,
Alembic::Abc::OArrayProperty OArrayProperty
UT_Matrix4T< fpreal64 > UT_Matrix4D
GT_API const UT_StringHolder filename
GT_API const UT_StringHolder time
fpreal getStartTime() const
Get global start and end times, computed when walking the archive.
virtual bool interrupted() const
Allow for interruption of walk.
Alembic::Util::shared_ptr< ObjectReader > ObjectReaderPtr
UT_SharedPtr< ArchiveEventHandler > ArchiveEventHandlerPtr
static M44d getM(const UT_Matrix4D &m)
Create an M44d from a UT_Matrix4D.
Alembic::Abc::OScalarProperty OScalarProperty
bool valid() const
Return whether the event handler is wired up to an archive.
static Box3d getBox(const UT_BoundingBox &box)
Create a Box3d from a UT_BoundingBox.
Class which writes ASCII or binary JSON streams.
GLuint const GLchar * name
void setFilenames(const std::vector< std::string > &f)
bool badArchive() const
Return whether the walking error was caused by a bad Alembic archive.
Alembic::Abc::OCompoundProperty OCompoundProperty
Matrix44< double > M44d
4x4 matrix of double
Alembic::Abc::Box3d Box3d
static const UT_StringHolder theUserPropsValsAttrib
Vec3< double > V3d
Vec3 of double.
bool computedValidTimeRange() const
Returns true if a valid time range has been computed during the walk.
Alembic::Util::shared_ptr< TimeSampling > TimeSamplingPtr
const std::vector< std::string > & filenames() const
static UT_BoundingBox getBox(const Box3d &box)
Create a UT_BoundingBox from a Box3d.
std::shared_ptr< T > UT_SharedPtr
Wrapper around std::shared_ptr.
virtual bool preProcess(const GABC_IObject &node)
UT_BoundingBoxT< float > UT_BoundingBox
const void * archive() const
GLboolean GLboolean GLboolean GLboolean a
GLsizei const GLchar *const * string
static UT_Matrix4D getM(const M44d &m)
Create a UT_Matrix4D from an M44d.
fpreal getEndTime() const
Class to efficiently find a new name when a collision is detected.
Box< V3d > Box3d
3D box of base type double.
GLsizei const GLint box[]
const T * data() const
Return the raw matrix data.
Alembic::Abc::ObjectReaderPtr ObjectReaderPtr
static const UT_StringHolder theUserPropsMetaAttrib
UT_Map< std::string, GABC_OProperty * > PropertyMap
Event functor called when an archive is flushed from the cache.
static const UT_StringHolder theLockGeometryParameter
std::vector< std::string > PathList
Alembic::Abc::index_t index_t
std::pair< std::string, GABC_OProperty * > PropertyMapInsert
Alembic::Abc::chrono_t chrono_t
ImageBuf OIIO_API add(Image_or_Const A, Image_or_Const B, ROI roi={}, int nthreads=0)
Alembic::Abc::ICompoundProperty ICompoundProperty
Alembic::Abc::TimeSamplingPtr TimeSamplingPtr
virtual ~ArchiveEventHandler()