|
Boost Users : |
From: Andreas Huber (ahd6974-spamgroupstrap_at_[hidden])
Date: 2005-10-17 08:11:55
Hi John
<john.wismar <at> autozone.com> writes:
> I'm playing with the statechart library,
> in conjunction with Boost 1.33 and VC 7.1. Â I'm having trouble using
> the state history functionality; I can't get it to compile, even taking
> into account the useful static assertions that ought to be helping me.
> Â Can someone suggest what I might be missing?Here's a boiled down sample:
there
> are 2 top-level states, StateA and StateB. Â Event2 transitions between
> them. Â When in StateA, Event1 transitions between 2 sub-states, StateA1
> and StateA2. Â When transitioning from StateB to StateA, I want to
> use StateA's history to determine which of StateA1 and Stae2 become active.
I'm very sorry for the late answer, but I missed your post back in September
because it was sent in reply to an unrelated post (Boost Graph Library).
Mick's analysis of the problem is correct. When you make a transition to
history then you must specify the *default* *state* that is entered in case
the history has never been saved before. The *outer* *state* of the default
state must then pass the appropriate has_xxx_history.
Note that this is very much in line with the UML notation. A transition to
history always goes to a H disc first and from that H disc you have another
arrow to the default state. The state containing the H disc is said to be the
one "having history".
> From reading the tutorial, references, and sample code, it looks
> like this should work:
[example snipped]
I checked the docs and I can't find any examples that display the wrong syntax
you used. A pointer would be appreciated.
HTH & Regards,
-- Andreas Huber When replying by private email, please remove the words spam and trap from the address shown in the header.
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net