1 /* 2 * Copyright 2008-2009 Katholieke Universiteit Leuven 3 * 4 * Use of this software is governed by the MIT license 5 * 6 * Written by Sven Verdoolaege, K.U.Leuven, Departement 7 * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium 8 */ 9 10 #ifndef ISL_LP_H 11 #define ISL_LP_H 12 13 #include <isl/int.h> 14 #include <isl/vec.h> 15 #include <isl/map_type.h> 16 #include <isl/set_type.h> 17 18 enum isl_lp_result { 19 isl_lp_error = -1, 20 isl_lp_ok = 0, 21 isl_lp_unbounded, 22 isl_lp_empty 23 }; 24 25 #if defined(__cplusplus) 26 extern "C" { 27 #endif 28 29 enum isl_lp_result isl_basic_map_solve_lp(struct isl_basic_map *bmap, int max, 30 isl_int *f, isl_int denom, isl_int *opt, 31 isl_int *opt_denom, 32 struct isl_vec **sol); 33 enum isl_lp_result isl_basic_set_solve_lp(struct isl_basic_set *bset, int max, 34 isl_int *f, isl_int denom, isl_int *opt, 35 isl_int *opt_denom, 36 struct isl_vec **sol); 37 enum isl_lp_result isl_map_solve_lp(__isl_keep isl_map *map, int max, 38 isl_int *f, isl_int denom, isl_int *opt, 39 isl_int *opt_denom, 40 struct isl_vec **sol); 41 enum isl_lp_result isl_set_solve_lp(__isl_keep isl_set *set, int max, 42 isl_int *f, isl_int denom, isl_int *opt, 43 isl_int *opt_denom, 44 struct isl_vec **sol); 45 46 #if defined(__cplusplus) 47 } 48 #endif 49 50 #endif 51