The IController interface. More...
#include "murl_graph_i_controller.h"
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... | |
Public Member Functions inherited from Murl::IFactoryObject< IController > | |
~IFactoryObject () override | |
The destructor. | |
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 | |
Public Types inherited from Murl::IFactoryObject< IController > | |
using | ClassInfoArray = Array< const ClassInfo * > |
Definition of an array of ClassInfo objects. | |
Static Public Member Functions inherited from Murl::IFactoryObject< IController > | |
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... | |
Detailed Description
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.
Member Function Documentation
◆ GetControllerInterface() [1/2]
|
pure virtual |
Get the mutable IController interface.
- Returns
- The mutable IController interface.
◆ GetControllerInterface() [2/2]
|
pure virtual |
Get the constant IController interface.
- Returns
- The constant IController interface.
◆ DeserializeAttribute()
|
pure virtual |
Deserialize a single controller attribute.
See Graph::INode::DeserializeAttribute().
- Parameters
-
tracker The tracker used.
- Returns
- true if the given attribute was recognized.
◆ SetOwner()
Set the controller's owning (controlled) node.
Setting the owner is only allowed when the controller is not yet initialized.
- Parameters
-
owner The owner.
- Returns
- true if successful.
◆ GetOwner()
|
pure virtual |
Get the controller's owning (controlled) node.
- Returns
- The owner.
◆ PreInit()
|
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.
- Parameters
-
tracker The tracker used for initialization.
- Returns
- true if successful.
◆ PostInit()
|
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.
- Parameters
-
tracker The tracker used for initialization.
- Returns
- true if successful.
◆ PreDeInit()
|
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.
- Parameters
-
tracker The tracker used for de-initialization.
- Returns
- true if successful.
◆ PostDeInit()
|
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.
- Parameters
-
tracker The tracker used for de-initialization.
- Returns
- true if successful.
◆ PreConfigChangedLogic()
|
pure virtual |
Signal a configuration change, before the node is being processed.
- Parameters
-
tracker The tracker used.
- Returns
- true if successful.
◆ PostConfigChangedLogic()
|
pure virtual |
Signal a configuration change, after the node's children have been processed.
- Parameters
-
tracker The tracker used.
- Returns
- true if successful.
◆ PreConfigChangedOutput()
|
pure virtual |
Signal a configuration change, before the node is being processed.
- Parameters
-
tracker The tracker used.
- Returns
- true if successful.
◆ PostConfigChangedOutput()
|
pure virtual |
Signal a configuration change, after the node's children have been processed.
- Parameters
-
tracker The tracker used.
- Returns
- true if successful.
◆ PreProcessLogic()
|
pure virtual |
Perform a logic traversal, before the node is being processed.
- Parameters
-
tracker The tracker used for traversal.
- Returns
- true if successful.
◆ PostProcessLogic()
|
pure virtual |
Perform a logic traversal, after the node's children have been processed.
- Parameters
-
tracker The tracker used for traversal.
- Returns
- true if successful.
◆ PreProcessInput()
|
pure virtual |
Perform an input traversal, before the node is being processed.
- Parameters
-
tracker The tracker used for traversal.
- Returns
- true if successful.
◆ PostProcessInput()
|
pure virtual |
Perform an input traversal, after the node's children have been processed.
- Parameters
-
tracker The tracker used for traversal.
- Returns
- true if successful.
◆ PreProcessOutput()
|
pure virtual |
Perform an output traversal, before the node is being processed.
- Parameters
-
tracker The tracker used for traversal.
- Returns
- true if successful.
◆ PostProcessOutput()
|
pure virtual |
Perform an output traversal, after the node's children have been processed.
- Parameters
-
tracker The tracker used for traversal.
- Returns
- true if successful.
◆ SetInitialized()
Set/reset the initialized state of the controller.
- Parameters
-
isInitialized If true, the controller is set to the initialized state.
- Returns
- true if successful.
◆ IsInitialized()
|
pure virtual |
Check if this controller is initialized.
- Returns
- true if initialized.
◆ GetConfigChangedResponse()
|
pure virtual |
Get the controller's active response for config change traversal.
- Returns
- A bit mask of traversal triggers this controller will respond to, from the INode::ConfigChangedTriggers enumeration.
◆ GetProcessLogicResponse()
|
pure virtual |
Get the controller's active response for logic traversal.
- Returns
- A bit mask of traversal triggers this controller will respond to, from the INode::ProcessLogicTriggers enumeration.
◆ GetProcessInputResponse()
|
pure virtual |
Get the controller's active response for input traversal.
- Returns
- A bit mask of traversal triggers this controller will respond to, from the INode::ProcessInputTriggers enumeration.
◆ GetProcessOutputResponse()
|
pure virtual |
Get the controller's active response for output traversal.
- Returns
- A bit mask of traversal triggers this controller will respond to, from the INode::ProcessOutputTriggers enumeration.
The documentation for this interface was generated from the following file:
- murl_graph_i_controller.h