00001 00027 #ifndef MSMAZES_CORE_FSM_INPUT_MAKER_NEXT_STATE_HPP 00028 #define MSMAZES_CORE_FSM_INPUT_MAKER_NEXT_STATE_HPP 00029 00030 #include <boost/mpl/bool.hpp> // boost::mpl::true_ and boost::mpl::false_ 00031 00032 namespace msmazes { 00033 00035 00055 struct FSMNextStateInputMaker 00056 { 00061 typedef boost::mpl::false_ 00062 RequiresSingleLayer; 00063 00068 typedef boost::mpl::false_ 00069 RequiresLastVisitedMap; 00070 00078 template < 00079 typename Pattern 00080 > 00081 inline static typename Pattern::CellIndex 00082 getInputCount( 00083 const Pattern& pattern 00084 ) 00085 { 00086 return pattern.getCellCount(); 00087 } 00088 00097 template < 00098 typename Pattern 00099 > 00100 inline static typename Pattern::CellIndex 00101 getInput( 00102 const Pattern& pattern 00103 , const typename Pattern::CellIndex previous_cell_i 00104 , const typename Pattern::CellIndex current_cell_i 00105 , const typename Pattern::CellIndex next_cell_i 00106 ) 00107 { 00108 return next_cell_i; 00109 } 00110 }; 00111 } // namespace msmazes 00112 00113 #endif /* MSMAZES_CORE_FSM_INPUT_MAKER_NEXT_STATE_HPP */
Multi-State Mazes in C++ is hosted by . Use the Table of Contents for navigation.