A helper class for simple use of the IStage object. More...

#include "murl_logic_base_stage.h"

Inheritance diagram for Murl::Logic::BaseStage:

Public Member Functions

 BaseStage (IFactory *factory)
 The constructor. More...
 
 BaseStage (IFactory *factory, const String &stageId)
 The constructor including the stage identifier. More...
 
 BaseStage (IFactory *factory, const String &stageId, const String &switchId)
 The constructor including the stage identifier and the graph switch identifier. More...
 
 ~BaseStage () override
 The destructor. More...
 
 operator IStagePtr () const
 Conversion operator. More...
 
IStagePtr GetStage () const
 Get the stage interface. More...
 
void SetStageProcessing (IStage::StageProcessing processing) const
 Forward to IStage::SetStageProcessing() method. More...
 
IStage::StageProcessing GetStageProcessing () const
 Forward to IStage::GetStageProcessing() method. More...
 
Bool SetAppStage (IAppStagePtr appStage) const
 Forward to IStage::SetAppStage() method. More...
 
void SetStageId (const String &stageId) const
 Forward to IStage::SetStageId() method. More...
 
const StringGetStageId () const
 Forward to IStage::GetStageId() method. More...
 
void SetSwitchId (const String &switchId) const
 Forward to IStage::SetSwitchId() method. More...
 
const StringGetSwitchId () const
 Forward to IStage::GetSwitchId() method. More...
 
void SetRunState (IStage::RunState runState) const
 Forward to IStage::SetRunState() method. More...
 
Bool IsRunState (IStage::RunState runState) const
 Forward to IStage::IsRunState() method. More...
 
IStage::RunState GetRunState () const
 Forward to IStage::GetRunState() method. More...
 
Bool StartStageIntro () const
 Forward to IStage::StartStageIntro() method. More...
 
Bool StartStageOutro () const
 Forward to IStage::StartStageOutro() method. More...
 
Bool StopStage () const
 Forward to IStage::StopStage() method. More...
 
Bool IsStageStopped () const
 Forward to IStage::IsStageStopped() method. More...
 
Bool CreateStageTimeline (const IState *state, const String &timeline, Real introTime, Real outroTime) const
 Forward to IStage::CreateStageTimeline() method. More...
 
Bool SetStageTimeline (IStageTimelinePtr stageTimeline) const
 Forward to IStage::SetStageTimeline() method. More...
 
IStageTimelinePtr GetStageTimeline () const
 Forward to IStage::GetStageTimeline() method. More...
 
- Public Member Functions inherited from Murl::Logic::BaseProcessor
 BaseProcessor (IFactory *factory)
 The constructor. More...
 
 ~BaseProcessor () override
 The destructor. More...
 
 operator IProcessorPtr () const
 Conversion operator. More...
 
IProcessorPtr GetProcessor () const
 Get the processor interface. More...
 
Bool SetAppProcessor (IAppProcessorPtr appProcessor) const
 Forward to IProcessor::SetAppProcessor() method. More...
 
Bool IsInitialized () const
 Forward to IProcessor::IsInitialized() method. More...
 
void SetEnabled (Bool isEnabled) const
 Forward to IProcessor::SetEnabled() method. More...
 
Bool IsEnabled () const
 Forward to IProcessor::IsEnabled() method. More...
 
Bool AddChild (IProcessorPtr processor) const
 Forward to IProcessor::AddChild() method. More...
 
Bool RemoveChild (IProcessorPtr processor) const
 Forward to IProcessor::RemoveChild() method. More...
 
Bool InitAddChild (const IState *state, IProcessorPtr processor) const
 Forward to IProcessor::InitAddChild() method. More...
 
Bool RemoveDeInitChild (const IState *state, IProcessorPtr processor) const
 Forward to IProcessor::RemoveDeInitChild() method. More...
 
UInt32 GetNumberOfChildren () const
 Forward to IProcessor::GetNumberOfChildren() method. More...
 
IProcessorPtr GetChild (UInt32 index) const
 Forward to IProcessor::GetChild() method. More...
 
Bool AddStepable (IStepablePtr stepable) const
 Forward to IProcessor::AddStepable() method. More...
 
Bool RemoveStepable (IStepablePtr stepable) const
 Forward to IProcessor::RemoveStepable() method. More...
 
Logic::IStepableObserverPtr GetStepableObserver () const
 Forward to IProcessor::GetStepableObserver() method. More...
 
Bool AddGraphNode (IObservableNodePtr observableNode) const
 Forward to IProcessor::AddGraphNode() method. More...
 
Bool RemoveGraphNode (IObservableNodePtr observableNode) const
 Forward to IProcessor::RemoveGraphNode() method. More...
 
Bool AreGraphNodesValid () const
 Forward to IProcessor::AreGraphNodesValid() method. More...
 
INodeObserverPtr GetNodeObserverPtr () const
 Forward to IProcessor::GetNodeObserver() method. More...
 
INodeObserverGetNodeObserver () const
 Get the processor's node observer interface pointer. More...
 

Protected Member Functions

Bool OnInitStage (const Logic::IState *state, Logic::IStageProcessor *stageProcessor) override
 Default implementation of IAppStage::OnInitStage() method, this method is empty and can be overwritten. More...
 
Bool OnDeInitStage (const Logic::IState *state, Logic::IStageProcessor *stageProcessor) override
 Default implementation of IAppStage::OnDeInitStage() method, this method is empty and can be overwritten. More...
 
void OnProcessStageTickBeginIntro (const Logic::IState *state, Logic::IStageProcessor *stageProcessor) override
 Default implementation of IAppStage::OnProcessStageTickBeginIntro() method, this method is empty and can be overwritten. More...
 
void OnProcessStageTickRunIntro (const Logic::IState *state, Logic::IStageProcessor *stageProcessor) override
 Default implementation of IAppStage::OnProcessStageTickRunIntro() method, this method is empty and can be overwritten. More...
 
void OnProcessStageTickBeginRun (const Logic::IState *state, Logic::IStageProcessor *stageProcessor) override
 Default implementation of IAppStage::OnProcessStageTickBeginRun() method, this method is empty and can be overwritten. More...
 
void OnProcessStageTickRun (const Logic::IState *state, Logic::IStageProcessor *stageProcessor) override
 Default implementation of IAppStage::OnProcessStageTickRun() method, this method is empty and can be overwritten. More...
 
void OnProcessStageTickBeginOutro (const Logic::IState *state, Logic::IStageProcessor *stageProcessor) override
 Default implementation of IAppStage::OnProcessStageTickBeginOutro() method, this method is empty and can be overwritten. More...
 
void OnProcessStageTickRunOutro (const Logic::IState *state, Logic::IStageProcessor *stageProcessor) override
 Default implementation of IAppStage::OnProcessStageTickRunOutro() method, this method is empty and can be overwritten. More...
 
void OnProcessStageTickStop (const Logic::IState *state, Logic::IStageProcessor *stageProcessor) override
 Default implementation of IAppStage::OnProcessStageTickStop() method, this method is empty and can be overwritten. More...
 
void OnProcessStageTick (const Logic::IState *state, Logic::IStageProcessor *stageProcessor) override
 Default implementation of IAppStage::OnProcessStageTick() method, this method is empty and can be overwritten. More...
 
void OnProcessStageFrame (const Logic::IState *state, Logic::IStageProcessor *stageProcessor) override
 Default implementation of IAppStage::OnProcessStageFrame() method, this method is empty and can be overwritten. More...
 
void OnFinishStageTick (const Logic::IState *state, Logic::IStageProcessor *stageProcessor) override
 Default implementation of IAppStage::OnFinishStageTick() method, this method is empty and can be overwritten. More...
 
void OnFinishStageFrame (const Logic::IState *state, Logic::IStageProcessor *stageProcessor) override
 Default implementation of IAppStage::OnFinishStageFrame() method, this method is empty and can be overwritten. More...
 
- Protected Member Functions inherited from Murl::Logic::BaseProcessor
Bool OnInit (const Logic::IState *state) override
 Default implementation of IAppProcessor::OnInit() method, this method is empty and can be overwritten. More...
 
Bool OnDeInit (const Logic::IState *state) override
 Default implementation of IAppProcessor::OnDeInit() method, this method is empty and can be overwritten. More...
 
void OnProcessTick (const Logic::IState *state) override
 Default implementation of IAppProcessor::OnProcessTick() method, this method is empty and can be overwritten. More...
 
void OnProcessTickChildren (const Logic::IState *state) override
 Default implementation of IAppProcessor::OnProcessTickChildren() method, this method is empty and can be overwritten. More...
 
void OnProcessFrame (const Logic::IState *state) override
 Default implementation of IAppProcessor::OnProcessFrame() method, this method is empty and can be overwritten. More...
 
void OnProcessFrameChildren (const Logic::IState *state) override
 Default implementation of IAppProcessor::OnProcessFrameChildren() method, this method is empty and can be overwritten. More...
 
void OnFinishTick (const Logic::IState *state) override
 Default implementation of IAppProcessor::OnFinishTick() method, this method is empty and can be overwritten. More...
 
void OnFinishTickChildren (const Logic::IState *state) override
 Default implementation of IAppProcessor::OnFinishTickChildren() method, this method is empty and can be overwritten. More...
 
void OnFinishFrame (const Logic::IState *state) override
 Default implementation of IAppProcessor::OnFinishFrame() method, this method is empty and can be overwritten. More...
 
void OnFinishFrameChildren (const Logic::IState *state) override
 Default implementation of IAppProcessor::OnFinishFrameChildren() method, this method is empty and can be overwritten. More...
 
void OnPackageWillBeLoaded (const Logic::IState *state, IPackage *package) override
 Default implementation of IAppProcessor::OnPackageWillBeLoaded() method, this method is empty and can be overwritten. More...
 
void OnPackageWasLoaded (const Logic::IState *state, IPackage *package) override
 Default implementation of IAppProcessor::OnPackageWasLoaded() method, this method is empty and can be overwritten. More...
 
void OnPackageFailedLoading (const Logic::IState *state, IPackage *package) override
 Default implementation of IAppProcessor::OnPackageFailedLoading() method, this method is empty and can be overwritten. More...
 
void OnPackageWillBeUnloaded (const Logic::IState *state, IPackage *package) override
 Default implementation of IAppProcessor::OnPackageWillBeUnloaded() method, this method is empty and can be overwritten. More...
 
void OnPackageWasUnloaded (const Logic::IState *state, IPackage *package) override
 Default implementation of IAppProcessor::OnPackageWasUnloaded() method, this method is empty and can be overwritten. More...
 
void OnPackageFailedUnloading (const Logic::IState *state, IPackage *package) override
 Default implementation of IAppProcessor::OnPackageFailedUnloading() method, this method is empty and can be overwritten. More...
 
void OnRunStateChanged (const Logic::IState *state, IEnums::AppRunState currentState, IEnums::AppRunState previousState) override
 Default implementation of IAppProcessor::OnRunStateChanged() method, this method is empty and can be overwritten. More...
 
void OnSetEnabled (Bool isEnabled) override
 Default implementation of IAppProcessor::OnSetEnabled() method, this method is empty and can be overwritten. More...
 

Detailed Description

A helper class for simple use of the IStage object.

The BaseStage class implements the IAppStage app interface and a BaseProcessor.
A stage is created and initialized at object instantiation.

Constructor & Destructor Documentation

◆ BaseStage() [1/3]

Murl::Logic::BaseStage::BaseStage ( IFactory factory)
inline

The constructor.

Creates a IStage object and setup the stage app interface.

Parameters
factoryThe logic factory object.

◆ BaseStage() [2/3]

Murl::Logic::BaseStage::BaseStage ( IFactory factory,
const String stageId 
)
inline

The constructor including the stage identifier.

Creates a IStage object and setup the stage app interface.

Parameters
factoryThe logic factory object.
stageIdThe stage identifier.

◆ BaseStage() [3/3]

Murl::Logic::BaseStage::BaseStage ( IFactory factory,
const String stageId,
const String switchId 
)
inline

The constructor including the stage identifier and the graph switch identifier.

Creates a IStage object and setup the stage app interface.

Parameters
factoryThe logic factory object.
stageIdThe stage identifier.
switchIdThe graph switch child identifier.

◆ ~BaseStage()

Murl::Logic::BaseStage::~BaseStage ( )
inlineoverride

The destructor.

Destroys the IStage object.

Member Function Documentation

◆ operator IStagePtr()

Murl::Logic::BaseStage::operator IStagePtr ( ) const
inline

Conversion operator.

Returns
The IStage interface.

◆ GetStage()

IStagePtr Murl::Logic::BaseStage::GetStage ( ) const
inline

Get the stage interface.

Returns
The IStage interface.

◆ SetStageProcessing()

void Murl::Logic::BaseStage::SetStageProcessing ( IStage::StageProcessing  processing) const
inline

Forward to IStage::SetStageProcessing() method.

Parameters
processingThe stage processing sequence.

◆ GetStageProcessing()

IStage::StageProcessing Murl::Logic::BaseStage::GetStageProcessing ( ) const
inline

Forward to IStage::GetStageProcessing() method.

Returns
The stage processing sequence.

◆ SetAppStage()

Bool Murl::Logic::BaseStage::SetAppStage ( IAppStagePtr  appStage) const
inline

Forward to IStage::SetAppStage() method.

Parameters
appStageThe stage callback object.
Returns
true if successful.

◆ SetStageId()

void Murl::Logic::BaseStage::SetStageId ( const String stageId) const
inline

Forward to IStage::SetStageId() method.

Parameters
stageIdThe stage identifier.

◆ GetStageId()

const String& Murl::Logic::BaseStage::GetStageId ( ) const
inline

Forward to IStage::GetStageId() method.

Returns
The stage identifier string.

◆ SetSwitchId()

void Murl::Logic::BaseStage::SetSwitchId ( const String switchId) const
inline

Forward to IStage::SetSwitchId() method.

Parameters
switchIdThe graph switch child identifier.

◆ GetSwitchId()

const String& Murl::Logic::BaseStage::GetSwitchId ( ) const
inline

Forward to IStage::GetSwitchId() method.

Returns
The graph switch child identifier.

◆ SetRunState()

void Murl::Logic::BaseStage::SetRunState ( IStage::RunState  runState) const
inline

Forward to IStage::SetRunState() method.

Parameters
runStateThe run state to set.

◆ IsRunState()

Bool Murl::Logic::BaseStage::IsRunState ( IStage::RunState  runState) const
inline

Forward to IStage::IsRunState() method.

Parameters
runStateThe run state to compare.
Returns
true if the current run state is equal.

◆ GetRunState()

IStage::RunState Murl::Logic::BaseStage::GetRunState ( ) const
inline

Forward to IStage::GetRunState() method.

Returns
The current run state.

◆ StartStageIntro()

Bool Murl::Logic::BaseStage::StartStageIntro ( ) const
inline

Forward to IStage::StartStageIntro() method.

Returns
true if successful, false if the run state check failed.

◆ StartStageOutro()

Bool Murl::Logic::BaseStage::StartStageOutro ( ) const
inline

Forward to IStage::StartStageOutro() method.

Returns
true if successful, false if the run state check failed.

◆ StopStage()

Bool Murl::Logic::BaseStage::StopStage ( ) const
inline

Forward to IStage::StopStage() method.

Returns
true if successful, false if the run state check failed.

◆ IsStageStopped()

Bool Murl::Logic::BaseStage::IsStageStopped ( ) const
inline

Forward to IStage::IsStageStopped() method.

Returns
true if run state is RUN_STATE_STOP.

◆ CreateStageTimeline()

Bool Murl::Logic::BaseStage::CreateStageTimeline ( const IState state,
const String timeline,
Real  introTime,
Real  outroTime 
) const
inline

Forward to IStage::CreateStageTimeline() method.

Parameters
stateThe IState object.
timelineThe full path to the graph <Timeline> instance.
introTimeThe intro end time in seconds,
outroTimeThe outro end time in seconds,
Returns
true if successful.

◆ SetStageTimeline()

Bool Murl::Logic::BaseStage::SetStageTimeline ( IStageTimelinePtr  stageTimeline) const
inline

Forward to IStage::SetStageTimeline() method.

Parameters
stageTimelineAn initialized IStageTimeline object.
Returns
true if successful.

◆ GetStageTimeline()

IStageTimelinePtr Murl::Logic::BaseStage::GetStageTimeline ( ) const
inline

Forward to IStage::GetStageTimeline() method.

Returns
The IStageTimeline object, or null if not available.

◆ OnInitStage()

Bool Murl::Logic::BaseStage::OnInitStage ( const Logic::IState state,
Logic::IStageProcessor stageProcessor 
)
inlineoverrideprotectedvirtual

Default implementation of IAppStage::OnInitStage() method, this method is empty and can be overwritten.

Parameters
stateThe IState object.
stageProcessorThe corresponding IStageProcessor object.
Returns
true if successful, should return false if any initialization failed.

Implements Murl::Logic::IAppStage.

◆ OnDeInitStage()

Bool Murl::Logic::BaseStage::OnDeInitStage ( const Logic::IState state,
Logic::IStageProcessor stageProcessor 
)
inlineoverrideprotectedvirtual

Default implementation of IAppStage::OnDeInitStage() method, this method is empty and can be overwritten.

Parameters
stateThe IState object.
stageProcessorThe corresponding IStageProcessor object.
Returns
true if successful, should return false if any deinitialization failed.

Implements Murl::Logic::IAppStage.

◆ OnProcessStageTickBeginIntro()

void Murl::Logic::BaseStage::OnProcessStageTickBeginIntro ( const Logic::IState state,
Logic::IStageProcessor stageProcessor 
)
inlineoverrideprotectedvirtual

Default implementation of IAppStage::OnProcessStageTickBeginIntro() method, this method is empty and can be overwritten.

Parameters
stateThe IState object.
stageProcessorThe corresponding IStageProcessor object.

Implements Murl::Logic::IAppStage.

◆ OnProcessStageTickRunIntro()

void Murl::Logic::BaseStage::OnProcessStageTickRunIntro ( const Logic::IState state,
Logic::IStageProcessor stageProcessor 
)
inlineoverrideprotectedvirtual

Default implementation of IAppStage::OnProcessStageTickRunIntro() method, this method is empty and can be overwritten.

Parameters
stateThe IState object.
stageProcessorThe corresponding IStageProcessor object.

Implements Murl::Logic::IAppStage.

◆ OnProcessStageTickBeginRun()

void Murl::Logic::BaseStage::OnProcessStageTickBeginRun ( const Logic::IState state,
Logic::IStageProcessor stageProcessor 
)
inlineoverrideprotectedvirtual

Default implementation of IAppStage::OnProcessStageTickBeginRun() method, this method is empty and can be overwritten.

Parameters
stateThe IState object.
stageProcessorThe corresponding IStageProcessor object.

Implements Murl::Logic::IAppStage.

◆ OnProcessStageTickRun()

void Murl::Logic::BaseStage::OnProcessStageTickRun ( const Logic::IState state,
Logic::IStageProcessor stageProcessor 
)
inlineoverrideprotectedvirtual

Default implementation of IAppStage::OnProcessStageTickRun() method, this method is empty and can be overwritten.

Parameters
stateThe IState object.
stageProcessorThe corresponding IStageProcessor object.

Implements Murl::Logic::IAppStage.

◆ OnProcessStageTickBeginOutro()

void Murl::Logic::BaseStage::OnProcessStageTickBeginOutro ( const Logic::IState state,
Logic::IStageProcessor stageProcessor 
)
inlineoverrideprotectedvirtual

Default implementation of IAppStage::OnProcessStageTickBeginOutro() method, this method is empty and can be overwritten.

Parameters
stateThe IState object.
stageProcessorThe corresponding IStageProcessor object.

Implements Murl::Logic::IAppStage.

◆ OnProcessStageTickRunOutro()

void Murl::Logic::BaseStage::OnProcessStageTickRunOutro ( const Logic::IState state,
Logic::IStageProcessor stageProcessor 
)
inlineoverrideprotectedvirtual

Default implementation of IAppStage::OnProcessStageTickRunOutro() method, this method is empty and can be overwritten.

Parameters
stateThe IState object.
stageProcessorThe corresponding IStageProcessor object.

Implements Murl::Logic::IAppStage.

◆ OnProcessStageTickStop()

void Murl::Logic::BaseStage::OnProcessStageTickStop ( const Logic::IState state,
Logic::IStageProcessor stageProcessor 
)
inlineoverrideprotectedvirtual

Default implementation of IAppStage::OnProcessStageTickStop() method, this method is empty and can be overwritten.

Parameters
stateThe IState object.
stageProcessorThe corresponding IStageProcessor object.

Implements Murl::Logic::IAppStage.

◆ OnProcessStageTick()

void Murl::Logic::BaseStage::OnProcessStageTick ( const Logic::IState state,
Logic::IStageProcessor stageProcessor 
)
inlineoverrideprotectedvirtual

Default implementation of IAppStage::OnProcessStageTick() method, this method is empty and can be overwritten.

Parameters
stateThe IState object.
stageProcessorThe corresponding IStageProcessor object.

Implements Murl::Logic::IAppStage.

◆ OnProcessStageFrame()

void Murl::Logic::BaseStage::OnProcessStageFrame ( const Logic::IState state,
Logic::IStageProcessor stageProcessor 
)
inlineoverrideprotectedvirtual

Default implementation of IAppStage::OnProcessStageFrame() method, this method is empty and can be overwritten.

Parameters
stateThe IState object.
stageProcessorThe corresponding IStageProcessor object.

Implements Murl::Logic::IAppStage.

◆ OnFinishStageTick()

void Murl::Logic::BaseStage::OnFinishStageTick ( const Logic::IState state,
Logic::IStageProcessor stageProcessor 
)
inlineoverrideprotectedvirtual

Default implementation of IAppStage::OnFinishStageTick() method, this method is empty and can be overwritten.

Parameters
stateThe IState object.
stageProcessorThe corresponding IStageProcessor object.

Implements Murl::Logic::IAppStage.

◆ OnFinishStageFrame()

void Murl::Logic::BaseStage::OnFinishStageFrame ( const Logic::IState state,
Logic::IStageProcessor stageProcessor 
)
inlineoverrideprotectedvirtual

Default implementation of IAppStage::OnFinishStageFrame() method, this method is empty and can be overwritten.

Parameters
stateThe IState object.
stageProcessorThe corresponding IStageProcessor object.

Implements Murl::Logic::IAppStage.


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


Copyright © 2011-2024 Spraylight GmbH.