Files
rippled/classripple_1_1PeerSet.html
2020-04-24 01:09:47 +00:00

1252 lines
64 KiB
HTML

<!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.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>rippled: ripple::PeerSet 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>
<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">rippled
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<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&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></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"><a class="el" href="namespaceripple.html">ripple</a></li><li class="navelem"><a class="el" href="classripple_1_1PeerSet.html">PeerSet</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-types">Protected Types</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="classripple_1_1PeerSet-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ripple::PeerSet Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
</div><!--header-->
<div class="contents">
<p>Supports data retrieval by managing a set of peers.
<a href="classripple_1_1PeerSet.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for ripple::PeerSet:</div>
<div class="dyncontent">
<div class="center"><img src="classripple_1_1PeerSet__inherit__graph.png" border="0" usemap="#ripple_1_1PeerSet_inherit__map" alt="Inheritance graph"/></div>
<map name="ripple_1_1PeerSet_inherit__map" id="ripple_1_1PeerSet_inherit__map">
<area shape="rect" title="Supports data retrieval by managing a set of peers." alt="" coords="128,5,245,32"/>
<area shape="rect" href="classripple_1_1InboundLedger.html" title=" " alt="" coords="5,80,168,107"/>
<area shape="rect" href="classripple_1_1TransactionAcquire.html" title=" " alt="" coords="193,80,383,107"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for ripple::PeerSet:</div>
<div class="dyncontent">
<div class="center"><img src="classripple_1_1PeerSet__coll__graph.png" border="0" usemap="#ripple_1_1PeerSet_coll__map" alt="Collaboration graph"/></div>
<map name="ripple_1_1PeerSet_coll__map" id="ripple_1_1PeerSet_coll__map">
<area shape="rect" title="Supports data retrieval by managing a set of peers." alt="" coords="1596,181,1713,208"/>
<area shape="rect" href="classripple_1_1Application.html" title=" " alt="" coords="1281,51,1421,77"/>
<area shape="rect" href="classbeast_1_1PropertyStream_1_1Source.html" title="Subclasses can be called to write to a stream and have children." alt="" coords="861,143,1029,185"/>
<area shape="rect" href="classbeast_1_1PropertyStream_1_1Item.html" title=" " alt="" coords="1267,233,1435,274"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/thread/recursive_mutex.html" title="STL class." alt="" coords="576,33,735,60"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/string/basic_string.html" title="STL class." alt="" coords="612,151,699,177"/>
<area shape="rect" href="classbeast_1_1List.html" title=" " alt="" coords="563,227,748,269"/>
<area shape="rect" href="classbeast_1_1detail_1_1ListNode.html" title=" " alt="" coords="275,220,457,276"/>
<area shape="rect" href="classbeast_1_1detail_1_1ListNode.html" title=" " alt="" coords="5,227,173,269"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/types/size_t.html" title=" " alt="" coords="322,332,410,359"/>
<area shape="rect" href="classripple_1_1base__uint.html" title=" " alt="" coords="1280,362,1421,403"/>
<area shape="rect" title=" " alt="" coords="872,240,1019,267"/>
<area shape="rect" href="classbeast_1_1abstract__clock.html" title=" " alt="" coords="1270,101,1431,157"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/chrono/duration.html" title=" " alt="" coords="1259,181,1443,208"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/container/set.html" title=" " alt="" coords="1053,295,1235,321"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/types/integer.html" title=" " alt="" coords="604,327,707,353"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/container/array.html" title=" " alt="" coords="861,342,1029,383"/>
<area shape="rect" href="classbeast_1_1Journal.html" title="A generic endpoint for log messages." alt="" coords="1295,443,1406,469"/>
<area shape="rect" href="classbeast_1_1Journal_1_1Sink.html" title="Abstraction for the underlying message destination." alt="" coords="872,459,1019,485"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a207a1e289a2129e8993947e2df8e2d74"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a207a1e289a2129e8993947e2df8e2d74">clock_type</a> = <a class="el" href="classbeast_1_1abstract__clock.html">beast::abstract_clock</a>&lt; <a class="elRef" href="http://en.cppreference.com/w/cpp/chrono/steady_clock.html">std::chrono::steady_clock</a> &gt;</td></tr>
<tr class="separator:a207a1e289a2129e8993947e2df8e2d74"><td class="memSeparator" colspan="2">&#160;</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:a2192b8ad320ac9c99d72747c313a5794"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceripple.html#a356c68147333a9a48a344718038576d9">uint256</a> const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a2192b8ad320ac9c99d72747c313a5794">getHash</a> () const</td></tr>
<tr class="memdesc:a2192b8ad320ac9c99d72747c313a5794"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the hash of the data we want. <a href="classripple_1_1PeerSet.html#a2192b8ad320ac9c99d72747c313a5794">More...</a><br /></td></tr>
<tr class="separator:a2192b8ad320ac9c99d72747c313a5794"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a95f4277e427f7d9843d6575225e35b4c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a95f4277e427f7d9843d6575225e35b4c">isComplete</a> () const</td></tr>
<tr class="memdesc:a95f4277e427f7d9843d6575225e35b4c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if we got all the data. <a href="classripple_1_1PeerSet.html#a95f4277e427f7d9843d6575225e35b4c">More...</a><br /></td></tr>
<tr class="separator:a95f4277e427f7d9843d6575225e35b4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4df8b4ea16f916321b3d3b47352a0376"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a4df8b4ea16f916321b3d3b47352a0376">isFailed</a> () const</td></tr>
<tr class="memdesc:a4df8b4ea16f916321b3d3b47352a0376"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns false if we failed to get the data. <a href="classripple_1_1PeerSet.html#a4df8b4ea16f916321b3d3b47352a0376">More...</a><br /></td></tr>
<tr class="separator:a4df8b4ea16f916321b3d3b47352a0376"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a407bcac2e5172a39d00d2eadc94af9f9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a407bcac2e5172a39d00d2eadc94af9f9">getTimeouts</a> () const</td></tr>
<tr class="memdesc:a407bcac2e5172a39d00d2eadc94af9f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the number of times we timed out. <a href="classripple_1_1PeerSet.html#a407bcac2e5172a39d00d2eadc94af9f9">More...</a><br /></td></tr>
<tr class="separator:a407bcac2e5172a39d00d2eadc94af9f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8031813bb349578b227c8725ab019b42"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a8031813bb349578b227c8725ab019b42">isActive</a> ()</td></tr>
<tr class="separator:a8031813bb349578b227c8725ab019b42"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7733986159c48a56d6e5049817a7c66"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#ad7733986159c48a56d6e5049817a7c66">progress</a> ()</td></tr>
<tr class="memdesc:ad7733986159c48a56d6e5049817a7c66"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called to indicate that forward progress has been made. <a href="classripple_1_1PeerSet.html#ad7733986159c48a56d6e5049817a7c66">More...</a><br /></td></tr>
<tr class="separator:ad7733986159c48a56d6e5049817a7c66"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7710649f6c87a5f821f67078ece2d7e5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a7710649f6c87a5f821f67078ece2d7e5">touch</a> ()</td></tr>
<tr class="separator:a7710649f6c87a5f821f67078ece2d7e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1cbb641cf233398c87d682589a67d926"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbeast_1_1abstract__clock.html#a4e16832b0bdf9392c5138bbbde024d8e">clock_type::time_point</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a1cbb641cf233398c87d682589a67d926">getLastAction</a> () const</td></tr>
<tr class="separator:a1cbb641cf233398c87d682589a67d926"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad99ae292a483bc1488a9c5af2d939f49"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#ad99ae292a483bc1488a9c5af2d939f49">insert</a> (<a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1Peer.html">Peer</a> &gt; const &amp;)</td></tr>
<tr class="memdesc:ad99ae292a483bc1488a9c5af2d939f49"><td class="mdescLeft">&#160;</td><td class="mdescRight">Insert a peer to the managed set. <a href="classripple_1_1PeerSet.html#ad99ae292a483bc1488a9c5af2d939f49">More...</a><br /></td></tr>
<tr class="separator:ad99ae292a483bc1488a9c5af2d939f49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77f0196063a8d7eb290ffe37a3a2b3e5"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a77f0196063a8d7eb290ffe37a3a2b3e5">isDone</a> () const</td></tr>
<tr class="separator:a77f0196063a8d7eb290ffe37a3a2b3e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e14dc0ccaba1b137081db5ac45731b6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classripple_1_1Application.html">Application</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a1e14dc0ccaba1b137081db5ac45731b6">app</a> ()</td></tr>
<tr class="separator:a1e14dc0ccaba1b137081db5ac45731b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-types"></a>
Protected Types</h2></td></tr>
<tr class="memitem:a90a3672f3016e5d1c6128061879ec41e"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a90a3672f3016e5d1c6128061879ec41e">ScopedLockType</a> = <a class="elRef" href="http://en.cppreference.com/w/cpp/thread/unique_lock.html">std::unique_lock</a>&lt; <a class="elRef" href="http://en.cppreference.com/w/cpp/thread/recursive_mutex.html">std::recursive_mutex</a> &gt;</td></tr>
<tr class="separator:a90a3672f3016e5d1c6128061879ec41e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:aeb9837d0c2f394bde2d4878da7aa48bb"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#aeb9837d0c2f394bde2d4878da7aa48bb">PeerSet</a> (<a class="el" href="classripple_1_1Application.html">Application</a> &amp;<a class="el" href="classripple_1_1PeerSet.html#a1e14dc0ccaba1b137081db5ac45731b6">app</a>, <a class="el" href="namespaceripple.html#a356c68147333a9a48a344718038576d9">uint256</a> const &amp;hash, <a class="elRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::milliseconds</a> interval, <a class="el" href="classripple_1_1PeerSet.html#a207a1e289a2129e8993947e2df8e2d74">clock_type</a> &amp;clock, <a class="el" href="classbeast_1_1Journal.html">beast::Journal</a> journal)</td></tr>
<tr class="separator:aeb9837d0c2f394bde2d4878da7aa48bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a22815d04e8927297736623dbfafa24a6"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a22815d04e8927297736623dbfafa24a6">~PeerSet</a> ()=0</td></tr>
<tr class="separator:a22815d04e8927297736623dbfafa24a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acaa7bf55178186d405eed580f4641cc1"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#acaa7bf55178186d405eed580f4641cc1">newPeer</a> (<a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1Peer.html">Peer</a> &gt; const &amp;)=0</td></tr>
<tr class="separator:acaa7bf55178186d405eed580f4641cc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0416d2dcd2e5eb8801f55b03f4875e1"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#ac0416d2dcd2e5eb8801f55b03f4875e1">onTimer</a> (bool <a class="el" href="classripple_1_1PeerSet.html#ad7733986159c48a56d6e5049817a7c66">progress</a>, <a class="el" href="classripple_1_1PeerSet.html#a90a3672f3016e5d1c6128061879ec41e">ScopedLockType</a> &amp;)=0</td></tr>
<tr class="separator:ac0416d2dcd2e5eb8801f55b03f4875e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afde43ea124398d0a0ab9ff95afaf85c2"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#afde43ea124398d0a0ab9ff95afaf85c2">execute</a> ()=0</td></tr>
<tr class="separator:afde43ea124398d0a0ab9ff95afaf85c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af1c64f5cd21f67f9e232c42195aed820"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" href="http://en.cppreference.com/w/cpp/memory/weak_ptr.html">std::weak_ptr</a>&lt; <a class="el" href="classripple_1_1PeerSet.html">PeerSet</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#af1c64f5cd21f67f9e232c42195aed820">pmDowncast</a> ()=0</td></tr>
<tr class="separator:af1c64f5cd21f67f9e232c42195aed820"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ef171e6bca3a585187561198bbf06e6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a3ef171e6bca3a585187561198bbf06e6">isProgress</a> ()</td></tr>
<tr class="separator:a3ef171e6bca3a585187561198bbf06e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43016ec89fd4afa2b3e02eca1ea6d438"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a43016ec89fd4afa2b3e02eca1ea6d438">setComplete</a> ()</td></tr>
<tr class="separator:a43016ec89fd4afa2b3e02eca1ea6d438"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad594cc4722672d822763db9ea8fbc8b8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#ad594cc4722672d822763db9ea8fbc8b8">setFailed</a> ()</td></tr>
<tr class="separator:ad594cc4722672d822763db9ea8fbc8b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af519e54b016eff0b244aceba65944e55"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#af519e54b016eff0b244aceba65944e55">invokeOnTimer</a> ()</td></tr>
<tr class="separator:af519e54b016eff0b244aceba65944e55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d539d36401a5042d1363c450379bb43"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a3d539d36401a5042d1363c450379bb43">sendRequest</a> (const protocol::TMGetLedger &amp;message)</td></tr>
<tr class="separator:a3d539d36401a5042d1363c450379bb43"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb0ae391c3b73fdb47a4bca7069b97f4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#abb0ae391c3b73fdb47a4bca7069b97f4">sendRequest</a> (const protocol::TMGetLedger &amp;message, <a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1Peer.html">Peer</a> &gt; const &amp;peer)</td></tr>
<tr class="separator:abb0ae391c3b73fdb47a4bca7069b97f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:addc5e94d9df5ad4a25e9afb735984cf3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#addc5e94d9df5ad4a25e9afb735984cf3">setTimer</a> ()</td></tr>
<tr class="separator:addc5e94d9df5ad4a25e9afb735984cf3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2cdcc36c72af3b8fce42b41899007958"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a2cdcc36c72af3b8fce42b41899007958">getPeerCount</a> () const</td></tr>
<tr class="separator:a2cdcc36c72af3b8fce42b41899007958"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:a706a011ba681781598055237f2d7fdaf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classripple_1_1Application.html">Application</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a706a011ba681781598055237f2d7fdaf">app_</a></td></tr>
<tr class="separator:a706a011ba681781598055237f2d7fdaf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63e0e407163a2e3f9fcd9135f519b5d1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbeast_1_1Journal.html">beast::Journal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a63e0e407163a2e3f9fcd9135f519b5d1">m_journal</a></td></tr>
<tr class="separator:a63e0e407163a2e3f9fcd9135f519b5d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2948d22daac5896d15ba248073378d7e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classripple_1_1PeerSet.html#a207a1e289a2129e8993947e2df8e2d74">clock_type</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a2948d22daac5896d15ba248073378d7e">m_clock</a></td></tr>
<tr class="separator:a2948d22daac5896d15ba248073378d7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4fa0ea92f95d96e69d2149e23d02ea4"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/thread/recursive_mutex.html">std::recursive_mutex</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#ab4fa0ea92f95d96e69d2149e23d02ea4">mLock</a></td></tr>
<tr class="separator:ab4fa0ea92f95d96e69d2149e23d02ea4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1128568df615b4bd9c1a2dc1319c03e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceripple.html#a356c68147333a9a48a344718038576d9">uint256</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#ab1128568df615b4bd9c1a2dc1319c03e">mHash</a></td></tr>
<tr class="separator:ab1128568df615b4bd9c1a2dc1319c03e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6c83fd1c266d3fa99adb07d0075f201c"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::milliseconds</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a6c83fd1c266d3fa99adb07d0075f201c">mTimerInterval</a></td></tr>
<tr class="separator:a6c83fd1c266d3fa99adb07d0075f201c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9b6f50ad29c4a6838652f98d5cca7e3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#ae9b6f50ad29c4a6838652f98d5cca7e3">mTimeouts</a></td></tr>
<tr class="separator:ae9b6f50ad29c4a6838652f98d5cca7e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e8e26a4201b05c805959c7fc909ec84"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a5e8e26a4201b05c805959c7fc909ec84">mComplete</a></td></tr>
<tr class="separator:a5e8e26a4201b05c805959c7fc909ec84"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9a7d358bfb4c9ca39cbe143a270d6123"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a9a7d358bfb4c9ca39cbe143a270d6123">mFailed</a></td></tr>
<tr class="separator:a9a7d358bfb4c9ca39cbe143a270d6123"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b05a07702e9788f2cccb5c94d6de8c4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbeast_1_1abstract__clock.html#a4e16832b0bdf9392c5138bbbde024d8e">clock_type::time_point</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a4b05a07702e9788f2cccb5c94d6de8c4">mLastAction</a></td></tr>
<tr class="separator:a4b05a07702e9788f2cccb5c94d6de8c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab291c226238498bf28b4ffad090b47e1"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#ab291c226238498bf28b4ffad090b47e1">mProgress</a></td></tr>
<tr class="separator:ab291c226238498bf28b4ffad090b47e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afab2c5b6dc398605d06502c282f11b56"><td class="memItemLeft" align="right" valign="top">boost::asio::basic_waitable_timer&lt; <a class="elRef" href="http://en.cppreference.com/w/cpp/chrono/steady_clock.html">std::chrono::steady_clock</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#afab2c5b6dc398605d06502c282f11b56">mTimer</a></td></tr>
<tr class="separator:afab2c5b6dc398605d06502c282f11b56"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0652998669e63104bf8da3c0eafbe270"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/container/set.html">std::set</a>&lt; <a class="el" href="classripple_1_1Peer.html#a56cc3cdd9c73921f23cb43a2bfa696a1">Peer::id_t</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1PeerSet.html#a0652998669e63104bf8da3c0eafbe270">mPeers</a></td></tr>
<tr class="separator:a0652998669e63104bf8da3c0eafbe270"><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>Supports data retrieval by managing a set of peers. </p>
<p>When desired data (such as a ledger or a transaction set) is missing locally it can be obtained by querying connected peers. This class manages common aspects of the retrieval. Callers maintain the set by adding and removing peers depending on whether the peers have useful information.</p>
<p>This class is an "active" object. It maintains its own timer and dispatches work to a job queue. Implementations derive from this class and override the abstract hook functions in the base.</p>
<p>The data is represented by its hash. </p>
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00048">48</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="a207a1e289a2129e8993947e2df8e2d74"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a207a1e289a2129e8993947e2df8e2d74">&#9670;&nbsp;</a></span>clock_type</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classripple_1_1PeerSet.html#a207a1e289a2129e8993947e2df8e2d74">ripple::PeerSet::clock_type</a> = <a class="el" href="classbeast_1_1abstract__clock.html">beast::abstract_clock</a>&lt;<a class="elRef" href="http://en.cppreference.com/w/cpp/chrono/steady_clock.html">std::chrono::steady_clock</a>&gt;</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00051">51</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="a90a3672f3016e5d1c6128061879ec41e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a90a3672f3016e5d1c6128061879ec41e">&#9670;&nbsp;</a></span>ScopedLockType</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classripple_1_1PeerSet.html#a90a3672f3016e5d1c6128061879ec41e">ripple::PeerSet::ScopedLockType</a> = <a class="elRef" href="http://en.cppreference.com/w/cpp/thread/unique_lock.html">std::unique_lock</a>&lt;<a class="elRef" href="http://en.cppreference.com/w/cpp/thread/recursive_mutex.html">std::recursive_mutex</a>&gt;</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00123">123</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="aeb9837d0c2f394bde2d4878da7aa48bb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeb9837d0c2f394bde2d4878da7aa48bb">&#9670;&nbsp;</a></span>PeerSet()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ripple::PeerSet::PeerSet </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classripple_1_1Application.html">Application</a> &amp;&#160;</td>
<td class="paramname"><em>app</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespaceripple.html#a356c68147333a9a48a344718038576d9">uint256</a> const &amp;&#160;</td>
<td class="paramname"><em>hash</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::milliseconds</a>&#160;</td>
<td class="paramname"><em>interval</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classripple_1_1PeerSet.html#a207a1e289a2129e8993947e2df8e2d74">clock_type</a> &amp;&#160;</td>
<td class="paramname"><em>clock</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classbeast_1_1Journal.html">beast::Journal</a>&#160;</td>
<td class="paramname"><em>journal</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">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8cpp_source.html#l00038">38</a> of file <a class="el" href="PeerSet_8cpp_source.html">PeerSet.cpp</a>.</p>
</div>
</div>
<a id="a22815d04e8927297736623dbfafa24a6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a22815d04e8927297736623dbfafa24a6">&#9670;&nbsp;</a></span>~PeerSet()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ripple::PeerSet::~PeerSet </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span><span class="mlabel">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a2192b8ad320ac9c99d72747c313a5794"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2192b8ad320ac9c99d72747c313a5794">&#9670;&nbsp;</a></span>getHash()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceripple.html#a356c68147333a9a48a344718038576d9">uint256</a> const&amp; ripple::PeerSet::getHash </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the hash of the data we want. </p>
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00055">55</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="a95f4277e427f7d9843d6575225e35b4c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a95f4277e427f7d9843d6575225e35b4c">&#9670;&nbsp;</a></span>isComplete()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ripple::PeerSet::isComplete </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns true if we got all the data. </p>
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00062">62</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="a4df8b4ea16f916321b3d3b47352a0376"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4df8b4ea16f916321b3d3b47352a0376">&#9670;&nbsp;</a></span>isFailed()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ripple::PeerSet::isFailed </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns false if we failed to get the data. </p>
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00069">69</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="a407bcac2e5172a39d00d2eadc94af9f9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a407bcac2e5172a39d00d2eadc94af9f9">&#9670;&nbsp;</a></span>getTimeouts()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ripple::PeerSet::getTimeouts </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the number of times we timed out. </p>
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00076">76</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="a8031813bb349578b227c8725ab019b42"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8031813bb349578b227c8725ab019b42">&#9670;&nbsp;</a></span>isActive()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ripple::PeerSet::isActive </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8cpp_source.html#l00114">114</a> of file <a class="el" href="PeerSet_8cpp_source.html">PeerSet.cpp</a>.</p>
</div>
</div>
<a id="ad7733986159c48a56d6e5049817a7c66"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad7733986159c48a56d6e5049817a7c66">&#9670;&nbsp;</a></span>progress()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ripple::PeerSet::progress </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Called to indicate that forward progress has been made. </p>
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00086">86</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="a7710649f6c87a5f821f67078ece2d7e5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7710649f6c87a5f821f67078ece2d7e5">&#9670;&nbsp;</a></span>touch()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ripple::PeerSet::touch </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00092">92</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="a1cbb641cf233398c87d682589a67d926"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1cbb641cf233398c87d682589a67d926">&#9670;&nbsp;</a></span>getLastAction()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classbeast_1_1abstract__clock.html#a4e16832b0bdf9392c5138bbbde024d8e">clock_type::time_point</a> ripple::PeerSet::getLastAction </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00098">98</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="ad99ae292a483bc1488a9c5af2d939f49"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad99ae292a483bc1488a9c5af2d939f49">&#9670;&nbsp;</a></span>insert()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ripple::PeerSet::insert </td>
<td>(</td>
<td class="paramtype"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1Peer.html">Peer</a> &gt; const &amp;&#160;</td>
<td class="paramname"><em>ptr</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Insert a peer to the managed set. </p>
<p>This will call the derived class hook function. </p><dl class="section return"><dt>Returns</dt><dd><code>true</code> If the peer was added </dd></dl>
<p class="definition">Definition at line <a class="el" href="PeerSet_8cpp_source.html#l00062">62</a> of file <a class="el" href="PeerSet_8cpp_source.html">PeerSet.cpp</a>.</p>
</div>
</div>
<a id="a77f0196063a8d7eb290ffe37a3a2b3e5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a77f0196063a8d7eb290ffe37a3a2b3e5">&#9670;&nbsp;</a></span>isDone()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual bool ripple::PeerSet::isDone </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00111">111</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="a1e14dc0ccaba1b137081db5ac45731b6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1e14dc0ccaba1b137081db5ac45731b6">&#9670;&nbsp;</a></span>app()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classripple_1_1Application.html">Application</a>&amp; ripple::PeerSet::app </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00117">117</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="acaa7bf55178186d405eed580f4641cc1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acaa7bf55178186d405eed580f4641cc1">&#9670;&nbsp;</a></span>newPeer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void ripple::PeerSet::newPeer </td>
<td>(</td>
<td class="paramtype"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1Peer.html">Peer</a> &gt; const &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implemented in <a class="el" href="classripple_1_1InboundLedger.html#ae9cc6de1ae6cad1533f95af82348fafe">ripple::InboundLedger</a>, and <a class="el" href="classripple_1_1TransactionAcquire.html#aab4a4a9c9727ad718ce32ff70cfca7a7">ripple::TransactionAcquire</a>.</p>
</div>
</div>
<a id="ac0416d2dcd2e5eb8801f55b03f4875e1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac0416d2dcd2e5eb8801f55b03f4875e1">&#9670;&nbsp;</a></span>onTimer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void ripple::PeerSet::onTimer </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>progress</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classripple_1_1PeerSet.html#a90a3672f3016e5d1c6128061879ec41e">ScopedLockType</a> &amp;&#160;</td>
<td class="paramname">&#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">protected</span><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implemented in <a class="el" href="classripple_1_1InboundLedger.html#abb06c0dd36a6e78848ce2bb0ff9258e7">ripple::InboundLedger</a>, and <a class="el" href="classripple_1_1TransactionAcquire.html#a3c478137ad5621d4290f242c6de834ba">ripple::TransactionAcquire</a>.</p>
</div>
</div>
<a id="afde43ea124398d0a0ab9ff95afaf85c2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afde43ea124398d0a0ab9ff95afaf85c2">&#9670;&nbsp;</a></span>execute()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void ripple::PeerSet::execute </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implemented in <a class="el" href="classripple_1_1TransactionAcquire.html#ad00323d6a9fc4fd657c0618be508c25d">ripple::TransactionAcquire</a>, and <a class="el" href="classripple_1_1InboundLedger.html#af071b2ace5c5ee0888c0e6cea2886e16">ripple::InboundLedger</a>.</p>
</div>
</div>
<a id="af1c64f5cd21f67f9e232c42195aed820"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af1c64f5cd21f67f9e232c42195aed820">&#9670;&nbsp;</a></span>pmDowncast()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual <a class="elRef" href="http://en.cppreference.com/w/cpp/memory/weak_ptr.html">std::weak_ptr</a>&lt;<a class="el" href="classripple_1_1PeerSet.html">PeerSet</a>&gt; ripple::PeerSet::pmDowncast </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implemented in <a class="el" href="classripple_1_1InboundLedger.html#a48200c48c1b400de18691502dc89dce7">ripple::InboundLedger</a>, and <a class="el" href="classripple_1_1TransactionAcquire.html#ac30842a6e54deecb72f2b60aa412f6d6">ripple::TransactionAcquire</a>.</p>
</div>
</div>
<a id="a3ef171e6bca3a585187561198bbf06e6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3ef171e6bca3a585187561198bbf06e6">&#9670;&nbsp;</a></span>isProgress()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ripple::PeerSet::isProgress </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00147">147</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="a43016ec89fd4afa2b3e02eca1ea6d438"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a43016ec89fd4afa2b3e02eca1ea6d438">&#9670;&nbsp;</a></span>setComplete()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ripple::PeerSet::setComplete </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00153">153</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="ad594cc4722672d822763db9ea8fbc8b8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad594cc4722672d822763db9ea8fbc8b8">&#9670;&nbsp;</a></span>setFailed()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ripple::PeerSet::setFailed </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00158">158</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="af519e54b016eff0b244aceba65944e55"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af519e54b016eff0b244aceba65944e55">&#9670;&nbsp;</a></span>invokeOnTimer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ripple::PeerSet::invokeOnTimer </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8cpp_source.html#l00088">88</a> of file <a class="el" href="PeerSet_8cpp_source.html">PeerSet.cpp</a>.</p>
</div>
</div>
<a id="a3d539d36401a5042d1363c450379bb43"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3d539d36401a5042d1363c450379bb43">&#9670;&nbsp;</a></span>sendRequest() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ripple::PeerSet::sendRequest </td>
<td>(</td>
<td class="paramtype">const protocol::TMGetLedger &amp;&#160;</td>
<td class="paramname"><em>message</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8cpp_source.html#l00132">132</a> of file <a class="el" href="PeerSet_8cpp_source.html">PeerSet.cpp</a>.</p>
</div>
</div>
<a id="abb0ae391c3b73fdb47a4bca7069b97f4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abb0ae391c3b73fdb47a4bca7069b97f4">&#9670;&nbsp;</a></span>sendRequest() <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">void ripple::PeerSet::sendRequest </td>
<td>(</td>
<td class="paramtype">const protocol::TMGetLedger &amp;&#160;</td>
<td class="paramname"><em>message</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1Peer.html">Peer</a> &gt; const &amp;&#160;</td>
<td class="paramname"><em>peer</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">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8cpp_source.html#l00121">121</a> of file <a class="el" href="PeerSet_8cpp_source.html">PeerSet.cpp</a>.</p>
</div>
</div>
<a id="addc5e94d9df5ad4a25e9afb735984cf3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#addc5e94d9df5ad4a25e9afb735984cf3">&#9670;&nbsp;</a></span>setTimer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ripple::PeerSet::setTimer </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8cpp_source.html#l00074">74</a> of file <a class="el" href="PeerSet_8cpp_source.html">PeerSet.cpp</a>.</p>
</div>
</div>
<a id="a2cdcc36c72af3b8fce42b41899007958"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2cdcc36c72af3b8fce42b41899007958">&#9670;&nbsp;</a></span>getPeerCount()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> ripple::PeerSet::getPeerCount </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8cpp_source.html#l00149">149</a> of file <a class="el" href="PeerSet_8cpp_source.html">PeerSet.cpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a706a011ba681781598055237f2d7fdaf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a706a011ba681781598055237f2d7fdaf">&#9670;&nbsp;</a></span>app_</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="classripple_1_1Application.html">Application</a>&amp; ripple::PeerSet::app_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00181">181</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="a63e0e407163a2e3f9fcd9135f519b5d1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a63e0e407163a2e3f9fcd9135f519b5d1">&#9670;&nbsp;</a></span>m_journal</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="classbeast_1_1Journal.html">beast::Journal</a> ripple::PeerSet::m_journal</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00182">182</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="a2948d22daac5896d15ba248073378d7e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2948d22daac5896d15ba248073378d7e">&#9670;&nbsp;</a></span>m_clock</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="classripple_1_1PeerSet.html#a207a1e289a2129e8993947e2df8e2d74">clock_type</a>&amp; ripple::PeerSet::m_clock</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00183">183</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="ab4fa0ea92f95d96e69d2149e23d02ea4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab4fa0ea92f95d96e69d2149e23d02ea4">&#9670;&nbsp;</a></span>mLock</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/thread/recursive_mutex.html">std::recursive_mutex</a> ripple::PeerSet::mLock</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00185">185</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="ab1128568df615b4bd9c1a2dc1319c03e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab1128568df615b4bd9c1a2dc1319c03e">&#9670;&nbsp;</a></span>mHash</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="namespaceripple.html#a356c68147333a9a48a344718038576d9">uint256</a> ripple::PeerSet::mHash</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00187">187</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="a6c83fd1c266d3fa99adb07d0075f201c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6c83fd1c266d3fa99adb07d0075f201c">&#9670;&nbsp;</a></span>mTimerInterval</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::milliseconds</a> ripple::PeerSet::mTimerInterval</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00188">188</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="ae9b6f50ad29c4a6838652f98d5cca7e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae9b6f50ad29c4a6838652f98d5cca7e3">&#9670;&nbsp;</a></span>mTimeouts</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int ripple::PeerSet::mTimeouts</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00189">189</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="a5e8e26a4201b05c805959c7fc909ec84"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5e8e26a4201b05c805959c7fc909ec84">&#9670;&nbsp;</a></span>mComplete</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ripple::PeerSet::mComplete</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00190">190</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="a9a7d358bfb4c9ca39cbe143a270d6123"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9a7d358bfb4c9ca39cbe143a270d6123">&#9670;&nbsp;</a></span>mFailed</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ripple::PeerSet::mFailed</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00191">191</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="a4b05a07702e9788f2cccb5c94d6de8c4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4b05a07702e9788f2cccb5c94d6de8c4">&#9670;&nbsp;</a></span>mLastAction</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="classbeast_1_1abstract__clock.html#a4e16832b0bdf9392c5138bbbde024d8e">clock_type::time_point</a> ripple::PeerSet::mLastAction</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00192">192</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="ab291c226238498bf28b4ffad090b47e1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab291c226238498bf28b4ffad090b47e1">&#9670;&nbsp;</a></span>mProgress</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ripple::PeerSet::mProgress</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00193">193</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="afab2c5b6dc398605d06502c282f11b56"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afab2c5b6dc398605d06502c282f11b56">&#9670;&nbsp;</a></span>mTimer</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">boost::asio::basic_waitable_timer&lt;<a class="elRef" href="http://en.cppreference.com/w/cpp/chrono/steady_clock.html">std::chrono::steady_clock</a>&gt; ripple::PeerSet::mTimer</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00196">196</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
<a id="a0652998669e63104bf8da3c0eafbe270"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0652998669e63104bf8da3c0eafbe270">&#9670;&nbsp;</a></span>mPeers</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/container/set.html">std::set</a>&lt;<a class="el" href="classripple_1_1Peer.html#a56cc3cdd9c73921f23cb43a2bfa696a1">Peer::id_t</a>&gt; ripple::PeerSet::mPeers</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="PeerSet_8h_source.html#l00199">199</a> of file <a class="el" href="PeerSet_8h_source.html">PeerSet.h</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.17
</small></address>
</body>
</html>