• Main Page
  • Modules
  • Namespaces
  • Classes
  • Files
  • File List

D:/Projekt/ECF_trunk/examples/GPMaze/Maze.h

00001 #pragma once
00002 
00003 #include <utility>
00004 #include <set>
00005 
00006 #define MazeMaxSize 30
00007 #define MazeMinSize 5
00008 
00009 using namespace std;
00010 
00011 class Maze
00012 {
00013 private:
00014     int maze[MazeMaxSize][MazeMaxSize];
00015     set< pair<int,int> > exits;
00016     pair<int,int> dimensions;
00017     
00018     void ClearMaze(void);
00019     void GenerateWalls(pair<int,int> submazeDim, pair<int,int> submazeStartXY);
00020     void CreateExits();
00021 
00022 public:
00023     Maze(void);
00024     
00025     void SaveMazeToFile(string filename, pair<int,int> startingCoords, int direction);
00026     void GenerateMaze(pair<int,int> submazeDim);
00027     bool IsExit(pair<int,int> position);
00028     bool IsThereWallAhead(pair<int,int> position, int direction);
00029     
00030     int GetWidth(void);
00031     int GetHeight(void);
00032 
00033     double FindMetric(pair<int,int> position);
00034 
00035     ~Maze(void);
00036 };
00037 

Generated on Fri Jul 13 2012 10:53:29 for ECF by  doxygen 1.7.1