|
Boost : |
Subject: Re: [boost] [msm]entry point pseudo states and events (Re: [msm]orthogonal region and event consume)
From: Christophe Henry (christophe.j.henry_at_[hidden])
Date: 2012-05-31 17:17:25
Hi Takatoshi,
> I thought a bit last night after our last discussion and I come to such a
> transition in your first example:
>
> ====> msmf::Row < Entry1 , boost::any, State2_2 , ExecuteEntry,
> msmf::none >
>
> Not that the event now is boost::any. And it matches your Event1 of
> course. This way you get the same effect as your none and I keep my event
> data as I can any_cast (note to self, also plan to support Steven's new
> pimped any. Name suggestion: boost::pimped_any :) ).
>
> The added advantage is that this will apply to all of MSM's transitions,
> not just pseudo entries.
I just committed a version where this is implemented (trunk rev. 78785). You
can play with it and see if it solves your problem. I'm pretty confident it
will work, but I need to make more tests and update the doc (but it's
getting late).
For non-eUML front-ends, boost::any is now an acceptable event, for eUML I
added an event named "kleene" behaving like a boost::any. With both, the
original event is saved in the boost::any, which allows you some more
entertaining guards or actions ;-)
HTH,
Christophe
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk