----- Original Message -----
From: stetkas
Newsgroups: gmane.comp.lib.boost.user
To: boost-users@lists.boost.org
Sent: Monday, January 16, 2012 7:37 PM
Subject: Boost MSM: No transition from submachine to externalstate

Using the following example as a template:

http://svn.boost.org/svn/boost/trunk/libs/msm/doc/HTML/examples/CompositeTutorialWithEumlTable.cpp

I am trying to create a state machine that consists of an alarm state and a composite state (submachine). When an alarm event is posted while in the composite state, the state machine is supposed to transition to the Alarm state; however, the machine complains that no transition from the composite state on the alarm event exists. This is similar to the example where the player is in playing and a stop event is received.

Below is a dumbed-down version of my state machine:


Hi again,
 
ah I remember now. I changed the example last june because of a problem with exit points.
If you write:
 
typedef boost::msm::back::state_machine<Normal_T> Normal_THelper;
struct Normal_TImpl : public Normal_THelper,
                          public msm::front::euml::euml_state<Normal_TImpl >
{
};
Then it will work in your case but likely fail if faced with exit points. If you have none, you can use this trick temporarily while I have a look at this.
Otherwise you'll need to use the example I just posted, eUML is still in development and an experimental front-end.
 
Christophe