| 122 | } |
| 123 | |
| 124 | void Timer::stop() { |
| 125 | OKVIS_ASSERT_TRUE(TimerException, m_timing, "The timer " + Timing::getTag(m_handle) + " is not running"); |
| 126 | double dt; |
| 127 | #ifdef OKVIS_USE_HIGH_PERF_TIMER |
| 128 | LARGE_INTEGER end; |
| 129 | QueryPerformanceCounter(&end); |
| 130 | dt = static_cast<double>(end.QuadPart - m_time.QuadPart) * Timing::instance().m_clockPeriod; |
| 131 | #else |
| 132 | boost::posix_time::ptime now = boost::posix_time::microsec_clock::local_time(); |
| 133 | boost::posix_time::time_duration t = now - m_time; |
| 134 | dt = (static_cast<double>(t.total_nanoseconds()) * 1e-9); |
| 135 | #endif |
| 136 | Timing::instance().addTime(m_handle, dt); |
| 137 | m_timing = false; |
| 138 | } |
| 139 | |
| 140 | bool Timer::isTiming() { return m_timing; } |
| 141 |
no test coverage detected