comparison spandsp-0.0.3/spandsp-0.0.3/src/msvc/tgmath.h @ 5:f762bf195c4b

import spandsp-0.0.3
author Peter Meerwald <pmeerw@cosy.sbg.ac.at>
date Fri, 25 Jun 2010 16:00:21 +0200
parents
children
comparison
equal deleted inserted replaced
4:26cd8f1ef0b1 5:f762bf195c4b
1 /*
2 * SpanDSP - a series of DSP components for telephony
3 *
4 * tgmath.h - a fudge for MSVC, which lacks this header
5 *
6 * Written by Steve Underwood <steveu@coppice.org>
7 *
8 * Copyright (C) 2006 Michael Jerris
9 *
10 *
11 * This file is released in the public domain.
12 *
13 */
14
15 #if !defined(_TGMATH_H_)
16 #define _TGMATH_H_
17
18 #include <math.h>
19
20 #if !defined(M_PI)
21 /* C99 systems may not define M_PI */
22 #define M_PI 3.14159265358979323846264338327
23 #endif
24
25
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29
30 /* A kindofa rint() for VC++ (only kindofa, because rint should be type generic,
31 and this one is purely float to int */
32 static inline long int lrintf(float a)
33 {
34 long int i;
35
36 __asm
37 {
38 fld a
39 fistp i
40 }
41 return i;
42 }
43
44 static inline long int lrint(double a)
45 {
46 long int i;
47
48 __asm
49 {
50 fld a
51 fistp i
52 }
53 return i;
54 }
55
56 #ifdef __cplusplus
57 }
58 #endif
59
60 #endif

Repositories maintained by Peter Meerwald, pmeerw@pmeerw.net.