Files
comaps/3party/succinct/perftest/perftest_common.hpp
Konstantin Pastbin e3e4a1985a Organic Maps sources as of 02.04.2025 (fad26bbf22ac3da75e01e62aa01e5c8e11861005)
To expand with full Organic Maps and Maps.ME commits history run:
  git remote add om-historic [om-historic.git repo url]
  git fetch --tags om-historic
  git replace squashed-history historic-commits
2025-05-08 21:10:51 +07:00

34 lines
817 B
C++

#pragma once
#include <boost/date_time/posix_time/posix_time_types.hpp>
namespace succinct {
namespace detail {
struct timer {
timer()
: m_tick(boost::posix_time::microsec_clock::universal_time())
, m_done(false)
{}
bool done() { return m_done; }
void report(double& elapsed) {
elapsed = (double)(boost::posix_time::microsec_clock::universal_time() - m_tick).total_microseconds();
m_done = true;
}
const std::string m_msg;
boost::posix_time::ptime m_tick;
bool m_done;
};
}
}
#define SUCCINCT_TIMEIT(elapsed) \
for (::succinct::detail::timer SUCCINCT_TIMEIT_timer; \
!SUCCINCT_TIMEIT_timer.done(); \
SUCCINCT_TIMEIT_timer.report(elapsed)) \
/**/