00001 #ifndef _polyparam_H_
00002 #define _polyparam_H_
00003
00004 #if defined(__cplusplus)
00005 extern "C" {
00006 #endif
00007
00008 extern void Compute_PDomains ( Param_Domain *PD, int nb_domains, int
00009 working_space );
00010 extern Param_Polyhedron *GenParamPolyhedron(Polyhedron *Pol, Matrix *Rays);
00011 extern void Param_Domain_Free (Param_Domain *PD);
00012 extern void Param_Polyhedron_Free ( Param_Polyhedron *P );
00013 extern void Param_Vertices_Free ( Param_Vertices *PV );
00014 extern void Param_Vertices_Print(FILE *DST, Param_Vertices *PV,
00015 const char **param_names);
00016 extern Polyhedron *PDomainDifference ( Polyhedron *Pol1, Polyhedron
00017 *Pol2, unsigned NbMaxRays );
00018 extern Polyhedron *PDomainIntersection ( Polyhedron *Pol1, Polyhedron
00019 *Pol2, unsigned NbMaxRays );
00020 extern Param_Polyhedron *Polyhedron2Param_Domain ( Polyhedron *Din,
00021 Polyhedron *Cin, int
00022 working_space );
00023 extern Param_Polyhedron *Polyhedron2Param_SimplifiedDomain (
00024 Polyhedron **Din, Polyhedron *Cin, int working_space,
00025 Polyhedron **CEq, Matrix **CT );
00026 extern Param_Polyhedron *Polyhedron2Param_Vertices ( Polyhedron *Din,
00027 Polyhedron *Cin, int
00028 working_space );
00029 extern void Print_Domain(FILE *DST, Polyhedron *D, const char **param_names);
00030 extern void Print_Vertex(FILE *DST, Matrix *V, const char **param_names);
00031 extern Matrix *VertexCT( Matrix *V, Matrix *CT );
00032 void Param_Polyhedron_Scale_Integer(Param_Polyhedron *PP, Polyhedron **P,
00033 Value *det, unsigned MaxRays);
00034
00035 #if defined(__cplusplus)
00036 }
00037 #endif
00038
00039 #endif