msmazes::WalkthroughMazeMaker Struct Reference
[Core Maze Layer]

#include <msmazes/core/maze/maker_walkthrough.hpp>

List of all members.


Detailed Description

This Maze Maker builds a walkthrough arrow maze on top of a Pattern's underlying graph. Using this struct to initialize an FSM Builder whose underlying pattern is not physical can make the resulting maze even more challenging. All programs using this struct must define BOOST_PARAMETER_MAX_ARITY as 9 or more.


Model of



Public Types

typedef SimpleWalkthroughMazePolicy DefaultPolicy
typedef boost::mpl::false_ RequiresRandomInputs
typedef boost::mpl::false_ RestartsOnDeadEnd
typedef boost::mpl::true_ BuildsLastVisitedMap

Static Public Member Functions

template<typename MazeStructType, typename Pattern, typename RNGEngine, typename MazePolicy>
void makeMaze (MazeStructType &maze, const Pattern &pattern, RNGEngine &rng_engine, const MazePolicy &policy)


Member Typedef Documentation

typedef SimpleWalkthroughMazePolicy msmazes::WalkthroughMazeMaker::DefaultPolicy
 

The default policy makes no additional rejections.

typedef boost::mpl::false_ msmazes::WalkthroughMazeMaker::RequiresRandomInputs
 

Random inputs are not required.

typedef boost::mpl::false_ msmazes::WalkthroughMazeMaker::RestartsOnDeadEnd
 

Dead-end states will not be replaced by the starting state.

typedef boost::mpl::true_ msmazes::WalkthroughMazeMaker::BuildsLastVisitedMap
 

This Maze Maker will build a last-visited map.


Member Function Documentation

template<typename MazeStructType, typename Pattern, typename RNGEngine, typename MazePolicy>
void msmazes::WalkthroughMazeMaker::makeMaze MazeStructType &  maze,
const Pattern &  pattern,
RNGEngine &  rng_engine,
const MazePolicy &  policy
[inline, static]
 

Builds the maze and stores the results in the maze object, as defined in the Maze Maker concept. The type of the policy parameter can be NoNegativeTurnWalkthroughMazePolicy if the type of the pattern object models the Physical Pattern concept; otherwise, the type of the policy parameter must be SimpleWalkthroughMazePolicy.


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