1
0
Fork 0
mirror of https://github.com/polybar/polybar.git synced 2024-11-11 13:50:56 -05:00
polybar/include/debug.hpp

23 lines
590 B
C++
Raw Normal View History

2016-06-14 23:32:35 -04:00
#ifdef DEBUG
#pragma once
#include <iostream>
2016-11-20 17:04:31 -05:00
#include <chrono>
2016-06-14 23:32:35 -04:00
template <class T>
void benchmark_execution_speed(const T& expr) noexcept {
auto start = std::chrono::high_resolution_clock::now();
expr();
auto finish = std::chrono::high_resolution_clock::now();
std::cout << "execution speed: "
<< std::chrono::duration_cast<std::chrono::milliseconds>(finish - start).count() << "ms"
<< std::endl;
}
template <class T>
void benchmark_memory_usage(const T& object) noexcept {
std::cout << "memory usage: " << sizeof(object) << "b" << std::endl;
}
#endif