1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>wxWidgets: wxStopWatch Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="extra_stylesheet.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="page_container">
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0" style="width: 100%;">
<tbody>
<tr>
<td id="projectlogo">
<a href="http://www.wxwidgets.org/" target="_new">
<img alt="wxWidgets" src="logo.png"/>
</a>
</td>
<td style="padding-left: 0.5em; text-align: right;">
<span id="projectnumber">Version: 3.0.2</span>
</td>
</tr>
</tbody>
</table>
</div>
<!-- Generated by Doxygen 1.8.2 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
<li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="modules.html"><span>Categories</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class List</span></a></li>
<li><a href="classes.html"><span>Class Index</span></a></li>
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class Members</span></a></li>
</ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> |
<a href="classwx_stop_watch-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">wxStopWatch Class Reference<div class="ingroups"><a class="el" href="group__group__class__misc.html">Miscellaneous</a></div></div> </div>
</div><!--header-->
<div class="contents">
<p><code>#include <wx/stopwatch.h></code></p>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>The <a class="el" href="classwx_stop_watch.html" title="The wxStopWatch class allow you to measure time intervals.">wxStopWatch</a> class allow you to measure time intervals. </p>
<p>For example, you may use it to measure the time elapsed by some function:</p>
<div class="fragment"><div class="line"><a class="code" href="classwx_stop_watch.html" title="The wxStopWatch class allow you to measure time intervals.">wxStopWatch</a> sw;</div>
<div class="line">CallLongRunningFunction();</div>
<div class="line"><a class="code" href="group__group__funcmacro__log.html#ga249358701f3c2d410088ddf7a61d8564" title="For all normal, informational messages.">wxLogMessage</a>(<span class="stringliteral">"The long running function took %ldms to execute"</span>,</div>
<div class="line"> sw.<a class="code" href="classwx_stop_watch.html#aa80ff19ed90b2b99c879ec9ea3e7a71d" title="Returns the time in milliseconds since the start (or restart) or the last call of Pause()...">Time</a>());</div>
<div class="line">sw.<a class="code" href="classwx_stop_watch.html#a6c99e7590ec82169918d41328142f829" title="Pauses the stop watch.">Pause</a>();</div>
<div class="line">... stopwatch is stopped now ...</div>
<div class="line">sw.Resume();</div>
<div class="line">CallLongRunningFunction();</div>
<div class="line"><a class="code" href="group__group__funcmacro__log.html#ga249358701f3c2d410088ddf7a61d8564" title="For all normal, informational messages.">wxLogMessage</a>(<span class="stringliteral">"And calling it twice took $ldms in all"</span>, sw.<a class="code" href="classwx_stop_watch.html#aa80ff19ed90b2b99c879ec9ea3e7a71d" title="Returns the time in milliseconds since the start (or restart) or the last call of Pause()...">Time</a>());</div>
</div><!-- fragment --><p>Since wxWidgets 2.9.3 this class uses <code>QueryPerformanceCounter()</code> 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 <a href="http://support.microsoft.com/?id=896256">http://support.microsoft.com/?id=896256</a> could be necessary.</p>
<h2></h2>
<div><span class="lib">Library:</span>  <span class="lib_text"><a class="el" href="page_libs.html#page_libs_wxbase">wxBase</a></span></div><div><span class="category">Category:</span>  <span class="category_text"><a class="el" href="group__group__class__misc.html">Miscellaneous</a></span></div><dl class="section see"><dt>See Also</dt><dd><a class="el" href="classwx_timer.html" title="The wxTimer class allows you to execute code at specified intervals.">wxTimer</a> </dd></dl>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a0297f4fa4a2bc6b9ffc25219b93ff869"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_stop_watch.html#a0297f4fa4a2bc6b9ffc25219b93ff869">wxStopWatch</a> ()</td></tr>
<tr class="memdesc:a0297f4fa4a2bc6b9ffc25219b93ff869"><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="#a0297f4fa4a2bc6b9ffc25219b93ff869"></a><br/></td></tr>
<tr class="separator:a0297f4fa4a2bc6b9ffc25219b93ff869"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a6c99e7590ec82169918d41328142f829"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_stop_watch.html#a6c99e7590ec82169918d41328142f829">Pause</a> ()</td></tr>
<tr class="memdesc:a6c99e7590ec82169918d41328142f829"><td class="mdescLeft"> </td><td class="mdescRight">Pauses the stop watch. <a href="#a6c99e7590ec82169918d41328142f829"></a><br/></td></tr>
<tr class="separator:a6c99e7590ec82169918d41328142f829"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ae7059b8ce649c52af5f94d5d85bff78a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_stop_watch.html#ae7059b8ce649c52af5f94d5d85bff78a">Resume</a> ()</td></tr>
<tr class="memdesc:ae7059b8ce649c52af5f94d5d85bff78a"><td class="mdescLeft"> </td><td class="mdescRight">Resumes the stop watch which had been paused with <a class="el" href="classwx_stop_watch.html#a6c99e7590ec82169918d41328142f829" title="Pauses the stop watch.">Pause()</a>. <a href="#ae7059b8ce649c52af5f94d5d85bff78a"></a><br/></td></tr>
<tr class="separator:ae7059b8ce649c52af5f94d5d85bff78a"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a8c0825d3efd859547b47761e57089b5f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_stop_watch.html#a8c0825d3efd859547b47761e57089b5f">Start</a> (long milliseconds=0)</td></tr>
<tr class="memdesc:a8c0825d3efd859547b47761e57089b5f"><td class="mdescLeft"> </td><td class="mdescRight">(Re)starts the stop watch with a given initial value. <a href="#a8c0825d3efd859547b47761e57089b5f"></a><br/></td></tr>
<tr class="separator:a8c0825d3efd859547b47761e57089b5f"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aa80ff19ed90b2b99c879ec9ea3e7a71d"><td class="memItemLeft" align="right" valign="top">long </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_stop_watch.html#aa80ff19ed90b2b99c879ec9ea3e7a71d">Time</a> () const </td></tr>
<tr class="memdesc:aa80ff19ed90b2b99c879ec9ea3e7a71d"><td class="mdescLeft"> </td><td class="mdescRight">Returns the time in milliseconds since the start (or restart) or the last call of <a class="el" href="classwx_stop_watch.html#a6c99e7590ec82169918d41328142f829" title="Pauses the stop watch.">Pause()</a>. <a href="#aa80ff19ed90b2b99c879ec9ea3e7a71d"></a><br/></td></tr>
<tr class="separator:aa80ff19ed90b2b99c879ec9ea3e7a71d"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ab80191c8153ce08823c31b116feea122"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classwx_long_long.html">wxLongLong</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_stop_watch.html#ab80191c8153ce08823c31b116feea122">TimeInMicro</a> () const </td></tr>
<tr class="memdesc:ab80191c8153ce08823c31b116feea122"><td class="mdescLeft"> </td><td class="mdescRight">Returns elapsed time in microseconds. <a href="#ab80191c8153ce08823c31b116feea122"></a><br/></td></tr>
<tr class="separator:ab80191c8153ce08823c31b116feea122"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<h2 class="groupheader">Constructor & Destructor Documentation</h2>
<a class="anchor" id="a0297f4fa4a2bc6b9ffc25219b93ff869"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">wxStopWatch::wxStopWatch </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor. </p>
<p>This starts the stop watch. </p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a6c99e7590ec82169918d41328142f829"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void wxStopWatch::Pause </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Pauses the stop watch. </p>
<p>Call <a class="el" href="classwx_stop_watch.html#ae7059b8ce649c52af5f94d5d85bff78a" title="Resumes the stop watch which had been paused with Pause().">Resume()</a> to resume time measuring again.</p>
<p>If this method is called several times, <code><a class="el" href="classwx_stop_watch.html#ae7059b8ce649c52af5f94d5d85bff78a" title="Resumes the stop watch which had been paused with Pause().">Resume()</a></code> must be called the same number of times to really resume the stop watch. You may, however, call <a class="el" href="classwx_stop_watch.html#a8c0825d3efd859547b47761e57089b5f" title="(Re)starts the stop watch with a given initial value.">Start()</a> to resume it unconditionally. </p>
</div>
</div>
<a class="anchor" id="ae7059b8ce649c52af5f94d5d85bff78a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void wxStopWatch::Resume </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Resumes the stop watch which had been paused with <a class="el" href="classwx_stop_watch.html#a6c99e7590ec82169918d41328142f829" title="Pauses the stop watch.">Pause()</a>. </p>
</div>
</div>
<a class="anchor" id="a8c0825d3efd859547b47761e57089b5f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void wxStopWatch::Start </td>
<td>(</td>
<td class="paramtype">long </td>
<td class="paramname"><em>milliseconds</em> = <code>0</code></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>(Re)starts the stop watch with a given initial value. </p>
<p>The stopwatch will always be running after calling <a class="el" href="classwx_stop_watch.html#a8c0825d3efd859547b47761e57089b5f" title="(Re)starts the stop watch with a given initial value.">Start()</a>, even if <a class="el" href="classwx_stop_watch.html#a6c99e7590ec82169918d41328142f829" title="Pauses the stop watch.">Pause()</a> had been called before and even if it had been called multiple times. </p>
</div>
</div>
<a class="anchor" id="aa80ff19ed90b2b99c879ec9ea3e7a71d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">long wxStopWatch::Time </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the time in milliseconds since the start (or restart) or the last call of <a class="el" href="classwx_stop_watch.html#a6c99e7590ec82169918d41328142f829" title="Pauses the stop watch.">Pause()</a>. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="classwx_stop_watch.html#ab80191c8153ce08823c31b116feea122" title="Returns elapsed time in microseconds.">TimeInMicro()</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ab80191c8153ce08823c31b116feea122"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classwx_long_long.html">wxLongLong</a> wxStopWatch::TimeInMicro </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns elapsed time in microseconds. </p>
<p>This method is similar to <a class="el" href="classwx_stop_watch.html#aa80ff19ed90b2b99c879ec9ea3e7a71d" title="Returns the time in milliseconds since the start (or restart) or the last call of Pause()...">Time()</a> but returns the elapsed time in microseconds and not milliseconds. Notice that not all platforms really can measure times with this precision.</p>
<dl class="section since"><dt>Since</dt><dd>2.9.3 </dd></dl>
</div>
</div>
</div><!-- contents -->
<address class="footer">
<small>
Generated on Thu Nov 27 2014 13:46:59 for wxWidgets by <a href="http://www.doxygen.org/index.html" target="_new">Doxygen</a> 1.8.2
</small>
</address>
<script src="wxwidgets.js" type="text/javascript"></script>
</div><!-- #page_container -->
</body>
</html>
|