12 class grid_operations;
30 explicit colored_grid(
unsigned int width = 1u,
unsigned int length = 1u,
unsigned int levels = 1u);
35 [[nodiscard]] std::string
contents_of(
const std::shared_ptr<cell>& c)
const noexcept override;
57 void resize(
unsigned int rows,
unsigned int cols,
unsigned int levels) const noexcept;
A colored grid implementation that extends the grid_interface to include distance-based coloring.
Definition colored_grid.h:16
std::string contents_of(const std::shared_ptr< cell > &c) const noexcept override
Retrieves the contents of a given cell, if available.
void resize(unsigned int rows, unsigned int cols, unsigned int levels) const noexcept
Resize the grid to the specified dimensions.
void initialize_distance_coloring(int start_index, int goal_index) noexcept
Initialize distance coloring from a starting cell index.
std::uint32_t background_color_for(const std::shared_ptr< cell > &c) const noexcept override
Retrieves the background color for a given cell, if available.
grid_operations & operations() noexcept override
Get access to grid operations interface.
colored_grid(unsigned int width=1u, unsigned int length=1u, unsigned int levels=1u)
Constructs a colored grid with specified dimensions.
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