xref: /aosp_15_r20/hardware/interfaces/tv/tuner/aidl/default/Timer.h (revision 4d7e907c777eeecc4c5bd7cf640a754fac206ff7)
1*4d7e907cSAndroid Build Coastguard Worker #include <chrono>
2*4d7e907cSAndroid Build Coastguard Worker using namespace std::chrono;
3*4d7e907cSAndroid Build Coastguard Worker class Timer {
4*4d7e907cSAndroid Build Coastguard Worker   public:
Timer()5*4d7e907cSAndroid Build Coastguard Worker     Timer() { start_time = steady_clock::now(); }
6*4d7e907cSAndroid Build Coastguard Worker 
~Timer()7*4d7e907cSAndroid Build Coastguard Worker     ~Timer() { stop_time = steady_clock::now(); }
8*4d7e907cSAndroid Build Coastguard Worker 
get_elapsed_time_ms()9*4d7e907cSAndroid Build Coastguard Worker     double get_elapsed_time_ms() {
10*4d7e907cSAndroid Build Coastguard Worker         auto current_time = std::chrono::steady_clock::now();
11*4d7e907cSAndroid Build Coastguard Worker         return duration_cast<milliseconds>(current_time - start_time).count();
12*4d7e907cSAndroid Build Coastguard Worker     }
13*4d7e907cSAndroid Build Coastguard Worker 
14*4d7e907cSAndroid Build Coastguard Worker   private:
15*4d7e907cSAndroid Build Coastguard Worker     time_point<steady_clock> start_time;
16*4d7e907cSAndroid Build Coastguard Worker     time_point<steady_clock> stop_time;
17*4d7e907cSAndroid Build Coastguard Worker };