StateTransitionControl

Control for functions related to state transition

GetStateTransitions

public override List<StateTransition> GetStateTransitions(StateActionMap stateActionMap)

Definition

Returns the state transitions that will be transitioned to the next stage based on the defined StateActionMap.

Parameters

Type
Description

StateActionMap

The state to define the transitions.

Return

Type
Description
Default

List<StateTransition>

The state transition list.

Example (Default Logic)

public List<StateTransition> GetStateTransitions(StateActionMap stateActionMap) 
{
    List<StateTransition> trans = new List<StateTransition>();

    StateTransition tran = new StateTransition();

    tran.FromState = stateActionMap.PostActionState;
    tran.ToState = stateActionMap.PostActionState.Clone();
    tran.Cost = stateActionMap.Cost;

    trans.Add(tran);

    return trans;
}

GetFinalStateTransition

public override StateTransition GetFinalStateTransition(State state)

Definition

Defines a StateTransition from a given State to a final state.

Parameters

Type
Description

State

The state to transition to the final state.

Return

Type
Description
Default

StateTransition

State transition to the final state.

Example (Default Logic)

public virtual StateTransition GetFinalStateTransition(State state)
{
    DataModel.StateTransition tran = new DataModel.StateTransition();

    State finalState = new State();
    finalState.IsFinal = true;

    tran.FromState = state;
    tran.ToState = finalState;

    return tran;
}

Last updated