37#ifndef Alembic_AbcGeom_IFaceSet_h
38#define Alembic_AbcGeom_IFaceSet_h
40#include <Alembic/Util/Export.h>
41#include <Alembic/AbcGeom/Foundation.h>
42#include <Alembic/AbcGeom/SchemaInfoDeclarations.h>
43#include <Alembic/AbcGeom/IGeomParam.h>
44#include <Alembic/AbcGeom/FaceSetExclusivity.h>
45#include <Alembic/AbcGeom/IGeomBase.h>
49namespace ALEMBIC_VERSION_NS {
67 Abc::Int32ArraySamplePtr getFaces()
const {
return m_faces; }
70 Abc::Box3d getSelfBounds()
const {
return m_selfBounds; }
74 return m_faces.get() != 0;
81 m_selfBounds.makeEmpty();
84 ALEMBIC_OPERATOR_BOOL( valid() );
87 friend class IFaceSetSchema;
89 Abc::Int32ArraySamplePtr m_faces;
93 Abc::Box3d m_selfBounds;
120 const std::string &iName,
126 init( iArg0, iArg1 );
138 init( iArg0, iArg1 );
142 template <
class CPROP_PTR>
144 Abc::WrapExistingFlag iFlag,
150 init( iArg0, iArg1 );
161 bool isConstant()
const {
return (m_facesProperty.isConstant ()); }
169 size_t getNumSamples()
const;
174 if ( m_facesProperty.valid() )
175 return m_facesProperty.getTimeSampling();
176 return getObject().getArchive().getTimeSampling(0);
179 void get( Sample &iSamp,
189 FaceSetExclusivity getFaceExclusivity()
const;
191 Abc::IInt32ArrayProperty getFacesProperty()
const
193 return m_facesProperty;
206 m_facesProperty.reset();
208 IGeomBaseSchema<FaceSetSchemaInfo>::reset();
215 return ( IGeomBaseSchema<FaceSetSchemaInfo>::valid() &&
216 m_facesProperty.valid() );
226 Abc::IInt32ArrayProperty m_facesProperty;
234typedef Util::shared_ptr< IFaceSet > IFaceSetPtr;
238using namespace ALEMBIC_VERSION_NS;
Definition Argument.h:120
IObject getObject() const
Definition IBaseProperty.h:207
Definition ICompoundProperty.h:53
Definition ISampleSelector.h:49
Definition ISchemaObject.h:56
Sample()
Users never create this data directly.
Definition IFaceSet.h:64
IFaceSetSchema()
Definition IFaceSet.h:111
AbcA::TimeSamplingPtr getTimeSampling() const
Return the time sampling.
Definition IFaceSet.h:172
ALEMBIC_OVERRIDE_OPERATOR_BOOL(IFaceSetSchema::valid())
bool valid() const
Definition IFaceSet.h:213
bool isConstant() const
Default assignment and copy operator used.
Definition IFaceSet.h:161
IFaceSetSchema(const ICompoundProperty &iParent, const std::string &iName, const Abc::Argument &iArg0=Abc::Argument(), const Abc::Argument &iArg1=Abc::Argument())
Definition IFaceSet.h:119
void reset()
Definition IFaceSet.h:204
IFaceSetSchema(CPROP_PTR iThis, Abc::WrapExistingFlag iFlag, const Abc::Argument &iArg0=Abc::Argument(), const Abc::Argument &iArg1=Abc::Argument())
wrap an existing schema object
Definition IFaceSet.h:143
IFaceSetSchema(const ICompoundProperty &iProp, const Abc::Argument &iArg0=Abc::Argument(), const Abc::Argument &iArg1=Abc::Argument())
Definition IFaceSet.h:133
IFaceSetSchema this_type
Definition IFaceSet.h:103
IGeomBaseSchema()
Definition IGeomBase.h:76
Alembic namespace ...
Definition ArchiveInfo.cpp:39