Boost.Msm guide

Preface

Boost.Msm is the library that supports the implementation of the modelling machine corresponding to the UML 2.x. You can access all the relevant documents via the following URL.
http://www.boost.org/libs/msm/doc/HTML/index.html

This article's purpose is to indicate the guidelines for how UML
modelers can use Boost.Msm effectively.

This guideline is based on Functor front-end.
http://www.boost.org/libs/msm/doc/HTML/ch03s03.html
Boost.Msm supports basic front-end. It contains many transition table notation: (e.g. _row, a_row, g_row, and so on)
See http://www.boost.org/libs/msm/doc/HTML/ch03s02.html
They are rather complicated. I recommend that you should use the Functor front-end instead of them. Because Functor front-end is the most sophisticated and efficient approach. In the future, the Functor front-end might be replaced with eUML notation. It has been released as experimental for now. (version 1.51.0) http://www.boost.org/doc/libs/1_51_0/libs/msm/doc/HTML/ch03s04.html

Guidline

Simple state machine
Initial transition's action
Self transition and internal transition
Two different ways of implement internal transitions
Junction pseudo state
Choice pseudo state
Deferred events
Sub-machine state

Add a New Comment