<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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"/> <meta name="generator" content="Doxygen 1.8.15"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>libzypp: zypp::debug::Measure 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="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript" src="navtreedata.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(document).ready(initResizable); /* @license-end */</script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">libzypp  <span id="projectnumber">17.9.0</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.15 --> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(function() { initMenu('',false,false,'search.php','Search'); }); /* @license-end */</script> <div id="main-nav"></div> </div><!-- top --> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> <div id="nav-sync" class="sync"></div> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(document).ready(function(){initNavTree('classzypp_1_1debug_1_1Measure.html','');}); /* @license-end */ </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#nested-classes">Classes</a> | <a href="#pub-methods">Public Member Functions</a> | <a href="#pri-attribs">Private Attributes</a> | <a href="classzypp_1_1debug_1_1Measure-members.html">List of all members</a> </div> <div class="headertitle"> <div class="title">zypp::debug::Measure Class Reference</div> </div> </div><!--header--> <div class="contents"> <p>Tool to measure elapsed real and process times. <a href="classzypp_1_1debug_1_1Measure.html#details">More...</a></p> <p><code>#include <<a class="el" href="Measure_8h_source.html">Measure.h</a>></code></p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a> Classes</h2></td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classzypp_1_1debug_1_1Measure_1_1Impl.html">Impl</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight"><a class="el" href="classzypp_1_1debug_1_1Measure.html" title="Tool to measure elapsed real and process times.">Measure</a> implementation. <a href="classzypp_1_1debug_1_1Measure_1_1Impl.html#details">More...</a><br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> </table><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:a374cdc5d91ac9419b287d358ae042212"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classzypp_1_1debug_1_1Measure.html#a374cdc5d91ac9419b287d358ae042212">Measure</a> ()</td></tr> <tr class="memdesc:a374cdc5d91ac9419b287d358ae042212"><td class="mdescLeft"> </td><td class="mdescRight">Default Ctor does nothing. <a href="#a374cdc5d91ac9419b287d358ae042212">More...</a><br /></td></tr> <tr class="separator:a374cdc5d91ac9419b287d358ae042212"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abc0f3747d240a2a823d2fcbc143113f7"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classzypp_1_1debug_1_1Measure.html#abc0f3747d240a2a823d2fcbc143113f7">Measure</a> (const std::string &ident_r)</td></tr> <tr class="memdesc:abc0f3747d240a2a823d2fcbc143113f7"><td class="mdescLeft"> </td><td class="mdescRight">Ctor taking <em>ident_r</em> string and auto starts timer. <a href="#abc0f3747d240a2a823d2fcbc143113f7">More...</a><br /></td></tr> <tr class="separator:abc0f3747d240a2a823d2fcbc143113f7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:acc1052dd22a70742a62d355dec60eabe"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classzypp_1_1debug_1_1Measure.html#acc1052dd22a70742a62d355dec60eabe">~Measure</a> ()</td></tr> <tr class="memdesc:acc1052dd22a70742a62d355dec60eabe"><td class="mdescLeft"> </td><td class="mdescRight">Dtor. <a href="#acc1052dd22a70742a62d355dec60eabe">More...</a><br /></td></tr> <tr class="separator:acc1052dd22a70742a62d355dec60eabe"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa1bdfa94c6d3fb635694eef93ecb731f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classzypp_1_1debug_1_1Measure.html#aa1bdfa94c6d3fb635694eef93ecb731f">start</a> (const std::string &ident_r=std::string())</td></tr> <tr class="memdesc:aa1bdfa94c6d3fb635694eef93ecb731f"><td class="mdescLeft"> </td><td class="mdescRight">Start timer for <em>ident_r</em> string. <a href="#aa1bdfa94c6d3fb635694eef93ecb731f">More...</a><br /></td></tr> <tr class="separator:aa1bdfa94c6d3fb635694eef93ecb731f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9b4faf758f2fdcdd2c13411e0699b3be"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classzypp_1_1debug_1_1Measure.html#a9b4faf758f2fdcdd2c13411e0699b3be">restart</a> ()</td></tr> <tr class="memdesc:a9b4faf758f2fdcdd2c13411e0699b3be"><td class="mdescLeft"> </td><td class="mdescRight">re start the timer without reset-ing it. <a href="#a9b4faf758f2fdcdd2c13411e0699b3be">More...</a><br /></td></tr> <tr class="separator:a9b4faf758f2fdcdd2c13411e0699b3be"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8a363ba1f81a9d17db0beef095b310af"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classzypp_1_1debug_1_1Measure.html#a8a363ba1f81a9d17db0beef095b310af">elapsed</a> () const</td></tr> <tr class="memdesc:a8a363ba1f81a9d17db0beef095b310af"><td class="mdescLeft"> </td><td class="mdescRight">Print elapsed time for a running timer. <a href="#a8a363ba1f81a9d17db0beef095b310af">More...</a><br /></td></tr> <tr class="separator:a8a363ba1f81a9d17db0beef095b310af"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9f680104730743f0b85667ae1262b3f7"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classzypp_1_1debug_1_1Measure.html#a9f680104730743f0b85667ae1262b3f7">elapsed</a> (const std::string &tag_r) const</td></tr> <tr class="separator:a9f680104730743f0b85667ae1262b3f7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5077d59b5d436af7413d2c846c383bdd"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classzypp_1_1debug_1_1Measure.html#a5077d59b5d436af7413d2c846c383bdd">elapsed</a> (long tag_r) const</td></tr> <tr class="separator:a5077d59b5d436af7413d2c846c383bdd"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8f60bd8435c7d2247de12d2aabf05cd8"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classzypp_1_1debug_1_1Measure.html#a8f60bd8435c7d2247de12d2aabf05cd8">stop</a> ()</td></tr> <tr class="memdesc:a8f60bd8435c7d2247de12d2aabf05cd8"><td class="mdescLeft"> </td><td class="mdescRight">Stop a running timer. <a href="#a8f60bd8435c7d2247de12d2aabf05cd8">More...</a><br /></td></tr> <tr class="separator:a8f60bd8435c7d2247de12d2aabf05cd8"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a> Private Attributes</h2></td></tr> <tr class="memitem:ade22218845320541e208118133751b8b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structzypp_1_1RW__pointer.html">RW_pointer</a>< <a class="el" href="classzypp_1_1debug_1_1Measure_1_1Impl.html">Impl</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classzypp_1_1debug_1_1Measure.html#ade22218845320541e208118133751b8b">_pimpl</a></td></tr> <tr class="memdesc:ade22218845320541e208118133751b8b"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to implementation. <a href="#ade22218845320541e208118133751b8b">More...</a><br /></td></tr> <tr class="separator:ade22218845320541e208118133751b8b"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p>Tool to measure elapsed real and process times. </p> <p>Timer is started by either passing a string to the ctor, or callign <a class="el" href="classzypp_1_1debug_1_1Measure.html#aa1bdfa94c6d3fb635694eef93ecb731f">start</a>. The string passed is printed on all messages to help identifying the timer.</p> <p>Elapsed time is printed on calling <a class="el" href="classzypp_1_1debug_1_1Measure.html#a8a363ba1f81a9d17db0beef095b310af">elapsed</a> (timer keeps running) or <a class="el" href="classzypp_1_1debug_1_1Measure.html#a8f60bd8435c7d2247de12d2aabf05cd8">stop</a>.</p> <p>Calling <a class="el" href="classzypp_1_1debug_1_1Measure.html#a8f60bd8435c7d2247de12d2aabf05cd8">stop</a>, stops the timer. The same, if the timer goes out of scope.</p> <p>Elapsed time is printed as: </p><div class="fragment"><div class="line"><span class="stringliteral">'REAL TIME'</span> (u <span class="stringliteral">'USER TIME'</span> s <span class="stringliteral">'SYSTEM TIME'</span> c <span class="stringliteral">'TIME OF CHILDREN'</span>)</div></div><!-- fragment --><p> In brackets the time elapsed since a previous call to <a class="el" href="classzypp_1_1debug_1_1Measure.html#a8a363ba1f81a9d17db0beef095b310af">elapsed</a>. All units are seconds.</p> <div class="fragment"><div class="line"><a class="code" href="classzypp_1_1debug_1_1Measure.html#a374cdc5d91ac9419b287d358ae042212">Measure</a> m( <span class="stringliteral">"Parse"</span> );</div><div class="line">...</div><div class="line">m.elapsed();</div><div class="line">...</div><div class="line">m.elapsed();</div><div class="line">...</div><div class="line">m.elapsed();</div><div class="line">...</div><div class="line">m.stop();</div><div class="line"></div><div class="line"><span class="comment">// START MEASURE(Parse)</span></div><div class="line"><span class="comment">// ELAPSED(Parse) 0 (u 0.13 s 0.00 c 0.00)</span></div><div class="line"><span class="comment">// ELAPSED(Parse) 0 (u 0.15 s 0.02 c 0.00) [ 0 (u 0.02 s 0.02 c 0.00)]</span></div><div class="line"><span class="comment">// ELAPSED(Parse) 0 (u 0.17 s 0.02 c 0.00) [ 0 (u 0.02 s 0.00 c 0.00)]</span></div><div class="line"><span class="comment">// MEASURE(Parse) 0 (u 0.17 s 0.02 c 0.00) [ 0 (u 0.00 s 0.00 c 0.00)]</span></div></div><!-- fragment --> <p class="definition">Definition at line <a class="el" href="Measure_8h_source.html#l00068">68</a> of file <a class="el" href="Measure_8h_source.html">Measure.h</a>.</p> </div><h2 class="groupheader">Constructor & Destructor Documentation</h2> <a id="a374cdc5d91ac9419b287d358ae042212"></a> <h2 class="memtitle"><span class="permalink"><a href="#a374cdc5d91ac9419b287d358ae042212">◆ </a></span>Measure() <span class="overload">[1/2]</span></h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">zypp::debug::Measure::Measure </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Default Ctor does nothing. </p> <p class="definition">Definition at line <a class="el" href="Measure_8cc_source.html#l00213">213</a> of file <a class="el" href="Measure_8cc_source.html">Measure.cc</a>.</p> </div> </div> <a id="abc0f3747d240a2a823d2fcbc143113f7"></a> <h2 class="memtitle"><span class="permalink"><a href="#abc0f3747d240a2a823d2fcbc143113f7">◆ </a></span>Measure() <span class="overload">[2/2]</span></h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">zypp::debug::Measure::Measure </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>ident_r</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">explicit</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Ctor taking <em>ident_r</em> string and auto starts timer. </p> <p class="definition">Definition at line <a class="el" href="Measure_8cc_source.html#l00216">216</a> of file <a class="el" href="Measure_8cc_source.html">Measure.cc</a>.</p> </div> </div> <a id="acc1052dd22a70742a62d355dec60eabe"></a> <h2 class="memtitle"><span class="permalink"><a href="#acc1052dd22a70742a62d355dec60eabe">◆ </a></span>~Measure()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">zypp::debug::Measure::~Measure </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Dtor. </p> <p class="definition">Definition at line <a class="el" href="Measure_8cc_source.html#l00220">220</a> of file <a class="el" href="Measure_8cc_source.html">Measure.cc</a>.</p> </div> </div> <h2 class="groupheader">Member Function Documentation</h2> <a id="aa1bdfa94c6d3fb635694eef93ecb731f"></a> <h2 class="memtitle"><span class="permalink"><a href="#aa1bdfa94c6d3fb635694eef93ecb731f">◆ </a></span>start()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void zypp::debug::Measure::start </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>ident_r</em> = <code>std::string()</code></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Start timer for <em>ident_r</em> string. </p> <p>Implies stoping a running timer. </p> <p class="definition">Definition at line <a class="el" href="Measure_8cc_source.html#l00223">223</a> of file <a class="el" href="Measure_8cc_source.html">Measure.cc</a>.</p> </div> </div> <a id="a9b4faf758f2fdcdd2c13411e0699b3be"></a> <h2 class="memtitle"><span class="permalink"><a href="#a9b4faf758f2fdcdd2c13411e0699b3be">◆ </a></span>restart()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void zypp::debug::Measure::restart </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>re start the timer without reset-ing it. </p> <p class="definition">Definition at line <a class="el" href="Measure_8cc_source.html#l00226">226</a> of file <a class="el" href="Measure_8cc_source.html">Measure.cc</a>.</p> </div> </div> <a id="a8a363ba1f81a9d17db0beef095b310af"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8a363ba1f81a9d17db0beef095b310af">◆ </a></span>elapsed() <span class="overload">[1/3]</span></h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void zypp::debug::Measure::elapsed </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Print elapsed time for a running timer. </p> <p>Timer keeps on running. </p> <p class="definition">Definition at line <a class="el" href="Measure_8cc_source.html#l00229">229</a> of file <a class="el" href="Measure_8cc_source.html">Measure.cc</a>.</p> </div> </div> <a id="a9f680104730743f0b85667ae1262b3f7"></a> <h2 class="memtitle"><span class="permalink"><a href="#a9f680104730743f0b85667ae1262b3f7">◆ </a></span>elapsed() <span class="overload">[2/3]</span></h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void zypp::debug::Measure::elapsed </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>tag_r</em></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="Measure_8cc_source.html#l00231">231</a> of file <a class="el" href="Measure_8cc_source.html">Measure.cc</a>.</p> </div> </div> <a id="a5077d59b5d436af7413d2c846c383bdd"></a> <h2 class="memtitle"><span class="permalink"><a href="#a5077d59b5d436af7413d2c846c383bdd">◆ </a></span>elapsed() <span class="overload">[3/3]</span></h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void zypp::debug::Measure::elapsed </td> <td>(</td> <td class="paramtype">long </td> <td class="paramname"><em>tag_r</em></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="Measure_8cc_source.html#l00233">233</a> of file <a class="el" href="Measure_8cc_source.html">Measure.cc</a>.</p> </div> </div> <a id="a8f60bd8435c7d2247de12d2aabf05cd8"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8f60bd8435c7d2247de12d2aabf05cd8">◆ </a></span>stop()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void zypp::debug::Measure::stop </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Stop a running timer. </p> <p class="definition">Definition at line <a class="el" href="Measure_8cc_source.html#l00236">236</a> of file <a class="el" href="Measure_8cc_source.html">Measure.cc</a>.</p> </div> </div> <h2 class="groupheader">Member Data Documentation</h2> <a id="ade22218845320541e208118133751b8b"></a> <h2 class="memtitle"><span class="permalink"><a href="#ade22218845320541e208118133751b8b">◆ </a></span>_pimpl</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="structzypp_1_1RW__pointer.html">RW_pointer</a><<a class="el" href="classzypp_1_1debug_1_1Measure_1_1Impl.html">Impl</a>> zypp::debug::Measure::_pimpl</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">private</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Pointer to implementation. </p> <p class="definition">Definition at line <a class="el" href="Measure_8h_source.html#l00111">111</a> of file <a class="el" href="Measure_8h_source.html">Measure.h</a>.</p> </div> </div> <hr/>The documentation for this class was generated from the following files:<ul> <li>zypp/base/<a class="el" href="Measure_8h_source.html">Measure.h</a></li> <li>zypp/base/<a class="el" href="Measure_8cc_source.html">Measure.cc</a></li> </ul> </div><!-- contents --> </div><!-- doc-content --> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> <ul> <li class="navelem"><a class="el" href="namespacezypp.html">zypp</a></li><li class="navelem"><a class="el" href="namespacezypp_1_1debug.html">debug</a></li><li class="navelem"><a class="el" href="classzypp_1_1debug_1_1Measure.html">Measure</a></li> <li class="footer">Generated by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li> </ul> </div> </body> </html>