Package com.opencloud.sce.fsmtool
Interface MultiFsmSbbStateMachine<ReturnCode extends Enum<ReturnCode>>
-
public interface MultiFsmSbbStateMachine<ReturnCode extends Enum<ReturnCode>>
Interface for a finite state machine. When an input is received the receivedInput() method is called. The state machine implementation will execute all input, exit and entry actions which are defined in the FSM. If multiple inputs need to be set/unset, or if inputs must be set/unset during action actions then the setInput() and unsetInput() methods should be used.- Author:
- charlie
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description ReturnCode
execute()
Notify the state machine that one or more inputs have arrived and execute.String
getDescription()
InputScheduler<FSMInput>
getInputScheduler()
int
getMaxExecutionCycles()
String
getName()
boolean
isExecuting()
void
setMaxExecutionCycles(int maxExecutionCycles)
-
-
-
Method Detail
-
execute
ReturnCode execute()
Notify the state machine that one or more inputs have arrived and execute. Inputs are provided using the raiseInput methods- Returns:
- number of transitions or -1 if there was an error
-
getInputScheduler
InputScheduler<FSMInput> getInputScheduler()
-
getName
String getName()
- Returns:
- name of the state machine
-
getDescription
String getDescription()
- Returns:
- description of the state machine
-
isExecuting
boolean isExecuting()
-
getMaxExecutionCycles
int getMaxExecutionCycles()
-
setMaxExecutionCycles
void setMaxExecutionCycles(int maxExecutionCycles)
-
-