Alembic 1.8.11

Loading...
Searching...
No Matches
Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::CompoundPropertyWriter Class Referenceabstract

`#include <CompoundPropertyWriter.h>`

Inheritance diagram for Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::CompoundPropertyWriter:
[legend]
Collaboration diagram for Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::CompoundPropertyWriter:
[legend]

## Public Member Functions
virtual | ~CompoundPropertyWriter ()
virtual size_t | getNumProperties ()=0
virtual const PropertyHeader & | getPropertyHeader (size_t i)=0
virtual const PropertyHeader * | getPropertyHeader (const std::string &iName)=0
BasePropertyWriterPtr | getProperty (size_t i)
virtual BasePropertyWriterPtr | getProperty (const std::string &iName)=0
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 ()
virtual const PropertyHeader & | getHeader () const =0
const std::string & | getName () const
PropertyType | getPropertyType () const
bool | isScalar () const
bool | isArray () const
bool | isCompound () const
bool | isSimple () const
const MetaData & | getMetaData () const
const DataType & | getDataType () const
TimeSamplingPtr | getTimeSampling () const
virtual ObjectWriterPtr | getObject ()=0
virtual CompoundPropertyWriterPtr | getParent ()=0
virtual ScalarPropertyWriterPtr | asScalarPtr ()
virtual ArrayPropertyWriterPtr | asArrayPtr ()
virtual CompoundPropertyWriterPtr | asCompoundPtr ()

## Detailed Description

A CompoundProperty is a group of other properties, possibly Simple or possibly Compound. Every object has at one of these.

## Constructor & Destructor Documentation

## ◆ ~CompoundPropertyWriter()

Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::CompoundPropertyWriter::~CompoundPropertyWriter | ( |  | ) |
| virtual

Virtual destructor ...

## Member Function Documentation

## ◆ createArrayProperty()

virtual ArrayPropertyWriterPtr Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::CompoundPropertyWriter::createArrayProperty | ( | const std::string & | iName,
|  | const MetaData & | iMetaData,
|  | const DataType & | iDataType,
|  | uint32_t | iTimeSamplingIndex )
| pure virtual

Create and return the requested array property. If a property already exists with the same name, throws. an exception. An exception will also be thrown if the DataType, or time sampling index is illegal.

## ◆ createCompoundProperty()

virtual CompoundPropertyWriterPtr Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::CompoundPropertyWriter::createCompoundProperty | ( | const std::string & | iName,
|  | const MetaData & | iMetaData )
| pure virtual

Create and return the requested compound property. If a property already exists with the same name, throws an exception.

## ◆ createScalarProperty()

virtual ScalarPropertyWriterPtr Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::CompoundPropertyWriter::createScalarProperty | ( | const std::string & | iName,
|  | const MetaData & | iMetaData,
|  | const DataType & | iDataType,
|  | uint32_t | iTimeSamplingIndex )
| pure virtual

Create and return the requested scalar property. If a property already exists with the same name, throws an exception. An exception will also be thrown if the DataType, or time sampling index is illegal.

## ◆ getNumProperties()

virtual size_t Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::CompoundPropertyWriter::getNumProperties | ( |  | ) |
| pure virtual

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

Implemented in Alembic::AbcCoreHDF5::ALEMBIC_VERSION_NS::CpwImpl, and Alembic::AbcCoreOgawa::ALEMBIC_VERSION_NS::CpwImpl.

## ◆ getProperty() [1/2]

virtual BasePropertyWriterPtr Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::CompoundPropertyWriter::getProperty | ( | const std::string & | iName | ) |
| pure 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).

Implemented in Alembic::AbcCoreHDF5::ALEMBIC_VERSION_NS::CpwImpl, and Alembic::AbcCoreOgawa::ALEMBIC_VERSION_NS::CpwImpl.

## ◆ getProperty() [2/2]

BasePropertyWriterPtr Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::CompoundPropertyWriter::getProperty | ( | size_t | i | ) |

It is an error to request for a property by index out of range. This returns a property that has ALREADY BEEN ADDED. This will throw an exception on out-of-range access. There is a possibility it could return a NULL pointer, if the added property has been closed (deleted). This is just a convenience function which calls getPropertyHeader and then getProperty.

## ◆ getPropertyHeader() [1/2]

virtual const PropertyHeader * Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::CompoundPropertyWriter::getPropertyHeader | ( | const std::string & | iName | ) |
| pure 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.

Implemented in Alembic::AbcCoreHDF5::ALEMBIC_VERSION_NS::CpwImpl, and Alembic::AbcCoreOgawa::ALEMBIC_VERSION_NS::CpwImpl.

## ◆ getPropertyHeader() [2/2]

virtual const PropertyHeader & Alembic::AbcCoreAbstract::ALEMBIC_VERSION_NS::CompoundPropertyWriter::getPropertyHeader | ( | size_t | i | ) |
| pure 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.

Implemented in Alembic::AbcCoreHDF5::ALEMBIC_VERSION_NS::CpwImpl, and Alembic::AbcCoreOgawa::ALEMBIC_VERSION_NS::CpwImpl.

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

- AbcCoreAbstract/CompoundPropertyWriter.h
- AbcCoreAbstract/CompoundPropertyWriter.cpp