The ITimeline interface implementation. More...

#include "murl_logic_timeline.h"

Inheritance diagram for Murl::Logic::Timeline:

Public Member Functions

 ~Timeline () override
 The destructor.
 
void ProcessTick (const Logic::IState *state) override
 Implementation of IStepable::ProcessTick() method. More...
 
IStepablePtr GetStepable () override
 Implementation of ITimeline::GetStepable() method. More...
 
Bool SetAppTimeline (IAppTimelinePtr appTimeline) override
 Implementation of ITimeline::SetAppTimeline() method. More...
 
void Evaluate () override
 Implementation of ITimeline::Evaluate() method.
 
void Reset () override
 Implementation of ITimeline::Reset() and IStepable::Reset() method.
 
void ResetTo (Real startTime) override
 Implementation of ITimeline::ResetTo() method. More...
 
Bool Start () override
 Implementation of ITimeline::Start() method. More...
 
Bool Start (Real startTime, Real endTime) override
 Implementation of ITimeline::Start(Real startTime, Real endTime) method. More...
 
Bool Start (Real startTime, Real endTime, SInt32 numberOfLoops) override
 Implementation of ITimeline::Start(Real startTime, Real endTime, SInt32 numberOfLoops) method. More...
 
Bool Start (Real startTime, Real endTime, Real loopStartTime, Real loopEndTime, SInt32 numberOfLoops) override
 Implementation of ITimeline::Start(Real startTime, Real endTime, Real loopStartTime, Real loopEndTime, SInt32 numberOfLoops) method. More...
 
Bool Pause () override
 Implementation of ITimeline::Pause() method. More...
 
Bool Stop () override
 Implementation of ITimeline::Stop() method. More...
 
Bool Rewind () override
 Implementation of ITimeline::Rewind() method. More...
 
void SetStartTime (Real startTime) override
 Implementation of ITimeline::SetStartTime() method. More...
 
Real GetStartTime () const override
 Implementation of ITimeline::GetStartTime() method. More...
 
void SetEndTime (Real endTime) override
 Implementation of ITimeline::SetEndTime() method. More...
 
Real GetEndTime () const override
 Implementation of ITimeline::GetEndTime() method. More...
 
void SetLoopStartTime (Real startTime) override
 Implementation of ITimeline::SetLoopStartTime() method. More...
 
Real GetLoopStartTime () const override
 Implementation of ITimeline::GetLoopStartTime() method. More...
 
void SetLoopEndTime (Real endTime) override
 Implementation of ITimeline::SetLoopEndTime() method. More...
 
Real GetLoopEndTime () const override
 Implementation of ITimeline::GetLoopEndTime() method. More...
 
void SetNumberOfLoops (SInt32 numberOfLoops) override
 Implementation of ITimeline::SetNumberOfLoops() method. More...
 
SInt32 GetNumberOfLoops () const override
 Implementation of ITimeline::GetNumberOfLoops() method. More...
 
void SetTimeScale (Real timeScale) override
 Implementation of ITimeline::SetTimeScale() method. More...
 
Real GetTimeScale () const override
 Implementation of ITimeline::GetTimeScale() method. More...
 
void SetAutoRewindEnabled (Bool enabled) override
 Implementation of ITimeline::SetAutoRewindEnabled() method. More...
 
Bool IsAutoRewindEnabled () const override
 Implementation of ITimeline::IsAutoRewindEnabled() method. More...
 
Bool IsRunning () const override
 Implementation of ITimeline::IsRunning() method. More...
 
Bool IsPaused () const override
 Implementation of ITimeline::IsPaused() method. More...
 
Bool IsStopped () const override
 Implementation of ITimeline::IsStopped() method. More...
 
Bool WasStarted () const override
 Implementation of ITimeline::WasStarted() method. More...
 
Bool WasRunning () const override
 Implementation of ITimeline::WasRunning() method. More...
 
Bool IsOrWasRunning () const override
 Implementation of ITimeline::IsOrWasRunning() method. More...
 
Bool HasPassedTime (Real time) const override
 Implementation of ITimeline::HasPassedTime() method. More...
 
Bool HasPassedLoop (SInt32 loop) const override
 Implementation of ITimeline::HasPassedLoop() method. More...
 
Double GetCurrentTime () const override
 Implementation of ITimeline::GetCurrentTime() method. More...
 
Double GetRemainingTime () const override
 Implementation of ITimeline::GetRemainingTime() method. More...
 
void SetCurrentTime (Double time) override
 Implementation of ITimeline::SetCurrentTime() method. More...
 
SInt32 GetCurrentLoop () const override
 Implementation of ITimeline::GetCurrentLoop() method. More...
 
SInt32 GetRemainingLoops () const override
 Implementation of ITimeline::GetRemainingLoops() method. More...
 
Bool SetCurrentLoop (SInt32 loop) override
 Implementation of ITimeline::SetCurrentLoop() method. More...
 
IEnums::AnimationState GetCurrentState () const override
 Implementation of ITimeline::GetCurrentState() method. More...
 
- Public Member Functions inherited from Murl::Logic::Stepable
 ~Stepable () override
 The destructor.
 
Bool SetAppStepable (IAppStepablePtr appStepable) override
 Implementation of IStepable::SetAppStepable() method. More...
 
void SetEnabled (Bool isEnabled) override
 Implementation of IStepable::SetEnabled() method. More...
 
Bool IsEnabled () const override
 Implementation of IStepable::IsEnabled() method. More...
 
void FinishTick (const Logic::IState *state) override
 Implementation of IStepable::FinishTick() method. More...
 

Static Public Member Functions

static ITimelinePtr Create ()
 Create a timeline object. More...
 
- Static Public Member Functions inherited from Murl::Logic::Stepable
static IStepablePtr Create ()
 Create a stepable object. More...
 

Detailed Description

The ITimeline interface implementation.

Member Function Documentation

◆ Create()

static ITimelinePtr Murl::Logic::Timeline::Create ( )
static

Create a timeline object.

Returns
The created timeline object, or null if failed.

◆ ProcessTick()

void Murl::Logic::Timeline::ProcessTick ( const Logic::IState state)
overridevirtual

Implementation of IStepable::ProcessTick() method.

Parameters
stateThe IState object.

Reimplemented from Murl::Logic::Stepable.

◆ GetStepable()

IStepablePtr Murl::Logic::Timeline::GetStepable ( )
overridevirtual

Implementation of ITimeline::GetStepable() method.

Returns
The stepable interface shared pointer.

Implements Murl::Logic::ITimeline.

Referenced by Murl::Logic::Animation< DataType >::operator IStepablePtr(), and Murl::Logic::BaseTimeline::operator IStepablePtr().

◆ SetAppTimeline()

Bool Murl::Logic::Timeline::SetAppTimeline ( IAppTimelinePtr  appTimeline)
overridevirtual

Implementation of ITimeline::SetAppTimeline() method.

Parameters
appTimelineThe timeline callback object.
Returns
true if successful.

Implements Murl::Logic::ITimeline.

Referenced by Murl::Logic::Animation< DataType >::Animation(), and Murl::Logic::BaseTimeline::BaseTimeline().

◆ ResetTo()

void Murl::Logic::Timeline::ResetTo ( Real  startTime)
overridevirtual

Implementation of ITimeline::ResetTo() method.

Parameters
startTimeThe start time in seconds.

Implements Murl::Logic::ITimeline.

◆ Start() [1/4]

Bool Murl::Logic::Timeline::Start ( )
overridevirtual

◆ Start() [2/4]

Bool Murl::Logic::Timeline::Start ( Real  startTime,
Real  endTime 
)
overridevirtual

Implementation of ITimeline::Start(Real startTime, Real endTime) method.

Parameters
startTimeThe start time in seconds.
endTimeThe end time in seconds.
Returns
true if successful.

Implements Murl::Logic::ITimeline.

◆ Start() [3/4]

Bool Murl::Logic::Timeline::Start ( Real  startTime,
Real  endTime,
SInt32  numberOfLoops 
)
overridevirtual

Implementation of ITimeline::Start(Real startTime, Real endTime, SInt32 numberOfLoops) method.

Parameters
startTimeThe start time in seconds.
endTimeThe end time in seconds.
numberOfLoopsNumber of loops.
Returns
true if successful.

Implements Murl::Logic::ITimeline.

◆ Start() [4/4]

Bool Murl::Logic::Timeline::Start ( Real  startTime,
Real  endTime,
Real  loopStartTime,
Real  loopEndTime,
SInt32  numberOfLoops 
)
overridevirtual

Implementation of ITimeline::Start(Real startTime, Real endTime, Real loopStartTime, Real loopEndTime, SInt32 numberOfLoops) method.

Parameters
startTimeThe start time in seconds.
endTimeThe end time in seconds.
loopStartTimeThe loop start time in seconds.
loopEndTimeThe loop end time in seconds.
numberOfLoopsNumber of loops.
Returns
true if successful.

Implements Murl::Logic::ITimeline.

◆ Pause()

Bool Murl::Logic::Timeline::Pause ( )
overridevirtual

Implementation of ITimeline::Pause() method.

Returns
true if timeline was paused, false if timeline is not running.

Implements Murl::Logic::ITimeline.

◆ Stop()

Bool Murl::Logic::Timeline::Stop ( )
overridevirtual

Implementation of ITimeline::Stop() method.

Returns
true if timeline was stopped, false if timeline is already stopped.

Implements Murl::Logic::ITimeline.

◆ Rewind()

Bool Murl::Logic::Timeline::Rewind ( )
overridevirtual

Implementation of ITimeline::Rewind() method.

Returns
true if successful.

Implements Murl::Logic::ITimeline.

◆ SetStartTime()

void Murl::Logic::Timeline::SetStartTime ( Real  startTime)
overridevirtual

Implementation of ITimeline::SetStartTime() method.

Parameters
startTimeThe start time in seconds.

Implements Murl::Logic::ITimeline.

Referenced by Murl::Logic::Animation< DataType >::SetStartTimeFromKey().

◆ GetStartTime()

Real Murl::Logic::Timeline::GetStartTime ( ) const
overridevirtual

Implementation of ITimeline::GetStartTime() method.

Returns
The start time in seconds.

Implements Murl::Logic::ITimeline.

◆ SetEndTime()

void Murl::Logic::Timeline::SetEndTime ( Real  endTime)
overridevirtual

Implementation of ITimeline::SetEndTime() method.

Parameters
endTimeThe end time in seconds.

Implements Murl::Logic::ITimeline.

Referenced by Murl::Logic::Animation< DataType >::SetEndTimeFromKey().

◆ GetEndTime()

Real Murl::Logic::Timeline::GetEndTime ( ) const
overridevirtual

Implementation of ITimeline::GetEndTime() method.

Returns
The end time in seconds.

Implements Murl::Logic::ITimeline.

◆ SetLoopStartTime()

void Murl::Logic::Timeline::SetLoopStartTime ( Real  startTime)
overridevirtual

Implementation of ITimeline::SetLoopStartTime() method.

Parameters
startTimeThe loop start time in seconds.

Implements Murl::Logic::ITimeline.

Referenced by Murl::Logic::Animation< DataType >::SetLoopStartTimeFromKey().

◆ GetLoopStartTime()

Real Murl::Logic::Timeline::GetLoopStartTime ( ) const
overridevirtual

Implementation of ITimeline::GetLoopStartTime() method.

Returns
The loop start time in seconds.

Implements Murl::Logic::ITimeline.

◆ SetLoopEndTime()

void Murl::Logic::Timeline::SetLoopEndTime ( Real  endTime)
overridevirtual

Implementation of ITimeline::SetLoopEndTime() method.

Parameters
endTimeThe loop end time in seconds.

Implements Murl::Logic::ITimeline.

Referenced by Murl::Logic::Animation< DataType >::SetLoopEndTimeFromKey().

◆ GetLoopEndTime()

Real Murl::Logic::Timeline::GetLoopEndTime ( ) const
overridevirtual

Implementation of ITimeline::GetLoopEndTime() method.

Returns
The loop end time in seconds.

Implements Murl::Logic::ITimeline.

◆ SetNumberOfLoops()

void Murl::Logic::Timeline::SetNumberOfLoops ( SInt32  numberOfLoops)
overridevirtual

Implementation of ITimeline::SetNumberOfLoops() method.

Parameters
numberOfLoopsNumber of loops.

Implements Murl::Logic::ITimeline.

◆ GetNumberOfLoops()

SInt32 Murl::Logic::Timeline::GetNumberOfLoops ( ) const
overridevirtual

Implementation of ITimeline::GetNumberOfLoops() method.

Returns
The number of loops.

Implements Murl::Logic::ITimeline.

◆ SetTimeScale()

void Murl::Logic::Timeline::SetTimeScale ( Real  timeScale)
overridevirtual

Implementation of ITimeline::SetTimeScale() method.

Parameters
timeScaleThe time scale factor.

Implements Murl::Logic::ITimeline.

◆ GetTimeScale()

Real Murl::Logic::Timeline::GetTimeScale ( ) const
overridevirtual

Implementation of ITimeline::GetTimeScale() method.

Returns
true The time scale factor.

Implements Murl::Logic::ITimeline.

◆ SetAutoRewindEnabled()

void Murl::Logic::Timeline::SetAutoRewindEnabled ( Bool  enabled)
overridevirtual

Implementation of ITimeline::SetAutoRewindEnabled() method.

Parameters
enabledEnable automatic rewind if true.

Implements Murl::Logic::ITimeline.

◆ IsAutoRewindEnabled()

Bool Murl::Logic::Timeline::IsAutoRewindEnabled ( ) const
overridevirtual

Implementation of ITimeline::IsAutoRewindEnabled() method.

Returns
true if automatic rewind.

Implements Murl::Logic::ITimeline.

◆ IsRunning()

Bool Murl::Logic::Timeline::IsRunning ( ) const
overridevirtual

Implementation of ITimeline::IsRunning() method.

Returns
true if running.

Implements Murl::Logic::ITimeline.

◆ IsPaused()

Bool Murl::Logic::Timeline::IsPaused ( ) const
overridevirtual

Implementation of ITimeline::IsPaused() method.

Returns
true if paused.

Implements Murl::Logic::ITimeline.

◆ IsStopped()

Bool Murl::Logic::Timeline::IsStopped ( ) const
overridevirtual

Implementation of ITimeline::IsStopped() method.

Returns
true if stopped.

Implements Murl::Logic::ITimeline.

◆ WasStarted()

Bool Murl::Logic::Timeline::WasStarted ( ) const
overridevirtual

Implementation of ITimeline::WasStarted() method.

Returns
true if started.

Implements Murl::Logic::ITimeline.

◆ WasRunning()

Bool Murl::Logic::Timeline::WasRunning ( ) const
overridevirtual

Implementation of ITimeline::WasRunning() method.

Returns
true if stopped.

Implements Murl::Logic::ITimeline.

Referenced by Murl::Logic::SoundFader::OnEvaluateAnimation().

◆ IsOrWasRunning()

Bool Murl::Logic::Timeline::IsOrWasRunning ( ) const
overridevirtual

Implementation of ITimeline::IsOrWasRunning() method.

Returns
true if IsRunning() or WasRunning() is true.

Implements Murl::Logic::ITimeline.

◆ HasPassedTime()

Bool Murl::Logic::Timeline::HasPassedTime ( Real  time) const
overridevirtual

Implementation of ITimeline::HasPassedTime() method.

Parameters
timeThe time to check in seconds.
Returns
true if the current time has passed a specified time within the most recent tick.

Implements Murl::Logic::ITimeline.

Referenced by Murl::Logic::Animation< DataType >::HasPassedTimeFromKey().

◆ HasPassedLoop()

Bool Murl::Logic::Timeline::HasPassedLoop ( SInt32  loop) const
overridevirtual

Implementation of ITimeline::HasPassedLoop() method.

Parameters
loopThe loop number to check.
Returns
true if the current loop has passed a specified loop within the most recent tick.

Implements Murl::Logic::ITimeline.

◆ GetCurrentTime()

Double Murl::Logic::Timeline::GetCurrentTime ( ) const
overridevirtual

Implementation of ITimeline::GetCurrentTime() method.

Returns
The current time in seconds.

Implements Murl::Logic::ITimeline.

Referenced by Murl::Logic::Animation< DataType >::IsOnTimeFromKey(), and Murl::Logic::SoundFader::OnEvaluateAnimation().

◆ GetRemainingTime()

Double Murl::Logic::Timeline::GetRemainingTime ( ) const
overridevirtual

Implementation of ITimeline::GetRemainingTime() method.

Returns
The remaining time in seconds.

Implements Murl::Logic::ITimeline.

◆ SetCurrentTime()

void Murl::Logic::Timeline::SetCurrentTime ( Double  time)
overridevirtual

Implementation of ITimeline::SetCurrentTime() method.

Parameters
timeThe current time to set in seconds.

Implements Murl::Logic::ITimeline.

◆ GetCurrentLoop()

SInt32 Murl::Logic::Timeline::GetCurrentLoop ( ) const
overridevirtual

Implementation of ITimeline::GetCurrentLoop() method.

Returns
The current loop, 0 if number of loops is 0.

Implements Murl::Logic::ITimeline.

◆ GetRemainingLoops()

SInt32 Murl::Logic::Timeline::GetRemainingLoops ( ) const
overridevirtual

Implementation of ITimeline::GetRemainingLoops() method.

Returns
The remaining loops, -1 if number of loops is < 0, 0 if number of loops is 0 or intro/outro is running.

Implements Murl::Logic::ITimeline.

◆ SetCurrentLoop()

Bool Murl::Logic::Timeline::SetCurrentLoop ( SInt32  loop)
overridevirtual

Implementation of ITimeline::SetCurrentLoop() method.

Parameters
loopThe current loop to set.
Returns
true if successful, false if the loop number is out of range.

Implements Murl::Logic::ITimeline.

◆ GetCurrentState()

IEnums::AnimationState Murl::Logic::Timeline::GetCurrentState ( ) const
overridevirtual

Implementation of ITimeline::GetCurrentState() method.

Returns
The current animation state.

Implements Murl::Logic::ITimeline.


The documentation for this class was generated from the following file:
  • murl_logic_timeline.h


Copyright © 2011-2022 Spraylight GmbH.