/dports/games/freecell-solver/freecell-solver-6.2.0/patsolve/patsolve/ |
H A D | pat.h | 261 memset(soft_thread->tree_list, 0, sizeof(soft_thread->tree_list)); in fc_solve_pats__init_clusters() 262 soft_thread->my_block = fc_solve_pats__new_block(soft_thread); in fc_solve_pats__init_clusters() 286 soft_thread->bytes_per_pile = in fc_solve_pats__init_buckets() 289 memset(soft_thread->buckets_list, 0, sizeof(soft_thread->buckets_list)); in fc_solve_pats__init_buckets() 290 soft_thread->next_pile_idx = 0; in fc_solve_pats__init_buckets() 293 soft_thread->position_size = in fc_solve_pats__init_buckets() 384 soft_thread->my_block = NULL; in fc_solve_pats__free_blocks() 427 if (soft_thread->moves_to_win) in fc_solve_pats__recycle_soft_thread() 441 soft_thread->to_stack = false; in fc_solve_pats__init_soft_thread() 453 soft_thread->solve_stack = (typeof(soft_thread->solve_stack))SMALLOC( in fc_solve_pats__init_soft_thread() [all …]
|
H A D | patsolve.c | 152 if ((--soft_thread->dequeue__qpos) < soft_thread->dequeue__minpos) in dequeue_position() 158 soft_thread->dequeue__qpos = soft_thread->max_queue_idx; in dequeue_position() 161 soft_thread->dequeue__minpos = soft_thread->max_queue_idx; in dequeue_position() 168 } while (soft_thread->queue_head[soft_thread->dequeue__qpos] == NULL); in dequeue_position() 171 soft_thread->queue_head[soft_thread->dequeue__qpos]; in dequeue_position() 172 soft_thread->queue_head[soft_thread->dequeue__qpos] = pos->queue; in dequeue_position() 174 --soft_thread->num_positions_in_queue[soft_thread->dequeue__qpos]; in dequeue_position() 178 while (soft_thread->queue_head[soft_thread->dequeue__qpos] == NULL && in dequeue_position() 179 soft_thread->dequeue__qpos == soft_thread->max_queue_idx && in dequeue_position() 185 soft_thread->dequeue__minpos = soft_thread->dequeue__qpos; in dequeue_position() [all …]
|
H A D | pat.c | 514 if (soft_thread->moves_to_win) in win() 516 free(soft_thread->moves_to_win); in win() 517 soft_thread->moves_to_win = NULL; in win() 537 soft_thread->moves_to_win = moves_to_win; in win() 985 mark_irreversible(soft_thread, n); in fc_solve_pats__get_moves() 991 if (is_win(soft_thread)) in fc_solve_pats__get_moves() 994 win(soft_thread, pos); in fc_solve_pats__get_moves() 998 soft_thread->num_solutions++; in fc_solve_pats__get_moves() 1014 prioritize(soft_thread, soft_thread->possible_moves, total_num_moves); in fc_solve_pats__get_moves() 1100 if (wcmp(soft_thread, soft_thread->current_pos.column_idxs[w], i) < 0) in fc_solve_pats__sort_piles() [all …]
|
H A D | tree.c | 51 soft_thread->tree_list[bucket] = tl; in cluster_tree() 72 var_AUTO(b, soft_thread->my_block); in give_back_block() 96 const_SLOT(bytes_per_pile, soft_thread); in insert_node() 129 if (d < t->depth && !soft_thread->to_stack) in insert_node() 158 soft_thread, soft_thread->bytes_per_tree_node); in pack_position() 176 const int j = soft_thread->current_pos in pack_position() 222 ++soft_thread->num_states_in_collection; in fc_solve_pats__insert() 261 var_AUTO(b, soft_thread->my_block); in fc_solve_pats__new_from_block() 264 b = fc_solve_pats__new_block(soft_thread); in fc_solve_pats__new_from_block() 269 b->next = soft_thread->my_block; in fc_solve_pats__new_from_block() [all …]
|
/dports/games/freecell-solver/freecell-solver-6.2.0/ |
H A D | scans.c | 261 fcs_soft_thread *const soft_thread) in fc_solve_initialize_bfs_queue() argument 275 if (soft_thread->is_befs) in fc_solve_soft_thread_init_befs_or_bfs() 277 #define WEIGHTING(soft_thread) (&(BEFS_VAR(soft_thread, weighting))) in fc_solve_soft_thread_init_befs_or_bfs() argument 280 fc_solve_initialize_befs_rater(soft_thread, WEIGHTING(soft_thread)); in fc_solve_soft_thread_init_befs_or_bfs() 287 if (!BEFS_M_VAR(soft_thread, moves_list)) in fc_solve_soft_thread_init_befs_or_bfs() 337 befs_rate_state(soft_thread, WEIGHTING(soft_thread), in befs__insert_derived_states() 371 fcs_soft_thread *const soft_thread) in fc_solve_befs_or_bfs_do_solve() argument 412 const_SLOT(is_befs, soft_thread); in fc_solve_befs_or_bfs_do_solve() 414 const_SLOT(is_optimize_scan, soft_thread); in fc_solve_befs_or_bfs_do_solve() 650 fcs_soft_thread *const soft_thread, in fc_solve_sfs_check_state_end() argument [all …]
|
H A D | instance_for_lib.h | 24 free(BEFS_M_VAR(soft_thread, moves_list)); in fcs_free_moves_list() 25 BEFS_M_VAR(soft_thread, moves_list) = NULL; in fcs_free_moves_list() 28 &(DFS_VAR(soft_thread, moves_by_depth)); in fcs_free_moves_list() 62 static inline void st_free_pq(fcs_soft_thread *const soft_thread) in st_free_pq() argument 64 fc_solve_PQueueFree(&(BEFS_VAR(soft_thread, pqueue))); in st_free_pq() 68 fcs_soft_thread *const soft_thread) in fc_solve_free_instance_soft_thread_callback() argument 70 st_free_pq(soft_thread); in fc_solve_free_instance_soft_thread_callback() 72 fcs_free_moves_list(soft_thread); in fc_solve_free_instance_soft_thread_callback() 73 fc_solve_free_soft_thread_by_depth_move_array(soft_thread); in fc_solve_free_instance_soft_thread_callback() 77 const_SLOT(pats_scan, soft_thread); in fc_solve_free_instance_soft_thread_callback() [all …]
|
H A D | instance.c | 34 fcs_soft_thread *const soft_thread) in soft_thread_clean_soft_dfs() argument 37 DFS_VAR(soft_thread, soft_dfs_info); in soft_thread_clean_soft_dfs() 47 info_ptr + DFS_VAR(soft_thread, depth); in soft_thread_clean_soft_dfs() 70 DFS_VAR(soft_thread, soft_dfs_info) = NULL; in soft_thread_clean_soft_dfs() 71 DFS_VAR(soft_thread, dfs_max_depth) = 0; in soft_thread_clean_soft_dfs() 76 fcs_soft_thread *const soft_thread) in fc_solve_free_soft_thread_by_depth_move_array() argument 86 soft_thread->by_depth_moves_order.num = 0; in fc_solve_free_soft_thread_by_depth_move_array() 116 soft_thread_clean_soft_dfs(soft_thread); in soft_thread_run_cb() 154 fcs_soft_thread *soft_thread; in fc_solve_foreach_soft_thread() local 205 *soft_thread = (fcs_soft_thread){ in fc_solve_init_soft_thread() [all …]
|
H A D | lib.c | 701 st_free_pq(soft_thread); in recycle_ht() 861 soft_thread->is_befs = false; in setup_opt_thread__helper() 905 #undef soft_thread 1620 &(DFS_VAR(soft_thread, rand_gen)), DFS_VAR(soft_thread, rand_seed)); in init_dfs() 3832 typeof(soft_thread->pats_scan) pats_scan = soft_thread->pats_scan = in freecell_solver_user_set_solving_method() 4459 soft_thread, fc_solve_new_soft_thread(user->soft_thread->hard_thread)); in freecell_solver_user_next_soft_thread() 4460 if (soft_thread == NULL) in freecell_solver_user_next_soft_thread() 4465 user->soft_thread = soft_thread; in freecell_solver_user_next_soft_thread() 4486 if (soft_thread == NULL) in freecell_solver_user_next_hard_thread() 4491 user->soft_thread = soft_thread; in freecell_solver_user_next_hard_thread() [all …]
|
H A D | instance.h | 141 struct fc_solve_soft_thread_struct *const soft_thread); 181 for (; soft_thread < end_soft_thread; ++soft_thread) 701 #define fcs_st_instance(soft_thread) HT_INSTANCE((soft_thread)->hard_thread) argument 703 #define DFS_VAR(soft_thread, var) (soft_thread)->method_specific.soft_dfs.var argument 705 (soft_thread)->method_specific.befs.meth.befs.var 706 #define BEFS_M_VAR(soft_thread, var) (soft_thread)->method_specific.befs.var argument 708 (soft_thread)->method_specific.befs.meth.brfs.var 723 fcs_soft_thread *const soft_thread); 770 fcs_soft_thread *const soft_thread); 773 fcs_soft_thread *const soft_thread); [all …]
|
H A D | freecell.c | 279 return (soft_thread->num_vacant_freecells + in calc_num_vacant_slots() 614 const_SLOT(num_vacant_freecells, soft_thread); in DECLARE_MOVE_FUNCTION() 615 const_SLOT(num_vacant_stacks, soft_thread); in DECLARE_MOVE_FUNCTION() 709 soft_thread->num_vacant_freecells; in DECLARE_MOVE_FUNCTION() 821 if (!soft_thread->num_vacant_stacks) in DECLARE_MOVE_FUNCTION() 861 soft_thread->num_vacant_freecells; in DECLARE_MOVE_FUNCTION() 963 soft_thread->num_vacant_freecells; in DECLARE_MOVE_FUNCTION() 1095 soft_thread->num_vacant_freecells; in DECLARE_MOVE_FUNCTION() 1150 if (soft_thread->num_vacant_stacks == 0) in DECLARE_MOVE_FUNCTION() 1239 soft_thread->num_vacant_freecells; in DECLARE_MOVE_FUNCTION() [all …]
|
H A D | scans.h | 42 fcs_soft_thread *const soft_thread GCC_UNUSED, in fc_solve__calc_positions_by_rank_data() 47 var_AUTO(instance, fcs_st_instance(soft_thread)); in fc_solve__calc_positions_by_rank_data() 126 fcs_soft_thread *const soft_thread) in fc_solve_calc_positions_by_rank_location() argument 128 if (soft_thread->super_method_type == FCS_SUPER_METHOD_DFS) in fc_solve_calc_positions_by_rank_location() 130 return (DFS_VAR(soft_thread, soft_dfs_info)[DFS_VAR(soft_thread, depth)] in fc_solve_calc_positions_by_rank_location() 135 return (BEFS_M_VAR(soft_thread, befs_positions_by_rank)); in fc_solve_calc_positions_by_rank_location()
|
H A D | scans_impl.h | 50 fcs_soft_thread *const soft_thread, fcs_state_weighting *const weighting) in fc_solve_initialize_befs_rater() argument 66 fcs_hard_thread *const hard_thread = soft_thread->hard_thread; in fc_solve_initialize_befs_rater() 175 const fcs_soft_thread *const soft_thread, in befs_rate_state() argument 179 const_AUTO(instance, fcs_st_instance(soft_thread)); in befs_rate_state()
|
H A D | preset.c | 207 soft_thread->by_depth_moves_order.by_depth_moves; in fc_solve_apply_preset_by_ptr() 210 depth_idx < soft_thread->by_depth_moves_order.num; in fc_solve_apply_preset_by_ptr()
|
H A D | meta_move_funcs_helpers.h | 58 fc_solve_sfs_check_state_end(soft_thread, \ 126 fcs_hard_thread *const hard_thread = soft_thread->hard_thread; \
|
H A D | zerofc_freecell_moves.h | 56 if (soft_thread->num_vacant_stacks == 0) in DECLARE_MOVE_FUNCTION()
|
H A D | simpsim.c | 80 const fcs_game_limit num_vacant_stacks = soft_thread->num_vacant_stacks 85 soft_thread)
|
H A D | NEWS.asciidoc | 1019 - The soft_thread structure now uses a union.
|