Max Houghton
/
MazeGame_el15mh
el15mh 200929957
Maze/Maze.h@9:960dfc71c224, 2017-05-04 (annotated)
- Committer:
- el15mh
- Date:
- Thu May 04 14:43:29 2017 +0000
- Revision:
- 9:960dfc71c224
- Child:
- 10:989e5dbd12ee
Documented using doxygen
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
el15mh | 9:960dfc71c224 | 1 | /** Maze Class |
el15mh | 9:960dfc71c224 | 2 | @brief Class contains all the mazes in the form of many series of lines. |
el15mh | 9:960dfc71c224 | 3 | @author Max Houghton |
el15mh | 9:960dfc71c224 | 4 | @date March 19 2017 |
el15mh | 9:960dfc71c224 | 5 | */ |
el15mh | 9:960dfc71c224 | 6 | |
el15mh | 9:960dfc71c224 | 7 | #ifndef MAZE_H |
el15mh | 9:960dfc71c224 | 8 | #define MAZE_H |
el15mh | 9:960dfc71c224 | 9 | |
el15mh | 9:960dfc71c224 | 10 | #include "mbed.h" |
el15mh | 9:960dfc71c224 | 11 | #include "N5110.h" |
el15mh | 9:960dfc71c224 | 12 | |
el15mh | 9:960dfc71c224 | 13 | class Maze |
el15mh | 9:960dfc71c224 | 14 | { |
el15mh | 9:960dfc71c224 | 15 | |
el15mh | 9:960dfc71c224 | 16 | public: |
el15mh | 9:960dfc71c224 | 17 | |
el15mh | 9:960dfc71c224 | 18 | /** |
el15mh | 9:960dfc71c224 | 19 | * @details - constructor |
el15mh | 9:960dfc71c224 | 20 | */ |
el15mh | 9:960dfc71c224 | 21 | Maze(); |
el15mh | 9:960dfc71c224 | 22 | |
el15mh | 9:960dfc71c224 | 23 | /** |
el15mh | 9:960dfc71c224 | 24 | * @details - constructor |
el15mh | 9:960dfc71c224 | 25 | */ |
el15mh | 9:960dfc71c224 | 26 | ~Maze(); |
el15mh | 9:960dfc71c224 | 27 | |
el15mh | 9:960dfc71c224 | 28 | /** Initialise the maze |
el15mh | 9:960dfc71c224 | 29 | * |
el15mh | 9:960dfc71c224 | 30 | * @details - maze object is initialised with specific maze index value |
el15mh | 9:960dfc71c224 | 31 | * @param - mazeIndex - int to select which maze shall be drawn. |
el15mh | 9:960dfc71c224 | 32 | */ |
el15mh | 9:960dfc71c224 | 33 | void init(int mazeIndex); |
el15mh | 9:960dfc71c224 | 34 | |
el15mh | 9:960dfc71c224 | 35 | /** Draw |
el15mh | 9:960dfc71c224 | 36 | * |
el15mh | 9:960dfc71c224 | 37 | * @details - Maze is drawn on LCD screen. |
el15mh | 9:960dfc71c224 | 38 | * @param - lcd - N5110 Library used to draw lines and set pixels which make up maze. |
el15mh | 9:960dfc71c224 | 39 | */ |
el15mh | 9:960dfc71c224 | 40 | void draw(N5110 &lcd); |
el15mh | 9:960dfc71c224 | 41 | |
el15mh | 9:960dfc71c224 | 42 | private: |
el15mh | 9:960dfc71c224 | 43 | |
el15mh | 9:960dfc71c224 | 44 | /** Maze Zero |
el15mh | 9:960dfc71c224 | 45 | * |
el15mh | 9:960dfc71c224 | 46 | * @details - Adding lines and pixels to lcd buffer which make up first maze (index 0). This is easy maze 1. |
el15mh | 9:960dfc71c224 | 47 | * @param - lcd - N5110 Library used to draw lines and pixels. |
el15mh | 9:960dfc71c224 | 48 | * |
el15mh | 9:960dfc71c224 | 49 | */ |
el15mh | 9:960dfc71c224 | 50 | void mazeIndexZero(N5110 &lcd); |
el15mh | 9:960dfc71c224 | 51 | |
el15mh | 9:960dfc71c224 | 52 | /** Maze One |
el15mh | 9:960dfc71c224 | 53 | * |
el15mh | 9:960dfc71c224 | 54 | * @details - Adding lines and pixels to lcd buffer which make up first maze (index 1). This is easy maze 2. |
el15mh | 9:960dfc71c224 | 55 | * @param - lcd - N5110 Library used to draw lines and pixels. |
el15mh | 9:960dfc71c224 | 56 | * |
el15mh | 9:960dfc71c224 | 57 | */ |
el15mh | 9:960dfc71c224 | 58 | void mazeIndexOne(N5110 &lcd); |
el15mh | 9:960dfc71c224 | 59 | |
el15mh | 9:960dfc71c224 | 60 | |
el15mh | 9:960dfc71c224 | 61 | /** Maze Two |
el15mh | 9:960dfc71c224 | 62 | * |
el15mh | 9:960dfc71c224 | 63 | * @details - Adding lines and pixels to lcd buffer which make up first maze (index 2). This is easy maze 3. |
el15mh | 9:960dfc71c224 | 64 | * @param - lcd - N5110 Library used to draw lines and pixels. |
el15mh | 9:960dfc71c224 | 65 | * |
el15mh | 9:960dfc71c224 | 66 | */ |
el15mh | 9:960dfc71c224 | 67 | void mazeIndexTwo(N5110 &lcd); |
el15mh | 9:960dfc71c224 | 68 | |
el15mh | 9:960dfc71c224 | 69 | /** Maze Three |
el15mh | 9:960dfc71c224 | 70 | * |
el15mh | 9:960dfc71c224 | 71 | * @details - Adding lines and pixels to lcd buffer which make up first maze (index 3). This is medium maze 1. |
el15mh | 9:960dfc71c224 | 72 | * @param - lcd - N5110 Library used to draw lines and pixels. |
el15mh | 9:960dfc71c224 | 73 | * |
el15mh | 9:960dfc71c224 | 74 | */ |
el15mh | 9:960dfc71c224 | 75 | void mazeIndexThree(N5110 &lcd); |
el15mh | 9:960dfc71c224 | 76 | |
el15mh | 9:960dfc71c224 | 77 | /** Maze Four. |
el15mh | 9:960dfc71c224 | 78 | * |
el15mh | 9:960dfc71c224 | 79 | * @details - Adding lines and pixels to lcd buffer which make up first maze (index 4). This is medium maze 2. |
el15mh | 9:960dfc71c224 | 80 | * @param - lcd - N5110 Library used to draw lines and pixels. |
el15mh | 9:960dfc71c224 | 81 | * |
el15mh | 9:960dfc71c224 | 82 | */ |
el15mh | 9:960dfc71c224 | 83 | void mazeIndexFour(N5110 &lcd); |
el15mh | 9:960dfc71c224 | 84 | |
el15mh | 9:960dfc71c224 | 85 | /** Maze Five. |
el15mh | 9:960dfc71c224 | 86 | * |
el15mh | 9:960dfc71c224 | 87 | * @details - Adding lines and pixels to lcd buffer which make up first maze (index 5). This is medium maze 3. |
el15mh | 9:960dfc71c224 | 88 | * @param - lcd - N5110 Library used to draw lines and pixels. |
el15mh | 9:960dfc71c224 | 89 | * |
el15mh | 9:960dfc71c224 | 90 | */ |
el15mh | 9:960dfc71c224 | 91 | void mazeIndexFive(N5110 &lcd); |
el15mh | 9:960dfc71c224 | 92 | |
el15mh | 9:960dfc71c224 | 93 | |
el15mh | 9:960dfc71c224 | 94 | /** Maze Six. |
el15mh | 9:960dfc71c224 | 95 | * |
el15mh | 9:960dfc71c224 | 96 | * @details - Adding lines and pixels to lcd buffer which make up first maze (index 6). This is hard maze 1. |
el15mh | 9:960dfc71c224 | 97 | * @param - lcd - N5110 Library used to draw lines and pixels. |
el15mh | 9:960dfc71c224 | 98 | * |
el15mh | 9:960dfc71c224 | 99 | */ |
el15mh | 9:960dfc71c224 | 100 | void mazeIndexSix(N5110 &lcd); |
el15mh | 9:960dfc71c224 | 101 | |
el15mh | 9:960dfc71c224 | 102 | /** Maze Seven. |
el15mh | 9:960dfc71c224 | 103 | * |
el15mh | 9:960dfc71c224 | 104 | * @details - Adding lines and pixels to lcd buffer which make up first maze (index 7). This is hard maze 2. |
el15mh | 9:960dfc71c224 | 105 | * @param - lcd - N5110 Library used to draw lines and pixels. |
el15mh | 9:960dfc71c224 | 106 | * |
el15mh | 9:960dfc71c224 | 107 | */ |
el15mh | 9:960dfc71c224 | 108 | void mazeIndexSeven(N5110 &lcd); |
el15mh | 9:960dfc71c224 | 109 | |
el15mh | 9:960dfc71c224 | 110 | /** Maze Eight. |
el15mh | 9:960dfc71c224 | 111 | * |
el15mh | 9:960dfc71c224 | 112 | * @details - Adding lines and pixels to lcd buffer which make up first maze (index 8). This is hard maze 3. |
el15mh | 9:960dfc71c224 | 113 | * @param - lcd - N5110 Library used to draw lines and pixels. |
el15mh | 9:960dfc71c224 | 114 | * |
el15mh | 9:960dfc71c224 | 115 | */ |
el15mh | 9:960dfc71c224 | 116 | void mazeIndexEight(N5110 &lcd); |
el15mh | 9:960dfc71c224 | 117 | |
el15mh | 9:960dfc71c224 | 118 | /** Maze Nine. |
el15mh | 9:960dfc71c224 | 119 | * |
el15mh | 9:960dfc71c224 | 120 | * @details - Adding lines and pixels to lcd buffer which make up first maze (index 9). This is the extreme version maze. |
el15mh | 9:960dfc71c224 | 121 | * @param - lcd - N5110 Library used to draw lines and pixels. |
el15mh | 9:960dfc71c224 | 122 | * |
el15mh | 9:960dfc71c224 | 123 | */ |
el15mh | 9:960dfc71c224 | 124 | void mazeIndexNine(N5110 &lcd); |
el15mh | 9:960dfc71c224 | 125 | |
el15mh | 9:960dfc71c224 | 126 | /** |
el15mh | 9:960dfc71c224 | 127 | * @details - Index value which is used in draw() function to allow the desired maze to be drawn. |
el15mh | 9:960dfc71c224 | 128 | * @param - _mazeIndex - integer to specify desired maze. |
el15mh | 9:960dfc71c224 | 129 | */ |
el15mh | 9:960dfc71c224 | 130 | int _mazeIndex; |
el15mh | 9:960dfc71c224 | 131 | }; |
el15mh | 9:960dfc71c224 | 132 | |
el15mh | 9:960dfc71c224 | 133 | #endif /* MAZE_H */ |