[msm] internal/external conflicting transitions

Christophe - The docs have a section on "Conflicting Transitions". It has two conflicts described: 1. an event enables multiple transitions because multiple guards test valid, 2. an internal and external transition are both enabled I see a clear definition for the behavior of #1 in the discussion; however, it is not clear that #2 will follow the same rule. It was actually a little surprising to me that the order of the transition definitions affected #2. (Well, maybe not surprising ... but not what I wanted). I used the SimpleTutorial to test the behavior with: a_row < Stopped , play , Stopped , &p::test_conflict >, a_row < Stopped , play , Playing , &p::start_playback >, a_row < Stopped , open_close , Open , &p::open_drawer >, and a_row < Stopped , play , Playing , &p::start_playback >, a_row < Stopped , play , Stopped , &p::test_conflict >, a_row < Stopped , open_close , Open , &p::open_drawer >, The last transition defined "wins" in a conflict. I believe that there is strong historical precedent that internal transitions are always considered before external transitions. I suspect that if this is the behavior that I desire then I can order the transitions so that internals are listed last. Perhaps some additional clarification for case #2 in the docs would be helpful. Thanks - michael -- ---------------------------------- Michael Caisse Object Modeling Designs www.objectmodelingdesigns.com
participants (1)
-
Michael Caisse