![]() |
Fixposition SDK 0.0.0-heads/main-0-g95968b3
Collection of c++ libraries and apps for use with Fixposition products on Linux
|
#include <time.hpp>
Public Member Functions | |
Set duration | |
These do not throw and instead return true/false. | |
| bool | SetSecNSec (const int32_t sec, const int32_t nsec) |
| Set duration from seconds and nanoseconds. | |
| bool | SetNSec (const int64_t nsec) |
| Set duration from nanoseconds. | |
| bool | SetSec (const double sec) |
| Set duration from seconds. | |
Get duration | |
| int64_t | GetNSec () const |
| Get duration as nanoseconds. | |
| double | GetSec (const int prec=9) const |
| Get duration as seconds. | |
| std::chrono::milliseconds | GetChronoMilli () const |
| Get duration as std::chrono::milliseconds. | |
| std::chrono::nanoseconds | GetChronoNano () const |
| Get duration as std::chrono::nanoseconds. | |
Misc | |
| bool | IsZero () const |
| Check if duration is zero. | |
| std::string | Stringify (const int prec=3) const |
| Stringify duration, for debugging. | |
| void | Sleep () const |
| Sleep for the duration (if > 0) | |
Arithmetic methods | |
These do not throw and instead return true/false. | |
| bool | AddDur (const Duration &dur) |
| Add duration to duration. | |
| bool | AddNSec (const int64_t nsec) |
| Add nanoseconds to duration. | |
| bool | AddSec (const double sec) |
| Add seconds to duration. | |
| bool | SubDur (const Duration &dur) |
| Substract duration from duration. | |
| bool | SubNSec (const int64_t nsec) |
| Substract nanoseconds from duration. | |
| bool | SubSec (const double sec) |
| Substract seconds from duration. | |
| bool | Scale (const double sec) |
| Scale (multiply) duration. | |
Arithmetic operators | |
| |
| Duration | operator+ (const Duration &rhs) const |
| Sum duration and duration. | |
| Duration | operator+ (const int64_t nsec) const |
| Sum duration and nanoseconds. | |
| Duration | operator+ (const double sec) const |
| Sum duration and seconds. | |
| Duration & | operator+= (const Duration &rhs) |
| Add duration to duration. | |
| Duration & | operator+= (const int64_t nsec) |
| Add nanoseconds to durationn. | |
| Duration & | operator+= (const double sec) |
| Add seconds to duration. | |
| Duration | operator- (const Duration &rhs) const |
| Subtract duration and duration. | |
| Duration | operator- (const int64_t nsec) const |
| Subtract duration and nanoseconds. | |
| Duration | operator- (const double sec) const |
| Subtract duration and seconds. | |
| Duration & | operator-= (const Duration &rhs) |
| Subtract duration from duration. | |
| Duration & | operator-= (const int64_t nsec) |
| Subtract nanoseconds from duration. | |
| Duration & | operator-= (const double sec) |
| Subtract seconds from durationn. | |
| Duration | operator- () const |
| Reverse sign. | |
| Duration | operator* (double scale) const |
| Multiply (scale) duration. | |
| Duration & | operator*= (double scale) |
| Multiply (scale) duration. | |
Logic operators | |
| bool | operator== (const Duration &rhs) const |
| Equal. | |
| bool | operator!= (const Duration &rhs) const |
| Not equal. | |
| bool | operator> (const Duration &rhs) const |
| Greater than. | |
| bool | operator< (const Duration &rhs) const |
| Smaller than. | |
| bool | operator>= (const Duration &rhs) const |
| Greater or equal than. | |
| bool | operator<= (const Duration &rhs) const |
| Smaller or equal than. | |
Public Attributes | |
| int32_t | sec_ |
| Seconds part of duration. | |
| int32_t | nsec_ |
| Nanoseconds part of duration (should be in range 0-999999999) | |
Make Duration object | |
| |
| Duration () | |
| Constructor, zero duration. | |
| static Duration | FromSecNSec (const int32_t sec, const int32_t nsec) |
| Make Duration from seconds and nanoseconds. | |
| static Duration | FromNSec (const int64_t nsec) |
| Make Duration from nanoseconds. | |
| static Duration | FromSec (const double sec) |
| Make Duration from seconds. | |
Time duration.
This is similar (and binary compatible) to ros::Duration and rpclpp::Duration. While some of the constructors and operators can throw, it also provides non-throwing methods to manipulate the duration.
|
static |
Make Duration from seconds and nanoseconds.
References Duration().
|
static |
Make Duration from nanoseconds.
| [in] | nsec | Duration value nanoseconds |
References Duration().
|
static |
| bool fpsdk::common::time::Duration::SetSecNSec | ( | const int32_t | sec, |
| const int32_t | nsec ) |
| bool fpsdk::common::time::Duration::SetNSec | ( | const int64_t | nsec | ) |
Set duration from nanoseconds.
| [in] | nsec | Duration value nanoseconds |
| bool fpsdk::common::time::Duration::SetSec | ( | const double | sec | ) |
Set duration from seconds.
| [in] | sec | Duration value seconds |
| int64_t fpsdk::common::time::Duration::GetNSec | ( | ) | const |
Get duration as nanoseconds.
| double fpsdk::common::time::Duration::GetSec | ( | const int | prec = 9 | ) | const |
Get duration as seconds.
| [in] | prec | Round the seconds to this many fractional digits (0-9) |
| std::chrono::milliseconds fpsdk::common::time::Duration::GetChronoMilli | ( | ) | const |
Get duration as std::chrono::milliseconds.
| std::chrono::nanoseconds fpsdk::common::time::Duration::GetChronoNano | ( | ) | const |
Get duration as std::chrono::nanoseconds.
| bool fpsdk::common::time::Duration::IsZero | ( | ) | const |
Check if duration is zero.
| std::string fpsdk::common::time::Duration::Stringify | ( | const int | prec = 3 | ) | const |
Stringify duration, for debugging.
| [in] | prec | Number of fractional digits for the seconds (0-9) |
| bool fpsdk::common::time::Duration::AddDur | ( | const Duration & | dur | ) |
Add duration to duration.
| [in] | dur | Duration to add |
References Duration().
| bool fpsdk::common::time::Duration::AddNSec | ( | const int64_t | nsec | ) |
Add nanoseconds to duration.
| [in] | nsec | Nanoseconds to add |
| bool fpsdk::common::time::Duration::AddSec | ( | const double | sec | ) |
Add seconds to duration.
| [in] | sec | Seconds to add |
| bool fpsdk::common::time::Duration::SubDur | ( | const Duration & | dur | ) |
Substract duration from duration.
| [in] | dur | Duration to substract |
References Duration().
| bool fpsdk::common::time::Duration::SubNSec | ( | const int64_t | nsec | ) |
Substract nanoseconds from duration.
| [in] | nsec | Nanoseconds to substract |
| bool fpsdk::common::time::Duration::SubSec | ( | const double | sec | ) |
Substract seconds from duration.
| [in] | sec | Seconds to substract |
| bool fpsdk::common::time::Duration::Scale | ( | const double | sec | ) |
Scale (multiply) duration.
| [in] | sec | Scale factor |
| int32_t fpsdk::common::time::Duration::sec_ |
| int32_t fpsdk::common::time::Duration::nsec_ |