mxlib
c++ tools for analyzing astronomical data and other tasks by Jared R. Males. [git repo]
|
Utilities for working with time. More...
Utilities for working with time.
Definition in file timeUtils.hpp.
Go to the source code of this file.
Namespaces | |
mx | |
The mxlib c++ namespace. | |
Functions | |
template<typename typeT = double, clockid_t clk_id = CLOCK_REALTIME> | |
typeT | mx::sys::get_curr_time (timespec &tsp) |
Get the current system time in seconds. More... | |
template<typename typeT = double, clockid_t clk_id = CLOCK_REALTIME> | |
typeT | mx::sys::get_curr_time () |
Get the current system time in seconds. More... | |
void | mx::sys::sleep (unsigned sec) |
Sleep for a specified period in seconds. More... | |
void | mx::sys::milliSleep (unsigned msec) |
Sleep for a specified period in milliseconds. More... | |
void | mx::sys::microSleep (unsigned usec) |
Sleep for a specified period in microseconds. More... | |
void | mx::sys::nanoSleep (unsigned nsec) |
Sleep for a specified period in nanoseconds. More... | |
void | mx::sys::timespecAddNsec (timespec &ts, unsigned nsec) |
Adds a time offset to an existing timespec. More... | |
template<typename floatT > | |
void | mx::sys::parse_hms (floatT &h, floatT &m, floatT &s, const std::string &hmsstr) |
double | mx::sys::Cal2mjd (int yr, int mon, int day, int hr, int min, double sec) |
Converts a Gregorian calendar date into modified Julian date (MJD). More... | |
int | mx::sys::ISO8601dateBreakdown (int &yr, int &mon, int &day, int &hr, int &min, double &sec, const std::string &fdate) |
Parse an ISO8601 date of the form "YYYY-MM-DDTHH:MM:SS.S" into the individual components. More... | |
double | mx::sys::ISO8601date2mjd (const std::string &fdate) |
Parse an ISO8601 date of the form "YYYY-MM-DDTHH:MM:SS.S" and return the modified Julian date (MJD) More... | |
template<typename timeT > | |
std::string | mx::sys::ISO8601DateTimeStr (const timeT &timeIn, int timeZone=0) |
Get a date-time string in ISO 8601 format. More... | |
template<> | |
std::string | mx::sys::ISO8601DateTimeStr< time_t > (const time_t &timeIn, int timeZone) |
Get a date-time string in ISO 8601 format for time_t. More... | |
template<> | |
std::string | mx::sys::ISO8601DateTimeStr< timespec > (const timespec &timeIn, int timeZone) |
Get a date-time string in ISO 8601 format for timespec. More... | |
std::string | mx::sys::ISO8601DateTimeStr (int timeZone=0) |
Get a date-time string in ISO 8601 format for the current UTC time. More... | |
std::string | mx::sys::ISO8601DateTimeStrMJD (const double &timeIn, int timeZone=0) |
Get a date-time string in ISO 8601 format for an MJD. More... | |
int | mx::sys::timeStamp (std::string &tstamp, timespec &ts) |
Get a timestamp string in the form YYYYMMDDHHMMSS.SSSSSSSSS. More... | |
int | mx::sys::timespecUTC2TAIMJD (double &djm, double &djmf, const timespec &tsp, tm *tm0) |
Convert a UTC timespec to TAI modified Julian date. More... | |
timespec | mx::sys::meanTimespec (timespec ts1, timespec ts2) |
Calculate the mean time of two times given by timespecs. More... | |
bool | mx::sys::tscomp::operator< (timespec const &tsL, timespec const &tsR) |
Timespec comparison operator < (see caveats) More... | |
bool | mx::sys::tscomp::operator> (timespec const &tsL, timespec const &tsR) |
Timespec comparison operator > (see caveats) More... | |
bool | mx::sys::tscomp::operator== (timespec const &tsL, timespec const &tsR) |
Timespec comparison operator == (see caveats) More... | |
bool | mx::sys::tscomp::operator<= (timespec const &tsL, timespec const &tsR) |
Timespec comparison operator <= (see caveats) More... | |
bool | mx::sys::tscomp::operator>= (timespec const &tsL, timespec const &tsR) |
Timespec comparison operator >= (see caveats) More... | |
template<typename arithT > | |
timespec | mx::sys::tsop::operator+ (timespec ts, arithT add) |
Add an amount of time specified in seconds to a timespec. More... | |
template<typename arithT > | |
timespec | mx::sys::tsop::operator- (timespec ts, arithT sub) |
Subtract an amount of time specified in seconds from a timespec. More... | |
timespec mx::sys::meanTimespec | ( | timespec | ts1, |
timespec | ts2 | ||
) |
Calculate the mean time of two times given by timespecs.
[in] | ts1 | one of the times to average |
[in] | ts2 | the other time to average |
Definition at line 278 of file timeUtils.cpp.
References mx::sys::meanTimespec().
Referenced by mx::sys::ISO8601DateTimeStr(), and mx::sys::meanTimespec().
timespec mx::sys::tsop::operator+ | ( | timespec | ts, |
arithT | add | ||
) |
Add an amount of time specified in seconds to a timespec.
[in] | ts | the timespec to add to |
[in] | add | the seconds to add |
Definition at line 427 of file timeUtils.hpp.
References mx::sys::tsop::operator+().
Referenced by mx::sys::tsop::operator+().
timespec mx::sys::tsop::operator- | ( | timespec | ts, |
arithT | sub | ||
) |
Subtract an amount of time specified in seconds from a timespec.
[in] | ts | the timespec to subtract from |
[in] | sub | the seconds to subtract |
Definition at line 449 of file timeUtils.hpp.
References mx::sys::tsop::operator-().
Referenced by mx::sys::tsop::operator-().