Boost logo

Boost :

Subject: [boost] [MSM] exit_ps stuks in case of outer state machine uses Row with event to event base class
From: Richard Szabo (sz.richard_at_[hidden])
Date: 2011-06-14 06:44:12


Hi Christophe and All

after splitting our complicated several level deep contained state
machines to small run-time instances.
I have to use feature Event Hierarchy
(http://svn.boost.org/svn/boost/trunk/libs/msm/doc/HTML/ch03s02.html#d0e1176)
which is really cool.
But this feature in combination with pseudo exits state, breaks the
pseudo exit state functionality and the
pseudo exit state is entered but never left.

I have made a small example where the problem is reproduced see
attachment. (the file name is misleading was just lazy to rename it
something more appropriate)

Here is the output of the execution :

entering: Idle MS1_
leaving: Idle
Action: MS1::onEvent1
entering: RunningStateMachine MS1_
entering: RunningStateMachine::PseudoEntry1
leaving: RunningStateMachine::PseudoEntry1
entering: Inner1 RunningStateMachine_
entering: InnerState11
leaving: InnerState11
leaving: Inner1
entering: RunningStateMachine::PseudoEntry1

I have tried it in our host test environment only so VC9 compiler and
with boost trunk from Friday last week.

Cheers
Richard.




Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk