From 87a15e960e31365698df7e06cd3e6b851e17c1a5 Mon Sep 17 00:00:00 2001 From: Sebastiano Tronto Date: Sun, 5 Mar 2023 10:13:01 +0100 Subject: I made a mess, but it works. Still need to implement new optimal solver. After that, a big redesign is due. --- src/alg.h | 76 +++------------------------------------------------------------ 1 file changed, 3 insertions(+), 73 deletions(-) (limited to 'src/alg.h') diff --git a/src/alg.h b/src/alg.h index b65a55e..967cd92 100644 --- a/src/alg.h +++ b/src/alg.h @@ -8,21 +8,11 @@ #include "cubetypes.h" #include "utils.h" -bool allowed_all(Move m); -bool allowed_HTM(Move m); -bool allowed_URF(Move m); -bool allowed_eofb(Move m); -bool allowed_drud(Move m); -bool allowed_htr(Move m); -bool allowed_next_all(Move l2, Move l1, Move m); - -void moveset_to_list(Moveset ms, Move *lst); -void init_moveset(Moveset *ms); -bool possible_next(Move m, Moveset *ms, Move l0, Move l1); - void append_alg(AlgList *l, Alg *alg); void append_move(Alg *alg, Move m, bool inverse); Move base_move(Move m); +int compare(Move m1, Move m2); /* Return 1 (m1m2) */ +int compare_last(Alg *alg, Move m, bool inverse); void compose_alg(Alg *alg1, Alg *alg2); bool commute(Move m1, Move m2); void copy_alg(Alg *src, Alg *dst); @@ -36,70 +26,10 @@ AlgList * new_alglist(); Alg * on_inverse(Alg *alg); void print_alg(Alg *alg, bool l); void print_alglist(AlgList *al, bool l); +void remove_last_move(Alg *alg); void swapmove(Move *m1, Move *m2); char * trans_string(Trans t); /* Here because similar to move_string, move? */ Alg * unniss(Alg *alg); -/* Movesets ******************************************************************/ - -#ifndef ALG_C - -extern Moveset moveset_HTM; -extern Moveset moveset_URF; -extern Moveset moveset_eofb; -extern Moveset moveset_drud; -extern Moveset moveset_htr; - -extern Moveset * all_ms[]; - -#else - -Moveset -moveset_HTM = { - .name = "HTM", - .allowed = allowed_HTM, - .allowed_next = allowed_next_all, -}; - -Moveset -moveset_URF = { - .name = "URF", - .allowed = allowed_URF, - .allowed_next = allowed_next_all, -}; - -Moveset -moveset_eofb = { - .name = "eofb", - .allowed = allowed_eofb, - .allowed_next = allowed_next_all, -}; - -Moveset -moveset_drud = { - .name = "drud", - .allowed = allowed_drud, - .allowed_next = allowed_next_all, -}; - -Moveset -moveset_htr = { - .name = "htr", - .allowed = allowed_htr, - .allowed_next = allowed_next_all, -}; - -Moveset * -all_ms[] = { - &moveset_HTM, - &moveset_URF, - &moveset_eofb, - &moveset_drud, - &moveset_htr, - NULL -}; - -#endif - #endif -- cgit v1.3