Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO > Class Template Reference

`#include <ISchema.h>`

Inheritance diagram for Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >:
[legend]
Collaboration diagram for Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >:
[legend]

## Public Types

typedef INFO | info_type
typedef ISchema< INFO > | this_type
Public Types inherited from Alembic::Abc::ALEMBIC_VERSION_NS::ICompoundProperty
typedef ICompoundProperty | this_type

## Public Member Functions

| ISchema ()
| ISchema (const ICompoundProperty &iParent, const std::string &iName, const Argument &iArg0=Argument(), const Argument &iArg1=Argument())
| ISchema (const ICompoundProperty &iProperty, const Argument &iArg0=Argument(), const Argument &iArg1=Argument())
| ISchema (const ICompoundProperty &iProperty, WrapExistingFlag iFlag, const Argument &iArg0=Argument(), const Argument &iArg1=Argument())
virtual | ~ISchema ()
Public Member Functions inherited from Alembic::Abc::ALEMBIC_VERSION_NS::ICompoundProperty
| ICompoundProperty ()
| ICompoundProperty (const ICompoundProperty &iParent, const std::string &iName, const Argument &iArg0=Argument())
| ICompoundProperty (AbcA::CompoundPropertyReaderPtr iPtr, const Argument &iArg0=Argument(), const Argument &iArg1=Argument())
| ICompoundProperty (AbcA::CompoundPropertyReaderPtr iPtr, WrapExistingFlag, const Argument &iArg0=Argument(), const Argument &iArg1=Argument())
| ICompoundProperty (const IObject &iObject, const Argument &iArg0=Argument(), const Argument &iArg1=Argument())
| ICompoundProperty (const IObject &iObject, TopFlag, const Argument &iArg0=Argument(), const Argument &iArg1=Argument())
| ~ICompoundProperty ()
size_t | getNumProperties () const
| Returns the number of properties contained in this ICompoundProperty. More...
const AbcA::PropertyHeader & | getPropertyHeader (size_t i) const
const AbcA::PropertyHeader * | getPropertyHeader (const std::string &iName) const
ICompoundProperty | getParent () const
Public Member Functions inherited from Alembic::Abc::ALEMBIC_VERSION_NS::IBasePropertyT< AbcA::CompoundPropertyReaderPtr >
const AbcA::PropertyHeader & | getHeader () const
const std::string & | getName () const
AbcA::PropertyType | getPropertyType () const
bool | isScalar () const
bool | isArray () const
bool | isCompound () const
bool | isSimple () const
const AbcA::MetaData & | getMetaData () const
const AbcA::DataType & | getDataType () const
AbcA::TimeSamplingPtr | getTimeSampling () const
IObject | getObject () const
AbcA::CompoundPropertyReaderPtr | getPtr () const
void | reset ()
bool | valid () const
| ALEMBIC_OPERATOR_BOOL (valid())
Public Member Functions inherited from Alembic::Abc::ALEMBIC_VERSION_NS::Base
ErrorHandler & | getErrorHandler () const
ErrorHandler::Policy | getErrorHandlerPolicy () const

## Static Public Member Functions

static const char * | getSchemaTitle ()
static const char * | getDefaultSchemaName ()
static bool | matches (const AbcA::MetaData &iMetaData, SchemaInterpMatching iMatching=kStrictMatching)
static bool | matches (const AbcA::PropertyHeader &iHeader, SchemaInterpMatching iMatching=kStrictMatching)

## Additional Inherited Members

Protected Types inherited from Alembic::Abc::ALEMBIC_VERSION_NS::IBasePropertyT< AbcA::CompoundPropertyReaderPtr >
typedef IBasePropertyT< AbcA::CompoundPropertyReaderPtr > | this_type
typedef IBasePropertyT< AbcA::CompoundPropertyReaderPtr > | operator_bool_base_type
Protected Member Functions inherited from Alembic::Abc::ALEMBIC_VERSION_NS::IBasePropertyT< AbcA::CompoundPropertyReaderPtr >
| IBasePropertyT ()
| IBasePropertyT (AbcA::CompoundPropertyReaderPtr iPtr, ErrorHandler::Policy iPolicy)
Protected Member Functions inherited from Alembic::Abc::ALEMBIC_VERSION_NS::Base
| Base ()
| Base (ErrorHandler::Policy iPolicy)
| Base (const Base &iCopy)
Base & | operator= (const Base &iCopy)
bool | valid () const
void | reset ()
Protected Attributes inherited from Alembic::Abc::ALEMBIC_VERSION_NS::IBasePropertyT< AbcA::CompoundPropertyReaderPtr >
AbcA::CompoundPropertyReaderPtr | m_property

## Detailed Description

template<class INFO>
class Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >

See Schema Notes in OSchema.h ... Usually used as a base class, but could also theoretically be used as a standalone

Definition at line 57 of file ISchema.h.

## Member Typedef Documentation

## info_type

template<class INFO >

typedef INFO Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::info_type

Definition at line 63 of file ISchema.h.

## this_type

template<class INFO >

typedef ISchema<INFO> Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::this_type

Definition at line 64 of file ISchema.h.

## Constructor & Destructor Documentation

## ISchema() [1/4]

template<class INFO >

Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::ISchema | ( |  | ) |

inline

The default constructor creates an empty ISchema function set.

Definition at line 112 of file ISchema.h.

Referenced by Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::ISchema().

Here is the caller graph for this function:

## ISchema() [2/4]

template<class INFO >

Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::ISchema | ( | const ICompoundProperty & | iParent,
|  | const std::string & | iName,
|  | const Argument & | iArg0 = `Argument()`,
|  | const Argument & | iArg1 = `Argument()`
| ) |  |

inline

Creates a new Compound Property Reader with the schema information added to the metadata. arguments count include error handling, strictness matching.

Definition at line 117 of file ISchema.h.

## ISchema() [3/4]

template<class INFO >

Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::ISchema | ( | const ICompoundProperty & | iProperty,
|  | const Argument & | iArg0 = `Argument()`,
|  | const Argument & | iArg1 = `Argument()`
| ) |  |

inline

Wrap an existing compound property, checking that it matches the schema title info, if strict matching has been selected. Arguments allow selection of error handling and matching strictness

Definition at line 128 of file ISchema.h.

References ABCA_ASSERT, ALEMBIC_ABC_SAFE_CALL_BEGIN, ALEMBIC_ABC_SAFE_CALL_END_RESET, Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::MetaData::get(), Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::getDefaultSchemaName(), Alembic::Abc::ALEMBIC_VERSION_NS::IBasePropertyT< AbcA::CompoundPropertyReaderPtr >::getHeader(), Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::PropertyHeader::getMetaData(), Alembic::Abc::ALEMBIC_VERSION_NS::ICompoundProperty::getParent(), Alembic::Abc::ALEMBIC_VERSION_NS::GetSchemaInterpMatching(), Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::matches(), and Alembic::Abc::ALEMBIC_VERSION_NS::IBasePropertyT< PROP_PTR >::valid().

Here is the call graph for this function:

## ISchema() [4/4]

template<class INFO >

Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::ISchema | ( | const ICompoundProperty & | iProperty,
|  | WrapExistingFlag | iFlag,
|  | const Argument & | iArg0 = `Argument()`,
|  | const Argument & | iArg1 = `Argument()`
| ) |  |

inline

Definition at line 156 of file ISchema.h.

References Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::ISchema().

Here is the call graph for this function:

## ~ISchema()

template<class INFO >

virtual Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::~ISchema | ( |  | ) |

inlinevirtual

Default copy constructor used Default assignment operator used.

Definition at line 167 of file ISchema.h.

## Member Function Documentation

## getDefaultSchemaName()

template<class INFO >

static const char * Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::getDefaultSchemaName | ( |  | ) |

inlinestatic

Return the default name for instances of this schema. Often something like ".geom"

Definition at line 75 of file ISchema.h.

Referenced by Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::ISchema().

Here is the caller graph for this function:

## getSchemaTitle()

template<class INFO >

static const char * Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::getSchemaTitle | ( |  | ) |

inlinestatic

Return the schema title expected of this property. An empty title matches everything

Definition at line 68 of file ISchema.h.

Referenced by Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::matches().

Here is the caller graph for this function:

## matches() [1/2]

template<class INFO >

static bool Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::matches | ( | const AbcA::MetaData & | iMetaData,
|  | SchemaInterpMatching | iMatching = `kStrictMatching`
| ) |  |

inlinestatic

This will check whether or not a given entity (as represented by a metadata) strictly matches the interpretation of this schema object

Definition at line 83 of file ISchema.h.

References Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::MetaData::get(), Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::getSchemaTitle(), Alembic::Abc::ALEMBIC_VERSION_NS::kNoMatching, Alembic::Abc::ALEMBIC_VERSION_NS::kSchemaTitleMatching, and Alembic::Abc::ALEMBIC_VERSION_NS::kStrictMatching.

Referenced by Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::ISchema(), and Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::matches().

Here is the call graph for this function:
Here is the caller graph for this function:

## matches() [2/2]

template<class INFO >

static bool Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::matches | ( | const AbcA::PropertyHeader & | iHeader,
|  | SchemaInterpMatching | iMatching = `kStrictMatching`
| ) |  |

inlinestatic

This will check whether or not a given object (as represented by an object header) strictly matches the interpretation of this schema object, as well as the data type.

Definition at line 100 of file ISchema.h.

References Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::PropertyHeader::getMetaData(), and Alembic::Abc::ALEMBIC_VERSION_NS::ISchema< INFO >::matches().

Here is the call graph for this function:

The documentation for this class was generated from the following file:

- opt/local/include/Alembic/Abc/ISchema.h