This commit is contained in:
nbougalis
2021-01-11 17:20:32 +00:00
parent c55b377da7
commit a8d23df44a
1804 changed files with 80618 additions and 73344 deletions

View File

@@ -299,84 +299,79 @@ $(function() {
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; }</div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; </div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keywordtype">void</span></div>
<div class="line"><a name="l00231"></a><span class="lineno"><a class="line" href="classripple_1_1PeerFinder_1_1ManagerImp.html#aadd75f0fa58820b55705ba28adec085b"> 231</a></span>&#160; <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#aadd75f0fa58820b55705ba28adec085b">onStart</a>()<span class="keyword"> override</span></div>
<div class="line"><a name="l00231"></a><span class="lineno"><a class="line" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a24a58d109ca55cd2e7926974bc9645f8"> 231</a></span>&#160; <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a24a58d109ca55cd2e7926974bc9645f8">onStop</a>()<span class="keyword"> override</span></div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; }</div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; </div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keywordtype">void</span></div>
<div class="line"><a name="l00236"></a><span class="lineno"><a class="line" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a24a58d109ca55cd2e7926974bc9645f8"> 236</a></span>&#160; <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a24a58d109ca55cd2e7926974bc9645f8">onStop</a>()<span class="keyword"> override</span></div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a8671ace4b94a1e8e9df972f0835ba470">close</a>();</div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <a class="code" href="classripple_1_1Stoppable.html#a65a95f9c14637491df60d3a07518fa09">stopped</a>();</div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; }</div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; </div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="comment">//--------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="comment">//</span></div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="comment">// PropertyStream</span></div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="comment">//</span></div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="comment">//--------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; </div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="keywordtype">void</span></div>
<div class="line"><a name="l00249"></a><span class="lineno"><a class="line" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a870c8e53e39d362015e4b165fa0be489"> 249</a></span>&#160; <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a870c8e53e39d362015e4b165fa0be489">onWrite</a>(<a class="code" href="classbeast_1_1PropertyStream_1_1Map.html">beast::PropertyStream::Map</a>&amp; map)<span class="keyword"> override</span></div>
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#aaa158964f8e54f7ae551d5f94bfc8feb">m_logic</a>.<a class="code" href="classripple_1_1PeerFinder_1_1Logic.html#a234bdeb63700199f9beba710c760ff4c">onWrite</a>(map);</div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; }</div>
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; </div>
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html"> 255</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html">Stats</a></div>
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; {</div>
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> Handler&gt;</div>
<div class="line"><a name="l00258"></a><span class="lineno"><a class="line" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#ade1fbd3909145e229e37ed5705c4eeec"> 258</a></span>&#160; <a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#ade1fbd3909145e229e37ed5705c4eeec">Stats</a>(</div>
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; Handler <span class="keyword">const</span>&amp; handler,</div>
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">beast::insight::Collector::ptr</a> <span class="keyword">const</span>&amp; collector)</div>
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; : <a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a8d389bd9d03113b28be3e8f7afe14f35">hook</a>(collector-&gt;make_hook(handler))</div>
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; , <a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a43d35cc2783065273b47b72ebdc30188">activeInboundPeers</a>(</div>
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; collector-&gt;make_gauge(<span class="stringliteral">&quot;Peer_Finder&quot;</span>, <span class="stringliteral">&quot;Active_Inbound_Peers&quot;</span>))</div>
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; , <a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a17c773054f863fd77999c3869cd64b14">activeOutboundPeers</a>(</div>
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; collector-&gt;make_gauge(<span class="stringliteral">&quot;Peer_Finder&quot;</span>, <span class="stringliteral">&quot;Active_Outbound_Peers&quot;</span>))</div>
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; {</div>
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; }</div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a8671ace4b94a1e8e9df972f0835ba470">close</a>();</div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <a class="code" href="classripple_1_1Stoppable.html#a65a95f9c14637491df60d3a07518fa09">stopped</a>();</div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; }</div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; </div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="comment">//--------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="comment">//</span></div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <span class="comment">// PropertyStream</span></div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="comment">//</span></div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="comment">//--------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; </div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordtype">void</span></div>
<div class="line"><a name="l00244"></a><span class="lineno"><a class="line" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a870c8e53e39d362015e4b165fa0be489"> 244</a></span>&#160; <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a870c8e53e39d362015e4b165fa0be489">onWrite</a>(<a class="code" href="classbeast_1_1PropertyStream_1_1Map.html">beast::PropertyStream::Map</a>&amp; map)<span class="keyword"> override</span></div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#aaa158964f8e54f7ae551d5f94bfc8feb">m_logic</a>.<a class="code" href="classripple_1_1PeerFinder_1_1Logic.html#a234bdeb63700199f9beba710c760ff4c">onWrite</a>(map);</div>
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; }</div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; </div>
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00250"></a><span class="lineno"><a class="line" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html"> 250</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html">Stats</a></div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; {</div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> Handler&gt;</div>
<div class="line"><a name="l00253"></a><span class="lineno"><a class="line" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#ade1fbd3909145e229e37ed5705c4eeec"> 253</a></span>&#160; <a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#ade1fbd3909145e229e37ed5705c4eeec">Stats</a>(</div>
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; Handler <span class="keyword">const</span>&amp; handler,</div>
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">beast::insight::Collector::ptr</a> <span class="keyword">const</span>&amp; collector)</div>
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; : <a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a8d389bd9d03113b28be3e8f7afe14f35">hook</a>(collector-&gt;make_hook(handler))</div>
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; , <a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a43d35cc2783065273b47b72ebdc30188">activeInboundPeers</a>(</div>
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; collector-&gt;make_gauge(<span class="stringliteral">&quot;Peer_Finder&quot;</span>, <span class="stringliteral">&quot;Active_Inbound_Peers&quot;</span>))</div>
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; , <a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a17c773054f863fd77999c3869cd64b14">activeOutboundPeers</a>(</div>
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; collector-&gt;make_gauge(<span class="stringliteral">&quot;Peer_Finder&quot;</span>, <span class="stringliteral">&quot;Active_Outbound_Peers&quot;</span>))</div>
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; {</div>
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; }</div>
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; </div>
<div class="line"><a name="l00264"></a><span class="lineno"><a class="line" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a8d389bd9d03113b28be3e8f7afe14f35"> 264</a></span>&#160; <a class="code" href="classbeast_1_1insight_1_1Hook.html">beast::insight::Hook</a> <a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a8d389bd9d03113b28be3e8f7afe14f35">hook</a>;</div>
<div class="line"><a name="l00265"></a><span class="lineno"><a class="line" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a43d35cc2783065273b47b72ebdc30188"> 265</a></span>&#160; <a class="code" href="classbeast_1_1insight_1_1Gauge.html">beast::insight::Gauge</a> <a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a43d35cc2783065273b47b72ebdc30188">activeInboundPeers</a>;</div>
<div class="line"><a name="l00266"></a><span class="lineno"><a class="line" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a17c773054f863fd77999c3869cd64b14"> 266</a></span>&#160; <a class="code" href="classbeast_1_1insight_1_1Gauge.html">beast::insight::Gauge</a> <a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a17c773054f863fd77999c3869cd64b14">activeOutboundPeers</a>;</div>
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; };</div>
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; </div>
<div class="line"><a name="l00269"></a><span class="lineno"><a class="line" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a8d389bd9d03113b28be3e8f7afe14f35"> 269</a></span>&#160; <a class="code" href="classbeast_1_1insight_1_1Hook.html">beast::insight::Hook</a> <a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a8d389bd9d03113b28be3e8f7afe14f35">hook</a>;</div>
<div class="line"><a name="l00270"></a><span class="lineno"><a class="line" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a43d35cc2783065273b47b72ebdc30188"> 270</a></span>&#160; <a class="code" href="classbeast_1_1insight_1_1Gauge.html">beast::insight::Gauge</a> <a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a43d35cc2783065273b47b72ebdc30188">activeInboundPeers</a>;</div>
<div class="line"><a name="l00271"></a><span class="lineno"><a class="line" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a17c773054f863fd77999c3869cd64b14"> 271</a></span>&#160; <a class="code" href="classbeast_1_1insight_1_1Gauge.html">beast::insight::Gauge</a> <a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a17c773054f863fd77999c3869cd64b14">activeOutboundPeers</a>;</div>
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; };</div>
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; </div>
<div class="line"><a name="l00274"></a><span class="lineno"><a class="line" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a99aae90a545b224f03e670cd79fb44d0"> 274</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/thread/mutex.html">std::mutex</a> <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a99aae90a545b224f03e670cd79fb44d0">m_statsMutex</a>;</div>
<div class="line"><a name="l00275"></a><span class="lineno"><a class="line" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a9eb332e2bbfec55616abbe35c751c995"> 275</a></span>&#160; <a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html">Stats</a> <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a9eb332e2bbfec55616abbe35c751c995">m_stats</a>;</div>
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; </div>
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordtype">void</span></div>
<div class="line"><a name="l00278"></a><span class="lineno"><a class="line" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a4357710d1ce7751653ad1123ca42271d"> 278</a></span>&#160; <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a4357710d1ce7751653ad1123ca42271d">collect_metrics</a>()</div>
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; {</div>
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/thread/lock_guard.html">std::lock_guard</a> lock(<a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a99aae90a545b224f03e670cd79fb44d0">m_statsMutex</a>);</div>
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a9eb332e2bbfec55616abbe35c751c995">m_stats</a>.<a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a43d35cc2783065273b47b72ebdc30188">activeInboundPeers</a> = <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#aaa158964f8e54f7ae551d5f94bfc8feb">m_logic</a>.<a class="code" href="classripple_1_1PeerFinder_1_1Logic.html#a5ae23cfe8dc80e711aa216b9401b562c">counts_</a>.<a class="code" href="classripple_1_1PeerFinder_1_1Counts.html#a51961e19c9b862fc1aad3f87c6c36d68">inboundActive</a>();</div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a9eb332e2bbfec55616abbe35c751c995">m_stats</a>.<a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a17c773054f863fd77999c3869cd64b14">activeOutboundPeers</a> = <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#aaa158964f8e54f7ae551d5f94bfc8feb">m_logic</a>.<a class="code" href="classripple_1_1PeerFinder_1_1Logic.html#a5ae23cfe8dc80e711aa216b9401b562c">counts_</a>.<a class="code" href="classripple_1_1PeerFinder_1_1Counts.html#a5079e7463648892f9b3b89c170eca739">out_active</a>();</div>
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; }</div>
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;};</div>
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; </div>
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;<span class="comment">//------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; </div>
<div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="classripple_1_1PeerFinder_1_1Manager.html#a2e4a66df556c199a25368843cc66c469"> 288</a></span>&#160;<a class="code" href="classripple_1_1PeerFinder_1_1Manager.html#a2e4a66df556c199a25368843cc66c469">Manager::Manager</a>(<a class="code" href="classripple_1_1Stoppable.html">Stoppable</a>&amp; parent)</div>
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; : <a class="code" href="classripple_1_1Stoppable.html">Stoppable</a>(<span class="stringliteral">&quot;PeerFinder&quot;</span>, parent)</div>
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; , <a class="code" href="namespacebeast.html">beast</a>::PropertyStream::<a class="code" href="classripple_1_1PeerFinder_1_1Source.html">Source</a>(<span class="stringliteral">&quot;peerfinder&quot;</span>)</div>
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160;{</div>
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;}</div>
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; </div>
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;<a class="codeRef" href="http://en.cppreference.com/w/cpp/memory/unique_ptr.html">std::unique_ptr&lt;Manager&gt;</a></div>
<div class="line"><a name="l00295"></a><span class="lineno"><a class="line" href="namespaceripple_1_1PeerFinder.html#a17c6099fadccb4dfdccc579d23f1f66d"> 295</a></span>&#160;<a class="code" href="namespaceripple_1_1PeerFinder.html#a17c6099fadccb4dfdccc579d23f1f66d">make_Manager</a>(</div>
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <a class="code" href="classripple_1_1Stoppable.html">Stoppable</a>&amp; parent,</div>
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; boost::asio::io_service&amp; io_service,</div>
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <a class="code" href="classbeast_1_1abstract__clock.html">clock_type</a>&amp; clock,</div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <a class="code" href="classbeast_1_1Journal.html">beast::Journal</a> journal,</div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <a class="code" href="classripple_1_1BasicConfig.html">BasicConfig</a> <span class="keyword">const</span>&amp; config,</div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">beast::insight::Collector::ptr</a> <span class="keyword">const</span>&amp; collector)</div>
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;{</div>
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="keywordflow">return</span> std::make_unique&lt;ManagerImp&gt;(</div>
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; parent, io_service, clock, journal, config, collector);</div>
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;}</div>
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; </div>
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;} <span class="comment">// namespace PeerFinder</span></div>
<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;} <span class="comment">// namespace ripple</span></div>
<div class="line"><a name="l00269"></a><span class="lineno"><a class="line" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a99aae90a545b224f03e670cd79fb44d0"> 269</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/thread/mutex.html">std::mutex</a> <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a99aae90a545b224f03e670cd79fb44d0">m_statsMutex</a>;</div>
<div class="line"><a name="l00270"></a><span class="lineno"><a class="line" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a9eb332e2bbfec55616abbe35c751c995"> 270</a></span>&#160; <a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html">Stats</a> <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a9eb332e2bbfec55616abbe35c751c995">m_stats</a>;</div>
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; </div>
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="keywordtype">void</span></div>
<div class="line"><a name="l00273"></a><span class="lineno"><a class="line" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a4357710d1ce7751653ad1123ca42271d"> 273</a></span>&#160; <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a4357710d1ce7751653ad1123ca42271d">collect_metrics</a>()</div>
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; {</div>
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/thread/lock_guard.html">std::lock_guard</a> lock(<a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a99aae90a545b224f03e670cd79fb44d0">m_statsMutex</a>);</div>
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a9eb332e2bbfec55616abbe35c751c995">m_stats</a>.<a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a43d35cc2783065273b47b72ebdc30188">activeInboundPeers</a> = <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#aaa158964f8e54f7ae551d5f94bfc8feb">m_logic</a>.<a class="code" href="classripple_1_1PeerFinder_1_1Logic.html#a5ae23cfe8dc80e711aa216b9401b562c">counts_</a>.<a class="code" href="classripple_1_1PeerFinder_1_1Counts.html#a51961e19c9b862fc1aad3f87c6c36d68">inboundActive</a>();</div>
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#a9eb332e2bbfec55616abbe35c751c995">m_stats</a>.<a class="code" href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a17c773054f863fd77999c3869cd64b14">activeOutboundPeers</a> = <a class="code" href="classripple_1_1PeerFinder_1_1ManagerImp.html#aaa158964f8e54f7ae551d5f94bfc8feb">m_logic</a>.<a class="code" href="classripple_1_1PeerFinder_1_1Logic.html#a5ae23cfe8dc80e711aa216b9401b562c">counts_</a>.<a class="code" href="classripple_1_1PeerFinder_1_1Counts.html#a5079e7463648892f9b3b89c170eca739">out_active</a>();</div>
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; }</div>
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;};</div>
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; </div>
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;<span class="comment">//------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; </div>
<div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="classripple_1_1PeerFinder_1_1Manager.html#a2e4a66df556c199a25368843cc66c469"> 283</a></span>&#160;<a class="code" href="classripple_1_1PeerFinder_1_1Manager.html#a2e4a66df556c199a25368843cc66c469">Manager::Manager</a>(<a class="code" href="classripple_1_1Stoppable.html">Stoppable</a>&amp; parent)</div>
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; : <a class="code" href="classripple_1_1Stoppable.html">Stoppable</a>(<span class="stringliteral">&quot;PeerFinder&quot;</span>, parent)</div>
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; , <a class="code" href="namespacebeast.html">beast</a>::PropertyStream::<a class="code" href="classripple_1_1PeerFinder_1_1Source.html">Source</a>(<span class="stringliteral">&quot;peerfinder&quot;</span>)</div>
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;{</div>
<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;}</div>
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; </div>
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;<a class="codeRef" href="http://en.cppreference.com/w/cpp/memory/unique_ptr.html">std::unique_ptr&lt;Manager&gt;</a></div>
<div class="line"><a name="l00290"></a><span class="lineno"><a class="line" href="namespaceripple_1_1PeerFinder.html#a17c6099fadccb4dfdccc579d23f1f66d"> 290</a></span>&#160;<a class="code" href="namespaceripple_1_1PeerFinder.html#a17c6099fadccb4dfdccc579d23f1f66d">make_Manager</a>(</div>
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <a class="code" href="classripple_1_1Stoppable.html">Stoppable</a>&amp; parent,</div>
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; boost::asio::io_service&amp; io_service,</div>
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <a class="code" href="classbeast_1_1abstract__clock.html">clock_type</a>&amp; clock,</div>
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <a class="code" href="classbeast_1_1Journal.html">beast::Journal</a> journal,</div>
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <a class="code" href="classripple_1_1BasicConfig.html">BasicConfig</a> <span class="keyword">const</span>&amp; config,</div>
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">beast::insight::Collector::ptr</a> <span class="keyword">const</span>&amp; collector)</div>
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;{</div>
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keywordflow">return</span> std::make_unique&lt;ManagerImp&gt;(</div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; parent, io_service, clock, journal, config, collector);</div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;}</div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; </div>
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;} <span class="comment">// namespace PeerFinder</span></div>
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160;} <span class="comment">// namespace ripple</span></div>
</div><!-- fragment --></div><!-- contents -->
<div class="ttc" id="aclassbeast_1_1PropertyStream_1_1Source_html_a5672372869d3a59c7cd2f7ce3056ae33"><div class="ttname"><a href="classbeast_1_1PropertyStream_1_1Source.html#a5672372869d3a59c7cd2f7ce3056ae33">beast::PropertyStream::Source::name</a></div><div class="ttdeci">std::string const &amp; name() const</div><div class="ttdoc">Returns the name of this source.</div><div class="ttdef"><b>Definition:</b> <a href="beast__PropertyStream_8cpp_source.html#l00190">beast_PropertyStream.cpp:190</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_aaa158964f8e54f7ae551d5f94bfc8feb"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#aaa158964f8e54f7ae551d5f94bfc8feb">ripple::PeerFinder::ManagerImp::m_logic</a></div><div class="ttdeci">Logic&lt; decltype(checker_)&gt; m_logic</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00044">PeerfinderManager.cpp:44</a></div></div>
@@ -399,25 +394,25 @@ $(function() {
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a65a49b97b14433a3fe61f94654ce2b5f"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a65a49b97b14433a3fe61f94654ce2b5f">ripple::PeerFinder::ManagerImp::onConnected</a></div><div class="ttdeci">bool onConnected(std::shared_ptr&lt; Slot &gt; const &amp;slot, beast::IP::Endpoint const &amp;local_endpoint) override</div><div class="ttdoc">Called when an outbound connection attempt succeeds.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00174">PeerfinderManager.cpp:174</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1Logic_html_a9d44d9f8f30da541c8742feb3e2de894"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1Logic.html#a9d44d9f8f30da541c8742feb3e2de894">ripple::PeerFinder::Logic::onRedirects</a></div><div class="ttdeci">void onRedirects(FwdIter first, FwdIter last, boost::asio::ip::tcp::endpoint const &amp;remote_address)</div><div class="ttdef"><b>Definition:</b> <a href="peerfinder_2impl_2Logic_8h_source.html#l01202">peerfinder/impl/Logic.h:1202</a></div></div>
<div class="ttc" id="alock_guard_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/thread/lock_guard.html">std::lock_guard</a></div><div class="ttdoc">STL class.</div></div>
<div class="ttc" id="astructripple_1_1PeerFinder_1_1ManagerImp_1_1Stats_html_a17c773054f863fd77999c3869cd64b14"><div class="ttname"><a href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a17c773054f863fd77999c3869cd64b14">ripple::PeerFinder::ManagerImp::Stats::activeOutboundPeers</a></div><div class="ttdeci">beast::insight::Gauge activeOutboundPeers</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00271">PeerfinderManager.cpp:271</a></div></div>
<div class="ttc" id="astructripple_1_1PeerFinder_1_1ManagerImp_1_1Stats_html_a17c773054f863fd77999c3869cd64b14"><div class="ttname"><a href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a17c773054f863fd77999c3869cd64b14">ripple::PeerFinder::ManagerImp::Stats::activeOutboundPeers</a></div><div class="ttdeci">beast::insight::Gauge activeOutboundPeers</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00266">PeerfinderManager.cpp:266</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1Source_html"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1Source.html">ripple::PeerFinder::Source</a></div><div class="ttdoc">A static or dynamic source of peer addresses.</div><div class="ttdef"><b>Definition:</b> <a href="Source_8h_source.html#l00037">Source.h:37</a></div></div>
<div class="ttc" id="anamespaceboost_html"><div class="ttname"><a href="namespaceboost.html">boost</a></div><div class="ttdef"><b>Definition:</b> <a href="IPAddress_8h_source.html#l00117">IPAddress.h:117</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a9f892232f9a295630e51cc03737a1fd8"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a9f892232f9a295630e51cc03737a1fd8">ripple::PeerFinder::ManagerImp::addFallbackURL</a></div><div class="ttdeci">void addFallbackURL(std::string const &amp;name, std::string const &amp;url)</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00120">PeerfinderManager.cpp:120</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_aeb29c18bd94b5be994475c19e21bca41"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#aeb29c18bd94b5be994475c19e21bca41">ripple::PeerFinder::ManagerImp::autoconnect</a></div><div class="ttdeci">std::vector&lt; beast::IP::Endpoint &gt; autoconnect() override</div><div class="ttdoc">Return a set of addresses we should connect to.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00200">PeerfinderManager.cpp:200</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_ad29be58f10736b4ed854b5c8a81dc3ab"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#ad29be58f10736b4ed854b5c8a81dc3ab">ripple::PeerFinder::ManagerImp::redirect</a></div><div class="ttdeci">std::vector&lt; Endpoint &gt; redirect(std::shared_ptr&lt; Slot &gt; const &amp;slot) override</div><div class="ttdoc">Returns a set of endpoints suitable for redirection.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00193">PeerfinderManager.cpp:193</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a9eb332e2bbfec55616abbe35c751c995"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a9eb332e2bbfec55616abbe35c751c995">ripple::PeerFinder::ManagerImp::m_stats</a></div><div class="ttdeci">Stats m_stats</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00275">PeerfinderManager.cpp:275</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a24a58d109ca55cd2e7926974bc9645f8"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a24a58d109ca55cd2e7926974bc9645f8">ripple::PeerFinder::ManagerImp::onStop</a></div><div class="ttdeci">void onStop() override</div><div class="ttdoc">Override called when the stop notification is issued.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00236">PeerfinderManager.cpp:236</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a99aae90a545b224f03e670cd79fb44d0"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a99aae90a545b224f03e670cd79fb44d0">ripple::PeerFinder::ManagerImp::m_statsMutex</a></div><div class="ttdeci">std::mutex m_statsMutex</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00274">PeerfinderManager.cpp:274</a></div></div>
<div class="ttc" id="astructripple_1_1PeerFinder_1_1ManagerImp_1_1Stats_html"><div class="ttname"><a href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html">ripple::PeerFinder::ManagerImp::Stats</a></div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00255">PeerfinderManager.cpp:255</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a9eb332e2bbfec55616abbe35c751c995"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a9eb332e2bbfec55616abbe35c751c995">ripple::PeerFinder::ManagerImp::m_stats</a></div><div class="ttdeci">Stats m_stats</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00270">PeerfinderManager.cpp:270</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a24a58d109ca55cd2e7926974bc9645f8"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a24a58d109ca55cd2e7926974bc9645f8">ripple::PeerFinder::ManagerImp::onStop</a></div><div class="ttdeci">void onStop() override</div><div class="ttdoc">Override called when the stop notification is issued.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00231">PeerfinderManager.cpp:231</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a99aae90a545b224f03e670cd79fb44d0"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a99aae90a545b224f03e670cd79fb44d0">ripple::PeerFinder::ManagerImp::m_statsMutex</a></div><div class="ttdeci">std::mutex m_statsMutex</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00269">PeerfinderManager.cpp:269</a></div></div>
<div class="ttc" id="astructripple_1_1PeerFinder_1_1ManagerImp_1_1Stats_html"><div class="ttname"><a href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html">ripple::PeerFinder::ManagerImp::Stats</a></div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00250">PeerfinderManager.cpp:250</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a49200aebb924a25cc44db1e32df67e02"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a49200aebb924a25cc44db1e32df67e02">ripple::PeerFinder::ManagerImp::m_store</a></div><div class="ttdeci">StoreSqdb m_store</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00042">PeerfinderManager.cpp:42</a></div></div>
<div class="ttc" id="aclassripple_1_1Stoppable_html"><div class="ttname"><a href="classripple_1_1Stoppable.html">ripple::Stoppable</a></div><div class="ttdoc">Provides an interface for starting and stopping.</div><div class="ttdef"><b>Definition:</b> <a href="Stoppable_8h_source.html#l00201">Stoppable.h:201</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a20612412402a342e2acc42a3f19936e7"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a20612412402a342e2acc42a3f19936e7">ripple::PeerFinder::ManagerImp::onPrepare</a></div><div class="ttdeci">void onPrepare() override</div><div class="ttdoc">Override called during preparation.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00224">PeerfinderManager.cpp:224</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1Logic_html_a26436b866efc1f7f761b13385a13e2e2"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1Logic.html#a26436b866efc1f7f761b13385a13e2e2">ripple::PeerFinder::Logic::onConnected</a></div><div class="ttdeci">bool onConnected(SlotImp::ptr const &amp;slot, beast::IP::Endpoint const &amp;local_endpoint)</div><div class="ttdef"><b>Definition:</b> <a href="peerfinder_2impl_2Logic_8h_source.html#l00346">peerfinder/impl/Logic.h:346</a></div></div>
<div class="ttc" id="athread_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/header/thread.html">thread</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1Manager_html_a2e4a66df556c199a25368843cc66c469"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1Manager.html#a2e4a66df556c199a25368843cc66c469">ripple::PeerFinder::Manager::Manager</a></div><div class="ttdeci">Manager(Stoppable &amp;parent)</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00288">PeerfinderManager.cpp:288</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1Manager_html_a2e4a66df556c199a25368843cc66c469"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1Manager.html#a2e4a66df556c199a25368843cc66c469">ripple::PeerFinder::Manager::Manager</a></div><div class="ttdeci">Manager(Stoppable &amp;parent)</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00283">PeerfinderManager.cpp:283</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a612333401bcde41325e066bb790d67f0"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a612333401bcde41325e066bb790d67f0">ripple::PeerFinder::ManagerImp::ManagerImp</a></div><div class="ttdeci">ManagerImp(Stoppable &amp;stoppable, boost::asio::io_service &amp;io_service, clock_type &amp;clock, beast::Journal journal, BasicConfig const &amp;config, beast::insight::Collector::ptr const &amp;collector)</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00049">PeerfinderManager.cpp:49</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a06be604d80043a7f809ccd7198f40f31"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a06be604d80043a7f809ccd7198f40f31">ripple::PeerFinder::ManagerImp::addFixedPeer</a></div><div class="ttdeci">void addFixedPeer(std::string const &amp;name, std::vector&lt; beast::IP::Endpoint &gt; const &amp;addresses) override</div><div class="ttdoc">Add a peer that should always be connected.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00104">PeerfinderManager.cpp:104</a></div></div>
<div class="ttc" id="anamespaceripple_1_1PeerFinder_html_a17c6099fadccb4dfdccc579d23f1f66d"><div class="ttname"><a href="namespaceripple_1_1PeerFinder.html#a17c6099fadccb4dfdccc579d23f1f66d">ripple::PeerFinder::make_Manager</a></div><div class="ttdeci">std::unique_ptr&lt; Manager &gt; make_Manager(Stoppable &amp;parent, boost::asio::io_service &amp;io_service, clock_type &amp;clock, beast::Journal journal, BasicConfig const &amp;config, beast::insight::Collector::ptr const &amp;collector)</div><div class="ttdoc">Create a new Manager.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00295">PeerfinderManager.cpp:295</a></div></div>
<div class="ttc" id="anamespaceripple_1_1PeerFinder_html_a17c6099fadccb4dfdccc579d23f1f66d"><div class="ttname"><a href="namespaceripple_1_1PeerFinder.html#a17c6099fadccb4dfdccc579d23f1f66d">ripple::PeerFinder::make_Manager</a></div><div class="ttdeci">std::unique_ptr&lt; Manager &gt; make_Manager(Stoppable &amp;parent, boost::asio::io_service &amp;io_service, clock_type &amp;clock, beast::Journal journal, BasicConfig const &amp;config, beast::insight::Collector::ptr const &amp;collector)</div><div class="ttdoc">Create a new Manager.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00290">PeerfinderManager.cpp:290</a></div></div>
<div class="ttc" id="aclassripple_1_1PublicKey_html"><div class="ttname"><a href="classripple_1_1PublicKey.html">ripple::PublicKey</a></div><div class="ttdoc">A public key.</div><div class="ttdef"><b>Definition:</b> <a href="PublicKey_8h_source.html#l00059">PublicKey.h:59</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a0b581151bf586fa9f1b64d250e947358"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a0b581151bf586fa9f1b64d250e947358">ripple::PeerFinder::ManagerImp::on_closed</a></div><div class="ttdeci">void on_closed(std::shared_ptr&lt; Slot &gt; const &amp;slot) override</div><div class="ttdoc">Called when the slot is closed.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00150">PeerfinderManager.cpp:150</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1Logic_html_aa51d139903531e663640d77b962bd390"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1Logic.html#aa51d139903531e663640d77b962bd390">ripple::PeerFinder::Logic::addStaticSource</a></div><div class="ttdeci">void addStaticSource(std::shared_ptr&lt; Source &gt; const &amp;source)</div><div class="ttdef"><b>Definition:</b> <a href="peerfinder_2impl_2Logic_8h_source.html#l01004">peerfinder/impl/Logic.h:1004</a></div></div>
@@ -436,35 +431,34 @@ $(function() {
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1Logic_html_a596f7cc512ca9c9aa0ffe39a9e3959e7"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1Logic.html#a596f7cc512ca9c9aa0ffe39a9e3959e7">ripple::PeerFinder::Logic::activate</a></div><div class="ttdeci">Result activate(SlotImp::ptr const &amp;slot, PublicKey const &amp;key, bool reserved)</div><div class="ttdef"><b>Definition:</b> <a href="peerfinder_2impl_2Logic_8h_source.html#l00383">peerfinder/impl/Logic.h:383</a></div></div>
<div class="ttc" id="aclassbeast_1_1abstract__clock_html"><div class="ttname"><a href="classbeast_1_1abstract__clock.html">beast::abstract_clock</a></div><div class="ttdoc">Abstract interface to a clock.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__clock_8h_source.html#l00057">abstract_clock.h:57</a></div></div>
<div class="ttc" id="amemory_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/header/memory.html">memory</a></div></div>
<div class="ttc" id="astructripple_1_1PeerFinder_1_1ManagerImp_1_1Stats_html_ade1fbd3909145e229e37ed5705c4eeec"><div class="ttname"><a href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#ade1fbd3909145e229e37ed5705c4eeec">ripple::PeerFinder::ManagerImp::Stats::Stats</a></div><div class="ttdeci">Stats(Handler const &amp;handler, beast::insight::Collector::ptr const &amp;collector)</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00258">PeerfinderManager.cpp:258</a></div></div>
<div class="ttc" id="astructripple_1_1PeerFinder_1_1ManagerImp_1_1Stats_html_ade1fbd3909145e229e37ed5705c4eeec"><div class="ttname"><a href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#ade1fbd3909145e229e37ed5705c4eeec">ripple::PeerFinder::ManagerImp::Stats::Stats</a></div><div class="ttdeci">Stats(Handler const &amp;handler, beast::insight::Collector::ptr const &amp;collector)</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00253">PeerfinderManager.cpp:253</a></div></div>
<div class="ttc" id="aclassbeast_1_1insight_1_1Gauge_html"><div class="ttname"><a href="classbeast_1_1insight_1_1Gauge.html">beast::insight::Gauge</a></div><div class="ttdoc">A metric for measuring an integral value.</div><div class="ttdef"><b>Definition:</b> <a href="Gauge_8h_source.html#l00039">Gauge.h:39</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_ac81da5148e01b182e36f96232ca62506"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#ac81da5148e01b182e36f96232ca62506">ripple::PeerFinder::ManagerImp::buildEndpointsForPeers</a></div><div class="ttdeci">std::vector&lt; std::pair&lt; std::shared_ptr&lt; Slot &gt;, std::vector&lt; Endpoint &gt; &gt; &gt; buildEndpointsForPeers() override</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00212">PeerfinderManager.cpp:212</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1Logic_html_aa8c245c6a86c024ccafc1b4bb7d57592"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1Logic.html#aa8c245c6a86c024ccafc1b4bb7d57592">ripple::PeerFinder::Logic::once_per_second</a></div><div class="ttdeci">void once_per_second()</div><div class="ttdef"><b>Definition:</b> <a href="peerfinder_2impl_2Logic_8h_source.html#l00672">peerfinder/impl/Logic.h:672</a></div></div>
<div class="ttc" id="anamespaceripple_html"><div class="ttname"><a href="namespaceripple.html">ripple</a></div><div class="ttdoc">Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.</div><div class="ttdef"><b>Definition:</b> <a href="RCLCensorshipDetector_8h_source.html#l00029">RCLCensorshipDetector.h:29</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a493009acac1a9bccd55d84632796f0d0"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a493009acac1a9bccd55d84632796f0d0">ripple::PeerFinder::ManagerImp::on_failure</a></div><div class="ttdeci">void on_failure(std::shared_ptr&lt; Slot &gt; const &amp;slot) override</div><div class="ttdoc">Called when an outbound connection is deemed to have failed.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00157">PeerfinderManager.cpp:157</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_aadd75f0fa58820b55705ba28adec085b"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#aadd75f0fa58820b55705ba28adec085b">ripple::PeerFinder::ManagerImp::onStart</a></div><div class="ttdeci">void onStart() override</div><div class="ttdoc">Override called during start.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00231">PeerfinderManager.cpp:231</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a9818b2efc99a9d862f01c900835b1f98"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a9818b2efc99a9d862f01c900835b1f98">ripple::PeerFinder::ManagerImp::once_per_second</a></div><div class="ttdeci">void once_per_second() override</div><div class="ttdoc">Perform periodic activity.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00206">PeerfinderManager.cpp:206</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_acac935d3db78d6033a0095f161422cc1"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#acac935d3db78d6033a0095f161422cc1">ripple::PeerFinder::ManagerImp::config</a></div><div class="ttdeci">Config config() override</div><div class="ttdoc">Returns the configuration for the manager.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00098">PeerfinderManager.cpp:98</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a1290e864b0681f8d6763800bf28ec8aa"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a1290e864b0681f8d6763800bf28ec8aa">ripple::PeerFinder::ManagerImp::addFallbackStrings</a></div><div class="ttdeci">void addFallbackStrings(std::string const &amp;name, std::vector&lt; std::string &gt; const &amp;strings) override</div><div class="ttdoc">Add a set of strings as fallback IP::Endpoint sources.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00112">PeerfinderManager.cpp:112</a></div></div>
<div class="ttc" id="abegin_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector/begin.html">std::vector::begin</a></div><div class="ttdeci">T begin(T... args)</div></div>
<div class="ttc" id="anamespacestd_html"><div class="ttname"><a href="namespacestd.html">std</a></div><div class="ttdoc">STL namespace.</div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1Logic_html_a8fc2d3b7bafe4588804f417bd100340b"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1Logic.html#a8fc2d3b7bafe4588804f417bd100340b">ripple::PeerFinder::Logic::new_inbound_slot</a></div><div class="ttdeci">SlotImp::ptr new_inbound_slot(beast::IP::Endpoint const &amp;local_endpoint, beast::IP::Endpoint const &amp;remote_endpoint)</div><div class="ttdef"><b>Definition:</b> <a href="peerfinder_2impl_2Logic_8h_source.html#l00266">peerfinder/impl/Logic.h:266</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a4357710d1ce7751653ad1123ca42271d"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a4357710d1ce7751653ad1123ca42271d">ripple::PeerFinder::ManagerImp::collect_metrics</a></div><div class="ttdeci">void collect_metrics()</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00278">PeerfinderManager.cpp:278</a></div></div>
<div class="ttc" id="astructripple_1_1PeerFinder_1_1ManagerImp_1_1Stats_html_a8d389bd9d03113b28be3e8f7afe14f35"><div class="ttname"><a href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a8d389bd9d03113b28be3e8f7afe14f35">ripple::PeerFinder::ManagerImp::Stats::hook</a></div><div class="ttdeci">beast::insight::Hook hook</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00269">PeerfinderManager.cpp:269</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a4357710d1ce7751653ad1123ca42271d"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a4357710d1ce7751653ad1123ca42271d">ripple::PeerFinder::ManagerImp::collect_metrics</a></div><div class="ttdeci">void collect_metrics()</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00273">PeerfinderManager.cpp:273</a></div></div>
<div class="ttc" id="astructripple_1_1PeerFinder_1_1ManagerImp_1_1Stats_html_a8d389bd9d03113b28be3e8f7afe14f35"><div class="ttname"><a href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a8d389bd9d03113b28be3e8f7afe14f35">ripple::PeerFinder::ManagerImp::Stats::hook</a></div><div class="ttdeci">beast::insight::Hook hook</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00264">PeerfinderManager.cpp:264</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html">ripple::PeerFinder::ManagerImp</a></div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00035">PeerfinderManager.cpp:35</a></div></div>
<div class="ttc" id="amutex_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/thread/mutex.html">std::mutex</a></div><div class="ttdoc">STL class.</div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a4a2476b15afa76c6416db526109f4bd6"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a4a2476b15afa76c6416db526109f4bd6">ripple::PeerFinder::ManagerImp::checker_</a></div><div class="ttdeci">Checker&lt; boost::asio::ip::tcp &gt; checker_</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00043">PeerfinderManager.cpp:43</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_af05f7bde1f04d25148cdb6b7d936d99c"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#af05f7bde1f04d25148cdb6b7d936d99c">ripple::PeerFinder::ManagerImp::on_endpoints</a></div><div class="ttdeci">void on_endpoints(std::shared_ptr&lt; Slot &gt; const &amp;slot, Endpoints const &amp;endpoints) override</div><div class="ttdoc">Called when mtENDPOINTS is received.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00142">PeerfinderManager.cpp:142</a></div></div>
<div class="ttc" id="aclassbeast_1_1IP_1_1Endpoint_html"><div class="ttname"><a href="classbeast_1_1IP_1_1Endpoint.html">beast::IP::Endpoint</a></div><div class="ttdoc">A version-independent IP address and port combination.</div><div class="ttdef"><b>Definition:</b> <a href="IPEndpoint_8h_source.html#l00039">IPEndpoint.h:39</a></div></div>
<div class="ttc" id="aend_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector/end.html">std::vector::end</a></div><div class="ttdeci">T end(T... args)</div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a870c8e53e39d362015e4b165fa0be489"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a870c8e53e39d362015e4b165fa0be489">ripple::PeerFinder::ManagerImp::onWrite</a></div><div class="ttdeci">void onWrite(beast::PropertyStream::Map &amp;map) override</div><div class="ttdoc">Subclass override.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00249">PeerfinderManager.cpp:249</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a870c8e53e39d362015e4b165fa0be489"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a870c8e53e39d362015e4b165fa0be489">ripple::PeerFinder::ManagerImp::onWrite</a></div><div class="ttdeci">void onWrite(beast::PropertyStream::Map &amp;map) override</div><div class="ttdoc">Subclass override.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00244">PeerfinderManager.cpp:244</a></div></div>
<div class="ttc" id="astructripple_1_1PeerFinder_1_1Config_html"><div class="ttname"><a href="structripple_1_1PeerFinder_1_1Config.html">ripple::PeerFinder::Config</a></div><div class="ttdoc">PeerFinder configuration settings.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8h_source.html#l00041">PeerfinderManager.h:41</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1Logic_html_a31f8cf137e2aa6e827f49bee762591a3"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1Logic.html#a31f8cf137e2aa6e827f49bee762591a3">ripple::PeerFinder::Logic::on_closed</a></div><div class="ttdeci">void on_closed(SlotImp::ptr const &amp;slot)</div><div class="ttdef"><b>Definition:</b> <a href="peerfinder_2impl_2Logic_8h_source.html#l00876">peerfinder/impl/Logic.h:876</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a8671ace4b94a1e8e9df972f0835ba470"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a8671ace4b94a1e8e9df972f0835ba470">ripple::PeerFinder::ManagerImp::close</a></div><div class="ttdeci">void close()</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00075">PeerfinderManager.cpp:75</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1Logic_html_af9caa5f123b38c830b535f1d64b810dc"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1Logic.html#af9caa5f123b38c830b535f1d64b810dc">ripple::PeerFinder::Logic::config</a></div><div class="ttdeci">void config(Config const &amp;c)</div><div class="ttdef"><b>Definition:</b> <a href="peerfinder_2impl_2Logic_8h_source.html#l00159">peerfinder/impl/Logic.h:159</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_ad650e898bfe237cb04ff6c67bdf2cf0d"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#ad650e898bfe237cb04ff6c67bdf2cf0d">ripple::PeerFinder::ManagerImp::onRedirects</a></div><div class="ttdeci">void onRedirects(boost::asio::ip::tcp::endpoint const &amp;remote_address, std::vector&lt; boost::asio::ip::tcp::endpoint &gt; const &amp;eps) override</div><div class="ttdoc">Called when we received redirect IPs from a busy peer.</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00164">PeerfinderManager.cpp:164</a></div></div>
<div class="ttc" id="aunique_ptr_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/memory/unique_ptr.html">std::unique_ptr</a></div><div class="ttdoc">STL class.</div></div>
<div class="ttc" id="astructripple_1_1PeerFinder_1_1ManagerImp_1_1Stats_html_a43d35cc2783065273b47b72ebdc30188"><div class="ttname"><a href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a43d35cc2783065273b47b72ebdc30188">ripple::PeerFinder::ManagerImp::Stats::activeInboundPeers</a></div><div class="ttdeci">beast::insight::Gauge activeInboundPeers</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00270">PeerfinderManager.cpp:270</a></div></div>
<div class="ttc" id="astructripple_1_1PeerFinder_1_1ManagerImp_1_1Stats_html_a43d35cc2783065273b47b72ebdc30188"><div class="ttname"><a href="structripple_1_1PeerFinder_1_1ManagerImp_1_1Stats.html#a43d35cc2783065273b47b72ebdc30188">ripple::PeerFinder::ManagerImp::Stats::activeInboundPeers</a></div><div class="ttdeci">beast::insight::Gauge activeInboundPeers</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00265">PeerfinderManager.cpp:265</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a1ff472732257884b1ff6003440bbbd14"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a1ff472732257884b1ff6003440bbbd14">ripple::PeerFinder::ManagerImp::work_</a></div><div class="ttdeci">boost::optional&lt; boost::asio::io_service::work &gt; work_</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00039">PeerfinderManager.cpp:39</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1SourceStrings_html_a192adc9607629f4cb4ec73bba647b30c"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1SourceStrings.html#a192adc9607629f4cb4ec73bba647b30c">ripple::PeerFinder::SourceStrings::New</a></div><div class="ttdeci">static std::shared_ptr&lt; Source &gt; New(std::string const &amp;name, Strings const &amp;strings)</div><div class="ttdef"><b>Definition:</b> <a href="SourceStrings_8cpp_source.html#l00065">SourceStrings.cpp:65</a></div></div>
<div class="ttc" id="aclassripple_1_1PeerFinder_1_1ManagerImp_html_a1a156a760dc9fa9ec5151ed7f1892092"><div class="ttname"><a href="classripple_1_1PeerFinder_1_1ManagerImp.html#a1a156a760dc9fa9ec5151ed7f1892092">ripple::PeerFinder::ManagerImp::~ManagerImp</a></div><div class="ttdeci">~ManagerImp() override</div><div class="ttdef"><b>Definition:</b> <a href="PeerfinderManager_8cpp_source.html#l00069">PeerfinderManager.cpp:69</a></div></div>