![]() |
Murl Engine API
Version 2018.3
|
The IController interface. More...
#include <murl_graph_i_controller.h>
The IController interface.
This interface provides a generic way to automatically manipulate individual properties of a given Graph::INode. A class implementing this interface may modify a node's properties by overriding the ProcessLogic() method.
The Graph::ITimeController interface represents a more specialized controller type, which acts on current animation time values of individual Graph::ITimeline nodes.
See Graph::Node for details on creating controllers via an XML scene graph description.
Public Member Functions | |
virtual IController * | GetControllerInterface ()=0 |
Get the mutable IController interface. More... | |
virtual const IController * | GetControllerInterface () const =0 |
Get the constant IController interface. More... | |
virtual Bool | DeserializeAttribute (IDeserializeAttributeTracker *tracker)=0 |
Deserialize a single controller attribute. More... | |
virtual Bool | SetOwner (INode *owner)=0 |
Set the controller's owning (controlled) node. More... | |
virtual INode * | GetOwner () const =0 |
Get the controller's owning (controlled) node. More... | |
virtual Bool | PreInit (IInitTracker *tracker)=0 |
Perform initializaton before the node and its children are being initialized. More... | |
virtual Bool | PostInit (IInitTracker *tracker)=0 |
Perform initializaton after the node and its children have been initialized. More... | |
virtual Bool | PreDeInit (IDeInitTracker *tracker)=0 |
Perform de-initializaton step before the node and its children are being de-initialized. More... | |
virtual Bool | PostDeInit (IDeInitTracker *tracker)=0 |
Perform de-initializaton step after the node and its children have been de-initialized. More... | |
virtual Bool | PreConfigChangedLogic (IConfigChangedTracker *tracker)=0 |
Signal a configuration change, before the node is being processed. More... | |
virtual Bool | PostConfigChangedLogic (IConfigChangedTracker *tracker)=0 |
Signal a configuration change, after the node's children have been processed. More... | |
virtual Bool | PreConfigChangedOutput (IConfigChangedTracker *tracker)=0 |
Signal a configuration change, before the node is being processed. More... | |
virtual Bool | PostConfigChangedOutput (IConfigChangedTracker *tracker)=0 |
Signal a configuration change, after the node's children have been processed. More... | |
virtual Bool | PreProcessLogic (IProcessLogicTracker *tracker)=0 |
Perform a logic traversal, before the node is being processed. More... | |
virtual Bool | PostProcessLogic (IProcessLogicTracker *tracker)=0 |
Perform a logic traversal, after the node's children have been processed. More... | |
virtual Bool | PreProcessInput (IProcessInputTracker *tracker)=0 |
Perform an input traversal, before the node is being processed. More... | |
virtual Bool | PostProcessInput (IProcessInputTracker *tracker)=0 |
Perform an input traversal, after the node's children have been processed. More... | |
virtual Bool | PreProcessOutput (IProcessOutputTracker *tracker)=0 |
Perform an output traversal, before the node is being processed. More... | |
virtual Bool | PostProcessOutput (IProcessOutputTracker *tracker)=0 |
Perform an output traversal, after the node's children have been processed. More... | |
virtual Bool | SetInitialized (Bool isInitialized)=0 |
Set/reset the initialized state of the controller. More... | |
virtual Bool | IsInitialized () const =0 |
Check if this controller is initialized. More... | |
virtual UInt32 | GetConfigChangedResponse () const =0 |
Get the controller's active response for config change traversal. More... | |
virtual UInt32 | GetProcessLogicResponse () const =0 |
Get the controller's active response for logic traversal. More... | |
virtual UInt32 | GetProcessInputResponse () const =0 |
Get the controller's active response for input traversal. More... | |
virtual UInt32 | GetProcessOutputResponse () const =0 |
Get the controller's active response for output traversal. More... | |
![]() | |
virtual | ~IFactoryObject () |
The destructor. More... | |
virtual const ClassInfo * | GetObjectClassInfo () const=0 |
Get the object instance's class info, if present. More... | |
virtual void | ResetObjectProperties ()=0 |
Reset the object instance's properties to their default values. | |
Additional Inherited Members | |
![]() | |
typedef Array< const ClassInfo *> | ClassInfoArray |
Definition of an array of ClassInfo objects. More... | |
![]() | |
static const PropertyInfo * | GetPropertyInfo () |
Get the class' property info struct. More... | |
static const AttributeInfo * | GetAttributeInfo () |
Get the class' attribute info struct. More... | |
static void | ResetProperties (IFactoryObject< IController > *object) |
Reset an object instance's properties to their default values. More... | |
|
pure virtual |
Get the mutable IController interface.
|
pure virtual |
Get the constant IController interface.
|
pure virtual |
Deserialize a single controller attribute.
See Graph::INode::DeserializeAttribute().
tracker | The tracker used. |
Set the controller's owning (controlled) node.
Setting the owner is only allowed when the controller is not yet initialized.
owner | The owner. |
|
pure virtual |
Get the controller's owning (controlled) node.
|
pure virtual |
Perform initializaton before the node and its children are being initialized.
This method is invoked prior to a call to InitSelf() on the controlled node. It is used to perform any work necessary before the node or its children are being processed.
tracker | The tracker used for initialization. |
|
pure virtual |
Perform initializaton after the node and its children have been initialized.
This method is invoked after InitChildren() of the controlled node has been called. It is used to perform any work necessary after the node's children have been processed.
tracker | The tracker used for initialization. |
|
pure virtual |
Perform de-initializaton step before the node and its children are being de-initialized.
This method is invoked before DeInitChildren() of the controlled node is called. It is used to perform any work necessary before the node's sub-graph is processed.
tracker | The tracker used for de-initialization. |
|
pure virtual |
Perform de-initializaton step after the node and its children have been de-initialized.
This method is invoked after DeInitSelf() of the controlled node is called. It is used to perform any work necessary after the node's sub-graph is processed.
tracker | The tracker used for de-initialization. |
|
pure virtual |
Signal a configuration change, before the node is being processed.
tracker | The tracker used. |
|
pure virtual |
Signal a configuration change, after the node's children have been processed.
tracker | The tracker used. |
|
pure virtual |
Signal a configuration change, before the node is being processed.
tracker | The tracker used. |
|
pure virtual |
Signal a configuration change, after the node's children have been processed.
tracker | The tracker used. |
|
pure virtual |
Perform a logic traversal, before the node is being processed.
tracker | The tracker used for traversal. |
|
pure virtual |
Perform a logic traversal, after the node's children have been processed.
tracker | The tracker used for traversal. |
|
pure virtual |
Perform an input traversal, before the node is being processed.
tracker | The tracker used for traversal. |
|
pure virtual |
Perform an input traversal, after the node's children have been processed.
tracker | The tracker used for traversal. |
|
pure virtual |
Perform an output traversal, before the node is being processed.
tracker | The tracker used for traversal. |
|
pure virtual |
Perform an output traversal, after the node's children have been processed.
tracker | The tracker used for traversal. |
Set/reset the initialized state of the controller.
isInitialized | If true, the controller is set to the initialized state. |
|
pure virtual |
Check if this controller is initialized.
|
pure virtual |
Get the controller's active response for config change traversal.
|
pure virtual |
Get the controller's active response for logic traversal.
|
pure virtual |
Get the controller's active response for input traversal.
|
pure virtual |
Get the controller's active response for output traversal.