blob: e7711569a8c6b72c06c65cb6900aabf367c4c5fd [file] [log] [blame]
<!-- This comment will put IE 6, 7 and 8 in quirks mode -->
<!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"/>
<title>Kudu C++ client API: kudu::MonoDelta Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javaScript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body onload='searchBox.OnSelectItem(0);'>
<!-- Generated by Doxygen 1.6.1 -->
<script type="text/javascript"><!--
var searchBox = new SearchBox("searchBox", "search",false,'Search');
--></script>
<div class="navigation" id="top">
<div class="tabs">
<ul>
<li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
<li><a href="pages.html"><span>Related&nbsp;Pages</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<img id="MSearchSelect" src="search/search.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</div>
</li>
</ul>
</div>
<div class="tabs">
<ul>
<li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
<li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
</ul>
</div>
<div class="navpath"><b>kudu</b>::<a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>
</div>
</div>
<div class="contents">
<h1>kudu::MonoDelta Class Reference</h1><!-- doxytag: class="kudu::MonoDelta" -->
<p>A representation of a time interval.
<a href="#_details">More...</a></p>
<p><code>#include &lt;<a class="el" href="monotime_8h_source.html">monotime.h</a>&gt;</code></p>
<p><a href="classkudu_1_1MonoDelta-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#ad0646900f0927ad9be6302fcda8bfe5f">MonoDelta</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#aad3a0f1a1fc2e504ff137e55cfe068a3">Initialized</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#a8f4ae8075a1ff013115a558d97e1ad4c">LessThan</a> (const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;rhs) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#a218cc5fcd3ce70365210b7c5587aa6ff">MoreThan</a> (const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;rhs) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#a3d139854a8baaa7c59b3e5d59aba95bc">Equals</a> (const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;rhs) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#a85141ae2fb1820cef6c7ab0f0305e1af">ToString</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#af154577344dbba2afa5438872fc3ebd6">ToTimeVal</a> (struct timeval *tv) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#af72679c7dcec94a486b91e92aa3cb4b4">ToTimeSpec</a> (struct timespec *ts) const </td></tr>
<tr><td colspan="2"><div class="groupHeader">Converters into seconds representation (and ubiquitous SI prefixes).</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p><a class="anchor" id="amgrp00a249373954b990ab4d0433f07347ce"></a> </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>Representation of the time interval in appropriate SI units. </dd></dl>
<br/><br/></div></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8a64198bbba49f048c88cb13046a852f"></a><!-- doxytag: member="kudu::MonoDelta::ToSeconds" ref="a8a64198bbba49f048c88cb13046a852f" args="() const " -->
double&nbsp;</td><td class="memItemRight" valign="bottom"><b>ToSeconds</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2f746f58e9993d4ed181d9bc16a1a60f"></a><!-- doxytag: member="kudu::MonoDelta::ToMilliseconds" ref="a2f746f58e9993d4ed181d9bc16a1a60f" args="() const " -->
int64_t&nbsp;</td><td class="memItemRight" valign="bottom"><b>ToMilliseconds</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3eda4c7ce2320bbce4c11796c378b909"></a><!-- doxytag: member="kudu::MonoDelta::ToMicroseconds" ref="a3eda4c7ce2320bbce4c11796c378b909" args="() const " -->
int64_t&nbsp;</td><td class="memItemRight" valign="bottom"><b>ToMicroseconds</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa5e8557e21cc93d8ca2e8409da910cc9"></a><!-- doxytag: member="kudu::MonoDelta::ToNanoseconds" ref="aa5e8557e21cc93d8ca2e8409da910cc9" args="() const " -->
int64_t&nbsp;</td><td class="memItemRight" valign="bottom"><b>ToNanoseconds</b> () const </td></tr>
<tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#a4854924550c571f8af548270da52ac22">NanosToTimeSpec</a> (int64_t nanos, struct timespec *ts)</td></tr>
<tr><td colspan="2"><div class="groupHeader">Converters from seconds representation (and ubiquitous SI prefixes).</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p><a class="anchor" id="amgrp216359c7b811fb6b4e4a811bdabaf8ee"></a> </p>
<dl><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>seconds/ms/us/ns</em>&nbsp;</td><td>Time interval representation in seconds (with ubiquitous SI prefixes). </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The resulting <a class="el" href="classkudu_1_1MonoDelta.html" title="A representation of a time interval.">MonoDelta</a> object initialized in accordance with the specified parameter. </dd></dl>
<br/><br/></div></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a87624954c9ebd4a2c255910072592db1"></a><!-- doxytag: member="kudu::MonoDelta::FromSeconds" ref="a87624954c9ebd4a2c255910072592db1" args="(double seconds)" -->
static <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>FromSeconds</b> (double seconds)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac5c505cedf9a8a8ce7082c347fb4363a"></a><!-- doxytag: member="kudu::MonoDelta::FromMilliseconds" ref="ac5c505cedf9a8a8ce7082c347fb4363a" args="(int64_t ms)" -->
static <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>FromMilliseconds</b> (int64_t ms)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad50c159b220bb8e63d8d05c21053113d"></a><!-- doxytag: member="kudu::MonoDelta::FromMicroseconds" ref="ad50c159b220bb8e63d8d05c21053113d" args="(int64_t us)" -->
static <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>FromMicroseconds</b> (int64_t us)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae9e5f2bd1058b01309f82ae960520819"></a><!-- doxytag: member="kudu::MonoDelta::FromNanoseconds" ref="ae9e5f2bd1058b01309f82ae960520819" args="(int64_t ns)" -->
static <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>FromNanoseconds</b> (int64_t ns)</td></tr>
<tr><td colspan="2"><h2>Friends</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a515a8bfe73d4c4170695024fd9ebc3c9"></a><!-- doxytag: member="kudu::MonoDelta::MonoTime" ref="a515a8bfe73d4c4170695024fd9ebc3c9" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><b>MonoTime</b></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>A representation of a time interval. </p>
<p>The <a class="el" href="classkudu_1_1MonoDelta.html" title="A representation of a time interval.">MonoDelta</a> class represents an elapsed duration of time -- i.e. the delta between two <a class="el" href="classkudu_1_1MonoTime.html" title="Representation of a particular point in time.">MonoTime</a> instances. </p>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ad0646900f0927ad9be6302fcda8bfe5f"></a><!-- doxytag: member="kudu::MonoDelta::MonoDelta" ref="ad0646900f0927ad9be6302fcda8bfe5f" args="()" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">kudu::MonoDelta::MonoDelta </td>
<td>(</td>
<td class="paramname"></td>
<td>&nbsp;)&nbsp;</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Build a <a class="el" href="classkudu_1_1MonoDelta.html" title="A representation of a time interval.">MonoDelta</a> object.</p>
<dl class="note"><dt><b>Note:</b></dt><dd>A <a class="el" href="classkudu_1_1MonoDelta.html" title="A representation of a time interval.">MonoDelta</a> instance built with the this default constructor is "uninitialized" and may not be used for any operation. </dd></dl>
</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a3d139854a8baaa7c59b3e5d59aba95bc"></a><!-- doxytag: member="kudu::MonoDelta::Equals" ref="a3d139854a8baaa7c59b3e5d59aba95bc" args="(const MonoDelta &amp;rhs) const " -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool kudu::MonoDelta::Equals </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&nbsp;</td>
<td class="paramname"> <em>rhs</em></td>
<td>&nbsp;)&nbsp;</td>
<td> const</td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Check whether this time interval has the same duration as the specified one.</p>
<dl><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>rhs</em>&nbsp;</td><td>A time interval for comparison. </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><code>true</code> iff this time interval has the same duration as the the specified one. </dd></dl>
</div>
</div>
<a class="anchor" id="aad3a0f1a1fc2e504ff137e55cfe068a3"></a><!-- doxytag: member="kudu::MonoDelta::Initialized" ref="aad3a0f1a1fc2e504ff137e55cfe068a3" args="() const " -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool kudu::MonoDelta::Initialized </td>
<td>(</td>
<td class="paramname"></td>
<td>&nbsp;)&nbsp;</td>
<td> const</td>
</tr>
</table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd><code>true</code> iff this object is initialized. </dd></dl>
</div>
</div>
<a class="anchor" id="a8f4ae8075a1ff013115a558d97e1ad4c"></a><!-- doxytag: member="kudu::MonoDelta::LessThan" ref="a8f4ae8075a1ff013115a558d97e1ad4c" args="(const MonoDelta &amp;rhs) const " -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool kudu::MonoDelta::LessThan </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&nbsp;</td>
<td class="paramname"> <em>rhs</em></td>
<td>&nbsp;)&nbsp;</td>
<td> const</td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Check whether this time interval is shorter than the specified one.</p>
<dl><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>rhs</em>&nbsp;</td><td>A time interval for comparison. </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><code>true</code> iff this time interval is strictly shorter than the specified one. </dd></dl>
</div>
</div>
<a class="anchor" id="a218cc5fcd3ce70365210b7c5587aa6ff"></a><!-- doxytag: member="kudu::MonoDelta::MoreThan" ref="a218cc5fcd3ce70365210b7c5587aa6ff" args="(const MonoDelta &amp;rhs) const " -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool kudu::MonoDelta::MoreThan </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&nbsp;</td>
<td class="paramname"> <em>rhs</em></td>
<td>&nbsp;)&nbsp;</td>
<td> const</td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Check whether this time interval is longer than the specified one.</p>
<dl><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>rhs</em>&nbsp;</td><td>A time interval for comparison. </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><code>true</code> iff this time interval is strictly longer than the specified one. </dd></dl>
</div>
</div>
<a class="anchor" id="a4854924550c571f8af548270da52ac22"></a><!-- doxytag: member="kudu::MonoDelta::NanosToTimeSpec" ref="a4854924550c571f8af548270da52ac22" args="(int64_t nanos, struct timespec *ts)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">static void kudu::MonoDelta::NanosToTimeSpec </td>
<td>(</td>
<td class="paramtype">int64_t&nbsp;</td>
<td class="paramname"> <em>nanos</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">struct timespec *&nbsp;</td>
<td class="paramname"> <em>ts</em></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td><code> [static]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Convert a nanosecond value to a timespec.</p>
<dl><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>nanos</em>&nbsp;</td><td>Representation of a relative point in time in nanoseconds. </td></tr>
<tr><td valign="top"><tt>[out]</tt>&nbsp;</td><td valign="top"><em>ts</em>&nbsp;</td><td>Placeholder for the resulting timespec representation. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="a85141ae2fb1820cef6c7ab0f0305e1af"></a><!-- doxytag: member="kudu::MonoDelta::ToString" ref="a85141ae2fb1820cef6c7ab0f0305e1af" args="() const " -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string kudu::MonoDelta::ToString </td>
<td>(</td>
<td class="paramname"></td>
<td>&nbsp;)&nbsp;</td>
<td> const</td>
</tr>
</table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>String representation of this interval's duration (in seconds). </dd></dl>
</div>
</div>
<a class="anchor" id="af72679c7dcec94a486b91e92aa3cb4b4"></a><!-- doxytag: member="kudu::MonoDelta::ToTimeSpec" ref="af72679c7dcec94a486b91e92aa3cb4b4" args="(struct timespec *ts) const " -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void kudu::MonoDelta::ToTimeSpec </td>
<td>(</td>
<td class="paramtype">struct timespec *&nbsp;</td>
<td class="paramname"> <em>ts</em></td>
<td>&nbsp;)&nbsp;</td>
<td> const</td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Represent this time interval as a timespec structure, with nanosecond accuracy.</p>
<dl><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><tt>[out]</tt>&nbsp;</td><td valign="top"><em>ts</em>&nbsp;</td><td>Placeholder for the result value. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="af154577344dbba2afa5438872fc3ebd6"></a><!-- doxytag: member="kudu::MonoDelta::ToTimeVal" ref="af154577344dbba2afa5438872fc3ebd6" args="(struct timeval *tv) const " -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void kudu::MonoDelta::ToTimeVal </td>
<td>(</td>
<td class="paramtype">struct timeval *&nbsp;</td>
<td class="paramname"> <em>tv</em></td>
<td>&nbsp;)&nbsp;</td>
<td> const</td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Represent this time interval as a timeval structure, with microsecond accuracy.</p>
<dl><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><tt>[out]</tt>&nbsp;</td><td valign="top"><em>tv</em>&nbsp;</td><td>Placeholder for the result value. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>include/kudu/util/<a class="el" href="monotime_8h_source.html">monotime.h</a></li>
</ul>
</div>
<!--- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&nbsp;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&nbsp;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&nbsp;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&nbsp;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&nbsp;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&nbsp;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&nbsp;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&nbsp;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&nbsp;</span>Defines</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<!-- start footer part -->
<hr class="footer"/>
<address class="footer">
<small>Generated for Kudu version 1.0.1 on Tue Oct 11 08:52:01 2016 by Doxygen 1.6.1</small>
<br>
<small>Copyright © 2016 The Apache Software Foundation.</small>
</address>
</body>
</html>