blob: df4219959e49e59642a9b9043eaba711de9e9a73 [file] [log] [blame]
<!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"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>Kudu C++ client API: kudu::MonoDelta 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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { init_search(); });
</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">Kudu C++ client API
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;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">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.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)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></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)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><b>kudu</b></li><li class="navelem"><a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classkudu_1_1MonoDelta-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">kudu::MonoDelta Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>A representation of a time interval.
<a href="classkudu_1_1MonoDelta.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="monotime_8h_source.html">monotime.h</a>&gt;</code></p>
<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:ad0646900f0927ad9be6302fcda8bfe5f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#ad0646900f0927ad9be6302fcda8bfe5f">MonoDelta</a> ()</td></tr>
<tr class="separator:ad0646900f0927ad9be6302fcda8bfe5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad3a0f1a1fc2e504ff137e55cfe068a3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#aad3a0f1a1fc2e504ff137e55cfe068a3">Initialized</a> () const </td></tr>
<tr class="separator:aad3a0f1a1fc2e504ff137e55cfe068a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f4ae8075a1ff013115a558d97e1ad4c"><td class="memItemLeft" align="right" valign="top">bool&#160;</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 class="separator:a8f4ae8075a1ff013115a558d97e1ad4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a218cc5fcd3ce70365210b7c5587aa6ff"><td class="memItemLeft" align="right" valign="top">bool&#160;</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 class="separator:a218cc5fcd3ce70365210b7c5587aa6ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d139854a8baaa7c59b3e5d59aba95bc"><td class="memItemLeft" align="right" valign="top">bool&#160;</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 class="separator:a3d139854a8baaa7c59b3e5d59aba95bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a85141ae2fb1820cef6c7ab0f0305e1af"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#a85141ae2fb1820cef6c7ab0f0305e1af">ToString</a> () const </td></tr>
<tr class="separator:a85141ae2fb1820cef6c7ab0f0305e1af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af154577344dbba2afa5438872fc3ebd6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#af154577344dbba2afa5438872fc3ebd6">ToTimeVal</a> (struct timeval *tv) const </td></tr>
<tr class="separator:af154577344dbba2afa5438872fc3ebd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af72679c7dcec94a486b91e92aa3cb4b4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#af72679c7dcec94a486b91e92aa3cb4b4">ToTimeSpec</a> (struct timespec *ts) const </td></tr>
<tr class="separator:af72679c7dcec94a486b91e92aa3cb4b4"><td class="memSeparator" colspan="2">&#160;</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"><dl class="section return"><dt>Returns</dt><dd>Representation of the time interval in appropriate SI units. </dd></dl>
</div></td></tr>
<tr class="memitem:a8a64198bbba49f048c88cb13046a852f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8a64198bbba49f048c88cb13046a852f"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>ToSeconds</b> () const </td></tr>
<tr class="separator:a8a64198bbba49f048c88cb13046a852f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f746f58e9993d4ed181d9bc16a1a60f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2f746f58e9993d4ed181d9bc16a1a60f"></a>
int64_t&#160;</td><td class="memItemRight" valign="bottom"><b>ToMilliseconds</b> () const </td></tr>
<tr class="separator:a2f746f58e9993d4ed181d9bc16a1a60f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3eda4c7ce2320bbce4c11796c378b909"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3eda4c7ce2320bbce4c11796c378b909"></a>
int64_t&#160;</td><td class="memItemRight" valign="bottom"><b>ToMicroseconds</b> () const </td></tr>
<tr class="separator:a3eda4c7ce2320bbce4c11796c378b909"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa5e8557e21cc93d8ca2e8409da910cc9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa5e8557e21cc93d8ca2e8409da910cc9"></a>
int64_t&#160;</td><td class="memItemRight" valign="bottom"><b>ToNanoseconds</b> () const </td></tr>
<tr class="separator:aa5e8557e21cc93d8ca2e8409da910cc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a4854924550c571f8af548270da52ac22"><td class="memItemLeft" align="right" valign="top">static void&#160;</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 class="separator:a4854924550c571f8af548270da52ac22"><td class="memSeparator" colspan="2">&#160;</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"><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">seconds/ms/us/ns</td><td>Time interval representation in seconds (with ubiquitous SI prefixes). </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</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>
</div></td></tr>
<tr class="memitem:a87624954c9ebd4a2c255910072592db1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a87624954c9ebd4a2c255910072592db1"></a>
static <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&#160;</td><td class="memItemRight" valign="bottom"><b>FromSeconds</b> (double seconds)</td></tr>
<tr class="separator:a87624954c9ebd4a2c255910072592db1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5c505cedf9a8a8ce7082c347fb4363a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac5c505cedf9a8a8ce7082c347fb4363a"></a>
static <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&#160;</td><td class="memItemRight" valign="bottom"><b>FromMilliseconds</b> (int64_t ms)</td></tr>
<tr class="separator:ac5c505cedf9a8a8ce7082c347fb4363a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad50c159b220bb8e63d8d05c21053113d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad50c159b220bb8e63d8d05c21053113d"></a>
static <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&#160;</td><td class="memItemRight" valign="bottom"><b>FromMicroseconds</b> (int64_t us)</td></tr>
<tr class="separator:ad50c159b220bb8e63d8d05c21053113d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9e5f2bd1058b01309f82ae960520819"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae9e5f2bd1058b01309f82ae960520819"></a>
static <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&#160;</td><td class="memItemRight" valign="bottom"><b>FromNanoseconds</b> (int64_t ns)</td></tr>
<tr class="separator:ae9e5f2bd1058b01309f82ae960520819"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:ac816d2de455655b1e0446ae7053aebb8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac816d2de455655b1e0446ae7053aebb8"></a>
<a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&#160;</td><td class="memItemRight" valign="bottom"><b>operator-</b> (const class <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> &amp;, const class <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> &amp;)</td></tr>
<tr class="separator:ac816d2de455655b1e0446ae7053aebb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><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 &ndash; 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>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ad0646900f0927ad9be6302fcda8bfe5f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">kudu::MonoDelta::MonoDelta </td>
<td>(</td>
<td class="paramname"></td><td>)</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="section note"><dt>Note</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>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a3d139854a8baaa7c59b3e5d59aba95bc"></a>
<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;&#160;</td>
<td class="paramname"><em>rhs</em></td><td>)</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 class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">rhs</td><td>A time interval for comparison. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</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>
<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>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff this object is initialized. </dd></dl>
</div>
</div>
<a class="anchor" id="a8f4ae8075a1ff013115a558d97e1ad4c"></a>
<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;&#160;</td>
<td class="paramname"><em>rhs</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Check whether this time interval is shorter than the specified one.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">rhs</td><td>A time interval for comparison. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</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>
<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;&#160;</td>
<td class="paramname"><em>rhs</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Check whether this time interval is longer than the specified one.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">rhs</td><td>A time interval for comparison. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</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>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void kudu::MonoDelta::NanosToTimeSpec </td>
<td>(</td>
<td class="paramtype">int64_t&#160;</td>
<td class="paramname"><em>nanos</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">struct timespec *&#160;</td>
<td class="paramname"><em>ts</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Convert a nanosecond value to a timespec.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">nanos</td><td>Representation of a relative point in time in nanoseconds. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">ts</td><td>Placeholder for the resulting timespec representation. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="a85141ae2fb1820cef6c7ab0f0305e1af"></a>
<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>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>String representation of this interval's duration (in seconds). </dd></dl>
</div>
</div>
<a class="anchor" id="af72679c7dcec94a486b91e92aa3cb4b4"></a>
<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 *&#160;</td>
<td class="paramname"><em>ts</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Represent this time interval as a timespec structure, with nanosecond accuracy.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[out]</td><td class="paramname">ts</td><td>Placeholder for the result value. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="af154577344dbba2afa5438872fc3ebd6"></a>
<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 *&#160;</td>
<td class="paramname"><em>tv</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Represent this time interval as a timeval structure, with microsecond accuracy.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[out]</td><td class="paramname">tv</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><!-- contents -->
<!-- start footer part -->
<hr class="footer"/>
<address class="footer">
<small>Generated for Kudu version 1.12.0 on Mon May 18 2020 14:07:09 by Doxygen 1.8.11</small>
<br>
<small>Copyright © 2020 The Apache Software Foundation.</small>
</address>
</body>
</html>