#include "sokoban.h"
#include "coord.h"
+#include "object.h"
#define ERRPRINT(fmt, as...) fprintf(stderr, fmt, ## as);
#define DPRINT(fmt, as...) if(DEBUG) ERRPRINT(fmt, ## as);
LACE_ME;
sylvan_init_package(1LL<<21, 1LL<<27, 1LL<<20, 1LL<<26);
sylvan_init_bdd(6);
-
- encode_screen(screen);
-
- sokoban_free(screen);
-
switch(strat){
case COORD:
DPRINT("Encoding coordinate based\n");
+ encode_screen(screen);
break;
case OBJECT:
DPRINT("Encoding object based\n");
+ solve_object(screen);
break;
case HYBRID:
DPRINT("Encoding hybrid based\n");
+ DPRINT("Not implemented yet...\n");
break;
default:
ERRPRINT("Huh?");
exit(2);
}
+ sokoban_free(screen);
time_end_encode = clock();
//SOLVE???
--- /dev/null
+#include <sylvan.h>
+
+#include "object.h"
+#include "sokoban.h"
+
+BDD solve_object(sokoban_screen *screen)
+{
+ BDD state = sylvan_false;
+ return state;
+ (void) screen; //To avoid not used error
+}
#ifndef SOKOBAN_H
#define SOKOBAN_H
+#include <stdio.h>
+
#include "uthash.h"
typedef enum {FREE, WALL, BOX, TARGET, AGENT, TARGAGENT, TARGBOX} sokoban_tile;