17 class grid_operations;
24 explicit distance_grid(
unsigned int width = 1u,
unsigned int length = 1u,
unsigned int levels = 1u);
37 [[nodiscard]] std::string
contents_of(std::shared_ptr<cell>
const& c)
const noexcept override;
42 [[nodiscard]] std::uint32_t
54 void resize(
unsigned int rows,
unsigned int cols,
unsigned int levels) const noexcept;
A grid that can calculate distances between cells.
Definition distance_grid.h:22
std::shared_ptr< distances > get_distances() const noexcept
Get the distances object.
void resize(unsigned int rows, unsigned int cols, unsigned int levels) const noexcept
Resize the grid.
std::uint32_t background_color_for(std::shared_ptr< cell > const &c) const noexcept override
void calculate_distances(int start_index, int end_index) noexcept
Calculates distances for a range of indices.
std::string contents_of(std::shared_ptr< cell > const &c) const noexcept override
grid_operations & operations() noexcept override
Get access to grid operations interface.
A class that manages distances associated with cells in a grid.
Definition distances.h:22
Interface for the grid class.
Definition grid_interface.h:20
Interface for grid navigation and manipulation operations.
Definition grid_operations.h:19