diff --git a/patsolve/golfsolver.h b/patsolve/golfsolver.h --- a/patsolve/golfsolver.h +++ b/patsolve/golfsolver.h @@ -21,7 +21,6 @@ class Golf; #include "patsolve.h" #ifdef WITH_BH_SOLVER -#include <black-hole-solver/bool.h> #include <black-hole-solver/black_hole_solver.h> #endif diff --git a/patsolve/golfsolver.cpp b/patsolve/golfsolver.cpp --- a/patsolve/golfsolver.cpp +++ b/patsolve/golfsolver.cpp @@ -244,10 +244,13 @@ exit(-1); } black_hole_solver_enable_rank_reachability_prune( - solver_instance, TRUE); - black_hole_solver_enable_wrap_ranks(solver_instance, FALSE); + solver_instance, true); + black_hole_solver_enable_wrap_ranks(solver_instance, false); black_hole_solver_enable_place_queens_on_kings( - solver_instance, TRUE); + solver_instance, true); +#ifdef BLACK_HOLE_SOLVER__API__REQUIRES_SETUP_CALL +black_hole_solver_config_setup(solver_instance); +#endif int error_line_num; int num_columns = BHS__GOLF__NUM_COLUMNS; @@ -261,6 +264,9 @@ error_line_num); exit(-1); } +#ifdef BLACK_HOLE_SOLVER__API__REQUIRES_SETUP_CALL +black_hole_solver_setup(solver_instance); +#endif solver_ret = BLACK_HOLE_SOLVER__OUT_OF_ITERS; if (solver_instance) @@ -299,6 +305,9 @@ m_winMoves.clear(); int col_idx, card_rank, card_suit; int next_move_ret_code; +#ifdef BLACK_HOLE_SOLVER__API__REQUIRES_SETUP_CALL + black_hole_solver_init_solution_moves(solver_instance); +#endif while ((next_move_ret_code = black_hole_solver_get_next_move( solver_instance, &col_idx, &card_rank, &card_suit)) == BLACK_HOLE_SOLVER__SUCCESS)