14 #if !WIN32 && !VXWORKS && !VMS && !__darwin__
19 #define MAXDOUBLE numeric_limits<double>::max()
21 #define MAXDOUBLE 1.7976931348623157e+308
24 #define FLOAT64_POSITIVE_INFINITY (MAXDOUBLE)
25 #define FLOAT64_EPSILON (0.000000001)
26 #define FLOAT64_ZERO (0.0)
35 HLAfloat64IntervalImpl();
36 HLAfloat64IntervalImpl(
double const & value);
37 HLAfloat64IntervalImpl(HLAfloat64IntervalImpl
const & value);
40 virtual ~HLAfloat64IntervalImpl ();
43 virtual void setZero ();
44 virtual bool isZero ()
const;
45 virtual void setEpsilon ();
46 virtual bool isEpsilon ()
const;
49 virtual rti1516e::HLAfloat64IntervalImpl& operator= (
double value);
50 virtual rti1516e::HLAfloat64IntervalImpl& operator= (
const rti1516e::HLAfloat64IntervalImpl& value);
53 virtual rti1516e::HLAfloat64IntervalImpl& operator+= (
double addend)
54 throw (rti1516e::IllegalTimeArithmetic);
56 virtual rti1516e::HLAfloat64IntervalImpl& operator-= (
double subtrahend)
57 throw (rti1516e::IllegalTimeArithmetic);
59 virtual bool operator> (
double value)
const;
61 virtual bool operator< (
double value)
const;
63 virtual bool operator== (
double value)
const;
65 virtual bool operator>= (
double value)
const;
67 virtual bool operator<= (
double value)
const;
69 virtual void setToDifference (
double minuend,
double subtrahend)
70 throw (rti1516e::IllegalTimeArithmetic);
73 virtual double getInterval ()
const;
74 virtual void setInterval (
double value);
79 static const double theZero;
80 static const double theEpsilon;
81 static const double thePositiveInfinity;
85 #endif // DtIFSPEC1516E