home *** CD-ROM | disk | FTP | other *** search
- #ifndef _MATH_H
- #define _MATH_H
-
- #ifndef _COMPILER_H
- #include <compiler.h>
- #endif
-
- __EXTERN double atof __PROTO((const char *));
- __EXTERN double acosh __PROTO((double));
- __EXTERN double asinh __PROTO((double));
- __EXTERN double atanh __PROTO((double));
- __EXTERN double acos __PROTO((double));
- __EXTERN double asin __PROTO((double));
- __EXTERN double atan __PROTO((double));
- __EXTERN double atan2 __PROTO((double, double));
- __EXTERN double ceil __PROTO((double));
- __EXTERN double cos __PROTO((double));
- __EXTERN double cosh __PROTO((double));
- __EXTERN double exp __PROTO((double));
- __EXTERN double fabs __PROTO((double));
- __EXTERN double floor __PROTO((double));
- __EXTERN double fmod __PROTO((double, double));
- __EXTERN double frexp __PROTO((double, int *));
- __EXTERN double ldexp __PROTO((double, int));
- __EXTERN double log __PROTO((double));
- __EXTERN double log10 __PROTO((double));
- __EXTERN double modf __PROTO((double, double *));
- __EXTERN double pow __PROTO((double, double));
- __EXTERN double sin __PROTO((double));
- __EXTERN double sinh __PROTO((double));
- __EXTERN double sqrt __PROTO((double));
- __EXTERN double tan __PROTO((double));
- __EXTERN double tanh __PROTO((double));
-
- #ifndef __STRICT_ANSI__
- __EXTERN int finite __PROTO((double));
- __EXTERN double cbrt __PROTO((double));
- __EXTERN double copysign __PROTO((double, double));
- __EXTERN double drem __PROTO((double, double));
- __EXTERN double logb __PROTO((double));
- __EXTERN double scalb __PROTO((double, int));
- __EXTERN double rint __PROTO((double));
- __EXTERN double expm1 __PROTO((double));
- __EXTERN double log1p __PROTO((double));
- __EXTERN double hypot __PROTO((double, double));
- __EXTERN double cabs();
- #endif
-
- extern const double _infinitydf; /* in normdf.cpp */
- #define HUGE_VAL _infinitydf
-
- /* other compilers?? */
-
- #ifndef __STRICT_ANSI__
- #define HUGE HUGE_VAL
- #endif
-
- /* other stuff */
- #ifdef _M68881
- #include <fpu.h>
- #endif
-
- #ifndef __STRICT_ANSI__
- #if __GNUC__
- #ifndef max
- #define max(x,y) ({typeof(x) _x=(x); typeof(y) _y=(y); if (_x>_y) _y=_x; _y;})
- #define min(x,y) ({typeof(x) _x=(x); typeof(y) _y=(y); if (_x<_y) _y=_x; _y;})
- #endif
- #else
- /* these forms evaluate their args twice.. tough. */
- #ifndef max
- #define max(x,y) ((x) > (y) ? (x) : (y))
- #define min(x,y) ((x) < (y) ? (x) : (y))
- #endif
- #endif
-
- #endif /* __STRICT_ANSI__ */
-
- #endif /* _MATH_H
-