QScxml : Support for Scxml
-
Hello,
I used Scxml for implementing the state machine. The simple use case, works fine. But I have situation where, I need to group all the common sub state under one category and need to invoked different main states.
Example scenario is,
I have to detect the images of my face and detect them for different passengers in a vehicle.
Assume, I have to detect Eye, Nose, Mouth for a driver and co-driver. I have to design a state machine such that,
Driver and Co-Driver becomes the main state and Eye, Nose, Mouth are sub states and repeats for the Driver and Co-Driver.Here, Driver and co-Driver tries to initialise to faceSubstate. I want to achieve this kind of situation.
<state id="driver">
<initial>
<transition target="faceSubStates"/>
</initial>
<onentry>
<send type="qt:signal" event="enteredDriver"/>
<transition event="nextClicked" target="coDriver"/>
</onentry>
</state>
<state id="coDriver">
<initial>
<transition target="faceSubStates"/>
</initial>
<onentry>
<send type="qt:signal" event="enteredDriver"/>
<transition event="nextClicked" target="coDriver"/>
</onentry>
</state><state id="faceSubStates" initial="eye">
<state id="eye">
<onentry>
<send type="qt:signal" event="enteredEye"/>
</onentry>
<transition event="nextClicked" target="Nose"/>
</state>
<state id="nose">
<onentry>
<send type="qt:signal" event="entereNose"/>
</onentry>
</state>
</state>Problem Observed:
If we implement this kind of situation, the substates are not identified and QScxml is not able to move to sub states from the Main state.
(P.S : The above scxml is not complete. This is just given for reference. Main point I want to high light is ->) How to initialise with
the "Main States" with the repetitive sub states which are grouped under one tag. -
Hi and welcome to devnet,
The QtSCXML module being currently a technical preview, you should bring your questions to the interest mailing list. You'll find there QtSCXML's developers/maintainers. This forum is more user oriented and there's likely less people having already used that module here.