# IRdScriptObject Interface Reference

Inherits IRsDataObject.

List of all members.

## Public Member Functions
HRESULT | Clear (void)
HRESULT | GetParameter ([in] RtDWORD dwParamIndex,[out] RtFlags *pFlags,[out] BSTR *pbstrType,[out] BSTR *pbstrName,[out] BSTR *pbstrDescription,[out] VARTYPE *pVt,[out] GUID *pDataObjGUID)
HRESULT | PutParameter ([in] RtDWORD dwParamIndex,[in] RtFlags flags,[in] BSTR bstrType,[in] BSTR bstrName,[in] BSTR bstrDescription)
HRESULT | LoadFromFile ([in] BSTR FileName)
HRESULT | SaveToFile ([in] BSTR FileName)
## Properties
BSTR * | Language`[get]`
BSTR | Language`[set]`
RtScriptType * | ScriptType`[get]`
RtScriptType | ScriptType`[set]`
BSTR * | ScriptSubType`[get]`
BSTR | ScriptSubType`[set]`
BSTR * | Name`[get]`
BSTR | Name`[set]`
BSTR * | ScriptBody`[get]`
BSTR | ScriptBody`[set]`
BSTR * | UIName`[get]`
BSTR | UIName`[set]`
BSTR * | Description`[get]`
BSTR | Description`[set]`
GUID * | GUID`[get]`
GUID | GUID`[set]`
RtDWORD * | NumParams`[get]`
RtDWORD | NumParams`[set]`
CONID * | ParameterID ([in] RtDWORD dwParamIndex)`[get]`
CONID | ParameterID ([in] RtDWORD dwParamIndex)`[set]`
BSTR * | WholeScriptXML`[get]`
BSTR | WholeScriptXML`[set]`
RtBool * | Editable`[get]`
RtBool | Editable`[set]`

## Detailed Description

Script params flags enumerator (obsolete now, use CONFLG flags intead). This dataobject is used for all script objects and commands to reconstruct the node. It stores script method text and all the information needed to generate node/cmd connectors.

## Member Function Documentation

HRESULT IRdScriptObject::Clear | ( | void |  | ) |

Clear the dataobject.

HRESULT IRdScriptObject::GetParameter | ( | [in] RtDWORD | dwParamIndex,
|  | [out] RtFlags * | pFlags,
|  | [out] BSTR * | pbstrType,
|  | [out] BSTR * | pbstrName,
|  | [out] BSTR * | pbstrDescription,
|  | [out] VARTYPE * | pVt,
|  | [out] GUID * | pDataObjGUID |
| ) |  |  |

Get the parameter desc for the method.

Parameters:

  | dwParamIndex | [in] index of the parameter.
  | flags | [out] parameter flags (in/out, global).
  | bstrType | [out] type of the parameter.
  | bstrName | [out] name of the parameter.
  | pbstrDescription | [out] .
  | pVt | [out] .
  | pDataObjGUID | [out] .

HRESULT IRdScriptObject::PutParameter | ( | [in] RtDWORD | dwParamIndex,
|  | [in] RtFlags | flags,
|  | [in] BSTR | bstrType,
|  | [in] BSTR | bstrName,
|  | [in] BSTR | bstrDescription |
| ) |  |  |

Put the parameter desc for the method.

Parameters:

  | dwParamIndex | [in] index of the parameter.
  | flags | [in] parameter flags (in/out, global).
  | bstrType | [in] type of the parameter.
  | bstrName | [in] name of the parameter.
  | bstrDescription | [in] .

HRESULT IRdScriptObject::LoadFromFile | ( | [in] BSTR | FileName | ) |

Load the whole script from file (in XML form).

Parameters:

  | FileName | [in] specifies file name to load from.

HRESULT IRdScriptObject::SaveToFile | ( | [in] BSTR | FileName | ) |

Save the whole script to file (in XML form).

Parameters:

  | FileName | [in] specifies file name to save into.

## Property Documentation

BSTR* IRdScriptObject::Language`[get]`

Get the script language.

Parameters:

  | pVal | [out, retval] specifies script language (package name / lang object classname).

BSTR IRdScriptObject::Language`[set]`

Put the script language.

Parameters:

  | newVal | [in] specifies script language (package name / lang object classname).

RtScriptType* IRdScriptObject::ScriptType`[get]`

Get the script type id.

Parameters:

  | pVal | [out, retval] specifies script type (e.g. script-object or script-command).

RtScriptType IRdScriptObject::ScriptType`[set]`

Put the script type id.

Parameters:

  | newVal | [in] specifies script type (e.g. script-object or script-command).

BSTR * IRdScriptObject::ScriptSubType`[get]`

Get the script subtype, e.g. COLOR for shader.

Parameters:

  | pVal | [out, retval] specifies script subtype.

BSTR IRdScriptObject::ScriptSubType`[set]`

Put the script subtype.

Parameters:

  | newVal | [in] specifies script subtype.

BSTR* IRdScriptObject::Name`[get]`

Get the script name.

Parameters:

  | pVal | [out, retval] specifies script name.

BSTR IRdScriptObject::Name`[set]`

Put the script name.

Parameters:

  | newVal | specifies script name.

BSTR* IRdScriptObject::ScriptBody`[get]`

Get the script body (method definition, executable script code).

Parameters:

  | pVal | [in] specifies script body.

BSTR IRdScriptObject::ScriptBody`[set]`

Put the script body (method definition, executable script code).

Parameters:

  | newVal | [in] specifies script body.

BSTR* IRdScriptObject::UIName`[get]`

Get the name visible in the user interface.

Parameters:

  | pVal | [out, retval] specifies the name.

BSTR IRdScriptObject::UIName`[set]`

Put the name visible in the user interface.

Parameters:

  | newVal | [in] specifies the name.

BSTR* IRdScriptObject::Description`[get]`

Get the script description.

Parameters:

  | pVal | [out, retval] specifies the description.

BSTR IRdScriptObject::Description`[set]`

Put the script description.

Parameters:

  | newVal | [in] specifies the description.

GUID* IRdScriptObject::GUID`[get]`

Get the script GUID (NOTE: will probably not used).

Parameters:

  | pVal | [out, retval] specifies the description.

GUID IRdScriptObject::GUID`[set]`

Put the script GUID (NOTE: will probably not used).

Parameters:

  | newVal | [in] specifies the description.

RtDWORD* IRdScriptObject::NumParams`[get]`

Get number of script's params.

Parameters:

  | pVal | [out, retval] specifies param number.

RtDWORD IRdScriptObject::NumParams`[set]`

Put number of script's params.

Parameters:

  | newVal | [in] specifies param number.

CONID * IRdScriptObject::ParameterID([in] RtDWORD dwParamIndex)`[get]`

Get the parameter ID for the method.

Parameters:

  | dwParamIndex | [in] index of the parameter.
  | pVal | [out, retval] connector CONID for given parameter.

CONID IRdScriptObject::ParameterID([in] RtDWORD dwParamIndex)`[set]`

Put the parameter ID for the method.

Parameters:

  | dwParamIndex | [in] index of the parameter.
  | newVal | [in] connector CONID for given parameter.

BSTR* IRdScriptObject::WholeScriptXML`[get]`

Get the whole script (properties + body) in XML form (import / export).

Parameters:

  | pVal | [out, retval] contains valid XML data - note that these data are internally converted to the plain ASCII string.

BSTR IRdScriptObject::WholeScriptXML`[set]`

Put the whole script (properties + body) in XML form (import / export).

Parameters:

  | pVal | [in] contains valid XML data - note that these data are internally converted to the plain ASCII string.

RtBool* IRdScriptObject::Editable`[get]`

Get the editatble flag.

Parameters:

  | pVal | [out, retval] specifies the bool value.

RtBool IRdScriptObject::Editable`[set]`

Put the editatble flag.

Parameters:

  | newVal | [in] specifies the bool value.