APICOMPData Struct Reference
[COM Interfaces]

Inheritance diagram for APICOMPData:
TMCObject

List of all members.

Public Member Functions

 APICOMPData ()

Public Attributes

IDType fFamily
 The ID of the family to which the component belongs (eg 'shdr').
IDType fClass
 The unique ID (within its family) of the component class (eg 'schk').
TMCString63 fName
 The name of the component class (eg "Checker Shader").
TMCString63 fSubFamilyName
 The name of the sub family to which that component class belongs (eg "Pattern Functions").
int32 fVersion
 The version of the component (1 if it is the only version).
TMCString31 fVersionStr
 The string representation of the version number.
TMCString255 fComment
 Additionnal data that can be used by the UI (generally for Carrara shaders).
int32 fAPIVersion
 The Carrara API version number the component class uses.

Detailed Description

Represents the 'COMP' resource.

Along with the GUID resource, it defines a Component Class (see also TComponentClassInfo) that is a description of the C++ class in your extension.
When the application calls your MakeCOMObject() function to create a new C++ instance of your C++ class, we also say that it creates a new Component Instance of your Component Class. Sometimes "class" or "instance" is omited in the documentation, but the context should tell you whether we're talking about the class or the instance of a component.

Component Classes are grouped into Compoment Families. A Family is associated with a particular C++ interface that all the component classes of the family must implement (eg the Shaders family is associated with I3DExShader).

Within a family, Component Classes are grouped into sub families. This is only used to enhance the user interface (generally to group related Component Classes into a sub menu like "Pattern Functions"). Sub families are identified by the fSubFamilyName field.

To handle versioning, it is allowed to have two Component Classes with the same ID (fClass), as long as they have different version numbers (fVersion). By default, the application will instanciate the latest version of a Componment class. But when reading an old file, the old instance will be created and used. A "Component Super Class" is simply the list of all the different versions of a Component Class.


Constructor & Destructor Documentation

APICOMPData::APICOMPData (  )  [inline]

Member Data Documentation

The Carrara API version number the component class uses.

The unique ID (within its family) of the component class (eg 'schk').

Additionnal data that can be used by the UI (generally for Carrara shaders).

The ID of the family to which the component belongs (eg 'shdr').

The name of the component class (eg "Checker Shader").

The name of the sub family to which that component class belongs (eg "Pattern Functions").

The version of the component (1 if it is the only version).

The string representation of the version number.


The documentation for this struct was generated from the following file:
Generated on Mon Apr 26 22:47:35 2010 for Carrara SDK Doc by  doxygen 1.6.3