![]() |
Murl Engine Lua Addon API
Version 1.0 beta
|
The IProcessor interface.
The IProcessor implements the IEngineProcessor interface including:
The following is performed on the IEngineProcessor interface:
Set the processor callback object.
Boolean SetAppProcessor(Murl.SharedPointer.LogicIAppProcessor appProcessor)
appProcessor | The processor callback object. |
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.
Boolean IsInitialized()
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.
Boolean IsDeInitialized()
Set the Enable/Disable state of the processor. A disabled processor skips the IAppProcessor::OnProcessTick(), IAppProcessor::OnProcessFrame(), IStepableObserver::ProcessTick() callback.
SetEnabled performs the following:
SetEnabled(Boolean isEnabled)
isEnabled | true for enable, false for disable. |
Set the Enable/Disable state for all child processors. Call SetEnabled() for all child processors.
SetChildrenEnabled(Boolean isEnabled)
isEnabled | true for enable, false for disable. |
Check if the processor is enabled.
Boolean IsEnabled()
Add a child processor. Add a given processor as the next child of the current processor.
Boolean AddChild(Murl.SharedPointer.LogicIProcessor processor)
processor | The processor object to add. |
Remove a child processor. Remove the first instance of a given processor node from this processor's children.
Boolean RemoveChild(Murl.SharedPointer.LogicIProcessor processor)
processor | The processor object to remove. |
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.
Boolean InitAddChild(Murl.Logic.IState state, Murl.SharedPointer.LogicIProcessor processor)
state | The IState object. |
processor | The processor object to initialize and add. |
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.
Boolean RemoveDeInitChild(Murl.Logic.IState state, Murl.SharedPointer.LogicIProcessor processor)
state | The IState object. |
processor | The processor object to remove and deinitialize. |
Get the number of childen.
Integer GetNumberOfChildren()
Get a child processor by index. A valid index is [0 .. GetNumberOfChildren() - 1].
Murl.SharedPointer.LogicIProcessor GetChild(Integer index)
index | The zero-based index of the child processor. |
Add a stepable object to the processor's stepable observer. See IStepableObserver::Add().
Boolean AddStepable(Murl.SharedPointer.LogicIStepable stepable)
stepable | The stepable object to add. |
Remove a stepable object from the processor's stepable observer. See IStepableObserver::Remove().
Boolean RemoveStepable(Murl.SharedPointer.LogicIStepable stepable)
stepable | The stepable object to remove. |
Get the processor's stepable observer object.
Murl.SharedPointer.LogicIStepableObserver GetStepableObserver()
Add a observable node object to the processor's node observer. See INodeObserver::Add().
Boolean AddGraphNode(Murl.SharedPointer.LogicIObservableNode observableNode)
observableNode | The observable node object to add. |
Remove a observable node object from the processor's node observer. See INodeObserver::Remove().
Boolean RemoveGraphNode(Murl.SharedPointer.LogicIObservableNode observableNode)
observableNode | The observable node object to remove. |
Check if all observed nodes are valid. See INodeObserver::AreValid().
Boolean AreGraphNodesValid()
Get the processor's node observer object.
Murl.SharedPointer.LogicINodeObserver GetNodeObserver()