
Hi Andreas, On 2008-04-06, Andreas Huber wrote :
Hi Andre
I am implementing a fsm for a kind of a project class, which tracks certain changes like adding special files or starting a computation. To keep the interface as small/clean as possible all interactions with the fsm should be soley processed by the process_event method. But seemingl I have to declare transition actions public in an outer state to make them available for inner state reactions/transitions. Is there any nice way to avoid this and to keep transition actions separated from the public interface? (Declaring *all* inner states which need access to be friend seems too ugly to me...)
[snip code]
Have you read <http://www.boost.org/doc/libs/1_35_0/libs/statechart/doc/faq.html#HideInne rWorkings>?
Yes, I read it before but so far I haven't been able to link this to my problem. Unfortunately it's not clear to me how the faq answer can be applied to give an inner state reaction access to an outer state transit function without declaring the latter to be public. I am not that much C++ matured, so maybe I am overlooking the obvious solution? (In that case, please forgive my ignorance :-)) Regards, Andre