UltraGrid
UltraGrid Low-Latency High-Resolution Transmission System
Loading...
Searching...
No Matches
timed_message< log_level > Struct Template Reference

#include <timed_message.h>

Inheritance diagram for timed_message< log_level >:
Inheritance graph
Collaboration diagram for timed_message< log_level >:
Collaboration graph

Public Member Functions

 timed_message (double sec=5)
 
void print (const char *str)
 

Private Attributes

std::chrono::steady_clock::time_point m_last_displayed
 
double m_sec
 

Detailed Description

template<int log_level = LOG_LEVEL_INFO>
struct timed_message< log_level >

Simple tool to display a warning message at most in some amount of seconds (default 5).

Definition at line 50 of file timed_message.h.

Constructor & Destructor Documentation

◆ timed_message()

template<int log_level = LOG_LEVEL_INFO>
timed_message< log_level >::timed_message ( double sec = 5)
inline

Definition at line 51 of file timed_message.h.

51: m_last_displayed(std::chrono::steady_clock::now() - std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::duration<double>(sec))), m_sec(sec) {}
std::chrono::steady_clock::time_point m_last_displayed

Member Function Documentation

◆ print()

template<int log_level = LOG_LEVEL_INFO>
void timed_message< log_level >::print ( const char * str)
inline

Definition at line 52 of file timed_message.h.

52 {
53 auto t = std::chrono::steady_clock::now();
54
55 if (std::chrono::duration_cast<std::chrono::duration<double>>(t - m_last_displayed).count() > m_sec) {
56 LOG(log_level) << str;
58 }
59
60 }
#define LOG(level)
Definition debug.h:313
int count
Definition hd-rum.c:44
volatile int log_level
Definition debug.cpp:65

References count, LOG, log_level, timed_message< log_level >::m_last_displayed, and timed_message< log_level >::m_sec.

Referenced by decode_video_frame().

Member Data Documentation

◆ m_last_displayed

template<int log_level = LOG_LEVEL_INFO>
std::chrono::steady_clock::time_point timed_message< log_level >::m_last_displayed
private

Definition at line 62 of file timed_message.h.

Referenced by timed_message< log_level >::print().

◆ m_sec

template<int log_level = LOG_LEVEL_INFO>
double timed_message< log_level >::m_sec
private

Definition at line 63 of file timed_message.h.

Referenced by timed_message< log_level >::print().


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