#ifndef CPP_START_STOP_WATCH_H #define CPP_START_STOP_WATCH_H #include class StopWatch { private: std::chrono::time_point mBegin; public: StopWatch() : mBegin(std::chrono::high_resolution_clock::now()) { } void reset() { mBegin = std::chrono::high_resolution_clock::now(); } template int64_t elapsed() const { return std::chrono::duration_cast(std::chrono::high_resolution_clock::now() - mBegin) .count(); } }; #endif //CPP_START_STOP_WATCH_H