msmazes::FSMNextStateInputMaker Struct Reference
[Core FSM Layer]

#include <msmazes/core/fsm/input/maker_next_state.hpp>

List of all members.


Detailed Description

This FSM Input Maker builds inputs according to the index of the next cell in a Pattern. As a result, there are as many possible inputs as there are cells, and the transition function ends up being a dense matrix. Use only if necessary.


Model of



Public Types

typedef boost::mpl::false_ RequiresSingleLayer
typedef boost::mpl::false_ RequiresLastVisitedMap

Static Public Member Functions

template<typename Pattern>
Pattern::CellIndex getInputCount (const Pattern &pattern)
template<typename Pattern>
Pattern::CellIndex getInput (const Pattern &pattern, const typename Pattern::CellIndex previous_cell_i, const typename Pattern::CellIndex current_cell_i, const typename Pattern::CellIndex next_cell_i)


Member Typedef Documentation

typedef boost::mpl::false_ msmazes::FSMNextStateInputMaker::RequiresSingleLayer
 

This FSM Input Maker does not require a single layer.

typedef boost::mpl::false_ msmazes::FSMNextStateInputMaker::RequiresLastVisitedMap
 

This FSM Input Maker does not require a last-visited map.


Member Function Documentation

template<typename Pattern>
Pattern::CellIndex msmazes::FSMNextStateInputMaker::getInputCount const Pattern &  pattern  )  [inline, static]
 

Calculates the number of possible inputs that the finite state machine can process, as defined in the FSM Input Maker concept. Returns the number of cells in the specified pattern.

template<typename Pattern>
Pattern::CellIndex msmazes::FSMNextStateInputMaker::getInput const Pattern &  pattern,
const typename Pattern::CellIndex  previous_cell_i,
const typename Pattern::CellIndex  current_cell_i,
const typename Pattern::CellIndex  next_cell_i
[inline, static]
 

Calculates the input required for the finite state machine to change state from pointing to the cell at index current_cell_i to pointing to the cell at index next_cell_i, as defined in the FSM Input Maker concept. The previous_cell_i parameter is ignored. Returns next_cell_i.


Multi-State Mazes in C++ is hosted by SourceForge.net. Use the Table of Contents for navigation.