Changed interface
This commit is contained in:
parent
8c7b15e524
commit
a31d7d6ff8
|
@ -24,6 +24,9 @@
|
||||||
History
|
History
|
||||||
|
|
||||||
$Log: not supported by cvs2svn $
|
$Log: not supported by cvs2svn $
|
||||||
|
Revision 1.4 2004/07/30 12:44:14 ponchio
|
||||||
|
#ifdef corrected
|
||||||
|
|
||||||
Revision 1.3 2004/07/20 14:03:47 ponchio
|
Revision 1.3 2004/07/20 14:03:47 ponchio
|
||||||
Changed interface.
|
Changed interface.
|
||||||
|
|
||||||
|
@ -38,28 +41,32 @@ First draft created.
|
||||||
#include "stopwatch.h"
|
#include "stopwatch.h"
|
||||||
|
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
StopWatch::StopWatch(): elapsed(0) {
|
Watch::Watch(): elapsed(0) {
|
||||||
QueryPerformanceFrequency(&freq);
|
QueryPerformanceFrequency(&freq);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
double StopWatch::Start(void) {
|
void Watch::Start(void) {
|
||||||
QueryPerformanceCounter(&tstart);
|
QueryPerformanceCounter(&tstart);
|
||||||
return elapsed;
|
elapsed = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
double StopWatch::Pause() {
|
double Watch::Pause() {
|
||||||
QueryPerformanceCounter(&tend);
|
QueryPerformanceCounter(&tend);
|
||||||
elapsed += Diff();
|
elapsed += Diff();
|
||||||
return elapsed;
|
return elapsed;
|
||||||
}
|
}
|
||||||
|
|
||||||
double StopWatch::Elapsed() {
|
void Watch::Continue() {
|
||||||
|
QueryPerformanceCounter(&tstart);
|
||||||
|
}
|
||||||
|
|
||||||
|
double Watch::Time() {
|
||||||
QueryPerformanceCounter(&tend);
|
QueryPerformanceCounter(&tend);
|
||||||
return elapsed + Diff();
|
return elapsed + Diff();
|
||||||
}
|
}
|
||||||
|
|
||||||
double StopWatch::Diff() {
|
double Watch::Diff() {
|
||||||
return ((double)tend.QuadPart -
|
return ((double)tend.QuadPart -
|
||||||
(double)tstart.QuadPart)/
|
(double)tstart.QuadPart)/
|
||||||
((double)freq.QuadPart);
|
((double)freq.QuadPart);
|
||||||
|
@ -67,41 +74,40 @@ double StopWatch::Diff() {
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
StopWatch::StopWatch(): elapsed() {}
|
Watch::Watch(): elapsed() {}
|
||||||
|
|
||||||
double StopWatch::Start() {
|
void Watch::Start() {
|
||||||
gettimeofday(&tstart, &tz);
|
gettimeofday(&tstart, &tz);
|
||||||
return elapsed;
|
elapsed = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
double StopWatch::Pause() {
|
double Watch::Pause() {
|
||||||
gettimeofday(&tend, &tz);
|
gettimeofday(&tend, &tz);
|
||||||
elapsed += Diff();
|
elapsed += Diff();
|
||||||
return elapsed;
|
return elapsed;
|
||||||
}
|
}
|
||||||
|
|
||||||
double StopWatch::Elapsed() {
|
void Watch::Continue() {
|
||||||
|
QueryPerformanceCounter(&tstart);
|
||||||
|
}
|
||||||
|
|
||||||
|
double Watch::Time() {
|
||||||
gettimeofday(&tend, &tz);
|
gettimeofday(&tend, &tz);
|
||||||
return elapsed + Diff();
|
return elapsed + Diff();
|
||||||
}
|
}
|
||||||
|
|
||||||
double StopWatch::Diff() {
|
double Watch::Diff() {
|
||||||
double t1 = (double)tstart.tv_sec + (double)tstart.tv_usec/(1000*1000);
|
double t1 = (double)tstart.tv_sec + (double)tstart.tv_usec/(1000*1000);
|
||||||
double t2 = (double)tend.tv_sec + (double)tend.tv_usec/(1000*1000);
|
double t2 = (double)tend.tv_sec + (double)tend.tv_usec/(1000*1000);
|
||||||
return t2 - t1;
|
return t2 - t1;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void StopWatch::Restart(void) {
|
void Watch::Reset() {
|
||||||
elapsed = 0;
|
|
||||||
Start();
|
|
||||||
}
|
|
||||||
|
|
||||||
void StopWatch::Reset() {
|
|
||||||
elapsed = 0;
|
elapsed = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int StopWatch::Usec() {
|
int Watch::Usec() {
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
return 0;
|
return 0;
|
||||||
#else
|
#else
|
||||||
|
|
|
@ -24,6 +24,9 @@
|
||||||
History
|
History
|
||||||
|
|
||||||
$Log: not supported by cvs2svn $
|
$Log: not supported by cvs2svn $
|
||||||
|
Revision 1.3 2004/07/20 14:03:47 ponchio
|
||||||
|
Changed interface.
|
||||||
|
|
||||||
Revision 1.2 2004/07/05 15:49:39 ponchio
|
Revision 1.2 2004/07/05 15:49:39 ponchio
|
||||||
Windows (DevCpp, mingw) port.
|
Windows (DevCpp, mingw) port.
|
||||||
|
|
||||||
|
@ -40,14 +43,14 @@ First draft created.
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
class StopWatch {
|
class Watch {
|
||||||
public:
|
public:
|
||||||
StopWatch();
|
Watch();
|
||||||
double Start();
|
void Start();
|
||||||
double Pause();
|
double Pause();
|
||||||
void Restart();
|
void Continue();
|
||||||
void Reset();
|
void Reset();
|
||||||
double Elapsed();
|
double Time();
|
||||||
int Usec();
|
int Usec();
|
||||||
private:
|
private:
|
||||||
double Diff();
|
double Diff();
|
||||||
|
|
Loading…
Reference in New Issue