ncurses-gameoflife/grid.h

36 lines
679 B
C
Raw Normal View History

2020-06-12 09:46:44 +08:00
#include <stdbool.h>
#ifndef GRID_H
#define GRID_H
2020-06-12 09:46:44 +08:00
typedef struct Grid {
unsigned int size;
unsigned int width;
2020-06-15 08:12:14 +08:00
bool* state;
bool* next_state;
2020-06-12 09:46:44 +08:00
} Grid;
// inits grid and returns pointer to grid. Remember to use Destroy Grid to deallocate
Grid* initGrid(unsigned int width, unsigned int height);
2020-06-12 09:46:44 +08:00
2020-06-15 08:12:14 +08:00
void randomizeGrid(Grid* grid);
unsigned int toIndex(Grid* grid, int x, int y);
2020-06-15 08:12:14 +08:00
bool getPixel(Grid* grid, int x, int y);
2020-07-04 07:02:55 +08:00
void getDimensions(Grid* grid, unsigned int* width, unsigned int* height);
2020-06-12 09:46:44 +08:00
void clearGrid(Grid* grid);
void updateGrid(Grid* grid);
void setPixel(Grid* grid, int x, int y, bool on);
2020-06-12 09:46:44 +08:00
void drawGrid(Grid* grid);
void destroyGrid(Grid* grid);
#endif
2020-06-24 11:05:49 +08:00