Hi,
I try to use boost::MSM to implement a simple state machine for testing purpose. There are several events which have to be processed in the right order, so i defer the other events, which are currently not allowed. I try to defer the events in the transition table, to have one place to look for it, despite having all states to look, what events they defer.
I tried to change the transition rows to change their priorities, but it didnt help. If i unkomment the anonymous transition from live_got_image to live_wait_for_image, it works as expected, but i want to transition automaticly to repeatedly enter the states live_wait_for_image/live_got_image until the ev_stop_live get sent.
I'm afraid it won't work. According to the UML standard which MSM tries to
follow, anonymous transitions have higher priority than deferred events. You
could use a guard in the anonymous transition to disable it if you have a
deferred event in the queue, for example:
struct OnlyIfNoDeferred
{
template