Class to help run loops at a desired frequency. This version always uses wall-clock time. More...
#include <rate.h>
Public Member Functions | |
WallDuration | cycleTime () const |
Get the actual run time of a cycle from start to sleep. More... | |
WallDuration | expectedCycleTime () const |
Get the expected cycle time – one over the frequency passed in to the constructor. More... | |
void | reset () |
Sets the start time for the rate to now. More... | |
bool | sleep () |
Sleeps for any leftover time in a cycle. Calculated from the last time sleep, reset, or the constructor was called. More... | |
WallRate (double frequency) | |
Constructor, creates a Rate. More... | |
WallRate (const Duration &) | |
Private Attributes | |
WallDuration | actual_cycle_time_ |
WallDuration | expected_cycle_time_ |
WallTime | start_ |
Class to help run loops at a desired frequency. This version always uses wall-clock time.
rs2rosinternal::WallRate::WallRate | ( | double | frequency | ) |
|
explicit |
WallDuration rs2rosinternal::WallRate::cycleTime | ( | ) | const |
|
inline |
bool rs2rosinternal::WallRate::sleep | ( | ) |
Sleeps for any leftover time in a cycle. Calculated from the last time sleep, reset, or the constructor was called.
|
private |
|
private |