diff options
Diffstat (limited to 'Libraries/LibCore/CElapsedTimer.cpp')
-rw-r--r-- | Libraries/LibCore/CElapsedTimer.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/Libraries/LibCore/CElapsedTimer.cpp b/Libraries/LibCore/CElapsedTimer.cpp new file mode 100644 index 0000000000..4e8902d348 --- /dev/null +++ b/Libraries/LibCore/CElapsedTimer.cpp @@ -0,0 +1,20 @@ +#include <AK/Assertions.h> +#include <AK/Time.h> +#include <LibCore/CElapsedTimer.h> +#include <sys/time.h> + +void CElapsedTimer::start() +{ + m_valid = true; + gettimeofday(&m_start_time, nullptr); +} + +int CElapsedTimer::elapsed() const +{ + ASSERT(is_valid()); + struct timeval now; + gettimeofday(&now, nullptr); + struct timeval diff; + timeval_sub(now, m_start_time, diff); + return diff.tv_sec * 1000 + diff.tv_usec / 1000; +} |