Archon.SwissArmyLib.Automata Namespace |
Class | Description | |
---|---|---|
BaseStateTMachine, TContext |
A simple abstract class that implements IStateTMachine, TContext.
You might be looking for FsmStateT or PdaStateT.
| |
FiniteStateMachineT |
A simple Finite State Machine with states as objects inspired by Prime31's excellent StateKit.
If your state classes have an empty constructor, the state machine can create the states automatically when needed (using ChangeStateAutoTState).
If not you should create the state instance yourself and register the state in the machine.
Whether or not a null state is valid is up to your design.
| |
FsmStateT |
A simple abstract class that implements IFsmStateT and can be used in a FiniteStateMachineT
You're not required to use this, but it's easier.
| |
PdaStateT |
A simple abstract class that implements IPdaStateT and can be used in a PushdownAutomatonT
You're not required to use this, but it's easier.
| |
PushdownAutomatonT |
A simple Pushdown Automaton with states as objects.
If your state classes have an empty constructor, the state machine can register the states automatically when needed (using PushStateAutoTState and ChangeStateAutoTState).
If not you should register the states yourself using RegisterStateTypeTState or RegisterStateType(Type, FuncIPdaStateT) and use the regular.
The machine will automatically pool the states so you don't have to worry about it.
Whether or popping the last state is valid is up to your design.
|
Interface | Description | |
---|---|---|
IFsmStateT |
Represents a state to be used in a FiniteStateMachineT.
| |
IPdaStateT |
Represents a state to be used in a PushdownAutomatonT.
| |
IStateTMachine, TContext |
Represents a state to be used in a state machine.
You might be looking for IFsmStateT or IPdaStateT.
|