23 #if defined(__linux__) 24 # include <sys/time.h> 29 #include "OnixS/Eurex/Trading/Export.h" 34 namespace OnixS {
namespace Eurex {
namespace Trading {
38 typedef unsigned __int64 AbsoluteHighResolutionTimeImpl;
40 typedef __int64 RelativeHighResolutionTimeImpl;
42 #elif defined(__linux__) 44 typedef timeval AbsoluteHighResolutionTimeImpl;
46 typedef struct Nothing
48 } RelativeHighResolutionTimeImpl;
51 # error High resolution time services are not defined for a given platform. 74 void fromAbsolute(
const AbsoluteHighResolutionTimeImpl&);
77 void toAbsolute(AbsoluteHighResolutionTimeImpl*)
const;
80 void fromString(
const std::string&);
83 std::string toString()
const;
105 bool isValid()
const;
111 std::string toString()
const;
135 friend struct TimestampHelpers;
139 #elif defined(__linux__) 154 AbsoluteHighResolutionTimeImpl asAbsolute;
155 RelativeHighResolutionTimeImpl asRelative;
166 return !(Invalid == kind_);
unsigned long long UInt64
Fields of HighResolutionTime.
long long HighResolutionTimeSpan
bool isValid() const
Indicates whether the instance is valid time.
std::ostream & operator<<(std::ostream &, ConnectionState::Enum)
Make it printable using C++ I/O streams.
Miscellaneous time traits.
AbsoluteHighResolutionTimeImpl Timestamp
Alias for raw timestamps.
unsigned int microseconds