├── .gitignore ├── README.md ├── msm ├── CMakeLists.txt ├── include │ └── msm │ │ ├── controller.h │ │ ├── fsm_impl.h │ │ └── icontroller.h └── src │ ├── controller.cpp │ └── main.cpp ├── msm_refactored ├── CMakeLists.txt ├── include │ └── msm │ │ ├── controller.h │ │ └── fsm_impl.h └── src │ ├── controller.cpp │ └── main.cpp ├── sml ├── CMakeLists.txt ├── include │ └── sml │ │ ├── controller.h │ │ ├── fsm_impl.h │ │ └── icontroller.h ├── lib │ └── sml │ │ └── include │ │ └── boost │ │ ├── sml.hpp │ │ └── sml │ │ ├── aux_ │ │ ├── type_traits.hpp │ │ └── utility.hpp │ │ ├── back │ │ ├── internals.hpp │ │ ├── mappings.hpp │ │ ├── policies.hpp │ │ ├── state_machine.hpp │ │ ├── transitions.hpp │ │ └── utility.hpp │ │ ├── concepts │ │ ├── callable.hpp │ │ ├── composable.hpp │ │ └── transitional.hpp │ │ ├── front │ │ ├── actions │ │ │ ├── defer.hpp │ │ │ └── process.hpp │ │ ├── event.hpp │ │ ├── operators.hpp │ │ ├── state.hpp │ │ └── transition.hpp │ │ ├── state_machine.hpp │ │ ├── transition_table.hpp │ │ └── utility │ │ └── dispatch_table.hpp └── src │ ├── controller.cpp │ └── main.cpp └── sml_refactored ├── CMakeLists.txt ├── include └── sml │ ├── controller.h │ └── fsm_impl.h ├── lib └── sml │ └── include │ └── boost │ ├── sml.hpp │ └── sml │ ├── aux_ │ ├── type_traits.hpp │ └── utility.hpp │ ├── back │ ├── internals.hpp │ ├── mappings.hpp │ ├── policies.hpp │ ├── state_machine.hpp │ ├── transitions.hpp │ └── utility.hpp │ ├── concepts │ ├── callable.hpp │ ├── composable.hpp │ └── transitional.hpp │ ├── front │ ├── actions │ │ ├── defer.hpp │ │ └── process.hpp │ ├── event.hpp │ ├── operators.hpp │ ├── state.hpp │ └── transition.hpp │ ├── state_machine.hpp │ ├── transition_table.hpp │ └── utility │ └── dispatch_table.hpp └── src ├── controller.cpp └── main.cpp /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/.gitignore -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/README.md -------------------------------------------------------------------------------- /msm/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/msm/CMakeLists.txt -------------------------------------------------------------------------------- /msm/include/msm/controller.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/msm/include/msm/controller.h -------------------------------------------------------------------------------- /msm/include/msm/fsm_impl.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/msm/include/msm/fsm_impl.h -------------------------------------------------------------------------------- /msm/include/msm/icontroller.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/msm/include/msm/icontroller.h -------------------------------------------------------------------------------- /msm/src/controller.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/msm/src/controller.cpp -------------------------------------------------------------------------------- /msm/src/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/msm/src/main.cpp -------------------------------------------------------------------------------- /msm_refactored/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/msm_refactored/CMakeLists.txt -------------------------------------------------------------------------------- /msm_refactored/include/msm/controller.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/msm_refactored/include/msm/controller.h -------------------------------------------------------------------------------- /msm_refactored/include/msm/fsm_impl.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/msm_refactored/include/msm/fsm_impl.h -------------------------------------------------------------------------------- /msm_refactored/src/controller.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/msm_refactored/src/controller.cpp -------------------------------------------------------------------------------- /msm_refactored/src/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/msm_refactored/src/main.cpp -------------------------------------------------------------------------------- /sml/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/CMakeLists.txt -------------------------------------------------------------------------------- /sml/include/sml/controller.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/include/sml/controller.h -------------------------------------------------------------------------------- /sml/include/sml/fsm_impl.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/include/sml/fsm_impl.h -------------------------------------------------------------------------------- /sml/include/sml/icontroller.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/include/sml/icontroller.h -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/aux_/type_traits.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/aux_/type_traits.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/aux_/utility.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/aux_/utility.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/back/internals.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/back/internals.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/back/mappings.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/back/mappings.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/back/policies.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/back/policies.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/back/state_machine.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/back/state_machine.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/back/transitions.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/back/transitions.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/back/utility.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/back/utility.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/concepts/callable.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/concepts/callable.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/concepts/composable.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/concepts/composable.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/concepts/transitional.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/concepts/transitional.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/front/actions/defer.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/front/actions/defer.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/front/actions/process.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/front/actions/process.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/front/event.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/front/event.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/front/operators.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/front/operators.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/front/state.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/front/state.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/front/transition.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/front/transition.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/state_machine.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/state_machine.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/transition_table.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/transition_table.hpp -------------------------------------------------------------------------------- /sml/lib/sml/include/boost/sml/utility/dispatch_table.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/lib/sml/include/boost/sml/utility/dispatch_table.hpp -------------------------------------------------------------------------------- /sml/src/controller.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/src/controller.cpp -------------------------------------------------------------------------------- /sml/src/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml/src/main.cpp -------------------------------------------------------------------------------- /sml_refactored/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/CMakeLists.txt -------------------------------------------------------------------------------- /sml_refactored/include/sml/controller.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/include/sml/controller.h -------------------------------------------------------------------------------- /sml_refactored/include/sml/fsm_impl.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/include/sml/fsm_impl.h -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/aux_/type_traits.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/aux_/type_traits.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/aux_/utility.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/aux_/utility.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/back/internals.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/back/internals.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/back/mappings.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/back/mappings.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/back/policies.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/back/policies.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/back/state_machine.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/back/state_machine.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/back/transitions.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/back/transitions.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/back/utility.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/back/utility.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/concepts/callable.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/concepts/callable.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/concepts/composable.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/concepts/composable.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/concepts/transitional.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/concepts/transitional.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/front/actions/defer.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/front/actions/defer.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/front/actions/process.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/front/actions/process.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/front/event.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/front/event.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/front/operators.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/front/operators.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/front/state.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/front/state.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/front/transition.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/front/transition.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/state_machine.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/state_machine.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/transition_table.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/transition_table.hpp -------------------------------------------------------------------------------- /sml_refactored/lib/sml/include/boost/sml/utility/dispatch_table.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/lib/sml/include/boost/sml/utility/dispatch_table.hpp -------------------------------------------------------------------------------- /sml_refactored/src/controller.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/src/controller.cpp -------------------------------------------------------------------------------- /sml_refactored/src/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ubeh/fsm_examples/HEAD/sml_refactored/src/main.cpp --------------------------------------------------------------------------------