9#include <unordered_map>
17 class grid_operations;
25 explicit distance_grid(
unsigned int width = 1u,
unsigned int length = 1u,
unsigned int levels = 1u);
43 virtual std::string
contents_of(std::shared_ptr<cell>
const &c)
const noexcept override;
60 std::shared_ptr<
distances> get_distances() const noexcept;
63 std::
string to_base36(
int value) const;
A grid that can calculate distances between cells.
Definition distance_grid.h:23
virtual std::string contents_of(std::shared_ptr< cell > const &c) const noexcept override
virtual grid_operations & operations() noexcept override
Get access to grid operations interface.
void calculate_distances(int start_index, int end_index) noexcept
Calculates distances for a range of indices.
virtual std::uint32_t background_color_for(std::shared_ptr< cell > const &c) const noexcept override
A class that manages distances associated with cells in a grid.
Definition distances.h:19
Interface for the grid class.
Definition grid_interface.h:20
Interface for grid navigation and manipulation operations.
Definition grid_operations.h:18
Namespace for the maze builder.
Definition algo_interface.h:6