ReactOS 0.4.16-dev-975-g3b8cfa4
math.h
Go to the documentation of this file.
1
4#ifndef _INC_MATH
5#define _INC_MATH
6
7#include <corecrt.h>
8
9#pragma pack(push,_CRT_PACKING)
10
11#ifdef __cplusplus
12extern "C" {
13#endif
14
15typedef float float_t;
16typedef double double_t;
17
18#ifndef _EXCEPTION_DEFINED
19#define _EXCEPTION_DEFINED
20 struct _exception {
21 int type;
22 char *name;
23 double arg1;
24 double arg2;
25 double retval;
26 };
27#endif
28
29#ifndef _COMPLEX_DEFINED
30#define _COMPLEX_DEFINED
31 struct _complex {
32 double x,y;
33 };
34#if !__STDC__ && !defined(__cplusplus)
35#define complex _complex
36#endif /* __STDC__ */
37#endif /* _COMPLEX_DEFINED */
38
39#define _DOMAIN 1
40#define _SING 2
41#define _OVERFLOW 3
42#define _UNDERFLOW 4
43#define _TLOSS 5
44#define _PLOSS 6
45
46#define EDOM 33
47#define ERANGE 34
48
49 _CRTIMP extern double const _HUGE;
50
51#define HUGE_VAL _HUGE
52
53#ifndef _HUGE_ENUF
54#define _HUGE_ENUF 1e+300
55#endif
56#define INFINITY ((float)(_HUGE_ENUF * _HUGE_ENUF))
57#define HUGE_VALD ((double)INFINITY)
58#define HUGE_VALF ((float)INFINITY)
59#define HUGE_VALL ((long double)INFINITY)
60#ifndef _UCRT_NEGATIVE_NAN
61// This operation creates a negative NAN adding a - to make it positive
62#ifdef _MSC_VER
63#define NAN (-(float)(INFINITY * 0.0F))
64#else
65#define NAN (__builtin_nanf(""))
66#endif
67#else
68// Keep this for backwards compatibility
69#ifdef _MSC_VER
70#define NAN ((float)(INFINITY * 0.0F))
71#else
72#define NAN (-__builtin_nanf(""))
73#endif
74#endif
75
76#define _DENORM (-2)
77#define _FINITE (-1)
78#define _INFCODE 1
79#define _NANCODE 2
80
81#define FP_INFINITE _INFCODE
82#define FP_NAN _NANCODE
83#define FP_NORMAL _FINITE
84#define FP_SUBNORMAL _DENORM
85#define FP_ZERO 0
86
87#ifndef __cplusplus
88#define _matherrl _matherr
89#endif
90
91#ifndef _CRT_ABS_DEFINED
92#define _CRT_ABS_DEFINED
95_Check_return_ long long __cdecl llabs(_In_ long long x);
96#endif
97
101_Check_return_ double __cdecl atan2(_In_ double y, _In_ double x);
106_Check_return_ double __cdecl fmod(_In_ double x, _In_ double y);
109_Check_return_ double __cdecl pow(_In_ double x, double y);
115
116#if defined(_MSC_VER) && !defined(__clang__)
117/* Prevent the compiler from generating calls to _CIatan2 */
118#pragma function(atan2)
119#ifdef _M_AMD64
120/* Prevent the compiler from generating calls to __vdecl_xxx */
121#pragma function(cos,pow,sin,tan)
122#endif
123#endif
124
125#ifndef _CRT_MATHERR_DEFINED
126#define _CRT_MATHERR_DEFINED
128#endif
129
130#ifndef _CRT_ATOF_DEFINED
131#define _CRT_ATOF_DEFINED
134#endif /* _CRT_ATOF_DEFINED */
135
136#ifndef _SIGN_DEFINED
137#define _SIGN_DEFINED
140#endif
141
155_Check_return_ _CRTIMP double __cdecl modf(_In_ double x, _Out_ double *y);
156
157#if defined(__i386__) || defined(_M_IX86)
158_Check_return_ _CRTIMP int __cdecl _set_SSE2_enable(_In_ int flag);
159#endif
160
161#if defined(__x86_64) || defined(_M_AMD64)
162_Check_return_ _CRTIMP float __cdecl _nextafterf(_In_ float x, _In_ float y);
163_Check_return_ _CRTIMP int __cdecl _isnanf(_In_ float x);
164_Check_return_ _CRTIMP int __cdecl _fpclassf(_In_ float x);
165#if defined(_MSC_VER) && !defined(__clang__)
166/* Prevent the compiler from generating calls to __vdecl_floor2 */
167#pragma function(floor)
168#endif
169#endif
170
171#if defined(__x86_64) || defined(_M_AMD64) || \
172 defined(__arm__) || defined(_M_ARM) || \
173 defined(__arm64__) || defined(_M_ARM64)
176#endif /* _M_AMD64 || _M_ARM || _M_ARM64 */
177
178#if defined(__ia64__) || defined (_M_IA64)
179_Check_return_ _CRTIMP float __cdecl ldexpf(_In_ float x, _In_ int y);
180_Check_return_ _CRTIMP long double __cdecl tanl(_In_ long double x);
181#else
182_Check_return_ __CRT_INLINE float __CRTDECL ldexpf(_In_ float x, _In_ int y) { return (float)ldexp(x, y); }
183_Check_return_ __CRT_INLINE long double __CRTDECL tanl(_In_ long double x) { return (tan((double)x)); }
184#endif
185
186#if defined(_CRTBLD)
187_Check_return_ float __cdecl fabsf(_In_ float x);
188#elif defined(__ia64__) || defined(_M_IA64) || \
189 defined(__arm__) || defined(_M_ARM) || \
190 defined(__arm64__) || defined(_M_ARM64)
192#else
193_Check_return_ __CRT_INLINE float __CRTDECL fabsf(_In_ float x) { return ((float)fabs((double)x)); }
194#endif /* _M_IA64 || _M_ARM || _M_ARM64 */
195
197_Check_return_ float __cdecl _copysignf(_In_ float x, _In_ float y);
198_Check_return_ float __cdecl _hypotf(_In_ float x, _In_ float y);
199_Check_return_ float __cdecl acosf(_In_ float x);
200_Check_return_ float __cdecl asinf(_In_ float x);
201_Check_return_ float __cdecl atanf(_In_ float x);
202_Check_return_ float __cdecl atan2f(_In_ float x, _In_ float y);
203_Check_return_ float __cdecl ceilf(_In_ float x);
204_Check_return_ float __cdecl cosf(_In_ float x);
205_Check_return_ float __cdecl coshf(_In_ float x);
206_Check_return_ float __cdecl expf(_In_ float x);
207_Check_return_ float __cdecl floorf(_In_ float x);
208_Check_return_ float __cdecl fmodf(_In_ float x, _In_ float y);
209_Check_return_ float __cdecl logf(_In_ float x);
210_Check_return_ float __cdecl log10f(_In_ float x);
211_Check_return_ float __cdecl modff(_In_ float x, _Out_ float *y);
212_Check_return_ float __cdecl powf(_In_ float b, _In_ float e);
213_Check_return_ float __cdecl sinf(_In_ float x);
214_Check_return_ float __cdecl sinhf(_In_ float x);
215_Check_return_ float __cdecl sqrtf(_In_ float x);
216_Check_return_ float __cdecl tanf(_In_ float x);
217_Check_return_ float __cdecl tanhf(_In_ float x);
218
219#if defined(_MSC_VER) && !defined(__clang__)
220/* Make sure intrinsics don't get in our way */
221#if defined(_M_AMD64) || defined(_M_ARM) || defined(_M_ARM64)
222#pragma function(acosf,asinf,atanf,atan2f,ceilf,cosf,coshf,expf,floorf,fmodf,logf,log10f,powf,sinf,sinhf,sqrtf,tanf,tanhf)
223#endif /* defined(_M_AMD64) || defined(_M_ARM) || defined(_M_ARM64) */
224#if (_MSC_VER >= 1920)
225#pragma function(_hypotf)
226#endif
227#endif /* _MSC_VER */
228
229#if !defined(_CRTBLD)
230_Check_return_ __CRT_INLINE float _chgsignf(_In_ float x) { return (float)_chgsign((double)x); }
231_Check_return_ __CRT_INLINE float _copysignf(_In_ float x, _In_ float y) { return (float)_copysign((double)x, (double)y); }
232_Check_return_ __CRT_INLINE float _hypotf(_In_ float x, _In_ float y) { return (float)_hypot((double)x, (double)y); }
233_Check_return_ __CRT_INLINE float acosf(_In_ float x) { return (float)acos((double)x); }
234_Check_return_ __CRT_INLINE float asinf(_In_ float x) { return (float)asin((double)x); }
235_Check_return_ __CRT_INLINE float atanf(_In_ float x) { return (float)atan((double)x); }
236_Check_return_ __CRT_INLINE float atan2f(_In_ float x, _In_ float y) { return (float)atan2((double)x,(double)y); }
237_Check_return_ __CRT_INLINE float ceilf(_In_ float x) { return (float)ceil((double)x); }
238_Check_return_ __CRT_INLINE float cosf(_In_ float x) { return (float)cos((double)x); }
239_Check_return_ __CRT_INLINE float coshf(_In_ float x) { return (float)cosh((double)x); }
240_Check_return_ __CRT_INLINE float expf(_In_ float x) { return (float)exp((double)x); }
241_Check_return_ __CRT_INLINE float floorf(_In_ float x) { return (float)floor((double)x); }
242_Check_return_ __CRT_INLINE float fmodf(_In_ float x, _In_ float y) { return (float)fmod((double)x,(double)y); }
243_Check_return_ __CRT_INLINE float logf(_In_ float x) { return (float)log((double)x); }
244_Check_return_ __CRT_INLINE float log10f(_In_ float x) { return (float)log10((double)x); }
245_Check_return_ __CRT_INLINE float modff(_In_ float x, _Out_ float *y) { double _Di,_Df = modf((double)x,&_Di); *y = (float)_Di; return (float)_Df; }
246_Check_return_ __CRT_INLINE float powf(_In_ float x, _In_ float y) { return (float)pow((double)x,(double)y); }
247_Check_return_ __CRT_INLINE float sinf(_In_ float x) { return (float)sin((double)x); }
248_Check_return_ __CRT_INLINE float sinhf(_In_ float x) { return (float)sinh((double)x); }
249_Check_return_ __CRT_INLINE float sqrtf(_In_ float x) { return (float)sqrt((double)x); }
250_Check_return_ __CRT_INLINE float tanf(_In_ float x) { return (float)tan((double)x); }
251_Check_return_ __CRT_INLINE float tanhf(_In_ float x) { return (float)tanh((double)x); }
252#endif /* !defined(_CRTBLD) */
253
254_Check_return_ __CRT_INLINE double hypot(_In_ double x, _In_ double y) { return _hypot(x, y); }
255_Check_return_ __CRT_INLINE float hypotf(_In_ float x, _In_ float y) { return _hypotf(x, y); }
256_Check_return_ __CRT_INLINE float frexpf(_In_ float x, _Out_ int *y) { return ((float)frexp((double)x,y)); }
257
258/* long double equals double, so just use inline wrappers */
259_Check_return_ __CRT_INLINE long double acosl(_In_ long double x) { return (acos((double)x)); }
260_Check_return_ __CRT_INLINE long double asinl(_In_ long double x) { return (asin((double)x)); }
261_Check_return_ __CRT_INLINE long double atanl(_In_ long double x) { return (atan((double)x)); }
262_Check_return_ __CRT_INLINE long double atan2l(_In_ long double y, _In_ long double x) { return (atan2((double)y, (double)x)); }
263_Check_return_ __CRT_INLINE long double ceill(_In_ long double x) { return (ceil((double)x)); }
264_Check_return_ __CRT_INLINE long double cosl(_In_ long double x) { return (cos((double)x)); }
265_Check_return_ __CRT_INLINE long double coshl(_In_ long double x) { return (cosh((double)x)); }
266_Check_return_ __CRT_INLINE long double expl(_In_ long double x) { return (exp((double)x)); }
267_Check_return_ __CRT_INLINE long double fabsl(_In_ long double x) { return fabs((double)x); }
268_Check_return_ __CRT_INLINE long double floorl(_In_ long double x) { return (floor((double)x)); }
269_Check_return_ __CRT_INLINE long double fmodl(_In_ long double x, _In_ long double y) { return (fmod((double)x, (double)y)); }
270_Check_return_ __CRT_INLINE long double frexpl(_In_ long double x, _Out_ int *y) { return (frexp((double)x, y)); }
271_Check_return_ __CRT_INLINE long double hypotl(_In_ long double x, _In_ long double y) { return _hypot((double)x, (double)y); }
272_Check_return_ __CRT_INLINE long double logl(_In_ long double x) { return (log((double)x)); }
273_Check_return_ __CRT_INLINE long double log10l(_In_ long double x) { return (log10((double)x)); }
274_Check_return_ __CRT_INLINE long double powl(_In_ long double x, _In_ long double y) { return (pow((double)x, (double)y)); }
275_Check_return_ __CRT_INLINE long double sinl(_In_ long double x) { return (sin((double)x)); }
276_Check_return_ __CRT_INLINE long double sinhl(_In_ long double x) { return (sinh((double)x)); }
277_Check_return_ __CRT_INLINE long double sqrtl(_In_ long double x) { return (sqrt((double)x)); }
278_Check_return_ __CRT_INLINE long double tanhl(_In_ long double x) {return (tanh((double)x)); }
279_Check_return_ __CRT_INLINE long double _chgsignl(_In_ long double number) { return _chgsign((double)number); }
280_Check_return_ __CRT_INLINE long double _copysignl(_In_ long double number, _In_ long double sign) { return _copysign((double)number, (double)sign); }
281_Check_return_ __CRT_INLINE long double _hypotl(_In_ long double x, _In_ long double y) { return _hypot((double)x, (double)y); }
282_Check_return_ __CRT_INLINE long double ldexpl(_In_ long double x, _In_ int y) { return ldexp((double)x, y); }
283_Check_return_ __CRT_INLINE long double modfl(_In_ long double x, _Out_ long double *y) { return (long double)modf((double)x, (double *)y); }
284
285/* Support for some functions, not exported in MSVCRT */
286#if (_MSC_VER >= 1929) && !defined(__clang__)
287_Check_return_ long lrint(_In_ double x);
288_Check_return_ long lrintf(_In_ float x);
289_Check_return_ long lrintl(_In_ long double x);
290#pragma function(lrint, lrintf, lrintl)
291#endif
292
293#ifndef _CRTBLD
294_Check_return_ __CRT_INLINE double round(_In_ double x) { return (x < 0) ? ceil(x - 0.5f) : floor(x + 0.5); }
295_Check_return_ __CRT_INLINE float roundf(_In_ float x) { return (x < 0) ? ceilf(x - 0.5f) : floorf(x + 0.5); }
296_Check_return_ __CRT_INLINE long double roundl(_In_ long double x) { return (x < 0) ? ceill(x - 0.5f) : floorl(x + 0.5); }
297_Check_return_ __CRT_INLINE long lround(_In_ double x) { return (long)((x < 0) ? (x - 0.5f) : (x + 0.5)); }
298_Check_return_ __CRT_INLINE long lroundf(_In_ float x) { return (long)((x < 0) ? (x - 0.5f) : (x + 0.5)); }
299_Check_return_ __CRT_INLINE long lroundl(_In_ long double x) { return (long)((x < 0) ? (x - 0.5f) : (x + 0.5)); }
300_Check_return_ __CRT_INLINE long long llround(_In_ double x) { return (long long)((x < 0) ? (x - 0.5f) : (x + 0.5)); }
301_Check_return_ __CRT_INLINE long long llroundf(_In_ float x) { return (long long)((x < 0) ? (x - 0.5f) : (x + 0.5)); }
302_Check_return_ __CRT_INLINE long long llroundl(_In_ long double x) { return (long long)((x < 0) ? (x - 0.5f) : (x + 0.5)); }
303_Check_return_ __CRT_INLINE double rint(_In_ double x) { return round(x); }
304_Check_return_ __CRT_INLINE float rintf(_In_ float x) { return roundf(x); }
305_Check_return_ __CRT_INLINE long double rintl(_In_ long double x) { return roundl(x); }
306_Check_return_ __CRT_INLINE long lrint(_In_ double x) { return (long)((x < 0) ? (x - 0.5f) : (x + 0.5)); }
307_Check_return_ __CRT_INLINE long lrintf(_In_ float x) { return (long)((x < 0) ? (x - 0.5f) : (x + 0.5)); }
308_Check_return_ __CRT_INLINE long lrintl(_In_ long double x) { return (long)((x < 0) ? (x - 0.5f) : (x + 0.5)); }
309_Check_return_ __CRT_INLINE long long llrint(_In_ double x) { return (long long)((x < 0) ? (x - 0.5f) : (x + 0.5)); }
310_Check_return_ __CRT_INLINE long long llrintf(_In_ float x) { return (long long)((x < 0) ? (x - 0.5f) : (x + 0.5)); }
311_Check_return_ __CRT_INLINE long long llrintl(_In_ long double x) { return (long long)((x < 0) ? (x - 0.5f) : (x + 0.5)); }
312#ifdef _MSC_VER
313#define log2 _log2 // nasty hack, see CORE-18255
314#endif
315_Check_return_ __CRT_INLINE double log2(_In_ double x) { return log(x) / log(2); }
316#endif /* !_CRTBLD */
317
318#ifndef NO_OLDNAMES /* !__STDC__ */
319
320#define DOMAIN _DOMAIN
321#define SING _SING
322#define OVERFLOW _OVERFLOW
323#define UNDERFLOW _UNDERFLOW
324#define TLOSS _TLOSS
325#define PLOSS _PLOSS
326#define matherr _matherr
327//_CRTIMP extern double HUGE;
328#define HUGE _HUGE
329//_CRT_NONSTDC_DEPRECATE(_cabs) _CRTIMP double __cdecl cabs(_In_ struct _complex x);
330#define cabs _cabs
331
338
339#endif /* NO_OLDNAMES */
340
341#ifdef __cplusplus
342}
343#ifndef _CMATH_
344extern "C++" {
345
346//inline long abs(_In_ long x) { return labs(x); }
347_Check_return_ inline double abs(_In_ double x) throw() { return fabs(x); }
348
349_Check_return_ inline float abs(_In_ float x) throw() { return fabsf(x); }
350_Check_return_ inline float acos(_In_ float x) throw() { return acosf(x); }
351_Check_return_ inline float asin(_In_ float x) throw() { return asinf(x); }
352_Check_return_ inline float atan(_In_ float x) throw() { return atanf(x); }
353_Check_return_ inline float atan2(_In_ float y, _In_ float x) throw() { return atan2f(y, x); }
354_Check_return_ inline float ceil(_In_ float x) throw() { return ceilf(x); }
355_Check_return_ inline float copysign(_In_ float x, _In_ float y) throw() { return _copysignf(x, y); }
356_Check_return_ inline float cos(_In_ float x) throw() { return cosf(x); }
357_Check_return_ inline float cosh(_In_ float x) throw() { return coshf(x); }
358_Check_return_ inline float exp(_In_ float x) throw() { return expf(x); }
359_Check_return_ inline float fabs(_In_ float x) throw() { return fabsf(x); }
360_Check_return_ inline float floor(_In_ float x) throw() { return floorf(x); }
361_Check_return_ inline float fmod(_In_ float x, _In_ float y) throw() { return fmodf(x, y); }
362_Check_return_ inline float frexp(_In_ float x, _Out_ int * y) throw() { return frexpf(x, y); }
363_Check_return_ inline float hypot(_In_ float x, _In_ float y) throw() { return _hypotf(x, y); }
364_Check_return_ inline float ldexp(_In_ float x, _In_ int y) throw() { return ldexpf(x, y); }
365_Check_return_ inline float log(_In_ float x) throw() { return logf(x); }
366_Check_return_ inline float log10(_In_ float x) throw() { return log10f(x); }
367_Check_return_ inline float modf(_In_ float x, _Out_ float * y) throw() { return modff(x, y); }
368_Check_return_ inline float pow(_In_ float x, _In_ float y) throw() { return powf(x, y); }
369_Check_return_ inline float sin(_In_ float x) throw() { return sinf(x); }
370_Check_return_ inline float sinh(_In_ float x) throw() { return sinhf(x); }
371_Check_return_ inline float sqrt(_In_ float x) throw() { return sqrtf(x); }
372_Check_return_ inline float tan(_In_ float x) throw() { return tanf(x); }
373_Check_return_ inline float tanh(_In_ float x) throw() { return tanhf(x); }
374
375_Check_return_ inline long double abs(_In_ long double x) throw() { return fabsl(x); }
376_Check_return_ inline long double acos(_In_ long double x) throw() { return acosl(x); }
377_Check_return_ inline long double asin(_In_ long double x) throw() { return asinl(x); }
378_Check_return_ inline long double atan(_In_ long double x) throw() { return atanl(x); }
379_Check_return_ inline long double atan2(_In_ long double y, _In_ long double x) throw() { return atan2l(y, x); }
380_Check_return_ inline long double ceil(_In_ long double x) throw() { return ceill(x); }
381_Check_return_ inline long double copysign(_In_ long double x, _In_ long double y) throw() { return _copysignl(x, y); }
382_Check_return_ inline long double cos(_In_ long double x) throw() { return cosl(x); }
383_Check_return_ inline long double cosh(_In_ long double x) throw() { return coshl(x); }
384_Check_return_ inline long double exp(_In_ long double x) throw() { return expl(x); }
385_Check_return_ inline long double fabs(_In_ long double x) throw() { return fabsl(x); }
386_Check_return_ inline long double floor(_In_ long double x) throw() { return floorl(x); }
387_Check_return_ inline long double fmod(_In_ long double x, _In_ long double y) throw() { return fmodl(x, y); }
388_Check_return_ inline long double frexp(_In_ long double x, _Out_ int * y) throw() { return frexpl(x, y); }
389_Check_return_ inline long double hypot(_In_ long double x, _In_ long double y) throw() { return hypotl(x, y); }
390_Check_return_ inline long double ldexp(_In_ long double x, _In_ int y) throw() { return ldexpl(x, y); }
391_Check_return_ inline long double log(_In_ long double x) throw() { return logl(x); }
392_Check_return_ inline long double log10(_In_ long double x) throw() { return log10l(x); }
393_Check_return_ inline long double modf(_In_ long double x, _Out_ long double * y) throw() { return modfl(x, y); }
394_Check_return_ inline long double pow(_In_ long double x, _In_ long double y) throw() { return powl(x, y); }
395_Check_return_ inline long double sin(_In_ long double x) throw() { return sinl(x); }
396_Check_return_ inline long double sinh(_In_ long double x) throw() { return sinhl(x); }
397_Check_return_ inline long double sqrt(_In_ long double x) throw() { return sqrtl(x); }
398_Check_return_ inline long double tan(_In_ long double x) throw() { return tanl(x); }
399_Check_return_ inline long double tanh(_In_ long double x) throw() { return tanhl(x); }
400}
401#endif /* !_CMATH_ */
402#endif /* __cplusplus */
403
404#pragma pack(pop)
405
406#endif /* !_INC_MATH */
407
408#if defined(_USE_MATH_DEFINES) && !defined(_MATH_DEFINES_DEFINED)
409#define _MATH_DEFINES_DEFINED
410
411#define M_E 2.71828182845904523536
412#define M_LOG2E 1.44269504088896340736
413#define M_LOG10E 0.434294481903251827651
414#define M_LN2 0.693147180559945309417
415#define M_LN10 2.30258509299404568402
416#define M_PI 3.14159265358979323846
417#define M_PI_2 1.57079632679489661923
418#define M_PI_4 0.785398163397448309616
419#define M_1_PI 0.318309886183790671538
420#define M_2_PI 0.636619772367581343076
421#define M_2_SQRTPI 1.12837916709551257390
422#define M_SQRT2 1.41421356237309504880
423#define M_SQRT1_2 0.707106781186547524401
424
425#endif /* _USE_MATH_DEFINES */
int FN_PROTOTYPE() _finitef(float x)
Definition: _finitef.c:32
#define __cdecl
Definition: accygwin.h:79
Definition: _locale.h:75
#define abs(i)
Definition: fconv.c:206
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean flag
Definition: glfuncs.h:52
_Check_return_ __CRT_INLINE long lround(_In_ double x)
Definition: math.h:297
_Check_return_ __CRT_INLINE float rintf(_In_ float x)
Definition: math.h:304
_Check_return_ float __cdecl acosf(_In_ float x)
Definition: math.h:233
_Check_return_ __CRT_INLINE float __CRTDECL fabsf(_In_ float x)
Definition: math.h:193
_Check_return_ __CRT_INLINE long double coshl(_In_ long double x)
Definition: math.h:265
_Check_return_ double __cdecl sin(_In_ double x)
_Check_return_ float __cdecl atanf(_In_ float x)
Definition: math.h:235
_Check_return_ __CRT_INLINE long lroundl(_In_ long double x)
Definition: math.h:299
_Check_return_ __CRT_INLINE long double roundl(_In_ long double x)
Definition: math.h:296
_Check_return_ __CRT_INLINE long double sinhl(_In_ long double x)
Definition: math.h:276
_Check_return_ long long __cdecl llabs(_In_ long long x)
Definition: stdlib.h:1435
_Check_return_ __CRT_INLINE long double atan2l(_In_ long double y, _In_ long double x)
Definition: math.h:262
_Check_return_ _CRTIMP double __cdecl _j0(_In_ double x)
_Check_return_ __CRT_INLINE long long llround(_In_ double x)
Definition: math.h:300
_Check_return_ _CRTIMP double __cdecl frexp(_In_ double x, _Out_ int *y)
_Check_return_ long __cdecl labs(_In_ long x)
_Check_return_ float __cdecl powf(_In_ float b, _In_ float e)
Definition: math.h:246
_Check_return_ _CRT_JIT_INTRINSIC double __cdecl fabs(_In_ double x)
Definition: fabs.c:17
_Check_return_ float __cdecl logf(_In_ float x)
Definition: math.h:243
_Check_return_ _CRTIMP double __cdecl ldexp(_In_ double x, _In_ int y)
_Check_return_ float __cdecl expf(_In_ float x)
Definition: math.h:240
_Check_return_ _CRTIMP double __cdecl modf(_In_ double x, _Out_ double *y)
_Check_return_ float __cdecl modff(_In_ float x, _Out_ float *y)
Definition: math.h:245
_Check_return_ _CRTIMP double __cdecl _nextafter(_In_ double x, _In_ double y)
_Check_return_ __CRT_INLINE long lrint(_In_ double x)
Definition: math.h:306
_Check_return_ __CRT_INLINE long double cosl(_In_ long double x)
Definition: math.h:264
_Check_return_ double __cdecl log10(_In_ double x)
_Check_return_ __CRT_INLINE long double ceill(_In_ long double x)
Definition: math.h:263
_Check_return_ __CRT_INLINE long double frexpl(_In_ long double x, _Out_ int *y)
Definition: math.h:270
_Check_return_ __CRT_INLINE long double log10l(_In_ long double x)
Definition: math.h:273
float float_t
Definition: math.h:15
_Check_return_ __CRT_INLINE long double _hypotl(_In_ long double x, _In_ long double y)
Definition: math.h:281
_Check_return_ __CRT_INLINE long lrintf(_In_ float x)
Definition: math.h:307
_CRTIMP double const _HUGE
Definition: huge_val.c:6
_Check_return_ float __cdecl cosf(_In_ float x)
Definition: math.h:238
_Check_return_ _CRTIMP double __cdecl _j1(_In_ double x)
_Check_return_ _CRTIMP double __cdecl _atof_l(_In_z_ const char *str, _In_opt_ _locale_t locale)
_Check_return_ __CRT_INLINE long double fabsl(_In_ long double x)
Definition: math.h:267
_Check_return_ __CRT_INLINE float roundf(_In_ float x)
Definition: math.h:295
_Check_return_ _CRTIMP double __cdecl _hypot(_In_ double x, _In_ double y)
_Check_return_ _CRTIMP double __cdecl _chgsign(_In_ double x)
_Check_return_ double __cdecl tanh(_In_ double x)
_Check_return_ _CRTIMP double __cdecl _cabs(_In_ struct _complex a)
_Check_return_ double __cdecl fmod(_In_ double x, _In_ double y)
_Check_return_ __CRT_INLINE long lrintl(_In_ long double x)
Definition: math.h:308
_Check_return_ double __cdecl atan(_In_ double x)
_Check_return_ double __cdecl sinh(_In_ double x)
_Check_return_ __CRT_INLINE float __CRTDECL ldexpf(_In_ float x, _In_ int y)
Definition: math.h:182
_Check_return_ __CRT_INLINE long double _chgsignl(_In_ long double number)
Definition: math.h:279
_Check_return_ float __cdecl log10f(_In_ float x)
Definition: math.h:244
_Check_return_ double __cdecl asin(_In_ double x)
_Check_return_ double __cdecl pow(_In_ double x, double y)
_Check_return_ _CRT_JIT_INTRINSIC double __cdecl sqrt(_In_ double x)
_Check_return_ __CRT_INLINE long double acosl(_In_ long double x)
Definition: math.h:259
int __CRTDECL _matherr(_Inout_ struct _exception *exception)
_Check_return_ __CRT_INLINE long double __CRTDECL tanl(_In_ long double x)
Definition: math.h:183
_Check_return_ __CRT_INLINE double log2(_In_ double x)
Definition: math.h:315
_Check_return_ float __cdecl _chgsignf(_In_ float x)
Definition: math.h:230
_Check_return_ __CRT_INLINE double hypot(_In_ double x, _In_ double y)
Definition: math.h:254
_Check_return_ float __cdecl tanhf(_In_ float x)
Definition: math.h:251
_Check_return_ __CRT_INLINE long long llroundl(_In_ long double x)
Definition: math.h:302
_Check_return_ __CRT_INLINE long double _copysignl(_In_ long double number, _In_ long double sign)
Definition: math.h:280
_Check_return_ _CRTIMP double __cdecl _y0(_In_ double x)
_Check_return_ _CRTIMP double __cdecl _copysign(_In_ double x, _In_ double sgn)
_Check_return_ __CRT_INLINE long double expl(_In_ long double x)
Definition: math.h:266
_Check_return_ __CRT_INLINE long double rintl(_In_ long double x)
Definition: math.h:305
_Check_return_ _CRTIMP double __cdecl _yn(_In_ int x, _In_ double y)
_Check_return_ __CRT_INLINE long double sqrtl(_In_ long double x)
Definition: math.h:277
_Check_return_ double __cdecl cosh(_In_ double x)
_Check_return_ __CRT_INLINE float frexpf(_In_ float x, _Out_ int *y)
Definition: math.h:256
_Check_return_ __CRT_INLINE long double ldexpl(_In_ long double x, _In_ int y)
Definition: math.h:282
_Check_return_ __CRT_INLINE long long llrint(_In_ double x)
Definition: math.h:309
_Check_return_ __CRT_INLINE long double tanhl(_In_ long double x)
Definition: math.h:278
_Check_return_ float __cdecl coshf(_In_ float x)
Definition: math.h:239
_Check_return_ __CRT_INLINE long long llrintl(_In_ long double x)
Definition: math.h:311
_Check_return_ float __cdecl tanf(_In_ float x)
Definition: math.h:250
_Check_return_ __CRT_INLINE long double atanl(_In_ long double x)
Definition: math.h:261
_Check_return_ __CRT_INLINE long lroundf(_In_ float x)
Definition: math.h:298
double double_t
Definition: math.h:16
_Check_return_ float __cdecl fmodf(_In_ float x, _In_ float y)
Definition: math.h:242
_Check_return_ __CRT_INLINE long long llroundf(_In_ float x)
Definition: math.h:301
_Check_return_ float __cdecl _hypotf(_In_ float x, _In_ float y)
Definition: math.h:232
_Check_return_ __CRT_INLINE double rint(_In_ double x)
Definition: math.h:303
_Check_return_ float __cdecl _copysignf(_In_ float x, _In_ float y)
Definition: math.h:231
_Check_return_ _CRTIMP double __cdecl _y1(_In_ double x)
_Check_return_ __CRT_INLINE long double logl(_In_ long double x)
Definition: math.h:272
_Check_return_ float __cdecl sinhf(_In_ float x)
Definition: math.h:248
_Check_return_ __CRT_INLINE long double sinl(_In_ long double x)
Definition: math.h:275
_Check_return_ float __cdecl asinf(_In_ float x)
Definition: math.h:234
_Check_return_ __CRT_INLINE float hypotf(_In_ float x, _In_ float y)
Definition: math.h:255
_Check_return_ __CRT_INLINE long double hypotl(_In_ long double x, _In_ long double y)
Definition: math.h:271
_Check_return_ double __cdecl acos(_In_ double x)
_Check_return_ _CRTIMP double __cdecl _jn(_In_ int x, _In_ double y)
_Check_return_ float __cdecl atan2f(_In_ float x, _In_ float y)
Definition: math.h:236
_Check_return_ double __cdecl tan(_In_ double x)
_Check_return_ _CRTIMP double __cdecl floor(_In_ double x)
_Check_return_ __CRT_INLINE long double asinl(_In_ long double x)
Definition: math.h:260
_Check_return_ double __cdecl atan2(_In_ double y, _In_ double x)
_Check_return_ __CRT_INLINE long long llrintf(_In_ float x)
Definition: math.h:310
_Check_return_ _CRTIMP double __cdecl ceil(_In_ double x)
_Check_return_ float __cdecl sinf(_In_ float x)
Definition: math.h:247
_Check_return_ double __cdecl cos(_In_ double x)
#define e
Definition: ke_i.h:82
GLint y0
Definition: linetemp.h:96
float _logbf(float x)
Definition: logbf.c:38
#define sign(x)
Definition: mapdesc.cc:613
double __cdecl copysign(double, double)
#define modfl
Definition: modf.c:12
static unsigned int number
Definition: dsound.c:1479
static float(__cdecl *square_half_float)(float x
DWORD exp
Definition: msg.c:16058
#define ceilf(x)
Definition: mymath.h:62
#define floorf(x)
Definition: mymath.h:65
#define sqrtf(x)
Definition: mymath.h:59
#define _Inout_
Definition: no_sal2.h:162
#define _In_z_
Definition: no_sal2.h:164
#define _Check_return_
Definition: no_sal2.h:60
#define _Out_
Definition: no_sal2.h:160
#define _In_
Definition: no_sal2.h:158
#define _In_opt_
Definition: no_sal2.h:212
#define round(x)
Definition: opentype.c:47
const WCHAR * str
#define log(outFile, fmt,...)
Definition: util.h:15
Definition: math.h:31
double y
Definition: math.h:32
double x
Definition: math.h:32
double retval
Definition: math.h:25
char * name
Definition: math.h:22
double arg2
Definition: math.h:24
int type
Definition: math.h:21
double arg1
Definition: math.h:23
double atof()
#define floorl(x)
Definition: trio.c:273
#define powl(x, y)
Definition: trio.c:275
#define fmodl(x, y)
Definition: trio.c:274
#define _CRT_NONSTDC_DEPRECATE(_NewName)
Definition: corecrt.h:439
#define _CRT_JIT_INTRINSIC
Definition: corecrt.h:175
long sgn(REAL x)
Definition: varray.cc:48
#define _CRTIMP
Definition: vcruntime.h:54
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG _In_ LONG y1
Definition: winddi.h:3709
#define __CRTDECL
Definition: yvals.h:17