/*
* Copyright 2008-2009 Katholieke Universiteit Leuven
*
- * Use of this software is governed by the GNU LGPLv2.1 license
+ * Use of this software is governed by the MIT license
*
* Written by Sven Verdoolaege, K.U.Leuven, Departement
* Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
#define ISL_OPTIONS_H
#include <isl/arg.h>
+#include <isl/ctx.h>
#if defined(__cplusplus)
extern "C" {
#endif
-struct isl_options {
- #define ISL_LP_TAB 0
- #define ISL_LP_PIP 1
- unsigned lp_solver;
+struct isl_options;
- #define ISL_ILP_GBR 0
- #define ISL_ILP_PIP 1
- unsigned ilp_solver;
+ISL_ARG_DECL(isl_options, struct isl_options, isl_options_args)
- #define ISL_PIP_TAB 0
- #define ISL_PIP_PIP 1
- unsigned pip;
+#define ISL_BOUND_BERNSTEIN 0
+#define ISL_BOUND_RANGE 1
+int isl_options_set_bound(isl_ctx *ctx, int val);
+int isl_options_get_bound(isl_ctx *ctx);
- #define ISL_CONTEXT_GBR 0
- #define ISL_CONTEXT_LEXMIN 1
- unsigned context;
+#define ISL_ON_ERROR_WARN 0
+#define ISL_ON_ERROR_CONTINUE 1
+#define ISL_ON_ERROR_ABORT 2
+int isl_options_set_on_error(isl_ctx *ctx, int val);
+int isl_options_get_on_error(isl_ctx *ctx);
- #define ISL_GBR_NEVER 0
- #define ISL_GBR_ONCE 1
- #define ISL_GBR_ALWAYS 2
- unsigned gbr;
- unsigned gbr_only_first;
+int isl_options_set_gbr_only_first(isl_ctx *ctx, int val);
+int isl_options_get_gbr_only_first(isl_ctx *ctx);
- #define ISL_CLOSURE_ISL 0
- #define ISL_CLOSURE_BOX 1
- unsigned closure;
+#define ISL_SCHEDULE_ALGORITHM_ISL 0
+#define ISL_SCHEDULE_ALGORITHM_FEAUTRIER 1
+int isl_options_set_schedule_algorithm(isl_ctx *ctx, int val);
+int isl_options_get_schedule_algorithm(isl_ctx *ctx);
- #define ISL_BOUND_BERNSTEIN 0
- #define ISL_BOUND_RANGE 1
- int bound;
-
- #define ISL_BERNSTEIN_FACTORS 1
- #define ISL_BERNSTEIN_INTERVALS 2
- int bernstein_recurse;
-
- int bernstein_triangulate;
-
- int pip_symmetry;
-
- #define ISL_CONVEX_HULL_WRAP 0
- #define ISL_CONVEX_HULL_FM 1
- int convex;
-};
-
-ISL_ARG_DECL(isl_options, struct isl_options, isl_options_arg)
-
-extern struct isl_arg isl_options_arg[];
+int isl_options_set_coalesce_bounded_wrapping(isl_ctx *ctx, int val);
+int isl_options_get_coalesce_bounded_wrapping(isl_ctx *ctx);
#if defined(__cplusplus)
}