class RED::IAnimationClipController

Animation clip controller interface. More...

#include <REDIAnimationClipController.h>

Inherits: IREDObject.

Public functions:

virtual RED_RCGetAnimationClip ( const RED::AnimationClip *& oClip ) const = 0
virtual RED_RCGetAnimationClip ( RED::AnimationClip *& oClip ) = 0
virtual RED_RCGetChannelOutput ( const RED::AnimationData *& oOutput, unsigned int iChannel ) const = 0
virtual RED_RCGetChannelsCount ( unsigned int & oCount ) const = 0
virtual RED_RCGetDeltaChannelOutput ( RED::AnimationData & oOutput, unsigned int iChannel ) const = 0
virtual RED_RCGetDuration ( double & oDuration ) const = 0
virtual RED_RCGetEndTime ( double & oTime ) const = 0
virtual RED_RCGetLoop ( bool & oLoop ) const = 0
virtual RED_RCGetSpeed ( double & oSpeed ) const = 0
virtual RED_RCGetStartTime ( double & oTime ) const = 0
virtual RED_RCGetTime ( double & oTime ) const = 0
virtual RED_RCIsEndReached ( bool & oEndReached ) const = 0
virtual RED_RCJumpToTime ( double iTime ) = 0
virtual RED_RCPause ( ) = 0
virtual RED_RCPlay ( ) = 0
virtual RED_RCRewind ( ) = 0
virtual RED_RCSetAnimationClip ( const RED::AnimationClip & iClip ) = 0
virtual RED_RCSetEndTime ( double iTime ) = 0
virtual RED_RCSetLoop ( bool iLoop ) = 0
virtual RED_RCSetSpeed ( double iSpeed ) = 0
virtual RED_RCSetStartTime ( double iTime ) = 0
virtual RED_RCStop ( ) = 0
virtual RED_RCUpdate ( double iDeltaTime ) = 0

Public static functions:

static RED::CIDGetClassID ( )

Detailed description:

Animation clip controller interface.

A clip controller controls a single RED::IAnimationClip object. It provides functions to play the animation:

Animation controllers are created with RED::Factory::CreateAnimationClipController and RED::Factory::CreateSkeletalAnimationClipController.

Functions documentation

Returns the animation clip associated to this controller.

Parameters:

oClip:returned animation clip.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.

Returns the animation clip associated to this controller.

Parameters:

oClip:returned animation clip.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.
public virtual RED_RC RED::IAnimationClipController::GetChannelOutput(const RED::AnimationData *&oOutput,
unsigned intiChannel
)const = 0

Accesses to the channel output results.

Parameters:

oOutput:Returned channel result.
iChannel:The channel to get the ouput from.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.
public virtual RED_RC RED::IAnimationClipController::GetChannelsCount(unsigned int &oCount) const = 0

Gets the number of channels in the animation controller.

Parameters:

oCount:Returned number of channels.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.
public virtual RED_RC RED::IAnimationClipController::GetDeltaChannelOutput(RED::AnimationData &oOutput,
unsigned intiChannel
)const = 0

Accesses to the delta channel output between last and current frame.

Parameters:

oOutput:Returned delta channel result.
iChannel:The channel to get the ouput from.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.
public virtual RED_RC RED::IAnimationClipController::GetDuration(double &oDuration) const = 0

Gets the animation clip duration.

Parameters:

oDuration:Returned animation clip duration.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.
public virtual RED_RC RED::IAnimationClipController::GetEndTime(double &oTime) const = 0

Returns the end time in the animation clip.

Parameters:

oTime:Returned time.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.
public virtual RED_RC RED::IAnimationClipController::GetLoop(bool &oLoop) const = 0

Tests if the animation is in loop mode.

Parameters:

oLoop:Returned loop mode.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.
public virtual RED_RC RED::IAnimationClipController::GetSpeed(double &oSpeed) const = 0

Gets the animation speed.

Parameters:

oSpeed:Animation speed (1 = normal speed).

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.
public virtual RED_RC RED::IAnimationClipController::GetStartTime(double &oTime) const = 0

Returns the start time in the animation clip.

Parameters:

oTime:Returned time.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.
public virtual RED_RC RED::IAnimationClipController::GetTime(double &oTime) const = 0

Returns the current time in the animation clip.

Parameters:

oTime:Returned animation current time.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.
public virtual RED_RC RED::IAnimationClipController::IsEndReached(bool &oEndReached) const = 0

Tests if the animation has reached its end.

Parameters:

oEndReached:Returned test.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.
public virtual RED_RC RED::IAnimationClipController::JumpToTime(doubleiTime) = 0

Move to a specific time in the animation.

Parameters:

iTime:animation time to jump to.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.

Pauses the animation.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.

Plays the animation, continue after a call to Pause.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.

Rewinds the animation.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.

Associates an animation clip to the controller.

Parameters:

iClip:Animation clip to use.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.
public virtual RED_RC RED::IAnimationClipController::SetEndTime(doubleiTime) = 0

Sets the end time in the animation clip.

Parameters:

iTime:Time to set.

Returns:

RED_OK if the method succeeded,
RED_BAD_PARAM if iTime is lower than start time or higher than the clip duration. RED_FAIL otherwise.
public virtual RED_RC RED::IAnimationClipController::SetLoop(booliLoop) = 0

Sets the animation in loop mode.

Parameters:

iLoop:Loop mode or not.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.
public virtual RED_RC RED::IAnimationClipController::SetSpeed(doubleiSpeed) = 0

Sets the animation speed.

Parameters:

iSpeed:Returned animation speed (1 = normal speed).

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.
public virtual RED_RC RED::IAnimationClipController::SetStartTime(doubleiTime) = 0

Sets the start time in the animation clip.

Parameters:

iTime:Time to set.

Returns:

RED_OK if the method succeeded,
RED_BAD_PARAM if iTime is lower than 0 or higher than end time. RED_FAIL otherwise.

Stops and rewind the animation.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.
public virtual RED_RC RED::IAnimationClipController::Update(doubleiDeltaTime) = 0

Updates the animation.

This function has to be called at each application frame.

Parameters:

iDeltaTime:the delta time since the last call to this function.

Returns:

RED_OK if the method succeeded,
RED_FAIL otherwise.