diff options
Diffstat (limited to 'TODO/2.1.md')
| -rw-r--r-- | TODO/2.1.md | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/TODO/2.1.md b/TODO/2.1.md index e35016a..6cdd946 100644 --- a/TODO/2.1.md +++ b/TODO/2.1.md | |||
| @@ -2,9 +2,22 @@ | |||
| 2 | 2 | ||
| 3 | ## Rework solver | 3 | ## Rework solver |
| 4 | 4 | ||
| 5 | * Split solve in solve_coord, solve_generic (and maybe solve_singlethread, see | 5 | ### Architecture |
| 6 | notes about build options). | 6 | |
| 7 | * Add a void * extradata to DfsArg. | 7 | * Nail down the theory first |
| 8 | * One generic solve module that does not depend on anything else, | ||
| 9 | not even on cube if possible | ||
| 10 | * The generic file includes the logic for branching and calls functions | ||
| 11 | provided as parameters to move the cube and check the status etc... | ||
| 12 | * This includes the logic for single/multithreading (simplify if compiled | ||
| 13 | with N_THREADS = 1 or whatever this option is going to be) | ||
| 14 | * The data representing the cube is a void pointer | ||
| 15 | * Move two-step solve to a different module | ||
| 16 | * Each other solver (solve coord, solve fst, solve multistep) | ||
| 17 | should go in a separate module | ||
| 18 | |||
| 19 | ### Other practicalities | ||
| 20 | |||
| 8 | * remove cube from dfsarg? (i still need to save the scramble somewhere, | 21 | * remove cube from dfsarg? (i still need to save the scramble somewhere, |
| 9 | but I really only use it in dfs_niss) | 22 | but I really only use it in dfs_niss) |
| 10 | * Re-work prepare_step process for solve_generic (nxopt table is special). | 23 | * Re-work prepare_step process for solve_generic (nxopt table is special). |
