aboutsummaryrefslogtreecommitdiff
path: root/src/sdl/solve.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/sdl/solve.h')
-rw-r--r--src/sdl/solve.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/sdl/solve.h b/src/sdl/solve.h
new file mode 100644
index 0000000..0bd0ae1
--- /dev/null
+++ b/src/sdl/solve.h
@@ -0,0 +1,28 @@
+#ifndef SOLVE_H
+#define SOLVE_H
+
+#include <SDL.h>
+#include "../core/sok.h"
+
+typedef enum {
+ SOLVE_EVENT_STEP,
+ SOLVE_EVENT_FAIL,
+ SOLVE_EVENT_DONE,
+ SOLVE_EVENT_LAST,
+} solve_event_type_t;
+
+struct solve_t_;
+typedef struct solve_t_ solve_t;
+
+solve_t *solve(const sok_ctx_t * const, const Uint32);
+void solve_fini(
+ solve_t * const,
+ void (*)(const _Bool, const sok_ctx_t *, const size_t, void *),
+ void *
+);
+void solve_cancel(solve_t * const);
+
+size_t solve_get_num_steps(solve_t * const);
+_Bool solve_get_result(solve_t * const);
+
+#endif /* SOLVE_H */