UltraGrid
UltraGrid Low-Latency High-Resolution Transmission System
Loading...
Searching...
No Matches
Timer_util Class Reference

This class implements timer utils. More...

#include <timer-util.h>

Collaboration diagram for Timer_util:
Collaboration graph

Public Member Functions

double elapsed_time () const
 
double elapsed_time_ms () const
 
long elapsed_time_us () const
 
void end ()
 
void start ()
 

Private Attributes

std::chrono::time_point< std::chrono::steady_clock > end_time
 
std::chrono::time_point< std::chrono::steady_clock > start_time
 

Detailed Description

This class implements timer utils.

Definition at line 25 of file timer-util.h.

Member Function Documentation

◆ elapsed_time()

double Timer_util::elapsed_time ( ) const
inline

Computes time elapsed between start and end in seconds (as a real value)

Returns
Elapsed seconds as double value

Definition at line 46 of file timer-util.h.

47 {
48 return std::chrono::duration_cast<std::chrono::duration<double>>(end_time - start_time).count();
49 }
std::chrono::time_point< std::chrono::steady_clock > end_time
Definition timer-util.h:29
std::chrono::time_point< std::chrono::steady_clock > start_time
Definition timer-util.h:28
int count
Definition hd-rum.c:44

References count, end_time, and start_time.

Referenced by demo().

◆ elapsed_time_ms()

double Timer_util::elapsed_time_ms ( ) const
inline

Definition at line 52 of file timer-util.h.

53 {
54 return std::chrono::duration_cast<std::chrono::duration<double, std::milli>>(end_time - start_time).count();
55 }

References count, end_time, and start_time.

Referenced by LDGM_session_cpu::decode_frame(), LDGM_session_gpu::decode_frame(), and LDGM_session::encode_frame().

◆ elapsed_time_us()

long Timer_util::elapsed_time_us ( ) const
inline

Definition at line 58 of file timer-util.h.

59 {
60 return std::chrono::duration_cast<std::chrono::duration<long, std::micro>>(end_time - start_time).count();
61 }

References count, end_time, and start_time.

Referenced by LDGM_session::encode_hdr_frame().

◆ end()

void Timer_util::end ( )
inline

Definition at line 36 of file timer-util.h.

36 {
37 end_time = std::chrono::steady_clock::now();
38 }

References end_time.

Referenced by LDGM_session_cpu::decode_frame(), LDGM_session_gpu::decode_frame(), demo(), LDGM_session::encode_frame(), and LDGM_session::encode_hdr_frame().

◆ start()

void Timer_util::start ( )
inline

Definition at line 32 of file timer-util.h.

32 {
33 start_time = std::chrono::steady_clock::now();
34 }

References start_time.

Referenced by LDGM_session_cpu::decode_frame(), LDGM_session_gpu::decode_frame(), demo(), LDGM_session::encode_frame(), and LDGM_session::encode_hdr_frame().

Member Data Documentation

◆ end_time

std::chrono::time_point<std::chrono::steady_clock> Timer_util::end_time
private

Definition at line 29 of file timer-util.h.

Referenced by elapsed_time(), elapsed_time_ms(), elapsed_time_us(), and end().

◆ start_time

std::chrono::time_point<std::chrono::steady_clock> Timer_util::start_time
private

Definition at line 28 of file timer-util.h.

Referenced by elapsed_time(), elapsed_time_ms(), elapsed_time_us(), and start().


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