Class real_time_tools::Timer¶
-
class real_time_tools::Timer¶
The timer class is a simple time measurement class that measure between tic and tac and with a memory buffer of a certain size.
Public Functions
-
Timer()¶
timer constructor
-
void tic()¶
tic measures the time when it is called.
This is to be used with the tac method that will return the time elapsed between tic and tac.
-
double tac()¶
tac is to be used after tic has been called.
-
double tac_tic()¶
this is like a tac() followed by a tic(), making sure the previous tac_time becomes the tic_time
-
void log_time_interval(double time_interval)¶
Save the time interval measured.
- Parameters
time_interval –
-
void dump_measurements(std::string file_name) const¶
IOSTREAM functions.
dump_tic_tac_measurements writes in a file the time elapsed between every tick
- Parameters
file_name – is the path to the file.
-
void print_statistics() const¶
print_statistics display in real time the statistics of the time measurements acquiered so far.
-
inline void set_memory_size(const unsigned memory_buffer_size)¶
SETTERS.
set_memory_size sets the buffer size. It resets all value of the buffer to zero. !! WARNING non real time method. !!
- Parameters
memory_buffer_size – is the size use to reset the size of the
-
inline void set_name(std::string name)¶
set_name modify the name of the object for display purposes.
- Parameters
name – is the new name of the object.
-
inline double get_min_elapsed_sec() const¶
GETTERS.
get_min_elapsed_sec
- Returns
a copy of the minimum elapsed times
-
inline double get_max_elapsed_sec() const¶
get_max_elapsed_sec
- Returns
a copy of the maximum elapsed times
-
inline double get_avg_elapsed_sec() const¶
get_avg_elapsed_sec
- Returns
a copy of the average elapsed time
-
inline double get_std_dev_elapsed_sec() const¶
get_std_dev_elapsed_sec
- Returns
a copy of the standard deviation of the elapsed times
Public Static Functions
-
static double get_current_time_sec()¶
Some utilities.
get_current_time_sec gives the current time in double and in seconds
- Returns
-
static inline double get_current_time_ms()¶
get_current_time_ms gives the current time in double and in milli seconds
- Returns
-
static int sleep_microseconds(int sleep_duration_us)¶
puts the current thread to sleep for the duration of “sleep_duration_us” micro-seconds.
- Parameters
sleep_time_us – is the sleeping duration asked in micro-seconds.
- Returns
0 on success, error code otherwise
-
static void sleep_sec(const double &sleep_time_sec)¶
sleep_sec puts the current thread to sleep for the duration of “sleep_time_sec” seconds.
- Parameters
sleep_time_sec – is the sleeping duration asked in seconds.
-
static inline void sleep_ms(const double &sleep_time_ms)¶
sleep_ms puts the current thread to sleep for the duration of “sleep_time_sec” seconds.
- Parameters
sleep_time_ms – is the sleeping duration asked in seconds.
-
static void sleep_until_sec(const double &date_sec)¶
sleep_until_sec puts the threads to sleep until the date “date_sec” is reached.
- Parameters
date_sec – is the date until when to sleep in seconds.
-
static void timespec_add_sec(struct timespec &date_spec, const double duration_sec)¶
timespec_add_sec posix type of a date in time.
- Parameters
date_spec – is the date to be changed
duration_sec – the duration to be added to “t” in seconds
-
static void sec_to_timespec(double date_sec, struct timespec &date_spec)¶
sec_to_timespec converts a double representing the time in seconds to a struct timespec.
- Parameters
date_sec – [in] is the time in sec to be converted.
date_spec – [out] is the converted structure.
-
static std::string get_current_date_str()¶
get_current_date_str get the current date and format it in a string with “year_month_day_hour_minute_sec”
-
Timer()¶