1 /* emacs edit mode for this file is -*- C++ -*- */
2 
3 /**
4  * @file singext.h
5  *
6  * helper functions for conversion to and from Singular
7 **/
8 #ifndef INCL_SINGEXT_H
9 #define INCL_SINGEXT_H
10 
11 // #include "config.h"
12 
13 #include "canonicalform.h"
14 #include "factory/cf_gmp.h"
15 
16 #ifdef SINGULAR
17 #include "resources/feFopen.h"
18 #endif
19 
20 //TODO make these functions members of CanonicalForm?
21 /*BEGINPUBLIC*/
22 
23 void FACTORY_PUBLIC gmp_numerator ( const CanonicalForm & f, mpz_ptr result );
24 
25 void FACTORY_PUBLIC gmp_denominator ( const CanonicalForm & f, mpz_ptr result );
26 
27 int gf_value (const CanonicalForm & f );
28 
29 CanonicalForm FACTORY_PUBLIC make_cf ( const mpz_ptr n );
30 
31 CanonicalForm FACTORY_PUBLIC make_cf ( const mpz_ptr n, const mpz_ptr d, bool normalize );
32 
33 CanonicalForm make_cf_from_gf ( const int z );
34 
35 /*ENDPUBLIC*/
36 
37 #endif /* ! INCL_SINGEXT_H */
38