6 #include <barvinok/polylib.h>
8 #if defined(__cplusplus)
12 struct verify_options
{
16 int continue_on_error
;
21 /* "generated" options */
24 struct barvinok_options
*barvinok
;
27 ISL_ARG_DECL(verify_options
, struct verify_options
, verify_options_arg
)
29 void verify_options_set_range(struct verify_options
*options
, int dim
);
31 Polyhedron
*check_poly_context_scan(Polyhedron
*P
, Polyhedron
**C
,
33 const struct verify_options
*options
);
34 void check_poly_init(Polyhedron
*C
, struct verify_options
*options
);
35 void check_poly_print(int ok
, int nparam
, Value
*z
,
36 Value want_n
, Value want_d
,
37 Value got_n
, Value got_d
,
38 const char *op
, const char *check
,
40 const struct verify_options
*options
);
42 struct check_poly_data
;
43 typedef int (*check_poly_fun
)(const struct check_poly_data
*data
,
45 const struct verify_options
*options
);
46 struct check_poly_data
{
51 int check_poly(Polyhedron
*CS
, const struct check_poly_data
*data
,
52 int nparam
, int pos
, Value
*z
,
53 const struct verify_options
*options
);
55 struct check_EP_data
{
56 struct check_poly_data cp
;
63 int check_EP(struct check_EP_data
*data
, unsigned nvar
, unsigned nparam
,
64 struct verify_options
*options
);
65 void check_EP_set_scan(struct check_EP_data
*data
, Polyhedron
*C
,
67 void check_EP_clear_scan(struct check_EP_data
*data
);
69 __isl_give isl_set
*verify_context_set_bounds(__isl_take isl_set
*set
,
70 const struct verify_options
*options
);
72 struct verify_point_data
{
73 const struct verify_options
*options
;
79 int verify_point_data_init(struct verify_point_data
*vpd
,
80 __isl_keep isl_set
*context
);
81 void verify_point_data_fini(struct verify_point_data
*vpd
);
83 #if defined(__cplusplus)