37#ifndef Alembic_Abc_OBaseProperty_h
38#define Alembic_Abc_OBaseProperty_h
40#include <Alembic/Abc/Foundation.h>
41#include <Alembic/Abc/Base.h>
42#include <Alembic/Abc/Argument.h>
43#include <Alembic/Abc/OObject.h>
44#include <Alembic/Abc/OArchive.h>
48namespace ALEMBIC_VERSION_NS {
56template <
class PROP_PTR>
66 friend class OCompoundProperty;
86 ErrorHandler::Policy iPolicy );
108 {
return getHeader().getPropertyType(); }
121 AbcA::kCompoundProperty; }
144 {
return getHeader().getTimeSampling(); }
162 PROP_PTR
getPtr()
const {
return m_property; }
166 void reset() { m_property.reset(); Base::reset(); }
172 return ( Base::valid() && m_property );
191template <
class PROP_PTR>
195 ErrorHandler::Policy iPolicy )
198 getErrorHandler().setPolicy( iPolicy );
203const AbcA::PropertyHeader g_phd;
210template <
class PROP_PTR>
213 ALEMBIC_ABC_SAFE_CALL_BEGIN(
"OBaseProperty::getHeader()" );
215 return m_property->getHeader();
217 ALEMBIC_ABC_SAFE_CALL_END();
224template <
class PROP_PTR>
227 ALEMBIC_ABC_SAFE_CALL_BEGIN(
"OBaseProperty::getObject()" );
229 return OObject( m_property->getObject(),
230 getErrorHandlerPolicy() );
232 ALEMBIC_ABC_SAFE_CALL_END();
240using namespace ALEMBIC_VERSION_NS;
Definition OBaseProperty.h:58
bool isCompound() const
Definition OBaseProperty.h:120
const std::string & getName() const
Definition OBaseProperty.h:102
OBasePropertyT()
Definition OBaseProperty.h:74
bool isSimple() const
Definition OBaseProperty.h:125
const AbcA::PropertyHeader & getHeader() const
Definition OBaseProperty.h:211
PROP_PTR getPtr() const
Definition OBaseProperty.h:162
void reset()
Definition OBaseProperty.h:166
ALEMBIC_OPERATOR_BOOL(valid())
OBasePropertyT(PROP_PTR iPtr, ErrorHandler::Policy iPolicy)
Definition OBaseProperty.h:193
AbcA::TimeSamplingPtr getTimeSampling() const
Definition OBaseProperty.h:143
AbcA::PropertyType getPropertyType() const
Definition OBaseProperty.h:107
OBasePropertyT< PROP_PTR > this_type
Definition OBaseProperty.h:62
OObject getObject() const
Definition OBaseProperty.h:225
const AbcA::DataType & getDataType() const
Definition OBaseProperty.h:136
bool valid() const
Definition OBaseProperty.h:170
bool isScalar() const
Definition OBaseProperty.h:112
bool isArray() const
Definition OBaseProperty.h:116
const AbcA::MetaData & getMetaData() const
Definition OBaseProperty.h:129
Alembic namespace ...
Definition ArchiveInfo.cpp:39