#pragma once #include "matrix.hpp" #include "map.hpp" namespace maze { void init(Matrix& maze); void hunt_and_kill(Matrix& maze, std::vector& rooms, std::vector& dead_ends); void randomize_rooms(std::vector& rooms_out, std::vector& maybe_here); void inner_donut(Matrix& maze, float outer_rad, float inner_rad); void inner_box(Matrix& map, size_t outer_size, size_t inner_size); void divide(Matrix& maze, Point start, Point end); void remove_dead_ends(Matrix& maze, std::vector& dead_ends); }