/* file generated by oo2c -- do not edit */
#ifndef _MODULE_Reals_
#define _MODULE_Reals_

#define Reals__maxDigits 500
#define Reals__outDigits 56
#define Reals__log10eps -490
#define Reals__maxMant 70
#define Reals__maxExp 2000000
typedef float* Reals__RealDesc;
typedef Reals__RealDesc Reals__Real;
extern short int Reals__err;
extern short int Reals__curMant;
extern short int Reals__debug;
extern short int Reals__sigDigs;
extern Reals__Real Reals__eps;
extern Reals__Real Reals__ln2;
extern Reals__Real Reals__pi;
extern Reals__Real Reals__ln10;
extern void Reals__copy(Reals__RealDesc a, int a_0d, Reals__RealDesc b, int b_0d);
extern void Reals__Round(Reals__RealDesc a, int a_0d);
extern void Reals__Normalize(double* d, int d_0d, Reals__RealDesc a, int a_0d);
extern void Reals__RealToNumbExp(Reals__RealDesc a, int a_0d, double *b, int *n);
extern void Reals__NumbExpToReal(double a, int n, Reals__RealDesc b, int b_0d);
extern void Reals__Add(Reals__RealDesc c, int c_0d, const Reals__RealDesc a__ref, int a_0d, const Reals__RealDesc b__ref, int b_0d);
extern void Reals__Sub(Reals__RealDesc c, int c_0d, const Reals__RealDesc a__ref, int a_0d, const Reals__RealDesc b__ref, int b_0d);
extern void Reals__Mul(Reals__RealDesc c, int c_0d, const Reals__RealDesc a__ref, int a_0d, const Reals__RealDesc b__ref, int b_0d);
extern void Reals__Muld(Reals__RealDesc c, int c_0d, const Reals__RealDesc a__ref, int a_0d, double b, int n);
extern void Reals__Div(Reals__RealDesc c, int c_0d, const Reals__RealDesc a__ref, int a_0d, const Reals__RealDesc b__ref, int b_0d);
extern void Reals__Divd(Reals__RealDesc c, int c_0d, const Reals__RealDesc a__ref, int a_0d, double b, int n);
extern void Reals__Abs(Reals__RealDesc z, int z_0d, const Reals__RealDesc x__ref, int x_0d);
extern void Reals__IntPower(Reals__RealDesc b, int b_0d, const Reals__RealDesc a__ref, int a_0d, int n);
extern int Reals__Cmp(Reals__RealDesc a, int a_0d, Reals__RealDesc b, int b_0d);
extern void Reals__Sqrt(Reals__RealDesc b, int b_0d, const Reals__RealDesc a__ref, int a_0d);
extern void Reals__Root(Reals__RealDesc b, int b_0d, const Reals__RealDesc a__ref, int a_0d, int n);
extern void Reals__Pi(Reals__RealDesc pi, int pi_0d);
extern void Reals__Entier(Reals__RealDesc b, int b_0d, const Reals__RealDesc a__ref, int a_0d);
extern void Reals__RoundInt(Reals__RealDesc b, int b_0d, const Reals__RealDesc a__ref, int a_0d);
extern void Reals__Exp(Reals__RealDesc b, int b_0d, const Reals__RealDesc a__ref, int a_0d);
extern void Reals__Ln(Reals__RealDesc b, int b_0d, const Reals__RealDesc a__ref, int a_0d);
extern void Reals__SinCos(Reals__RealDesc sin, int sin_0d, Reals__RealDesc cos, int cos_0d, const Reals__RealDesc a__ref, int a_0d);
extern void Reals__SinhCosh(Reals__RealDesc sinh, int sinh_0d, Reals__RealDesc cosh, int cosh_0d, const Reals__RealDesc a__ref, int a_0d);
extern void Reals__ATan2(Reals__RealDesc a, int a_0d, const Reals__RealDesc x__ref, int x_0d, const Reals__RealDesc y__ref, int y_0d);
extern Reals__Real Reals__Long(double x);
extern Reals__Real Reals__Copy(Reals__Real a);
extern Reals__Real Reals__ToReal(const unsigned char* str__ref, int str_0d);
extern void Reals__ToString(Reals__Real a, unsigned char* str, int str_0d, int n);
extern double Reals__short(Reals__Real q);
extern Reals__Real Reals__entier(Reals__Real q);
extern Reals__Real Reals__fraction(Reals__Real q);
extern Reals__Real Reals__add(Reals__Real z1, Reals__Real z2);
extern Reals__Real Reals__sub(Reals__Real z1, Reals__Real z2);
extern Reals__Real Reals__mul(Reals__Real z1, Reals__Real z2);
extern Reals__Real Reals__div(Reals__Real z1, Reals__Real z2);
extern Reals__Real Reals__abs(Reals__Real z);
extern int Reals__cmp(Reals__Real a, Reals__Real b);
extern Reals__Real Reals__power(Reals__Real x, Reals__Real exp);
extern Reals__Real Reals__root(Reals__Real z, int n);
extern Reals__Real Reals__sqrt(Reals__Real z);
extern Reals__Real Reals__exp(Reals__Real z);
extern Reals__Real Reals__ln(Reals__Real z);
extern Reals__Real Reals__log(Reals__Real z, Reals__Real base);
extern Reals__Real Reals__sin(Reals__Real z);
extern Reals__Real Reals__cos(Reals__Real z);
extern void Reals__sincos(Reals__Real z, Reals__Real *sin, Reals__Real *cos);
extern Reals__Real Reals__tan(Reals__Real z);
extern Reals__Real Reals__arcsin(Reals__Real z);
extern Reals__Real Reals__arccos(Reals__Real z);
extern Reals__Real Reals__arctan(Reals__Real z);
extern Reals__Real Reals__arctan2(Reals__Real xn, Reals__Real xd);
extern void Reals__sinhcosh(Reals__Real z, Reals__Real *sinh, Reals__Real *cosh);
extern Reals__Real Reals__sinh(Reals__Real z);
extern Reals__Real Reals__cosh(Reals__Real z);
extern Reals__Real Reals__tanh(Reals__Real z);
extern void Reals__SetWords(short int words);
extern void Reals_init(void);

#endif
