Headers/Timer.h

/*
    File:       Timer.h
 
    Contains:   TTimer is a simple timing class that could provide both 10 lap time values as well as
                final values.
                TTimer.h contains the TTimer class definition. 
 
    Written by: Kent Sandvik    
 
    Copyright:  Copyright © 1992-1999 by Apple Computer, Inc., All Rights Reserved.
 
                You may incorporate this Apple sample source code into your program(s) without
                restriction. This Apple sample source code has been provided "AS IS" and the
                responsibility for its operation is yours. You are not permitted to redistribute
                this Apple sample source code as "Apple sample source code" after having made
                changes. If you're going to re-distribute the source, we require that you make
                it clear in the source that the code was descended from Apple sample source
                code, but that you've made changes.
 
    Change History (most recent first):
                8/18/1999   Karl Groethe    Updated for Metrowerks Codewarror Pro 2.1
                
 
*/
// Declare label for this header file
#ifndef _TIMER_
#define _TIMER_
 
 
#ifndef _DTSCPLUSLIBRARY_
#include "DTSCPlusLibrary.h"
#endif
 
#ifndef __EVENTS__
#include <Events.h>
#endif
 
 
// _________________________________________________________________________________________________________ //
//  TTimer Class Interface.
 
class TTimer
// TTimer is a simple timer class that could be used for taking time stamps and lap count timer
// values.
{
public:
    // CONSTRUCTORS AND DESTRUCTORS
    TTimer();
    virtual~ TTimer();
 
    // MAIN INTERFACE
    virtual void Start();                       // start timer
    virtual void Stop();                        // stop timer
    virtual void Reset();                       // reset timer
 
    virtual void SetLap(short index);           // set lap time [0-10]
    virtual long GetLap();                      // returns temp lap time
    virtual long GetLap(short index);           // return specific lap time [0-10]
 
    virtual long GetTicks();                    // return tick count
    virtual float GetSeconds();                 // return seconds with two decimal points
 
    // FIELDS
protected:
    long fStartTick;                            // start tick value
    long fStopTick;                             // stop tick value
    long fLapIndex[11];                         // array of 10 lap time values
};
 
 
#endif
 
 
// _________________________________________________________________________________________________________ //
 
 
/*  Change History (most recent last):
  No        Init.   Date        Comment
  1         khs     12/14/92    New file
  2         khs     1/3/93      Cleanup
*/