![]() |
Murl Engine API
Version 2018.3
|
The IProcessor interface. More...
#include <murl_logic_i_processor.h>
The IProcessor interface.
The IProcessor implements the IEngineProcessor interface including:
The following is performed on the IEngineProcessor interface:
Public Member Functions | |
virtual Bool | SetAppProcessor (IAppProcessorPtr appProcessor)=0 |
Set the processor callback object. More... | |
virtual Bool | IsInitialized () const =0 |
Check if the processor is initialized. More... | |
virtual Bool | IsDeInitialized () const =0 |
Check if the processor is deinitialized. More... | |
virtual void | SetEnabled (Bool isEnabled)=0 |
Set the Enable/Disable state of the processor. More... | |
virtual void | SetChildrenEnabled (Bool isEnabled)=0 |
Set the Enable/Disable state for all child processors. More... | |
virtual Bool | IsEnabled () const =0 |
Check if the processor is enabled. More... | |
virtual Bool | AddChild (IProcessorPtr processor)=0 |
Add a child processor. More... | |
virtual Bool | RemoveChild (IProcessorPtr processor)=0 |
Remove a child processor. More... | |
virtual Bool | InitAddChild (const IState *state, IProcessorPtr processor)=0 |
Initialize and add a child processor. More... | |
virtual Bool | RemoveDeInitChild (const IState *state, IProcessorPtr processor)=0 |
Remove and deinitialize a child processor. More... | |
virtual UInt32 | GetNumberOfChildren () const =0 |
Get the number of childen. More... | |
virtual IProcessorPtr | GetChild (UInt32 index) const =0 |
Get a child processor by index. More... | |
virtual Bool | AddStepable (IStepablePtr stepable)=0 |
Add a stepable object to the processor's stepable observer. More... | |
virtual Bool | RemoveStepable (IStepablePtr stepable)=0 |
Remove a stepable object from the processor's stepable observer. More... | |
virtual IStepableObserverPtr | GetStepableObserver () const =0 |
Get the processor's stepable observer object. More... | |
virtual Bool | AddGraphNode (IObservableNodePtr observableNode)=0 |
Add a observable node object to the processor's node observer. More... | |
virtual Bool | RemoveGraphNode (IObservableNodePtr observableNode)=0 |
Remove a observable node object from the processor's node observer. More... | |
virtual Bool | AreGraphNodesValid () const =0 |
Check if all observed nodes are valid. More... | |
virtual INodeObserverPtr | GetNodeObserver () const =0 |
Get the processor's node observer object. More... | |
![]() | |
virtual Bool | Init (const IState *state)=0 |
Initialze the processor. More... | |
virtual Bool | DeInit (const IState *state)=0 |
Deinitialze the processor. More... | |
virtual void | ProcessTick (const IState *state)=0 |
Execute a logic tick. More... | |
virtual void | ProcessFrame (const IState *state)=0 |
Execute a frame tick. More... | |
virtual void | FinishTick (const IState *state)=0 |
Finish a logic tick. More... | |
virtual void | FinishFrame (const IState *state)=0 |
Finish a frame tick. More... | |
virtual void | PackageWillBeLoaded (const IState *state, IPackage *package)=0 |
Report the beginning of package loading. More... | |
virtual void | PackageWasLoaded (const IState *state, IPackage *package)=0 |
Report the succesful loading of a package. More... | |
virtual void | PackageFailedLoading (const IState *state, IPackage *package)=0 |
Report failed loading a package. More... | |
virtual void | PackageWillBeUnloaded (const IState *state, IPackage *package)=0 |
Report the beginning of package unloading. More... | |
virtual void | PackageWasUnloaded (const IState *state, IPackage *package)=0 |
Report the succesful unloading of a package. More... | |
virtual void | PackageFailedUnloading (const IState *state, IPackage *package)=0 |
Report failed unloading a package. More... | |
virtual void | RunStateChanged (const IState *state, IEnums::AppRunState currentState, IEnums::AppRunState previousState)=0 |
Report a change of the application run state. More... | |
|
pure virtual |
Set the processor callback object.
appProcessor | The processor callback object. |
|
pure virtual |
Check if the processor is initialized.
IsInitialized() is typically the opposite of IsDeInitialized(), except if initialization fails. In this situation the processor is not initialized and not deinitialized, which means if the initialization fails, the deinitialization sequence is performed to clean-up the unfinished initialization process.
|
pure virtual |
Check if the processor is deinitialized.
IsDeInitialized() is typically the opposite of IsInitialized(), except if initialization fails. In this situation the processor is not initialized and not deinitialized, which means if the initialization fails, the deinitialization sequence is performed to clean-up the unfinished initialization process.
|
pure virtual |
Set the Enable/Disable state of the processor.
A disabled processor skips the IAppProcessor::OnProcessTick(), IAppProcessor::OnProcessFrame(), IStepableObserver::ProcessTick() callback.
SetEnabled performs the following:
isEnabled | true for enable, false for disable. |
|
pure virtual |
Set the Enable/Disable state for all child processors.
Call SetEnabled() for all child processors.
isEnabled | true for enable, false for disable. |
|
pure virtual |
Check if the processor is enabled.
|
pure virtual |
Add a child processor.
Add a given processor as the next child of the current processor.
processor | The processor object to add. |
|
pure virtual |
Remove a child processor.
Remove the first instance of a given processor node from this processor's children.
processor | The processor object to remove. |
|
pure virtual |
Initialize and add a child processor.
Execute Init() of a given processor and add the given processor as the next child of the current processor. This method is used for adding processors after initialization of the current processor.
state | The IState object. |
processor | The processor object to initialize and add. |
|
pure virtual |
Remove and deinitialize a child processor.
Remove the first instance of a given processor node from this processor's children and execute DeInit() of the given processor. This method is used for removing processors before deinitialization of the current processor.
state | The IState object. |
processor | The processor object to remove and deinitialize. |
|
pure virtual |
Get the number of childen.
|
pure virtual |
Get a child processor by index.
A valid index is [0 .. GetNumberOfChildren() - 1].
index | The zero-based index of the child processor. |
|
pure virtual |
Add a stepable object to the processor's stepable observer.
stepable | The stepable object to add. |
|
pure virtual |
Remove a stepable object from the processor's stepable observer.
See IStepableObserver::Remove().
stepable | The stepable object to remove. |
|
pure virtual |
Get the processor's stepable observer object.
|
pure virtual |
Add a observable node object to the processor's node observer.
See INodeObserver::Add().
observableNode | The observable node object to add. |
|
pure virtual |
Remove a observable node object from the processor's node observer.
observableNode | The observable node object to remove. |
|
pure virtual |
Check if all observed nodes are valid.
See INodeObserver::AreValid().
|
pure virtual |
Get the processor's node observer object.