Public Member Functions | |
def | __init__ |
def | addToSM |
def | constructCompoundState |
def | constructParallel |
def | constructSimpleState |
def | constructSSM |
def | convertSCXML |
def | convertToConcurenceMap |
def | findIOkeys |
def | get_datamodel |
def | get_final_states_id |
def | get_on_entry |
def | get_on_exit |
Public Attributes | |
CheckBool | |
Get all possible outcomes but still checking if the transition is consistent. | |
root | |
skillProvider | |
StateDict | |
Private Attributes | |
_current_parent_list | |
Init variables for interations. | |
_current_SM_list | |
copy the new list of parent | |
_next_parent_list | |
Main loop. | |
_next_SM_list |
Definition at line 52 of file ssm_scxml_interpreter.py.
def src.airbus_ssm_core.ssm_scxml_interpreter.ssmInterpreter.__init__ | ( | self, | |
file | |||
) |
Definition at line 54 of file ssm_scxml_interpreter.py.
def src.airbus_ssm_core.ssm_scxml_interpreter.ssmInterpreter.addToSM | ( | self, | |
current_SM, | |||
added_ID, | |||
added_State, | |||
transitions_, | |||
keys_ | |||
) |
Add a state, a state machine or a concurence to the current state machine / concurence
Definition at line 460 of file ssm_scxml_interpreter.py.
def src.airbus_ssm_core.ssm_scxml_interpreter.ssmInterpreter.constructCompoundState | ( | self, | |
current_level, | |||
parent, | |||
current_openSM, | |||
mainSM, | |||
final_states | |||
) |
Definition at line 293 of file ssm_scxml_interpreter.py.
def src.airbus_ssm_core.ssm_scxml_interpreter.ssmInterpreter.constructParallel | ( | self, | |
current_level, | |||
parent, | |||
current_openSM, | |||
mainSM, | |||
final_states | |||
) |
Definition at line 223 of file ssm_scxml_interpreter.py.
def src.airbus_ssm_core.ssm_scxml_interpreter.ssmInterpreter.constructSimpleState | ( | self, | |
current_level, | |||
current_openSM, | |||
mainSM, | |||
final_states | |||
) |
Definition at line 378 of file ssm_scxml_interpreter.py.
Construct the mainStateMachine then all the state by recursive level construction (0, then all level 1, then all level 2)
Definition at line 95 of file ssm_scxml_interpreter.py.
First we import the skills Then we construct the state machine We return the constructed state machine
Definition at line 73 of file ssm_scxml_interpreter.py.
def src.airbus_ssm_core.ssm_scxml_interpreter.ssmInterpreter.convertToConcurenceMap | ( | self, | |
event | |||
) |
Split the event in the transition into a map for the concurence purpose For example : A.Succeeded AND B.Failed ==> [{'A':'Succeeded', 'B':'Failed'}] A.Succeeded OR B.Failed ==> [{'A':'Succeeded'}, {'B':'Failed'}] A.Failed ==> [{'A':'Failed'}]
Definition at line 472 of file ssm_scxml_interpreter.py.
def src.airbus_ssm_core.ssm_scxml_interpreter.ssmInterpreter.findIOkeys | ( | self, | |
state, | |||
ID | |||
) |
Definition at line 544 of file ssm_scxml_interpreter.py.
def src.airbus_ssm_core.ssm_scxml_interpreter.ssmInterpreter.get_datamodel | ( | self, | |
state, | |||
mainSM, | |||
ID | |||
) |
Definition at line 500 of file ssm_scxml_interpreter.py.
def src.airbus_ssm_core.ssm_scxml_interpreter.ssmInterpreter.get_final_states_id | ( | self, | |
current_level | |||
) |
Definition at line 442 of file ssm_scxml_interpreter.py.
def src.airbus_ssm_core.ssm_scxml_interpreter.ssmInterpreter.get_on_entry | ( | self, | |
state | |||
) |
Definition at line 514 of file ssm_scxml_interpreter.py.
def src.airbus_ssm_core.ssm_scxml_interpreter.ssmInterpreter.get_on_exit | ( | self, | |
state | |||
) |
Definition at line 529 of file ssm_scxml_interpreter.py.
Init variables for interations.
Current level is finished close the current SM for construction.
There is no lower level
Definition at line 54 of file ssm_scxml_interpreter.py.
copy the new list of parent
Definition at line 54 of file ssm_scxml_interpreter.py.
Definition at line 54 of file ssm_scxml_interpreter.py.
Get all possible outcomes but still checking if the transition is consistent.
Add the datamodel.
State is parent ==> it's a state machine.
if target a final state send we set on the outcome
get onEntry and onExit
copy the list of State Machine
Parallel.
Check for final states if not a parallel state.
Init the new smach state machine.
Setupt the initial state for the intial state machine
Construct parallel state
add to the next parent list Find the transitions
add to the parent list Find the transitions If the current_openSM is not a concurence then we can map the outcome, otherwise we have to map on this level Because there is no final state for a concurence and he can not transition to another state
remplace the final states of the parent to this level
Find the io_keys Add the intial state
Find the transitions
Find the skill
Definition at line 54 of file ssm_scxml_interpreter.py.
Definition at line 54 of file ssm_scxml_interpreter.py.
Definition at line 54 of file ssm_scxml_interpreter.py.
Definition at line 54 of file ssm_scxml_interpreter.py.