doc: document polytope_sample
[barvinok.git] / barvinok / barvinok.h
blobb11b4565b4dbfbc194d177b26de99908617131d5
1 #ifndef BARVINOK_H
2 #define BARVINOK_H
4 #include <gmp.h>
6 #if defined(__cplusplus)
7 extern "C" {
8 #endif
10 #include <barvinok/options.h>
11 #include <barvinok/evalue.h>
13 void barvinok_decompose(Polyhedron *C, Polyhedron **ppos, Polyhedron **pneg);
14 void barvinok_count(Polyhedron *P, Value* result, unsigned NbMaxCons);
15 void barvinok_count_with_options(Polyhedron *P, Value* result,
16 struct barvinok_options *options);
17 Enumeration* barvinok_enumerate(Polyhedron *P, Polyhedron* C, unsigned MaxRays);
18 evalue* barvinok_enumerate_ev(Polyhedron *P, Polyhedron* C, unsigned MaxRays);
19 evalue* barvinok_enumerate_with_options(Polyhedron *P, Polyhedron* C,
20 struct barvinok_options *options);
21 evalue* barvinok_enumerate_e(Polyhedron *P,
22 unsigned exist, unsigned nparam, unsigned MaxRays);
23 evalue* barvinok_enumerate_e_with_options(Polyhedron *P,
24 unsigned exist, unsigned nparam, struct barvinok_options *options);
25 evalue *barvinok_enumerate_pip(Polyhedron *P,
26 unsigned exist, unsigned nparam, unsigned MaxRays);
27 evalue *barvinok_enumerate_scarf(Polyhedron *P,
28 unsigned exist, unsigned nparam,
29 struct barvinok_options *options);
30 evalue* barvinok_enumerate_union(Polyhedron *D, Polyhedron* C, unsigned MaxRays);
32 /* private function */
33 evalue* bv_ceil3(Value *coef, int len, Value d, Polyhedron *P);
35 #if defined(__cplusplus)
37 #endif
39 #if defined(__cplusplus)
41 #include <barvinok/genfun.h>
43 void zz2value(const ZZ& z, Value& v);
44 gen_fun * barvinok_series(Polyhedron *P, Polyhedron* C, unsigned MaxRays);
45 gen_fun * barvinok_series_with_options(Polyhedron *P, Polyhedron* C,
46 barvinok_options *options);
47 gen_fun *barvinok_enumerate_scarf_series(Polyhedron *P,
48 unsigned exist, unsigned nparam,
49 barvinok_options *options);
50 gen_fun* barvinok_enumerate_union_series(Polyhedron *D, Polyhedron* C,
51 unsigned MaxRays);
52 gen_fun* barvinok_enumerate_union_series_with_options(Polyhedron *D, Polyhedron* C,
53 barvinok_options *options);
55 #endif
57 #endif