X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4701dc09838c3da46a8bc2836265a7dffee541ee..7344108e8a129a3f9b4df5ab0f98a1713db03b89:/interface/wx/stopwatch.h diff --git a/interface/wx/stopwatch.h b/interface/wx/stopwatch.h index d36dd50f8c..d67fa9ab9e 100644 --- a/interface/wx/stopwatch.h +++ b/interface/wx/stopwatch.h @@ -3,7 +3,7 @@ // Purpose: interface of wxStopWatch // Author: wxWidgets team // RCS-ID: $Id$ -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// /** @@ -25,6 +25,13 @@ wxLogMessage("And calling it twice took $ldms in all", sw.Time()); @endcode + Since wxWidgets 2.9.3 this class uses @c ::QueryPerformanceCounter() + function under MSW to measure the elapsed time. It provides higher + precision than the usual timer functions but can suffer from bugs in its + implementation in some Windows XP versions. If you encounter such problems, + installing a Microsoft hot fix from http://support.microsoft.com/?id=896256 + could be necessary. + @library{wxbase} @category{misc} @@ -54,51 +61,30 @@ public: /** (Re)starts the stop watch with a given initial value. + + The stopwatch will always be running after calling Start(), even if + Pause() had been called before and even if it had been called multiple + times. */ void Start(long milliseconds = 0); /** Returns the time in milliseconds since the start (or restart) or the last call of Pause(). + + @see TimeInMicro() */ long Time() const; -}; - - -// ============================================================================ -// Global functions/macros -// ============================================================================ - -/** @ingroup group_funcmacro_time */ -//@{ - -/** - Returns the number of seconds since local time 00:00:00 Jan 1st 1970. - - @see wxDateTime::Now() - - @header{wx/stopwatch.h} -*/ -long wxGetLocalTime(); - -/** - Returns the number of milliseconds since local time 00:00:00 Jan 1st 1970. - - @see wxDateTime::Now(), wxLongLong - - @header{wx/stopwatch.h} -*/ -wxLongLong wxGetLocalTimeMillis(); - -/** - Returns the number of seconds since GMT 00:00:00 Jan 1st 1970. + /** + Returns elapsed time in microseconds. - @see wxDateTime::Now() + This method is similar to Time() but returns the elapsed time in + microseconds and not milliseconds. Notice that not all platforms really + can measure times with this precision. - @header{wx/stopwatch.h} -*/ -long wxGetUTCTime(); - -//@} + @since 2.9.3 + */ + wxLongLong TimeInMicro() const; +};