class MAGES::SceneGraph::ActionFactory¶
Overview¶
A factory for creating actions for a specific graph. More…
class ActionFactory { public: // methods static bool InvokeInitialize( BaseActionData data, Action trigger, GraphRunner runner ); static bool InvokeUndo(BaseActionData data); static void InvokeWriteDefaults(BaseActionData data); static BaseActionData CreateAction(System.Type actionType); virtual void WriteDefaults(BaseActionData data); virtual abstract bool Initialize( BaseActionData data, Action trigger, GraphRunner runner ) = 0; virtual bool Undo(BaseActionData data); }; // direct descendants class Factory; class Factory; class Factory; class Factory; class Factory; class Factory; class Factory; class Factory; class Factory;
Detailed Documentation¶
A factory for creating actions for a specific graph.
To create a factory, add it as a nested class inside of the corresponding action data class.
Methods¶
static bool InvokeInitialize( BaseActionData data, Action trigger, GraphRunner runner )
Shortcut to invoke Initialize(BaseActionData, Action, GraphRunner).
Parameters:
data |
The data. |
trigger |
The trigger. |
runner |
The graph runner. |
Returns:
True on success, false otherwise.
static bool InvokeUndo(BaseActionData data)
Shortcut to invoke Undo(BaseActionData).
Parameters:
data |
The data. |
Returns:
True on success, false otherwise.
static void InvokeWriteDefaults(BaseActionData data)
Shortcut to invoke WriteDefaults(BaseActionData).
Parameters:
data |
The data. |
static BaseActionData CreateAction(System.Type actionType)
Create an action of type actionType.
Parameters:
actionType |
The action type. |
System.ArgumentException |
Thrown if the type argument is not a subclass of BaseActionData. |
Returns:
The new instance of the action object.
virtual void WriteDefaults(BaseActionData data)
Write the default values for the action data.
Parameters:
data |
The action data. |
virtual abstract bool Initialize( BaseActionData data, Action trigger, GraphRunner runner ) = 0
Initialize the action based on data.
Parameters:
data |
The data. |
trigger |
Invoke this action to move to the next one. |
runner |
The graph runner. |
Returns:
Whether (or not) the action was properly initialized.
virtual bool Undo(BaseActionData data)
Undo the action data.
Parameters:
data |
The action data. |
Returns:
Whether (or not) the action was properly undone.