#ifndef GRID_H #define GRID_H #include "position.h" typedef struct Dimensions { unsigned int width; unsigned int height; } Dimensions; typedef struct Grid { char ***grid; Dimensions dimens; } Grid; /** * Returns a grid. * * @param width The grid width * @param height The grid height * @param fill A string to fill the new grid with */ Grid grid_create(unsigned int width, unsigned int height, char *fill); /* * Returns a value from a position in a grid. * * @param grid A grid * @param pos A grid position */ char *grid_get(Grid grid, Position pos); /* * Sets the value of a position in a grid. * * @param grid A grid * @param pos A grid position * @param value A new value */ void grid_set(Grid grid, Position pos, char *value); /** * Prints a grid. * * @param grid A grid */ void grid_print(Grid grid); /** * Destroys a grid. * * @param grid A grid */ void grid_destroy(Grid grid); #endif