Represents a set of ShaderParamDef, ShaderArrayParamDef, and/or ShaderStructParamDef objects.
This object allows you to manage the list of input and output parameters defined on a shader definition object (ShaderDef). Use this object to add and remove members and also access a CRefArray of ShaderParamDef objects (via the ShaderParamDefContainer::GetDefinitions member) to iterate over the list of parameters.
There are three functions which return a ShaderParamDefContainer:
#include <xsi_shaderparamdefcontainer.h>
Default constructor.
Default destructor.
ShaderParamDefContainer | ( | const CRef & | in_ref | ) |
Constructor.
in_ref | constant reference object. |
ShaderParamDefContainer | ( | const ShaderParamDefContainer & | in_obj | ) |
Copy constructor.
in_obj | constant class object. |
bool IsA | ( | siClassID | in_ClassID | ) | const [virtual] |
Returns true if a given class type is compatible with this API class.
in_ClassID | class type. |
Reimplemented from SIObject.
siClassID GetClassID | ( | ) | const [virtual] |
ShaderParamDefContainer& operator= | ( | const ShaderParamDefContainer & | in_obj | ) |
Creates an object from another object. The newly created object is set to empty if the input object is not compatible.
in_obj | constant class object. |
ShaderParamDefContainer& operator= | ( | const CRef & | in_ref | ) |
Creates an object from a reference object. The newly created object is set to empty if the input reference object is not compatible.
in_ref | constant class object. |
Reimplemented from SIObject.
ShaderParamDef AddArrayParamDef | ( | const CString & | in_name, |
siShaderParameterDataType | in_dataType, | ||
const ShaderParamDefOptions & | in_options = CRef() |
||
) |
Adds a ShaderArrayParamDef to this container. The type of the new parameter must be one of the standard Softimage native data types.
in_name | The registered name for the new parameter. On an instance of
this parameter definition (ShaderParameter),
this value will be returned when you call Parameter::GetScriptName. To set the label you see in the UI for this parameter, use ShaderParamDefOptions::SetLongName. To set the value returned by ShaderParamDef::GetDisplayName, use ShaderParamDefOptions::SetShortName. |
in_dataType | The type of shader parameter to create (one of the siShaderParameterDataType values). |
in_options | Options for this shader parameter definition. Use Factory::CreateShaderParamDefOptions to create the options as a ShaderParamDefOptions object. |
ShaderParamDef AddArrayParamDef | ( | const CString & | in_name, |
const CString & | in_dataType, | ||
const ShaderParamDefOptions & | in_options = CRef() |
||
) |
Adds a ShaderArrayParamDef to this container. The type of the new parameter can be one of the standard Softimage native data types or a custom data type.
in_name | The registered name for the new parameter. On an instance of
this parameter definition (ShaderParameter),
this value will be returned when you call Parameter::GetScriptName. To set the label you see in the UI for this parameter, use ShaderParamDefOptions::SetLongName. To set the value returned by ShaderParamDef::GetDisplayName, use ShaderParamDefOptions::SetShortName. |
in_dataType | The type of shader parameter to create. This can be either the string version of any of the siShaderParameterDataType values or a custom data type that has been registered with Application::RegisterShaderCustomParameterType. |
in_options | Options for this shader parameter definition. Use Factory::CreateShaderParamDefOptions to create the options as a ShaderParamDefOptions object. |
ShaderParamDef AddParamDef | ( | const CString & | in_name, |
siShaderParameterDataType | in_dataType, | ||
const ShaderParamDefOptions & | in_options = CRef() |
||
) |
Adds a ShaderParamDef to this container. The type of the new parameter must be one of the standard Softimage native data types.
in_name | The registered name for the new parameter. On an instance of
this parameter definition (ShaderParameter),
this value will be returned when you call Parameter::GetScriptName. To set the label you see in the UI for this parameter, use ShaderParamDefOptions::SetLongName. To set the value returned by ShaderParamDef::GetDisplayName, use ShaderParamDefOptions::SetShortName. |
in_dataType | The type of shader parameter to create (one of the siShaderParameterDataType values). |
in_options | Options for this shader parameter definition. Use Factory::CreateShaderParamDefOptions to create the options as a ShaderParamDefOptions object. |
ShaderParamDef AddParamDef | ( | const CString & | in_name, |
const CString & | in_dataType, | ||
const ShaderParamDefOptions & | in_options = CRef() |
||
) |
Adds a ShaderParamDef to this container. The type of the new parameter can be one of the standard Softimage native data types or a custom data type.
in_name | The registered name for the new parameter. On an instance of
this parameter definition (ShaderParameter),
this value will be returned when you call Parameter::GetScriptName. To set the label you see in the UI for this parameter, use ShaderParamDefOptions::SetLongName. To set the value returned by ShaderParamDef::GetDisplayName, use ShaderParamDefOptions::SetShortName. |
in_dataType | The type of shader parameter to create. This can be either the string version of any of the siShaderParameterDataType values or a custom data type that has been registered with Application::RegisterShaderCustomParameterType. |
in_options | Options for this shader parameter definition. Use Factory::CreateShaderParamDefOptions to create the options as a ShaderParamDefOptions object. |
CRefArray GetDefinitions | ( | ) |
Returns the list of all parameter definitions (ShaderParamDef objects) for this ShaderParamDefContainer object.
ShaderParamDef GetParamDefByName | ( | const CString & | in_parameterName | ) |
Returns the ShaderParamDef
that matches the specified name from this container. This is
preferable to calling
ShaderParamDefContainer::GetDefinitions(in_parameterName
)
if you don't need to iterate over the collection.
in_parameterName | The registered name of the shader parameter definition to return. |