1 #ifndef BARVINOK_OPTIONS_H
2 #define BARVINOK_OPTIONS_H
6 #if defined(__cplusplus)
10 struct barvinok_stats
{
14 void barvinok_stats_clear(struct barvinok_stats
*stats
);
15 void barvinok_stats_print(struct barvinok_stats
*stats
, FILE *out
);
17 struct barvinok_options
{
22 /* LLL reduction parameter delta=LLL_a/LLL_b */
26 /* barvinok options */
32 #define BV_SPECIALIZATION_BF 2
33 #define BV_SPECIALIZATION_DF 1
34 #define BV_SPECIALIZATION_RANDOM 0
35 int incremental_specialization
;
37 unsigned long max_index
;
40 int count_sample_infinite
;
42 #define BV_POLAPPROX_NONE 0
43 #define BV_POLAPPROX_PRE_LOWER 1
44 #define BV_POLAPPROX_PRE_UPPER 2
45 #define BV_POLAPPROX_PRE_APPROX 3
46 #define BV_POLAPPROX_LOWER 4
47 #define BV_POLAPPROX_UPPER 5
48 int polynomial_approximation
;
50 /* basis reduction options */
56 struct barvinok_stats
*stats
;
59 struct barvinok_options
*barvinok_options_new_with_defaults();
60 void barvinok_options_free(struct barvinok_options
*options
);
62 #define BV_OPT_SPECIALIZATION 256
63 #define BV_OPT_PRIMAL 257
64 #define BV_OPT_TABLE 258
65 #define BV_OPT_GBR 259
66 #define BV_OPT_MAXINDEX 260
67 #define BV_OPT_POLAPPROX 261
68 #define BV_OPT_LAST 261
71 extern struct argp barvinok_argp
;
73 #if defined(__cplusplus)