* autoload.cc (timeGetDevCaps): Define new autoload function.

(timeGetTime): Ditto.
(timeBeginPeriod): Ditto.
(timeEndPeriod): Ditto.
* hires.h (hires_base): New class.  Renamed from hires.
(hires_us): New class.
(hires_ms): New class.
* strace.cc (strace::microseconds): Use hires_us class.
* times.cc (gettimeofday): Use hires-ms class.
(hires_us::prime): Renamed from hires::prime.
(hires_us::usecs): Renamed from hires:usecs.
(hires_ms::prime): New method.
(hires_ms::usecs): New method.
(hires_ms::~hires_ms): New destructor.
This commit is contained in:
Christopher Faylor
2002-06-07 03:44:33 +00:00
parent b841df7954
commit 9d0efbb3ae
5 changed files with 91 additions and 8 deletions

View File

@@ -11,14 +11,37 @@ details. */
#ifndef __HIRES_H__
#define __HIRES_H__
class hires
#include <mmsystem.h>
class hires_base
{
protected:
int inited;
virtual void prime () {}
public:
virtual LONGLONG usecs (bool justdelta) {return 0LL;}
virtual ~hires_base () {}
};
class hires_us : hires_base
{
LARGE_INTEGER primed_ft;
LARGE_INTEGER primed_pc;
double freq;
void prime () __attribute__ ((regparm (1)));
void prime ();
public:
LONGLONG usecs (bool justdelta) __attribute__ ((regparm (2)));
LONGLONG usecs (bool justdelta);
};
class hires_ms : hires_base
{
DWORD initime_ms;
LARGE_INTEGER initime_us;
UINT minperiod;
void prime ();
public:
LONGLONG usecs (bool justdelta);
~hires_ms ();
};
#endif /*__HIRES_H__*/