Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

68 lines
2.0 KiB

  1. /* ymath.h internal header */
  2. #pragma once
  3. #ifndef _YMATH
  4. #define _YMATH
  5. #include <yvals.h>
  6. _C_STD_BEGIN
  7. _C_LIB_DECL
  8. /* MACROS FOR _Dtest RETURN (0 => ZERO) */
  9. #define _DENORM (-2) /* C9X only */
  10. #define _FINITE (-1)
  11. #define _INFCODE 1
  12. #define _NANCODE 2
  13. /* MACROS FOR _Feraise ARGUMENT */
  14. #define _FE_DIVBYZERO 0x04
  15. #define _FE_INEXACT 0x20
  16. #define _FE_INVALID 0x01
  17. #define _FE_OVERFLOW 0x08
  18. #define _FE_UNDERFLOW 0x10
  19. /* TYPE DEFINITIONS */
  20. typedef union
  21. { /* pun float types as integer array */
  22. unsigned short _Word[8];
  23. float _Float;
  24. double _Double;
  25. long double _Long_double;
  26. } _Dconst;
  27. /* ERROR REPORTING */
  28. void __cdecl _Feraise(int);
  29. /* double DECLARATIONS */
  30. _CRTIMP2 double __cdecl _Cosh(double, double);
  31. _CRTIMP2 short __cdecl _Dtest(double *);
  32. _CRTIMP2 short __cdecl _Exp(double *, double, short);
  33. _CRTIMP2 double __cdecl _Log(double, int);
  34. _CRTIMP2 double __cdecl _Sin(double, unsigned int);
  35. _CRTIMP2 double __cdecl _Sinh(double, double);
  36. extern _CRTIMP2 const _Dconst _Denorm, _Hugeval, _Inf,
  37. _Nan, _Snan;
  38. /* float DECLARATIONS */
  39. _CRTIMP2 float __cdecl _FCosh(float, float);
  40. _CRTIMP2 short __cdecl _FDtest(float *);
  41. _CRTIMP2 short __cdecl _FExp(float *, float, short);
  42. _CRTIMP2 float __cdecl _FLog(float, int);
  43. _CRTIMP2 float __cdecl _FSin(float, unsigned int);
  44. _CRTIMP2 float __cdecl _FSinh(float, float);
  45. extern _CRTIMP2 const _Dconst _FDenorm, _FInf, _FNan, _FSnan;
  46. /* long double DECLARATIONS */
  47. _CRTIMP2 long double __cdecl _LCosh(long double, long double);
  48. _CRTIMP2 short __cdecl _LDtest(long double *);
  49. _CRTIMP2 short __cdecl _LExp(long double *, long double, short);
  50. _CRTIMP2 long double __cdecl _LLog(long double, int);
  51. _CRTIMP2 long double __cdecl _LSin(long double, unsigned int);
  52. _CRTIMP2 long double __cdecl _LSinh(long double, long double);
  53. _CRTIMP2 extern const _Dconst _LDenorm, _LInf, _LNan, _LSnan;
  54. _END_C_LIB_DECL
  55. _C_STD_END
  56. #endif /* _YMATH */
  57. /*
  58. * Copyright (c) 1992-2001 by P.J. Plauger. ALL RIGHTS RESERVED.
  59. * Consult your license regarding permissions and restrictions.
  60. V3.10:0009 */