2
config.h - Configuration file for Freecell Solver
4
Written by Shlomi Fish, 2000
6
This file is distributed under the public domain.
7
(It is not copyrighted).
10
#ifndef FC_SOLVE__CONFIG_H
11
#define FC_SOLVE__CONFIG_H
17
/* #undef DEBUG_STATES */
18
/* #undef COMPACT_STATES */
19
#define INDIRECT_STACK_STATES
21
/* #undef CARD_DEBUG_PRES */
24
* Define this macro if the C compiler supports the keyword inline or
25
* a similar keyword that was found by Autoconf (and defined as inline).
27
/* #undef HAVE_C_INLINE */
31
The sort margin size for the previous states array.
33
#define PREV_STATES_SORT_MARGIN 32
35
The amount prev_states grow by each time it each resized.
36
Should be greater than 0 and in order for the program to be
37
efficient, should be much bigger than
38
PREV_STATES_SORT_MARGIN.
40
#define PREV_STATES_GROW_BY 128
43
The amount the pack pointers array grows by. Shouldn't be too high
44
because it doesn't happen too often.
46
#define IA_STATE_PACKS_GROW_BY 32
48
/* #undef FCS_FREECELL_ONLY */
51
* The maximal number of Freecells. For efficiency's sake it should be a
55
#ifdef FCS_FREECELL_ONLY
56
#define HARD_CODED_NUM_FREECELLS 4
57
#define HARD_CODED_NUM_STACKS 8
58
#define HARD_CODED_NUM_DECKS 1
61
#ifdef HARD_CODED_NUM_FREECELLS
62
#define MAX_NUM_FREECELLS HARD_CODED_NUM_FREECELLS
64
#define MAX_NUM_FREECELLS 8
68
* The maximal number of Stacks. For efficiency's sake it should be a
72
#ifdef HARD_CODED_NUM_STACKS
73
#define MAX_NUM_STACKS HARD_CODED_NUM_STACKS
75
#define MAX_NUM_STACKS 10
78
* The maximal number of initial cards that can be found in a stack.
80
#define MAX_NUM_INITIAL_CARDS_IN_A_STACK 8
82
#ifdef HARD_CODED_NUM_DECKS
83
#define MAX_NUM_DECKS HARD_CODED_NUM_DECKS
85
#define MAX_NUM_DECKS 2
89
#define FCS_STATE_STORAGE_INDIRECT 0
90
#define FCS_STATE_STORAGE_INTERNAL_HASH 1
91
#define FCS_STATE_STORAGE_LIBAVL_AVL_TREE 2
92
#define FCS_STATE_STORAGE_LIBAVL_REDBLACK_TREE 3
93
#define FCS_STATE_STORAGE_LIBREDBLACK_TREE 4
94
#define FCS_STATE_STORAGE_GLIB_TREE 5
95
#define FCS_STATE_STORAGE_GLIB_HASH 6
96
#define FCS_STATE_STORAGE_DB_FILE 7
97
#define FCS_STATE_STORAGE_JUDY 8
99
#define FCS_STACK_STORAGE_INTERNAL_HASH 0
100
#define FCS_STACK_STORAGE_LIBAVL_AVL_TREE 1
101
#define FCS_STACK_STORAGE_LIBAVL_REDBLACK_TREE 2
102
#define FCS_STACK_STORAGE_LIBREDBLACK_TREE 3
103
#define FCS_STACK_STORAGE_GLIB_TREE 4
104
#define FCS_STACK_STORAGE_GLIB_HASH 5
105
#define FCS_STACK_STORAGE_JUDY 6
107
#define FCS_STATE_STORAGE FCS_STATE_STORAGE_INTERNAL_HASH
108
#define FCS_STACK_STORAGE FCS_STACK_STORAGE_INTERNAL_HASH
116
/* Define to 1 if you have the `avl' library (-lavl). */
119
/* Define to 1 if you have the `glib' library (-lglib). */
122
/* Define to 1 if you have the `m' library (-lm). */
123
/* #undef HAVE_LIBM */
125
/* Define to 1 if you have the `redblack' library (-lredblack). */
126
#undef HAVE_LIBREDBLACK
128
/* Name of package */
131
/* Define to the address where bug reports for this package should be sent. */
132
#define PACKAGE_BUGREPORT ""
134
/* Define to the full name of this package. */
135
#define PACKAGE_NAME ""
137
/* Define to the full name and version of this package. */
138
#define PACKAGE_STRING ""
140
/* Define to the one symbol short name of this package. */
141
#define PACKAGE_TARNAME ""
143
/* Define to the version of this package. */
144
#define PACKAGE_VERSION ""
146
/* Version number of package */
147
#define VERSION "2.20.0"
149
/* Define to `__inline__' or `__inline' if that's what the C compiler
150
calls it, or to nothing if 'inline' is not supported under any name. */