This is Unofficial EPICS BASE Doxygen Site
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
epicsMath.h
Go to the documentation of this file.
1
/*************************************************************************\
2
* Copyright (c) 2002 The University of Chicago, as Operator of Argonne
3
* National Laboratory.
4
* Copyright (c) 2002 The Regents of the University of California, as
5
* Operator of Los Alamos National Laboratory.
6
* EPICS BASE is distributed subject to a Software License Agreement found
7
* in file LICENSE that is included with this distribution.
8
\*************************************************************************/
9
10
#ifndef epicsMathh
11
#define epicsMathh
12
13
#include <math.h>
14
#include <private/mathP.h>
15
#include <libComAPI.h>
16
17
/* private/mathP.h defines NAN as 4, and uses its value in the
18
* isNan() macro. We need mathP.h for isInf(), but can create
19
* our own isnan() test. epicsMath.cpp requires that NAN either
20
* be undef or yield the NaN value, so this solves the issue.
21
*/
22
#undef NAN
23
24
#define isnan(D) (!(D == D))
25
#define isinf(D) isInf(D)
26
#define finite(D) (!isnan(D) && !isInf(D))
27
28
#ifdef __cplusplus
29
extern
"C"
{
30
#endif
31
32
LIBCOM_API
extern
float
epicsNAN
;
33
LIBCOM_API
extern
float
epicsINF
;
34
35
#ifdef __cplusplus
36
}
37
#endif
38
39
#endif
/* epicsMathh */
epicsINF
LIBCOM_API float epicsINF
Definition:
epicsMath.cpp:36
epicsNAN
LIBCOM_API float epicsNAN
Definition:
epicsMath.cpp:35
modules
libcom
src
osi
os
vxWorks
epicsMath.h
Generated by
1.8.11