# I3DExLinkedParamController Struct Reference
[External Interfaces]

Inheritance diagram for I3DExLinkedParamController:

List of all members.

## Public Member Functions
virtual boolean MCCOMAPI | LinkParametersAdditive (I3DShParamInfo *source, I3DShParamInfo *dest, real32 factor, int32 sourceIndex=-1, int32 destIndex=-1)=0
virtual boolean MCCOMAPI | LinkParametersMultiplicative (I3DShParamInfo *source, I3DShParamInfo *dest, int32 sourceIndex=-1, int32 destIndex=-1)=0
virtual boolean MCCOMAPI | LinkParametersSubtraction (I3DShParamInfo *source, I3DShParamInfo *dest, int32 sourceIndex=-1, int32 destIndex=-1)=0
virtual boolean MCCOMAPI | LinkParametersPlus (I3DShParamInfo *source, I3DShParamInfo *dest, int32 sourceIndex=-1, int32 destIndex=-1)=0
virtual boolean MCCOMAPI | LinkParametersDivideBy (I3DShParamInfo *source, I3DShParamInfo *dest, int32 sourceIndex=-1, int32 destIndex=-1)=0
virtual boolean MCCOMAPI | LinkParametersDivideInto (I3DShParamInfo *source, I3DShParamInfo *dest, int32 sourceIndex=-1, int32 destIndex=-1)=0
virtual boolean MCCOMAPI | LinkParametersOverride (I3DShParamInfo *source, I3DShParamInfo *dest, real32 factor, int32 sourceIndex=-1, int32 destIndex=-1)=0
virtual void MCCOMAPI | UnlinkParameters (I3DShParamInfo *source=NULL, I3DShParamInfo *dest=NULL)=0
virtual int32 MCCOMAPI | GetLinksCount () const =0
| Returns the number of links.
virtual void MCCOMAPI | GetLinkByIndex (const int32 linkIndex, int32 &outSourceParamIndex, int32 &outDestParamIndex, boolean &outIsEnabled) const =0
virtual boolean MCCOMAPI | IsLinkEnabled (const int32 linkIndex) const =0
virtual void MCCOMAPI | SetLinkEnabled (const int32 linkIndex, boolean isEnabled)=0
virtual ILinkedParamFunction *MCCOMAPI | GetLinkFunction (const int32 linkIndex) const =0
virtual boolean MCCOMAPI | LinkParameters (I3DShParamInfo *source, I3DShParamInfo *dest, ILinkedParamFunction *function)=0
| takes ownership of the function
virtual void MCCOMAPI | GetLinkedParamsIndexes (int32 paramIndex, TMCArray< int32 > &linkedParamsIndexes)=0
virtual int32 MCCOMAPI | RegisterLookupParameter (I3DShParamInfo *param)=0
virtual I3DShParamInfo *MCCOMAPI | GetRegisteredLookupParameter (int32 index)=0
virtual void MCCOMAPI | EnableController (boolean enabled)=0
virtual void MCCOMAPI | GetSourcesParamsIndexes (int32 paramIndex, TMCArray< int32 > &linkedParamsIndexes)=0

## Detailed Description

External interface to manipulate the linked param controller. Its class ids are 'atsc', 'link'.

See also:
  I3DShAttributesSetControler

## Member Function Documentation

virtual void MCCOMAPI I3DExLinkedParamController::EnableController | ( | boolean | enabled | ) | `[pure virtual]`

virtual void MCCOMAPI I3DExLinkedParamController::GetLinkByIndex | ( | const int32 | linkIndex,
|  | int32 & | outSourceParamIndex,
|  | int32 & | outDestParamIndex,
|  | boolean & | outIsEnabled |
| ) |  |  | const`[pure virtual]`

virtual void MCCOMAPI I3DExLinkedParamController::GetLinkedParamsIndexes | ( | int32 | paramIndex,
|  | TMCArray< int32 > & | linkedParamsIndexes |
| ) |  |  | `[pure virtual]`

virtual ILinkedParamFunction* MCCOMAPI I3DExLinkedParamController::GetLinkFunction | ( | const int32 | linkIndex | ) | const`[pure virtual]`

virtual int32 MCCOMAPI I3DExLinkedParamController::GetLinksCount | ( |  | ) | const`[pure virtual]`

Returns the number of links.

virtual I3DShParamInfo* MCCOMAPI I3DExLinkedParamController::GetRegisteredLookupParameter | ( | int32 | index | ) | `[pure virtual]`

virtual void MCCOMAPI I3DExLinkedParamController::GetSourcesParamsIndexes | ( | int32 | paramIndex,
|  | TMCArray< int32 > & | linkedParamsIndexes |
| ) |  |  | `[pure virtual]`

virtual boolean MCCOMAPI I3DExLinkedParamController::IsLinkEnabled | ( | const int32 | linkIndex | ) | const`[pure virtual]`

virtual boolean MCCOMAPI I3DExLinkedParamController::LinkParameters | ( | I3DShParamInfo * | source,
|  | I3DShParamInfo * | dest,
|  | ILinkedParamFunction * | function |
| ) |  |  | `[pure virtual]`

takes ownership of the function

virtual boolean MCCOMAPI I3DExLinkedParamController::LinkParametersAdditive | ( | I3DShParamInfo * | source,
|  | I3DShParamInfo * | dest,
|  | real32 | factor,
|  | int32 | sourceIndex = `-1`,
|  | int32 | destIndex = `-1` |
| ) |  |  | `[pure virtual]`

Link two parameters together using the formula: dest += factor*source. Returns true if the two parameters has been linked.

Parameters:

  | source | The source
  | dest | The destination
  | factor | Factor used to multiply the source before adding the value to the dest
  | sourceIndex | Index if the source param type is a vector
  | destIndex | Index if the dest param type is a vector

virtual boolean MCCOMAPI I3DExLinkedParamController::LinkParametersDivideBy | ( | I3DShParamInfo * | source,
|  | I3DShParamInfo * | dest,
|  | int32 | sourceIndex = `-1`,
|  | int32 | destIndex = `-1` |
| ) |  |  | `[pure virtual]`

Link two parameters together using the formula: dest = dest/source. Returns true if the two parameters has been linked.

Parameters:

  | source | The source
  | dest | The destination
  | sourceIndex | Index if the source param type is a vector
  | destIndex | Index if the dest param type is a vector

virtual boolean MCCOMAPI I3DExLinkedParamController::LinkParametersDivideInto | ( | I3DShParamInfo * | source,
|  | I3DShParamInfo * | dest,
|  | int32 | sourceIndex = `-1`,
|  | int32 | destIndex = `-1` |
| ) |  |  | `[pure virtual]`

Link two parameters together using the formula: dest = source/dest. Returns true if the two parameters has been linked.

Parameters:

  | source | The source
  | dest | The destination
  | sourceIndex | Index if the source param type is a vector
  | destIndex | Index if the dest param type is a vector

virtual boolean MCCOMAPI I3DExLinkedParamController::LinkParametersMultiplicative | ( | I3DShParamInfo * | source,
|  | I3DShParamInfo * | dest,
|  | int32 | sourceIndex = `-1`,
|  | int32 | destIndex = `-1` |
| ) |  |  | `[pure virtual]`

Link two parameters together using the formula: dest = dest*source. Returns true if the two parameters has been linked.

Parameters:

  | source | The source
  | dest | The destination
  | sourceIndex | Index if the source param type is a vector
  | destIndex | Index if the dest param type is a vector

virtual boolean MCCOMAPI I3DExLinkedParamController::LinkParametersOverride | ( | I3DShParamInfo * | source,
|  | I3DShParamInfo * | dest,
|  | real32 | factor,
|  | int32 | sourceIndex = `-1`,
|  | int32 | destIndex = `-1` |
| ) |  |  | `[pure virtual]`

Link two parameters together using the formula: dest = factor*source. Returns true if the two parameters has been linked.

Parameters:

  | source | The source
  | dest | The destination
  | factor | Factor used to multiply the source before setting the value to the dest
  | sourceIndex | Index if the source param type is a vector
  | destIndex | Index if the dest param type is a vector

virtual boolean MCCOMAPI I3DExLinkedParamController::LinkParametersPlus | ( | I3DShParamInfo * | source,
|  | I3DShParamInfo * | dest,
|  | int32 | sourceIndex = `-1`,
|  | int32 | destIndex = `-1` |
| ) |  |  | `[pure virtual]`

Link two parameters together using the formula: dest += source. Returns true if the two parameters has been linked.

Parameters:

  | source | The source
  | dest | The destination
  | sourceIndex | Index if the source param type is a vector
  | destIndex | Index if the dest param type is a vector

virtual boolean MCCOMAPI I3DExLinkedParamController::LinkParametersSubtraction | ( | I3DShParamInfo * | source,
|  | I3DShParamInfo * | dest,
|  | int32 | sourceIndex = `-1`,
|  | int32 | destIndex = `-1` |
| ) |  |  | `[pure virtual]`

Link two parameters together using the formula: dest = dest-source. Returns true if the two parameters has been linked.

Parameters:

  | source | The source
  | dest | The destination
  | sourceIndex | Index if the source param type is a vector
  | destIndex | Index if the dest param type is a vector

virtual int32 MCCOMAPI I3DExLinkedParamController::RegisterLookupParameter | ( | I3DShParamInfo * | param | ) | `[pure virtual]`

virtual void MCCOMAPI I3DExLinkedParamController::SetLinkEnabled | ( | const int32 | linkIndex,
|  | boolean | isEnabled |
| ) |  |  | `[pure virtual]`

virtual void MCCOMAPI I3DExLinkedParamController::UnlinkParameters | ( | I3DShParamInfo * | source = `NULL`,
|  | I3DShParamInfo * | dest = `NULL` |
| ) |  |  | `[pure virtual]`

Unlink two parameters.

Parameters:

  | source | The source (if NULL means 'any')
  | dest | The destination (if NULL means 'any')

See also:
  I3DExLinkedParamController::LinkParameters

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

- I3DExLinkedParamController.h