Computer Chess Club Archives


Search

Terms

Messages

Subject: old branch

Author: Hristo

Date: 22:27:55 10/28/03

Go up one level in this thread


The previous code was from some old branch that grep picked up first.
This is a latter version:

class Chronometer{
public:
    Chronometer();
    ~Chronometer();

    void start();
    void stop();

    double elapsed();

private:
    struct timeval m_startTime;
    struct timeval m_stopTime;
    //
    static const double m_usecMultiplier = 1.0/1000000.0;
};


Chronometer::Chronometer(){
    m_startTime.tv_sec = 0;
    m_startTime.tv_usec = 0;
    m_stopTime.tv_sec = 0;
    m_stopTime.tv_usec = 0;
}
Chronometer::~Chronometer(){

}
//
void Chronometer::start(){
    gettimeofday(&m_startTime, NULL);
}
void Chronometer::stop(){
    gettimeofday(&m_stopTime, NULL);
}
double Chronometer::elapsed(){
    double ellapsed = 0.0;

    if (m_startTime.tv_sec >= m_stopTime.tv_sec){
        if ( m_startTime.tv_usec < m_stopTime.tv_sec ){
            ellapsed = m_stopTime.tv_usec - m_startTime.tv_usec;
            ellapsed *= m_usecMultiplier;
        }
    }else{
        ellapsed = m_stopTime.tv_usec - m_startTime.tv_usec;
        ellapsed *= m_usecMultiplier;
        ellapsed += m_stopTime.tv_sec - m_startTime.tv_sec;
    }
    return ellapsed;
}

Cheers one more time.
Hristo



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.