class MAGES::SceneGraph::StubSceneGraph

Overview

Stub class for scene graph module. More…

class StubSceneGraph: public MAGES::SceneGraphModule
{
public:
    // methods

    virtual override SceneGraphModule ActionInitialized(ActionInitializedEvent action);
    virtual override SceneGraphModule ActionPerformed(ActionPerformedEvent action);
    virtual override SceneGraphModule ActionUndone(ActionUndoneEvent action);
    virtual override SceneGraphModule ForEachAction(Action<BaseActionData> action);
    virtual override ActionCategory GetActionCategory(BaseActionData action);
    virtual override void Shutdown();
    virtual override void Skip();
    virtual override void SkipAction(BaseActionData action);
    virtual override void Startup();
    virtual override void Undo();
    virtual override void UndoAction(BaseActionData action);
};

Inherited Members

public:
    // enums

    enum ActionCategory;

    // properties

    AudioClip PerformSound;
    AudioClip UndoSound;
    GameObject InfoUI;
    GameObject WarningUI;
    GameObject AchievementUI;
    GameObject ErrorUI;
    Material HolographicMaterial;

    // methods

    virtual abstract void Startup() = 0;
    virtual abstract void Shutdown() = 0;
    delegate void ActionInitializedEvent(BaseActionData data);
    delegate void ActionPerformedEvent(BaseActionData data, bool skipped);
    delegate void ActionUndoneEvent(BaseActionData data);

    delegate void ActionStateChangeEvent(
        BaseActionData data,
        ActionState previousState,
        ActionState newState
    );

    virtual abstract void SkipAction(BaseActionData action) = 0;
    virtual abstract void UndoAction(BaseActionData action) = 0;
    virtual abstract void Skip() = 0;
    virtual abstract void Undo() = 0;
    virtual abstract ActionCategory GetActionCategory(BaseActionData action) = 0;
    virtual abstract SceneGraphModule ActionInitialized(ActionInitializedEvent action) = 0;
    virtual abstract SceneGraphModule ActionPerformed(ActionPerformedEvent action) = 0;
    virtual abstract SceneGraphModule ActionUndone(ActionUndoneEvent action) = 0;
    virtual abstract SceneGraphModule ForEachAction(Action<BaseActionData> action) = 0;

Detailed Documentation

Stub class for scene graph module.

Methods

virtual override SceneGraphModule ActionInitialized(ActionInitializedEvent action)

Add event listener for when an action is initialized.

Parameters:

action

The delegate to invoke.

Returns:

The module.

virtual override SceneGraphModule ActionPerformed(ActionPerformedEvent action)

Add event listener for when an action is performed.

Parameters:

action

The delegate to invoke.

Returns:

The module.

virtual override SceneGraphModule ActionUndone(ActionUndoneEvent action)

Add event listener for when an action is reverted.

Parameters:

action

The delegate to invoke.

Returns:

The module.

virtual override SceneGraphModule ForEachAction(Action<BaseActionData> action)

Iterate through all the actions.

Parameters:

action

The action to invoke for each action.

Returns:

The module.

virtual override ActionCategory GetActionCategory(BaseActionData action)

Gets the action category.

Parameters:

action

The action.

Returns:

The category of the action.

virtual override void Shutdown()

Called when the module is destroyed or replaced.

virtual override void Skip()

General version of SkipAction(BaseActionData). This will perform/skip all the currently running actions.

virtual override void SkipAction(BaseActionData action)

Skips a specific action.

Parameters:

action

The action to be skipped.

virtual override void Startup()

Called when the module is started (usually on application start).

virtual override void Undo()

General version of UndoAction(BaseActionData). This will undo all the running actions, as well as the previous ones.

virtual override void UndoAction(BaseActionData action)

Undo a specific action.

Parameters:

action

The action to be undone.