20#ifndef TIMECONVERSION_H_
21#define TIMECONVERSION_H_
24#include <fastdds/rtps/common/Time_t.h>
38 return (
double)t.seconds() + (double)(t.fraction()/pow(2.0,32));
46 return (int64_t)(t.fraction()/pow(2.0,32)*pow(10.0,6)) + t.seconds()*(int64_t)pow(10.0,6);
54 return (int64_t)(t.nanosec/1000.0)+t.seconds*(int64_t)pow(10.0,6);
62 return ((
double)t.fraction()/pow(2.0,32)*pow(10.0,6)) + (double)t.seconds()*pow(10.0,6);
70 return (int64_t)(t.fraction()/pow(2.0,32)*pow(10.0,3)) + t.seconds()*(int64_t)pow(10.0,3);
78 return ((
double)t.fraction()/pow(2.0,32)*pow(10.0,3)) + (double)t.seconds()*pow(10.0,3);
86 return ((
double)t.nanosec/1000000.0)+(double)t.seconds*pow(10.0,3);
95 t.seconds((int32_t)(millisec/pow(10.0,3)));
96 t.fraction((uint32_t)((millisec-(
double)t.seconds()*pow(10.0,3))/pow(10.0,3)*pow(2.0,32)));
106 t.seconds((int32_t)(microsec/pow(10.0,6)));
107 t.fraction((uint32_t)((microsec-(
double)t.seconds()*pow(10.0,6))/pow(10.0,6)*pow(2.0,32)));
117 t.seconds((int32_t)seconds);
118 t.fraction((uint32_t)((seconds-(
double)t.seconds())*pow(2.0,32)));
128 result +=(double)abs((t2.seconds()-t1.seconds())*1000);
129 result +=(double)std::abs((t2.fraction()-t1.fraction())/pow(2.0,32)*1000);
136 randoff = std::abs(randoff);
137 millisec = millisec + (-randoff) +
static_cast <double> (rand()) /(
static_cast <double> (RAND_MAX/(2*randoff)));
143 randoff = std::abs(randoff);
144 microsec = microsec + (-randoff) +
static_cast <double> (rand()) /(
static_cast <double> (RAND_MAX/(2*randoff)));
150 randoff = std::abs(randoff);
151 sec = sec + (-randoff) +
static_cast <double> (rand()) /(
static_cast <double> (RAND_MAX/(2*randoff)));
rtps::Time_t MicroSeconds2Time_t(double microsec)
Convert microseconds to Time_t.
Definition TimeConversion.h:103
rtps::Time_t MilliSecondsWithRandOffset2Time_t(double millisec, double randoff)
Create a random Time_t that is millisec + [-randoff,randoff].
Definition TimeConversion.h:134
int64_t Time_t2MicroSecondsInt64(const rtps::Time_t &t)
Convert Time_t to seconds as an int64.
Definition TimeConversion.h:44
int64_t Duration_t2MicroSecondsInt64(const Duration_t &t)
Convert Duration_t to seconds as an int64.
Definition TimeConversion.h:52
double Time_t2MicroSecondsDouble(const rtps::Time_t &t)
Convert Time_t to microseconds as a double.
Definition TimeConversion.h:60
double Time_t2MilliSecondsDouble(const rtps::Time_t &t)
Convert Time_t to milliseconds as a double.
Definition TimeConversion.h:76
double Duration_t2MilliSecondsDouble(const Duration_t &t)
Convert Duration_t to milliseconds as a double.
Definition TimeConversion.h:84
int64_t Time_t2MilliSecondsInt64(const rtps::Time_t &t)
Convert Time_t to milliseconds as an int64.
Definition TimeConversion.h:68
rtps::Time_t SecondsWithRandOffset2Time_t(double sec, double randoff)
Create a random Time_t that is sec + [-randoff,randoff].
Definition TimeConversion.h:148
rtps::Time_t MilliSeconds2Time_t(double millisec)
Convert milliseconds to Time_t.
Definition TimeConversion.h:92
double Time_t2SecondsDouble(const rtps::Time_t &t)
Convert Time_t to seconds as a double.
Definition TimeConversion.h:36
double Time_tAbsDiff2DoubleMillisec(const rtps::Time_t &t1, const rtps::Time_t &t2)
Get the absolute difference between two Time_t in milliseconds as double.
Definition TimeConversion.h:125
rtps::Time_t MicroSecondsWithRandOffset2Time_t(double microsec, double randoff)
Create a random Time_t that is microsec + [-randoff,randoff].
Definition TimeConversion.h:141
rtps::Time_t Seconds2Time_t(double seconds)
Convert seconds to Time_t.
Definition TimeConversion.h:114
eProsima namespace.
Definition LibrarySettingsAttributes.h:23