4 #include <barvinok/isl.h>
5 #include <barvinok/evalue.h>
6 #include <barvinok/options.h>
8 #if defined(__cplusplus)
12 void barvinok_decompose(Polyhedron
*C
, Polyhedron
**ppos
, Polyhedron
**pneg
);
13 void barvinok_count(Polyhedron
*P
, Value
* result
, unsigned NbMaxCons
);
14 void barvinok_count_with_options(Polyhedron
*P
, Value
* result
,
15 struct barvinok_options
*options
);
16 Enumeration
* barvinok_enumerate(Polyhedron
*P
, Polyhedron
* C
, unsigned MaxRays
);
17 evalue
* barvinok_enumerate_ev(Polyhedron
*P
, Polyhedron
* C
, unsigned MaxRays
);
18 evalue
* barvinok_enumerate_with_options(Polyhedron
*P
, Polyhedron
* C
,
19 struct barvinok_options
*options
);
20 evalue
*Param_Polyhedron_Enumerate(Param_Polyhedron
*PP
, Polyhedron
*P
,
22 struct barvinok_options
*options
);
23 evalue
* barvinok_enumerate_e(Polyhedron
*P
,
24 unsigned exist
, unsigned nparam
, unsigned MaxRays
);
25 evalue
* barvinok_enumerate_e_with_options(Polyhedron
*P
,
26 unsigned exist
, unsigned nparam
, struct barvinok_options
*options
);
27 evalue
*barvinok_enumerate_isl(Polyhedron
*P
,
28 unsigned exist
, unsigned nparam
, struct barvinok_options
*options
);
29 evalue
*barvinok_enumerate_scarf(Polyhedron
*P
,
30 unsigned exist
, unsigned nparam
,
31 struct barvinok_options
*options
);
32 evalue
* barvinok_enumerate_union(Polyhedron
*D
, Polyhedron
* C
, unsigned MaxRays
);
34 evalue
*barvinok_summate(evalue
*e
, int nvar
, struct barvinok_options
*options
);
36 #if defined(__cplusplus)
40 #if defined(__cplusplus)
42 #include <barvinok/genfun.h>
44 void zz2value(const ZZ
& z
, Value
& v
);
45 gen_fun
* barvinok_series(Polyhedron
*P
, Polyhedron
* C
, unsigned MaxRays
);
46 gen_fun
* barvinok_series_with_options(Polyhedron
*P
, Polyhedron
* C
,
47 barvinok_options
*options
);
48 gen_fun
*barvinok_enumerate_series(Polyhedron
*P
, unsigned nparam
,
49 barvinok_options
*options
);
50 gen_fun
*barvinok_enumerate_scarf_series(Polyhedron
*P
,
51 unsigned exist
, unsigned nparam
,
52 barvinok_options
*options
);
53 gen_fun
*barvinok_enumerate_e_series(Polyhedron
*P
,
54 unsigned exist
, unsigned nparam
, barvinok_options
*options
);
55 gen_fun
* barvinok_enumerate_union_series(Polyhedron
*D
, Polyhedron
* C
,
57 gen_fun
* barvinok_enumerate_union_series_with_options(Polyhedron
*D
, Polyhedron
* C
,
58 barvinok_options
*options
);