#include <windows.h>
MillisecondTime MillisecondTime::current(){
- static class Cached
- {
- LONGLONG m_frequency;
- LONGLONG m_base;
+ static class Cached
+ {
+ LONGLONG m_frequency;
+ LONGLONG m_base;
public:
- Cached(){
- QueryPerformanceFrequency( (LARGE_INTEGER *) &m_frequency );
- QueryPerformanceCounter( (LARGE_INTEGER *) &m_base );
- }
- LONGLONG frequency(){
- return m_frequency;
- }
- LONGLONG base(){
- return m_base;
- }
- } cached;
-
- if ( cached.frequency() > 0 ) {
- LONGLONG count;
- QueryPerformanceCounter( (LARGE_INTEGER *) &count );
- return time_from_ticks( count - cached.base(), cached.frequency() );
- }
- else
- {
+ Cached(){
+ QueryPerformanceFrequency( (LARGE_INTEGER *) &m_frequency );
+ QueryPerformanceCounter( (LARGE_INTEGER *) &m_base );
+ }
+ LONGLONG frequency(){
+ return m_frequency;
+ }
+ LONGLONG base(){
+ return m_base;
+ }
+ } cached;
+
+ if ( cached.frequency() > 0 ) {
+ LONGLONG count;
+ QueryPerformanceCounter( (LARGE_INTEGER *) &count );
+ return time_from_ticks( count - cached.base(), cached.frequency() );
+ }
+ else
+ {
#if 1
- return MillisecondTime();
+ return MillisecondTime();
#else
- return time_from_ticks( timeGetTime(), 1000 );
+ return time_from_ticks( timeGetTime(), 1000 );
#endif
- }
+ }
}
#include <time.h>
#include "sys/time.h"
-MillisecondTime MillisecondTime::current(){
- static class Cached
- {
- time_t m_base;
-public:
- Cached(){
- time( &m_base );
- }
- time_t base(){
- return m_base;
- }
- } cached;
-
- timeval time;
- gettimeofday( &time, 0 );
- return MillisecondTime( ( time.tv_sec - cached.base() ) * 1000 + time.tv_usec / 1000 );
+MillisecondTime MillisecondTime::current()
+{
+ static class Cached {
+ time_t m_base;
+ public:
+ Cached()
+ {
+ time(&m_base);
+ }
+
+ time_t base()
+ {
+ return m_base;
+ }
+ } cached;
+
+ timeval time;
+ gettimeofday(&time, 0);
+ return MillisecondTime((time.tv_sec - cached.base()) * 1000 + time.tv_usec / 1000);
}
-
#else
#include <ctime>
MillisecondTime MillisecondTime::current(){
- return time_from_ticks<std::clock_t>( std::clock(), CLOCKS_PER_SEC );
+ return time_from_ticks<std::clock_t>( std::clock(), CLOCKS_PER_SEC );
}