Files
rippled/classripple_1_1ServerImpl.html
2022-03-11 23:48:43 +00:00

783 lines
42 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::ServerImpl&lt; Handler &gt; Class Template 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_1ServerImpl.html">ServerImpl</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pri-types">Private Types</a> &#124;
<a href="#pri-static-methods">Static Private Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="classripple_1_1ServerImpl-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ripple::ServerImpl&lt; Handler &gt; Class Template Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for ripple::ServerImpl&lt; Handler &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classripple_1_1ServerImpl__inherit__graph.png" border="0" usemap="#ripple_1_1ServerImpl_3_01Handler_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="ripple_1_1ServerImpl_3_01Handler_01_4_inherit__map" id="ripple_1_1ServerImpl_3_01Handler_01_4_inherit__map">
<area shape="rect" title=" " alt="" coords="5,80,144,121"/>
<area shape="rect" href="classripple_1_1Server.html" title="A multi&#45;protocol server." alt="" coords="20,5,129,32"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for ripple::ServerImpl&lt; Handler &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classripple_1_1ServerImpl__coll__graph.png" border="0" usemap="#ripple_1_1ServerImpl_3_01Handler_01_4_coll__map" alt="Collaboration graph"/></div>
<map name="ripple_1_1ServerImpl_3_01Handler_01_4_coll__map" id="ripple_1_1ServerImpl_3_01Handler_01_4_coll__map">
<area shape="rect" title=" " alt="" coords="1172,199,1311,241"/>
<area shape="rect" href="classripple_1_1Server.html" title="A multi&#45;protocol server." alt="" coords="899,5,1009,32"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/utility/optional.html" title=" " alt="" coords="861,57,1047,98"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/container/vector.html" title=" " alt="" coords="829,122,1079,163"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/memory/weak_ptr.html" title=" " alt="" coords="549,122,712,163"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/thread/mutex.html" title="STL class." alt="" coords="585,219,677,245"/>
<area shape="rect" href="classripple_1_1io__list.html" title="Manages a set of objects performing asynchronous I/O." alt="" coords="901,317,1007,344"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/container/array.html" title=" " alt="" coords="877,251,1031,293"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/types/size_t.html" title=" " alt="" coords="587,276,675,303"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/container/vector.html" title=" " alt="" coords="883,386,1025,427"/>
<area shape="rect" href="structripple_1_1Port.html" title="Configuration information for a Server listening port." alt="" coords="584,456,677,483"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/types/integer.html" title=" " alt="" coords="213,188,315,215"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/container/vector.html" title=" " alt="" coords="176,247,352,289"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/container/set.html" title=" " alt="" coords="185,494,343,535"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/string/basic_string.html" title="STL class." alt="" coords="5,467,92,493"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/container/vector.html" title=" " alt="" coords="176,559,352,601"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html" title=" " alt="" coords="179,625,349,666"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/thread/condition_variable.html" title=" " alt="" coords="545,405,716,432"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/utility/functional/function.html" title=" " alt="" coords="557,339,704,381"/>
<area shape="rect" href="classbeast_1_1Journal.html" title="A generic endpoint for log messages." alt="" coords="899,488,1009,515"/>
<area shape="rect" href="classbeast_1_1Journal_1_1Sink.html" title="Abstraction for the underlying message destination." alt="" coords="557,507,704,533"/>
</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-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:adeab259dfa2a7360747d6500fe49cfa6"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#adeab259dfa2a7360747d6500fe49cfa6">ServerImpl</a> (Handler &amp;handler, boost::asio::io_service &amp;io_service, <a class="el" href="classbeast_1_1Journal.html">beast::Journal</a> <a class="el" href="classripple_1_1ServerImpl.html#ab56061fcb6bb1d06451af082c3bdf8a0">journal</a>)</td></tr>
<tr class="separator:adeab259dfa2a7360747d6500fe49cfa6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ac3729ff2586fa7fa6e534b6ef08cf7"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#a7ac3729ff2586fa7fa6e534b6ef08cf7">~ServerImpl</a> ()</td></tr>
<tr class="separator:a7ac3729ff2586fa7fa6e534b6ef08cf7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab56061fcb6bb1d06451af082c3bdf8a0"><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_1ServerImpl.html#ab56061fcb6bb1d06451af082c3bdf8a0">journal</a> () override</td></tr>
<tr class="memdesc:ab56061fcb6bb1d06451af082c3bdf8a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the Journal associated with the server. <a href="classripple_1_1ServerImpl.html#ab56061fcb6bb1d06451af082c3bdf8a0">More...</a><br /></td></tr>
<tr class="separator:ab56061fcb6bb1d06451af082c3bdf8a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adfd8ae8449f7ceea13448c876af52741"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceripple.html#a07b86307adf32095f4693b7b5e7d4b98">Endpoints</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#adfd8ae8449f7ceea13448c876af52741">ports</a> (<a class="elRef" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>&lt; <a class="el" href="structripple_1_1Port.html">Port</a> &gt; const &amp;ports) override</td></tr>
<tr class="memdesc:adfd8ae8449f7ceea13448c876af52741"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the listening port settings. <a href="classripple_1_1ServerImpl.html#adfd8ae8449f7ceea13448c876af52741">More...</a><br /></td></tr>
<tr class="separator:adfd8ae8449f7ceea13448c876af52741"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b32ac32433b2227c36b762fb195ec5d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#a6b32ac32433b2227c36b762fb195ec5d">close</a> () override</td></tr>
<tr class="memdesc:a6b32ac32433b2227c36b762fb195ec5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Close the server. <a href="classripple_1_1ServerImpl.html#a6b32ac32433b2227c36b762fb195ec5d">More...</a><br /></td></tr>
<tr class="separator:a6b32ac32433b2227c36b762fb195ec5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a97dccf0c51594abbc745bc3fed95d0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classripple_1_1io__list.html">io_list</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#a7a97dccf0c51594abbc745bc3fed95d0">ios</a> ()</td></tr>
<tr class="separator:a7a97dccf0c51594abbc745bc3fed95d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a78e05f0175a3f3b39aeb1aad3b35f5a4"><td class="memItemLeft" align="right" valign="top">boost::asio::io_service &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#a78e05f0175a3f3b39aeb1aad3b35f5a4">get_io_service</a> ()</td></tr>
<tr class="separator:a78e05f0175a3f3b39aeb1aad3b35f5a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acf9ee99a6aedefb0ecbea546739faa7b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#acf9ee99a6aedefb0ecbea546739faa7b">closed</a> ()</td></tr>
<tr class="separator:acf9ee99a6aedefb0ecbea546739faa7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-types"></a>
Private Types</h2></td></tr>
<tr class="memitem:a02faf19fde600afe01f5f6463730216e"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="classripple_1_1ServerImpl.html#a02faf19fde600afe01f5f6463730216eae8170535e048264df0ca466fd9efc1c5">historySize</a> = 100
}</td></tr>
<tr class="separator:a02faf19fde600afe01f5f6463730216e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a134e08537160d2088991324e7f3a5ddc"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#a134e08537160d2088991324e7f3a5ddc">clock_type</a> = <a class="elRef" href="http://en.cppreference.com/w/cpp/chrono/system_clock.html">std::chrono::system_clock</a></td></tr>
<tr class="separator:a134e08537160d2088991324e7f3a5ddc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-static-methods"></a>
Static Private Member Functions</h2></td></tr>
<tr class="memitem:adc9d584f90e323f1e0fd59df96729e76"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#adc9d584f90e323f1e0fd59df96729e76">ceil_log2</a> (unsigned long long x)</td></tr>
<tr class="separator:adc9d584f90e323f1e0fd59df96729e76"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:a2ac918daffa1a484e18976016c08c694"><td class="memItemLeft" align="right" valign="top">Handler &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#a2ac918daffa1a484e18976016c08c694">handler_</a></td></tr>
<tr class="separator:a2ac918daffa1a484e18976016c08c694"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae025c381ec67b7a0e8d2dda117a1f0a4"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classbeast_1_1Journal.html">beast::Journal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#ae025c381ec67b7a0e8d2dda117a1f0a4">j_</a></td></tr>
<tr class="separator:ae025c381ec67b7a0e8d2dda117a1f0a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc8b2cd27e96f5c9e17f2f367621aa74"><td class="memItemLeft" align="right" valign="top">boost::asio::io_service &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#abc8b2cd27e96f5c9e17f2f367621aa74">io_service_</a></td></tr>
<tr class="separator:abc8b2cd27e96f5c9e17f2f367621aa74"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4381c7cdaa12f67103483800bd4fc45e"><td class="memItemLeft" align="right" valign="top">boost::asio::io_service::strand&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#a4381c7cdaa12f67103483800bd4fc45e">strand_</a></td></tr>
<tr class="separator:a4381c7cdaa12f67103483800bd4fc45e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a88abc6f9a6a3968948dd51f877819603"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional</a>&lt; boost::asio::io_service::work &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#a88abc6f9a6a3968948dd51f877819603">work_</a></td></tr>
<tr class="separator:a88abc6f9a6a3968948dd51f877819603"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a513dfd120f4beb08bbc6e1b48d711b85"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/thread/mutex.html">std::mutex</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#a513dfd120f4beb08bbc6e1b48d711b85">m_</a></td></tr>
<tr class="separator:a513dfd120f4beb08bbc6e1b48d711b85"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46a39f953c1881b5678a8d7f398e2ff7"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>&lt; <a class="el" href="structripple_1_1Port.html">Port</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#a46a39f953c1881b5678a8d7f398e2ff7">ports_</a></td></tr>
<tr class="separator:a46a39f953c1881b5678a8d7f398e2ff7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a301e425d32d062df177f6e14b1ba07d6"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>&lt; <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_1Door.html">Door</a>&lt; Handler &gt; &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#a301e425d32d062df177f6e14b1ba07d6">list_</a></td></tr>
<tr class="separator:a301e425d32d062df177f6e14b1ba07d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42561f74b5194d343345c4ab59324cfc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#a42561f74b5194d343345c4ab59324cfc">high_</a> = 0</td></tr>
<tr class="separator:a42561f74b5194d343345c4ab59324cfc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a85f077a05f64f71dfc9714b68e3e75b8"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/container/array.html">std::array</a>&lt; <a class="elRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a>, 64 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#a85f077a05f64f71dfc9714b68e3e75b8">hist_</a></td></tr>
<tr class="separator:a85f077a05f64f71dfc9714b68e3e75b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5da61b86dfcb13e56fb0f836242c1f02"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classripple_1_1io__list.html">io_list</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1ServerImpl.html#a5da61b86dfcb13e56fb0f836242c1f02">ios_</a></td></tr>
<tr class="separator:a5da61b86dfcb13e56fb0f836242c1f02"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;class Handler&gt;<br />
class ripple::ServerImpl&lt; Handler &gt;</h3>
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00076">76</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="a134e08537160d2088991324e7f3a5ddc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a134e08537160d2088991324e7f3a5ddc">&#9670;&nbsp;</a></span>clock_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::<a class="el" href="classripple_1_1ServerImpl.html#a134e08537160d2088991324e7f3a5ddc">clock_type</a> = <a class="elRef" href="http://en.cppreference.com/w/cpp/chrono/system_clock.html">std::chrono::system_clock</a></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00079">79</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Enumeration Documentation</h2>
<a id="a02faf19fde600afe01f5f6463730216e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a02faf19fde600afe01f5f6463730216e">&#9670;&nbsp;</a></span>anonymous enum</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">anonymous enum</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a02faf19fde600afe01f5f6463730216eae8170535e048264df0ca466fd9efc1c5"></a>historySize&#160;</td><td class="fielddoc"></td></tr>
</table>
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00081">81</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="adeab259dfa2a7360747d6500fe49cfa6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adeab259dfa2a7360747d6500fe49cfa6">&#9670;&nbsp;</a></span>ServerImpl()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::<a class="el" href="classripple_1_1ServerImpl.html">ServerImpl</a> </td>
<td>(</td>
<td class="paramtype">Handler &amp;&#160;</td>
<td class="paramname"><em>handler</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">boost::asio::io_service &amp;&#160;</td>
<td class="paramname"><em>io_service</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>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00138">138</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<a id="a7ac3729ff2586fa7fa6e534b6ef08cf7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7ac3729ff2586fa7fa6e534b6ef08cf7">&#9670;&nbsp;</a></span>~ServerImpl()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::~<a class="el" href="classripple_1_1ServerImpl.html">ServerImpl</a></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00151">151</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ab56061fcb6bb1d06451af082c3bdf8a0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab56061fcb6bb1d06451af082c3bdf8a0">&#9670;&nbsp;</a></span>journal()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<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> <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::journal </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the Journal associated with the server. </p>
<p>Implements <a class="el" href="classripple_1_1Server.html#a6a984892293a31d9200217b6a3dd1e07">ripple::Server</a>.</p>
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00106">106</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<a id="adfd8ae8449f7ceea13448c876af52741"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adfd8ae8449f7ceea13448c876af52741">&#9670;&nbsp;</a></span>ports()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceripple.html#a07b86307adf32095f4693b7b5e7d4b98">Endpoints</a> <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::ports </td>
<td>(</td>
<td class="paramtype"><a class="elRef" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>&lt; <a class="el" href="structripple_1_1Port.html">Port</a> &gt; const &amp;&#160;</td>
<td class="paramname"><em>v</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the listening port settings. </p>
<p>This may only be called once. </p>
<p>Implements <a class="el" href="classripple_1_1Server.html#a132e76325036846794780c22431f78c7">ripple::Server</a>.</p>
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00161">161</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<a id="a6b32ac32433b2227c36b762fb195ec5d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6b32ac32433b2227c36b762fb195ec5d">&#9670;&nbsp;</a></span>close()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::close </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Close the server. </p>
<p>The close is performed asynchronously. The handler will be notified when the server has stopped. The server is considered stopped when there are no pending I/O completion handlers and all connections have closed. Thread safety: Safe to call concurrently from any thread. </p>
<p>Implements <a class="el" href="classripple_1_1Server.html#a022b4bd53b1eda3db97e404f90b31e4e">ripple::Server</a>.</p>
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00184">184</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<a id="a7a97dccf0c51594abbc745bc3fed95d0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7a97dccf0c51594abbc745bc3fed95d0">&#9670;&nbsp;</a></span>ios()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classripple_1_1io__list.html">io_list</a>&amp; <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::ios </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="ServerImpl_8h_source.html#l00118">118</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<a id="a78e05f0175a3f3b39aeb1aad3b35f5a4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a78e05f0175a3f3b39aeb1aad3b35f5a4">&#9670;&nbsp;</a></span>get_io_service()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<table class="memname">
<tr>
<td class="memname">boost::asio::io_service&amp; <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::get_io_service </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="ServerImpl_8h_source.html#l00124">124</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<a id="acf9ee99a6aedefb0ecbea546739faa7b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acf9ee99a6aedefb0ecbea546739faa7b">&#9670;&nbsp;</a></span>closed()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::closed</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00194">194</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<a id="adc9d584f90e323f1e0fd59df96729e76"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adc9d584f90e323f1e0fd59df96729e76">&#9670;&nbsp;</a></span>ceil_log2()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static int <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::ceil_log2 </td>
<td>(</td>
<td class="paramtype">unsigned long long&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a2ac918daffa1a484e18976016c08c694"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2ac918daffa1a484e18976016c08c694">&#9670;&nbsp;</a></span>handler_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Handler&amp; <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::handler_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00083">83</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<a id="ae025c381ec67b7a0e8d2dda117a1f0a4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae025c381ec67b7a0e8d2dda117a1f0a4">&#9670;&nbsp;</a></span>j_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classbeast_1_1Journal.html">beast::Journal</a> <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::j_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00084">84</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<a id="abc8b2cd27e96f5c9e17f2f367621aa74"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abc8b2cd27e96f5c9e17f2f367621aa74">&#9670;&nbsp;</a></span>io_service_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">boost::asio::io_service&amp; <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::io_service_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00085">85</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<a id="a4381c7cdaa12f67103483800bd4fc45e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4381c7cdaa12f67103483800bd4fc45e">&#9670;&nbsp;</a></span>strand_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">boost::asio::io_service::strand <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::strand_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00086">86</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<a id="a88abc6f9a6a3968948dd51f877819603"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a88abc6f9a6a3968948dd51f877819603">&#9670;&nbsp;</a></span>work_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<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/utility/optional.html">std::optional</a>&lt;boost::asio::io_service::work&gt; <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::work_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00087">87</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<a id="a513dfd120f4beb08bbc6e1b48d711b85"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a513dfd120f4beb08bbc6e1b48d711b85">&#9670;&nbsp;</a></span>m_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<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/mutex.html">std::mutex</a> <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::m_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00089">89</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<a id="a46a39f953c1881b5678a8d7f398e2ff7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a46a39f953c1881b5678a8d7f398e2ff7">&#9670;&nbsp;</a></span>ports_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<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/vector.html">std::vector</a>&lt;<a class="el" href="structripple_1_1Port.html">Port</a>&gt; <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::ports_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00090">90</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<a id="a301e425d32d062df177f6e14b1ba07d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a301e425d32d062df177f6e14b1ba07d6">&#9670;&nbsp;</a></span>list_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<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/vector.html">std::vector</a>&lt;<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_1Door.html">Door</a>&lt;Handler&gt; &gt; &gt; <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::list_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00091">91</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<a id="a42561f74b5194d343345c4ab59324cfc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a42561f74b5194d343345c4ab59324cfc">&#9670;&nbsp;</a></span>high_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::high_ = 0</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00092">92</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<a id="a85f077a05f64f71dfc9714b68e3e75b8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a85f077a05f64f71dfc9714b68e3e75b8">&#9670;&nbsp;</a></span>hist_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<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/array.html">std::array</a>&lt;<a class="elRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a>, 64&gt; <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::hist_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00093">93</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.h</a>.</p>
</div>
</div>
<a id="a5da61b86dfcb13e56fb0f836242c1f02"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5da61b86dfcb13e56fb0f836242c1f02">&#9670;&nbsp;</a></span>ios_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Handler &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classripple_1_1io__list.html">io_list</a> <a class="el" href="classripple_1_1ServerImpl.html">ripple::ServerImpl</a>&lt; Handler &gt;::ios_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="ServerImpl_8h_source.html#l00095">95</a> of file <a class="el" href="ServerImpl_8h_source.html">ServerImpl.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>