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. |