9 #ifndef RTI_LogicalTimeIntervalImplFloat_H_
10 #define RTI_LogicalTimeIntervalImplFloat_H_
14 #if !WIN32 && !VXWORKS && !VMS && !__darwin__
19 #define MAXDOUBLE numeric_limits<double>::max()
21 #define MAXDOUBLE 1.7976931348623157e+308
24 #define POSITIVE_INFINITY (MAXDOUBLE)
25 #define EPSILON (0.000000001)
46 virtual
void setZero();
47 virtual
bool isZero() const;
49 virtual
void setEpsilon();
50 virtual
bool isEpsilon() const;
54 rti1516::LogicalTimeInterval&
55 operator= (rti1516::LogicalTimeInterval const & value)
57 rti1516::InvalidLogicalTimeInterval);
62 setToDifference(rti1516::LogicalTime const & minuend,
63 rti1516::LogicalTime const& subtrahend)
64 throw (rti1516::InvalidLogicalTime);
67 rti1516::LogicalTimeInterval&
68 operator+= (rti1516::LogicalTimeInterval const & addend)
70 rti1516::InvalidLogicalTimeInterval);
73 rti1516::LogicalTimeInterval&
74 operator-= (rti1516::LogicalTimeInterval const & subtrahend)
76 rti1516::InvalidLogicalTimeInterval);
80 operator> (rti1516::LogicalTimeInterval const & value) const
82 rti1516::InvalidLogicalTimeInterval);
86 operator< (rti1516::LogicalTimeInterval const & value) const
88 rti1516::InvalidLogicalTimeInterval);
92 operator== (rti1516::LogicalTimeInterval const & value) const
94 rti1516::InvalidLogicalTimeInterval);
98 operator>= (rti1516::LogicalTimeInterval const & value) const
100 rti1516::InvalidLogicalTimeInterval);
104 operator<= (rti1516::LogicalTimeInterval const & value) const
106 rti1516::InvalidLogicalTimeInterval);
110 virtual rti1516::VariableLengthData encode() const;
113 virtual
unsigned long encodedLength() const;
114 virtual
unsigned long encode(
void* buffer,
unsigned long bufferSize) const
115 throw (rti1516::CouldNotEncode);
118 virtual
void decode(rti1516::VariableLengthData const & encodedValue)
120 rti1516::InternalError,
121 rti1516::CouldNotDecode);
124 virtual
void decode(
void* buffer,
unsigned long bufferSize)
126 rti1516::InternalError,
127 rti1516::CouldNotDecode);
129 virtual std::wstring
toString() const;
133 virtual std::wstring implementationName() const;
139 virtual
double getInterval() const;
144 virtual
bool operator== (const
double&) const
145 throw (rti1516::InvalidLogicalTimeInterval);
147 virtual
bool operator!= (rti1516::LogicalTimeInterval const & value) const
149 rti1516::InvalidLogicalTimeInterval);
153 rti1516::InvalidLogicalTimeInterval);
155 virtual
bool operator!= (const
double&) const
156 throw (rti1516::InvalidLogicalTimeInterval);
160 throw (rti1516::InvalidLogicalTimeInterval);
162 virtual rti1516::LogicalTimeInterval& operator= (const
double&)
163 throw (rti1516::InvalidLogicalTimeInterval);
165 virtual rti1516::LogicalTimeInterval& operator+= (const
double&)
166 throw (rti1516::InvalidLogicalTimeInterval);
168 virtual rti1516::LogicalTimeInterval& operator-= (const
double&)
169 throw (rti1516::InvalidLogicalTimeInterval);
178 double myPositiveInfinity;
181 #endif // RTI_LogicalTimeIntervalImplFloat_H_