$search
00001 #ifndef TIMER_HH 00002 #define TIMER_HH 00003 00004 /* 00005 James R. Diebel 00006 Stanford University 00007 00008 Started: 27 August 2004 00009 Last revised: 27 Sugust 2004 00010 00011 timer.hh - defines a Timer class that acts like a stop watch 00012 00013 Depends on: nothing 00014 */ 00015 00016 #include <time.h> 00017 #include <iostream> 00018 00019 namespace bmtk { 00020 00021 using namespace std; 00022 00023 class Timer { 00024 public: 00025 // Constructor/Destructor 00026 Timer(); 00027 Timer(char* prefix_, char* suffix_); 00028 00029 // Methods 00030 float read(); 00031 float start(); 00032 float stop(); 00033 float glance(); 00034 void reset(); 00035 float peek(); 00036 float store(); 00037 void resetStore(); 00038 void resetAll(); 00039 float recall(); 00040 float mark(); 00041 float print(); 00042 float printGlance(); 00043 float printStore(); 00044 float printStore(char* label); 00045 float printMark(); 00046 float printMark(char* label); 00047 float printStop(); 00048 float printStop(char* label); 00049 00050 private: 00051 // Data 00052 int startTime; 00053 int stopTime; 00054 int totalTime; 00055 int storeTime; 00056 char* prefix; 00057 char* suffix; 00058 }; 00059 00060 } // namespace bmtk 00061 00062 #endif