summaryrefslogtreecommitdiff
path: root/apps/plugins/puzzles/src/latin.h
diff options
context:
space:
mode:
Diffstat (limited to 'apps/plugins/puzzles/src/latin.h')
-rw-r--r--apps/plugins/puzzles/src/latin.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/apps/plugins/puzzles/src/latin.h b/apps/plugins/puzzles/src/latin.h
index ff6f07c922..bb172ec3c7 100644
--- a/apps/plugins/puzzles/src/latin.h
+++ b/apps/plugins/puzzles/src/latin.h
@@ -85,6 +85,7 @@ int latin_solver_diff_set(struct latin_solver *solver,
85 bool extreme); 85 bool extreme);
86 86
87typedef int (*usersolver_t)(struct latin_solver *solver, void *ctx); 87typedef int (*usersolver_t)(struct latin_solver *solver, void *ctx);
88typedef bool (*validator_t)(struct latin_solver *solver, void *ctx);
88typedef void *(*ctxnew_t)(void *ctx); 89typedef void *(*ctxnew_t)(void *ctx);
89typedef void (*ctxfree_t)(void *ctx); 90typedef void (*ctxfree_t)(void *ctx);
90 91
@@ -96,15 +97,15 @@ enum { diff_impossible = 10, diff_ambiguous, diff_unfinished };
96int latin_solver(digit *grid, int o, int maxdiff, 97int latin_solver(digit *grid, int o, int maxdiff,
97 int diff_simple, int diff_set_0, int diff_set_1, 98 int diff_simple, int diff_set_0, int diff_set_1,
98 int diff_forcing, int diff_recursive, 99 int diff_forcing, int diff_recursive,
99 usersolver_t const *usersolvers, void *ctx, 100 usersolver_t const *usersolvers, validator_t valid,
100 ctxnew_t ctxnew, ctxfree_t ctxfree); 101 void *ctx, ctxnew_t ctxnew, ctxfree_t ctxfree);
101 102
102/* Version you can call if you want to alloc and free latin_solver yourself */ 103/* Version you can call if you want to alloc and free latin_solver yourself */
103int latin_solver_main(struct latin_solver *solver, int maxdiff, 104int latin_solver_main(struct latin_solver *solver, int maxdiff,
104 int diff_simple, int diff_set_0, int diff_set_1, 105 int diff_simple, int diff_set_0, int diff_set_1,
105 int diff_forcing, int diff_recursive, 106 int diff_forcing, int diff_recursive,
106 usersolver_t const *usersolvers, void *ctx, 107 usersolver_t const *usersolvers, validator_t valid,
107 ctxnew_t ctxnew, ctxfree_t ctxfree); 108 void *ctx, ctxnew_t ctxnew, ctxfree_t ctxfree);
108 109
109void latin_solver_debug(unsigned char *cube, int o); 110void latin_solver_debug(unsigned char *cube, int o);
110 111