Alembic 1.8.11
Loading...
Searching...
No Matches
Alembic::AbcCoreOgawa::ALEMBIC_VERSION_NS::CpwImpl Class Reference
Inheritance diagram for Alembic::AbcCoreOgawa::ALEMBIC_VERSION_NS::CpwImpl:
Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::CompoundPropertyWriter Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::BasePropertyWriter Alembic::Util::ALEMBIC_VERSION_NS::noncopyable

Public Member Functions

 CpwImpl (AbcA::ObjectWriterPtr iParent, CpwDataPtr iData, const AbcA::MetaData &iMeta)
 CpwImpl (AbcA::CompoundPropertyWriterPtr iParent, Ogawa::OGroupPtr iGroup, PropertyHeaderPtr iHeader, size_t iIndex)
virtual const AbcA::PropertyHeader & getHeader () const
virtual AbcA::ObjectWriterPtr getObject ()
virtual AbcA::CompoundPropertyWriterPtr getParent ()
virtual AbcA::CompoundPropertyWriterPtr asCompoundPtr ()
virtual size_t getNumProperties ()
virtual const AbcA::PropertyHeader & getPropertyHeader (size_t i)
virtual const AbcA::PropertyHeader * getPropertyHeader (const std::string &iName)
virtual AbcA::BasePropertyWriterPtr getProperty (const std::string &iName)
virtual AbcA::ScalarPropertyWriterPtr createScalarProperty (const std::string &iName, const AbcA::MetaData &iMetaData, const AbcA::DataType &iDataType, Util::uint32_t iTimeSamplingIndex)
virtual AbcA::ArrayPropertyWriterPtr createArrayProperty (const std::string &iName, const AbcA::MetaData &iMetaData, const AbcA::DataType &iDataType, Util::uint32_t iTimeSamplingIndex)
virtual AbcA::CompoundPropertyWriterPtr createCompoundProperty (const std::string &iName, const AbcA::MetaData &iMetaData)
void fillHash (size_t iIndex, Util::uint64_t iHash0, Util::uint64_t iHash1)
Public Member Functions inherited from Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::CompoundPropertyWriter
virtual ~CompoundPropertyWriter ()
BasePropertyWriterPtr getProperty (size_t i)
virtual ScalarPropertyWriterPtr createScalarProperty (const std::string &iName, const MetaData &iMetaData, const DataType &iDataType, uint32_t iTimeSamplingIndex)=0
virtual ArrayPropertyWriterPtr createArrayProperty (const std::string &iName, const MetaData &iMetaData, const DataType &iDataType, uint32_t iTimeSamplingIndex)=0
virtual CompoundPropertyWriterPtr createCompoundProperty (const std::string &iName, const MetaData &iMetaData)=0
Public Member Functions inherited from Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::BasePropertyWriter
virtual ~BasePropertyWriter ()
const std::string & getName () const
PropertyType getPropertyType () const
bool isScalar () const
bool isArray () const
bool isCompound () const
bool isSimple () const
const MetaDatagetMetaData () const
const DataTypegetDataType () const
TimeSamplingPtr getTimeSampling () const
virtual ScalarPropertyWriterPtr asScalarPtr ()
virtual ArrayPropertyWriterPtr asArrayPtr ()

Member Function Documentation

◆ asCompoundPtr()

AbcA::CompoundPropertyWriterPtr Alembic::AbcCoreOgawa::ALEMBIC_VERSION_NS::CpwImpl::asCompoundPtr ( )
virtual

Up-cast this base property to a CompoundProperty, if such an upcast is valid. This can be checked with the isCompound() function. If the upcast is not valid, an empty pointer will be returned. This default implementation returns an empty pointer.

Reimplemented from Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::BasePropertyWriter.

◆ getHeader()

const AbcA::PropertyHeader & Alembic::AbcCoreOgawa::ALEMBIC_VERSION_NS::CpwImpl::getHeader ( ) const
virtual

Properties are created with a collection of metadata that is stored in a lightweight structure called PropertyHeader. This returns a constant reference to the PropertyHeader which was given upon creation.

Implements Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::BasePropertyWriter.

◆ getNumProperties()

size_t Alembic::AbcCoreOgawa::ALEMBIC_VERSION_NS::CpwImpl::getNumProperties ( )
virtual

Returns the number of properties that have been created thus far. May change as more are created.

Implements Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::CompoundPropertyWriter.

◆ getObject()

AbcA::ObjectWriterPtr Alembic::AbcCoreOgawa::ALEMBIC_VERSION_NS::CpwImpl::getObject ( )
virtual

All properties have an object that owns them, and in order to ensure the object stays alive as long as the properties do, they retain a shared pointer to their object.

Implements Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::BasePropertyWriter.

◆ getParent()

AbcA::CompoundPropertyWriterPtr Alembic::AbcCoreOgawa::ALEMBIC_VERSION_NS::CpwImpl::getParent ( )
virtual

Most properties live in a compound property. (Except for the top-compound property in any object) This returns a pointer to the parent compound property.

Implements Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::BasePropertyWriter.

◆ getProperty()

AbcA::BasePropertyWriterPtr Alembic::AbcCoreOgawa::ALEMBIC_VERSION_NS::CpwImpl::getProperty ( const std::string & iName)
virtual

Returns an ALREADY ADDED PROPERTY by name. If it can't find one by name, it returns an empty pointer. This can also happen if the property was added, but has been closed (deleted).

Implements Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::CompoundPropertyWriter.

◆ getPropertyHeader() [1/2]

const AbcA::PropertyHeader * Alembic::AbcCoreOgawa::ALEMBIC_VERSION_NS::CpwImpl::getPropertyHeader ( const std::string & iName)
virtual

Return the header of a property that has already been added, found by name. A typical use of this would be for an application that wants to incrementally add properties, and wishes to query whether a property of a given name has already been added, before attempting to add a new one. This will return NULL if no property of the given name has been added.

Implements Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::CompoundPropertyWriter.

◆ getPropertyHeader() [2/2]

const AbcA::PropertyHeader & Alembic::AbcCoreOgawa::ALEMBIC_VERSION_NS::CpwImpl::getPropertyHeader ( size_t i)
virtual

Return the header of a property that has already been added. Property is selected by index. This will throw an exception on out-of-range access.

Implements Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::CompoundPropertyWriter.


The documentation for this class was generated from the following files:
  • AbcCoreOgawa/CpwImpl.h
  • AbcCoreOgawa/CpwImpl.cpp