Files
rippled/classripple_1_1SHAMapStore.html
2022-05-11 23:57:28 +00:00

509 lines
26 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::SHAMapStore Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">rippled
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceripple.html">ripple</a></li><li class="navelem"><a class="el" href="classripple_1_1SHAMapStore.html">SHAMapStore</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classripple_1_1SHAMapStore-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ripple::SHAMapStore Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
</div><!--header-->
<div class="contents">
<p>class to create database, launch online delete thread, and related SQLite database
<a href="classripple_1_1SHAMapStore.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for ripple::SHAMapStore:</div>
<div class="dyncontent">
<div class="center"><img src="classripple_1_1SHAMapStore__inherit__graph.png" border="0" usemap="#ripple_1_1SHAMapStore_inherit__map" alt="Inheritance graph"/></div>
<map name="ripple_1_1SHAMapStore_inherit__map" id="ripple_1_1SHAMapStore_inherit__map">
<area shape="rect" title="class to create database, launch online delete thread, and related SQLite database" alt="" coords="18,5,173,32"/>
<area shape="rect" href="classripple_1_1SHAMapStoreImp.html" title=" " alt="" coords="5,80,185,107"/>
</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:a89c36a56b7b199b87049a1089463c619"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapStore.html#a89c36a56b7b199b87049a1089463c619">~SHAMapStore</a> ()=default</td></tr>
<tr class="separator:a89c36a56b7b199b87049a1089463c619"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a16eedab60b2fdc51c616369d5f3969"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapStore.html#a3a16eedab60b2fdc51c616369d5f3969">onLedgerClosed</a> (<a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1Ledger.html">Ledger</a> const &gt; const &amp;ledger)=0</td></tr>
<tr class="memdesc:a3a16eedab60b2fdc51c616369d5f3969"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by <a class="el" href="classripple_1_1LedgerMaster.html">LedgerMaster</a> every time a ledger validates. <a href="classripple_1_1SHAMapStore.html#a3a16eedab60b2fdc51c616369d5f3969">More...</a><br /></td></tr>
<tr class="separator:a3a16eedab60b2fdc51c616369d5f3969"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a17c3e3bce57d06f2996f79dafc802879"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapStore.html#a17c3e3bce57d06f2996f79dafc802879">start</a> ()=0</td></tr>
<tr class="separator:a17c3e3bce57d06f2996f79dafc802879"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96ae0b236ea08f5178309d80d27a7c5f"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapStore.html#a96ae0b236ea08f5178309d80d27a7c5f">rendezvous</a> () const =0</td></tr>
<tr class="separator:a96ae0b236ea08f5178309d80d27a7c5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a611a7f70fda14bd4fbff000385baaa59"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapStore.html#a611a7f70fda14bd4fbff000385baaa59">stop</a> ()=0</td></tr>
<tr class="separator:a611a7f70fda14bd4fbff000385baaa59"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6bd103dd779634de40c59681605874e6"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapStore.html#a6bd103dd779634de40c59681605874e6">clampFetchDepth</a> (<a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> fetch_depth) const =0</td></tr>
<tr class="separator:a6bd103dd779634de40c59681605874e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1991ddf3bb16d194fcea4bf989d56c91"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" href="http://en.cppreference.com/w/cpp/memory/unique_ptr.html">std::unique_ptr</a>&lt; <a class="el" href="classripple_1_1NodeStore_1_1Database.html">NodeStore::Database</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapStore.html#a1991ddf3bb16d194fcea4bf989d56c91">makeNodeStore</a> (int readThreads)=0</td></tr>
<tr class="separator:a1991ddf3bb16d194fcea4bf989d56c91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b1a46d6f878575eeea6730c8fc367f2"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespaceripple.html#a12af8e98b794e8ee3b4dbecaed2a4efd">LedgerIndex</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapStore.html#a2b1a46d6f878575eeea6730c8fc367f2">setCanDelete</a> (<a class="el" href="namespaceripple.html#a12af8e98b794e8ee3b4dbecaed2a4efd">LedgerIndex</a> canDelete)=0</td></tr>
<tr class="memdesc:a2b1a46d6f878575eeea6730c8fc367f2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Highest ledger that may be deleted. <a href="classripple_1_1SHAMapStore.html#a2b1a46d6f878575eeea6730c8fc367f2">More...</a><br /></td></tr>
<tr class="separator:a2b1a46d6f878575eeea6730c8fc367f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a737537b2e26dd540a14ac7c7a98a0701"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapStore.html#a737537b2e26dd540a14ac7c7a98a0701">advisoryDelete</a> () const =0</td></tr>
<tr class="memdesc:a737537b2e26dd540a14ac7c7a98a0701"><td class="mdescLeft">&#160;</td><td class="mdescRight">Whether advisory delete is enabled. <a href="classripple_1_1SHAMapStore.html#a737537b2e26dd540a14ac7c7a98a0701">More...</a><br /></td></tr>
<tr class="separator:a737537b2e26dd540a14ac7c7a98a0701"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d926beeaf7fe6baf9fa95ee2b4d85d1"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespaceripple.html#a12af8e98b794e8ee3b4dbecaed2a4efd">LedgerIndex</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapStore.html#a7d926beeaf7fe6baf9fa95ee2b4d85d1">getLastRotated</a> ()=0</td></tr>
<tr class="memdesc:a7d926beeaf7fe6baf9fa95ee2b4d85d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maximum ledger that has been deleted, or will be deleted if currently in the act of online deletion. <a href="classripple_1_1SHAMapStore.html#a7d926beeaf7fe6baf9fa95ee2b4d85d1">More...</a><br /></td></tr>
<tr class="separator:a7d926beeaf7fe6baf9fa95ee2b4d85d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90d0d6d4d070628e340c78cd818e9ae0"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespaceripple.html#a12af8e98b794e8ee3b4dbecaed2a4efd">LedgerIndex</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapStore.html#a90d0d6d4d070628e340c78cd818e9ae0">getCanDelete</a> ()=0</td></tr>
<tr class="memdesc:a90d0d6d4d070628e340c78cd818e9ae0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Highest ledger that may be deleted. <a href="classripple_1_1SHAMapStore.html#a90d0d6d4d070628e340c78cd818e9ae0">More...</a><br /></td></tr>
<tr class="separator:a90d0d6d4d070628e340c78cd818e9ae0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90ce3f79e011586bc87d6fdcb4cf9a0e"><td class="memItemLeft" align="right" valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapStore.html#a90ce3f79e011586bc87d6fdcb4cf9a0e">fdRequired</a> () const =0</td></tr>
<tr class="memdesc:a90ce3f79e011586bc87d6fdcb4cf9a0e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the number of file descriptors that are needed. <a href="classripple_1_1SHAMapStore.html#a90ce3f79e011586bc87d6fdcb4cf9a0e">More...</a><br /></td></tr>
<tr class="separator:a90ce3f79e011586bc87d6fdcb4cf9a0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c8484a5340cf2188a382816148b549b"><td class="memItemLeft" align="right" valign="top">virtual <a class="elRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional</a>&lt; <a class="el" href="namespaceripple.html#a12af8e98b794e8ee3b4dbecaed2a4efd">LedgerIndex</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapStore.html#a5c8484a5340cf2188a382816148b549b">minimumOnline</a> () const =0</td></tr>
<tr class="memdesc:a5c8484a5340cf2188a382816148b549b"><td class="mdescLeft">&#160;</td><td class="mdescRight">The minimum ledger to try and maintain in our database. <a href="classripple_1_1SHAMapStore.html#a5c8484a5340cf2188a382816148b549b">More...</a><br /></td></tr>
<tr class="separator:a5c8484a5340cf2188a382816148b549b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>class to create database, launch online delete thread, and related SQLite database </p>
<p class="definition">Definition at line <a class="el" href="SHAMapStore_8h_source.html#l00036">36</a> of file <a class="el" href="SHAMapStore_8h_source.html">SHAMapStore.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a89c36a56b7b199b87049a1089463c619"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a89c36a56b7b199b87049a1089463c619">&#9670;&nbsp;</a></span>~SHAMapStore()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual ripple::SHAMapStore::~SHAMapStore </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a3a16eedab60b2fdc51c616369d5f3969"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3a16eedab60b2fdc51c616369d5f3969">&#9670;&nbsp;</a></span>onLedgerClosed()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void ripple::SHAMapStore::onLedgerClosed </td>
<td>(</td>
<td class="paramtype"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1Ledger.html">Ledger</a> const &gt; const &amp;&#160;</td>
<td class="paramname"><em>ledger</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Called by <a class="el" href="classripple_1_1LedgerMaster.html">LedgerMaster</a> every time a ledger validates. </p>
<p>Implemented in <a class="el" href="classripple_1_1SHAMapStoreImp.html#a59695e67a2807695a5c9cb7234ecfaac">ripple::SHAMapStoreImp</a>.</p>
</div>
</div>
<a id="a17c3e3bce57d06f2996f79dafc802879"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a17c3e3bce57d06f2996f79dafc802879">&#9670;&nbsp;</a></span>start()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void ripple::SHAMapStore::start </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implemented in <a class="el" href="classripple_1_1SHAMapStoreImp.html#a2fdf9546a1233a97a8c5b48778a82555">ripple::SHAMapStoreImp</a>.</p>
</div>
</div>
<a id="a96ae0b236ea08f5178309d80d27a7c5f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a96ae0b236ea08f5178309d80d27a7c5f">&#9670;&nbsp;</a></span>rendezvous()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void ripple::SHAMapStore::rendezvous </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implemented in <a class="el" href="classripple_1_1SHAMapStoreImp.html#a11f592da3dd908e4b8e0e586517377cf">ripple::SHAMapStoreImp</a>.</p>
</div>
</div>
<a id="a611a7f70fda14bd4fbff000385baaa59"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a611a7f70fda14bd4fbff000385baaa59">&#9670;&nbsp;</a></span>stop()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void ripple::SHAMapStore::stop </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implemented in <a class="el" href="classripple_1_1SHAMapStoreImp.html#a7526140fe1abd6784e9ee844e578f1cb">ripple::SHAMapStoreImp</a>.</p>
</div>
</div>
<a id="a6bd103dd779634de40c59681605874e6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6bd103dd779634de40c59681605874e6">&#9670;&nbsp;</a></span>clampFetchDepth()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual <a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> ripple::SHAMapStore::clampFetchDepth </td>
<td>(</td>
<td class="paramtype"><a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a>&#160;</td>
<td class="paramname"><em>fetch_depth</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implemented in <a class="el" href="classripple_1_1SHAMapStoreImp.html#a7553dc0489fbb2b00426473c1156cb9a">ripple::SHAMapStoreImp</a>.</p>
</div>
</div>
<a id="a1991ddf3bb16d194fcea4bf989d56c91"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1991ddf3bb16d194fcea4bf989d56c91">&#9670;&nbsp;</a></span>makeNodeStore()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual <a class="elRef" href="http://en.cppreference.com/w/cpp/memory/unique_ptr.html">std::unique_ptr</a>&lt;<a class="el" href="classripple_1_1NodeStore_1_1Database.html">NodeStore::Database</a>&gt; ripple::SHAMapStore::makeNodeStore </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>readThreads</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implemented in <a class="el" href="classripple_1_1SHAMapStoreImp.html#a9492058383671e240f61b6b2cfc9fe2e">ripple::SHAMapStoreImp</a>.</p>
</div>
</div>
<a id="a2b1a46d6f878575eeea6730c8fc367f2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2b1a46d6f878575eeea6730c8fc367f2">&#9670;&nbsp;</a></span>setCanDelete()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual <a class="el" href="namespaceripple.html#a12af8e98b794e8ee3b4dbecaed2a4efd">LedgerIndex</a> ripple::SHAMapStore::setCanDelete </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespaceripple.html#a12af8e98b794e8ee3b4dbecaed2a4efd">LedgerIndex</a>&#160;</td>
<td class="paramname"><em>canDelete</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Highest ledger that may be deleted. </p>
<p>Implemented in <a class="el" href="classripple_1_1SHAMapStoreImp.html#a3be2b951362ba4c182e2a75dae4805f3">ripple::SHAMapStoreImp</a>.</p>
</div>
</div>
<a id="a737537b2e26dd540a14ac7c7a98a0701"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a737537b2e26dd540a14ac7c7a98a0701">&#9670;&nbsp;</a></span>advisoryDelete()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual bool ripple::SHAMapStore::advisoryDelete </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Whether advisory delete is enabled. </p>
<p>Implemented in <a class="el" href="classripple_1_1SHAMapStoreImp.html#a1abf26d12fd7aac094d286ba450157c4">ripple::SHAMapStoreImp</a>.</p>
</div>
</div>
<a id="a7d926beeaf7fe6baf9fa95ee2b4d85d1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7d926beeaf7fe6baf9fa95ee2b4d85d1">&#9670;&nbsp;</a></span>getLastRotated()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual <a class="el" href="namespaceripple.html#a12af8e98b794e8ee3b4dbecaed2a4efd">LedgerIndex</a> ripple::SHAMapStore::getLastRotated </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Maximum ledger that has been deleted, or will be deleted if currently in the act of online deletion. </p>
<p>Implemented in <a class="el" href="classripple_1_1SHAMapStoreImp.html#aac0c0154f62d2ef0ddbb52089931d5fa">ripple::SHAMapStoreImp</a>.</p>
</div>
</div>
<a id="a90d0d6d4d070628e340c78cd818e9ae0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a90d0d6d4d070628e340c78cd818e9ae0">&#9670;&nbsp;</a></span>getCanDelete()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual <a class="el" href="namespaceripple.html#a12af8e98b794e8ee3b4dbecaed2a4efd">LedgerIndex</a> ripple::SHAMapStore::getCanDelete </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Highest ledger that may be deleted. </p>
<p>Implemented in <a class="el" href="classripple_1_1SHAMapStoreImp.html#a7f1d7a2d2fb1fefbfc50303be0d12a08">ripple::SHAMapStoreImp</a>.</p>
</div>
</div>
<a id="a90ce3f79e011586bc87d6fdcb4cf9a0e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a90ce3f79e011586bc87d6fdcb4cf9a0e">&#9670;&nbsp;</a></span>fdRequired()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual int ripple::SHAMapStore::fdRequired </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the number of file descriptors that are needed. </p>
<p>Implemented in <a class="el" href="classripple_1_1SHAMapStoreImp.html#ac502b9f3e8822e3111bce648c7375d32">ripple::SHAMapStoreImp</a>.</p>
</div>
</div>
<a id="a5c8484a5340cf2188a382816148b549b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5c8484a5340cf2188a382816148b549b">&#9670;&nbsp;</a></span>minimumOnline()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual <a class="elRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional</a>&lt;<a class="el" href="namespaceripple.html#a12af8e98b794e8ee3b4dbecaed2a4efd">LedgerIndex</a>&gt; ripple::SHAMapStore::minimumOnline </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>The minimum ledger to try and maintain in our database. </p>
<p>This defines the lower bound for attempting to acquire historical ledgers over the peer to peer network.</p>
<p>If online_delete is enabled, then each time online_delete executes and just prior to clearing SQL databases of historical ledgers, move the value forward to one past the greatest ledger being deleted. This minimizes fetching of ledgers that are in the process of being deleted. Without online_delete or before online_delete is executed, this value is always the minimum value persisted in the ledger database, if any.</p>
<dl class="section return"><dt>Returns</dt><dd>The minimum ledger sequence to keep online based on the description above. If not set, then an unseated optional. </dd></dl>
<p>Implemented in <a class="el" href="classripple_1_1SHAMapStoreImp.html#aae4d284b5bd80fa3860d9b49b05fc1ec">ripple::SHAMapStoreImp</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>