Public Member Functions | |
virtual MCCOMErr MCCOMAPI | GetPostRenderList (TMCArray< IDType > &idArray)=0 |
virtual boolean MCCOMAPI | IsActive (I3DShTreeElement *tree)=0 |
virtual void MCCOMAPI | GetVolumetricList (TMCArray< IDType > &idArray)=0 |
virtual IShParameterComponent *MCCOMAPI | GetThisParameterComponent ()=0 |
Returns the IShParameterComponent interface that is always supported by datacomponents. | |
virtual boolean MCCOMAPI | CanImportData (I3DImportData *inImportData)=0 |
return true if the component can perform the import operation | |
virtual boolean MCCOMAPI | ImportData (I3DImportData *inImportData)=0 |
return true if the component performed the import operation |
A data component is a component that is attached to an object (a light, a camera or an primitive...) and is used to store static or animated parameters.
It call also be used to trigger a post rendering to take place that relies on the data stores in the data component. This also for instance, a post rendering to affect only the objects on which a particular data component is active.
Last it can be used to associate a volumetric effect with an object. For instance a light cone with a given light or a volumetric aura on a primitive.
There are two interfaces to access a dataComponent: The shell interface (I3DShDataComponent) and the external interface (I3DExDataComponent) . You can get one from the other using QueryInterface.
You should use the Shell interface (I3DShDataComponent) to access the component because the Shell will make sure that the parameter map of the external component is valid. This is especially important if the component is animated. For more information on components see the Overview of the SDK.
virtual boolean MCCOMAPI I3DShDataComponent::CanImportData | ( | I3DImportData * | inImportData | ) | [pure virtual] |
return true if the component can perform the import operation
virtual MCCOMErr MCCOMAPI I3DShDataComponent::GetPostRenderList | ( | TMCArray< IDType > & | idArray | ) | [pure virtual] |
Fills the array with the class ID of the postrenderer that are enabled by this dataComponent
idArray | Reference to the array where the ids should added |
virtual IShParameterComponent* MCCOMAPI I3DShDataComponent::GetThisParameterComponent | ( | ) | [pure virtual] |
Returns the IShParameterComponent interface that is always supported by datacomponents.
virtual void MCCOMAPI I3DShDataComponent::GetVolumetricList | ( | TMCArray< IDType > & | idArray | ) | [pure virtual] |
Returns a list of class IDs of the Volumetric components to instantiate to render this effect
idArray | Reference to the array where the ids should added |
virtual boolean MCCOMAPI I3DShDataComponent::ImportData | ( | I3DImportData * | inImportData | ) | [pure virtual] |
return true if the component performed the import operation
virtual boolean MCCOMAPI I3DShDataComponent::IsActive | ( | I3DShTreeElement * | tree | ) | [pure virtual] |
Returns false if the dataComponent has no effect on this object
tree | The tree element on which the datacomponent is located. |