Public Member Functions | Private Attributes | List of all members
rs2rosinternal::Rate Class Reference

Class to help run loops at a desired frequency. More...

#include <rate.h>

Public Member Functions

Duration cycleTime () const
 Get the actual run time of a cycle from start to sleep. More...
 
Duration expectedCycleTime () const
 Get the expected cycle time – one over the frequency passed in to the constructor. More...
 
 Rate (double frequency)
 Constructor, creates a Rate. More...
 
 Rate (const Duration &)
 
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...
 

Private Attributes

Duration actual_cycle_time_
 
Duration expected_cycle_time_
 
Time start_
 

Detailed Description

Class to help run loops at a desired frequency.

Definition at line 51 of file rate.h.

Constructor & Destructor Documentation

rs2rosinternal::Rate::Rate ( double  frequency)

Constructor, creates a Rate.

Parameters
frequencyThe desired rate to run at in Hz

Definition at line 42 of file rate.cpp.

rs2rosinternal::Rate::Rate ( const Duration d)
explicit

Definition at line 48 of file rate.cpp.

Member Function Documentation

Duration rs2rosinternal::Rate::cycleTime ( ) const

Get the actual run time of a cycle from start to sleep.

Returns
The runtime of the cycle

Definition at line 98 of file rate.cpp.

Duration rs2rosinternal::Rate::expectedCycleTime ( ) const
inline

Get the expected cycle time – one over the frequency passed in to the constructor.

Definition at line 81 of file rate.h.

void rs2rosinternal::Rate::reset ( void  )

Sets the start time for the rate to now.

Definition at line 93 of file rate.cpp.

bool rs2rosinternal::Rate::sleep ( )

Sleeps for any leftover time in a cycle. Calculated from the last time sleep, reset, or the constructor was called.

Returns
True if the desired rate was met for the cycle, false otherwise.

Definition at line 56 of file rate.cpp.

Member Data Documentation

Duration rs2rosinternal::Rate::actual_cycle_time_
private

Definition at line 85 of file rate.h.

Duration rs2rosinternal::Rate::expected_cycle_time_
private

Definition at line 85 of file rate.h.

Time rs2rosinternal::Rate::start_
private

Definition at line 84 of file rate.h.


The documentation for this class was generated from the following files:


librealsense2
Author(s): Sergey Dorodnicov , Doron Hirshberg , Mark Horn , Reagan Lopez , Itay Carpis
autogenerated on Mon May 3 2021 02:50:41