Logo
~Apps~
~Projects~
~Contact~


Clock.h

Go to the documentation of this file.
00001 
00006 /*
00007 Copyright (C) 2005  Anders Hedstrom
00008 
00009 This program is free software; you can redistribute it and/or
00010 modify it under the terms of the GNU General Public License
00011 as published by the Free Software Foundation; either version 2
00012 of the License, or (at your option) any later version.
00013 
00014 This program is distributed in the hope that it will be useful,
00015 but WITHOUT ANY WARRANTY; without even the implied warranty of
00016 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017 GNU General Public License for more details.
00018 
00019 You should have received a copy of the GNU General Public License
00020 along with this program; if not, write to the Free Software
00021 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
00022 */
00023 #ifndef _CLOCK_H
00024 #define _CLOCK_H
00025 
00026 #ifdef _WIN32
00027 #pragma warning(disable:4786)
00028 #include <windows.h>
00029 #else
00030 #include <sys/time.h>
00031 #endif
00032 #include <string>
00033 
00034 
00036 
00037 class Clock
00038 {
00039 public:
00040         Clock();
00041         ~Clock();
00042 
00043         void PrintDiff(const std::string& = "");
00044         void Reset() {
00045 #ifdef _WIN32
00046                 ::GetLocalTime(&m_time);
00047 #else
00048                 gettimeofday(&m_tv, &m_tz);
00049 #endif
00050         }
00051 
00052 private:
00053         Clock(const Clock& ) {} // copy constructor
00054         Clock& operator=(const Clock& ) { return *this; } // assignment operator
00055 
00056 #ifdef _WIN32
00057         SYSTEMTIME m_time;
00058         SYSTEMTIME m_time0;
00059 #else
00060         struct timeval m_tv;
00061         struct timeval m_tv0;
00062         struct timezone m_tz;
00063         struct timezone m_tz0;
00064 #endif
00065 };
00066 
00067 
00068 
00069 
00070 #endif // _CLOCK_H
Page, code, and content Copyright (C) 2006 by Anders Hedström
Generated on Mon Aug 29 20:21:47 2005 for C++ Sockets by  doxygen 1.4.4