fixed timer delay test

This commit is contained in:
Jeff Hill
2001-03-26 18:31:57 +00:00
parent b1d14576c5
commit 26c082ffaf

View File

@@ -35,6 +35,8 @@
#include "epicsAssert.h"
#include "tsFreeList.h"
static const double delayVerifyOffset = 1.0; // sec
class delayVerify : public epicsTimerNotify {
public:
delayVerify ( double expectedDelay, epicsTimerQueue & );
@@ -76,16 +78,16 @@ inline void delayVerify::setBegin ( const epicsTime &beginIn )
inline double delayVerify::delay () const
{
return this->expectedDelay;
return delayVerifyOffset + this->expectedDelay;
}
void delayVerify::checkError () const
{
double actualDelay = this->expireStamp - this->beginStamp;
double measuredError = actualDelay - this->expectedDelay;
double measuredError = actualDelay - delayVerifyOffset - this->expectedDelay;
double percentError = measuredError / this->expectedDelay;
percentError *= 100.0;
if ( percentError > 1.0 ) {
if ( percentError > 0.5 ) {
printf ( "TEST FAILED timer delay = %g sec, error = %g mSec (%f %%)\n",
this->expectedDelay, measuredError * 1000.0, percentError );
}