2019-04-01 23:03:32 +03:00
|
|
|
#include <AK/Assertions.h>
|
2019-05-18 03:00:01 +03:00
|
|
|
#include <AK/Time.h>
|
2019-05-28 12:53:16 +03:00
|
|
|
#include <LibCore/CElapsedTimer.h>
|
2019-03-27 03:31:53 +03:00
|
|
|
#include <sys/time.h>
|
2019-03-25 03:42:15 +03:00
|
|
|
|
2019-04-10 17:14:44 +03:00
|
|
|
void CElapsedTimer::start()
|
2019-03-25 03:42:15 +03:00
|
|
|
{
|
2019-04-01 23:03:32 +03:00
|
|
|
m_valid = true;
|
2019-03-25 03:42:15 +03:00
|
|
|
gettimeofday(&m_start_time, nullptr);
|
|
|
|
}
|
|
|
|
|
2019-04-10 17:14:44 +03:00
|
|
|
int CElapsedTimer::elapsed() const
|
2019-03-25 03:42:15 +03:00
|
|
|
{
|
2019-04-01 23:03:32 +03:00
|
|
|
ASSERT(is_valid());
|
2019-03-25 03:42:15 +03:00
|
|
|
struct timeval now;
|
|
|
|
gettimeofday(&now, nullptr);
|
|
|
|
struct timeval diff;
|
2019-06-06 19:02:28 +03:00
|
|
|
timeval_sub(now, m_start_time, diff);
|
2019-03-25 03:42:15 +03:00
|
|
|
return diff.tv_sec * 1000 + diff.tv_usec / 1000;
|
|
|
|
}
|