CSLShaderInstanceData Class Reference

This class represents an XSI_ShaderInstanceData template. More...

#include <ShaderInstanceData.h>

Inheritance diagram for CSLShaderInstanceData:

CSLTemplate CSIBCNode List of all members.

Public Member Functions

  CSLShaderInstanceData (CSLScene *in_pScene, CSLModel *in_pModel, CdotXSITemplate *in_pTemplate)
  ~CSLShaderInstanceData ()
ETemplateType  Type ()
SI_Error  Synchronize ()
CSLModel GetReference ()
SI_Void  SetReference (CSLModel *in_pReferedModel)
CSLVariantParameter AddParameter ()
SI_Error  RemoveParameter (SI_Int in_nIndex)
SI_Error  RemoveParameter (CSLVariantParameter *in_pToRemove)
SI_Error  ClearParameters ()
CSLVariantParameter ConnectParameter (CSLVariantParameter *in_pToConnect)
CSLVariantParameter **  GetParameterList ()
SI_Int  GetParameterCount ()
virtual CSLAnimatableType ParameterFromName (SI_Char *in_szName)
CSLAnimatableType ParameterFromType (EFCurveType in_Type, SI_Char *in_szParameterName)

Detailed Description

This class represents an XSI_ShaderInstanceData template.

Defines how a shader is shared beetween models (see the XSI_ShaderInstanceData template reference)


Constructor & Destructor Documentation

CSLShaderInstanceData ( CSLScene in_pScene,
CSLModel in_pModel,
CdotXSITemplate in_pTemplate  
)

Constructor

Parameters:
[in]  in_pScene  Parent scene
[in]  in_pModel  Parent model
[in]  in_pTemplate  Refered template
Returns:
an instance of CSLShaderInstanceData

~CSLShaderInstanceData (  ) 

Destructor


Member Function Documentation

ETemplateType Type (  )  [inline, virtual]

Returns the type of this template

Return values:
CSLTemplate::XSI_SHADER_INSTANCE_DATA  The type of this template

Implements CSLTemplate.

SI_Error Synchronize (  )  [virtual]

Commits semantic layer data to the dotXSI template

Returns:
Whether or not data was commited correctly

Reimplemented from CSLTemplate.

CSLModel* GetReference (  ) 

Returns the referenced Model

Returns:
Pointer to referenced Model or null if there's none

SI_Void SetReference ( CSLModel in_pReferedModel  ) 

Sets the referenced Model

Parameters:
[in]  in_pReferedModel  Pointer to refered Model.

CSLVariantParameter* AddParameter (  ) 

Adds a parameter to the parameter list

Returns:
Pointer to the newly added parameter

SI_Error RemoveParameter ( SI_Int  in_nIndex  ) 

Removes a parameter from the parameter list

Parameters:
[in]  in_nIndex  Index of the parameter to remove
Returns:
Whether or not the parameter could be removed

SI_Error RemoveParameter ( CSLVariantParameter in_pToRemove  ) 

Removes a parameter from the parameter list

Parameters:
[in]  in_pToRemove  Pointer to the parameter to remove
Returns:
Whether or not the parameter could be removed

SI_Error ClearParameters (  ) 

Removes all parameters from the parameter list

Returns:
Whether or not the list could be cleared

CSLVariantParameter* ConnectParameter ( CSLVariantParameter in_pToConnect  ) 

Adds an exisiting parameter to the parameter list

Parameters:
[in]  in_pToConnect  Pointer to the parameter to add
Returns:
The added parameter or null if it already exists in the list

CSLVariantParameter** GetParameterList (  ) 

Returns a pointer to the internally-stored parameter pointer list

Returns:
Pointer to the list

SI_Int GetParameterCount (  ) 

Returns the total number of parameters

Returns:
Number of parameters

virtual CSLAnimatableType* ParameterFromName ( SI_Char *  in_szName  )  [virtual]

Searches for a parameter by name

Parameters:
[in]  in_szName  Name of the parameter to look for
Returns:
Pointer to the found parameter or null if not found

Reimplemented from CSLTemplate.

CSLAnimatableType* ParameterFromType ( EFCurveType  in_Type,
SI_Char *  in_szParameterName  
) [virtual]

Searches for a parameter by name and type

Parameters:
[in]  in_Type  Type of the parameter to look for
[in]  in_szParameterName  Name of the parameter to look for
Returns:
Pointer to the found parameter or null if not found

Reimplemented from CSLTemplate.


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