Electroneum
Loading...
Searching...
No Matches
perf_timer.h File Reference
#include <string>
#include <stdio.h>
#include <memory>
#include "misc_log_ex.h"
Include dependency graph for perf_timer.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  tools::PerformanceTimer
class  tools::LoggingPerformanceTimer

Namespaces

namespace  tools
 Various Tools.

Macros

#define PERF_TIMER_UNIT(name, unit)
#define PERF_TIMER_UNIT_L(name, unit, l)
#define PERF_TIMER(name)
#define PERF_TIMER_L(name, l)
#define PERF_TIMER_START_UNIT(name, unit)
#define PERF_TIMER_START(name)
#define PERF_TIMER_STOP(name)
#define PERF_TIMER_PAUSE(name)
#define PERF_TIMER_RESUME(name)

Functions

uint64_t tools::get_tick_count ()
uint64_t tools::get_ticks_per_ns ()
uint64_t tools::ticks_to_ns (uint64_t ticks)
void tools::set_performance_timer_log_level (el::Level level)

Macro Definition Documentation

◆ PERF_TIMER

#define PERF_TIMER ( name)
Value:
PERF_TIMER_UNIT(name, 1000000)
#define PERF_TIMER_UNIT(name, unit)
Definition perf_timer.h:80

Definition at line 82 of file perf_timer.h.

◆ PERF_TIMER_L

#define PERF_TIMER_L ( name,
l )
Value:
PERF_TIMER_UNIT_L(name, 1000000, l)
#define PERF_TIMER_UNIT_L(name, unit, l)
Definition perf_timer.h:81

Definition at line 83 of file perf_timer.h.

◆ PERF_TIMER_PAUSE

#define PERF_TIMER_PAUSE ( name)
Value:
pt_##name->pause()

Definition at line 87 of file perf_timer.h.

◆ PERF_TIMER_RESUME

#define PERF_TIMER_RESUME ( name)
Value:
pt_##name->resume()

Definition at line 88 of file perf_timer.h.

◆ PERF_TIMER_START

#define PERF_TIMER_START ( name)
Value:
PERF_TIMER_START_UNIT(name, 1000000)
#define PERF_TIMER_START_UNIT(name, unit)
Definition perf_timer.h:84

Definition at line 85 of file perf_timer.h.

◆ PERF_TIMER_START_UNIT

#define PERF_TIMER_START_UNIT ( name,
unit )
Value:
std::unique_ptr<tools::LoggingPerformanceTimer> pt_##name(new tools::LoggingPerformanceTimer(#name, "perf." ELECTRONEUM_DEFAULT_LOG_CATEGORY, unit, el::Level::Info))
#define ELECTRONEUM_DEFAULT_LOG_CATEGORY
Definition misc_log_ex.h:36
@ Info
Mainly useful to represent current progress of application.

Definition at line 84 of file perf_timer.h.

◆ PERF_TIMER_STOP

#define PERF_TIMER_STOP ( name)
Value:
do { pt_##name.reset(NULL); } while(0)

Definition at line 86 of file perf_timer.h.

◆ PERF_TIMER_UNIT

#define PERF_TIMER_UNIT ( name,
unit )
Value:

Definition at line 80 of file perf_timer.h.

◆ PERF_TIMER_UNIT_L

#define PERF_TIMER_UNIT_L ( name,
unit,
l )
Value:

Definition at line 81 of file perf_timer.h.