CSLTimeControl Class Reference

#include <TimeControl.h>

Inheritance diagram for CSLTimeControl:

CSLTemplate CSIBCNode List of all members.

Public Types

enum   EExtrapolationPos {
  SI_BEFORE,
  SI_AFTER
}
  Specifies where extrapolation occures while processing an CSLActionClip. More...

Public Member Functions

  CSLTimeControl (CSLScene *in_pScene, CSLModel *in_pModel, CdotXSITemplate *in_pTemplate)
CSLTemplate::ETemplateType  Type ()
SI_Error  Synchronize ()
SI_Float  GetIn ()
SI_Void  SetIn (SI_Float in_fNew)
SI_Float  GetOut ()
SI_Void  SetOut (SI_Float in_fNew)
SI_Float  GetScale ()
SI_Void  SetScale (SI_Float in_fNew)
SI_Float  GetStartOffset ()
SI_Void  SetStartOffset (SI_Float in_fNew)
CSLExtrapolation CreateExtrapolation (EExtrapolationPos in_Pos, CSLExtrapolation::EExtrapolationType in_Type=CSLExtrapolation::SI_NO_CONTRIBUTION)
CSLExtrapolation GetExtrapolation (EExtrapolationPos in_Pos)
SI_Void  SetExtrapolation (EExtrapolationPos in_Pos, CSLExtrapolation *in_pExtrapolation)
CSLExtrapolation ConnectExtrapolation (EExtrapolationPos in_Pos, CSLExtrapolation *in_pExtrapolation)
CSLXSIClipToParent CreateClipToParent ()
CSLXSIClipToParent GetClipToParent ()
SI_Void  SetClipToParent (CSLXSIClipToParent *in_pXSIClipToParent)
CSLXSIClipToParent ConnectClipToParent (CSLXSIClipToParent *in_pClipToParent)

Detailed Description

Stores the clipping and offset parameters of an action clip (CSLActionClip--see the XSI_TimeControl template reference). You can add a CSLTimeControl with the CSLActionClip::AddTimeControl method.

Note:
CSLTimeControl is not supported by SI3D.
See also:
CSLActionClip

CSLExtrapolation


Member Enumeration Documentation

enum EExtrapolationPos

Specifies where extrapolation occures while processing an CSLActionClip.

Enumerator:
SI_BEFORE  Extrapolation performed before the CSLActionClip.
SI_AFTER  Extrapolation performed after the CSLActionClip.


Constructor & Destructor Documentation

CSLTimeControl ( CSLScene in_pScene,
CSLModel in_pModel,
CdotXSITemplate in_pTemplate  
)

Constructor

Parameters:
in_pScene  Pointer to the scene containing the CSLTimeControl
in_pModel  Pointer to the model containing the CSLTimeControl
in_pTemplate  Pointer to the CdotXSITemplate containing the CSLTimeControl data


Member Function Documentation

CSLTemplate::ETemplateType Type (  )  [inline, virtual]

Gets the type of this template

Return values:
CSLTemplate::XSI_TIMECONTROL 

Implements CSLTemplate.

SI_Error Synchronize (  )  [virtual]

Synchronize will ensure that the animated parameter is up to date.

Returns:
SI_Error Error code

Reimplemented from CSLTemplate.

SI_Float GetIn (  ) 

Gets the first frame of the source that is used by the clip.

Returns:
Frame number

SI_Void SetIn ( SI_Float  in_fNew  ) 

Sets the first frame of the source that is used by the clip.

Parameters:
in_fNew  Frame number

SI_Float GetOut (  ) 

Gets the last frame of the source that is used by the clip.

Returns:
Frame number

SI_Void SetOut ( SI_Float  in_fNew  ) 

Sets the last frame of the source that is used by the clip.

Parameters:
in_fNew  Frame number

SI_Float GetScale (  ) 

Gets the scaling of the clip in time.

Returns:
SI_Float The scale value

SI_Void SetScale ( SI_Float  in_fNew  ) 

Sets The scaling of the clip in time.

Parameters:
in_fNew  Scale factor
Note:
Increasing this value speeds up the relative time of the clip, decreasing the duration.

SI_Float GetStartOffset (  ) 

Gets the frame where the clip starts in the local time of the CSLActionClip.

Returns:
SI_Float The start offset

SI_Void SetStartOffset ( SI_Float  in_fNew  ) 

Sets he frame where the clip starts in the local time of the CSLActionClip.

Parameters:
in_fNew  The new start offset value

CSLExtrapolation* CreateExtrapolation ( EExtrapolationPos  in_Pos,
CSLExtrapolation::EExtrapolationType  in_Type = CSLExtrapolation::SI_NO_CONTRIBUTION  
)

Creates a new extrapolation and connect it

Parameters:
in_Pos  Specifies where the extrapolation must be performed
in_Type  Type of extrapolation to create
Return values:
CSLExtrapolation  Pointer to the newly created extrapolation.
NULL  An extrapolation at in_Pos already exists.

CSLExtrapolation* GetExtrapolation ( EExtrapolationPos  in_Pos  ) 

Gets one of the extrapolation

Parameters:
in_Pos  Specifies the extrapolation position to get
Return values:
Pointer  to the requested extrapolation
NULL  There is no extrapolation at the requested position

SI_Void SetExtrapolation ( EExtrapolationPos  in_Pos,
CSLExtrapolation in_pExtrapolation  
)

Sets one of the extrapolation position

Parameters:
in_Pos  The extrapolation position to set.
in_pExtrapolation  The extrapolation to put at the requested position
Warning:
This method overwrites any existing extrapolation and might cause leaks. You either have to free previously allocated extrapolation or use the non-destructive CSLTimeControl::ConnectExtrapolation method instead.
See also:
CSLTimeControl::ConnectExtrapolation

CSLExtrapolation* ConnectExtrapolation ( EExtrapolationPos  in_Pos,
CSLExtrapolation in_pExtrapolation  
)

Sets one of the extrapolation values if not already set

Parameters:
in_Pos  Specifies the extrapolation position to set
in_pExtrapolation  Extrapolation to connect
See also:
CSLTimeControl::SetExtrapolation

CSLXSIClipToParent* CreateClipToParent (  ) 

Creates a new ClipToParent and connect it

Return values:
CSLXSIClipToParent  Pointer to the newly created ClipToParent.
NULL  An ClipToParent already exists.

CSLXSIClipToParent* GetClipToParent (  ) 

Gets the ClipToParent

Return values:
Pointer  to the ClipToParent
NULL  There is no ClipToParent

SI_Void SetClipToParent ( CSLXSIClipToParent in_pXSIClipToParent  ) 

Sets one of the extrapolation position

Parameters:
in_pClipToParent  The ClipToParent to set
Warning:
This method overwrites existing ClipToParent and might cause leaks. You either have to free the previously allocated ClipToParent or use the non-destructive CSLTimeControl::ConnectExtrapolation method instead.
See also:
CSLTimeControl::ConnectClipToParent

CSLXSIClipToParent* ConnectClipToParent ( CSLXSIClipToParent in_pClipToParent  ) 

Sets the ClipToParent values if not already set

Parameters:
in_pClipToParent  ClipToParent to connect
See also:
CSLTimeControl::SetClipToParent


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