53 int id1 = r1->second, id2 = r2->second;
57 double duration_h = std::chrono::duration_cast<std::chrono::hours>(
TimeRecord[id1] -
TimeRecord[id2]).count();
58 double duration_m = std::chrono::duration_cast<std::chrono::minutes>(
TimeRecord[id1] -
TimeRecord[id2]).count();
59 double duration_s = std::chrono::duration_cast<std::chrono::seconds>(
TimeRecord[id1] -
TimeRecord[id2]).count();
60 double duration_ms = std::chrono::duration_cast<std::chrono::milliseconds>(
TimeRecord[id1] -
TimeRecord[id2]).count();
61 double duration_us = std::chrono::duration_cast<std::chrono::microseconds>(
TimeRecord[id1] -
TimeRecord[id2]).count();
62 int duration_h_int = (int)duration_h;
63 int duration_m_int = (int)duration_m;
64 int duration_s_int = (int)duration_s;
65 int duration_ms_int = (int)duration_ms;
66 if (duration_ms_int == 0)
68 MSGUser()->MSG(
MSGLevel::INFO,
"Duration between ", Name1,
" and ", Name2,
" : ", duration_us,
" us");
70 else if (duration_s_int == 0)
72 MSGUser()->MSG(
MSGLevel::INFO,
"Duration between ", Name1,
" and ", Name2,
" : ", duration_ms,
" ms");
74 else if (duration_m_int == 0)
76 duration_ms_int = duration_ms_int % 1000;
77 double duration_double = duration_s + duration_ms_int / 1000.0;
78 MSGUser()->MSG(
MSGLevel::INFO,
"Duration between ", Name1,
" and ", Name2,
" : ", duration_double,
" s");
80 else if (duration_h_int == 0)
82 duration_s_int = duration_s_int % 60;
83 MSGUser()->MSG(
MSGLevel::INFO,
"Duration between ", Name1,
" and ", Name2,
" : ", duration_m_int,
" m ", duration_s_int,
" s");
87 duration_m_int = duration_m_int % 60;
88 MSGUser()->MSG(
MSGLevel::INFO,
"Duration between ", Name1,
" and ", Name2,
" : ", duration_h_int,
" h ", duration_m_int,
" m");