diff options
| -rw-r--r-- | src/solvers/coord/types_macros.h | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/src/solvers/coord/types_macros.h b/src/solvers/coord/types_macros.h index 72ca511..a2eaefe 100644 --- a/src/solvers/coord/types_macros.h +++ b/src/solvers/coord/types_macros.h | |||
| @@ -15,17 +15,6 @@ | |||
| 15 | #define COORD_ISNASTY(d) (((d) & COORD_ISNASTY_MASK) >> COORD_ISNASTY_SHIFT) | 15 | #define COORD_ISNASTY(d) (((d) & COORD_ISNASTY_MASK) >> COORD_ISNASTY_SHIFT) |
| 16 | 16 | ||
| 17 | typedef struct { | 17 | typedef struct { |
| 18 | size_t classes; | ||
| 19 | uint64_t max; | ||
| 20 | uint64_t (*coord)(cube_t); | ||
| 21 | cube_t (*cube)(uint64_t); | ||
| 22 | uint64_t max2; | ||
| 23 | uint64_t (*coord2)(cube_t); | ||
| 24 | cube_t (*cube2)(uint64_t); | ||
| 25 | cube_t (*merge)(cube_t, cube_t); | ||
| 26 | } symcoord_t; | ||
| 27 | |||
| 28 | typedef struct { | ||
| 29 | const char name[255]; | 18 | const char name[255]; |
| 30 | uint64_t (*coord)(cube_t, const void *); | 19 | uint64_t (*coord)(cube_t, const void *); |
| 31 | cube_t (*cube)(uint64_t, const void *); | 20 | cube_t (*cube)(uint64_t, const void *); |
| @@ -36,5 +25,14 @@ typedef struct { | |||
| 36 | uint64_t trans_mask; | 25 | uint64_t trans_mask; |
| 37 | uint8_t axistrans[3]; | 26 | uint8_t axistrans[3]; |
| 38 | bool (*is_admissible)(const solution_moves_t[static 1]); | 27 | bool (*is_admissible)(const solution_moves_t[static 1]); |
| 39 | symcoord_t sym; | 28 | struct { |
| 29 | size_t classes; | ||
| 30 | uint64_t max; | ||
| 31 | uint64_t (*coord)(cube_t); | ||
| 32 | cube_t (*cube)(uint64_t); | ||
| 33 | uint64_t max2; | ||
| 34 | uint64_t (*coord2)(cube_t); | ||
| 35 | cube_t (*cube2)(uint64_t); | ||
| 36 | cube_t (*merge)(cube_t, cube_t); | ||
| 37 | } sym; | ||
| 40 | } coord_t; | 38 | } coord_t; |
