//======================================================================== // // GooTimer.cc // // This file is licensed under GPLv2 or later // // Copyright 2005 Jonathan Blandford // Copyright 2007 Krzysztof Kowalczyk // Copyright 2010 Hib Eris // Copyright 2011 Albert Astals cid // Copyright 2014 Bogdan Cristea // Copyright 2014 Peter Breitenlohner // Inspired by gtimer.c in glib, which is Copyright 2000 by the GLib Team // //======================================================================== #ifndef GOOTIMER_H #define GOOTIMER_H #ifdef USE_GCC_PRAGMAS #pragma interface #endif #include "poppler-config.h" #include "gtypes.h" #ifdef HAVE_GETTIMEOFDAY #include #endif #ifdef _WIN32 #ifndef NOMINMAX #define NOMINMAX #endif #include #endif //------------------------------------------------------------------------ // GooTimer //------------------------------------------------------------------------ class GooTimer { public: // Create a new timer. GooTimer(); void start(); void stop(); double getElapsed(); private: #ifdef HAVE_GETTIMEOFDAY struct timeval start_time; struct timeval end_time; #elif defined(_WIN32) LARGE_INTEGER start_time; LARGE_INTEGER end_time; #endif GBool active; }; #endif