Subversion Repositories Kolibri OS

Rev

Rev 8793 | Rev 9772 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. /* Copyright (C) 1999 DJ Delorie, see COPYING.DJ for details */
  2. /* Copyright (C) 1998 DJ Delorie, see COPYING.DJ for details */
  3. /* Copyright (C) 1995 DJ Delorie, see COPYING.DJ for details */
  4. #ifndef _MATH_H_
  5. #define _MATH_H_
  6.  
  7. #include <stddef.h>
  8.  
  9. extern double _FUNC(acos)(double _x);
  10. extern double _FUNC(asin)(double _x);
  11. extern double _FUNC(atan)(double _x);
  12. extern double _FUNC(atan2)(double _y, double _x);
  13. extern double _FUNC(ceil)(double _x);
  14. extern double _FUNC(cos)(double _x);
  15. extern double _FUNC(cosh)(double _x);
  16. extern double _FUNC(exp)(double _x);
  17. extern double _FUNC(fabs)(double _x);
  18. extern double _FUNC(floor)(double _x);
  19. extern double _FUNC(fmod)(double _x, double _y);
  20. extern double _FUNC(frexp)(double _x, int* _pexp);
  21. extern double _FUNC(ldexp)(double _x, int _exp);
  22. extern double _FUNC(log)(double _y);
  23. extern double _FUNC(log10)(double _x);
  24. extern double _FUNC(modf)(double _x, double* _pint);
  25. extern double _FUNC(pow)(double _x, double _y);
  26. extern double _FUNC(sin)(double _x);
  27. extern double _FUNC(sinh)(double _x);
  28. extern double _FUNC(sqrt)(double _x);
  29. extern double _FUNC(tan)(double _x);
  30. extern double _FUNC(tanh)(double _x);
  31. extern double _FUNC(acosh)(double);
  32. extern double _FUNC(asinh)(double);
  33. extern double _FUNC(atanh)(double);
  34. extern double _FUNC(hypot)(double, double);
  35. extern long double _FUNC(modfl)(long double _x, long double* _pint);
  36. extern double _FUNC(pow10)(double _x);
  37. extern double _FUNC(pow2)(double _x);
  38.  
  39. #define M_E        2.7182818284590452354
  40. #define M_LOG2E    1.4426950408889634074
  41. #define M_LOG10E   0.43429448190325182765
  42. #define M_LN2      0.69314718055994530942
  43. #define M_LN10     2.30258509299404568402
  44. #define M_PI       3.14159265358979323846
  45. #define M_PI_2     1.57079632679489661923
  46. #define M_PI_4     0.78539816339744830962
  47. #define M_1_PI     0.31830988618379067154
  48. #define M_2_PI     0.63661977236758134308
  49. #define M_2_SQRTPI 1.12837916709551257390
  50. #define M_SQRT2    1.41421356237309504880
  51. #define M_SQRT1_2  0.70710678118654752440
  52. #define PI         M_PI
  53. #define PI2        M_PI_2
  54.  
  55. struct exception {
  56.     int type;
  57.     const char* name;
  58.     double arg1;
  59.     double arg2;
  60.     double retval;
  61.     int err;
  62. };
  63.  
  64. #endif /* _MATH_H_ */