Files
rippled/TxQ_8h_source.html
2025-11-10 09:36:27 -08:00

723 lines
166 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" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>rippled: TxQ.h Source File</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 id="projectrow">
<td id="projectalign">
<div id="projectname">rippled
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @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:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function() { init_codefold(0); });
/* @license-end */
</script>
<!-- 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">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_a62226f9e3a6c7c5a3be455e2f87ae01.html">xrpld</a></li><li class="navelem"><a class="el" href="dir_c69db3203fa08a9ff994909ba6ee9783.html">app</a></li><li class="navelem"><a class="el" href="dir_2860c73e71f9ef894ba4acb1eeae5483.html">misc</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">TxQ.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef XRPL_TXQ_H_INCLUDED</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define XRPL_TXQ_H_INCLUDED</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &lt;xrpld/app/tx/applySteps.h&gt;</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span> </div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &lt;xrpl/ledger/ApplyView.h&gt;</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &lt;xrpl/ledger/OpenView.h&gt;</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &lt;xrpl/protocol/RippleLedgerHash.h&gt;</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor">#include &lt;xrpl/protocol/STTx.h&gt;</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &lt;xrpl/protocol/SeqProxy.h&gt;</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="preprocessor">#include &lt;xrpl/protocol/TER.h&gt;</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> </div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#include &lt;boost/circular_buffer.hpp&gt;</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#include &lt;boost/intrusive/set.hpp&gt;</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor">#include &lt;<a class="codeRef" href="http://en.cppreference.com/w/cpp/header/optional.html">optional</a>&gt;</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> </div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceripple.html">ripple</a> {</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="keyword">class </span>Application;</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="keyword">class </span>Config;</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="foldopen" id="foldopen00041" data-start="{" data-end="};">
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ.html"> 41</a></span><span class="keyword">class </span><a class="code hl_class" href="classripple_1_1TxQ.html">TxQ</a></div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span>{</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ.html#acfc1afed59fb7f9d2404f479d7cbeef6"> 45</a></span> <span class="keyword">static</span> <span class="keyword">constexpr</span> <a class="code hl_class" href="classripple_1_1unit_1_1ValueUnit.html">FeeLevel64</a> <a class="code hl_variable" href="classripple_1_1TxQ.html#acfc1afed59fb7f9d2404f479d7cbeef6">baseLevel</a>{256};</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="foldopen" id="foldopen00050" data-start="{" data-end="};">
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Setup.html"> 50</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="structripple_1_1TxQ_1_1Setup.html">Setup</a></div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> {</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Setup.html#a26a8d4ddac8283d07af3fd8005895acd"> 53</a></span> <span class="keyword">explicit</span> <a class="code hl_function" href="structripple_1_1TxQ_1_1Setup.html#a26a8d4ddac8283d07af3fd8005895acd">Setup</a>() = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> </div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Setup.html#ae90eb2b5bf5f061092c0d83457f55f81"> 62</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Setup.html#ae90eb2b5bf5f061092c0d83457f55f81">ledgersInQueue</a> = 20;</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Setup.html#a6aa8f143fbe49895ac08279cfc0311e2"> 68</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Setup.html#a6aa8f143fbe49895ac08279cfc0311e2">queueSizeMin</a> = 2000;</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Setup.html#abff7c81cad94c074c6414872e50f23e8"> 78</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Setup.html#abff7c81cad94c074c6414872e50f23e8">retrySequencePercent</a> = 25;</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Setup.html#a55017181a586c0c09a9b487a4b003c52"> 81</a></span> <a class="code hl_class" href="classripple_1_1unit_1_1ValueUnit.html">FeeLevel64</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Setup.html#a55017181a586c0c09a9b487a4b003c52">minimumEscalationMultiplier</a> = <a class="code hl_variable" href="classripple_1_1TxQ.html#acfc1afed59fb7f9d2404f479d7cbeef6">baseLevel</a> * 500;</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Setup.html#a2b11f9f54cac17f8f23c30e978742786"> 84</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Setup.html#a2b11f9f54cac17f8f23c30e978742786">minimumTxnInLedger</a> = 32;</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Setup.html#acb7f76ef24c80a9a26bc94701001eec5"> 87</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Setup.html#acb7f76ef24c80a9a26bc94701001eec5">minimumTxnInLedgerSA</a> = 1000;</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Setup.html#aa1bbdbb893cafa2a5ef126f72644321c"> 90</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Setup.html#aa1bbdbb893cafa2a5ef126f72644321c">targetTxnInLedger</a> = 256;</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Setup.html#a7ee5bc03ae4f2f9b5f2de99eceabdac8"> 101</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional&lt;std::uint32_t&gt;</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Setup.html#a7ee5bc03ae4f2f9b5f2de99eceabdac8">maximumTxnInLedger</a>;</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Setup.html#aff1d69439cfdf5fbf8e90556f5cb70a0"> 113</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Setup.html#aff1d69439cfdf5fbf8e90556f5cb70a0">normalConsensusIncreasePercent</a> = 20;</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Setup.html#a17e33956c7da29212e873b33c2fc05d5"> 127</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Setup.html#a17e33956c7da29212e873b33c2fc05d5">slowConsensusDecreasePercent</a> = 50;</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Setup.html#a3d27fc59a4b23767ae78229a386bc685"> 129</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Setup.html#a3d27fc59a4b23767ae78229a386bc685">maximumTxnPerAccount</a> = 10;</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Setup.html#ac02a564e20d8363fa5cbdcf4079f5413"> 136</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Setup.html#ac02a564e20d8363fa5cbdcf4079f5413">minimumLastLedgerBuffer</a> = 2;</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Setup.html#afb2a3d5862daac6599f23fc30c60dd8e"> 138</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Setup.html#afb2a3d5862daac6599f23fc30c60dd8e">standAlone</a> = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> };</div>
</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> </div>
<div class="foldopen" id="foldopen00145" data-start="{" data-end="};">
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Metrics.html"> 145</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="structripple_1_1TxQ_1_1Metrics.html">Metrics</a></div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> {</div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Metrics.html#a5f8431c7f8f88f9455e5dce38defa925"> 148</a></span> <span class="keyword">explicit</span> <a class="code hl_function" href="structripple_1_1TxQ_1_1Metrics.html#a5f8431c7f8f88f9455e5dce38defa925">Metrics</a>() = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> </div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Metrics.html#ade3363912328dbd806a24207929c4fb3"> 151</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Metrics.html#ade3363912328dbd806a24207929c4fb3">txCount</a>;</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Metrics.html#a61ea155db2d26ef9addb0e889775ce85"> 153</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional&lt;std::size_t&gt;</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Metrics.html#a61ea155db2d26ef9addb0e889775ce85">txQMaxSize</a>;</div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Metrics.html#aa6d188cab1f33a838cda74a0dc6cbbf2"> 155</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Metrics.html#aa6d188cab1f33a838cda74a0dc6cbbf2">txInLedger</a>;</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Metrics.html#a2d5fc7af8dab3cda00ba533feb108f1a"> 157</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Metrics.html#a2d5fc7af8dab3cda00ba533feb108f1a">txPerLedger</a>;</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Metrics.html#a9ef5bb734c6c198cd67ab6b9ccd9fe4e"> 159</a></span> <a class="code hl_class" href="classripple_1_1unit_1_1ValueUnit.html">FeeLevel64</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Metrics.html#a9ef5bb734c6c198cd67ab6b9ccd9fe4e">referenceFeeLevel</a>;</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Metrics.html#a046a7eebf075ab4c435845458cdab036"> 162</a></span> <a class="code hl_class" href="classripple_1_1unit_1_1ValueUnit.html">FeeLevel64</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Metrics.html#a046a7eebf075ab4c435845458cdab036">minProcessingFeeLevel</a>;</div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Metrics.html#aee1c684ec90ea6e8e6beea48bcaaf8c5"> 164</a></span> <a class="code hl_class" href="classripple_1_1unit_1_1ValueUnit.html">FeeLevel64</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Metrics.html#aee1c684ec90ea6e8e6beea48bcaaf8c5">medFeeLevel</a>;</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1Metrics.html#a0dfae7d857bda5f73e70b47d3bb46455"> 167</a></span> <a class="code hl_class" href="classripple_1_1unit_1_1ValueUnit.html">FeeLevel64</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1Metrics.html#a0dfae7d857bda5f73e70b47d3bb46455">openLedgerFeeLevel</a>;</div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> };</div>
</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> </div>
<div class="foldopen" id="foldopen00175" data-start="{" data-end="};">
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1TxDetails.html"> 175</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="structripple_1_1TxQ_1_1TxDetails.html">TxDetails</a></div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> {</div>
<div class="foldopen" id="foldopen00178" data-start="{" data-end="}">
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1TxDetails.html#a7514db9f24672530584db5575a2ea3b8"> 178</a></span> <a class="code hl_function" href="structripple_1_1TxQ_1_1TxDetails.html#a7514db9f24672530584db5575a2ea3b8">TxDetails</a>(</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> <a class="code hl_class" href="classripple_1_1unit_1_1ValueUnit.html">FeeLevel64</a> feeLevel_,</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional&lt;LedgerIndex&gt;</a> <span class="keyword">const</span>&amp; lastValid_,</div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> <a class="code hl_class" href="classripple_1_1TxConsequences.html">TxConsequences</a> <span class="keyword">const</span>&amp; consequences_,</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> <a class="code hl_class" href="classripple_1_1base__uint.html">AccountID</a> <span class="keyword">const</span>&amp; account_,</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> <a class="code hl_class" href="classripple_1_1SeqProxy.html">SeqProxy</a> seqProxy_,</div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr&lt;STTx const&gt;</a> <span class="keyword">const</span>&amp; txn_,</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> <span class="keywordtype">int</span> retriesRemaining_,</div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a> preflightResult_,</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional&lt;TER&gt;</a> lastResult_)</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> : <a class="code hl_variable" href="structripple_1_1TxQ_1_1TxDetails.html#ab880f159b6cf7c1f54878ffaab35d315">feeLevel</a>(feeLevel_)</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> , <a class="code hl_variable" href="structripple_1_1TxQ_1_1TxDetails.html#a069f7f71135ba3d9bed97fb0cf0557f9">lastValid</a>(lastValid_)</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> , <a class="code hl_variable" href="structripple_1_1TxQ_1_1TxDetails.html#a46666b170f6a188e35b17feef7c51cec">consequences</a>(consequences_)</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> , <a class="code hl_variable" href="structripple_1_1TxQ_1_1TxDetails.html#a85214f881eb96a624f6870cb8edd377b">account</a>(account_)</div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> , <a class="code hl_variable" href="structripple_1_1TxQ_1_1TxDetails.html#a18e58fb9d8e5cb60d69192b8d474bfaa">seqProxy</a>(seqProxy_)</div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> , <a class="code hl_variable" href="structripple_1_1TxQ_1_1TxDetails.html#ac84ba22d948acd43583ac815a34e3138">txn</a>(txn_)</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> , <a class="code hl_variable" href="structripple_1_1TxQ_1_1TxDetails.html#af62f2b7354cbefc4223cf768c867fa1f">retriesRemaining</a>(retriesRemaining_)</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> , <a class="code hl_variable" href="structripple_1_1TxQ_1_1TxDetails.html#a308ebaa833b444835409d2e04f007f19">preflightResult</a>(preflightResult_)</div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> , <a class="code hl_variable" href="structripple_1_1TxQ_1_1TxDetails.html#ae2436113a310b818cda98ad93fb900c3">lastResult</a>(lastResult_)</div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> {</div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> }</div>
</div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> </div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1TxDetails.html#ab880f159b6cf7c1f54878ffaab35d315"> 201</a></span> <a class="code hl_class" href="classripple_1_1unit_1_1ValueUnit.html">FeeLevel64</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1TxDetails.html#ab880f159b6cf7c1f54878ffaab35d315">feeLevel</a>;</div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1TxDetails.html#a069f7f71135ba3d9bed97fb0cf0557f9"> 203</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional&lt;LedgerIndex&gt;</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1TxDetails.html#a069f7f71135ba3d9bed97fb0cf0557f9">lastValid</a>;</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1TxDetails.html#a46666b170f6a188e35b17feef7c51cec"> 207</a></span> <a class="code hl_class" href="classripple_1_1TxConsequences.html">TxConsequences</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1TxDetails.html#a46666b170f6a188e35b17feef7c51cec">consequences</a>;</div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1TxDetails.html#a85214f881eb96a624f6870cb8edd377b"> 209</a></span> <a class="code hl_class" href="classripple_1_1base__uint.html">AccountID</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1TxDetails.html#a85214f881eb96a624f6870cb8edd377b">account</a>;</div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1TxDetails.html#a18e58fb9d8e5cb60d69192b8d474bfaa"> 211</a></span> <a class="code hl_class" href="classripple_1_1SeqProxy.html">SeqProxy</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1TxDetails.html#a18e58fb9d8e5cb60d69192b8d474bfaa">seqProxy</a>;</div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1TxDetails.html#ac84ba22d948acd43583ac815a34e3138"> 213</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr&lt;STTx const&gt;</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1TxDetails.html#ac84ba22d948acd43583ac815a34e3138">txn</a>;</div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1TxDetails.html#af62f2b7354cbefc4223cf768c867fa1f"> 219</a></span> <span class="keywordtype">int</span> <a class="code hl_variable" href="structripple_1_1TxQ_1_1TxDetails.html#af62f2b7354cbefc4223cf768c867fa1f">retriesRemaining</a>;</div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1TxDetails.html#a308ebaa833b444835409d2e04f007f19"> 229</a></span> <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1TxDetails.html#a308ebaa833b444835409d2e04f007f19">preflightResult</a>;</div>
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1TxDetails.html#ae2436113a310b818cda98ad93fb900c3"> 236</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional&lt;TER&gt;</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1TxDetails.html#ae2436113a310b818cda98ad93fb900c3">lastResult</a>;</div>
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span> };</div>
</div>
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"> 238</span> </div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span> <a class="code hl_class" href="classripple_1_1TxQ.html">TxQ</a>(<a class="code hl_struct" href="structripple_1_1TxQ_1_1Setup.html">Setup</a> <span class="keyword">const</span>&amp; setup, <a class="code hl_class" href="classbeast_1_1Journal.html">beast::Journal</a> j);</div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> </div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span> <span class="keyword">virtual</span> <a class="code hl_function" href="classripple_1_1TxQ.html#a958da208f16e7851992bdb05d3573314">~TxQ</a>();</div>
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span> </div>
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"> 254</span> <a class="code hl_struct" href="structripple_1_1ApplyResult.html">ApplyResult</a></div>
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span> <a class="code hl_function" href="classripple_1_1TxQ.html#afbf88039641b9d66b38141407118f79e">apply</a>(</div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span> <a class="code hl_class" href="classripple_1_1Application.html">Application</a>&amp; app,</div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span> <a class="code hl_class" href="classripple_1_1OpenView.html">OpenView</a>&amp; view,</div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr&lt;STTx const&gt;</a> <span class="keyword">const</span>&amp; tx,</div>
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"> 259</span> <a class="code hl_enumeration" href="namespaceripple.html#ad2487abbcc1a5d6064b72144b461df6e">ApplyFlags</a> flags,</div>
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"> 260</span> <a class="code hl_class" href="classbeast_1_1Journal.html">beast::Journal</a> j);</div>
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span> </div>
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno"> 273</span> <span class="keywordtype">bool</span></div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span> <a class="code hl_function" href="classripple_1_1TxQ.html#ac83649e59014572a908ab144bef86bb2">accept</a>(<a class="code hl_class" href="classripple_1_1Application.html">Application</a>&amp; app, <a class="code hl_class" href="classripple_1_1OpenView.html">OpenView</a>&amp; view);</div>
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"> 275</span> </div>
<div class="line"><a id="l00288" name="l00288"></a><span class="lineno"> 288</span> <span class="keywordtype">void</span></div>
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"> 289</span> <a class="code hl_function" href="classripple_1_1TxQ.html#ae051f3309f81253bb7a50db48060cc18">processClosedLedger</a>(<a class="code hl_class" href="classripple_1_1Application.html">Application</a>&amp; app, <a class="code hl_class" href="classripple_1_1ReadView.html">ReadView</a> <span class="keyword">const</span>&amp; view, <span class="keywordtype">bool</span> timeLeap);</div>
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno"> 290</span> </div>
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"> 292</span> <a class="code hl_class" href="classripple_1_1SeqProxy.html">SeqProxy</a></div>
<div class="line"><a id="l00293" name="l00293"></a><span class="lineno"> 293</span> <a class="code hl_function" href="classripple_1_1TxQ.html#a5bffe9eec3a97e1b5bc209e0edf17fda">nextQueuableSeq</a>(<a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr&lt;SLE const&gt;</a> <span class="keyword">const</span>&amp; sleAccount) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno"> 294</span> </div>
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"> 297</span> <a class="code hl_struct" href="structripple_1_1TxQ_1_1Metrics.html">Metrics</a></div>
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"> 298</span> <a class="code hl_function" href="classripple_1_1TxQ.html#a2a08d6cdb1e6700a24dc0f71eb3ef7ed">getMetrics</a>(<a class="code hl_class" href="classripple_1_1OpenView.html">OpenView</a> <span class="keyword">const</span>&amp; view) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno"> 299</span> </div>
<div class="foldopen" id="foldopen00300" data-start="{" data-end="};">
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1FeeAndSeq.html"> 300</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="structripple_1_1TxQ_1_1FeeAndSeq.html">FeeAndSeq</a></div>
<div class="line"><a id="l00301" name="l00301"></a><span class="lineno"> 301</span> {</div>
<div class="line"><a id="l00302" name="l00302"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1FeeAndSeq.html#a32315f234bdddee240af40ecd0b206a0"> 302</a></span> <a class="code hl_class" href="classripple_1_1XRPAmount.html">XRPAmount</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1FeeAndSeq.html#a32315f234bdddee240af40ecd0b206a0">fee</a>;</div>
<div class="line"><a id="l00303" name="l00303"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1FeeAndSeq.html#afc9a3d34bc0cf235d3755ccb070768c4"> 303</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1FeeAndSeq.html#afc9a3d34bc0cf235d3755ccb070768c4">accountSeq</a>;</div>
<div class="line"><a id="l00304" name="l00304"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1FeeAndSeq.html#aba280a98bb627a26fa1f04ed403bbd1d"> 304</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> <a class="code hl_variable" href="structripple_1_1TxQ_1_1FeeAndSeq.html#aba280a98bb627a26fa1f04ed403bbd1d">availableSeq</a>;</div>
<div class="line"><a id="l00305" name="l00305"></a><span class="lineno"> 305</span> };</div>
</div>
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"> 306</span> </div>
<div class="line"><a id="l00316" name="l00316"></a><span class="lineno"> 316</span> <a class="code hl_struct" href="structripple_1_1TxQ_1_1FeeAndSeq.html">FeeAndSeq</a></div>
<div class="line"><a id="l00317" name="l00317"></a><span class="lineno"> 317</span> <a class="code hl_function" href="classripple_1_1TxQ.html#a8e92bb1200c6c66313cfc9fc3ac2955d">getTxRequiredFeeAndSeq</a>(</div>
<div class="line"><a id="l00318" name="l00318"></a><span class="lineno"> 318</span> <a class="code hl_class" href="classripple_1_1OpenView.html">OpenView</a> <span class="keyword">const</span>&amp; view,</div>
<div class="line"><a id="l00319" name="l00319"></a><span class="lineno"> 319</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr&lt;STTx const&gt;</a> <span class="keyword">const</span>&amp; tx) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00320" name="l00320"></a><span class="lineno"> 320</span> </div>
<div class="line"><a id="l00327" name="l00327"></a><span class="lineno"> 327</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;TxDetails&gt;</a></div>
<div class="line"><a id="l00328" name="l00328"></a><span class="lineno"> 328</span> <a class="code hl_function" href="classripple_1_1TxQ.html#a459d2ac82dc4e7e5672db06df4618a96">getAccountTxs</a>(<a class="code hl_class" href="classripple_1_1base__uint.html">AccountID</a> <span class="keyword">const</span>&amp; account) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00329" name="l00329"></a><span class="lineno"> 329</span> </div>
<div class="line"><a id="l00336" name="l00336"></a><span class="lineno"> 336</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;TxDetails&gt;</a></div>
<div class="line"><a id="l00337" name="l00337"></a><span class="lineno"> 337</span> <a class="code hl_function" href="classripple_1_1TxQ.html#a0d767ce3cbba060040b2d3179db347c6">getTxs</a>() <span class="keyword">const</span>;</div>
<div class="line"><a id="l00338" name="l00338"></a><span class="lineno"> 338</span> </div>
<div class="line"><a id="l00343" name="l00343"></a><span class="lineno"> 343</span> <a class="code hl_class" href="classJson_1_1Value.html">Json::Value</a></div>
<div class="line"><a id="l00344" name="l00344"></a><span class="lineno"> 344</span> <a class="code hl_function" href="classripple_1_1TxQ.html#a2b317467ac5be2a28c278cc60190261b">doRPC</a>(<a class="code hl_class" href="classripple_1_1Application.html">Application</a>&amp; app) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00345" name="l00345"></a><span class="lineno"> 345</span> </div>
<div class="line"><a id="l00346" name="l00346"></a><span class="lineno"> 346</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00347" name="l00347"></a><span class="lineno"> 347</span> <span class="comment">// Implementation for nextQueuableSeq(). The passed lock must be held.</span></div>
<div class="line"><a id="l00348" name="l00348"></a><span class="lineno"> 348</span> <a class="code hl_class" href="classripple_1_1SeqProxy.html">SeqProxy</a></div>
<div class="line"><a id="l00349" name="l00349"></a><span class="lineno"> 349</span> <a class="code hl_function" href="classripple_1_1TxQ.html#a7301e8d3c70f9fcf3b2361b6a07479f9">nextQueuableSeqImpl</a>(</div>
<div class="line"><a id="l00350" name="l00350"></a><span class="lineno"> 350</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr&lt;SLE const&gt;</a> <span class="keyword">const</span>&amp; sleAccount,</div>
<div class="line"><a id="l00351" name="l00351"></a><span class="lineno"> 351</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/thread/lock_guard.html">std::lock_guard&lt;std::mutex&gt;</a> <span class="keyword">const</span>&amp;) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00352" name="l00352"></a><span class="lineno"> 352</span> </div>
<div class="foldopen" id="foldopen00358" data-start="{" data-end="};">
<div class="line"><a id="l00358" name="l00358"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1FeeMetrics.html"> 358</a></span> <span class="keyword">class </span><a class="code hl_class" href="classripple_1_1TxQ_1_1FeeMetrics.html">FeeMetrics</a></div>
<div class="line"><a id="l00359" name="l00359"></a><span class="lineno"> 359</span> {</div>
<div class="line"><a id="l00360" name="l00360"></a><span class="lineno"> 360</span> <span class="keyword">private</span>:</div>
<div class="line"><a id="l00362" name="l00362"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1FeeMetrics.html#a798a10fa00312ec5198ad7499ef621e7"> 362</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <span class="keyword">const</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#a798a10fa00312ec5198ad7499ef621e7">minimumTxnCount_</a>;</div>
<div class="line"><a id="l00365" name="l00365"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1FeeMetrics.html#ac3b01f12711a152827b28f475ab96c50"> 365</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <span class="keyword">const</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#ac3b01f12711a152827b28f475ab96c50">targetTxnCount_</a>;</div>
<div class="line"><a id="l00367" name="l00367"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1FeeMetrics.html#aac226046570492541f6d82a39bf681b3"> 367</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional&lt;std::size_t&gt;</a> <span class="keyword">const</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#aac226046570492541f6d82a39bf681b3">maximumTxnCount_</a>;</div>
<div class="line"><a id="l00371" name="l00371"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1FeeMetrics.html#a37f68c24e1cd38f10a3cca07fd2c50cc"> 371</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#a37f68c24e1cd38f10a3cca07fd2c50cc">txnsExpected_</a>;</div>
<div class="line"><a id="l00374" name="l00374"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1FeeMetrics.html#ace3ced272f60d6a504c2c6531aa32114"> 374</a></span> boost::circular_buffer&lt;std::size_t&gt; <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#ace3ced272f60d6a504c2c6531aa32114">recentTxnCounts_</a>;</div>
<div class="line"><a id="l00377" name="l00377"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1FeeMetrics.html#ae35fe3164eba8c280411963df608b39a"> 377</a></span> <a class="code hl_class" href="classripple_1_1unit_1_1ValueUnit.html">FeeLevel64</a> <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#ae35fe3164eba8c280411963df608b39a">escalationMultiplier_</a>;</div>
<div class="line"><a id="l00379" name="l00379"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1FeeMetrics.html#a390d21225a387987cd18e8942fc15bc5"> 379</a></span> <a class="code hl_class" href="classbeast_1_1Journal.html">beast::Journal</a> <span class="keyword">const</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#a390d21225a387987cd18e8942fc15bc5">j_</a>;</div>
<div class="line"><a id="l00380" name="l00380"></a><span class="lineno"> 380</span> </div>
<div class="line"><a id="l00381" name="l00381"></a><span class="lineno"> 381</span> <span class="keyword">public</span>:</div>
<div class="foldopen" id="foldopen00383" data-start="{" data-end="}">
<div class="line"><a id="l00383" name="l00383"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1FeeMetrics.html#a508eeb090672a165248d6fb13748e4c1"> 383</a></span> <a class="code hl_function" href="classripple_1_1TxQ_1_1FeeMetrics.html#a508eeb090672a165248d6fb13748e4c1">FeeMetrics</a>(<a class="code hl_struct" href="structripple_1_1TxQ_1_1Setup.html">Setup</a> <span class="keyword">const</span>&amp; setup, <a class="code hl_class" href="classbeast_1_1Journal.html">beast::Journal</a> j)</div>
<div class="line"><a id="l00384" name="l00384"></a><span class="lineno"> 384</span> : <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#a798a10fa00312ec5198ad7499ef621e7">minimumTxnCount_</a>(</div>
<div class="line"><a id="l00385" name="l00385"></a><span class="lineno"> 385</span> setup.standAlone ? setup.minimumTxnInLedgerSA</div>
<div class="line"><a id="l00386" name="l00386"></a><span class="lineno"> 386</span> : setup.minimumTxnInLedger)</div>
<div class="line"><a id="l00387" name="l00387"></a><span class="lineno"> 387</span> , <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#ac3b01f12711a152827b28f475ab96c50">targetTxnCount_</a>(</div>
<div class="line"><a id="l00388" name="l00388"></a><span class="lineno"> 388</span> setup.targetTxnInLedger &lt; <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#a798a10fa00312ec5198ad7499ef621e7">minimumTxnCount_</a></div>
<div class="line"><a id="l00389" name="l00389"></a><span class="lineno"> 389</span> ? <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#a798a10fa00312ec5198ad7499ef621e7">minimumTxnCount_</a></div>
<div class="line"><a id="l00390" name="l00390"></a><span class="lineno"> 390</span> : setup.targetTxnInLedger)</div>
<div class="line"><a id="l00391" name="l00391"></a><span class="lineno"> 391</span> , <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#aac226046570492541f6d82a39bf681b3">maximumTxnCount_</a>(</div>
<div class="line"><a id="l00392" name="l00392"></a><span class="lineno"> 392</span> setup.maximumTxnInLedger</div>
<div class="line"><a id="l00393" name="l00393"></a><span class="lineno"> 393</span> ? *setup.maximumTxnInLedger &lt; <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#ac3b01f12711a152827b28f475ab96c50">targetTxnCount_</a></div>
<div class="line"><a id="l00394" name="l00394"></a><span class="lineno"> 394</span> ? <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#ac3b01f12711a152827b28f475ab96c50">targetTxnCount_</a></div>
<div class="line"><a id="l00395" name="l00395"></a><span class="lineno"> 395</span> : *setup.maximumTxnInLedger</div>
<div class="line"><a id="l00396" name="l00396"></a><span class="lineno"> 396</span> : <a class="code hl_namespace" href="namespacestd.html">std</a>::optional&lt;<a class="code hl_namespace" href="namespacestd.html">std</a>::size_t&gt;(<a class="code hl_namespace" href="namespacestd.html">std</a>::nullopt))</div>
<div class="line"><a id="l00397" name="l00397"></a><span class="lineno"> 397</span> , <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#a37f68c24e1cd38f10a3cca07fd2c50cc">txnsExpected_</a>(<a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#a798a10fa00312ec5198ad7499ef621e7">minimumTxnCount_</a>)</div>
<div class="line"><a id="l00398" name="l00398"></a><span class="lineno"> 398</span> , <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#ace3ced272f60d6a504c2c6531aa32114">recentTxnCounts_</a>(setup.ledgersInQueue)</div>
<div class="line"><a id="l00399" name="l00399"></a><span class="lineno"> 399</span> , <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#ae35fe3164eba8c280411963df608b39a">escalationMultiplier_</a>(setup.minimumEscalationMultiplier)</div>
<div class="line"><a id="l00400" name="l00400"></a><span class="lineno"> 400</span> , <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#a390d21225a387987cd18e8942fc15bc5">j_</a>(j)</div>
<div class="line"><a id="l00401" name="l00401"></a><span class="lineno"> 401</span> {</div>
<div class="line"><a id="l00402" name="l00402"></a><span class="lineno"> 402</span> }</div>
</div>
<div class="line"><a id="l00403" name="l00403"></a><span class="lineno"> 403</span> </div>
<div class="line"><a id="l00414" name="l00414"></a><span class="lineno"> 414</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a></div>
<div class="line"><a id="l00415" name="l00415"></a><span class="lineno"> 415</span> <a class="code hl_function" href="classripple_1_1TxQ_1_1FeeMetrics.html#ad56d92e762d13754c689e66180f7503a">update</a>(</div>
<div class="line"><a id="l00416" name="l00416"></a><span class="lineno"> 416</span> <a class="code hl_class" href="classripple_1_1Application.html">Application</a>&amp; app,</div>
<div class="line"><a id="l00417" name="l00417"></a><span class="lineno"> 417</span> <a class="code hl_class" href="classripple_1_1ReadView.html">ReadView</a> <span class="keyword">const</span>&amp; view,</div>
<div class="line"><a id="l00418" name="l00418"></a><span class="lineno"> 418</span> <span class="keywordtype">bool</span> timeLeap,</div>
<div class="line"><a id="l00419" name="l00419"></a><span class="lineno"> 419</span> <a class="code hl_struct" href="structripple_1_1TxQ_1_1Setup.html">TxQ::Setup</a> <span class="keyword">const</span>&amp; setup);</div>
<div class="line"><a id="l00420" name="l00420"></a><span class="lineno"> 420</span> </div>
<div class="foldopen" id="foldopen00423" data-start="{" data-end="};">
<div class="line"><a id="l00423" name="l00423"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1FeeMetrics_1_1Snapshot.html"> 423</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="structripple_1_1TxQ_1_1FeeMetrics_1_1Snapshot.html">Snapshot</a></div>
<div class="line"><a id="l00424" name="l00424"></a><span class="lineno"> 424</span> {</div>
<div class="line"><a id="l00425" name="l00425"></a><span class="lineno"> 425</span> <span class="comment">// Number of transactions expected per ledger.</span></div>
<div class="line"><a id="l00426" name="l00426"></a><span class="lineno"> 426</span> <span class="comment">// One more than this value will be accepted</span></div>
<div class="line"><a id="l00427" name="l00427"></a><span class="lineno"> 427</span> <span class="comment">// before escalation kicks in.</span></div>
<div class="line"><a id="l00428" name="l00428"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1FeeMetrics_1_1Snapshot.html#a1d09e6088bd28a826c84abfbe1bb0ec5"> 428</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <span class="keyword">const</span> <a class="code hl_variable" href="structripple_1_1TxQ_1_1FeeMetrics_1_1Snapshot.html#a1d09e6088bd28a826c84abfbe1bb0ec5">txnsExpected</a>;</div>
<div class="line"><a id="l00429" name="l00429"></a><span class="lineno"> 429</span> <span class="comment">// Based on the median fee of the LCL. Used</span></div>
<div class="line"><a id="l00430" name="l00430"></a><span class="lineno"> 430</span> <span class="comment">// when fee escalation kicks in.</span></div>
<div class="line"><a id="l00431" name="l00431"></a><span class="lineno"><a class="line" href="structripple_1_1TxQ_1_1FeeMetrics_1_1Snapshot.html#a9092c2285167029d0d9f9b66f6cde164"> 431</a></span> <a class="code hl_class" href="classripple_1_1unit_1_1ValueUnit.html">FeeLevel64</a> <span class="keyword">const</span> <a class="code hl_variable" href="structripple_1_1TxQ_1_1FeeMetrics_1_1Snapshot.html#a9092c2285167029d0d9f9b66f6cde164">escalationMultiplier</a>;</div>
<div class="line"><a id="l00432" name="l00432"></a><span class="lineno"> 432</span> };</div>
</div>
<div class="line"><a id="l00433" name="l00433"></a><span class="lineno"> 433</span> </div>
<div class="line"><a id="l00435" name="l00435"></a><span class="lineno"> 435</span> <a class="code hl_struct" href="structripple_1_1TxQ_1_1FeeMetrics_1_1Snapshot.html">Snapshot</a></div>
<div class="foldopen" id="foldopen00436" data-start="{" data-end="}">
<div class="line"><a id="l00436" name="l00436"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1FeeMetrics.html#aa03e54b0746f29b685222e6c6d0510a9"> 436</a></span> <a class="code hl_function" href="classripple_1_1TxQ_1_1FeeMetrics.html#aa03e54b0746f29b685222e6c6d0510a9">getSnapshot</a>()<span class="keyword"> const</span></div>
<div class="line"><a id="l00437" name="l00437"></a><span class="lineno"> 437</span><span class="keyword"> </span>{</div>
<div class="line"><a id="l00438" name="l00438"></a><span class="lineno"> 438</span> <span class="keywordflow">return</span> {<a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#a37f68c24e1cd38f10a3cca07fd2c50cc">txnsExpected_</a>, <a class="code hl_variable" href="classripple_1_1TxQ_1_1FeeMetrics.html#ae35fe3164eba8c280411963df608b39a">escalationMultiplier_</a>};</div>
<div class="line"><a id="l00439" name="l00439"></a><span class="lineno"> 439</span> }</div>
</div>
<div class="line"><a id="l00440" name="l00440"></a><span class="lineno"> 440</span> </div>
<div class="line"><a id="l00449" name="l00449"></a><span class="lineno"> 449</span> <span class="keyword">static</span> <a class="code hl_class" href="classripple_1_1unit_1_1ValueUnit.html">FeeLevel64</a></div>
<div class="line"><a id="l00450" name="l00450"></a><span class="lineno"> 450</span> <a class="code hl_function" href="classripple_1_1TxQ_1_1FeeMetrics.html#a5b20859e09a2a638b221bc904026ff36">scaleFeeLevel</a>(Snapshot <span class="keyword">const</span>&amp; snapshot, <a class="code hl_class" href="classripple_1_1OpenView.html">OpenView</a> <span class="keyword">const</span>&amp; view);</div>
<div class="line"><a id="l00451" name="l00451"></a><span class="lineno"> 451</span> </div>
<div class="line"><a id="l00482" name="l00482"></a><span class="lineno"> 482</span> <span class="keyword">static</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/pair.html">std::pair&lt;bool, FeeLevel64&gt;</a></div>
<div class="line"><a id="l00483" name="l00483"></a><span class="lineno"> 483</span> <a class="code hl_function" href="classripple_1_1TxQ_1_1FeeMetrics.html#a9c6fe27399c7bd45a1f418bbb673d175">escalatedSeriesFeeLevel</a>(</div>
<div class="line"><a id="l00484" name="l00484"></a><span class="lineno"> 484</span> Snapshot <span class="keyword">const</span>&amp; snapshot,</div>
<div class="line"><a id="l00485" name="l00485"></a><span class="lineno"> 485</span> <a class="code hl_class" href="classripple_1_1OpenView.html">OpenView</a> <span class="keyword">const</span>&amp; view,</div>
<div class="line"><a id="l00486" name="l00486"></a><span class="lineno"> 486</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> extraCount,</div>
<div class="line"><a id="l00487" name="l00487"></a><span class="lineno"> 487</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> seriesSize);</div>
<div class="line"><a id="l00488" name="l00488"></a><span class="lineno"> 488</span> };</div>
</div>
<div class="line"><a id="l00489" name="l00489"></a><span class="lineno"> 489</span> </div>
<div class="foldopen" id="foldopen00494" data-start="{" data-end="};">
<div class="line"><a id="l00494" name="l00494"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1MaybeTx.html"> 494</a></span> <span class="keyword">class </span><a class="code hl_class" href="classripple_1_1TxQ_1_1MaybeTx.html">MaybeTx</a></div>
<div class="line"><a id="l00495" name="l00495"></a><span class="lineno"> 495</span> {</div>
<div class="line"><a id="l00496" name="l00496"></a><span class="lineno"> 496</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00500" name="l00500"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1MaybeTx.html#a4bf9e0ab6525122a6cd2d16270ada692"> 500</a></span> boost::intrusive::set_member_hook&lt;&gt; <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a4bf9e0ab6525122a6cd2d16270ada692">byFeeListHook</a>;</div>
<div class="line"><a id="l00501" name="l00501"></a><span class="lineno"> 501</span> </div>
<div class="line"><a id="l00503" name="l00503"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1MaybeTx.html#abf55d40e02fe19801802976089234c2c"> 503</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr&lt;STTx const&gt;</a> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#abf55d40e02fe19801802976089234c2c">txn</a>;</div>
<div class="line"><a id="l00504" name="l00504"></a><span class="lineno"> 504</span> </div>
<div class="line"><a id="l00506" name="l00506"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1MaybeTx.html#a653a567497410b13a32bf0700a6999c1"> 506</a></span> <a class="code hl_class" href="classripple_1_1unit_1_1ValueUnit.html">FeeLevel64</a> <span class="keyword">const</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a653a567497410b13a32bf0700a6999c1">feeLevel</a>;</div>
<div class="line"><a id="l00508" name="l00508"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1MaybeTx.html#ae5eefa76fcb4af4310136b9d8fe6ce1d"> 508</a></span> <a class="code hl_class" href="classripple_1_1base__uint.html">TxID</a> <span class="keyword">const</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#ae5eefa76fcb4af4310136b9d8fe6ce1d">txID</a>;</div>
<div class="line"><a id="l00510" name="l00510"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1MaybeTx.html#aab99eb732c41530f27bbea6626ca6a28"> 510</a></span> <a class="code hl_class" href="classripple_1_1base__uint.html">AccountID</a> <span class="keyword">const</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#aab99eb732c41530f27bbea6626ca6a28">account</a>;</div>
<div class="line"><a id="l00513" name="l00513"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1MaybeTx.html#ace41bdbe3f7da502f54d00fb48117f05"> 513</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional&lt;LedgerIndex&gt;</a> <span class="keyword">const</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#ace41bdbe3f7da502f54d00fb48117f05">lastValid</a>;</div>
<div class="line"><a id="l00516" name="l00516"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1MaybeTx.html#a008400f3b43a288edbe2918b629a4e4e"> 516</a></span> <a class="code hl_class" href="classripple_1_1SeqProxy.html">SeqProxy</a> <span class="keyword">const</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a008400f3b43a288edbe2918b629a4e4e">seqProxy</a>;</div>
<div class="line"><a id="l00525" name="l00525"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1MaybeTx.html#a60e808612ec45ed655d2435d2f048ff4"> 525</a></span> <span class="keywordtype">int</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a60e808612ec45ed655d2435d2f048ff4">retriesRemaining</a>;</div>
<div class="line"><a id="l00529" name="l00529"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1MaybeTx.html#a0ae6617f6b837815578a5832276e2d3d"> 529</a></span> <a class="code hl_enumeration" href="namespaceripple.html#ad2487abbcc1a5d6064b72144b461df6e">ApplyFlags</a> <span class="keyword">const</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a0ae6617f6b837815578a5832276e2d3d">flags</a>;</div>
<div class="line"><a id="l00536" name="l00536"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1MaybeTx.html#aef427954161fcceb3c00fe6d2f0133bc"> 536</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional&lt;TER&gt;</a> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#aef427954161fcceb3c00fe6d2f0133bc">lastResult</a>;</div>
<div class="line"><a id="l00545" name="l00545"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1MaybeTx.html#a735992a97463ef579f12dfbc1199e63e"> 545</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional&lt;PreflightResult const&gt;</a> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a735992a97463ef579f12dfbc1199e63e">pfresult</a>;</div>
<div class="line"><a id="l00546" name="l00546"></a><span class="lineno"> 546</span> </div>
<div class="line"><a id="l00561" name="l00561"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1MaybeTx.html#a8629266e963f71bf3e1018c2176d4e0e"> 561</a></span> <span class="keyword">static</span> <span class="keyword">constexpr</span> <span class="keywordtype">int</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a8629266e963f71bf3e1018c2176d4e0e">retriesAllowed</a> = 10;</div>
<div class="line"><a id="l00562" name="l00562"></a><span class="lineno"> 562</span> </div>
<div class="line"><a id="l00571" name="l00571"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1MaybeTx.html#ae93279a394660d7d7709e84df2d5086c"> 571</a></span> <span class="keyword">static</span> <a class="code hl_class" href="classripple_1_1base__uint.html">LedgerHash</a> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#ae93279a394660d7d7709e84df2d5086c">parentHashComp</a>;</div>
<div class="line"><a id="l00572" name="l00572"></a><span class="lineno"> 572</span> </div>
<div class="line"><a id="l00573" name="l00573"></a><span class="lineno"> 573</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00575" name="l00575"></a><span class="lineno"> 575</span> <a class="code hl_class" href="classripple_1_1TxQ_1_1MaybeTx.html">MaybeTx</a>(</div>
<div class="line"><a id="l00576" name="l00576"></a><span class="lineno"> 576</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr&lt;STTx const&gt;</a> <span class="keyword">const</span>&amp;,</div>
<div class="line"><a id="l00577" name="l00577"></a><span class="lineno"> 577</span> <a class="code hl_class" href="classripple_1_1base__uint.html">TxID</a> <span class="keyword">const</span>&amp; <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#ae5eefa76fcb4af4310136b9d8fe6ce1d">txID</a>,</div>
<div class="line"><a id="l00578" name="l00578"></a><span class="lineno"> 578</span> <a class="code hl_class" href="classripple_1_1unit_1_1ValueUnit.html">FeeLevel64</a> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a653a567497410b13a32bf0700a6999c1">feeLevel</a>,</div>
<div class="line"><a id="l00579" name="l00579"></a><span class="lineno"> 579</span> <a class="code hl_enumeration" href="namespaceripple.html#ad2487abbcc1a5d6064b72144b461df6e">ApplyFlags</a> <span class="keyword">const</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a0ae6617f6b837815578a5832276e2d3d">flags</a>,</div>
<div class="line"><a id="l00580" name="l00580"></a><span class="lineno"> 580</span> <a class="code hl_struct" href="structripple_1_1PreflightResult.html">PreflightResult</a> <span class="keyword">const</span>&amp; <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a735992a97463ef579f12dfbc1199e63e">pfresult</a>);</div>
<div class="line"><a id="l00581" name="l00581"></a><span class="lineno"> 581</span> </div>
<div class="line"><a id="l00583" name="l00583"></a><span class="lineno"> 583</span> <a class="code hl_struct" href="structripple_1_1ApplyResult.html">ApplyResult</a></div>
<div class="line"><a id="l00584" name="l00584"></a><span class="lineno"> 584</span> <a class="code hl_function" href="classripple_1_1TxQ_1_1MaybeTx.html#a09e39fbc7ae67203ffde9124190d40e1">apply</a>(<a class="code hl_class" href="classripple_1_1Application.html">Application</a>&amp; app, <a class="code hl_class" href="classripple_1_1OpenView.html">OpenView</a>&amp; view, <a class="code hl_class" href="classbeast_1_1Journal.html">beast::Journal</a> j);</div>
<div class="line"><a id="l00585" name="l00585"></a><span class="lineno"> 585</span> </div>
<div class="line"><a id="l00588" name="l00588"></a><span class="lineno"> 588</span> <a class="code hl_class" href="classripple_1_1TxConsequences.html">TxConsequences</a> <span class="keyword">const</span>&amp;</div>
<div class="foldopen" id="foldopen00589" data-start="{" data-end="}">
<div class="line"><a id="l00589" name="l00589"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1MaybeTx.html#af94c48036063440d318f8ba2a27c57ca"> 589</a></span> <a class="code hl_function" href="classripple_1_1TxQ_1_1MaybeTx.html#af94c48036063440d318f8ba2a27c57ca">consequences</a>()<span class="keyword"> const</span></div>
<div class="line"><a id="l00590" name="l00590"></a><span class="lineno"> 590</span><span class="keyword"> </span>{</div>
<div class="line"><a id="l00591" name="l00591"></a><span class="lineno"> 591</span> <span class="keywordflow">return</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a735992a97463ef579f12dfbc1199e63e">pfresult</a>-&gt;consequences;</div>
<div class="line"><a id="l00592" name="l00592"></a><span class="lineno"> 592</span> }</div>
</div>
<div class="line"><a id="l00593" name="l00593"></a><span class="lineno"> 593</span> </div>
<div class="line"><a id="l00595" name="l00595"></a><span class="lineno"> 595</span> <a class="code hl_struct" href="structripple_1_1TxQ_1_1TxDetails.html">TxDetails</a></div>
<div class="foldopen" id="foldopen00596" data-start="{" data-end="}">
<div class="line"><a id="l00596" name="l00596"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1MaybeTx.html#ab069ca91d7ee996bd2eee44902e6cd6a"> 596</a></span> <a class="code hl_function" href="classripple_1_1TxQ_1_1MaybeTx.html#ab069ca91d7ee996bd2eee44902e6cd6a">getTxDetails</a>()<span class="keyword"> const</span></div>
<div class="line"><a id="l00597" name="l00597"></a><span class="lineno"> 597</span><span class="keyword"> </span>{</div>
<div class="line"><a id="l00598" name="l00598"></a><span class="lineno"> 598</span> <span class="keywordflow">return</span> {</div>
<div class="line"><a id="l00599" name="l00599"></a><span class="lineno"> 599</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a653a567497410b13a32bf0700a6999c1">feeLevel</a>,</div>
<div class="line"><a id="l00600" name="l00600"></a><span class="lineno"> 600</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#ace41bdbe3f7da502f54d00fb48117f05">lastValid</a>,</div>
<div class="line"><a id="l00601" name="l00601"></a><span class="lineno"> 601</span> <a class="code hl_function" href="classripple_1_1TxQ_1_1MaybeTx.html#af94c48036063440d318f8ba2a27c57ca">consequences</a>(),</div>
<div class="line"><a id="l00602" name="l00602"></a><span class="lineno"> 602</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#aab99eb732c41530f27bbea6626ca6a28">account</a>,</div>
<div class="line"><a id="l00603" name="l00603"></a><span class="lineno"> 603</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a008400f3b43a288edbe2918b629a4e4e">seqProxy</a>,</div>
<div class="line"><a id="l00604" name="l00604"></a><span class="lineno"> 604</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#abf55d40e02fe19801802976089234c2c">txn</a>,</div>
<div class="line"><a id="l00605" name="l00605"></a><span class="lineno"> 605</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a60e808612ec45ed655d2435d2f048ff4">retriesRemaining</a>,</div>
<div class="line"><a id="l00606" name="l00606"></a><span class="lineno"> 606</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a735992a97463ef579f12dfbc1199e63e">pfresult</a>-&gt;ter,</div>
<div class="line"><a id="l00607" name="l00607"></a><span class="lineno"> 607</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#aef427954161fcceb3c00fe6d2f0133bc">lastResult</a>};</div>
<div class="line"><a id="l00608" name="l00608"></a><span class="lineno"> 608</span> }</div>
</div>
<div class="line"><a id="l00609" name="l00609"></a><span class="lineno"> 609</span> };</div>
</div>
<div class="line"><a id="l00610" name="l00610"></a><span class="lineno"> 610</span> </div>
<div class="foldopen" id="foldopen00612" data-start="{" data-end="};">
<div class="line"><a id="l00612" name="l00612"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1OrderCandidates.html"> 612</a></span> <span class="keyword">class </span><a class="code hl_class" href="classripple_1_1TxQ_1_1OrderCandidates.html">OrderCandidates</a></div>
<div class="line"><a id="l00613" name="l00613"></a><span class="lineno"> 613</span> {</div>
<div class="line"><a id="l00614" name="l00614"></a><span class="lineno"> 614</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00616" name="l00616"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1OrderCandidates.html#a2625000cceb569d892223d4607e1cf42"> 616</a></span> <span class="keyword">explicit</span> <a class="code hl_function" href="classripple_1_1TxQ_1_1OrderCandidates.html#a2625000cceb569d892223d4607e1cf42">OrderCandidates</a>() = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00617" name="l00617"></a><span class="lineno"> 617</span> </div>
<div class="line"><a id="l00633" name="l00633"></a><span class="lineno"> 633</span> <span class="keywordtype">bool</span></div>
<div class="foldopen" id="foldopen00634" data-start="{" data-end="}">
<div class="line"><a id="l00634" name="l00634"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1OrderCandidates.html#af3061eb4f79d584f1526f1ed17e95a54"> 634</a></span> <a class="code hl_function" href="classripple_1_1TxQ_1_1OrderCandidates.html#af3061eb4f79d584f1526f1ed17e95a54">operator()</a>(<a class="code hl_class" href="classripple_1_1TxQ_1_1MaybeTx.html">MaybeTx</a> <span class="keyword">const</span>&amp; lhs, <a class="code hl_class" href="classripple_1_1TxQ_1_1MaybeTx.html">MaybeTx</a> <span class="keyword">const</span>&amp; rhs)<span class="keyword"> const</span></div>
<div class="line"><a id="l00635" name="l00635"></a><span class="lineno"> 635</span><span class="keyword"> </span>{</div>
<div class="line"><a id="l00636" name="l00636"></a><span class="lineno"> 636</span> <span class="keywordflow">if</span> (lhs.<a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a653a567497410b13a32bf0700a6999c1">feeLevel</a> == rhs.<a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a653a567497410b13a32bf0700a6999c1">feeLevel</a>)</div>
<div class="line"><a id="l00637" name="l00637"></a><span class="lineno"> 637</span> <span class="keywordflow">return</span> (lhs.<a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#ae5eefa76fcb4af4310136b9d8fe6ce1d">txID</a> ^ <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#ae93279a394660d7d7709e84df2d5086c">MaybeTx::parentHashComp</a>) &lt;</div>
<div class="line"><a id="l00638" name="l00638"></a><span class="lineno"> 638</span> (rhs.<a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#ae5eefa76fcb4af4310136b9d8fe6ce1d">txID</a> ^ <a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#ae93279a394660d7d7709e84df2d5086c">MaybeTx::parentHashComp</a>);</div>
<div class="line"><a id="l00639" name="l00639"></a><span class="lineno"> 639</span> <span class="keywordflow">return</span> lhs.<a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a653a567497410b13a32bf0700a6999c1">feeLevel</a> &gt; rhs.<a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a653a567497410b13a32bf0700a6999c1">feeLevel</a>;</div>
<div class="line"><a id="l00640" name="l00640"></a><span class="lineno"> 640</span> }</div>
</div>
<div class="line"><a id="l00641" name="l00641"></a><span class="lineno"> 641</span> };</div>
</div>
<div class="line"><a id="l00642" name="l00642"></a><span class="lineno"> 642</span> </div>
<div class="foldopen" id="foldopen00646" data-start="{" data-end="};">
<div class="line"><a id="l00646" name="l00646"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1TxQAccount.html"> 646</a></span> <span class="keyword">class </span><a class="code hl_class" href="classripple_1_1TxQ_1_1TxQAccount.html">TxQAccount</a></div>
<div class="line"><a id="l00647" name="l00647"></a><span class="lineno"> 647</span> {</div>
<div class="line"><a id="l00648" name="l00648"></a><span class="lineno"> 648</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00649" name="l00649"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1TxQAccount.html#ae79c60b82b9d9984281eaf667a8b3ce5"> 649</a></span> <span class="keyword">using </span><a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/container/map.html">TxMap</a> = <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/container/map.html">std::map&lt;SeqProxy, MaybeTx&gt;</a>;</div>
<div class="line"><a id="l00650" name="l00650"></a><span class="lineno"> 650</span> </div>
<div class="line"><a id="l00652" name="l00652"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1TxQAccount.html#a37df6ccf23c80546a4c45db88ea01373"> 652</a></span> <a class="code hl_class" href="classripple_1_1base__uint.html">AccountID</a> <span class="keyword">const</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1TxQAccount.html#a37df6ccf23c80546a4c45db88ea01373">account</a>;</div>
<div class="line"><a id="l00654" name="l00654"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1TxQAccount.html#a278169eda7bcc599bc4061359cf33b48"> 654</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/container/map.html">TxMap</a> <a class="code hl_variable" href="classripple_1_1TxQ_1_1TxQAccount.html#a278169eda7bcc599bc4061359cf33b48">transactions</a>;</div>
<div class="line"><a id="l00655" name="l00655"></a><span class="lineno"> 655</span> <span class="comment">/* If this account has had any transaction retry more than</span></div>
<div class="line"><a id="l00656" name="l00656"></a><span class="lineno"> 656</span><span class="comment"> `retriesAllowed` times so that it was dropped from the</span></div>
<div class="line"><a id="l00657" name="l00657"></a><span class="lineno"> 657</span><span class="comment"> queue, then all other transactions for this account will</span></div>
<div class="line"><a id="l00658" name="l00658"></a><span class="lineno"> 658</span><span class="comment"> be given at most 2 attempts before being removed. Helps</span></div>
<div class="line"><a id="l00659" name="l00659"></a><span class="lineno"> 659</span><span class="comment"> prevent wasting resources on retries that are more likely</span></div>
<div class="line"><a id="l00660" name="l00660"></a><span class="lineno"> 660</span><span class="comment"> to fail.</span></div>
<div class="line"><a id="l00661" name="l00661"></a><span class="lineno"> 661</span><span class="comment"> */</span></div>
<div class="line"><a id="l00662" name="l00662"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1TxQAccount.html#a9ead3ed986012a2c26c0c3003fcbb204"> 662</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1TxQAccount.html#a9ead3ed986012a2c26c0c3003fcbb204">retryPenalty</a> = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00663" name="l00663"></a><span class="lineno"> 663</span> <span class="comment">/* If this account has had any transaction fail or expire,</span></div>
<div class="line"><a id="l00664" name="l00664"></a><span class="lineno"> 664</span><span class="comment"> then when the queue is nearly full, transactions from</span></div>
<div class="line"><a id="l00665" name="l00665"></a><span class="lineno"> 665</span><span class="comment"> this account will be discarded. Helps prevent the queue</span></div>
<div class="line"><a id="l00666" name="l00666"></a><span class="lineno"> 666</span><span class="comment"> from getting filled and wedged.</span></div>
<div class="line"><a id="l00667" name="l00667"></a><span class="lineno"> 667</span><span class="comment"> */</span></div>
<div class="line"><a id="l00668" name="l00668"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1TxQAccount.html#a83db75e953fdeb2d6f99699a65f4a6b9"> 668</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1TxQAccount.html#a83db75e953fdeb2d6f99699a65f4a6b9">dropPenalty</a> = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00669" name="l00669"></a><span class="lineno"> 669</span> </div>
<div class="line"><a id="l00670" name="l00670"></a><span class="lineno"> 670</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00672" name="l00672"></a><span class="lineno"> 672</span> <span class="keyword">explicit</span> <a class="code hl_class" href="classripple_1_1TxQ_1_1TxQAccount.html">TxQAccount</a>(<a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr&lt;STTx const&gt;</a> <span class="keyword">const</span>&amp; txn);</div>
<div class="line"><a id="l00674" name="l00674"></a><span class="lineno"> 674</span> <span class="keyword">explicit</span> <a class="code hl_class" href="classripple_1_1TxQ_1_1TxQAccount.html">TxQAccount</a>(<a class="code hl_class" href="classripple_1_1base__uint.html">AccountID</a> <span class="keyword">const</span>&amp; <a class="code hl_variable" href="classripple_1_1TxQ_1_1TxQAccount.html#a37df6ccf23c80546a4c45db88ea01373">account</a>);</div>
<div class="line"><a id="l00675" name="l00675"></a><span class="lineno"> 675</span> </div>
<div class="line"><a id="l00677" name="l00677"></a><span class="lineno"> 677</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a></div>
<div class="foldopen" id="foldopen00678" data-start="{" data-end="}">
<div class="line"><a id="l00678" name="l00678"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1TxQAccount.html#a339265353ad9dd97360c6fd8af1ceae9"> 678</a></span> <a class="code hl_function" href="classripple_1_1TxQ_1_1TxQAccount.html#a339265353ad9dd97360c6fd8af1ceae9">getTxnCount</a>()<span class="keyword"> const</span></div>
<div class="line"><a id="l00679" name="l00679"></a><span class="lineno"> 679</span><span class="keyword"> </span>{</div>
<div class="line"><a id="l00680" name="l00680"></a><span class="lineno"> 680</span> <span class="keywordflow">return</span> <a class="code hl_variable" href="classripple_1_1TxQ_1_1TxQAccount.html#a278169eda7bcc599bc4061359cf33b48">transactions</a>.<a class="code hl_functionRef" href="http://en.cppreference.com/w/cpp/container/map/size.html">size</a>();</div>
<div class="line"><a id="l00681" name="l00681"></a><span class="lineno"> 681</span> }</div>
</div>
<div class="line"><a id="l00682" name="l00682"></a><span class="lineno"> 682</span> </div>
<div class="line"><a id="l00684" name="l00684"></a><span class="lineno"> 684</span> <span class="keywordtype">bool</span></div>
<div class="foldopen" id="foldopen00685" data-start="{" data-end="}">
<div class="line"><a id="l00685" name="l00685"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ_1_1TxQAccount.html#af7043a1b5bddeaf70c5e86c0c790475d"> 685</a></span> <a class="code hl_function" href="classripple_1_1TxQ_1_1TxQAccount.html#af7043a1b5bddeaf70c5e86c0c790475d">empty</a>()<span class="keyword"> const</span></div>
<div class="line"><a id="l00686" name="l00686"></a><span class="lineno"> 686</span><span class="keyword"> </span>{</div>
<div class="line"><a id="l00687" name="l00687"></a><span class="lineno"> 687</span> <span class="keywordflow">return</span> !<a class="code hl_function" href="classripple_1_1TxQ_1_1TxQAccount.html#a339265353ad9dd97360c6fd8af1ceae9">getTxnCount</a>();</div>
<div class="line"><a id="l00688" name="l00688"></a><span class="lineno"> 688</span> }</div>
</div>
<div class="line"><a id="l00689" name="l00689"></a><span class="lineno"> 689</span> </div>
<div class="line"><a id="l00691" name="l00691"></a><span class="lineno"> 691</span> TxMap::const_iterator</div>
<div class="line"><a id="l00692" name="l00692"></a><span class="lineno"> 692</span> <a class="code hl_function" href="classripple_1_1TxQ_1_1TxQAccount.html#a6c96474d54b20adb7bc5a9e35416b580">getPrevTx</a>(<a class="code hl_class" href="classripple_1_1SeqProxy.html">SeqProxy</a> seqProx) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00693" name="l00693"></a><span class="lineno"> 693</span> </div>
<div class="line"><a id="l00695" name="l00695"></a><span class="lineno"> 695</span> <a class="code hl_class" href="classripple_1_1TxQ_1_1MaybeTx.html">MaybeTx</a>&amp;</div>
<div class="line"><a id="l00696" name="l00696"></a><span class="lineno"> 696</span> <a class="code hl_function" href="classripple_1_1TxQ_1_1TxQAccount.html#a94e7af12408e939994f79cab5b197093">add</a>(<a class="code hl_class" href="classripple_1_1TxQ_1_1MaybeTx.html">MaybeTx</a>&amp;&amp;);</div>
<div class="line"><a id="l00697" name="l00697"></a><span class="lineno"> 697</span> </div>
<div class="line"><a id="l00703" name="l00703"></a><span class="lineno"> 703</span> <span class="keywordtype">bool</span></div>
<div class="line"><a id="l00704" name="l00704"></a><span class="lineno"> 704</span> <a class="code hl_function" href="classripple_1_1TxQ_1_1TxQAccount.html#a7106d8d41362079c40c5636b50c246d4">remove</a>(<a class="code hl_class" href="classripple_1_1SeqProxy.html">SeqProxy</a> seqProx);</div>
<div class="line"><a id="l00705" name="l00705"></a><span class="lineno"> 705</span> };</div>
</div>
<div class="line"><a id="l00706" name="l00706"></a><span class="lineno"> 706</span> </div>
<div class="line"><a id="l00707" name="l00707"></a><span class="lineno"> 707</span> <span class="comment">// Helper function returns requiredFeeLevel.</span></div>
<div class="line"><a id="l00708" name="l00708"></a><span class="lineno"> 708</span> <a class="code hl_class" href="classripple_1_1unit_1_1ValueUnit.html">FeeLevel64</a></div>
<div class="line"><a id="l00709" name="l00709"></a><span class="lineno"> 709</span> <a class="code hl_function" href="classripple_1_1TxQ.html#a959646175ed7eb636de9a994566322e1">getRequiredFeeLevel</a>(</div>
<div class="line"><a id="l00710" name="l00710"></a><span class="lineno"> 710</span> <a class="code hl_class" href="classripple_1_1OpenView.html">OpenView</a>&amp; view,</div>
<div class="line"><a id="l00711" name="l00711"></a><span class="lineno"> 711</span> <a class="code hl_enumeration" href="namespaceripple.html#ad2487abbcc1a5d6064b72144b461df6e">ApplyFlags</a> flags,</div>
<div class="line"><a id="l00712" name="l00712"></a><span class="lineno"> 712</span> FeeMetrics::Snapshot <span class="keyword">const</span>&amp; metricsSnapshot,</div>
<div class="line"><a id="l00713" name="l00713"></a><span class="lineno"> 713</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/thread/lock_guard.html">std::lock_guard&lt;std::mutex&gt;</a> <span class="keyword">const</span>&amp; lock) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00714" name="l00714"></a><span class="lineno"> 714</span> </div>
<div class="line"><a id="l00715" name="l00715"></a><span class="lineno"> 715</span> <span class="comment">// Helper function for TxQ::apply. If a transaction&#39;s fee is high enough,</span></div>
<div class="line"><a id="l00716" name="l00716"></a><span class="lineno"> 716</span> <span class="comment">// attempt to directly apply that transaction to the ledger.</span></div>
<div class="line"><a id="l00717" name="l00717"></a><span class="lineno"> 717</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional&lt;ApplyResult&gt;</a></div>
<div class="line"><a id="l00718" name="l00718"></a><span class="lineno"> 718</span> <a class="code hl_function" href="classripple_1_1TxQ.html#af556f186cef2a05acf55b3f33ed968c3">tryDirectApply</a>(</div>
<div class="line"><a id="l00719" name="l00719"></a><span class="lineno"> 719</span> <a class="code hl_class" href="classripple_1_1Application.html">Application</a>&amp; app,</div>
<div class="line"><a id="l00720" name="l00720"></a><span class="lineno"> 720</span> <a class="code hl_class" href="classripple_1_1OpenView.html">OpenView</a>&amp; view,</div>
<div class="line"><a id="l00721" name="l00721"></a><span class="lineno"> 721</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr&lt;STTx const&gt;</a> <span class="keyword">const</span>&amp; tx,</div>
<div class="line"><a id="l00722" name="l00722"></a><span class="lineno"> 722</span> <a class="code hl_enumeration" href="namespaceripple.html#ad2487abbcc1a5d6064b72144b461df6e">ApplyFlags</a> flags,</div>
<div class="line"><a id="l00723" name="l00723"></a><span class="lineno"> 723</span> <a class="code hl_class" href="classbeast_1_1Journal.html">beast::Journal</a> j);</div>
<div class="line"><a id="l00724" name="l00724"></a><span class="lineno"> 724</span> </div>
<div class="line"><a id="l00725" name="l00725"></a><span class="lineno"> 725</span> <span class="comment">// Helper function that removes a replaced entry in _byFee.</span></div>
<div class="line"><a id="l00726" name="l00726"></a><span class="lineno"> 726</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional&lt;TxQAccount::TxMap::iterator&gt;</a></div>
<div class="line"><a id="l00727" name="l00727"></a><span class="lineno"> 727</span> <a class="code hl_function" href="classripple_1_1TxQ.html#a0f41196cdd90099a9fcc8852d1bdaff4">removeFromByFee</a>(</div>
<div class="line"><a id="l00728" name="l00728"></a><span class="lineno"> 728</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional&lt;TxQAccount::TxMap::iterator&gt;</a> <span class="keyword">const</span>&amp; replacedTxIter,</div>
<div class="line"><a id="l00729" name="l00729"></a><span class="lineno"> 729</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr&lt;STTx const&gt;</a> <span class="keyword">const</span>&amp; tx);</div>
<div class="line"><a id="l00730" name="l00730"></a><span class="lineno"> 730</span> </div>
<div class="line"><a id="l00731" name="l00731"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ.html#a6bb6f93b4d95b63dfc55fae4246b38b8"> 731</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="classripple_1_1TxQ.html#a6bb6f93b4d95b63dfc55fae4246b38b8">FeeHook</a> = boost::intrusive::member_hook&lt;</div>
<div class="line"><a id="l00732" name="l00732"></a><span class="lineno"> 732</span> <a class="code hl_class" href="classripple_1_1TxQ_1_1MaybeTx.html">MaybeTx</a>,</div>
<div class="line"><a id="l00733" name="l00733"></a><span class="lineno"> 733</span> boost::intrusive::set_member_hook&lt;&gt;,</div>
<div class="line"><a id="l00734" name="l00734"></a><span class="lineno"> 734</span> &amp;<a class="code hl_variable" href="classripple_1_1TxQ_1_1MaybeTx.html#a4bf9e0ab6525122a6cd2d16270ada692">MaybeTx::byFeeListHook</a>&gt;;</div>
<div class="line"><a id="l00735" name="l00735"></a><span class="lineno"> 735</span> </div>
<div class="line"><a id="l00736" name="l00736"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ.html#a0ce340269d77d8ef2d85513d9545c815"> 736</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="classripple_1_1TxQ.html#a0ce340269d77d8ef2d85513d9545c815">FeeMultiSet</a> = boost::intrusive::</div>
<div class="line"><a id="l00737" name="l00737"></a><span class="lineno"> 737</span> multiset&lt;MaybeTx, FeeHook, boost::intrusive::compare&lt;OrderCandidates&gt;&gt;;</div>
<div class="line"><a id="l00738" name="l00738"></a><span class="lineno"> 738</span> </div>
<div class="line"><a id="l00739" name="l00739"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ.html#a5ccee3a88bdb094c8eb33a9fbe436c8d"> 739</a></span> <span class="keyword">using </span><a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/container/map.html">AccountMap</a> = <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/container/map.html">std::map&lt;AccountID, TxQAccount&gt;</a>;</div>
<div class="line"><a id="l00740" name="l00740"></a><span class="lineno"> 740</span> </div>
<div class="line"><a id="l00742" name="l00742"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ.html#ad474e51bf3d5f570f630eaafb87814f4"> 742</a></span> <a class="code hl_struct" href="structripple_1_1TxQ_1_1Setup.html">Setup</a> <span class="keyword">const</span> <a class="code hl_variable" href="classripple_1_1TxQ.html#ad474e51bf3d5f570f630eaafb87814f4">setup_</a>;</div>
<div class="line"><a id="l00744" name="l00744"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ.html#a558ec7e0156901c0af925b5acb026b3b"> 744</a></span> <a class="code hl_class" href="classbeast_1_1Journal.html">beast::Journal</a> <span class="keyword">const</span> <a class="code hl_variable" href="classripple_1_1TxQ.html#a558ec7e0156901c0af925b5acb026b3b">j_</a>;</div>
<div class="line"><a id="l00745" name="l00745"></a><span class="lineno"> 745</span> </div>
<div class="line"><a id="l00750" name="l00750"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ.html#a937b5c79cd012b25e31442e7390e5df5"> 750</a></span> <a class="code hl_class" href="classripple_1_1TxQ_1_1FeeMetrics.html">FeeMetrics</a> <a class="code hl_variable" href="classripple_1_1TxQ.html#a937b5c79cd012b25e31442e7390e5df5">feeMetrics_</a>;</div>
<div class="line"><a id="l00756" name="l00756"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ.html#a3a26f78ddb330368dea5c95a9bf8d218"> 756</a></span> <a class="code hl_typedef" href="classripple_1_1TxQ.html#a0ce340269d77d8ef2d85513d9545c815">FeeMultiSet</a> <a class="code hl_variable" href="classripple_1_1TxQ.html#a3a26f78ddb330368dea5c95a9bf8d218">byFee_</a>;</div>
<div class="line"><a id="l00763" name="l00763"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ.html#a6ab1707fecc84164c74360094d1bc03d"> 763</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/container/map.html">AccountMap</a> <a class="code hl_variable" href="classripple_1_1TxQ.html#a6ab1707fecc84164c74360094d1bc03d">byAccount_</a>;</div>
<div class="line"><a id="l00770" name="l00770"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ.html#a21c99b49f8d49b48488d8388ad53f747"> 770</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional&lt;size_t&gt;</a> <a class="code hl_variable" href="classripple_1_1TxQ.html#a21c99b49f8d49b48488d8388ad53f747">maxSize_</a>;</div>
<div class="line"><a id="l00771" name="l00771"></a><span class="lineno"> 771</span> </div>
<div class="line"><a id="l00775" name="l00775"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ.html#a71a301b0a48137d7121dda3b66db2fb5"> 775</a></span> <a class="code hl_class" href="classripple_1_1base__uint.html">LedgerHash</a> <a class="code hl_variable" href="classripple_1_1TxQ.html#a71a301b0a48137d7121dda3b66db2fb5">parentHash_</a>{beast::zero};</div>
<div class="line"><a id="l00776" name="l00776"></a><span class="lineno"> 776</span> </div>
<div class="line"><a id="l00780" name="l00780"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ.html#a63a8817d4a8b421e026e1454c4ba4646"> 780</a></span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/thread/mutex.html">std::mutex</a> <span class="keyword">mutable</span> <a class="code hl_variable" href="classripple_1_1TxQ.html#a63a8817d4a8b421e026e1454c4ba4646">mutex_</a>;</div>
<div class="line"><a id="l00781" name="l00781"></a><span class="lineno"> 781</span> </div>
<div class="line"><a id="l00782" name="l00782"></a><span class="lineno"> 782</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00784" name="l00784"></a><span class="lineno"> 784</span> <span class="keyword">template</span> &lt;<span class="keywordtype">size_t</span> fillPercentage = 100&gt;</div>
<div class="line"><a id="l00785" name="l00785"></a><span class="lineno"> 785</span> <span class="keywordtype">bool</span></div>
<div class="line"><a id="l00786" name="l00786"></a><span class="lineno"> 786</span> <a class="code hl_function" href="classripple_1_1TxQ.html#a89e49f3807e98e4e98b2b1a4e2d08a63">isFull</a>() <span class="keyword">const</span>;</div>
<div class="line"><a id="l00787" name="l00787"></a><span class="lineno"> 787</span> </div>
<div class="line"><a id="l00791" name="l00791"></a><span class="lineno"> 791</span> <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a></div>
<div class="line"><a id="l00792" name="l00792"></a><span class="lineno"> 792</span> <a class="code hl_function" href="classripple_1_1TxQ.html#a5809a0ba90f44da94b1b9f73f5247434">canBeHeld</a>(</div>
<div class="line"><a id="l00793" name="l00793"></a><span class="lineno"> 793</span> <a class="code hl_class" href="classripple_1_1STTx.html">STTx</a> <span class="keyword">const</span>&amp;,</div>
<div class="line"><a id="l00794" name="l00794"></a><span class="lineno"> 794</span> <a class="code hl_enumeration" href="namespaceripple.html#ad2487abbcc1a5d6064b72144b461df6e">ApplyFlags</a> <span class="keyword">const</span>,</div>
<div class="line"><a id="l00795" name="l00795"></a><span class="lineno"> 795</span> <a class="code hl_class" href="classripple_1_1OpenView.html">OpenView</a> <span class="keyword">const</span>&amp;,</div>
<div class="line"><a id="l00796" name="l00796"></a><span class="lineno"> 796</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr&lt;SLE const&gt;</a> <span class="keyword">const</span>&amp; sleAccount,</div>
<div class="line"><a id="l00797" name="l00797"></a><span class="lineno"> 797</span> AccountMap::iterator <span class="keyword">const</span>&amp;,</div>
<div class="line"><a id="l00798" name="l00798"></a><span class="lineno"> 798</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional&lt;TxQAccount::TxMap::iterator&gt;</a> <span class="keyword">const</span>&amp;,</div>
<div class="line"><a id="l00799" name="l00799"></a><span class="lineno"> 799</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/thread/lock_guard.html">std::lock_guard&lt;std::mutex&gt;</a> <span class="keyword">const</span>&amp; lock);</div>
<div class="line"><a id="l00800" name="l00800"></a><span class="lineno"> 800</span> </div>
<div class="line"><a id="l00802" name="l00802"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ.html#a26b6671b2ff3fc348a8d5736e9b4e9a0"> 802</a></span> FeeMultiSet::iterator_type <a class="code hl_function" href="classripple_1_1TxQ.html#a26b6671b2ff3fc348a8d5736e9b4e9a0">erase</a>(FeeMultiSet::const_iterator_type);</div>
<div class="line"><a id="l00807" name="l00807"></a><span class="lineno"> 807</span> FeeMultiSet::iterator_type <a class="code hl_function" href="classripple_1_1TxQ.html#a8ea9199acfabad1943a622e02a76646a">eraseAndAdvance</a>(</div>
<div class="line"><a id="l00808" name="l00808"></a><span class="lineno"> 808</span> FeeMultiSet::const_iterator_type);</div>
<div class="line"><a id="l00810" name="l00810"></a><span class="lineno"> 810</span> TxQAccount::TxMap::iterator</div>
<div class="line"><a id="l00811" name="l00811"></a><span class="lineno"><a class="line" href="classripple_1_1TxQ.html#ab26994acdf0d62fc2bd0a40cb2ba08ac"> 811</a></span> <a class="code hl_function" href="classripple_1_1TxQ.html#ab26994acdf0d62fc2bd0a40cb2ba08ac">erase</a>(</div>
<div class="line"><a id="l00812" name="l00812"></a><span class="lineno"> 812</span> <a class="code hl_class" href="classripple_1_1TxQ_1_1TxQAccount.html">TxQAccount</a>&amp; txQAccount,</div>
<div class="line"><a id="l00813" name="l00813"></a><span class="lineno"> 813</span> TxQAccount::TxMap::const_iterator begin,</div>
<div class="line"><a id="l00814" name="l00814"></a><span class="lineno"> 814</span> TxQAccount::TxMap::const_iterator end);</div>
<div class="line"><a id="l00815" name="l00815"></a><span class="lineno"> 815</span> </div>
<div class="line"><a id="l00821" name="l00821"></a><span class="lineno"> 821</span> <a class="code hl_struct" href="structripple_1_1ApplyResult.html">ApplyResult</a></div>
<div class="line"><a id="l00822" name="l00822"></a><span class="lineno"> 822</span> <a class="code hl_function" href="classripple_1_1TxQ.html#a75d6ebd1766e4a403ea3575b950c6ba8">tryClearAccountQueueUpThruTx</a>(</div>
<div class="line"><a id="l00823" name="l00823"></a><span class="lineno"> 823</span> <a class="code hl_class" href="classripple_1_1Application.html">Application</a>&amp; app,</div>
<div class="line"><a id="l00824" name="l00824"></a><span class="lineno"> 824</span> <a class="code hl_class" href="classripple_1_1OpenView.html">OpenView</a>&amp; view,</div>
<div class="line"><a id="l00825" name="l00825"></a><span class="lineno"> 825</span> <a class="code hl_class" href="classripple_1_1STTx.html">STTx</a> <span class="keyword">const</span>&amp; tx,</div>
<div class="line"><a id="l00826" name="l00826"></a><span class="lineno"> 826</span> AccountMap::iterator <span class="keyword">const</span>&amp; accountIter,</div>
<div class="line"><a id="l00827" name="l00827"></a><span class="lineno"> 827</span> TxQAccount::TxMap::iterator,</div>
<div class="line"><a id="l00828" name="l00828"></a><span class="lineno"> 828</span> <a class="code hl_class" href="classripple_1_1unit_1_1ValueUnit.html">FeeLevel64</a> feeLevelPaid,</div>
<div class="line"><a id="l00829" name="l00829"></a><span class="lineno"> 829</span> <a class="code hl_struct" href="structripple_1_1PreflightResult.html">PreflightResult</a> <span class="keyword">const</span>&amp; pfresult,</div>
<div class="line"><a id="l00830" name="l00830"></a><span class="lineno"> 830</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <span class="keyword">const</span> txExtraCount,</div>
<div class="line"><a id="l00831" name="l00831"></a><span class="lineno"> 831</span> <a class="code hl_enumeration" href="namespaceripple.html#ad2487abbcc1a5d6064b72144b461df6e">ApplyFlags</a> flags,</div>
<div class="line"><a id="l00832" name="l00832"></a><span class="lineno"> 832</span> <a class="code hl_struct" href="structripple_1_1TxQ_1_1FeeMetrics_1_1Snapshot.html">FeeMetrics::Snapshot</a> <span class="keyword">const</span>&amp; metricsSnapshot,</div>
<div class="line"><a id="l00833" name="l00833"></a><span class="lineno"> 833</span> <a class="code hl_class" href="classbeast_1_1Journal.html">beast::Journal</a> j);</div>
<div class="line"><a id="l00834" name="l00834"></a><span class="lineno"> 834</span>};</div>
</div>
<div class="line"><a id="l00835" name="l00835"></a><span class="lineno"> 835</span> </div>
<div class="line"><a id="l00839" name="l00839"></a><span class="lineno"> 839</span><a class="code hl_struct" href="structripple_1_1TxQ_1_1Setup.html">TxQ::Setup</a></div>
<div class="line"><a id="l00840" name="l00840"></a><span class="lineno"> 840</span><a class="code hl_function" href="namespaceripple.html#a206538f11503ef2bdb2f772b8ebeaaf4">setup_TxQ</a>(<a class="code hl_class" href="classripple_1_1Config.html">Config</a> <span class="keyword">const</span>&amp;);</div>
<div class="line"><a id="l00841" name="l00841"></a><span class="lineno"> 841</span> </div>
<div class="line"><a id="l00842" name="l00842"></a><span class="lineno"> 842</span><span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt;</div>
<div class="line"><a id="l00843" name="l00843"></a><span class="lineno"> 843</span><a class="code hl_class" href="classripple_1_1XRPAmount.html">XRPAmount</a></div>
<div class="foldopen" id="foldopen00844" data-start="{" data-end="}">
<div class="line"><a id="l00844" name="l00844"></a><span class="lineno"><a class="line" href="namespaceripple.html#acee1f3b6b870fd674b55857a57da61f5"> 844</a></span><a class="code hl_function" href="namespaceripple.html#acee1f3b6b870fd674b55857a57da61f5">toDrops</a>(<a class="code hl_class" href="classripple_1_1unit_1_1ValueUnit.html">FeeLevel&lt;T&gt;</a> <span class="keyword">const</span>&amp; level, <a class="code hl_class" href="classripple_1_1XRPAmount.html">XRPAmount</a> baseFee)</div>
<div class="line"><a id="l00845" name="l00845"></a><span class="lineno"> 845</span>{</div>
<div class="line"><a id="l00846" name="l00846"></a><span class="lineno"> 846</span> <span class="keywordflow">return</span> <a class="code hl_function" href="namespaceripple.html#ad012d6a36cd38b19ab4d8b47521fbd5f">mulDiv</a>(level, baseFee, <a class="code hl_variable" href="classripple_1_1TxQ.html#acfc1afed59fb7f9d2404f479d7cbeef6">TxQ::baseLevel</a>)</div>
<div class="line"><a id="l00847" name="l00847"></a><span class="lineno"> 847</span> .<a class="code hl_functionRef" href="http://en.cppreference.com/w/cpp/utility/optional/value_or.html">value_or</a>(<a class="code hl_class" href="classripple_1_1XRPAmount.html">XRPAmount</a>(<a class="code hl_variable" href="classripple_1_1STAmount.html#a251693eb2dea7c8f517428e9baf5afb1">STAmount::cMaxNativeN</a>));</div>
<div class="line"><a id="l00848" name="l00848"></a><span class="lineno"> 848</span>}</div>
</div>
<div class="line"><a id="l00849" name="l00849"></a><span class="lineno"> 849</span> </div>
<div class="line"><a id="l00850" name="l00850"></a><span class="lineno"> 850</span><span class="keyword">inline</span> <a class="code hl_typedef" href="namespaceripple.html#aaaf6522d07c2b836c5fd589e9ecf578c">FeeLevel64</a></div>
<div class="foldopen" id="foldopen00851" data-start="{" data-end="}">
<div class="line"><a id="l00851" name="l00851"></a><span class="lineno"><a class="line" href="namespaceripple.html#aa58553112bd1aaa4fc99850a98a3362a"> 851</a></span><a class="code hl_function" href="namespaceripple.html#aa58553112bd1aaa4fc99850a98a3362a">toFeeLevel</a>(<a class="code hl_class" href="classripple_1_1XRPAmount.html">XRPAmount</a> <span class="keyword">const</span>&amp; drops, <a class="code hl_class" href="classripple_1_1XRPAmount.html">XRPAmount</a> <span class="keyword">const</span>&amp; baseFee)</div>
<div class="line"><a id="l00852" name="l00852"></a><span class="lineno"> 852</span>{</div>
<div class="line"><a id="l00853" name="l00853"></a><span class="lineno"> 853</span> <span class="keywordflow">return</span> <a class="code hl_function" href="namespaceripple.html#ad012d6a36cd38b19ab4d8b47521fbd5f">mulDiv</a>(drops, <a class="code hl_variable" href="classripple_1_1TxQ.html#acfc1afed59fb7f9d2404f479d7cbeef6">TxQ::baseLevel</a>, baseFee)</div>
<div class="line"><a id="l00854" name="l00854"></a><span class="lineno"> 854</span> .<a class="code hl_functionRef" href="http://en.cppreference.com/w/cpp/utility/optional/value_or.html">value_or</a>(<a class="code hl_typedef" href="namespaceripple.html#aaaf6522d07c2b836c5fd589e9ecf578c">FeeLevel64</a>(<a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/types/numeric_limits.html">std::numeric_limits&lt;std::uint64_t&gt;::max</a>()));</div>
<div class="line"><a id="l00855" name="l00855"></a><span class="lineno"> 855</span>}</div>
</div>
<div class="line"><a id="l00856" name="l00856"></a><span class="lineno"> 856</span> </div>
<div class="line"><a id="l00857" name="l00857"></a><span class="lineno"> 857</span>} <span class="comment">// namespace ripple</span></div>
<div class="line"><a id="l00858" name="l00858"></a><span class="lineno"> 858</span> </div>
<div class="line"><a id="l00859" name="l00859"></a><span class="lineno"> 859</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="aclassJson_1_1Value_html"><div class="ttname"><a href="classJson_1_1Value.html">Json::Value</a></div><div class="ttdoc">Represents a JSON value.</div><div class="ttdef"><b>Definition</b> <a href="json__value_8h_source.html#l00130">json_value.h:131</a></div></div>
<div class="ttc" id="aclassbeast_1_1Journal_html"><div class="ttname"><a href="classbeast_1_1Journal.html">beast::Journal</a></div><div class="ttdoc">A generic endpoint for log messages.</div><div class="ttdef"><b>Definition</b> <a href="Journal_8h_source.html#l00040">Journal.h:41</a></div></div>
<div class="ttc" id="aclassripple_1_1Application_html"><div class="ttname"><a href="classripple_1_1Application.html">ripple::Application</a></div><div class="ttdef"><b>Definition</b> <a href="Application_8h_source.html#l00094">Application.h:95</a></div></div>
<div class="ttc" id="aclassripple_1_1Config_html"><div class="ttname"><a href="classripple_1_1Config.html">ripple::Config</a></div><div class="ttdef"><b>Definition</b> <a href="Config_8h_source.html#l00066">Config.h:67</a></div></div>
<div class="ttc" id="aclassripple_1_1OpenView_html"><div class="ttname"><a href="classripple_1_1OpenView.html">ripple::OpenView</a></div><div class="ttdoc">Writable ledger view that accumulates state and tx changes.</div><div class="ttdef"><b>Definition</b> <a href="OpenView_8h_source.html#l00045">OpenView.h:46</a></div></div>
<div class="ttc" id="aclassripple_1_1ReadView_html"><div class="ttname"><a href="classripple_1_1ReadView.html">ripple::ReadView</a></div><div class="ttdoc">A view into a ledger.</div><div class="ttdef"><b>Definition</b> <a href="ReadView_8h_source.html#l00031">ReadView.h:32</a></div></div>
<div class="ttc" id="aclassripple_1_1STAmount_html_a251693eb2dea7c8f517428e9baf5afb1"><div class="ttname"><a href="classripple_1_1STAmount.html#a251693eb2dea7c8f517428e9baf5afb1">ripple::STAmount::cMaxNativeN</a></div><div class="ttdeci">static std::uint64_t const cMaxNativeN</div><div class="ttdef"><b>Definition</b> <a href="STAmount_8h_source.html#l00055">STAmount.h:55</a></div></div>
<div class="ttc" id="aclassripple_1_1STTx_html"><div class="ttname"><a href="classripple_1_1STTx.html">ripple::STTx</a></div><div class="ttdef"><b>Definition</b> <a href="STTx_8h_source.html#l00028">STTx.h:29</a></div></div>
<div class="ttc" id="aclassripple_1_1SeqProxy_html"><div class="ttname"><a href="classripple_1_1SeqProxy.html">ripple::SeqProxy</a></div><div class="ttdoc">A type that represents either a sequence value or a ticket value.</div><div class="ttdef"><b>Definition</b> <a href="SeqProxy_8h_source.html#l00036">SeqProxy.h:37</a></div></div>
<div class="ttc" id="aclassripple_1_1TERSubset_html"><div class="ttname"><a href="classripple_1_1TERSubset.html">ripple::TERSubset&lt; CanCvtToTER &gt;</a></div></div>
<div class="ttc" id="aclassripple_1_1TxConsequences_html"><div class="ttname"><a href="classripple_1_1TxConsequences.html">ripple::TxConsequences</a></div><div class="ttdoc">Class describing the consequences to the account of applying a transaction if the transaction consume...</div><div class="ttdef"><b>Definition</b> <a href="applySteps_8h_source.html#l00038">applySteps.h:39</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1FeeMetrics_html"><div class="ttname"><a href="classripple_1_1TxQ_1_1FeeMetrics.html">ripple::TxQ::FeeMetrics</a></div><div class="ttdoc">Track and use the fee escalation metrics of the current open ledger.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00358">TxQ.h:359</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1FeeMetrics_html_a37f68c24e1cd38f10a3cca07fd2c50cc"><div class="ttname"><a href="classripple_1_1TxQ_1_1FeeMetrics.html#a37f68c24e1cd38f10a3cca07fd2c50cc">ripple::TxQ::FeeMetrics::txnsExpected_</a></div><div class="ttdeci">std::size_t txnsExpected_</div><div class="ttdoc">Number of transactions expected per ledger.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00371">TxQ.h:371</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1FeeMetrics_html_a390d21225a387987cd18e8942fc15bc5"><div class="ttname"><a href="classripple_1_1TxQ_1_1FeeMetrics.html#a390d21225a387987cd18e8942fc15bc5">ripple::TxQ::FeeMetrics::j_</a></div><div class="ttdeci">beast::Journal const j_</div><div class="ttdoc">Journal.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00379">TxQ.h:379</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1FeeMetrics_html_a508eeb090672a165248d6fb13748e4c1"><div class="ttname"><a href="classripple_1_1TxQ_1_1FeeMetrics.html#a508eeb090672a165248d6fb13748e4c1">ripple::TxQ::FeeMetrics::FeeMetrics</a></div><div class="ttdeci">FeeMetrics(Setup const &amp;setup, beast::Journal j)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00383">TxQ.h:383</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1FeeMetrics_html_a5b20859e09a2a638b221bc904026ff36"><div class="ttname"><a href="classripple_1_1TxQ_1_1FeeMetrics.html#a5b20859e09a2a638b221bc904026ff36">ripple::TxQ::FeeMetrics::scaleFeeLevel</a></div><div class="ttdeci">static FeeLevel64 scaleFeeLevel(Snapshot const &amp;snapshot, OpenView const &amp;view)</div><div class="ttdoc">Use the number of transactions in the current open ledger to compute the fee level a transaction must...</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l00154">TxQ.cpp:154</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1FeeMetrics_html_a798a10fa00312ec5198ad7499ef621e7"><div class="ttname"><a href="classripple_1_1TxQ_1_1FeeMetrics.html#a798a10fa00312ec5198ad7499ef621e7">ripple::TxQ::FeeMetrics::minimumTxnCount_</a></div><div class="ttdeci">std::size_t const minimumTxnCount_</div><div class="ttdoc">Minimum value of txnsExpected.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00362">TxQ.h:362</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1FeeMetrics_html_a9c6fe27399c7bd45a1f418bbb673d175"><div class="ttname"><a href="classripple_1_1TxQ_1_1FeeMetrics.html#a9c6fe27399c7bd45a1f418bbb673d175">ripple::TxQ::FeeMetrics::escalatedSeriesFeeLevel</a></div><div class="ttdeci">static std::pair&lt; bool, FeeLevel64 &gt; escalatedSeriesFeeLevel(Snapshot const &amp;snapshot, OpenView const &amp;view, std::size_t extraCount, std::size_t seriesSize)</div><div class="ttdoc">Computes the total fee level for all transactions in a series.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l00215">TxQ.cpp:215</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1FeeMetrics_html_aa03e54b0746f29b685222e6c6d0510a9"><div class="ttname"><a href="classripple_1_1TxQ_1_1FeeMetrics.html#aa03e54b0746f29b685222e6c6d0510a9">ripple::TxQ::FeeMetrics::getSnapshot</a></div><div class="ttdeci">Snapshot getSnapshot() const</div><div class="ttdoc">Get the current Snapshot.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00436">TxQ.h:436</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1FeeMetrics_html_aac226046570492541f6d82a39bf681b3"><div class="ttname"><a href="classripple_1_1TxQ_1_1FeeMetrics.html#aac226046570492541f6d82a39bf681b3">ripple::TxQ::FeeMetrics::maximumTxnCount_</a></div><div class="ttdeci">std::optional&lt; std::size_t &gt; const maximumTxnCount_</div><div class="ttdoc">Maximum value of txnsExpected.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00367">TxQ.h:367</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1FeeMetrics_html_ac3b01f12711a152827b28f475ab96c50"><div class="ttname"><a href="classripple_1_1TxQ_1_1FeeMetrics.html#ac3b01f12711a152827b28f475ab96c50">ripple::TxQ::FeeMetrics::targetTxnCount_</a></div><div class="ttdeci">std::size_t const targetTxnCount_</div><div class="ttdoc">Number of transactions per ledger that fee escalation &quot;works towards&quot;.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00365">TxQ.h:365</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1FeeMetrics_html_ace3ced272f60d6a504c2c6531aa32114"><div class="ttname"><a href="classripple_1_1TxQ_1_1FeeMetrics.html#ace3ced272f60d6a504c2c6531aa32114">ripple::TxQ::FeeMetrics::recentTxnCounts_</a></div><div class="ttdeci">boost::circular_buffer&lt; std::size_t &gt; recentTxnCounts_</div><div class="ttdoc">Recent history of transaction counts that exceed the targetTxnCount_.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00374">TxQ.h:374</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1FeeMetrics_html_ad56d92e762d13754c689e66180f7503a"><div class="ttname"><a href="classripple_1_1TxQ_1_1FeeMetrics.html#ad56d92e762d13754c689e66180f7503a">ripple::TxQ::FeeMetrics::update</a></div><div class="ttdeci">std::size_t update(Application &amp;app, ReadView const &amp;view, bool timeLeap, TxQ::Setup const &amp;setup)</div><div class="ttdoc">Updates fee metrics based on the transactions in the ReadView for use in fee escalation calculations.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l00065">TxQ.cpp:65</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1FeeMetrics_html_ae35fe3164eba8c280411963df608b39a"><div class="ttname"><a href="classripple_1_1TxQ_1_1FeeMetrics.html#ae35fe3164eba8c280411963df608b39a">ripple::TxQ::FeeMetrics::escalationMultiplier_</a></div><div class="ttdeci">FeeLevel64 escalationMultiplier_</div><div class="ttdoc">Based on the median fee of the LCL.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00377">TxQ.h:377</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1MaybeTx_html"><div class="ttname"><a href="classripple_1_1TxQ_1_1MaybeTx.html">ripple::TxQ::MaybeTx</a></div><div class="ttdoc">Represents a transaction in the queue which may be applied later to the open ledger.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00494">TxQ.h:495</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1MaybeTx_html_a008400f3b43a288edbe2918b629a4e4e"><div class="ttname"><a href="classripple_1_1TxQ_1_1MaybeTx.html#a008400f3b43a288edbe2918b629a4e4e">ripple::TxQ::MaybeTx::seqProxy</a></div><div class="ttdeci">SeqProxy const seqProxy</div><div class="ttdoc">Transaction SeqProxy number (sfSequence or sfTicketSequence field).</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00516">TxQ.h:516</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1MaybeTx_html_a09e39fbc7ae67203ffde9124190d40e1"><div class="ttname"><a href="classripple_1_1TxQ_1_1MaybeTx.html#a09e39fbc7ae67203ffde9124190d40e1">ripple::TxQ::MaybeTx::apply</a></div><div class="ttdeci">ApplyResult apply(Application &amp;app, OpenView &amp;view, beast::Journal j)</div><div class="ttdoc">Attempt to apply the queued transaction to the open ledger.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l00279">TxQ.cpp:279</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1MaybeTx_html_a0ae6617f6b837815578a5832276e2d3d"><div class="ttname"><a href="classripple_1_1TxQ_1_1MaybeTx.html#a0ae6617f6b837815578a5832276e2d3d">ripple::TxQ::MaybeTx::flags</a></div><div class="ttdeci">ApplyFlags const flags</div><div class="ttdoc">Flags provided to apply.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00529">TxQ.h:529</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1MaybeTx_html_a4bf9e0ab6525122a6cd2d16270ada692"><div class="ttname"><a href="classripple_1_1TxQ_1_1MaybeTx.html#a4bf9e0ab6525122a6cd2d16270ada692">ripple::TxQ::MaybeTx::byFeeListHook</a></div><div class="ttdeci">boost::intrusive::set_member_hook byFeeListHook</div><div class="ttdoc">Used by the TxQ::FeeHook and TxQ::FeeMultiSet below to put each MaybeTx object into more than one set...</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00500">TxQ.h:500</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1MaybeTx_html_a60e808612ec45ed655d2435d2f048ff4"><div class="ttname"><a href="classripple_1_1TxQ_1_1MaybeTx.html#a60e808612ec45ed655d2435d2f048ff4">ripple::TxQ::MaybeTx::retriesRemaining</a></div><div class="ttdeci">int retriesRemaining</div><div class="ttdoc">A transaction at the front of the queue will be given several attempts to succeed before being droppe...</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00525">TxQ.h:525</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1MaybeTx_html_a653a567497410b13a32bf0700a6999c1"><div class="ttname"><a href="classripple_1_1TxQ_1_1MaybeTx.html#a653a567497410b13a32bf0700a6999c1">ripple::TxQ::MaybeTx::feeLevel</a></div><div class="ttdeci">FeeLevel64 const feeLevel</div><div class="ttdoc">Computed fee level that the transaction will pay.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00506">TxQ.h:506</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1MaybeTx_html_a735992a97463ef579f12dfbc1199e63e"><div class="ttname"><a href="classripple_1_1TxQ_1_1MaybeTx.html#a735992a97463ef579f12dfbc1199e63e">ripple::TxQ::MaybeTx::pfresult</a></div><div class="ttdeci">std::optional&lt; PreflightResult const &gt; pfresult</div><div class="ttdoc">Cached result of the preflight operation.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00545">TxQ.h:545</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1MaybeTx_html_a8629266e963f71bf3e1018c2176d4e0e"><div class="ttname"><a href="classripple_1_1TxQ_1_1MaybeTx.html#a8629266e963f71bf3e1018c2176d4e0e">ripple::TxQ::MaybeTx::retriesAllowed</a></div><div class="ttdeci">static constexpr int retriesAllowed</div><div class="ttdoc">Starting retry count for newly queued transactions.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00561">TxQ.h:561</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1MaybeTx_html_aab99eb732c41530f27bbea6626ca6a28"><div class="ttname"><a href="classripple_1_1TxQ_1_1MaybeTx.html#aab99eb732c41530f27bbea6626ca6a28">ripple::TxQ::MaybeTx::account</a></div><div class="ttdeci">AccountID const account</div><div class="ttdoc">Account submitting the transaction.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00510">TxQ.h:510</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1MaybeTx_html_ab069ca91d7ee996bd2eee44902e6cd6a"><div class="ttname"><a href="classripple_1_1TxQ_1_1MaybeTx.html#ab069ca91d7ee996bd2eee44902e6cd6a">ripple::TxQ::MaybeTx::getTxDetails</a></div><div class="ttdeci">TxDetails getTxDetails() const</div><div class="ttdoc">Return a TxDetails based on contained information.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00596">TxQ.h:596</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1MaybeTx_html_abf55d40e02fe19801802976089234c2c"><div class="ttname"><a href="classripple_1_1TxQ_1_1MaybeTx.html#abf55d40e02fe19801802976089234c2c">ripple::TxQ::MaybeTx::txn</a></div><div class="ttdeci">std::shared_ptr&lt; STTx const &gt; txn</div><div class="ttdoc">The complete transaction.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00503">TxQ.h:503</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1MaybeTx_html_ace41bdbe3f7da502f54d00fb48117f05"><div class="ttname"><a href="classripple_1_1TxQ_1_1MaybeTx.html#ace41bdbe3f7da502f54d00fb48117f05">ripple::TxQ::MaybeTx::lastValid</a></div><div class="ttdeci">std::optional&lt; LedgerIndex &gt; const lastValid</div><div class="ttdoc">Expiration ledger for the transaction (sfLastLedgerSequence field).</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00513">TxQ.h:513</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1MaybeTx_html_ae5eefa76fcb4af4310136b9d8fe6ce1d"><div class="ttname"><a href="classripple_1_1TxQ_1_1MaybeTx.html#ae5eefa76fcb4af4310136b9d8fe6ce1d">ripple::TxQ::MaybeTx::txID</a></div><div class="ttdeci">TxID const txID</div><div class="ttdoc">Transaction ID.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00508">TxQ.h:508</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1MaybeTx_html_ae93279a394660d7d7709e84df2d5086c"><div class="ttname"><a href="classripple_1_1TxQ_1_1MaybeTx.html#ae93279a394660d7d7709e84df2d5086c">ripple::TxQ::MaybeTx::parentHashComp</a></div><div class="ttdeci">static LedgerHash parentHashComp</div><div class="ttdoc">The hash of the parent ledger.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00571">TxQ.h:571</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1MaybeTx_html_aef427954161fcceb3c00fe6d2f0133bc"><div class="ttname"><a href="classripple_1_1TxQ_1_1MaybeTx.html#aef427954161fcceb3c00fe6d2f0133bc">ripple::TxQ::MaybeTx::lastResult</a></div><div class="ttdeci">std::optional&lt; TER &gt; lastResult</div><div class="ttdoc">If the transactor attempted to apply the transaction to the open ledger from the queue and failed,...</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00536">TxQ.h:536</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1MaybeTx_html_af94c48036063440d318f8ba2a27c57ca"><div class="ttname"><a href="classripple_1_1TxQ_1_1MaybeTx.html#af94c48036063440d318f8ba2a27c57ca">ripple::TxQ::MaybeTx::consequences</a></div><div class="ttdeci">TxConsequences const &amp; consequences() const</div><div class="ttdoc">Potential TxConsequences of applying this transaction to the open ledger.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00589">TxQ.h:589</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1OrderCandidates_html"><div class="ttname"><a href="classripple_1_1TxQ_1_1OrderCandidates.html">ripple::TxQ::OrderCandidates</a></div><div class="ttdoc">Used for sorting MaybeTx.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00612">TxQ.h:613</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1OrderCandidates_html_a2625000cceb569d892223d4607e1cf42"><div class="ttname"><a href="classripple_1_1TxQ_1_1OrderCandidates.html#a2625000cceb569d892223d4607e1cf42">ripple::TxQ::OrderCandidates::OrderCandidates</a></div><div class="ttdeci">OrderCandidates()=default</div><div class="ttdoc">Default constructor.</div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1OrderCandidates_html_af3061eb4f79d584f1526f1ed17e95a54"><div class="ttname"><a href="classripple_1_1TxQ_1_1OrderCandidates.html#af3061eb4f79d584f1526f1ed17e95a54">ripple::TxQ::OrderCandidates::operator()</a></div><div class="ttdeci">bool operator()(MaybeTx const &amp;lhs, MaybeTx const &amp;rhs) const</div><div class="ttdoc">Sort MaybeTx by feeLevel descending, then by pseudo-randomized transaction ID ascending.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00634">TxQ.h:634</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1TxQAccount_html"><div class="ttname"><a href="classripple_1_1TxQ_1_1TxQAccount.html">ripple::TxQ::TxQAccount</a></div><div class="ttdoc">Used to represent an account to the queue, and stores the transactions queued for that account by Seq...</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00646">TxQ.h:647</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1TxQAccount_html_a278169eda7bcc599bc4061359cf33b48"><div class="ttname"><a href="classripple_1_1TxQ_1_1TxQAccount.html#a278169eda7bcc599bc4061359cf33b48">ripple::TxQ::TxQAccount::transactions</a></div><div class="ttdeci">TxMap transactions</div><div class="ttdoc">Sequence number will be used as the key.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00654">TxQ.h:654</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1TxQAccount_html_a339265353ad9dd97360c6fd8af1ceae9"><div class="ttname"><a href="classripple_1_1TxQ_1_1TxQAccount.html#a339265353ad9dd97360c6fd8af1ceae9">ripple::TxQ::TxQAccount::getTxnCount</a></div><div class="ttdeci">std::size_t getTxnCount() const</div><div class="ttdoc">Return the number of transactions currently queued for this account.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00678">TxQ.h:678</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1TxQAccount_html_a37df6ccf23c80546a4c45db88ea01373"><div class="ttname"><a href="classripple_1_1TxQ_1_1TxQAccount.html#a37df6ccf23c80546a4c45db88ea01373">ripple::TxQ::TxQAccount::account</a></div><div class="ttdeci">AccountID const account</div><div class="ttdoc">The account.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00652">TxQ.h:652</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1TxQAccount_html_a6c96474d54b20adb7bc5a9e35416b580"><div class="ttname"><a href="classripple_1_1TxQ_1_1TxQAccount.html#a6c96474d54b20adb7bc5a9e35416b580">ripple::TxQ::TxQAccount::getPrevTx</a></div><div class="ttdeci">TxMap::const_iterator getPrevTx(SeqProxy seqProx) const</div><div class="ttdoc">Find the entry in transactions that precedes seqProx, if one does.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l00311">TxQ.cpp:311</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1TxQAccount_html_a7106d8d41362079c40c5636b50c246d4"><div class="ttname"><a href="classripple_1_1TxQ_1_1TxQAccount.html#a7106d8d41362079c40c5636b50c246d4">ripple::TxQ::TxQAccount::remove</a></div><div class="ttdeci">bool remove(SeqProxy seqProx)</div><div class="ttdoc">Remove the candidate with given SeqProxy value from this account.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l00337">TxQ.cpp:337</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1TxQAccount_html_a83db75e953fdeb2d6f99699a65f4a6b9"><div class="ttname"><a href="classripple_1_1TxQ_1_1TxQAccount.html#a83db75e953fdeb2d6f99699a65f4a6b9">ripple::TxQ::TxQAccount::dropPenalty</a></div><div class="ttdeci">bool dropPenalty</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00668">TxQ.h:668</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1TxQAccount_html_a94e7af12408e939994f79cab5b197093"><div class="ttname"><a href="classripple_1_1TxQ_1_1TxQAccount.html#a94e7af12408e939994f79cab5b197093">ripple::TxQ::TxQAccount::add</a></div><div class="ttdeci">MaybeTx &amp; add(MaybeTx &amp;&amp;)</div><div class="ttdoc">Add a transaction candidate to this account for queuing.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l00322">TxQ.cpp:322</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1TxQAccount_html_a9ead3ed986012a2c26c0c3003fcbb204"><div class="ttname"><a href="classripple_1_1TxQ_1_1TxQAccount.html#a9ead3ed986012a2c26c0c3003fcbb204">ripple::TxQ::TxQAccount::retryPenalty</a></div><div class="ttdeci">bool retryPenalty</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00662">TxQ.h:662</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_1_1TxQAccount_html_af7043a1b5bddeaf70c5e86c0c790475d"><div class="ttname"><a href="classripple_1_1TxQ_1_1TxQAccount.html#af7043a1b5bddeaf70c5e86c0c790475d">ripple::TxQ::TxQAccount::empty</a></div><div class="ttdeci">bool empty() const</div><div class="ttdoc">Checks if this account has no transactions queued.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00685">TxQ.h:685</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html"><div class="ttname"><a href="classripple_1_1TxQ.html">ripple::TxQ</a></div><div class="ttdoc">Transaction Queue.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00041">TxQ.h:42</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a0ce340269d77d8ef2d85513d9545c815"><div class="ttname"><a href="classripple_1_1TxQ.html#a0ce340269d77d8ef2d85513d9545c815">ripple::TxQ::FeeMultiSet</a></div><div class="ttdeci">boost::intrusive::multiset&lt; MaybeTx, FeeHook, boost::intrusive::compare&lt; OrderCandidates &gt; &gt; FeeMultiSet</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00736">TxQ.h:737</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a0d767ce3cbba060040b2d3179db347c6"><div class="ttname"><a href="classripple_1_1TxQ.html#a0d767ce3cbba060040b2d3179db347c6">ripple::TxQ::getTxs</a></div><div class="ttdeci">std::vector&lt; TxDetails &gt; getTxs() const</div><div class="ttdoc">Returns information about all transactions currently in the queue.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l01824">TxQ.cpp:1824</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a0f41196cdd90099a9fcc8852d1bdaff4"><div class="ttname"><a href="classripple_1_1TxQ.html#a0f41196cdd90099a9fcc8852d1bdaff4">ripple::TxQ::removeFromByFee</a></div><div class="ttdeci">std::optional&lt; TxQAccount::TxMap::iterator &gt; removeFromByFee(std::optional&lt; TxQAccount::TxMap::iterator &gt; const &amp;replacedTxIter, std::shared_ptr&lt; STTx const &gt; const &amp;tx)</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l01729">TxQ.cpp:1729</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a21c99b49f8d49b48488d8388ad53f747"><div class="ttname"><a href="classripple_1_1TxQ.html#a21c99b49f8d49b48488d8388ad53f747">ripple::TxQ::maxSize_</a></div><div class="ttdeci">std::optional&lt; size_t &gt; maxSize_</div><div class="ttdoc">Maximum number of transactions allowed in the queue based on the current metrics.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00770">TxQ.h:770</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a26b6671b2ff3fc348a8d5736e9b4e9a0"><div class="ttname"><a href="classripple_1_1TxQ.html#a26b6671b2ff3fc348a8d5736e9b4e9a0">ripple::TxQ::erase</a></div><div class="ttdeci">FeeMultiSet::iterator_type erase(FeeMultiSet::const_iterator_type)</div><div class="ttdoc">Erase and return the next entry in byFee_ (lower fee level)</div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a2a08d6cdb1e6700a24dc0f71eb3ef7ed"><div class="ttname"><a href="classripple_1_1TxQ.html#a2a08d6cdb1e6700a24dc0f71eb3ef7ed">ripple::TxQ::getMetrics</a></div><div class="ttdeci">Metrics getMetrics(OpenView const &amp;view) const</div><div class="ttdoc">Returns fee metrics in reference fee level units.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l01757">TxQ.cpp:1757</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a2b317467ac5be2a28c278cc60190261b"><div class="ttname"><a href="classripple_1_1TxQ.html#a2b317467ac5be2a28c278cc60190261b">ripple::TxQ::doRPC</a></div><div class="ttdeci">Json::Value doRPC(Application &amp;app) const</div><div class="ttdoc">Summarize current fee metrics for the fee RPC command.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l01839">TxQ.cpp:1839</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a3a26f78ddb330368dea5c95a9bf8d218"><div class="ttname"><a href="classripple_1_1TxQ.html#a3a26f78ddb330368dea5c95a9bf8d218">ripple::TxQ::byFee_</a></div><div class="ttdeci">FeeMultiSet byFee_</div><div class="ttdoc">The queue itself: the collection of transactions ordered by fee level.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00756">TxQ.h:756</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a459d2ac82dc4e7e5672db06df4618a96"><div class="ttname"><a href="classripple_1_1TxQ.html#a459d2ac82dc4e7e5672db06df4618a96">ripple::TxQ::getAccountTxs</a></div><div class="ttdeci">std::vector&lt; TxDetails &gt; getAccountTxs(AccountID const &amp;account) const</div><div class="ttdoc">Returns information about the transactions currently in the queue for the account.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l01803">TxQ.cpp:1803</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a558ec7e0156901c0af925b5acb026b3b"><div class="ttname"><a href="classripple_1_1TxQ.html#a558ec7e0156901c0af925b5acb026b3b">ripple::TxQ::j_</a></div><div class="ttdeci">beast::Journal const j_</div><div class="ttdoc">Journal.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00744">TxQ.h:744</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a5809a0ba90f44da94b1b9f73f5247434"><div class="ttname"><a href="classripple_1_1TxQ.html#a5809a0ba90f44da94b1b9f73f5247434">ripple::TxQ::canBeHeld</a></div><div class="ttdeci">TER canBeHeld(STTx const &amp;, ApplyFlags const, OpenView const &amp;, std::shared_ptr&lt; SLE const &gt; const &amp;sleAccount, AccountMap::iterator const &amp;, std::optional&lt; TxQAccount::TxMap::iterator &gt; const &amp;, std::lock_guard&lt; std::mutex &gt; const &amp;lock)</div><div class="ttdoc">Checks if the indicated transaction fits the conditions for being stored in the queue.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l00364">TxQ.cpp:364</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a5bffe9eec3a97e1b5bc209e0edf17fda"><div class="ttname"><a href="classripple_1_1TxQ.html#a5bffe9eec3a97e1b5bc209e0edf17fda">ripple::TxQ::nextQueuableSeq</a></div><div class="ttdeci">SeqProxy nextQueuableSeq(std::shared_ptr&lt; SLE const &gt; const &amp;sleAccount) const</div><div class="ttdoc">Return the next sequence that would go in the TxQ for an account.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l01588">TxQ.cpp:1588</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a63a8817d4a8b421e026e1454c4ba4646"><div class="ttname"><a href="classripple_1_1TxQ.html#a63a8817d4a8b421e026e1454c4ba4646">ripple::TxQ::mutex_</a></div><div class="ttdeci">std::mutex mutex_</div><div class="ttdoc">Most queue operations are done under the master lock, but use this mutex for the RPC &quot;fee&quot; command,...</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00780">TxQ.h:780</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a6ab1707fecc84164c74360094d1bc03d"><div class="ttname"><a href="classripple_1_1TxQ.html#a6ab1707fecc84164c74360094d1bc03d">ripple::TxQ::byAccount_</a></div><div class="ttdeci">AccountMap byAccount_</div><div class="ttdoc">All of the accounts which currently have any transactions in the queue.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00763">TxQ.h:763</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a6bb6f93b4d95b63dfc55fae4246b38b8"><div class="ttname"><a href="classripple_1_1TxQ.html#a6bb6f93b4d95b63dfc55fae4246b38b8">ripple::TxQ::FeeHook</a></div><div class="ttdeci">boost::intrusive::member_hook&lt; MaybeTx, boost::intrusive::set_member_hook&lt;&gt;, &amp;MaybeTx::byFeeListHook &gt; FeeHook</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00731">TxQ.h:734</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a71a301b0a48137d7121dda3b66db2fb5"><div class="ttname"><a href="classripple_1_1TxQ.html#a71a301b0a48137d7121dda3b66db2fb5">ripple::TxQ::parentHash_</a></div><div class="ttdeci">LedgerHash parentHash_</div><div class="ttdoc">parentHash_ used for logging only</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00775">TxQ.h:775</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a7301e8d3c70f9fcf3b2361b6a07479f9"><div class="ttname"><a href="classripple_1_1TxQ.html#a7301e8d3c70f9fcf3b2361b6a07479f9">ripple::TxQ::nextQueuableSeqImpl</a></div><div class="ttdeci">SeqProxy nextQueuableSeqImpl(std::shared_ptr&lt; SLE const &gt; const &amp;sleAccount, std::lock_guard&lt; std::mutex &gt; const &amp;) const</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l01601">TxQ.cpp:1601</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a75d6ebd1766e4a403ea3575b950c6ba8"><div class="ttname"><a href="classripple_1_1TxQ.html#a75d6ebd1766e4a403ea3575b950c6ba8">ripple::TxQ::tryClearAccountQueueUpThruTx</a></div><div class="ttdeci">ApplyResult tryClearAccountQueueUpThruTx(Application &amp;app, OpenView &amp;view, STTx const &amp;tx, AccountMap::iterator const &amp;accountIter, TxQAccount::TxMap::iterator, FeeLevel64 feeLevelPaid, PreflightResult const &amp;pfresult, std::size_t const txExtraCount, ApplyFlags flags, FeeMetrics::Snapshot const &amp;metricsSnapshot, beast::Journal j)</div><div class="ttdoc">All-or-nothing attempt to try to apply the queued txs for accountIter up to and including tx.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l00498">TxQ.cpp:498</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a89e49f3807e98e4e98b2b1a4e2d08a63"><div class="ttname"><a href="classripple_1_1TxQ.html#a89e49f3807e98e4e98b2b1a4e2d08a63">ripple::TxQ::isFull</a></div><div class="ttdeci">bool isFull() const</div><div class="ttdoc">Is the queue at least fillPercentage full?</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l00356">TxQ.cpp:356</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a8e92bb1200c6c66313cfc9fc3ac2955d"><div class="ttname"><a href="classripple_1_1TxQ.html#a8e92bb1200c6c66313cfc9fc3ac2955d">ripple::TxQ::getTxRequiredFeeAndSeq</a></div><div class="ttdeci">FeeAndSeq getTxRequiredFeeAndSeq(OpenView const &amp;view, std::shared_ptr&lt; STTx const &gt; const &amp;tx) const</div><div class="ttdoc">Returns minimum required fee for tx and two sequences: first valid sequence for this account in curre...</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l01779">TxQ.cpp:1779</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a8ea9199acfabad1943a622e02a76646a"><div class="ttname"><a href="classripple_1_1TxQ.html#a8ea9199acfabad1943a622e02a76646a">ripple::TxQ::eraseAndAdvance</a></div><div class="ttdeci">FeeMultiSet::iterator_type eraseAndAdvance(FeeMultiSet::const_iterator_type)</div><div class="ttdoc">Erase and return the next entry for the account (if fee level is higher), or next entry in byFee_ (lo...</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l00446">TxQ.cpp:446</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a937b5c79cd012b25e31442e7390e5df5"><div class="ttname"><a href="classripple_1_1TxQ.html#a937b5c79cd012b25e31442e7390e5df5">ripple::TxQ::feeMetrics_</a></div><div class="ttdeci">FeeMetrics feeMetrics_</div><div class="ttdoc">Tracks the current state of the queue.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00750">TxQ.h:750</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a958da208f16e7851992bdb05d3573314"><div class="ttname"><a href="classripple_1_1TxQ.html#a958da208f16e7851992bdb05d3573314">ripple::TxQ::~TxQ</a></div><div class="ttdeci">virtual ~TxQ()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l00349">TxQ.cpp:349</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_a959646175ed7eb636de9a994566322e1"><div class="ttname"><a href="classripple_1_1TxQ.html#a959646175ed7eb636de9a994566322e1">ripple::TxQ::getRequiredFeeLevel</a></div><div class="ttdeci">FeeLevel64 getRequiredFeeLevel(OpenView &amp;view, ApplyFlags flags, FeeMetrics::Snapshot const &amp;metricsSnapshot, std::lock_guard&lt; std::mutex &gt; const &amp;lock) const</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l01648">TxQ.cpp:1648</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_ab26994acdf0d62fc2bd0a40cb2ba08ac"><div class="ttname"><a href="classripple_1_1TxQ.html#ab26994acdf0d62fc2bd0a40cb2ba08ac">ripple::TxQ::erase</a></div><div class="ttdeci">TxQAccount::TxMap::iterator erase(TxQAccount &amp;txQAccount, TxQAccount::TxMap::const_iterator begin, TxQAccount::TxMap::const_iterator end)</div><div class="ttdoc">Erase a range of items, based on TxQAccount::TxMap iterators.</div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_ac83649e59014572a908ab144bef86bb2"><div class="ttname"><a href="classripple_1_1TxQ.html#ac83649e59014572a908ab144bef86bb2">ripple::TxQ::accept</a></div><div class="ttdeci">bool accept(Application &amp;app, OpenView &amp;view)</div><div class="ttdoc">Fill the new open ledger with transactions from the queue.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l01414">TxQ.cpp:1414</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_acfc1afed59fb7f9d2404f479d7cbeef6"><div class="ttname"><a href="classripple_1_1TxQ.html#acfc1afed59fb7f9d2404f479d7cbeef6">ripple::TxQ::baseLevel</a></div><div class="ttdeci">static constexpr FeeLevel64 baseLevel</div><div class="ttdoc">Fee level for single-signed reference transaction.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00045">TxQ.h:45</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_ad474e51bf3d5f570f630eaafb87814f4"><div class="ttname"><a href="classripple_1_1TxQ.html#ad474e51bf3d5f570f630eaafb87814f4">ripple::TxQ::setup_</a></div><div class="ttdeci">Setup const setup_</div><div class="ttdoc">Setup parameters used to control the behavior of the queue.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00742">TxQ.h:742</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_ae051f3309f81253bb7a50db48060cc18"><div class="ttname"><a href="classripple_1_1TxQ.html#ae051f3309f81253bb7a50db48060cc18">ripple::TxQ::processClosedLedger</a></div><div class="ttdeci">void processClosedLedger(Application &amp;app, ReadView const &amp;view, bool timeLeap)</div><div class="ttdoc">Update fee metrics and clean up the queue in preparation for the next ledger.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l01345">TxQ.cpp:1345</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_af556f186cef2a05acf55b3f33ed968c3"><div class="ttname"><a href="classripple_1_1TxQ.html#af556f186cef2a05acf55b3f33ed968c3">ripple::TxQ::tryDirectApply</a></div><div class="ttdeci">std::optional&lt; ApplyResult &gt; tryDirectApply(Application &amp;app, OpenView &amp;view, std::shared_ptr&lt; STTx const &gt; const &amp;tx, ApplyFlags flags, beast::Journal j)</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l01658">TxQ.cpp:1658</a></div></div>
<div class="ttc" id="aclassripple_1_1TxQ_html_afbf88039641b9d66b38141407118f79e"><div class="ttname"><a href="classripple_1_1TxQ.html#afbf88039641b9d66b38141407118f79e">ripple::TxQ::apply</a></div><div class="ttdeci">ApplyResult apply(Application &amp;app, OpenView &amp;view, std::shared_ptr&lt; STTx const &gt; const &amp;tx, ApplyFlags flags, beast::Journal j)</div><div class="ttdoc">Add a new transaction to the open ledger, hold it in the queue, or reject it.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l00710">TxQ.cpp:710</a></div></div>
<div class="ttc" id="aclassripple_1_1XRPAmount_html"><div class="ttname"><a href="classripple_1_1XRPAmount.html">ripple::XRPAmount</a></div><div class="ttdef"><b>Definition</b> <a href="XRPAmount_8h_source.html#l00020">XRPAmount.h:24</a></div></div>
<div class="ttc" id="aclassripple_1_1base__uint_html"><div class="ttname"><a href="classripple_1_1base__uint.html">ripple::base_uint&lt; 160, detail::AccountIDTag &gt;</a></div></div>
<div class="ttc" id="aclassripple_1_1unit_1_1ValueUnit_html"><div class="ttname"><a href="classripple_1_1unit_1_1ValueUnit.html">ripple::unit::ValueUnit</a></div><div class="ttdef"><b>Definition</b> <a href="Units_8h_source.html#l00073">Units.h:79</a></div></div>
<div class="ttc" id="ainteger_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</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>
<div class="ttc" id="amap_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/map.html">std::map&lt; SeqProxy, MaybeTx &gt;</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>
<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="algorithm_8h_source.html#l00006">algorithm.h:6</a></div></div>
<div class="ttc" id="anamespaceripple_html_a206538f11503ef2bdb2f772b8ebeaaf4"><div class="ttname"><a href="namespaceripple.html#a206538f11503ef2bdb2f772b8ebeaaf4">ripple::setup_TxQ</a></div><div class="ttdeci">TxQ::Setup setup_TxQ(Config const &amp;config)</div><div class="ttdoc">Build a TxQ::Setup object from application configuration.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8cpp_source.html#l01894">TxQ.cpp:1894</a></div></div>
<div class="ttc" id="anamespaceripple_html_aa58553112bd1aaa4fc99850a98a3362a"><div class="ttname"><a href="namespaceripple.html#aa58553112bd1aaa4fc99850a98a3362a">ripple::toFeeLevel</a></div><div class="ttdeci">FeeLevel64 toFeeLevel(XRPAmount const &amp;drops, XRPAmount const &amp;baseFee)</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00851">TxQ.h:851</a></div></div>
<div class="ttc" id="anamespaceripple_html_aaaf6522d07c2b836c5fd589e9ecf578c"><div class="ttname"><a href="namespaceripple.html#aaaf6522d07c2b836c5fd589e9ecf578c">ripple::FeeLevel64</a></div><div class="ttdeci">FeeLevel&lt; std::uint64_t &gt; FeeLevel64</div><div class="ttdef"><b>Definition</b> <a href="Units_8h_source.html#l00433">Units.h:433</a></div></div>
<div class="ttc" id="anamespaceripple_html_acee1f3b6b870fd674b55857a57da61f5"><div class="ttname"><a href="namespaceripple.html#acee1f3b6b870fd674b55857a57da61f5">ripple::toDrops</a></div><div class="ttdeci">XRPAmount toDrops(FeeLevel&lt; T &gt; const &amp;level, XRPAmount baseFee)</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00844">TxQ.h:844</a></div></div>
<div class="ttc" id="anamespaceripple_html_ad012d6a36cd38b19ab4d8b47521fbd5f"><div class="ttname"><a href="namespaceripple.html#ad012d6a36cd38b19ab4d8b47521fbd5f">ripple::mulDiv</a></div><div class="ttdeci">std::optional&lt; std::uint64_t &gt; mulDiv(std::uint64_t value, std::uint64_t mul, std::uint64_t div)</div><div class="ttdoc">Return value*mul/div accurately.</div><div class="ttdef"><b>Definition</b> <a href="libxrpl_2basics_2mulDiv_8cpp_source.html#l00013">libxrpl/basics/mulDiv.cpp:13</a></div></div>
<div class="ttc" id="anamespaceripple_html_ad2487abbcc1a5d6064b72144b461df6e"><div class="ttname"><a href="namespaceripple.html#ad2487abbcc1a5d6064b72144b461df6e">ripple::ApplyFlags</a></div><div class="ttdeci">ApplyFlags</div><div class="ttdef"><b>Definition</b> <a href="ApplyView_8h_source.html#l00011">ApplyView.h:11</a></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="anumeric_limits_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/types/numeric_limits.html">std::numeric_limits</a></div></div>
<div class="ttc" id="aoptional_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/header/optional.html">optional</a></div></div>
<div class="ttc" id="apair_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/utility/pair.html">std::pair</a></div></div>
<div class="ttc" id="ashared_ptr_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a></div></div>
<div class="ttc" id="asize_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/map/size.html">std::map::size</a></div><div class="ttdeci">T size(T... args)</div></div>
<div class="ttc" id="asize_t_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a></div></div>
<div class="ttc" id="astructripple_1_1ApplyResult_html"><div class="ttname"><a href="structripple_1_1ApplyResult.html">ripple::ApplyResult</a></div><div class="ttdef"><b>Definition</b> <a href="applySteps_8h_source.html#l00013">applySteps.h:14</a></div></div>
<div class="ttc" id="astructripple_1_1PreflightResult_html"><div class="ttname"><a href="structripple_1_1PreflightResult.html">ripple::PreflightResult</a></div><div class="ttdoc">Describes the results of the preflight check.</div><div class="ttdef"><b>Definition</b> <a href="applySteps_8h_source.html#l00143">applySteps.h:144</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1FeeAndSeq_html"><div class="ttname"><a href="structripple_1_1TxQ_1_1FeeAndSeq.html">ripple::TxQ::FeeAndSeq</a></div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00300">TxQ.h:301</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1FeeAndSeq_html_a32315f234bdddee240af40ecd0b206a0"><div class="ttname"><a href="structripple_1_1TxQ_1_1FeeAndSeq.html#a32315f234bdddee240af40ecd0b206a0">ripple::TxQ::FeeAndSeq::fee</a></div><div class="ttdeci">XRPAmount fee</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00302">TxQ.h:302</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1FeeAndSeq_html_aba280a98bb627a26fa1f04ed403bbd1d"><div class="ttname"><a href="structripple_1_1TxQ_1_1FeeAndSeq.html#aba280a98bb627a26fa1f04ed403bbd1d">ripple::TxQ::FeeAndSeq::availableSeq</a></div><div class="ttdeci">std::uint32_t availableSeq</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00304">TxQ.h:304</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1FeeAndSeq_html_afc9a3d34bc0cf235d3755ccb070768c4"><div class="ttname"><a href="structripple_1_1TxQ_1_1FeeAndSeq.html#afc9a3d34bc0cf235d3755ccb070768c4">ripple::TxQ::FeeAndSeq::accountSeq</a></div><div class="ttdeci">std::uint32_t accountSeq</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00303">TxQ.h:303</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1FeeMetrics_1_1Snapshot_html"><div class="ttname"><a href="structripple_1_1TxQ_1_1FeeMetrics_1_1Snapshot.html">ripple::TxQ::FeeMetrics::Snapshot</a></div><div class="ttdoc">Snapshot of the externally relevant FeeMetrics fields at any given time.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00423">TxQ.h:424</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1FeeMetrics_1_1Snapshot_html_a1d09e6088bd28a826c84abfbe1bb0ec5"><div class="ttname"><a href="structripple_1_1TxQ_1_1FeeMetrics_1_1Snapshot.html#a1d09e6088bd28a826c84abfbe1bb0ec5">ripple::TxQ::FeeMetrics::Snapshot::txnsExpected</a></div><div class="ttdeci">std::size_t const txnsExpected</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00428">TxQ.h:428</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1FeeMetrics_1_1Snapshot_html_a9092c2285167029d0d9f9b66f6cde164"><div class="ttname"><a href="structripple_1_1TxQ_1_1FeeMetrics_1_1Snapshot.html#a9092c2285167029d0d9f9b66f6cde164">ripple::TxQ::FeeMetrics::Snapshot::escalationMultiplier</a></div><div class="ttdeci">FeeLevel64 const escalationMultiplier</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00431">TxQ.h:431</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Metrics_html"><div class="ttname"><a href="structripple_1_1TxQ_1_1Metrics.html">ripple::TxQ::Metrics</a></div><div class="ttdoc">Structure returned by TxQ::getMetrics, expressed in reference fee level units.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00145">TxQ.h:146</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Metrics_html_a046a7eebf075ab4c435845458cdab036"><div class="ttname"><a href="structripple_1_1TxQ_1_1Metrics.html#a046a7eebf075ab4c435845458cdab036">ripple::TxQ::Metrics::minProcessingFeeLevel</a></div><div class="ttdeci">FeeLevel64 minProcessingFeeLevel</div><div class="ttdoc">Minimum fee level for a transaction to be considered for the open ledger or the queue.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00162">TxQ.h:162</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Metrics_html_a0dfae7d857bda5f73e70b47d3bb46455"><div class="ttname"><a href="structripple_1_1TxQ_1_1Metrics.html#a0dfae7d857bda5f73e70b47d3bb46455">ripple::TxQ::Metrics::openLedgerFeeLevel</a></div><div class="ttdeci">FeeLevel64 openLedgerFeeLevel</div><div class="ttdoc">Minimum fee level to get into the current open ledger, bypassing the queue.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00167">TxQ.h:167</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Metrics_html_a2d5fc7af8dab3cda00ba533feb108f1a"><div class="ttname"><a href="structripple_1_1TxQ_1_1Metrics.html#a2d5fc7af8dab3cda00ba533feb108f1a">ripple::TxQ::Metrics::txPerLedger</a></div><div class="ttdeci">std::size_t txPerLedger</div><div class="ttdoc">Number of transactions expected per ledger.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00157">TxQ.h:157</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Metrics_html_a5f8431c7f8f88f9455e5dce38defa925"><div class="ttname"><a href="structripple_1_1TxQ_1_1Metrics.html#a5f8431c7f8f88f9455e5dce38defa925">ripple::TxQ::Metrics::Metrics</a></div><div class="ttdeci">Metrics()=default</div><div class="ttdoc">Default constructor.</div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Metrics_html_a61ea155db2d26ef9addb0e889775ce85"><div class="ttname"><a href="structripple_1_1TxQ_1_1Metrics.html#a61ea155db2d26ef9addb0e889775ce85">ripple::TxQ::Metrics::txQMaxSize</a></div><div class="ttdeci">std::optional&lt; std::size_t &gt; txQMaxSize</div><div class="ttdoc">Max transactions currently allowed in queue.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00153">TxQ.h:153</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Metrics_html_a9ef5bb734c6c198cd67ab6b9ccd9fe4e"><div class="ttname"><a href="structripple_1_1TxQ_1_1Metrics.html#a9ef5bb734c6c198cd67ab6b9ccd9fe4e">ripple::TxQ::Metrics::referenceFeeLevel</a></div><div class="ttdeci">FeeLevel64 referenceFeeLevel</div><div class="ttdoc">Reference transaction fee level.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00159">TxQ.h:159</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Metrics_html_aa6d188cab1f33a838cda74a0dc6cbbf2"><div class="ttname"><a href="structripple_1_1TxQ_1_1Metrics.html#aa6d188cab1f33a838cda74a0dc6cbbf2">ripple::TxQ::Metrics::txInLedger</a></div><div class="ttdeci">std::size_t txInLedger</div><div class="ttdoc">Number of transactions currently in the open ledger.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00155">TxQ.h:155</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Metrics_html_ade3363912328dbd806a24207929c4fb3"><div class="ttname"><a href="structripple_1_1TxQ_1_1Metrics.html#ade3363912328dbd806a24207929c4fb3">ripple::TxQ::Metrics::txCount</a></div><div class="ttdeci">std::size_t txCount</div><div class="ttdoc">Number of transactions in the queue.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00151">TxQ.h:151</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Metrics_html_aee1c684ec90ea6e8e6beea48bcaaf8c5"><div class="ttname"><a href="structripple_1_1TxQ_1_1Metrics.html#aee1c684ec90ea6e8e6beea48bcaaf8c5">ripple::TxQ::Metrics::medFeeLevel</a></div><div class="ttdeci">FeeLevel64 medFeeLevel</div><div class="ttdoc">Median fee level of the last ledger.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00164">TxQ.h:164</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Setup_html"><div class="ttname"><a href="structripple_1_1TxQ_1_1Setup.html">ripple::TxQ::Setup</a></div><div class="ttdoc">Structure used to customize TxQ behavior.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00050">TxQ.h:51</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Setup_html_a17e33956c7da29212e873b33c2fc05d5"><div class="ttname"><a href="structripple_1_1TxQ_1_1Setup.html#a17e33956c7da29212e873b33c2fc05d5">ripple::TxQ::Setup::slowConsensusDecreasePercent</a></div><div class="ttdeci">std::uint32_t slowConsensusDecreasePercent</div><div class="ttdoc">When consensus takes longer than appropriate, the expected ledger size is updated to the lesser of th...</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00127">TxQ.h:127</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Setup_html_a26a8d4ddac8283d07af3fd8005895acd"><div class="ttname"><a href="structripple_1_1TxQ_1_1Setup.html#a26a8d4ddac8283d07af3fd8005895acd">ripple::TxQ::Setup::Setup</a></div><div class="ttdeci">Setup()=default</div><div class="ttdoc">Default constructor.</div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Setup_html_a2b11f9f54cac17f8f23c30e978742786"><div class="ttname"><a href="structripple_1_1TxQ_1_1Setup.html#a2b11f9f54cac17f8f23c30e978742786">ripple::TxQ::Setup::minimumTxnInLedger</a></div><div class="ttdeci">std::uint32_t minimumTxnInLedger</div><div class="ttdoc">Minimum number of transactions to allow into the ledger before escalation, regardless of the prior le...</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00084">TxQ.h:84</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Setup_html_a3d27fc59a4b23767ae78229a386bc685"><div class="ttname"><a href="structripple_1_1TxQ_1_1Setup.html#a3d27fc59a4b23767ae78229a386bc685">ripple::TxQ::Setup::maximumTxnPerAccount</a></div><div class="ttdeci">std::uint32_t maximumTxnPerAccount</div><div class="ttdoc">Maximum number of transactions that can be queued by one account.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00129">TxQ.h:129</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Setup_html_a55017181a586c0c09a9b487a4b003c52"><div class="ttname"><a href="structripple_1_1TxQ_1_1Setup.html#a55017181a586c0c09a9b487a4b003c52">ripple::TxQ::Setup::minimumEscalationMultiplier</a></div><div class="ttdeci">FeeLevel64 minimumEscalationMultiplier</div><div class="ttdoc">Minimum value of the escalation multiplier, regardless of the prior ledger's median fee level.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00081">TxQ.h:81</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Setup_html_a6aa8f143fbe49895ac08279cfc0311e2"><div class="ttname"><a href="structripple_1_1TxQ_1_1Setup.html#a6aa8f143fbe49895ac08279cfc0311e2">ripple::TxQ::Setup::queueSizeMin</a></div><div class="ttdeci">std::size_t queueSizeMin</div><div class="ttdoc">The smallest limit the queue is allowed.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00068">TxQ.h:68</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Setup_html_a7ee5bc03ae4f2f9b5f2de99eceabdac8"><div class="ttname"><a href="structripple_1_1TxQ_1_1Setup.html#a7ee5bc03ae4f2f9b5f2de99eceabdac8">ripple::TxQ::Setup::maximumTxnInLedger</a></div><div class="ttdeci">std::optional&lt; std::uint32_t &gt; maximumTxnInLedger</div><div class="ttdoc">Optional maximum allowed value of transactions per ledger before fee escalation kicks in.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00101">TxQ.h:101</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Setup_html_aa1bbdbb893cafa2a5ef126f72644321c"><div class="ttname"><a href="structripple_1_1TxQ_1_1Setup.html#aa1bbdbb893cafa2a5ef126f72644321c">ripple::TxQ::Setup::targetTxnInLedger</a></div><div class="ttdeci">std::uint32_t targetTxnInLedger</div><div class="ttdoc">Number of transactions per ledger that fee escalation &quot;works towards&quot;.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00090">TxQ.h:90</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Setup_html_abff7c81cad94c074c6414872e50f23e8"><div class="ttname"><a href="structripple_1_1TxQ_1_1Setup.html#abff7c81cad94c074c6414872e50f23e8">ripple::TxQ::Setup::retrySequencePercent</a></div><div class="ttdeci">std::uint32_t retrySequencePercent</div><div class="ttdoc">Extra percentage required on the fee level of a queued transaction to replace that transaction with a...</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00078">TxQ.h:78</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Setup_html_ac02a564e20d8363fa5cbdcf4079f5413"><div class="ttname"><a href="structripple_1_1TxQ_1_1Setup.html#ac02a564e20d8363fa5cbdcf4079f5413">ripple::TxQ::Setup::minimumLastLedgerBuffer</a></div><div class="ttdeci">std::uint32_t minimumLastLedgerBuffer</div><div class="ttdoc">Minimum difference between the current ledger sequence and a transaction's LastLedgerSequence for the...</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00136">TxQ.h:136</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Setup_html_acb7f76ef24c80a9a26bc94701001eec5"><div class="ttname"><a href="structripple_1_1TxQ_1_1Setup.html#acb7f76ef24c80a9a26bc94701001eec5">ripple::TxQ::Setup::minimumTxnInLedgerSA</a></div><div class="ttdeci">std::uint32_t minimumTxnInLedgerSA</div><div class="ttdoc">Like minimumTxnInLedger for standalone mode.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00087">TxQ.h:87</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Setup_html_ae90eb2b5bf5f061092c0d83457f55f81"><div class="ttname"><a href="structripple_1_1TxQ_1_1Setup.html#ae90eb2b5bf5f061092c0d83457f55f81">ripple::TxQ::Setup::ledgersInQueue</a></div><div class="ttdeci">std::size_t ledgersInQueue</div><div class="ttdoc">Number of ledgers' worth of transactions to allow in the queue.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00062">TxQ.h:62</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Setup_html_afb2a3d5862daac6599f23fc30c60dd8e"><div class="ttname"><a href="structripple_1_1TxQ_1_1Setup.html#afb2a3d5862daac6599f23fc30c60dd8e">ripple::TxQ::Setup::standAlone</a></div><div class="ttdeci">bool standAlone</div><div class="ttdoc">Use standalone mode behavior.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00138">TxQ.h:138</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1Setup_html_aff1d69439cfdf5fbf8e90556f5cb70a0"><div class="ttname"><a href="structripple_1_1TxQ_1_1Setup.html#aff1d69439cfdf5fbf8e90556f5cb70a0">ripple::TxQ::Setup::normalConsensusIncreasePercent</a></div><div class="ttdeci">std::uint32_t normalConsensusIncreasePercent</div><div class="ttdoc">When the ledger has more transactions than &quot;expected&quot;, and performance is humming along nicely,...</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00113">TxQ.h:113</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1TxDetails_html"><div class="ttname"><a href="structripple_1_1TxQ_1_1TxDetails.html">ripple::TxQ::TxDetails</a></div><div class="ttdoc">Structure that describes a transaction in the queue waiting to be applied to the current open ledger.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00175">TxQ.h:176</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1TxDetails_html_a069f7f71135ba3d9bed97fb0cf0557f9"><div class="ttname"><a href="structripple_1_1TxQ_1_1TxDetails.html#a069f7f71135ba3d9bed97fb0cf0557f9">ripple::TxQ::TxDetails::lastValid</a></div><div class="ttdeci">std::optional&lt; LedgerIndex &gt; lastValid</div><div class="ttdoc">LastValidLedger field of the queued transaction, if any.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00203">TxQ.h:203</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1TxDetails_html_a18e58fb9d8e5cb60d69192b8d474bfaa"><div class="ttname"><a href="structripple_1_1TxQ_1_1TxDetails.html#a18e58fb9d8e5cb60d69192b8d474bfaa">ripple::TxQ::TxDetails::seqProxy</a></div><div class="ttdeci">SeqProxy seqProxy</div><div class="ttdoc">SeqProxy of the transaction.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00211">TxQ.h:211</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1TxDetails_html_a308ebaa833b444835409d2e04f007f19"><div class="ttname"><a href="structripple_1_1TxQ_1_1TxDetails.html#a308ebaa833b444835409d2e04f007f19">ripple::TxQ::TxDetails::preflightResult</a></div><div class="ttdeci">TER preflightResult</div><div class="ttdoc">The intermediate result returned by preflight before this transaction was queued, or after it is queu...</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00229">TxQ.h:229</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1TxDetails_html_a46666b170f6a188e35b17feef7c51cec"><div class="ttname"><a href="structripple_1_1TxQ_1_1TxDetails.html#a46666b170f6a188e35b17feef7c51cec">ripple::TxQ::TxDetails::consequences</a></div><div class="ttdeci">TxConsequences consequences</div><div class="ttdoc">Potential TxConsequences of applying the queued transaction to the open ledger.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00207">TxQ.h:207</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1TxDetails_html_a7514db9f24672530584db5575a2ea3b8"><div class="ttname"><a href="structripple_1_1TxQ_1_1TxDetails.html#a7514db9f24672530584db5575a2ea3b8">ripple::TxQ::TxDetails::TxDetails</a></div><div class="ttdeci">TxDetails(FeeLevel64 feeLevel_, std::optional&lt; LedgerIndex &gt; const &amp;lastValid_, TxConsequences const &amp;consequences_, AccountID const &amp;account_, SeqProxy seqProxy_, std::shared_ptr&lt; STTx const &gt; const &amp;txn_, int retriesRemaining_, TER preflightResult_, std::optional&lt; TER &gt; lastResult_)</div><div class="ttdoc">Full initialization.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00178">TxQ.h:178</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1TxDetails_html_a85214f881eb96a624f6870cb8edd377b"><div class="ttname"><a href="structripple_1_1TxQ_1_1TxDetails.html#a85214f881eb96a624f6870cb8edd377b">ripple::TxQ::TxDetails::account</a></div><div class="ttdeci">AccountID account</div><div class="ttdoc">The account the transaction is queued for.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00209">TxQ.h:209</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1TxDetails_html_ab880f159b6cf7c1f54878ffaab35d315"><div class="ttname"><a href="structripple_1_1TxQ_1_1TxDetails.html#ab880f159b6cf7c1f54878ffaab35d315">ripple::TxQ::TxDetails::feeLevel</a></div><div class="ttdeci">FeeLevel64 feeLevel</div><div class="ttdoc">Fee level of the queued transaction.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00201">TxQ.h:201</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1TxDetails_html_ac84ba22d948acd43583ac815a34e3138"><div class="ttname"><a href="structripple_1_1TxQ_1_1TxDetails.html#ac84ba22d948acd43583ac815a34e3138">ripple::TxQ::TxDetails::txn</a></div><div class="ttdeci">std::shared_ptr&lt; STTx const &gt; txn</div><div class="ttdoc">The full transaction.</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00213">TxQ.h:213</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1TxDetails_html_ae2436113a310b818cda98ad93fb900c3"><div class="ttname"><a href="structripple_1_1TxQ_1_1TxDetails.html#ae2436113a310b818cda98ad93fb900c3">ripple::TxQ::TxDetails::lastResult</a></div><div class="ttdeci">std::optional&lt; TER &gt; lastResult</div><div class="ttdoc">If the transactor attempted to apply the transaction to the open ledger from the queue and failed,...</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00236">TxQ.h:236</a></div></div>
<div class="ttc" id="astructripple_1_1TxQ_1_1TxDetails_html_af62f2b7354cbefc4223cf768c867fa1f"><div class="ttname"><a href="structripple_1_1TxQ_1_1TxDetails.html#af62f2b7354cbefc4223cf768c867fa1f">ripple::TxQ::TxDetails::retriesRemaining</a></div><div class="ttdeci">int retriesRemaining</div><div class="ttdoc">Number of times the transactor can return a retry / ter result when attempting to apply this transact...</div><div class="ttdef"><b>Definition</b> <a href="TxQ_8h_source.html#l00219">TxQ.h:219</a></div></div>
<div class="ttc" id="avalue_or_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/utility/optional/value_or.html">std::optional::value_or</a></div><div class="ttdeci">T value_or(T... args)</div></div>
<div class="ttc" id="avector_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>