1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
/*
DDS, a bridge double dummy solver.
Copyright (C) 2006-2014 by Bo Haglund /
2014-2018 by Bo Haglund & Soren Hein.
See LICENSE and README.
*/
/**
* @brief Perform common single-board calculations (legacy threading interface).
*
* Creates temporary context per call. Used by legacy threading infrastructure.
*
* @param thrID Thread identifier for parallel execution.
* @param bno Board number to analyze.
*/
auto void;
/**
* @brief Perform common single-board calculations with explicit solver context.
*
* Context-aware version that allows TT reuse across calculations.
* Internal helper function.
*
* @param ctx Solver context for resource management
* @param thrID Thread identifier for parallel execution.
* @param bno Board number to analyze.
*/
auto void;
/**
* @brief Calculate all boards with explicit solver context.
*
* Context-aware version enabling transposition table reuse.
*
* @param ctx Solver context for resource management
* @param bop Input boards to solve
* @param solvedp Output solved boards
* @return Error code
*/
auto int;
/**
* @brief Copy calculation results for single Boards based on cross-references.
*
* Copies results from previously computed Boards as indicated by the cross-reference vector.
*
* @param crossrefs Vector of cross-reference indices mapping Boards to be copied.
*/
auto void;
/**
* @brief Perform common chunk calculations for a set of Boards.
*
* Computes results for a chunk (batch) of Boards using the specified thread ID.
*
* @param thrId Thread identifier for parallel execution.
*/
auto void;
/**
* @brief Detect duplicate board calculations and build cross-reference maps.
*
* Identifies unique and duplicate Boards in a batch, populating vectors for unique indices and cross-references.
*
* @param bds Boards to analyze for duplicates.
* @param uniques Output vector of indices for unique Boards.
* @param crossrefs Output vector mapping each board to its unique representative.
*/
auto void;