#ifndef EMPTY_HPP #define EMPTY_HPP // back-end #include //front-end #include #include #include "Events.hpp" struct Open; namespace msm = boost::msm; namespace mpl = boost::mpl; struct Empty : public msm::front::state<> { template void on_entry(Event const&,FSM& ) {std::cout << "entering: Empty" << std::endl;} template void on_exit(Event const&,FSM& ) {std::cout << "leaving: Empty" << std::endl;} void open_drawer(open_close const&); struct internal_transition_table : mpl::vector< // Start Event Next Action Guard //+-------------+---------+-------------+---------+---------------------------+----------------------+ msm::front::a_row2 < Empty , open_close , Open , Empty,&Empty::open_drawer > //+-------------+---------+-------------+---------+---------------------------+----------------------+ > {}; }; #endif