dash-docs/en/doxygen/html/fees_8h_source.html

182 lines
65 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Dash Core: src/policy/fees.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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="bitcoin_logo_doxygen.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Dash Core
&#160;<span id="projectnumber">0.12.2.1</span>
</div>
<div id="projectbrief">P2P Digital Currency</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('fees_8h_source.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">fees.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="fees_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">// Copyright (c) 2009-2010 Satoshi Nakamoto</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment">// Copyright (c) 2009-2015 The Bitcoin developers</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment">// Distributed under the MIT software license, see the accompanying</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment">// file COPYING or http://www.opensource.org/licenses/mit-license.php.</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="preprocessor">#ifndef BITCOIN_POLICYESTIMATOR_H</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="preprocessor">#define BITCOIN_POLICYESTIMATOR_H</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="amount_8h.html">amount.h</a>&quot;</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="uint256_8h.html">uint256.h</a>&quot;</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="preprocessor">#include &lt;map&gt;</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="keyword">class </span><a class="code" href="classCAutoFile.html">CAutoFile</a>;</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="keyword">class </span><a class="code" href="classCFeeRate.html">CFeeRate</a>;</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="keyword">class </span><a class="code" href="classCTxMemPoolEntry.html">CTxMemPoolEntry</a>;</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="keyword">class </span><a class="code" href="classCTxMemPool.html">CTxMemPool</a>;</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classTxConfirmStats.html"> 79</a></span>&#160;<span class="keyword">class </span><a class="code" href="classTxConfirmStats.html">TxConfirmStats</a></div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;{</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="keyword">private</span>:</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="comment">//Define the buckets we will group transactions into (both fee buckets and priority buckets)</span></div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="classTxConfirmStats.html#a1267be3e0742dcf549adcaa2e13e66f7"> 83</a></span>&#160; std::vector&lt;double&gt; <a class="code" href="classTxConfirmStats.html#a1267be3e0742dcf549adcaa2e13e66f7">buckets</a>; <span class="comment">// The upper-bound of the range for the bucket (inclusive)</span></div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="classTxConfirmStats.html#a2f21d56ed1f23ec8d106526db25e8e6e"> 84</a></span>&#160; std::map&lt;double, unsigned int&gt; <a class="code" href="classTxConfirmStats.html#a2f21d56ed1f23ec8d106526db25e8e6e">bucketMap</a>; <span class="comment">// Map of bucket upper-bound to index into all vectors by bucket</span></div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="comment">// For each bucket X:</span></div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="comment">// Count the total # of txs in each bucket</span></div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="comment">// Track the historical moving average of this total over blocks</span></div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="classTxConfirmStats.html#a6d09b27bc31a4f7ce4a8104d61546d37"> 89</a></span>&#160; std::vector&lt;double&gt; <a class="code" href="classTxConfirmStats.html#a6d09b27bc31a4f7ce4a8104d61546d37">txCtAvg</a>;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="comment">// and calculate the total for the current block to update the moving average</span></div><div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="classTxConfirmStats.html#a91ea5d52ed3df7cc92e0383fcc0bf18d"> 91</a></span>&#160; std::vector&lt;int&gt; <a class="code" href="classTxConfirmStats.html#a91ea5d52ed3df7cc92e0383fcc0bf18d">curBlockTxCt</a>;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="comment">// Count the total # of txs confirmed within Y blocks in each bucket</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="comment">// Track the historical moving average of theses totals over blocks</span></div><div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="classTxConfirmStats.html#ab09c024915718a928764b2a6b69f8215"> 95</a></span>&#160; std::vector&lt;std::vector&lt;double&gt; &gt; <a class="code" href="classTxConfirmStats.html#ab09c024915718a928764b2a6b69f8215">confAvg</a>; <span class="comment">// confAvg[Y][X]</span></div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="comment">// and calculate the totals for the current block to update the moving averages</span></div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="classTxConfirmStats.html#a96013d2383fb68757b4dc948a98b09fe"> 97</a></span>&#160; std::vector&lt;std::vector&lt;int&gt; &gt; <a class="code" href="classTxConfirmStats.html#a96013d2383fb68757b4dc948a98b09fe">curBlockConf</a>; <span class="comment">// curBlockConf[Y][X]</span></div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="comment">// Sum the total priority/fee of all tx&#39;s in each bucket</span></div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="comment">// Track the historical moving average of this total over blocks</span></div><div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="classTxConfirmStats.html#aad7cdbbb2fccfe1abf2dbfb2cc0230ce"> 101</a></span>&#160; std::vector&lt;double&gt; <a class="code" href="classTxConfirmStats.html#aad7cdbbb2fccfe1abf2dbfb2cc0230ce">avg</a>;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="comment">// and calculate the total for the current block to update the moving average</span></div><div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="classTxConfirmStats.html#a294a044fae770c4977f2ba46c78cdf2a"> 103</a></span>&#160; std::vector&lt;double&gt; <a class="code" href="classTxConfirmStats.html#a294a044fae770c4977f2ba46c78cdf2a">curBlockVal</a>;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="comment">// Combine the conf counts with tx counts to calculate the confirmation % for each Y,X</span></div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="comment">// Combine the total value with the tx counts to calculate the avg fee/priority per bucket</span></div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="classTxConfirmStats.html#a638b665311ffa2e6433b426fa0db6453"> 108</a></span>&#160; std::string <a class="code" href="classTxConfirmStats.html#a638b665311ffa2e6433b426fa0db6453">dataTypeString</a>;</div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="classTxConfirmStats.html#a61076f7531b27abbd85ec8bc7bc90ee2"> 109</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classTxConfirmStats.html#a61076f7531b27abbd85ec8bc7bc90ee2">decay</a>;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="comment">// Mempool counts of outstanding transactions</span></div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="comment">// For each bucket X, track the number of transactions in the mempool</span></div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="comment">// that are unconfirmed for each possible confirmation value Y</span></div><div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="classTxConfirmStats.html#ab80a5b84994e90d568f798632a510ab3"> 114</a></span>&#160; std::vector&lt;std::vector&lt;int&gt; &gt; <a class="code" href="classTxConfirmStats.html#ab80a5b84994e90d568f798632a510ab3">unconfTxs</a>; <span class="comment">//unconfTxs[Y][X]</span></div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="comment">// transactions still unconfirmed after MAX_CONFIRMS for each bucket</span></div><div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="classTxConfirmStats.html#a80101a37c91a8953151d0c146bfbc635"> 116</a></span>&#160; std::vector&lt;int&gt; <a class="code" href="classTxConfirmStats.html#a80101a37c91a8953151d0c146bfbc635">oldUnconfTxs</a>;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classTxConfirmStats.html#a5a7701e1463d687cae1e86204748dc5e">Initialize</a>(std::vector&lt;double&gt;&amp; defaultBuckets, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> maxConfirms, <span class="keywordtype">double</span> <a class="code" href="classTxConfirmStats.html#a61076f7531b27abbd85ec8bc7bc90ee2">decay</a>, std::string <a class="code" href="classTxConfirmStats.html#a638b665311ffa2e6433b426fa0db6453">dataTypeString</a>);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classTxConfirmStats.html#a3cf61e975c43103bb2c1e5ac3f5b3cf8">ClearCurrent</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nBlockHeight);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classTxConfirmStats.html#a64281208674a51e15fb10a619bde2a51">Record</a>(<span class="keywordtype">int</span> blocksToConfirm, <span class="keywordtype">double</span> val);</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classTxConfirmStats.html#ae0b014c40cdf3c2207f2677774000261">NewTx</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nBlockHeight, <span class="keywordtype">double</span> val);</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classTxConfirmStats.html#a421aa07c38b5f51dae2f2bdd725ba169">removeTx</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> entryHeight, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nBestSeenHeight,</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> bucketIndex);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classTxConfirmStats.html#a96211021e0e019a566a2126948861ead">UpdateMovingAverages</a>();</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordtype">double</span> <a class="code" href="classTxConfirmStats.html#a7ac4f70e6029ecf06e8d1528ab9c33f1">EstimateMedianVal</a>(<span class="keywordtype">int</span> confTarget, <span class="keywordtype">double</span> sufficientTxVal,</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordtype">double</span> minSuccess, <span class="keywordtype">bool</span> requireGreater, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nBlockHeight);</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;</div><div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="classTxConfirmStats.html#ab2b42aa0beab3ed825ccc8486dfc0a84"> 166</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classTxConfirmStats.html#ab2b42aa0beab3ed825ccc8486dfc0a84">GetMaxConfirms</a>() { <span class="keywordflow">return</span> <a class="code" href="classTxConfirmStats.html#ab09c024915718a928764b2a6b69f8215">confAvg</a>.size(); }</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classTxConfirmStats.html#a61caf0db4ffeb8c112375e2aedf62499">Write</a>(<a class="code" href="classCAutoFile.html">CAutoFile</a>&amp; <a class="code" href="util_8cpp.html#a5256be9be45ec4d0909f14a61d455e23">fileout</a>);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classTxConfirmStats.html#a3cc392ef180cd7bddd0181c1a73dd741">Read</a>(<a class="code" href="classCAutoFile.html">CAutoFile</a>&amp; filein);</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;};</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="fees_8h.html#a497b52dfe8ede3ddd28904d20172c030"> 181</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="fees_8h.html#a497b52dfe8ede3ddd28904d20172c030">MAX_BLOCK_CONFIRMS</a> = 25;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="fees_8h.html#a7a2a101d1795850360f79d9e4d8cbbf4"> 184</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> <a class="code" href="fees_8h.html#a7a2a101d1795850360f79d9e4d8cbbf4">DEFAULT_DECAY</a> = .998;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;</div><div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="fees_8h.html#aaf24bb74c1a77742398494fe80e76713"> 187</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> <a class="code" href="fees_8h.html#aaf24bb74c1a77742398494fe80e76713">MIN_SUCCESS_PCT</a> = .95;</div><div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="fees_8h.html#a27b53ce7b34e8fa1f02ff593341e7868"> 188</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> <a class="code" href="fees_8h.html#a27b53ce7b34e8fa1f02ff593341e7868">UNLIKELY_PCT</a> = .5;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="fees_8h.html#afc18d5b08745c34352d5ee6bd9c8dfa2"> 191</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> <a class="code" href="fees_8h.html#afc18d5b08745c34352d5ee6bd9c8dfa2">SUFFICIENT_FEETXS</a> = 1;</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="fees_8h.html#abc4715f1148cb76a46594dee4cb34f93"> 194</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> <a class="code" href="fees_8h.html#abc4715f1148cb76a46594dee4cb34f93">SUFFICIENT_PRITXS</a> = .2;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="comment">// Minimum and Maximum values for tracking fees and priorities</span></div><div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="fees_8h.html#a74c407fd21a313b4919509d11d539363"> 197</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> <a class="code" href="fees_8h.html#a74c407fd21a313b4919509d11d539363">MIN_FEERATE</a> = 10;</div><div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="fees_8h.html#a1ae313c1efaf2d8962f06debeeabdb59"> 198</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> <a class="code" href="fees_8h.html#a1ae313c1efaf2d8962f06debeeabdb59">MAX_FEERATE</a> = 1e7;</div><div class="line"><a name="l00199"></a><span class="lineno"><a class="line" href="fees_8h.html#ae1c236d0bc9983de7c249b19628afdcd"> 199</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> <a class="code" href="fees_8h.html#ae1c236d0bc9983de7c249b19628afdcd">INF_FEERATE</a> = <a class="code" href="amount_8h.html#a7af1fa1cd5a4e2c29be8ebefe37743d7">MAX_MONEY</a>;</div><div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="fees_8h.html#a15a03efa27a6ae8c890c348eebb35b0a"> 200</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> <a class="code" href="fees_8h.html#a15a03efa27a6ae8c890c348eebb35b0a">MIN_PRIORITY</a> = 10;</div><div class="line"><a name="l00201"></a><span class="lineno"><a class="line" href="fees_8h.html#a33e270a0a5aaa6276fd86057feb434a7"> 201</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> <a class="code" href="fees_8h.html#a33e270a0a5aaa6276fd86057feb434a7">MAX_PRIORITY</a> = 1e16;</div><div class="line"><a name="l00202"></a><span class="lineno"><a class="line" href="fees_8h.html#a7a1452c0779d913728b2567683a6377a"> 202</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> <a class="code" href="fees_8h.html#a7a1452c0779d913728b2567683a6377a">INF_PRIORITY</a> = 1e9 * <a class="code" href="amount_8h.html#a7af1fa1cd5a4e2c29be8ebefe37743d7">MAX_MONEY</a>;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="comment">// We have to lump transactions into buckets based on fee or priority, but we want to be able</span></div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;<span class="comment">// to give accurate estimates over a large range of potential fees and priorities</span></div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="comment">// Therefore it makes sense to exponentially space the buckets</span></div><div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="fees_8h.html#a7d6fd36ed44ed4800fa0fa9b0187643d"> 208</a></span>&#160;<span class="comment"></span><span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> <a class="code" href="fees_8h.html#a7d6fd36ed44ed4800fa0fa9b0187643d">FEE_SPACING</a> = 1.1;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno"><a class="line" href="fees_8h.html#a180ab8694b65d509effa3f22040cce90"> 211</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> <a class="code" href="fees_8h.html#a180ab8694b65d509effa3f22040cce90">PRI_SPACING</a> = 2;</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno"><a class="line" href="classCBlockPolicyEstimator.html"> 218</a></span>&#160;<span class="keyword">class </span><a class="code" href="classCBlockPolicyEstimator.html">CBlockPolicyEstimator</a></div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;{</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <a class="code" href="classCBlockPolicyEstimator.html#a63578e09e192cb16bdd28ccf49e85c06">CBlockPolicyEstimator</a>(<span class="keyword">const</span> <a class="code" href="classCFeeRate.html">CFeeRate</a>&amp; minRelayFee);</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classCBlockPolicyEstimator.html#a4dbf4773f292c71c51cd17b7eb67dad0">processBlock</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nBlockHeight,</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; std::vector&lt;CTxMemPoolEntry&gt;&amp; entries, <span class="keywordtype">bool</span> fCurrentEstimate);</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classCBlockPolicyEstimator.html#a743b4afec36ec5ac64d2ff63c7f61aae">processBlockTx</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nBlockHeight, <span class="keyword">const</span> <a class="code" href="classCTxMemPoolEntry.html">CTxMemPoolEntry</a>&amp; entry);</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classCBlockPolicyEstimator.html#ab2a8e9135f06f38dc51031125e803a6b">processTransaction</a>(<span class="keyword">const</span> <a class="code" href="classCTxMemPoolEntry.html">CTxMemPoolEntry</a>&amp; entry, <span class="keywordtype">bool</span> fCurrentEstimate);</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classCBlockPolicyEstimator.html#a52cc7162762f37f5a246dc7a16838aa9">removeTx</a>(<a class="code" href="classuint256.html">uint256</a> hash);</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classCBlockPolicyEstimator.html#ae5210aa92ae419c28dd18d853732c166">isFeeDataPoint</a>(<span class="keyword">const</span> <a class="code" href="classCFeeRate.html">CFeeRate</a> &amp;fee, <span class="keywordtype">double</span> pri);</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classCBlockPolicyEstimator.html#a9ac58339877c62a144679caa349c414a">isPriDataPoint</a>(<span class="keyword">const</span> <a class="code" href="classCFeeRate.html">CFeeRate</a> &amp;fee, <span class="keywordtype">double</span> pri);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <a class="code" href="classCFeeRate.html">CFeeRate</a> <a class="code" href="classCBlockPolicyEstimator.html#a55418a0d0c84ff184d67b1bd366ca525">estimateFee</a>(<span class="keywordtype">int</span> confTarget);</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <a class="code" href="classCFeeRate.html">CFeeRate</a> <a class="code" href="classCBlockPolicyEstimator.html#acc6d4370b7b3942507647904043b181a">estimateSmartFee</a>(<span class="keywordtype">int</span> confTarget, <span class="keywordtype">int</span> *answerFoundAtTarget, <span class="keyword">const</span> <a class="code" href="classCTxMemPool.html">CTxMemPool</a>&amp; pool);</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="keywordtype">double</span> <a class="code" href="classCBlockPolicyEstimator.html#adcaa52e6fdabbf8b0907bb5521aaa4f9">estimatePriority</a>(<span class="keywordtype">int</span> confTarget);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keywordtype">double</span> <a class="code" href="classCBlockPolicyEstimator.html#a81d98a40d7560a1edec92d565bb7ba4b">estimateSmartPriority</a>(<span class="keywordtype">int</span> confTarget, <span class="keywordtype">int</span> *answerFoundAtTarget, <span class="keyword">const</span> <a class="code" href="classCTxMemPool.html">CTxMemPool</a>&amp; pool);</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160;</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classCBlockPolicyEstimator.html#a476fd39364402e84d3740fb2b52ba23d">Write</a>(<a class="code" href="classCAutoFile.html">CAutoFile</a>&amp; <a class="code" href="util_8cpp.html#a5256be9be45ec4d0909f14a61d455e23">fileout</a>);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classCBlockPolicyEstimator.html#a3d6a47569d0677f8c40a6a170e8abf4d">Read</a>(<a class="code" href="classCAutoFile.html">CAutoFile</a>&amp; filein);</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;<span class="keyword">private</span>:</div><div class="line"><a name="l00268"></a><span class="lineno"><a class="line" href="classCBlockPolicyEstimator.html#a9855a86bd39817acc9de71a574e582c2"> 268</a></span>&#160; <a class="code" href="classCFeeRate.html">CFeeRate</a> <a class="code" href="classCBlockPolicyEstimator.html#a9855a86bd39817acc9de71a574e582c2">minTrackedFee</a>; </div><div class="line"><a name="l00269"></a><span class="lineno"><a class="line" href="classCBlockPolicyEstimator.html#a4f27bd09eadcb493cb5e31e36fa4bd02"> 269</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classCBlockPolicyEstimator.html#a4f27bd09eadcb493cb5e31e36fa4bd02">minTrackedPriority</a>; </div><div class="line"><a name="l00270"></a><span class="lineno"><a class="line" href="classCBlockPolicyEstimator.html#a208f2b05a4ca303a1814f88f0cfb3b5b"> 270</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classCBlockPolicyEstimator.html#a208f2b05a4ca303a1814f88f0cfb3b5b">nBestSeenHeight</a>;</div><div class="line"><a name="l00271"></a><span class="lineno"><a class="line" href="structCBlockPolicyEstimator_1_1TxStatsInfo.html"> 271</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structCBlockPolicyEstimator_1_1TxStatsInfo.html">TxStatsInfo</a></div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; {</div><div class="line"><a name="l00273"></a><span class="lineno"><a class="line" href="structCBlockPolicyEstimator_1_1TxStatsInfo.html#a7222f19c55c48599120e4340a2f803f9"> 273</a></span>&#160; <a class="code" href="classTxConfirmStats.html">TxConfirmStats</a> *<a class="code" href="structCBlockPolicyEstimator_1_1TxStatsInfo.html#a7222f19c55c48599120e4340a2f803f9">stats</a>;</div><div class="line"><a name="l00274"></a><span class="lineno"><a class="line" href="structCBlockPolicyEstimator_1_1TxStatsInfo.html#ac37d5112a8964476a7931f685787edaf"> 274</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structCBlockPolicyEstimator_1_1TxStatsInfo.html#ac37d5112a8964476a7931f685787edaf">blockHeight</a>;</div><div class="line"><a name="l00275"></a><span class="lineno"><a class="line" href="structCBlockPolicyEstimator_1_1TxStatsInfo.html#acb1b89ef61a16e915596b2f77d6f1766"> 275</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structCBlockPolicyEstimator_1_1TxStatsInfo.html#acb1b89ef61a16e915596b2f77d6f1766">bucketIndex</a>;</div><div class="line"><a name="l00276"></a><span class="lineno"><a class="line" href="structCBlockPolicyEstimator_1_1TxStatsInfo.html#a08f45b4d6c448c52b619c6958a4c2f35"> 276</a></span>&#160; <a class="code" href="structCBlockPolicyEstimator_1_1TxStatsInfo.html#a08f45b4d6c448c52b619c6958a4c2f35">TxStatsInfo</a>() : <a class="code" href="structCBlockPolicyEstimator_1_1TxStatsInfo.html#a7222f19c55c48599120e4340a2f803f9">stats</a>(NULL), <a class="code" href="structCBlockPolicyEstimator_1_1TxStatsInfo.html#ac37d5112a8964476a7931f685787edaf">blockHeight</a>(0), <a class="code" href="structCBlockPolicyEstimator_1_1TxStatsInfo.html#acb1b89ef61a16e915596b2f77d6f1766">bucketIndex</a>(0) {}</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; };</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="comment">// map of txids to information about that transaction</span></div><div class="line"><a name="l00280"></a><span class="lineno"><a class="line" href="classCBlockPolicyEstimator.html#ae3af28a53439328591107672c9ad84b1"> 280</a></span>&#160; std::map&lt;uint256, TxStatsInfo&gt; <a class="code" href="classCBlockPolicyEstimator.html#ae3af28a53439328591107672c9ad84b1">mapMemPoolTxs</a>;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;</div><div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="classCBlockPolicyEstimator.html#afa12ce705042b5a93bc07e5ad467a4df"> 283</a></span>&#160; <a class="code" href="classTxConfirmStats.html">TxConfirmStats</a> <a class="code" href="classCBlockPolicyEstimator.html#a2b2e4283eb4ee6a03df4ab084c74ce1c">feeStats</a>, <a class="code" href="classCBlockPolicyEstimator.html#afa12ce705042b5a93bc07e5ad467a4df">priStats</a>;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;</div><div class="line"><a name="l00286"></a><span class="lineno"><a class="line" href="classCBlockPolicyEstimator.html#aaefa1c1be20e8051d1fc6ec3543c2ffd"> 286</a></span>&#160; <a class="code" href="classCFeeRate.html">CFeeRate</a> <a class="code" href="classCBlockPolicyEstimator.html#a883dff595684fb967def434ea626a3b0">feeLikely</a>, <a class="code" href="classCBlockPolicyEstimator.html#aaefa1c1be20e8051d1fc6ec3543c2ffd">feeUnlikely</a>;</div><div class="line"><a name="l00287"></a><span class="lineno"><a class="line" href="classCBlockPolicyEstimator.html#af4d05ddd6a9ba94fd1713f8556267a24"> 287</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classCBlockPolicyEstimator.html#a95d99a8ef792305efa3580a1beffad3d">priLikely</a>, <a class="code" href="classCBlockPolicyEstimator.html#af4d05ddd6a9ba94fd1713f8556267a24">priUnlikely</a>;</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;};</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/*BITCOIN_POLICYESTIMATOR_H */</span><span class="preprocessor"></span></div><div class="ttc" id="fees_8h_html_a180ab8694b65d509effa3f22040cce90"><div class="ttname"><a href="fees_8h.html#a180ab8694b65d509effa3f22040cce90">PRI_SPACING</a></div><div class="ttdeci">static const double PRI_SPACING</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00211">fees.h:211</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_a6d09b27bc31a4f7ce4a8104d61546d37"><div class="ttname"><a href="classTxConfirmStats.html#a6d09b27bc31a4f7ce4a8104d61546d37">TxConfirmStats::txCtAvg</a></div><div class="ttdeci">std::vector&lt; double &gt; txCtAvg</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00089">fees.h:89</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_af4d05ddd6a9ba94fd1713f8556267a24"><div class="ttname"><a href="classCBlockPolicyEstimator.html#af4d05ddd6a9ba94fd1713f8556267a24">CBlockPolicyEstimator::priUnlikely</a></div><div class="ttdeci">double priUnlikely</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00287">fees.h:287</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_a81d98a40d7560a1edec92d565bb7ba4b"><div class="ttname"><a href="classCBlockPolicyEstimator.html#a81d98a40d7560a1edec92d565bb7ba4b">CBlockPolicyEstimator::estimateSmartPriority</a></div><div class="ttdeci">double estimateSmartPriority(int confTarget, int *answerFoundAtTarget, const CTxMemPool &amp;pool)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00542">fees.cpp:542</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_ab2a8e9135f06f38dc51031125e803a6b"><div class="ttname"><a href="classCBlockPolicyEstimator.html#ab2a8e9135f06f38dc51031125e803a6b">CBlockPolicyEstimator::processTransaction</a></div><div class="ttdeci">void processTransaction(const CTxMemPoolEntry &amp;entry, bool fCurrentEstimate)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00344">fees.cpp:344</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_ab80a5b84994e90d568f798632a510ab3"><div class="ttname"><a href="classTxConfirmStats.html#ab80a5b84994e90d568f798632a510ab3">TxConfirmStats::unconfTxs</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; int &gt; &gt; unconfTxs</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00114">fees.h:114</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_a7ac4f70e6029ecf06e8d1528ab9c33f1"><div class="ttname"><a href="classTxConfirmStats.html#a7ac4f70e6029ecf06e8d1528ab9c33f1">TxConfirmStats::EstimateMedianVal</a></div><div class="ttdeci">double EstimateMedianVal(int confTarget, double sufficientTxVal, double minSuccess, bool requireGreater, unsigned int nBlockHeight)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00078">fees.cpp:78</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_a91ea5d52ed3df7cc92e0383fcc0bf18d"><div class="ttname"><a href="classTxConfirmStats.html#a91ea5d52ed3df7cc92e0383fcc0bf18d">TxConfirmStats::curBlockTxCt</a></div><div class="ttdeci">std::vector&lt; int &gt; curBlockTxCt</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00091">fees.h:91</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_a4f27bd09eadcb493cb5e31e36fa4bd02"><div class="ttname"><a href="classCBlockPolicyEstimator.html#a4f27bd09eadcb493cb5e31e36fa4bd02">CBlockPolicyEstimator::minTrackedPriority</a></div><div class="ttdeci">double minTrackedPriority</div><div class="ttdoc">Passed to constructor to avoid dependency on main. </div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00269">fees.h:269</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_a63578e09e192cb16bdd28ccf49e85c06"><div class="ttname"><a href="classCBlockPolicyEstimator.html#a63578e09e192cb16bdd28ccf49e85c06">CBlockPolicyEstimator::CBlockPolicyEstimator</a></div><div class="ttdeci">CBlockPolicyEstimator(const CFeeRate &amp;minRelayFee)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00301">fees.cpp:301</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_a61076f7531b27abbd85ec8bc7bc90ee2"><div class="ttname"><a href="classTxConfirmStats.html#a61076f7531b27abbd85ec8bc7bc90ee2">TxConfirmStats::decay</a></div><div class="ttdeci">double decay</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00109">fees.h:109</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_a638b665311ffa2e6433b426fa0db6453"><div class="ttname"><a href="classTxConfirmStats.html#a638b665311ffa2e6433b426fa0db6453">TxConfirmStats::dataTypeString</a></div><div class="ttdeci">std::string dataTypeString</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00108">fees.h:108</a></div></div>
<div class="ttc" id="structCBlockPolicyEstimator_1_1TxStatsInfo_html_ac37d5112a8964476a7931f685787edaf"><div class="ttname"><a href="structCBlockPolicyEstimator_1_1TxStatsInfo.html#ac37d5112a8964476a7931f685787edaf">CBlockPolicyEstimator::TxStatsInfo::blockHeight</a></div><div class="ttdeci">unsigned int blockHeight</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00274">fees.h:274</a></div></div>
<div class="ttc" id="amount_8h_html_a7af1fa1cd5a4e2c29be8ebefe37743d7"><div class="ttname"><a href="amount_8h.html#a7af1fa1cd5a4e2c29be8ebefe37743d7">MAX_MONEY</a></div><div class="ttdeci">static const CAmount MAX_MONEY</div><div class="ttdef"><b>Definition:</b> <a href="amount_8h_source.html#l00030">amount.h:30</a></div></div>
<div class="ttc" id="util_8cpp_html_a5256be9be45ec4d0909f14a61d455e23"><div class="ttname"><a href="util_8cpp.html#a5256be9be45ec4d0909f14a61d455e23">fileout</a></div><div class="ttdeci">static FILE * fileout</div><div class="ttdef"><b>Definition:</b> <a href="util_8cpp_source.html#l00210">util.cpp:210</a></div></div>
<div class="ttc" id="structCBlockPolicyEstimator_1_1TxStatsInfo_html_a7222f19c55c48599120e4340a2f803f9"><div class="ttname"><a href="structCBlockPolicyEstimator_1_1TxStatsInfo.html#a7222f19c55c48599120e4340a2f803f9">CBlockPolicyEstimator::TxStatsInfo::stats</a></div><div class="ttdeci">TxConfirmStats * stats</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00273">fees.h:273</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_a64281208674a51e15fb10a619bde2a51"><div class="ttname"><a href="classTxConfirmStats.html#a64281208674a51e15fb10a619bde2a51">TxConfirmStats::Record</a></div><div class="ttdeci">void Record(int blocksToConfirm, double val)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00054">fees.cpp:54</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_a3cc392ef180cd7bddd0181c1a73dd741"><div class="ttname"><a href="classTxConfirmStats.html#a3cc392ef180cd7bddd0181c1a73dd741">TxConfirmStats::Read</a></div><div class="ttdeci">void Read(CAutoFile &amp;filein)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00185">fees.cpp:185</a></div></div>
<div class="ttc" id="fees_8h_html_a27b53ce7b34e8fa1f02ff593341e7868"><div class="ttname"><a href="fees_8h.html#a27b53ce7b34e8fa1f02ff593341e7868">UNLIKELY_PCT</a></div><div class="ttdeci">static const double UNLIKELY_PCT</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00188">fees.h:188</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_a3cf61e975c43103bb2c1e5ac3f5b3cf8"><div class="ttname"><a href="classTxConfirmStats.html#a3cf61e975c43103bb2c1e5ac3f5b3cf8">TxConfirmStats::ClearCurrent</a></div><div class="ttdeci">void ClearCurrent(unsigned int nBlockHeight)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00041">fees.cpp:41</a></div></div>
<div class="ttc" id="fees_8h_html_a74c407fd21a313b4919509d11d539363"><div class="ttname"><a href="fees_8h.html#a74c407fd21a313b4919509d11d539363">MIN_FEERATE</a></div><div class="ttdeci">static const double MIN_FEERATE</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00197">fees.h:197</a></div></div>
<div class="ttc" id="structCBlockPolicyEstimator_1_1TxStatsInfo_html_acb1b89ef61a16e915596b2f77d6f1766"><div class="ttname"><a href="structCBlockPolicyEstimator_1_1TxStatsInfo.html#acb1b89ef61a16e915596b2f77d6f1766">CBlockPolicyEstimator::TxStatsInfo::bucketIndex</a></div><div class="ttdeci">unsigned int bucketIndex</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00275">fees.h:275</a></div></div>
<div class="ttc" id="structCBlockPolicyEstimator_1_1TxStatsInfo_html"><div class="ttname"><a href="structCBlockPolicyEstimator_1_1TxStatsInfo.html">CBlockPolicyEstimator::TxStatsInfo</a></div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00271">fees.h:271</a></div></div>
<div class="ttc" id="structCBlockPolicyEstimator_1_1TxStatsInfo_html_a08f45b4d6c448c52b619c6958a4c2f35"><div class="ttname"><a href="structCBlockPolicyEstimator_1_1TxStatsInfo.html#a08f45b4d6c448c52b619c6958a4c2f35">CBlockPolicyEstimator::TxStatsInfo::TxStatsInfo</a></div><div class="ttdeci">TxStatsInfo()</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00276">fees.h:276</a></div></div>
<div class="ttc" id="classCTxMemPoolEntry_html"><div class="ttname"><a href="classCTxMemPoolEntry.html">CTxMemPoolEntry</a></div><div class="ttdef"><b>Definition:</b> <a href="txmempool_8h_source.html#l00076">txmempool.h:76</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_a96211021e0e019a566a2126948861ead"><div class="ttname"><a href="classTxConfirmStats.html#a96211021e0e019a566a2126948861ead">TxConfirmStats::UpdateMovingAverages</a></div><div class="ttdeci">void UpdateMovingAverages()</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00067">fees.cpp:67</a></div></div>
<div class="ttc" id="fees_8h_html_ae1c236d0bc9983de7c249b19628afdcd"><div class="ttname"><a href="fees_8h.html#ae1c236d0bc9983de7c249b19628afdcd">INF_FEERATE</a></div><div class="ttdeci">static const double INF_FEERATE</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00199">fees.h:199</a></div></div>
<div class="ttc" id="fees_8h_html_abc4715f1148cb76a46594dee4cb34f93"><div class="ttname"><a href="fees_8h.html#abc4715f1148cb76a46594dee4cb34f93">SUFFICIENT_PRITXS</a></div><div class="ttdeci">static const double SUFFICIENT_PRITXS</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00194">fees.h:194</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_a55418a0d0c84ff184d67b1bd366ca525"><div class="ttname"><a href="classCBlockPolicyEstimator.html#a55418a0d0c84ff184d67b1bd366ca525">CBlockPolicyEstimator::estimateFee</a></div><div class="ttdeci">CFeeRate estimateFee(int confTarget)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00492">fees.cpp:492</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_afa12ce705042b5a93bc07e5ad467a4df"><div class="ttname"><a href="classCBlockPolicyEstimator.html#afa12ce705042b5a93bc07e5ad467a4df">CBlockPolicyEstimator::priStats</a></div><div class="ttdeci">TxConfirmStats priStats</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00283">fees.h:283</a></div></div>
<div class="ttc" id="fees_8h_html_a33e270a0a5aaa6276fd86057feb434a7"><div class="ttname"><a href="fees_8h.html#a33e270a0a5aaa6276fd86057feb434a7">MAX_PRIORITY</a></div><div class="ttdeci">static const double MAX_PRIORITY</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00201">fees.h:201</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_a2f21d56ed1f23ec8d106526db25e8e6e"><div class="ttname"><a href="classTxConfirmStats.html#a2f21d56ed1f23ec8d106526db25e8e6e">TxConfirmStats::bucketMap</a></div><div class="ttdeci">std::map&lt; double, unsigned int &gt; bucketMap</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00084">fees.h:84</a></div></div>
<div class="ttc" id="classCFeeRate_html"><div class="ttname"><a href="classCFeeRate.html">CFeeRate</a></div><div class="ttdef"><b>Definition:</b> <a href="amount_8h_source.html#l00036">amount.h:36</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_a743b4afec36ec5ac64d2ff63c7f61aae"><div class="ttname"><a href="classCBlockPolicyEstimator.html#a743b4afec36ec5ac64d2ff63c7f61aae">CBlockPolicyEstimator::processBlockTx</a></div><div class="ttdeci">void processBlockTx(unsigned int nBlockHeight, const CTxMemPoolEntry &amp;entry)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00397">fees.cpp:397</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_acc6d4370b7b3942507647904043b181a"><div class="ttname"><a href="classCBlockPolicyEstimator.html#acc6d4370b7b3942507647904043b181a">CBlockPolicyEstimator::estimateSmartFee</a></div><div class="ttdeci">CFeeRate estimateSmartFee(int confTarget, int *answerFoundAtTarget, const CTxMemPool &amp;pool)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00506">fees.cpp:506</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_a883dff595684fb967def434ea626a3b0"><div class="ttname"><a href="classCBlockPolicyEstimator.html#a883dff595684fb967def434ea626a3b0">CBlockPolicyEstimator::feeLikely</a></div><div class="ttdeci">CFeeRate feeLikely</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00286">fees.h:286</a></div></div>
<div class="ttc" id="classTxConfirmStats_html"><div class="ttname"><a href="classTxConfirmStats.html">TxConfirmStats</a></div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00079">fees.h:79</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_ab2b42aa0beab3ed825ccc8486dfc0a84"><div class="ttname"><a href="classTxConfirmStats.html#ab2b42aa0beab3ed825ccc8486dfc0a84">TxConfirmStats::GetMaxConfirms</a></div><div class="ttdeci">unsigned int GetMaxConfirms()</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00166">fees.h:166</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_ae0b014c40cdf3c2207f2677774000261"><div class="ttname"><a href="classTxConfirmStats.html#ae0b014c40cdf3c2207f2677774000261">TxConfirmStats::NewTx</a></div><div class="ttdeci">unsigned int NewTx(unsigned int nBlockHeight, double val)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00248">fees.cpp:248</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_a2b2e4283eb4ee6a03df4ab084c74ce1c"><div class="ttname"><a href="classCBlockPolicyEstimator.html#a2b2e4283eb4ee6a03df4ab084c74ce1c">CBlockPolicyEstimator::feeStats</a></div><div class="ttdeci">TxConfirmStats feeStats</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00283">fees.h:283</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_aad7cdbbb2fccfe1abf2dbfb2cc0230ce"><div class="ttname"><a href="classTxConfirmStats.html#aad7cdbbb2fccfe1abf2dbfb2cc0230ce">TxConfirmStats::avg</a></div><div class="ttdeci">std::vector&lt; double &gt; avg</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00101">fees.h:101</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_a5a7701e1463d687cae1e86204748dc5e"><div class="ttname"><a href="classTxConfirmStats.html#a5a7701e1463d687cae1e86204748dc5e">TxConfirmStats::Initialize</a></div><div class="ttdeci">void Initialize(std::vector&lt; double &gt; &amp;defaultBuckets, unsigned int maxConfirms, double decay, std::string dataTypeString)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00015">fees.cpp:15</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_a294a044fae770c4977f2ba46c78cdf2a"><div class="ttname"><a href="classTxConfirmStats.html#a294a044fae770c4977f2ba46c78cdf2a">TxConfirmStats::curBlockVal</a></div><div class="ttdeci">std::vector&lt; double &gt; curBlockVal</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00103">fees.h:103</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_a421aa07c38b5f51dae2f2bdd725ba169"><div class="ttname"><a href="classTxConfirmStats.html#a421aa07c38b5f51dae2f2bdd725ba169">TxConfirmStats::removeTx</a></div><div class="ttdeci">void removeTx(unsigned int entryHeight, unsigned int nBestSeenHeight, unsigned int bucketIndex)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00257">fees.cpp:257</a></div></div>
<div class="ttc" id="fees_8h_html_afc18d5b08745c34352d5ee6bd9c8dfa2"><div class="ttname"><a href="fees_8h.html#afc18d5b08745c34352d5ee6bd9c8dfa2">SUFFICIENT_FEETXS</a></div><div class="ttdeci">static const double SUFFICIENT_FEETXS</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00191">fees.h:191</a></div></div>
<div class="ttc" id="classuint256_html"><div class="ttname"><a href="classuint256.html">uint256</a></div><div class="ttdef"><b>Definition:</b> <a href="uint256_8h_source.html#l00114">uint256.h:114</a></div></div>
<div class="ttc" id="fees_8h_html_a7a2a101d1795850360f79d9e4d8cbbf4"><div class="ttname"><a href="fees_8h.html#a7a2a101d1795850360f79d9e4d8cbbf4">DEFAULT_DECAY</a></div><div class="ttdeci">static const double DEFAULT_DECAY</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00184">fees.h:184</a></div></div>
<div class="ttc" id="classCTxMemPool_html"><div class="ttname"><a href="classCTxMemPool.html">CTxMemPool</a></div><div class="ttdef"><b>Definition:</b> <a href="txmempool_8h_source.html#l00357">txmempool.h:357</a></div></div>
<div class="ttc" id="fees_8h_html_aaf24bb74c1a77742398494fe80e76713"><div class="ttname"><a href="fees_8h.html#aaf24bb74c1a77742398494fe80e76713">MIN_SUCCESS_PCT</a></div><div class="ttdeci">static const double MIN_SUCCESS_PCT</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00187">fees.h:187</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_aaefa1c1be20e8051d1fc6ec3543c2ffd"><div class="ttname"><a href="classCBlockPolicyEstimator.html#aaefa1c1be20e8051d1fc6ec3543c2ffd">CBlockPolicyEstimator::feeUnlikely</a></div><div class="ttdeci">CFeeRate feeUnlikely</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00286">fees.h:286</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_a9855a86bd39817acc9de71a574e582c2"><div class="ttname"><a href="classCBlockPolicyEstimator.html#a9855a86bd39817acc9de71a574e582c2">CBlockPolicyEstimator::minTrackedFee</a></div><div class="ttdeci">CFeeRate minTrackedFee</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00268">fees.h:268</a></div></div>
<div class="ttc" id="uint256_8h_html"><div class="ttname"><a href="uint256_8h.html">uint256.h</a></div></div>
<div class="ttc" id="classCAutoFile_html"><div class="ttname"><a href="classCAutoFile.html">CAutoFile</a></div><div class="ttdef"><b>Definition:</b> <a href="streams_8h_source.html#l00346">streams.h:346</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_a52cc7162762f37f5a246dc7a16838aa9"><div class="ttname"><a href="classCBlockPolicyEstimator.html#a52cc7162762f37f5a246dc7a16838aa9">CBlockPolicyEstimator::removeTx</a></div><div class="ttdeci">void removeTx(uint256 hash)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00285">fees.cpp:285</a></div></div>
<div class="ttc" id="fees_8h_html_a7a1452c0779d913728b2567683a6377a"><div class="ttname"><a href="fees_8h.html#a7a1452c0779d913728b2567683a6377a">INF_PRIORITY</a></div><div class="ttdeci">static const double INF_PRIORITY</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00202">fees.h:202</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_ae5210aa92ae419c28dd18d853732c166"><div class="ttname"><a href="classCBlockPolicyEstimator.html#ae5210aa92ae419c28dd18d853732c166">CBlockPolicyEstimator::isFeeDataPoint</a></div><div class="ttdeci">bool isFeeDataPoint(const CFeeRate &amp;fee, double pri)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00326">fees.cpp:326</a></div></div>
<div class="ttc" id="fees_8h_html_a15a03efa27a6ae8c890c348eebb35b0a"><div class="ttname"><a href="fees_8h.html#a15a03efa27a6ae8c890c348eebb35b0a">MIN_PRIORITY</a></div><div class="ttdeci">static const double MIN_PRIORITY</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00200">fees.h:200</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_a9ac58339877c62a144679caa349c414a"><div class="ttname"><a href="classCBlockPolicyEstimator.html#a9ac58339877c62a144679caa349c414a">CBlockPolicyEstimator::isPriDataPoint</a></div><div class="ttdeci">bool isPriDataPoint(const CFeeRate &amp;fee, double pri)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00335">fees.cpp:335</a></div></div>
<div class="ttc" id="fees_8h_html_a1ae313c1efaf2d8962f06debeeabdb59"><div class="ttname"><a href="fees_8h.html#a1ae313c1efaf2d8962f06debeeabdb59">MAX_FEERATE</a></div><div class="ttdeci">static const double MAX_FEERATE</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00198">fees.h:198</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_a208f2b05a4ca303a1814f88f0cfb3b5b"><div class="ttname"><a href="classCBlockPolicyEstimator.html#a208f2b05a4ca303a1814f88f0cfb3b5b">CBlockPolicyEstimator::nBestSeenHeight</a></div><div class="ttdeci">unsigned int nBestSeenHeight</div><div class="ttdoc">Set to AllowFreeThreshold. </div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00270">fees.h:270</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_a3d6a47569d0677f8c40a6a170e8abf4d"><div class="ttname"><a href="classCBlockPolicyEstimator.html#a3d6a47569d0677f8c40a6a170e8abf4d">CBlockPolicyEstimator::Read</a></div><div class="ttdeci">void Read(CAutoFile &amp;filein)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00573">fees.cpp:573</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_a4dbf4773f292c71c51cd17b7eb67dad0"><div class="ttname"><a href="classCBlockPolicyEstimator.html#a4dbf4773f292c71c51cd17b7eb67dad0">CBlockPolicyEstimator::processBlock</a></div><div class="ttdeci">void processBlock(unsigned int nBlockHeight, std::vector&lt; CTxMemPoolEntry &gt; &amp;entries, bool fCurrentEstimate)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00434">fees.cpp:434</a></div></div>
<div class="ttc" id="amount_8h_html"><div class="ttname"><a href="amount_8h.html">amount.h</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_a61caf0db4ffeb8c112375e2aedf62499"><div class="ttname"><a href="classTxConfirmStats.html#a61caf0db4ffeb8c112375e2aedf62499">TxConfirmStats::Write</a></div><div class="ttdeci">void Write(CAutoFile &amp;fileout)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00176">fees.cpp:176</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_a80101a37c91a8953151d0c146bfbc635"><div class="ttname"><a href="classTxConfirmStats.html#a80101a37c91a8953151d0c146bfbc635">TxConfirmStats::oldUnconfTxs</a></div><div class="ttdeci">std::vector&lt; int &gt; oldUnconfTxs</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00116">fees.h:116</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_ab09c024915718a928764b2a6b69f8215"><div class="ttname"><a href="classTxConfirmStats.html#ab09c024915718a928764b2a6b69f8215">TxConfirmStats::confAvg</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; double &gt; &gt; confAvg</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00095">fees.h:95</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_a96013d2383fb68757b4dc948a98b09fe"><div class="ttname"><a href="classTxConfirmStats.html#a96013d2383fb68757b4dc948a98b09fe">TxConfirmStats::curBlockConf</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; int &gt; &gt; curBlockConf</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00097">fees.h:97</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html"><div class="ttname"><a href="classCBlockPolicyEstimator.html">CBlockPolicyEstimator</a></div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00218">fees.h:218</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_ae3af28a53439328591107672c9ad84b1"><div class="ttname"><a href="classCBlockPolicyEstimator.html#ae3af28a53439328591107672c9ad84b1">CBlockPolicyEstimator::mapMemPoolTxs</a></div><div class="ttdeci">std::map&lt; uint256, TxStatsInfo &gt; mapMemPoolTxs</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00280">fees.h:280</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_a476fd39364402e84d3740fb2b52ba23d"><div class="ttname"><a href="classCBlockPolicyEstimator.html#a476fd39364402e84d3740fb2b52ba23d">CBlockPolicyEstimator::Write</a></div><div class="ttdeci">void Write(CAutoFile &amp;fileout)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00566">fees.cpp:566</a></div></div>
<div class="ttc" id="fees_8h_html_a497b52dfe8ede3ddd28904d20172c030"><div class="ttname"><a href="fees_8h.html#a497b52dfe8ede3ddd28904d20172c030">MAX_BLOCK_CONFIRMS</a></div><div class="ttdeci">static const unsigned int MAX_BLOCK_CONFIRMS</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00181">fees.h:181</a></div></div>
<div class="ttc" id="classTxConfirmStats_html_a1267be3e0742dcf549adcaa2e13e66f7"><div class="ttname"><a href="classTxConfirmStats.html#a1267be3e0742dcf549adcaa2e13e66f7">TxConfirmStats::buckets</a></div><div class="ttdeci">std::vector&lt; double &gt; buckets</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00083">fees.h:83</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_adcaa52e6fdabbf8b0907bb5521aaa4f9"><div class="ttname"><a href="classCBlockPolicyEstimator.html#adcaa52e6fdabbf8b0907bb5521aaa4f9">CBlockPolicyEstimator::estimatePriority</a></div><div class="ttdeci">double estimatePriority(int confTarget)</div><div class="ttdef"><b>Definition:</b> <a href="fees_8cpp_source.html#l00533">fees.cpp:533</a></div></div>
<div class="ttc" id="fees_8h_html_a7d6fd36ed44ed4800fa0fa9b0187643d"><div class="ttname"><a href="fees_8h.html#a7d6fd36ed44ed4800fa0fa9b0187643d">FEE_SPACING</a></div><div class="ttdeci">static const double FEE_SPACING</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00208">fees.h:208</a></div></div>
<div class="ttc" id="classCBlockPolicyEstimator_html_a95d99a8ef792305efa3580a1beffad3d"><div class="ttname"><a href="classCBlockPolicyEstimator.html#a95d99a8ef792305efa3580a1beffad3d">CBlockPolicyEstimator::priLikely</a></div><div class="ttdeci">double priLikely</div><div class="ttdef"><b>Definition:</b> <a href="fees_8h_source.html#l00287">fees.h:287</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_f9a362818448b8ef6661813ae65d7e79.html">policy</a></li><li class="navelem"><a class="el" href="fees_8h.html">fees.h</a></li>
<li class="footer">Generated on Thu Dec 14 2017 13:15:04 for Dash Core by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li>
</ul>
</div>
</body>
</html>