This commit is contained in:
intelliot
2023-09-11 22:52:27 +00:00
parent 8fb78def0d
commit eddba1ac63
1785 changed files with 68506 additions and 65222 deletions

View File

@@ -117,74 +117,82 @@ $(function() {
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="comment">// Consensus durations are relative to the internal Consensus clock and use</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="comment">// millisecond resolution.</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; </div>
<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a0520be4c7ae7e150218c24cfa09fb2a3"> 74</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#a0520be4c7ae7e150218c24cfa09fb2a3">minCONSENSUS_PCT</a> = 80;</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; </div>
<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a14ceaf40f7aa169b4288a4242d890622"> 77</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::milliseconds</a> <a class="code" href="structripple_1_1ConsensusParms.html#a14ceaf40f7aa169b4288a4242d890622">ledgerIDLE_INTERVAL</a> = <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::seconds</a>{15};</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; </div>
<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a0939202b250b3e1577d24a0c5723aaed"> 80</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::milliseconds</a> <a class="code" href="structripple_1_1ConsensusParms.html#a0939202b250b3e1577d24a0c5723aaed">ledgerMIN_CONSENSUS</a> =</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::milliseconds</a>{1950};</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; </div>
<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a6b184628a2010c17241711b652a9536a"> 89</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::milliseconds</a> <a class="code" href="structripple_1_1ConsensusParms.html#a6b184628a2010c17241711b652a9536a">ledgerMAX_CONSENSUS</a> = <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::seconds</a>{10};</div>
<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a0520be4c7ae7e150218c24cfa09fb2a3"> 75</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#a0520be4c7ae7e150218c24cfa09fb2a3">minCONSENSUS_PCT</a> = 80;</div>
<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#ae2ecadd002f2cc3933a4b614801bcd12"> 76</a></span>&#160; <span class="keywordtype">float</span> <a class="code" href="structripple_1_1ConsensusParms.html#ae2ecadd002f2cc3933a4b614801bcd12">minCONSENSUS_FACTOR</a> = <span class="keyword">static_cast&lt;</span><span class="keywordtype">float</span><span class="keyword">&gt;</span>(<a class="code" href="structripple_1_1ConsensusParms.html#a0520be4c7ae7e150218c24cfa09fb2a3">minCONSENSUS_PCT</a> / 100.0f);</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; </div>
<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#ad5565249d382a6a16345ab6aead9395e"> 80</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#ad5565249d382a6a16345ab6aead9395e">negUNL_MIN_CONSENSUS_PCT</a> = 60;</div>
<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#ac11c68024384b35e0c043749a251a9c9"> 81</a></span>&#160; <span class="keywordtype">float</span> <a class="code" href="structripple_1_1ConsensusParms.html#ac11c68024384b35e0c043749a251a9c9">negUNL_MIN_CONSENSUS_FACTOR</a> =</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keyword">static_cast&lt;</span><span class="keywordtype">float</span><span class="keyword">&gt;</span>(<a class="code" href="structripple_1_1ConsensusParms.html#ad5565249d382a6a16345ab6aead9395e">negUNL_MIN_CONSENSUS_PCT</a> / 100.0f);</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; </div>
<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a14ceaf40f7aa169b4288a4242d890622"> 85</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::milliseconds</a> <a class="code" href="structripple_1_1ConsensusParms.html#a14ceaf40f7aa169b4288a4242d890622">ledgerIDLE_INTERVAL</a> = <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::seconds</a>{15};</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; </div>
<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a0939202b250b3e1577d24a0c5723aaed"> 88</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::milliseconds</a> <a class="code" href="structripple_1_1ConsensusParms.html#a0939202b250b3e1577d24a0c5723aaed">ledgerMIN_CONSENSUS</a> =</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::milliseconds</a>{1950};</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; </div>
<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a8b3b41a8faceadfb268d0baefaaf64d3"> 92</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::milliseconds</a> <a class="code" href="structripple_1_1ConsensusParms.html#a8b3b41a8faceadfb268d0baefaaf64d3">ledgerMIN_CLOSE</a> = <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::seconds</a>{2};</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; </div>
<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a418547e353c28850e08e49b5831ea0db"> 95</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::milliseconds</a> <a class="code" href="structripple_1_1ConsensusParms.html#a418547e353c28850e08e49b5831ea0db">ledgerGRANULARITY</a> = <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::seconds</a>{1};</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; </div>
<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a21638a3d3caa47a696b645f8e6f007d6"> 107</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::milliseconds</a> <a class="code" href="structripple_1_1ConsensusParms.html#a21638a3d3caa47a696b645f8e6f007d6">avMIN_CONSENSUS_TIME</a> = <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::seconds</a>{5};</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; </div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="comment">//------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="comment">// Avalanche tuning</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="comment">// As a function of the percent this round&#39;s duration is of the prior round,</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="comment">// we increase the threshold for yes votes to add a transaction to our</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="comment">// position.</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; </div>
<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a004108774cadaf48b592ab0c5805b865"> 116</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#a004108774cadaf48b592ab0c5805b865">avINIT_CONSENSUS_PCT</a> = 50;</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; </div>
<div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#afd06939a6c18d834a0e35c537390b863"> 119</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#afd06939a6c18d834a0e35c537390b863">avMID_CONSENSUS_TIME</a> = 50;</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; </div>
<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#acc255d46ba3f6c893013ca5b79ba838e"> 122</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#acc255d46ba3f6c893013ca5b79ba838e">avMID_CONSENSUS_PCT</a> = 65;</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; </div>
<div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a755e41d0905719463a7964d728b1d435"> 125</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#a755e41d0905719463a7964d728b1d435">avLATE_CONSENSUS_TIME</a> = 85;</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; </div>
<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a2a87c13cce111e3e3e9797bdaa9fdd6c"> 128</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#a2a87c13cce111e3e3e9797bdaa9fdd6c">avLATE_CONSENSUS_PCT</a> = 70;</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; </div>
<div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#ad02cd693fc6dffda8c60be0ca778d00b"> 131</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#ad02cd693fc6dffda8c60be0ca778d00b">avSTUCK_CONSENSUS_TIME</a> = 200;</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; </div>
<div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a5c07d50213acde142cb02e9a8a1045a6"> 134</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#a5c07d50213acde142cb02e9a8a1045a6">avSTUCK_CONSENSUS_PCT</a> = 95;</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; </div>
<div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#ab293aad447acb327c2d38c91e71084c4"> 137</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#ab293aad447acb327c2d38c91e71084c4">avCT_CONSENSUS_PCT</a> = 75;</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;};</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; </div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;} <span class="comment">// namespace ripple</span></div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a6b184628a2010c17241711b652a9536a"> 97</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::milliseconds</a> <a class="code" href="structripple_1_1ConsensusParms.html#a6b184628a2010c17241711b652a9536a">ledgerMAX_CONSENSUS</a> = <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::seconds</a>{10};</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; </div>
<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a8b3b41a8faceadfb268d0baefaaf64d3"> 100</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::milliseconds</a> <a class="code" href="structripple_1_1ConsensusParms.html#a8b3b41a8faceadfb268d0baefaaf64d3">ledgerMIN_CLOSE</a> = <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::seconds</a>{2};</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; </div>
<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a418547e353c28850e08e49b5831ea0db"> 103</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::milliseconds</a> <a class="code" href="structripple_1_1ConsensusParms.html#a418547e353c28850e08e49b5831ea0db">ledgerGRANULARITY</a> = <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::seconds</a>{1};</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; </div>
<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a21638a3d3caa47a696b645f8e6f007d6"> 115</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::milliseconds</a> <a class="code" href="structripple_1_1ConsensusParms.html#a21638a3d3caa47a696b645f8e6f007d6">avMIN_CONSENSUS_TIME</a> = <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::seconds</a>{5};</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; </div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="comment">//------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="comment">// Avalanche tuning</span></div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="comment">// As a function of the percent this round&#39;s duration is of the prior round,</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="comment">// we increase the threshold for yes votes to add a transaction to our</span></div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="comment">// position.</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; </div>
<div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a004108774cadaf48b592ab0c5805b865"> 124</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#a004108774cadaf48b592ab0c5805b865">avINIT_CONSENSUS_PCT</a> = 50;</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; </div>
<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#afd06939a6c18d834a0e35c537390b863"> 127</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#afd06939a6c18d834a0e35c537390b863">avMID_CONSENSUS_TIME</a> = 50;</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"><a class="line" href="structripple_1_1ConsensusParms.html#acc255d46ba3f6c893013ca5b79ba838e"> 130</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#acc255d46ba3f6c893013ca5b79ba838e">avMID_CONSENSUS_PCT</a> = 65;</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; </div>
<div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a755e41d0905719463a7964d728b1d435"> 133</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#a755e41d0905719463a7964d728b1d435">avLATE_CONSENSUS_TIME</a> = 85;</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; </div>
<div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a2a87c13cce111e3e3e9797bdaa9fdd6c"> 136</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#a2a87c13cce111e3e3e9797bdaa9fdd6c">avLATE_CONSENSUS_PCT</a> = 70;</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; </div>
<div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#ad02cd693fc6dffda8c60be0ca778d00b"> 139</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#ad02cd693fc6dffda8c60be0ca778d00b">avSTUCK_CONSENSUS_TIME</a> = 200;</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; </div>
<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#a5c07d50213acde142cb02e9a8a1045a6"> 142</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#a5c07d50213acde142cb02e9a8a1045a6">avSTUCK_CONSENSUS_PCT</a> = 95;</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; </div>
<div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="structripple_1_1ConsensusParms.html#ab293aad447acb327c2d38c91e71084c4"> 145</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <a class="code" href="structripple_1_1ConsensusParms.html#ab293aad447acb327c2d38c91e71084c4">avCT_CONSENSUS_PCT</a> = 75;</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;};</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; </div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;} <span class="comment">// namespace ripple</span></div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="preprocessor">#endif</span></div>
</div><!-- fragment --></div><!-- contents -->
<div class="ttc" id="astructripple_1_1ConsensusParms_html_ab293aad447acb327c2d38c91e71084c4"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#ab293aad447acb327c2d38c91e71084c4">ripple::ConsensusParms::avCT_CONSENSUS_PCT</a></div><div class="ttdeci">std::size_t avCT_CONSENSUS_PCT</div><div class="ttdoc">Percentage of nodes required to reach agreement on ledger close time.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00137">ConsensusParms.h:137</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_afd06939a6c18d834a0e35c537390b863"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#afd06939a6c18d834a0e35c537390b863">ripple::ConsensusParms::avMID_CONSENSUS_TIME</a></div><div class="ttdeci">std::size_t avMID_CONSENSUS_TIME</div><div class="ttdoc">Percentage of previous round duration before we advance.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00119">ConsensusParms.h:119</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a2a87c13cce111e3e3e9797bdaa9fdd6c"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a2a87c13cce111e3e3e9797bdaa9fdd6c">ripple::ConsensusParms::avLATE_CONSENSUS_PCT</a></div><div class="ttdeci">std::size_t avLATE_CONSENSUS_PCT</div><div class="ttdoc">Percentage of nodes that most vote yes after advancing.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00128">ConsensusParms.h:128</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a5c07d50213acde142cb02e9a8a1045a6"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a5c07d50213acde142cb02e9a8a1045a6">ripple::ConsensusParms::avSTUCK_CONSENSUS_PCT</a></div><div class="ttdeci">std::size_t avSTUCK_CONSENSUS_PCT</div><div class="ttdoc">Percentage of nodes that must vote yes after we are stuck.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00134">ConsensusParms.h:134</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_ab293aad447acb327c2d38c91e71084c4"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#ab293aad447acb327c2d38c91e71084c4">ripple::ConsensusParms::avCT_CONSENSUS_PCT</a></div><div class="ttdeci">std::size_t avCT_CONSENSUS_PCT</div><div class="ttdoc">Percentage of nodes required to reach agreement on ledger close time.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00145">ConsensusParms.h:145</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_afd06939a6c18d834a0e35c537390b863"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#afd06939a6c18d834a0e35c537390b863">ripple::ConsensusParms::avMID_CONSENSUS_TIME</a></div><div class="ttdeci">std::size_t avMID_CONSENSUS_TIME</div><div class="ttdoc">Percentage of previous round duration before we advance.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00127">ConsensusParms.h:127</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a2a87c13cce111e3e3e9797bdaa9fdd6c"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a2a87c13cce111e3e3e9797bdaa9fdd6c">ripple::ConsensusParms::avLATE_CONSENSUS_PCT</a></div><div class="ttdeci">std::size_t avLATE_CONSENSUS_PCT</div><div class="ttdoc">Percentage of nodes that most vote yes after advancing.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00136">ConsensusParms.h:136</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a5c07d50213acde142cb02e9a8a1045a6"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a5c07d50213acde142cb02e9a8a1045a6">ripple::ConsensusParms::avSTUCK_CONSENSUS_PCT</a></div><div class="ttdeci">std::size_t avSTUCK_CONSENSUS_PCT</div><div class="ttdoc">Percentage of nodes that must vote yes after we are stuck.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00142">ConsensusParms.h:142</a></div></div>
<div class="ttc" id="aduration_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/chrono/duration.html">std::chrono::seconds</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a418547e353c28850e08e49b5831ea0db"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a418547e353c28850e08e49b5831ea0db">ripple::ConsensusParms::ledgerGRANULARITY</a></div><div class="ttdeci">std::chrono::milliseconds ledgerGRANULARITY</div><div class="ttdoc">How often we check state or change positions.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00095">ConsensusParms.h:95</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a418547e353c28850e08e49b5831ea0db"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a418547e353c28850e08e49b5831ea0db">ripple::ConsensusParms::ledgerGRANULARITY</a></div><div class="ttdeci">std::chrono::milliseconds ledgerGRANULARITY</div><div class="ttdoc">How often we check state or change positions.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00103">ConsensusParms.h:103</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a9cb822397f9939b90e97a267f02c64a0"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a9cb822397f9939b90e97a267f02c64a0">ripple::ConsensusParms::proposeINTERVAL</a></div><div class="ttdeci">std::chrono::seconds proposeINTERVAL</div><div class="ttdoc">How often we force generating a new proposal to keep ours fresh.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00067">ConsensusParms.h:67</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a3e40877fb010dfca02909d191412a773"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a3e40877fb010dfca02909d191412a773">ripple::ConsensusParms::validationVALID_WALL</a></div><div class="ttdeci">std::chrono::seconds validationVALID_WALL</div><div class="ttdoc">The duration a validation remains current after its ledger's close time.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00046">ConsensusParms.h:46</a></div></div>
<div class="ttc" id="acstddef_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/header/cstddef.html">cstddef</a></div></div>
<div class="ttc" id="achrono_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/header/chrono.html">chrono</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a6b184628a2010c17241711b652a9536a"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a6b184628a2010c17241711b652a9536a">ripple::ConsensusParms::ledgerMAX_CONSENSUS</a></div><div class="ttdeci">std::chrono::milliseconds ledgerMAX_CONSENSUS</div><div class="ttdoc">The maximum amount of time to spend pausing for laggards.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00089">ConsensusParms.h:89</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a0520be4c7ae7e150218c24cfa09fb2a3"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a0520be4c7ae7e150218c24cfa09fb2a3">ripple::ConsensusParms::minCONSENSUS_PCT</a></div><div class="ttdeci">std::size_t minCONSENSUS_PCT</div><div class="ttdoc">The percentage threshold above which we can declare consensus.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00074">ConsensusParms.h:74</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a8b3b41a8faceadfb268d0baefaaf64d3"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a8b3b41a8faceadfb268d0baefaaf64d3">ripple::ConsensusParms::ledgerMIN_CLOSE</a></div><div class="ttdeci">std::chrono::milliseconds ledgerMIN_CLOSE</div><div class="ttdoc">Minimum number of seconds to wait to ensure others have computed the LCL.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00092">ConsensusParms.h:92</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a6b184628a2010c17241711b652a9536a"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a6b184628a2010c17241711b652a9536a">ripple::ConsensusParms::ledgerMAX_CONSENSUS</a></div><div class="ttdeci">std::chrono::milliseconds ledgerMAX_CONSENSUS</div><div class="ttdoc">The maximum amount of time to spend pausing for laggards.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00097">ConsensusParms.h:97</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a0520be4c7ae7e150218c24cfa09fb2a3"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a0520be4c7ae7e150218c24cfa09fb2a3">ripple::ConsensusParms::minCONSENSUS_PCT</a></div><div class="ttdeci">std::size_t minCONSENSUS_PCT</div><div class="ttdoc">The percentage threshold and floating point factor above which we can declare consensus.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00075">ConsensusParms.h:75</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_ae2ecadd002f2cc3933a4b614801bcd12"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#ae2ecadd002f2cc3933a4b614801bcd12">ripple::ConsensusParms::minCONSENSUS_FACTOR</a></div><div class="ttdeci">float minCONSENSUS_FACTOR</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00076">ConsensusParms.h:76</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a8b3b41a8faceadfb268d0baefaaf64d3"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a8b3b41a8faceadfb268d0baefaaf64d3">ripple::ConsensusParms::ledgerMIN_CLOSE</a></div><div class="ttdeci">std::chrono::milliseconds ledgerMIN_CLOSE</div><div class="ttdoc">Minimum number of seconds to wait to ensure others have computed the LCL.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00100">ConsensusParms.h:100</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a5df0bb4c2f0d244e323f1f5e9339418d"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a5df0bb4c2f0d244e323f1f5e9339418d">ripple::ConsensusParms::proposeFRESHNESS</a></div><div class="ttdeci">std::chrono::seconds proposeFRESHNESS</div><div class="ttdoc">How long we consider a proposal fresh.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00064">ConsensusParms.h:64</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a435fdb2c3c08b84da69fdb396d55b41a"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a435fdb2c3c08b84da69fdb396d55b41a">ripple::ConsensusParms::validationVALID_EARLY</a></div><div class="ttdeci">std::chrono::seconds validationVALID_EARLY</div><div class="ttdoc">Duration pre-close in which validations are acceptable.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00061">ConsensusParms.h:61</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a004108774cadaf48b592ab0c5805b865"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a004108774cadaf48b592ab0c5805b865">ripple::ConsensusParms::avINIT_CONSENSUS_PCT</a></div><div class="ttdeci">std::size_t avINIT_CONSENSUS_PCT</div><div class="ttdoc">Percentage of nodes on our UNL that must vote yes.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00116">ConsensusParms.h:116</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_acc255d46ba3f6c893013ca5b79ba838e"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#acc255d46ba3f6c893013ca5b79ba838e">ripple::ConsensusParms::avMID_CONSENSUS_PCT</a></div><div class="ttdeci">std::size_t avMID_CONSENSUS_PCT</div><div class="ttdoc">Percentage of nodes that most vote yes after advancing.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00122">ConsensusParms.h:122</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a004108774cadaf48b592ab0c5805b865"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a004108774cadaf48b592ab0c5805b865">ripple::ConsensusParms::avINIT_CONSENSUS_PCT</a></div><div class="ttdeci">std::size_t avINIT_CONSENSUS_PCT</div><div class="ttdoc">Percentage of nodes on our UNL that must vote yes.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00124">ConsensusParms.h:124</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_acc255d46ba3f6c893013ca5b79ba838e"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#acc255d46ba3f6c893013ca5b79ba838e">ripple::ConsensusParms::avMID_CONSENSUS_PCT</a></div><div class="ttdeci">std::size_t avMID_CONSENSUS_PCT</div><div class="ttdoc">Percentage of nodes that most vote yes after advancing.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00130">ConsensusParms.h:130</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_ad5565249d382a6a16345ab6aead9395e"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#ad5565249d382a6a16345ab6aead9395e">ripple::ConsensusParms::negUNL_MIN_CONSENSUS_PCT</a></div><div class="ttdeci">std::size_t negUNL_MIN_CONSENSUS_PCT</div><div class="ttdoc">The percentage threshold and floating point factor above which we can declare consensus based on node...</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00080">ConsensusParms.h:80</a></div></div>
<div class="ttc" id="anamespaceripple_html"><div class="ttname"><a href="namespaceripple.html">ripple</a></div><div class="ttdoc">Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.</div><div class="ttdef"><b>Definition:</b> <a href="RCLCensorshipDetector_8h_source.html#l00029">RCLCensorshipDetector.h:29</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a0939202b250b3e1577d24a0c5723aaed"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a0939202b250b3e1577d24a0c5723aaed">ripple::ConsensusParms::ledgerMIN_CONSENSUS</a></div><div class="ttdeci">std::chrono::milliseconds ledgerMIN_CONSENSUS</div><div class="ttdoc">The number of seconds we wait minimum to ensure participation.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00080">ConsensusParms.h:80</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a14ceaf40f7aa169b4288a4242d890622"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a14ceaf40f7aa169b4288a4242d890622">ripple::ConsensusParms::ledgerIDLE_INTERVAL</a></div><div class="ttdeci">std::chrono::milliseconds ledgerIDLE_INTERVAL</div><div class="ttdoc">The duration a ledger may remain idle before closing.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00077">ConsensusParms.h:77</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a0939202b250b3e1577d24a0c5723aaed"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a0939202b250b3e1577d24a0c5723aaed">ripple::ConsensusParms::ledgerMIN_CONSENSUS</a></div><div class="ttdeci">std::chrono::milliseconds ledgerMIN_CONSENSUS</div><div class="ttdoc">The number of seconds we wait minimum to ensure participation.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00088">ConsensusParms.h:88</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a14ceaf40f7aa169b4288a4242d890622"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a14ceaf40f7aa169b4288a4242d890622">ripple::ConsensusParms::ledgerIDLE_INTERVAL</a></div><div class="ttdeci">std::chrono::milliseconds ledgerIDLE_INTERVAL</div><div class="ttdoc">The duration a ledger may remain idle before closing.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00085">ConsensusParms.h:85</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html"><div class="ttname"><a href="structripple_1_1ConsensusParms.html">ripple::ConsensusParms</a></div><div class="ttdoc">Consensus algorithm parameters.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00033">ConsensusParms.h:33</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_ad02cd693fc6dffda8c60be0ca778d00b"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#ad02cd693fc6dffda8c60be0ca778d00b">ripple::ConsensusParms::avSTUCK_CONSENSUS_TIME</a></div><div class="ttdeci">std::size_t avSTUCK_CONSENSUS_TIME</div><div class="ttdoc">Percentage of previous round duration before we are stuck.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00131">ConsensusParms.h:131</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_ad02cd693fc6dffda8c60be0ca778d00b"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#ad02cd693fc6dffda8c60be0ca778d00b">ripple::ConsensusParms::avSTUCK_CONSENSUS_TIME</a></div><div class="ttdeci">std::size_t avSTUCK_CONSENSUS_TIME</div><div class="ttdoc">Percentage of previous round duration before we are stuck.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00139">ConsensusParms.h:139</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a9ac9d2698f75ff667ac3a95d61bd1d7a"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a9ac9d2698f75ff667ac3a95d61bd1d7a">ripple::ConsensusParms::ConsensusParms</a></div><div class="ttdeci">ConsensusParms()=default</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_1ConsensusParms_html_a755e41d0905719463a7964d728b1d435"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a755e41d0905719463a7964d728b1d435">ripple::ConsensusParms::avLATE_CONSENSUS_TIME</a></div><div class="ttdeci">std::size_t avLATE_CONSENSUS_TIME</div><div class="ttdoc">Percentage of previous round duration before we advance.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00125">ConsensusParms.h:125</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a755e41d0905719463a7964d728b1d435"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a755e41d0905719463a7964d728b1d435">ripple::ConsensusParms::avLATE_CONSENSUS_TIME</a></div><div class="ttdeci">std::size_t avLATE_CONSENSUS_TIME</div><div class="ttdoc">Percentage of previous round duration before we advance.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00133">ConsensusParms.h:133</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_ac11c68024384b35e0c043749a251a9c9"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#ac11c68024384b35e0c043749a251a9c9">ripple::ConsensusParms::negUNL_MIN_CONSENSUS_FACTOR</a></div><div class="ttdeci">float negUNL_MIN_CONSENSUS_FACTOR</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00081">ConsensusParms.h:81</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a2b063686198b0f4bf2f46ccfe08d7bcb"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a2b063686198b0f4bf2f46ccfe08d7bcb">ripple::ConsensusParms::validationVALID_LOCAL</a></div><div class="ttdeci">std::chrono::seconds validationVALID_LOCAL</div><div class="ttdoc">Duration a validation remains current after first observed.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00054">ConsensusParms.h:54</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a21638a3d3caa47a696b645f8e6f007d6"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a21638a3d3caa47a696b645f8e6f007d6">ripple::ConsensusParms::avMIN_CONSENSUS_TIME</a></div><div class="ttdeci">std::chrono::milliseconds avMIN_CONSENSUS_TIME</div><div class="ttdoc">The minimum amount of time to consider the previous round to have taken.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00107">ConsensusParms.h:107</a></div></div>
<div class="ttc" id="astructripple_1_1ConsensusParms_html_a21638a3d3caa47a696b645f8e6f007d6"><div class="ttname"><a href="structripple_1_1ConsensusParms.html#a21638a3d3caa47a696b645f8e6f007d6">ripple::ConsensusParms::avMIN_CONSENSUS_TIME</a></div><div class="ttdeci">std::chrono::milliseconds avMIN_CONSENSUS_TIME</div><div class="ttdoc">The minimum amount of time to consider the previous round to have taken.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusParms_8h_source.html#l00115">ConsensusParms.h:115</a></div></div>
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">