diff options
Diffstat (limited to 'src/maze.hpp')
-rw-r--r-- | src/maze.hpp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/maze.hpp b/src/maze.hpp new file mode 100644 index 0000000..0ff1d06 --- /dev/null +++ b/src/maze.hpp @@ -0,0 +1,24 @@ +#ifndef MAZE_HPP +#define MAZE_HPP + +#include "matrix.hpp" +#include "vector2.hpp" +#include <memory> +#include <random> +#include <string> + +/** + * Turns a matrix into a maze. + * + * @param matrix A matrix + * @param start_pos The start position in the matrix + * @param space_element A matrix element used to indicate a space in a maze + * @param random_gen A pseudo-random number generator + */ +template <typename Element> +void matrix_to_maze(Matrix<Element> *matrix, std::shared_ptr<Vector2> start_pos, + Element space_element, std::mt19937 random_gen); + +#include "maze.tpp" + +#endif |