This is Unofficial EPICS BASE Doxygen Site
epicsConvert.c File Reference
#include <float.h>
#include <limits.h>
#include "epicsMath.h"
#include "epicsConvert.h"
#include "cantProceed.h"
+ Include dependency graph for epicsConvert.c:

Go to the source code of this file.

Functions

LIBCOM_API float epicsConvertDoubleToFloat (double value)
 

Function Documentation

LIBCOM_API float epicsConvertDoubleToFloat ( double  value)

Definition at line 18 of file epicsConvert.c.

19 {
20  double abs;
21 
22  if (value == 0 || !finite(value))
23  return (float) value;
24 
25  abs = fabs(value);
26 
27  if (abs >= FLT_MAX)
28  return (value > 0) ? FLT_MAX : -FLT_MAX;
29 
30  if (abs <= FLT_MIN)
31  return (value > 0) ? FLT_MIN : -FLT_MIN;
32 
33  return (float) value;
34 }
Definition: link.h:174
#define finite(x)
Definition: epicsMath.h:16