6b8823dd7cba10b304f678025af34aada1a16398
[mc1516pa.git] / modelchecker / sokoban.h
1 #ifndef SOKOBAN_H
2 #define SOKOBAN_H
3 #include <stdio.h>
4
5 #include "uthash.h"
6
7 typedef enum {FREE, WALL, BOX, TARGET, AGENT, TARGAGENT, TARGBOX} sokoban_tile;
8
9 typedef struct {
10 int x;
11 int y;
12 } record_key;
13
14 typedef struct {
15 record_key coord;
16 sokoban_tile tile;
17 UT_hash_handle hh;
18 } sokoban_screen;
19
20 sokoban_screen *parse_screen(FILE *stream);
21
22 sokoban_screen *get_coord(int x, int y, sokoban_screen *screen);
23
24 void sokoban_print(sokoban_screen *screen);
25
26 void sokoban_free(sokoban_screen *screen);
27
28 #endif