tklab-tud / uscxml

SCXML interpreter and transformer/compiler written in C/C++ with bindings to Java, C#, Python and Lua
Other
106 stars 54 forks source link

Unmanaged Transitions execution #180

Open IKMODI opened 6 years ago

IKMODI commented 6 years ago

Hello,

I created an example of compound states and few events,

I am not able to execute the wait state of 2000ms in my state chart.

following is the output of the scxml execution:

[Log] "onentry:TestProcedure" [Log] "onentry:TS0" [Log] "onentry:TS0_s1" [Log] "onentry:TS0_s1_GetParametrs" [Log] "onexit:TS0_s1_GetParametrs" [Log] "tx:TS0_s1_Decision" [Log] "onentry:TS0_s1_Decision" [Log] "onentry:TS0_s1_CondVartrue" [Log] "onexit:TS0_s1_Decision" [Log] "tx:TS0_s1_WhileStates" [Log] "onentry:TS0_s1_WhileStates" [Log] "onentry:TS0_s1_WhileStates_s2 [Log] "onexit:TS0_s1_WhileStates_s2" [Log] "tx:TS0_s1_WhileStates_s3" [Log] "onexit:TS0_s1_WhileStates_s3" [Log] "onexit:TS0_s1_WhileStates_s3" [Log] "onexit:TS0_s1_WhileStates:" [Log] "onexit:TS0_s1" [Log] "onexit:TS0" [Log] "tx:TestProcedure_final" [Log] "onentry:TestProcedure_final" [Log] "onexit:TestProcedure" [Log] "tx:UnSubscribeAllAtEnd" [Log] "onentry:UnSubscribeAllAtEnd" [Log] "onexit:UnSubscribeAllAtEnd" [Log] "tx:scxml_final" [Log] "onentry:scxml_final"

if you notice in SCXML the log "'tx:TS0_s1_WhileStates_final - AllEvents'" is missing in the output. I noticed that the transtion is not executed which contains this log. and the event in that perticular state is not captured as well.

Any help is appriciated on this topic, I am debugging this point from days now still no clue what I am doing wrong.

I have attahed my scxml.

Thanks. p.zip

alexzhornyak commented 3 years ago

Hi, I know that this is too late answer. Just wanna close the issue and show the advantages of the visual scxml debugging

Issue 180

You have unguarded transitons from the root state to final. It means that state machine won't wait any delayed events and exit image