00001
00002 #ifndef _ehrhart_H_
00003 #define _ehrhart_H_
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef ALL_OVERFLOW_WARNINGS
00014 extern int overflow_warning_flag;
00015 #endif
00016
00017
00018 #if __STDC__
00019
00020 extern void count_points ( int pos, Polyhedron *P, Value *context, Value *res );
00021 extern void eadd ( evalue *e1, evalue *res );
00022 extern enode *ecopy ( enode *e );
00023 extern void edot ( enode *v1, enode *v2, evalue *res );
00024 extern enode *new_enode( enode_type type,int size, int pos );
00025 extern void free_evalue_refs ( evalue *e );
00026 extern Enumeration *Polyhedron_Enumerate ( Polyhedron *P, Polyhedron *C,
00027 unsigned MAXRAYS, char **pname );
00028 extern void print_enode ( FILE *DST, enode *p, char **pname );
00029 extern void print_evalue ( FILE *DST, evalue *e, char **pname );
00030 extern void reduce_evalue (evalue *e);
00031 extern void Enumeration_Free(Enumeration *en);
00032
00033 #else
00034
00035 extern void count_points ();
00036 extern void eadd ();
00037 extern enode *ecopy ();
00038 extern void edot ();
00039 extern enode *new_enode( );
00040 extern void free_evalue_refs ();
00041 extern Enumeration *Polyhedron_Enumerate (
00042 );
00043 extern void print_enode ();
00044 extern void print_evalue ();
00045 extern void reduce_evalue ();
00046 extern void Enumeration_Free();
00047
00048 #endif
00049 #endif