mirror of
https://github.com/XRPLF/rippled.git
synced 2025-11-28 23:15:52 +00:00
deploy: 3d86b49dae
This commit is contained in:
@@ -288,7 +288,7 @@ $(function() {
|
||||
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  </div>
|
||||
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>  app_.getHashRouter().addSuppression(suppression);</div>
|
||||
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  </div>
|
||||
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  app_.overlay().send(prop);</div>
|
||||
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  app_.overlay().broadcast(prop);</div>
|
||||
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> }</div>
|
||||
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  </div>
|
||||
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="keywordtype">void</span></div>
|
||||
@@ -899,190 +899,195 @@ $(function() {
|
||||
<div class="line"><a name="l00828"></a><span class="lineno"> 828</span>  <span class="comment">// suppress it if we receive it</span></div>
|
||||
<div class="line"><a name="l00829"></a><span class="lineno"> 829</span>  app_.getHashRouter().addSuppression(</div>
|
||||
<div class="line"><a name="l00830"></a><span class="lineno"> 830</span>  <a class="code" href="namespaceripple.html#ae3f5bc352766a1a8dbf5270eb7dbc2e7">sha512Half</a>(<a class="code" href="namespaceripple.html#aabe37451093c21757855542d68fba3ce">makeSlice</a>(v-><a class="code" href="classripple_1_1STValidation.html#a3ce9844ef8dc996ccd4091bb74136e98">getSerialized</a>())));</div>
|
||||
<div class="line"><a name="l00831"></a><span class="lineno"> 831</span>  <a class="code" href="namespaceripple.html#aeba5e3c78f4db7d52eea3bbeb75fb08a">handleNewValidation</a>(app_, v, <span class="stringliteral">"local"</span>);</div>
|
||||
<div class="line"><a name="l00832"></a><span class="lineno"> 832</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/container/vector.html">Blob</a> <a class="code" href="namespaceripple.html#ad5143ceada01141772ae4aab984f94bdaa617908b172c473cb8e8cda059e55bf0">validation</a> = v-><a class="code" href="classripple_1_1STValidation.html#a3ce9844ef8dc996ccd4091bb74136e98">getSerialized</a>();</div>
|
||||
<div class="line"><a name="l00833"></a><span class="lineno"> 833</span>  protocol::TMValidation val;</div>
|
||||
<div class="line"><a name="l00834"></a><span class="lineno"> 834</span>  val.set_validation(&<a class="code" href="namespaceripple.html#ad5143ceada01141772ae4aab984f94bdaa617908b172c473cb8e8cda059e55bf0">validation</a>[0], <a class="code" href="namespaceripple.html#ad5143ceada01141772ae4aab984f94bdaa617908b172c473cb8e8cda059e55bf0">validation</a>.size());</div>
|
||||
<div class="line"><a name="l00835"></a><span class="lineno"> 835</span>  <span class="comment">// Send signed validation to all of our directly connected peers</span></div>
|
||||
<div class="line"><a name="l00836"></a><span class="lineno"> 836</span>  app_.overlay().send(val);</div>
|
||||
<div class="line"><a name="l00837"></a><span class="lineno"> 837</span> }</div>
|
||||
<div class="line"><a name="l00838"></a><span class="lineno"> 838</span>  </div>
|
||||
<div class="line"><a name="l00839"></a><span class="lineno"> 839</span> <span class="keywordtype">void</span></div>
|
||||
<div class="line"><a name="l00840"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus_1_1Adaptor.html#a602cb9acaeb931bb5a7b5a74de5f5280"> 840</a></span> <a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#a602cb9acaeb931bb5a7b5a74de5f5280">RCLConsensus::Adaptor::onModeChange</a>(<a class="code" href="namespaceripple.html#a33f8b6e68b5f63faf2e9755cc251563e">ConsensusMode</a> before, <a class="code" href="namespaceripple.html#a33f8b6e68b5f63faf2e9755cc251563e">ConsensusMode</a> <a class="code" href="namespaceripple.html#aebcc26ebe20ddcd3bcbfd5402e0acb89">after</a>)</div>
|
||||
<div class="line"><a name="l00841"></a><span class="lineno"> 841</span> {</div>
|
||||
<div class="line"><a name="l00842"></a><span class="lineno"> 842</span>  JLOG(<a class="code" href="classripple_1_1RCLConsensus.html#aec02fa9195e2a9f090c95b55711e2ec7">j_</a>.<a class="code" href="classbeast_1_1Journal.html#a87d6bd59020d94110027dcab3d9e3357">info</a>()) << <span class="stringliteral">"Consensus mode change before="</span> << <a class="code" href="namespaceripple.html#a96888695e8d79474e080c334f149e30a">to_string</a>(before)</div>
|
||||
<div class="line"><a name="l00843"></a><span class="lineno"> 843</span>  << <span class="stringliteral">", after="</span> << <a class="code" href="namespaceripple.html#a96888695e8d79474e080c334f149e30a">to_string</a>(<a class="code" href="namespaceripple.html#aebcc26ebe20ddcd3bcbfd5402e0acb89">after</a>);</div>
|
||||
<div class="line"><a name="l00844"></a><span class="lineno"> 844</span>  </div>
|
||||
<div class="line"><a name="l00845"></a><span class="lineno"> 845</span>  <span class="comment">// If we were proposing but aren't any longer, we need to reset the</span></div>
|
||||
<div class="line"><a name="l00846"></a><span class="lineno"> 846</span>  <span class="comment">// censorship tracking to avoid bogus warnings.</span></div>
|
||||
<div class="line"><a name="l00847"></a><span class="lineno"> 847</span>  <span class="keywordflow">if</span> ((before == <a class="code" href="namespaceripple.html#a33f8b6e68b5f63faf2e9755cc251563ea80dcf57f5ecd4be3cbfa37eccbcb6f44">ConsensusMode::proposing</a> ||</div>
|
||||
<div class="line"><a name="l00848"></a><span class="lineno"> 848</span>  before == <a class="code" href="namespaceripple.html#a33f8b6e68b5f63faf2e9755cc251563eaea5234685f43dcab142e132c0e7be2ce">ConsensusMode::observing</a>) &&</div>
|
||||
<div class="line"><a name="l00849"></a><span class="lineno"> 849</span>  before != <a class="code" href="namespaceripple.html#aebcc26ebe20ddcd3bcbfd5402e0acb89">after</a>)</div>
|
||||
<div class="line"><a name="l00850"></a><span class="lineno"> 850</span>  censorshipDetector_.reset();</div>
|
||||
<div class="line"><a name="l00851"></a><span class="lineno"> 851</span>  </div>
|
||||
<div class="line"><a name="l00852"></a><span class="lineno"> 852</span>  mode_ = <a class="code" href="namespaceripple.html#aebcc26ebe20ddcd3bcbfd5402e0acb89">after</a>;</div>
|
||||
<div class="line"><a name="l00853"></a><span class="lineno"> 853</span> }</div>
|
||||
<div class="line"><a name="l00854"></a><span class="lineno"> 854</span>  </div>
|
||||
<div class="line"><a name="l00855"></a><span class="lineno"> 855</span> <a class="code" href="classJson_1_1Value.html">Json::Value</a></div>
|
||||
<div class="line"><a name="l00856"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus.html#acdab4291925cbabf861b8019c76355ea"> 856</a></span> <a class="code" href="classripple_1_1RCLConsensus.html#acdab4291925cbabf861b8019c76355ea">RCLConsensus::getJson</a>(<span class="keywordtype">bool</span> full)<span class="keyword"> const</span></div>
|
||||
<div class="line"><a name="l00857"></a><span class="lineno"> 857</span> <span class="keyword"></span>{</div>
|
||||
<div class="line"><a name="l00858"></a><span class="lineno"> 858</span>  <a class="code" href="classJson_1_1Value.html">Json::Value</a> ret;</div>
|
||||
<div class="line"><a name="l00859"></a><span class="lineno"> 859</span>  {</div>
|
||||
<div class="line"><a name="l00860"></a><span class="lineno"> 860</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/thread/lock_guard.html">std::lock_guard</a> _{<a class="code" href="classripple_1_1RCLConsensus.html#a84d76715067b0c309c57b9e19d0ed2bd">mutex_</a>};</div>
|
||||
<div class="line"><a name="l00861"></a><span class="lineno"> 861</span>  ret = <a class="code" href="classripple_1_1RCLConsensus.html#a95eae2c34b7b917b097947ff42e9c94c">consensus_</a>.getJson(full);</div>
|
||||
<div class="line"><a name="l00862"></a><span class="lineno"> 862</span>  }</div>
|
||||
<div class="line"><a name="l00863"></a><span class="lineno"> 863</span>  ret[<span class="stringliteral">"validating"</span>] = <a class="code" href="classripple_1_1RCLConsensus.html#abc9a72a85632483bb04f03f00af63db3">adaptor_</a>.<a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#a52d6c6005bc8066ec68d7e81038a6906">validating</a>();</div>
|
||||
<div class="line"><a name="l00864"></a><span class="lineno"> 864</span>  <span class="keywordflow">return</span> ret;</div>
|
||||
<div class="line"><a name="l00865"></a><span class="lineno"> 865</span> }</div>
|
||||
<div class="line"><a name="l00866"></a><span class="lineno"> 866</span>  </div>
|
||||
<div class="line"><a name="l00867"></a><span class="lineno"> 867</span> <span class="keywordtype">void</span></div>
|
||||
<div class="line"><a name="l00868"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus.html#a66f29b3d7bf4aedbc6b6af362572e91c"> 868</a></span> <a class="code" href="classripple_1_1RCLConsensus.html#a66f29b3d7bf4aedbc6b6af362572e91c">RCLConsensus::timerEntry</a>(<a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/time_point.html">NetClock::time_point</a> <span class="keyword">const</span>& now)</div>
|
||||
<div class="line"><a name="l00869"></a><span class="lineno"> 869</span> {</div>
|
||||
<div class="line"><a name="l00870"></a><span class="lineno"> 870</span>  <span class="keywordflow">try</span></div>
|
||||
<div class="line"><a name="l00871"></a><span class="lineno"> 871</span>  {</div>
|
||||
<div class="line"><a name="l00872"></a><span class="lineno"> 872</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/thread/lock_guard.html">std::lock_guard</a> _{<a class="code" href="classripple_1_1RCLConsensus.html#a84d76715067b0c309c57b9e19d0ed2bd">mutex_</a>};</div>
|
||||
<div class="line"><a name="l00873"></a><span class="lineno"> 873</span>  <a class="code" href="classripple_1_1RCLConsensus.html#a95eae2c34b7b917b097947ff42e9c94c">consensus_</a>.timerEntry(now);</div>
|
||||
<div class="line"><a name="l00874"></a><span class="lineno"> 874</span>  }</div>
|
||||
<div class="line"><a name="l00875"></a><span class="lineno"> 875</span>  <span class="keywordflow">catch</span> (<a class="code" href="classripple_1_1SHAMapMissingNode.html">SHAMapMissingNode</a> <span class="keyword">const</span>& mn)</div>
|
||||
<div class="line"><a name="l00831"></a><span class="lineno"> 831</span>  </div>
|
||||
<div class="line"><a name="l00832"></a><span class="lineno"> 832</span>  <a class="code" href="namespaceripple.html#a5be750120b2129bbf4ec4fccb592de4c">handleNewValidation</a>(app_, v, <span class="stringliteral">"local"</span>);</div>
|
||||
<div class="line"><a name="l00833"></a><span class="lineno"> 833</span>  </div>
|
||||
<div class="line"><a name="l00834"></a><span class="lineno"> 834</span>  <span class="comment">// Broadcast to all our peers:</span></div>
|
||||
<div class="line"><a name="l00835"></a><span class="lineno"> 835</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/container/vector.html">Blob</a> <a class="code" href="namespaceripple.html#ad5143ceada01141772ae4aab984f94bdaa617908b172c473cb8e8cda059e55bf0">validation</a> = v-><a class="code" href="classripple_1_1STValidation.html#a3ce9844ef8dc996ccd4091bb74136e98">getSerialized</a>();</div>
|
||||
<div class="line"><a name="l00836"></a><span class="lineno"> 836</span>  protocol::TMValidation val;</div>
|
||||
<div class="line"><a name="l00837"></a><span class="lineno"> 837</span>  val.set_validation(&<a class="code" href="namespaceripple.html#ad5143ceada01141772ae4aab984f94bdaa617908b172c473cb8e8cda059e55bf0">validation</a>[0], <a class="code" href="namespaceripple.html#ad5143ceada01141772ae4aab984f94bdaa617908b172c473cb8e8cda059e55bf0">validation</a>.size());</div>
|
||||
<div class="line"><a name="l00838"></a><span class="lineno"> 838</span>  app_.overlay().broadcast(val);</div>
|
||||
<div class="line"><a name="l00839"></a><span class="lineno"> 839</span>  </div>
|
||||
<div class="line"><a name="l00840"></a><span class="lineno"> 840</span>  <span class="comment">// Publish to all our subscribers:</span></div>
|
||||
<div class="line"><a name="l00841"></a><span class="lineno"> 841</span>  app_.getOPs().pubValidation(v);</div>
|
||||
<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> }</div>
|
||||
<div class="line"><a name="l00843"></a><span class="lineno"> 843</span>  </div>
|
||||
<div class="line"><a name="l00844"></a><span class="lineno"> 844</span> <span class="keywordtype">void</span></div>
|
||||
<div class="line"><a name="l00845"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus_1_1Adaptor.html#a602cb9acaeb931bb5a7b5a74de5f5280"> 845</a></span> <a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#a602cb9acaeb931bb5a7b5a74de5f5280">RCLConsensus::Adaptor::onModeChange</a>(<a class="code" href="namespaceripple.html#a33f8b6e68b5f63faf2e9755cc251563e">ConsensusMode</a> before, <a class="code" href="namespaceripple.html#a33f8b6e68b5f63faf2e9755cc251563e">ConsensusMode</a> <a class="code" href="namespaceripple.html#aebcc26ebe20ddcd3bcbfd5402e0acb89">after</a>)</div>
|
||||
<div class="line"><a name="l00846"></a><span class="lineno"> 846</span> {</div>
|
||||
<div class="line"><a name="l00847"></a><span class="lineno"> 847</span>  JLOG(<a class="code" href="classripple_1_1RCLConsensus.html#aec02fa9195e2a9f090c95b55711e2ec7">j_</a>.<a class="code" href="classbeast_1_1Journal.html#a87d6bd59020d94110027dcab3d9e3357">info</a>()) << <span class="stringliteral">"Consensus mode change before="</span> << <a class="code" href="namespaceripple.html#a96888695e8d79474e080c334f149e30a">to_string</a>(before)</div>
|
||||
<div class="line"><a name="l00848"></a><span class="lineno"> 848</span>  << <span class="stringliteral">", after="</span> << <a class="code" href="namespaceripple.html#a96888695e8d79474e080c334f149e30a">to_string</a>(<a class="code" href="namespaceripple.html#aebcc26ebe20ddcd3bcbfd5402e0acb89">after</a>);</div>
|
||||
<div class="line"><a name="l00849"></a><span class="lineno"> 849</span>  </div>
|
||||
<div class="line"><a name="l00850"></a><span class="lineno"> 850</span>  <span class="comment">// If we were proposing but aren't any longer, we need to reset the</span></div>
|
||||
<div class="line"><a name="l00851"></a><span class="lineno"> 851</span>  <span class="comment">// censorship tracking to avoid bogus warnings.</span></div>
|
||||
<div class="line"><a name="l00852"></a><span class="lineno"> 852</span>  <span class="keywordflow">if</span> ((before == <a class="code" href="namespaceripple.html#a33f8b6e68b5f63faf2e9755cc251563ea80dcf57f5ecd4be3cbfa37eccbcb6f44">ConsensusMode::proposing</a> ||</div>
|
||||
<div class="line"><a name="l00853"></a><span class="lineno"> 853</span>  before == <a class="code" href="namespaceripple.html#a33f8b6e68b5f63faf2e9755cc251563eaea5234685f43dcab142e132c0e7be2ce">ConsensusMode::observing</a>) &&</div>
|
||||
<div class="line"><a name="l00854"></a><span class="lineno"> 854</span>  before != <a class="code" href="namespaceripple.html#aebcc26ebe20ddcd3bcbfd5402e0acb89">after</a>)</div>
|
||||
<div class="line"><a name="l00855"></a><span class="lineno"> 855</span>  censorshipDetector_.reset();</div>
|
||||
<div class="line"><a name="l00856"></a><span class="lineno"> 856</span>  </div>
|
||||
<div class="line"><a name="l00857"></a><span class="lineno"> 857</span>  mode_ = <a class="code" href="namespaceripple.html#aebcc26ebe20ddcd3bcbfd5402e0acb89">after</a>;</div>
|
||||
<div class="line"><a name="l00858"></a><span class="lineno"> 858</span> }</div>
|
||||
<div class="line"><a name="l00859"></a><span class="lineno"> 859</span>  </div>
|
||||
<div class="line"><a name="l00860"></a><span class="lineno"> 860</span> <a class="code" href="classJson_1_1Value.html">Json::Value</a></div>
|
||||
<div class="line"><a name="l00861"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus.html#acdab4291925cbabf861b8019c76355ea"> 861</a></span> <a class="code" href="classripple_1_1RCLConsensus.html#acdab4291925cbabf861b8019c76355ea">RCLConsensus::getJson</a>(<span class="keywordtype">bool</span> full)<span class="keyword"> const</span></div>
|
||||
<div class="line"><a name="l00862"></a><span class="lineno"> 862</span> <span class="keyword"></span>{</div>
|
||||
<div class="line"><a name="l00863"></a><span class="lineno"> 863</span>  <a class="code" href="classJson_1_1Value.html">Json::Value</a> ret;</div>
|
||||
<div class="line"><a name="l00864"></a><span class="lineno"> 864</span>  {</div>
|
||||
<div class="line"><a name="l00865"></a><span class="lineno"> 865</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/thread/lock_guard.html">std::lock_guard</a> _{<a class="code" href="classripple_1_1RCLConsensus.html#a84d76715067b0c309c57b9e19d0ed2bd">mutex_</a>};</div>
|
||||
<div class="line"><a name="l00866"></a><span class="lineno"> 866</span>  ret = <a class="code" href="classripple_1_1RCLConsensus.html#a95eae2c34b7b917b097947ff42e9c94c">consensus_</a>.getJson(full);</div>
|
||||
<div class="line"><a name="l00867"></a><span class="lineno"> 867</span>  }</div>
|
||||
<div class="line"><a name="l00868"></a><span class="lineno"> 868</span>  ret[<span class="stringliteral">"validating"</span>] = <a class="code" href="classripple_1_1RCLConsensus.html#abc9a72a85632483bb04f03f00af63db3">adaptor_</a>.<a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#a52d6c6005bc8066ec68d7e81038a6906">validating</a>();</div>
|
||||
<div class="line"><a name="l00869"></a><span class="lineno"> 869</span>  <span class="keywordflow">return</span> ret;</div>
|
||||
<div class="line"><a name="l00870"></a><span class="lineno"> 870</span> }</div>
|
||||
<div class="line"><a name="l00871"></a><span class="lineno"> 871</span>  </div>
|
||||
<div class="line"><a name="l00872"></a><span class="lineno"> 872</span> <span class="keywordtype">void</span></div>
|
||||
<div class="line"><a name="l00873"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus.html#a66f29b3d7bf4aedbc6b6af362572e91c"> 873</a></span> <a class="code" href="classripple_1_1RCLConsensus.html#a66f29b3d7bf4aedbc6b6af362572e91c">RCLConsensus::timerEntry</a>(<a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/time_point.html">NetClock::time_point</a> <span class="keyword">const</span>& now)</div>
|
||||
<div class="line"><a name="l00874"></a><span class="lineno"> 874</span> {</div>
|
||||
<div class="line"><a name="l00875"></a><span class="lineno"> 875</span>  <span class="keywordflow">try</span></div>
|
||||
<div class="line"><a name="l00876"></a><span class="lineno"> 876</span>  {</div>
|
||||
<div class="line"><a name="l00877"></a><span class="lineno"> 877</span>  <span class="comment">// This should never happen</span></div>
|
||||
<div class="line"><a name="l00878"></a><span class="lineno"> 878</span>  JLOG(<a class="code" href="classripple_1_1RCLConsensus.html#aec02fa9195e2a9f090c95b55711e2ec7">j_</a>.<a class="code" href="classbeast_1_1Journal.html#a49b0713e65bb8e2c51b76fbf16252afe">error</a>()) << <span class="stringliteral">"During consensus timerEntry: "</span> << mn.<a class="codeRef" href="http://en.cppreference.com/w/cpp/error/exception/what.html">what</a>();</div>
|
||||
<div class="line"><a name="l00879"></a><span class="lineno"> 879</span>  <a class="code" href="namespaceripple.html#ad99788f1aca6ce31a1fe8365eee1bba3">Rethrow</a>();</div>
|
||||
<div class="line"><a name="l00880"></a><span class="lineno"> 880</span>  }</div>
|
||||
<div class="line"><a name="l00881"></a><span class="lineno"> 881</span> }</div>
|
||||
<div class="line"><a name="l00882"></a><span class="lineno"> 882</span>  </div>
|
||||
<div class="line"><a name="l00883"></a><span class="lineno"> 883</span> <span class="keywordtype">void</span></div>
|
||||
<div class="line"><a name="l00884"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus.html#a269eadc254a964bcd8d79876420c379b"> 884</a></span> <a class="code" href="classripple_1_1RCLConsensus.html#a269eadc254a964bcd8d79876420c379b">RCLConsensus::gotTxSet</a>(<a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/time_point.html">NetClock::time_point</a> <span class="keyword">const</span>& now, <a class="code" href="classripple_1_1RCLTxSet.html">RCLTxSet</a> <span class="keyword">const</span>& txSet)</div>
|
||||
<div class="line"><a name="l00885"></a><span class="lineno"> 885</span> {</div>
|
||||
<div class="line"><a name="l00886"></a><span class="lineno"> 886</span>  <span class="keywordflow">try</span></div>
|
||||
<div class="line"><a name="l00887"></a><span class="lineno"> 887</span>  {</div>
|
||||
<div class="line"><a name="l00888"></a><span class="lineno"> 888</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/thread/lock_guard.html">std::lock_guard</a> _{<a class="code" href="classripple_1_1RCLConsensus.html#a84d76715067b0c309c57b9e19d0ed2bd">mutex_</a>};</div>
|
||||
<div class="line"><a name="l00889"></a><span class="lineno"> 889</span>  <a class="code" href="classripple_1_1RCLConsensus.html#a95eae2c34b7b917b097947ff42e9c94c">consensus_</a>.gotTxSet(now, txSet);</div>
|
||||
<div class="line"><a name="l00890"></a><span class="lineno"> 890</span>  }</div>
|
||||
<div class="line"><a name="l00891"></a><span class="lineno"> 891</span>  <span class="keywordflow">catch</span> (<a class="code" href="classripple_1_1SHAMapMissingNode.html">SHAMapMissingNode</a> <span class="keyword">const</span>& mn)</div>
|
||||
<div class="line"><a name="l00877"></a><span class="lineno"> 877</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/thread/lock_guard.html">std::lock_guard</a> _{<a class="code" href="classripple_1_1RCLConsensus.html#a84d76715067b0c309c57b9e19d0ed2bd">mutex_</a>};</div>
|
||||
<div class="line"><a name="l00878"></a><span class="lineno"> 878</span>  <a class="code" href="classripple_1_1RCLConsensus.html#a95eae2c34b7b917b097947ff42e9c94c">consensus_</a>.timerEntry(now);</div>
|
||||
<div class="line"><a name="l00879"></a><span class="lineno"> 879</span>  }</div>
|
||||
<div class="line"><a name="l00880"></a><span class="lineno"> 880</span>  <span class="keywordflow">catch</span> (<a class="code" href="classripple_1_1SHAMapMissingNode.html">SHAMapMissingNode</a> <span class="keyword">const</span>& mn)</div>
|
||||
<div class="line"><a name="l00881"></a><span class="lineno"> 881</span>  {</div>
|
||||
<div class="line"><a name="l00882"></a><span class="lineno"> 882</span>  <span class="comment">// This should never happen</span></div>
|
||||
<div class="line"><a name="l00883"></a><span class="lineno"> 883</span>  JLOG(<a class="code" href="classripple_1_1RCLConsensus.html#aec02fa9195e2a9f090c95b55711e2ec7">j_</a>.<a class="code" href="classbeast_1_1Journal.html#a49b0713e65bb8e2c51b76fbf16252afe">error</a>()) << <span class="stringliteral">"During consensus timerEntry: "</span> << mn.<a class="codeRef" href="http://en.cppreference.com/w/cpp/error/exception/what.html">what</a>();</div>
|
||||
<div class="line"><a name="l00884"></a><span class="lineno"> 884</span>  <a class="code" href="namespaceripple.html#ad99788f1aca6ce31a1fe8365eee1bba3">Rethrow</a>();</div>
|
||||
<div class="line"><a name="l00885"></a><span class="lineno"> 885</span>  }</div>
|
||||
<div class="line"><a name="l00886"></a><span class="lineno"> 886</span> }</div>
|
||||
<div class="line"><a name="l00887"></a><span class="lineno"> 887</span>  </div>
|
||||
<div class="line"><a name="l00888"></a><span class="lineno"> 888</span> <span class="keywordtype">void</span></div>
|
||||
<div class="line"><a name="l00889"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus.html#a269eadc254a964bcd8d79876420c379b"> 889</a></span> <a class="code" href="classripple_1_1RCLConsensus.html#a269eadc254a964bcd8d79876420c379b">RCLConsensus::gotTxSet</a>(<a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/time_point.html">NetClock::time_point</a> <span class="keyword">const</span>& now, <a class="code" href="classripple_1_1RCLTxSet.html">RCLTxSet</a> <span class="keyword">const</span>& txSet)</div>
|
||||
<div class="line"><a name="l00890"></a><span class="lineno"> 890</span> {</div>
|
||||
<div class="line"><a name="l00891"></a><span class="lineno"> 891</span>  <span class="keywordflow">try</span></div>
|
||||
<div class="line"><a name="l00892"></a><span class="lineno"> 892</span>  {</div>
|
||||
<div class="line"><a name="l00893"></a><span class="lineno"> 893</span>  <span class="comment">// This should never happen</span></div>
|
||||
<div class="line"><a name="l00894"></a><span class="lineno"> 894</span>  JLOG(<a class="code" href="classripple_1_1RCLConsensus.html#aec02fa9195e2a9f090c95b55711e2ec7">j_</a>.<a class="code" href="classbeast_1_1Journal.html#a49b0713e65bb8e2c51b76fbf16252afe">error</a>()) << <span class="stringliteral">"During consensus gotTxSet: "</span> << mn.<a class="codeRef" href="http://en.cppreference.com/w/cpp/error/exception/what.html">what</a>();</div>
|
||||
<div class="line"><a name="l00895"></a><span class="lineno"> 895</span>  <a class="code" href="namespaceripple.html#ad99788f1aca6ce31a1fe8365eee1bba3">Rethrow</a>();</div>
|
||||
<div class="line"><a name="l00896"></a><span class="lineno"> 896</span>  }</div>
|
||||
<div class="line"><a name="l00897"></a><span class="lineno"> 897</span> }</div>
|
||||
<div class="line"><a name="l00898"></a><span class="lineno"> 898</span>  </div>
|
||||
<div class="line"><a name="l00900"></a><span class="lineno"> 900</span>  </div>
|
||||
<div class="line"><a name="l00901"></a><span class="lineno"> 901</span> <span class="keywordtype">void</span></div>
|
||||
<div class="line"><a name="l00902"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus.html#a61e43340f35a266ed3bb875ad8f6fd3f"> 902</a></span> <a class="code" href="classripple_1_1RCLConsensus.html#a61e43340f35a266ed3bb875ad8f6fd3f">RCLConsensus::simulate</a>(</div>
|
||||
<div class="line"><a name="l00903"></a><span class="lineno"> 903</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/time_point.html">NetClock::time_point</a> <span class="keyword">const</span>& now,</div>
|
||||
<div class="line"><a name="l00904"></a><span class="lineno"> 904</span>  boost::optional<std::chrono::milliseconds> consensusDelay)</div>
|
||||
<div class="line"><a name="l00905"></a><span class="lineno"> 905</span> {</div>
|
||||
<div class="line"><a name="l00906"></a><span class="lineno"> 906</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/thread/lock_guard.html">std::lock_guard</a> _{<a class="code" href="classripple_1_1RCLConsensus.html#a84d76715067b0c309c57b9e19d0ed2bd">mutex_</a>};</div>
|
||||
<div class="line"><a name="l00907"></a><span class="lineno"> 907</span>  <a class="code" href="classripple_1_1RCLConsensus.html#a95eae2c34b7b917b097947ff42e9c94c">consensus_</a>.simulate(now, consensusDelay);</div>
|
||||
<div class="line"><a name="l00908"></a><span class="lineno"> 908</span> }</div>
|
||||
<div class="line"><a name="l00909"></a><span class="lineno"> 909</span>  </div>
|
||||
<div class="line"><a name="l00910"></a><span class="lineno"> 910</span> <span class="keywordtype">bool</span></div>
|
||||
<div class="line"><a name="l00911"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus.html#aa0e46b668adf5d791806adf85d852c11"> 911</a></span> <a class="code" href="classripple_1_1RCLConsensus.html#aa0e46b668adf5d791806adf85d852c11">RCLConsensus::peerProposal</a>(</div>
|
||||
<div class="line"><a name="l00912"></a><span class="lineno"> 912</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/time_point.html">NetClock::time_point</a> <span class="keyword">const</span>& now,</div>
|
||||
<div class="line"><a name="l00913"></a><span class="lineno"> 913</span>  <a class="code" href="classripple_1_1RCLCxPeerPos.html">RCLCxPeerPos</a> <span class="keyword">const</span>& newProposal)</div>
|
||||
<div class="line"><a name="l00914"></a><span class="lineno"> 914</span> {</div>
|
||||
<div class="line"><a name="l00915"></a><span class="lineno"> 915</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/thread/lock_guard.html">std::lock_guard</a> _{<a class="code" href="classripple_1_1RCLConsensus.html#a84d76715067b0c309c57b9e19d0ed2bd">mutex_</a>};</div>
|
||||
<div class="line"><a name="l00916"></a><span class="lineno"> 916</span>  <span class="keywordflow">return</span> <a class="code" href="classripple_1_1RCLConsensus.html#a95eae2c34b7b917b097947ff42e9c94c">consensus_</a>.peerProposal(now, newProposal);</div>
|
||||
<div class="line"><a name="l00917"></a><span class="lineno"> 917</span> }</div>
|
||||
<div class="line"><a name="l00918"></a><span class="lineno"> 918</span>  </div>
|
||||
<div class="line"><a name="l00919"></a><span class="lineno"> 919</span> <span class="keywordtype">bool</span></div>
|
||||
<div class="line"><a name="l00920"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus_1_1Adaptor.html#ae5b558328de659c1f1a4233e43d23024"> 920</a></span> <a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#ae5b558328de659c1f1a4233e43d23024">RCLConsensus::Adaptor::preStartRound</a>(<a class="code" href="classripple_1_1RCLCxLedger.html">RCLCxLedger</a> <span class="keyword">const</span>& prevLgr)</div>
|
||||
<div class="line"><a name="l00921"></a><span class="lineno"> 921</span> {</div>
|
||||
<div class="line"><a name="l00922"></a><span class="lineno"> 922</span>  <span class="comment">// We have a key, we do not want out of sync validations after a restart</span></div>
|
||||
<div class="line"><a name="l00923"></a><span class="lineno"> 923</span>  <span class="comment">// and are not amendment blocked.</span></div>
|
||||
<div class="line"><a name="l00924"></a><span class="lineno"> 924</span>  validating_ = valPublic_.size() != 0 &&</div>
|
||||
<div class="line"><a name="l00925"></a><span class="lineno"> 925</span>  prevLgr.<a class="code" href="classripple_1_1RCLCxLedger.html#a633355f2ccfe0511fe0ed6124476229a">seq</a>() >= app_.getMaxDisallowedLedger() &&</div>
|
||||
<div class="line"><a name="l00926"></a><span class="lineno"> 926</span>  !app_.getOPs().isAmendmentBlocked();</div>
|
||||
<div class="line"><a name="l00927"></a><span class="lineno"> 927</span>  </div>
|
||||
<div class="line"><a name="l00928"></a><span class="lineno"> 928</span>  <span class="comment">// If we are not running in standalone mode and there's a configured UNL,</span></div>
|
||||
<div class="line"><a name="l00929"></a><span class="lineno"> 929</span>  <span class="comment">// check to make sure that it's not expired.</span></div>
|
||||
<div class="line"><a name="l00930"></a><span class="lineno"> 930</span>  <span class="keywordflow">if</span> (validating_ && !app_.config().standalone() && app_.validators().count())</div>
|
||||
<div class="line"><a name="l00931"></a><span class="lineno"> 931</span>  {</div>
|
||||
<div class="line"><a name="l00932"></a><span class="lineno"> 932</span>  <span class="keyword">auto</span> <span class="keyword">const</span> when = app_.validators().expires();</div>
|
||||
<div class="line"><a name="l00933"></a><span class="lineno"> 933</span>  </div>
|
||||
<div class="line"><a name="l00934"></a><span class="lineno"> 934</span>  <span class="keywordflow">if</span> (!when || *when < app_.timeKeeper().now())</div>
|
||||
<div class="line"><a name="l00935"></a><span class="lineno"> 935</span>  {</div>
|
||||
<div class="line"><a name="l00936"></a><span class="lineno"> 936</span>  JLOG(<a class="code" href="classripple_1_1RCLConsensus.html#aec02fa9195e2a9f090c95b55711e2ec7">j_</a>.<a class="code" href="classbeast_1_1Journal.html#a49b0713e65bb8e2c51b76fbf16252afe">error</a>()) << <span class="stringliteral">"Voluntarily bowing out of consensus process "</span></div>
|
||||
<div class="line"><a name="l00937"></a><span class="lineno"> 937</span>  <span class="stringliteral">"because of an expired validator list."</span>;</div>
|
||||
<div class="line"><a name="l00938"></a><span class="lineno"> 938</span>  validating_ = <span class="keyword">false</span>;</div>
|
||||
<div class="line"><a name="l00939"></a><span class="lineno"> 939</span>  }</div>
|
||||
<div class="line"><a name="l00940"></a><span class="lineno"> 940</span>  }</div>
|
||||
<div class="line"><a name="l00941"></a><span class="lineno"> 941</span>  </div>
|
||||
<div class="line"><a name="l00942"></a><span class="lineno"> 942</span>  <span class="keyword">const</span> <span class="keywordtype">bool</span> synced = app_.getOPs().getOperatingMode() == <a class="code" href="namespaceripple.html#a597325d7385ff9c19686e14e5bead510aba7de5bc6888294e5884b024a4c894f1">OperatingMode::FULL</a>;</div>
|
||||
<div class="line"><a name="l00943"></a><span class="lineno"> 943</span>  </div>
|
||||
<div class="line"><a name="l00944"></a><span class="lineno"> 944</span>  <span class="keywordflow">if</span> (validating_)</div>
|
||||
<div class="line"><a name="l00945"></a><span class="lineno"> 945</span>  {</div>
|
||||
<div class="line"><a name="l00946"></a><span class="lineno"> 946</span>  JLOG(<a class="code" href="classripple_1_1RCLConsensus.html#aec02fa9195e2a9f090c95b55711e2ec7">j_</a>.<a class="code" href="classbeast_1_1Journal.html#a87d6bd59020d94110027dcab3d9e3357">info</a>()) << <span class="stringliteral">"Entering consensus process, validating, synced="</span></div>
|
||||
<div class="line"><a name="l00947"></a><span class="lineno"> 947</span>  << (synced ? <span class="stringliteral">"yes"</span> : <span class="stringliteral">"no"</span>);</div>
|
||||
<div class="line"><a name="l00948"></a><span class="lineno"> 948</span>  }</div>
|
||||
<div class="line"><a name="l00949"></a><span class="lineno"> 949</span>  <span class="keywordflow">else</span></div>
|
||||
<div class="line"><a name="l00893"></a><span class="lineno"> 893</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/thread/lock_guard.html">std::lock_guard</a> _{<a class="code" href="classripple_1_1RCLConsensus.html#a84d76715067b0c309c57b9e19d0ed2bd">mutex_</a>};</div>
|
||||
<div class="line"><a name="l00894"></a><span class="lineno"> 894</span>  <a class="code" href="classripple_1_1RCLConsensus.html#a95eae2c34b7b917b097947ff42e9c94c">consensus_</a>.gotTxSet(now, txSet);</div>
|
||||
<div class="line"><a name="l00895"></a><span class="lineno"> 895</span>  }</div>
|
||||
<div class="line"><a name="l00896"></a><span class="lineno"> 896</span>  <span class="keywordflow">catch</span> (<a class="code" href="classripple_1_1SHAMapMissingNode.html">SHAMapMissingNode</a> <span class="keyword">const</span>& mn)</div>
|
||||
<div class="line"><a name="l00897"></a><span class="lineno"> 897</span>  {</div>
|
||||
<div class="line"><a name="l00898"></a><span class="lineno"> 898</span>  <span class="comment">// This should never happen</span></div>
|
||||
<div class="line"><a name="l00899"></a><span class="lineno"> 899</span>  JLOG(<a class="code" href="classripple_1_1RCLConsensus.html#aec02fa9195e2a9f090c95b55711e2ec7">j_</a>.<a class="code" href="classbeast_1_1Journal.html#a49b0713e65bb8e2c51b76fbf16252afe">error</a>()) << <span class="stringliteral">"During consensus gotTxSet: "</span> << mn.<a class="codeRef" href="http://en.cppreference.com/w/cpp/error/exception/what.html">what</a>();</div>
|
||||
<div class="line"><a name="l00900"></a><span class="lineno"> 900</span>  <a class="code" href="namespaceripple.html#ad99788f1aca6ce31a1fe8365eee1bba3">Rethrow</a>();</div>
|
||||
<div class="line"><a name="l00901"></a><span class="lineno"> 901</span>  }</div>
|
||||
<div class="line"><a name="l00902"></a><span class="lineno"> 902</span> }</div>
|
||||
<div class="line"><a name="l00903"></a><span class="lineno"> 903</span>  </div>
|
||||
<div class="line"><a name="l00905"></a><span class="lineno"> 905</span>  </div>
|
||||
<div class="line"><a name="l00906"></a><span class="lineno"> 906</span> <span class="keywordtype">void</span></div>
|
||||
<div class="line"><a name="l00907"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus.html#a61e43340f35a266ed3bb875ad8f6fd3f"> 907</a></span> <a class="code" href="classripple_1_1RCLConsensus.html#a61e43340f35a266ed3bb875ad8f6fd3f">RCLConsensus::simulate</a>(</div>
|
||||
<div class="line"><a name="l00908"></a><span class="lineno"> 908</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/time_point.html">NetClock::time_point</a> <span class="keyword">const</span>& now,</div>
|
||||
<div class="line"><a name="l00909"></a><span class="lineno"> 909</span>  boost::optional<std::chrono::milliseconds> consensusDelay)</div>
|
||||
<div class="line"><a name="l00910"></a><span class="lineno"> 910</span> {</div>
|
||||
<div class="line"><a name="l00911"></a><span class="lineno"> 911</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/thread/lock_guard.html">std::lock_guard</a> _{<a class="code" href="classripple_1_1RCLConsensus.html#a84d76715067b0c309c57b9e19d0ed2bd">mutex_</a>};</div>
|
||||
<div class="line"><a name="l00912"></a><span class="lineno"> 912</span>  <a class="code" href="classripple_1_1RCLConsensus.html#a95eae2c34b7b917b097947ff42e9c94c">consensus_</a>.simulate(now, consensusDelay);</div>
|
||||
<div class="line"><a name="l00913"></a><span class="lineno"> 913</span> }</div>
|
||||
<div class="line"><a name="l00914"></a><span class="lineno"> 914</span>  </div>
|
||||
<div class="line"><a name="l00915"></a><span class="lineno"> 915</span> <span class="keywordtype">bool</span></div>
|
||||
<div class="line"><a name="l00916"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus.html#aa0e46b668adf5d791806adf85d852c11"> 916</a></span> <a class="code" href="classripple_1_1RCLConsensus.html#aa0e46b668adf5d791806adf85d852c11">RCLConsensus::peerProposal</a>(</div>
|
||||
<div class="line"><a name="l00917"></a><span class="lineno"> 917</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/time_point.html">NetClock::time_point</a> <span class="keyword">const</span>& now,</div>
|
||||
<div class="line"><a name="l00918"></a><span class="lineno"> 918</span>  <a class="code" href="classripple_1_1RCLCxPeerPos.html">RCLCxPeerPos</a> <span class="keyword">const</span>& newProposal)</div>
|
||||
<div class="line"><a name="l00919"></a><span class="lineno"> 919</span> {</div>
|
||||
<div class="line"><a name="l00920"></a><span class="lineno"> 920</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/thread/lock_guard.html">std::lock_guard</a> _{<a class="code" href="classripple_1_1RCLConsensus.html#a84d76715067b0c309c57b9e19d0ed2bd">mutex_</a>};</div>
|
||||
<div class="line"><a name="l00921"></a><span class="lineno"> 921</span>  <span class="keywordflow">return</span> <a class="code" href="classripple_1_1RCLConsensus.html#a95eae2c34b7b917b097947ff42e9c94c">consensus_</a>.peerProposal(now, newProposal);</div>
|
||||
<div class="line"><a name="l00922"></a><span class="lineno"> 922</span> }</div>
|
||||
<div class="line"><a name="l00923"></a><span class="lineno"> 923</span>  </div>
|
||||
<div class="line"><a name="l00924"></a><span class="lineno"> 924</span> <span class="keywordtype">bool</span></div>
|
||||
<div class="line"><a name="l00925"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus_1_1Adaptor.html#ae5b558328de659c1f1a4233e43d23024"> 925</a></span> <a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#ae5b558328de659c1f1a4233e43d23024">RCLConsensus::Adaptor::preStartRound</a>(<a class="code" href="classripple_1_1RCLCxLedger.html">RCLCxLedger</a> <span class="keyword">const</span>& prevLgr)</div>
|
||||
<div class="line"><a name="l00926"></a><span class="lineno"> 926</span> {</div>
|
||||
<div class="line"><a name="l00927"></a><span class="lineno"> 927</span>  <span class="comment">// We have a key, we do not want out of sync validations after a restart</span></div>
|
||||
<div class="line"><a name="l00928"></a><span class="lineno"> 928</span>  <span class="comment">// and are not amendment blocked.</span></div>
|
||||
<div class="line"><a name="l00929"></a><span class="lineno"> 929</span>  validating_ = valPublic_.size() != 0 &&</div>
|
||||
<div class="line"><a name="l00930"></a><span class="lineno"> 930</span>  prevLgr.<a class="code" href="classripple_1_1RCLCxLedger.html#a633355f2ccfe0511fe0ed6124476229a">seq</a>() >= app_.getMaxDisallowedLedger() &&</div>
|
||||
<div class="line"><a name="l00931"></a><span class="lineno"> 931</span>  !app_.getOPs().isAmendmentBlocked();</div>
|
||||
<div class="line"><a name="l00932"></a><span class="lineno"> 932</span>  </div>
|
||||
<div class="line"><a name="l00933"></a><span class="lineno"> 933</span>  <span class="comment">// If we are not running in standalone mode and there's a configured UNL,</span></div>
|
||||
<div class="line"><a name="l00934"></a><span class="lineno"> 934</span>  <span class="comment">// check to make sure that it's not expired.</span></div>
|
||||
<div class="line"><a name="l00935"></a><span class="lineno"> 935</span>  <span class="keywordflow">if</span> (validating_ && !app_.config().standalone() && app_.validators().count())</div>
|
||||
<div class="line"><a name="l00936"></a><span class="lineno"> 936</span>  {</div>
|
||||
<div class="line"><a name="l00937"></a><span class="lineno"> 937</span>  <span class="keyword">auto</span> <span class="keyword">const</span> when = app_.validators().expires();</div>
|
||||
<div class="line"><a name="l00938"></a><span class="lineno"> 938</span>  </div>
|
||||
<div class="line"><a name="l00939"></a><span class="lineno"> 939</span>  <span class="keywordflow">if</span> (!when || *when < app_.timeKeeper().now())</div>
|
||||
<div class="line"><a name="l00940"></a><span class="lineno"> 940</span>  {</div>
|
||||
<div class="line"><a name="l00941"></a><span class="lineno"> 941</span>  JLOG(<a class="code" href="classripple_1_1RCLConsensus.html#aec02fa9195e2a9f090c95b55711e2ec7">j_</a>.<a class="code" href="classbeast_1_1Journal.html#a49b0713e65bb8e2c51b76fbf16252afe">error</a>()) << <span class="stringliteral">"Voluntarily bowing out of consensus process "</span></div>
|
||||
<div class="line"><a name="l00942"></a><span class="lineno"> 942</span>  <span class="stringliteral">"because of an expired validator list."</span>;</div>
|
||||
<div class="line"><a name="l00943"></a><span class="lineno"> 943</span>  validating_ = <span class="keyword">false</span>;</div>
|
||||
<div class="line"><a name="l00944"></a><span class="lineno"> 944</span>  }</div>
|
||||
<div class="line"><a name="l00945"></a><span class="lineno"> 945</span>  }</div>
|
||||
<div class="line"><a name="l00946"></a><span class="lineno"> 946</span>  </div>
|
||||
<div class="line"><a name="l00947"></a><span class="lineno"> 947</span>  <span class="keyword">const</span> <span class="keywordtype">bool</span> synced = app_.getOPs().getOperatingMode() == <a class="code" href="namespaceripple.html#a597325d7385ff9c19686e14e5bead510aba7de5bc6888294e5884b024a4c894f1">OperatingMode::FULL</a>;</div>
|
||||
<div class="line"><a name="l00948"></a><span class="lineno"> 948</span>  </div>
|
||||
<div class="line"><a name="l00949"></a><span class="lineno"> 949</span>  <span class="keywordflow">if</span> (validating_)</div>
|
||||
<div class="line"><a name="l00950"></a><span class="lineno"> 950</span>  {</div>
|
||||
<div class="line"><a name="l00951"></a><span class="lineno"> 951</span>  <span class="comment">// Otherwise we just want to monitor the validation process.</span></div>
|
||||
<div class="line"><a name="l00952"></a><span class="lineno"> 952</span>  JLOG(<a class="code" href="classripple_1_1RCLConsensus.html#aec02fa9195e2a9f090c95b55711e2ec7">j_</a>.<a class="code" href="classbeast_1_1Journal.html#a87d6bd59020d94110027dcab3d9e3357">info</a>()) << <span class="stringliteral">"Entering consensus process, watching, synced="</span></div>
|
||||
<div class="line"><a name="l00953"></a><span class="lineno"> 953</span>  << (synced ? <span class="stringliteral">"yes"</span> : <span class="stringliteral">"no"</span>);</div>
|
||||
<div class="line"><a name="l00954"></a><span class="lineno"> 954</span>  }</div>
|
||||
<div class="line"><a name="l00955"></a><span class="lineno"> 955</span>  </div>
|
||||
<div class="line"><a name="l00956"></a><span class="lineno"> 956</span>  <span class="comment">// Notify inbound ledgers that we are starting a new round</span></div>
|
||||
<div class="line"><a name="l00957"></a><span class="lineno"> 957</span>  inboundTransactions_.newRound(prevLgr.<a class="code" href="classripple_1_1RCLCxLedger.html#a633355f2ccfe0511fe0ed6124476229a">seq</a>());</div>
|
||||
<div class="line"><a name="l00958"></a><span class="lineno"> 958</span>  </div>
|
||||
<div class="line"><a name="l00959"></a><span class="lineno"> 959</span>  <span class="comment">// propose only if we're in sync with the network (and validating)</span></div>
|
||||
<div class="line"><a name="l00960"></a><span class="lineno"> 960</span>  <span class="keywordflow">return</span> validating_ && synced;</div>
|
||||
<div class="line"><a name="l00961"></a><span class="lineno"> 961</span> }</div>
|
||||
<div class="line"><a name="l00962"></a><span class="lineno"> 962</span>  </div>
|
||||
<div class="line"><a name="l00963"></a><span class="lineno"> 963</span> <span class="keywordtype">bool</span></div>
|
||||
<div class="line"><a name="l00964"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus_1_1Adaptor.html#ad0aa2492ff95815e202bd5801b37e030"> 964</a></span> <a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#ad0aa2492ff95815e202bd5801b37e030">RCLConsensus::Adaptor::haveValidated</a>()<span class="keyword"> const</span></div>
|
||||
<div class="line"><a name="l00965"></a><span class="lineno"> 965</span> <span class="keyword"></span>{</div>
|
||||
<div class="line"><a name="l00966"></a><span class="lineno"> 966</span>  <span class="keywordflow">return</span> ledgerMaster_.haveValidated();</div>
|
||||
<div class="line"><a name="l00967"></a><span class="lineno"> 967</span> }</div>
|
||||
<div class="line"><a name="l00968"></a><span class="lineno"> 968</span>  </div>
|
||||
<div class="line"><a name="l00969"></a><span class="lineno"> 969</span> <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/integer.html">LedgerIndex</a></div>
|
||||
<div class="line"><a name="l00970"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus_1_1Adaptor.html#a9f9e5d015fc6b18e3726ce51658b257c"> 970</a></span> <a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#a9f9e5d015fc6b18e3726ce51658b257c">RCLConsensus::Adaptor::getValidLedgerIndex</a>()<span class="keyword"> const</span></div>
|
||||
<div class="line"><a name="l00971"></a><span class="lineno"> 971</span> <span class="keyword"></span>{</div>
|
||||
<div class="line"><a name="l00972"></a><span class="lineno"> 972</span>  <span class="keywordflow">return</span> ledgerMaster_.getValidLedgerIndex();</div>
|
||||
<div class="line"><a name="l00973"></a><span class="lineno"> 973</span> }</div>
|
||||
<div class="line"><a name="l00974"></a><span class="lineno"> 974</span>  </div>
|
||||
<div class="line"><a name="l00975"></a><span class="lineno"> 975</span> <a class="codeRef" href="http://en.cppreference.com/w/cpp/utility/pair.html">std::pair<std::size_t, hash_set<RCLConsensus::Adaptor::NodeKey_t></a>></div>
|
||||
<div class="line"><a name="l00976"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus_1_1Adaptor.html#af8d2a95620b4b70e89890757d9bfb528"> 976</a></span> <a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#af8d2a95620b4b70e89890757d9bfb528">RCLConsensus::Adaptor::getQuorumKeys</a>()<span class="keyword"> const</span></div>
|
||||
<div class="line"><a name="l00977"></a><span class="lineno"> 977</span> <span class="keyword"></span>{</div>
|
||||
<div class="line"><a name="l00978"></a><span class="lineno"> 978</span>  <span class="keywordflow">return</span> app_.validators().getQuorumKeys();</div>
|
||||
<div class="line"><a name="l00979"></a><span class="lineno"> 979</span> }</div>
|
||||
<div class="line"><a name="l00980"></a><span class="lineno"> 980</span>  </div>
|
||||
<div class="line"><a name="l00981"></a><span class="lineno"> 981</span> <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a></div>
|
||||
<div class="line"><a name="l00982"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus_1_1Adaptor.html#a64490ffd82ff2b75da2406bb52fcd7dd"> 982</a></span> <a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#a64490ffd82ff2b75da2406bb52fcd7dd">RCLConsensus::Adaptor::laggards</a>(</div>
|
||||
<div class="line"><a name="l00983"></a><span class="lineno"> 983</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/integer.html">Ledger_t::Seq</a> <span class="keyword">const</span> seq,</div>
|
||||
<div class="line"><a name="l00984"></a><span class="lineno"> 984</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/container/unordered_set.html">hash_set<RCLConsensus::Adaptor::NodeKey_t></a>& trustedKeys)<span class="keyword"> const</span></div>
|
||||
<div class="line"><a name="l00985"></a><span class="lineno"> 985</span> <span class="keyword"></span>{</div>
|
||||
<div class="line"><a name="l00986"></a><span class="lineno"> 986</span>  <span class="keywordflow">return</span> app_.getValidations().laggards(seq, trustedKeys);</div>
|
||||
<div class="line"><a name="l00987"></a><span class="lineno"> 987</span> }</div>
|
||||
<div class="line"><a name="l00988"></a><span class="lineno"> 988</span>  </div>
|
||||
<div class="line"><a name="l00989"></a><span class="lineno"> 989</span> <span class="keywordtype">bool</span></div>
|
||||
<div class="line"><a name="l00990"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus_1_1Adaptor.html#a89732653d5e60191140d595d9192bc83"> 990</a></span> <a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#a89732653d5e60191140d595d9192bc83">RCLConsensus::Adaptor::validator</a>()<span class="keyword"> const</span></div>
|
||||
<div class="line"><a name="l00991"></a><span class="lineno"> 991</span> <span class="keyword"></span>{</div>
|
||||
<div class="line"><a name="l00992"></a><span class="lineno"> 992</span>  <span class="keywordflow">return</span> !valPublic_.empty();</div>
|
||||
<div class="line"><a name="l00993"></a><span class="lineno"> 993</span> }</div>
|
||||
<div class="line"><a name="l00994"></a><span class="lineno"> 994</span>  </div>
|
||||
<div class="line"><a name="l00995"></a><span class="lineno"> 995</span> <span class="keywordtype">void</span></div>
|
||||
<div class="line"><a name="l00996"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus_1_1Adaptor.html#af204a12bd25345da7fbdb8d267a1e23f"> 996</a></span> <a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#af204a12bd25345da7fbdb8d267a1e23f">RCLConsensus::Adaptor::updateOperatingMode</a>(<a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <span class="keyword">const</span> positions)<span class="keyword"> const</span></div>
|
||||
<div class="line"><a name="l00997"></a><span class="lineno"> 997</span> <span class="keyword"></span>{</div>
|
||||
<div class="line"><a name="l00998"></a><span class="lineno"> 998</span>  <span class="keywordflow">if</span> (!positions && app_.getOPs().isFull())</div>
|
||||
<div class="line"><a name="l00999"></a><span class="lineno"> 999</span>  app_.getOPs().setMode(<a class="code" href="namespaceripple.html#a597325d7385ff9c19686e14e5bead510aa5afd6edd5336d91316964e493936858">OperatingMode::CONNECTED</a>);</div>
|
||||
<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> }</div>
|
||||
<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>  </div>
|
||||
<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span> <span class="keywordtype">void</span></div>
|
||||
<div class="line"><a name="l01003"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus.html#ad519160f848bca8cb5b44ec7710cfe51"> 1003</a></span> <a class="code" href="classripple_1_1RCLConsensus.html#ad519160f848bca8cb5b44ec7710cfe51">RCLConsensus::startRound</a>(</div>
|
||||
<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/time_point.html">NetClock::time_point</a> <span class="keyword">const</span>& now,</div>
|
||||
<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>  <a class="code" href="classripple_1_1base__uint.html">RCLCxLedger::ID</a> <span class="keyword">const</span>& prevLgrId,</div>
|
||||
<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>  <a class="code" href="classripple_1_1RCLCxLedger.html">RCLCxLedger</a> <span class="keyword">const</span>& prevLgr,</div>
|
||||
<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/container/unordered_set.html">hash_set<NodeID></a> <span class="keyword">const</span>& nowUntrusted)</div>
|
||||
<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span> {</div>
|
||||
<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/thread/lock_guard.html">std::lock_guard</a> _{<a class="code" href="classripple_1_1RCLConsensus.html#a84d76715067b0c309c57b9e19d0ed2bd">mutex_</a>};</div>
|
||||
<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>  <a class="code" href="classripple_1_1RCLConsensus.html#a95eae2c34b7b917b097947ff42e9c94c">consensus_</a>.startRound(</div>
|
||||
<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>  now, prevLgrId, prevLgr, nowUntrusted, <a class="code" href="classripple_1_1RCLConsensus.html#abc9a72a85632483bb04f03f00af63db3">adaptor_</a>.<a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#ae5b558328de659c1f1a4233e43d23024">preStartRound</a>(prevLgr));</div>
|
||||
<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span> }</div>
|
||||
<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> } <span class="comment">// namespace ripple</span></div>
|
||||
<div class="line"><a name="l00951"></a><span class="lineno"> 951</span>  JLOG(<a class="code" href="classripple_1_1RCLConsensus.html#aec02fa9195e2a9f090c95b55711e2ec7">j_</a>.<a class="code" href="classbeast_1_1Journal.html#a87d6bd59020d94110027dcab3d9e3357">info</a>()) << <span class="stringliteral">"Entering consensus process, validating, synced="</span></div>
|
||||
<div class="line"><a name="l00952"></a><span class="lineno"> 952</span>  << (synced ? <span class="stringliteral">"yes"</span> : <span class="stringliteral">"no"</span>);</div>
|
||||
<div class="line"><a name="l00953"></a><span class="lineno"> 953</span>  }</div>
|
||||
<div class="line"><a name="l00954"></a><span class="lineno"> 954</span>  <span class="keywordflow">else</span></div>
|
||||
<div class="line"><a name="l00955"></a><span class="lineno"> 955</span>  {</div>
|
||||
<div class="line"><a name="l00956"></a><span class="lineno"> 956</span>  <span class="comment">// Otherwise we just want to monitor the validation process.</span></div>
|
||||
<div class="line"><a name="l00957"></a><span class="lineno"> 957</span>  JLOG(<a class="code" href="classripple_1_1RCLConsensus.html#aec02fa9195e2a9f090c95b55711e2ec7">j_</a>.<a class="code" href="classbeast_1_1Journal.html#a87d6bd59020d94110027dcab3d9e3357">info</a>()) << <span class="stringliteral">"Entering consensus process, watching, synced="</span></div>
|
||||
<div class="line"><a name="l00958"></a><span class="lineno"> 958</span>  << (synced ? <span class="stringliteral">"yes"</span> : <span class="stringliteral">"no"</span>);</div>
|
||||
<div class="line"><a name="l00959"></a><span class="lineno"> 959</span>  }</div>
|
||||
<div class="line"><a name="l00960"></a><span class="lineno"> 960</span>  </div>
|
||||
<div class="line"><a name="l00961"></a><span class="lineno"> 961</span>  <span class="comment">// Notify inbound ledgers that we are starting a new round</span></div>
|
||||
<div class="line"><a name="l00962"></a><span class="lineno"> 962</span>  inboundTransactions_.newRound(prevLgr.<a class="code" href="classripple_1_1RCLCxLedger.html#a633355f2ccfe0511fe0ed6124476229a">seq</a>());</div>
|
||||
<div class="line"><a name="l00963"></a><span class="lineno"> 963</span>  </div>
|
||||
<div class="line"><a name="l00964"></a><span class="lineno"> 964</span>  <span class="comment">// propose only if we're in sync with the network (and validating)</span></div>
|
||||
<div class="line"><a name="l00965"></a><span class="lineno"> 965</span>  <span class="keywordflow">return</span> validating_ && synced;</div>
|
||||
<div class="line"><a name="l00966"></a><span class="lineno"> 966</span> }</div>
|
||||
<div class="line"><a name="l00967"></a><span class="lineno"> 967</span>  </div>
|
||||
<div class="line"><a name="l00968"></a><span class="lineno"> 968</span> <span class="keywordtype">bool</span></div>
|
||||
<div class="line"><a name="l00969"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus_1_1Adaptor.html#ad0aa2492ff95815e202bd5801b37e030"> 969</a></span> <a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#ad0aa2492ff95815e202bd5801b37e030">RCLConsensus::Adaptor::haveValidated</a>()<span class="keyword"> const</span></div>
|
||||
<div class="line"><a name="l00970"></a><span class="lineno"> 970</span> <span class="keyword"></span>{</div>
|
||||
<div class="line"><a name="l00971"></a><span class="lineno"> 971</span>  <span class="keywordflow">return</span> ledgerMaster_.haveValidated();</div>
|
||||
<div class="line"><a name="l00972"></a><span class="lineno"> 972</span> }</div>
|
||||
<div class="line"><a name="l00973"></a><span class="lineno"> 973</span>  </div>
|
||||
<div class="line"><a name="l00974"></a><span class="lineno"> 974</span> <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/integer.html">LedgerIndex</a></div>
|
||||
<div class="line"><a name="l00975"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus_1_1Adaptor.html#a9f9e5d015fc6b18e3726ce51658b257c"> 975</a></span> <a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#a9f9e5d015fc6b18e3726ce51658b257c">RCLConsensus::Adaptor::getValidLedgerIndex</a>()<span class="keyword"> const</span></div>
|
||||
<div class="line"><a name="l00976"></a><span class="lineno"> 976</span> <span class="keyword"></span>{</div>
|
||||
<div class="line"><a name="l00977"></a><span class="lineno"> 977</span>  <span class="keywordflow">return</span> ledgerMaster_.getValidLedgerIndex();</div>
|
||||
<div class="line"><a name="l00978"></a><span class="lineno"> 978</span> }</div>
|
||||
<div class="line"><a name="l00979"></a><span class="lineno"> 979</span>  </div>
|
||||
<div class="line"><a name="l00980"></a><span class="lineno"> 980</span> <a class="codeRef" href="http://en.cppreference.com/w/cpp/utility/pair.html">std::pair<std::size_t, hash_set<RCLConsensus::Adaptor::NodeKey_t></a>></div>
|
||||
<div class="line"><a name="l00981"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus_1_1Adaptor.html#af8d2a95620b4b70e89890757d9bfb528"> 981</a></span> <a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#af8d2a95620b4b70e89890757d9bfb528">RCLConsensus::Adaptor::getQuorumKeys</a>()<span class="keyword"> const</span></div>
|
||||
<div class="line"><a name="l00982"></a><span class="lineno"> 982</span> <span class="keyword"></span>{</div>
|
||||
<div class="line"><a name="l00983"></a><span class="lineno"> 983</span>  <span class="keywordflow">return</span> app_.validators().getQuorumKeys();</div>
|
||||
<div class="line"><a name="l00984"></a><span class="lineno"> 984</span> }</div>
|
||||
<div class="line"><a name="l00985"></a><span class="lineno"> 985</span>  </div>
|
||||
<div class="line"><a name="l00986"></a><span class="lineno"> 986</span> <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a></div>
|
||||
<div class="line"><a name="l00987"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus_1_1Adaptor.html#a64490ffd82ff2b75da2406bb52fcd7dd"> 987</a></span> <a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#a64490ffd82ff2b75da2406bb52fcd7dd">RCLConsensus::Adaptor::laggards</a>(</div>
|
||||
<div class="line"><a name="l00988"></a><span class="lineno"> 988</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/integer.html">Ledger_t::Seq</a> <span class="keyword">const</span> seq,</div>
|
||||
<div class="line"><a name="l00989"></a><span class="lineno"> 989</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/container/unordered_set.html">hash_set<RCLConsensus::Adaptor::NodeKey_t></a>& trustedKeys)<span class="keyword"> const</span></div>
|
||||
<div class="line"><a name="l00990"></a><span class="lineno"> 990</span> <span class="keyword"></span>{</div>
|
||||
<div class="line"><a name="l00991"></a><span class="lineno"> 991</span>  <span class="keywordflow">return</span> app_.getValidations().laggards(seq, trustedKeys);</div>
|
||||
<div class="line"><a name="l00992"></a><span class="lineno"> 992</span> }</div>
|
||||
<div class="line"><a name="l00993"></a><span class="lineno"> 993</span>  </div>
|
||||
<div class="line"><a name="l00994"></a><span class="lineno"> 994</span> <span class="keywordtype">bool</span></div>
|
||||
<div class="line"><a name="l00995"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus_1_1Adaptor.html#a89732653d5e60191140d595d9192bc83"> 995</a></span> <a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#a89732653d5e60191140d595d9192bc83">RCLConsensus::Adaptor::validator</a>()<span class="keyword"> const</span></div>
|
||||
<div class="line"><a name="l00996"></a><span class="lineno"> 996</span> <span class="keyword"></span>{</div>
|
||||
<div class="line"><a name="l00997"></a><span class="lineno"> 997</span>  <span class="keywordflow">return</span> !valPublic_.empty();</div>
|
||||
<div class="line"><a name="l00998"></a><span class="lineno"> 998</span> }</div>
|
||||
<div class="line"><a name="l00999"></a><span class="lineno"> 999</span>  </div>
|
||||
<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> <span class="keywordtype">void</span></div>
|
||||
<div class="line"><a name="l01001"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus_1_1Adaptor.html#af204a12bd25345da7fbdb8d267a1e23f"> 1001</a></span> <a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#af204a12bd25345da7fbdb8d267a1e23f">RCLConsensus::Adaptor::updateOperatingMode</a>(<a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a> <span class="keyword">const</span> positions)<span class="keyword"> const</span></div>
|
||||
<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span> <span class="keyword"></span>{</div>
|
||||
<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>  <span class="keywordflow">if</span> (!positions && app_.getOPs().isFull())</div>
|
||||
<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>  app_.getOPs().setMode(<a class="code" href="namespaceripple.html#a597325d7385ff9c19686e14e5bead510aa5afd6edd5336d91316964e493936858">OperatingMode::CONNECTED</a>);</div>
|
||||
<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span> }</div>
|
||||
<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>  </div>
|
||||
<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span> <span class="keywordtype">void</span></div>
|
||||
<div class="line"><a name="l01008"></a><span class="lineno"><a class="line" href="classripple_1_1RCLConsensus.html#ad519160f848bca8cb5b44ec7710cfe51"> 1008</a></span> <a class="code" href="classripple_1_1RCLConsensus.html#ad519160f848bca8cb5b44ec7710cfe51">RCLConsensus::startRound</a>(</div>
|
||||
<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/chrono/time_point.html">NetClock::time_point</a> <span class="keyword">const</span>& now,</div>
|
||||
<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>  <a class="code" href="classripple_1_1base__uint.html">RCLCxLedger::ID</a> <span class="keyword">const</span>& prevLgrId,</div>
|
||||
<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>  <a class="code" href="classripple_1_1RCLCxLedger.html">RCLCxLedger</a> <span class="keyword">const</span>& prevLgr,</div>
|
||||
<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/container/unordered_set.html">hash_set<NodeID></a> <span class="keyword">const</span>& nowUntrusted)</div>
|
||||
<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> {</div>
|
||||
<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>  <a class="codeRef" href="http://en.cppreference.com/w/cpp/thread/lock_guard.html">std::lock_guard</a> _{<a class="code" href="classripple_1_1RCLConsensus.html#a84d76715067b0c309c57b9e19d0ed2bd">mutex_</a>};</div>
|
||||
<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>  <a class="code" href="classripple_1_1RCLConsensus.html#a95eae2c34b7b917b097947ff42e9c94c">consensus_</a>.startRound(</div>
|
||||
<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>  now, prevLgrId, prevLgr, nowUntrusted, <a class="code" href="classripple_1_1RCLConsensus.html#abc9a72a85632483bb04f03f00af63db3">adaptor_</a>.<a class="code" href="classripple_1_1RCLConsensus_1_1Adaptor.html#ae5b558328de659c1f1a4233e43d23024">preStartRound</a>(prevLgr));</div>
|
||||
<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span> }</div>
|
||||
<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span> } <span class="comment">// namespace ripple</span></div>
|
||||
</div><!-- fragment --></div><!-- contents -->
|
||||
<div class="ttc" id="aclassripple_1_1Application_html"><div class="ttname"><a href="classripple_1_1Application.html">ripple::Application</a></div><div class="ttdef"><b>Definition:</b> <a href="Application_8h_source.html#l00094">Application.h:94</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1Application_html"><div class="ttname"><a href="classripple_1_1Application.html">ripple::Application</a></div><div class="ttdef"><b>Definition:</b> <a href="Application_8h_source.html#l00097">Application.h:97</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLCxPeerPos_html"><div class="ttname"><a href="classripple_1_1RCLCxPeerPos.html">ripple::RCLCxPeerPos</a></div><div class="ttdoc">A peer's signed, proposed position for use in RCLConsensus.</div><div class="ttdef"><b>Definition:</b> <a href="RCLCxPeerPos_8h_source.html#l00042">RCLCxPeerPos.h:42</a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_ad5143ceada01141772ae4aab984f94bda7fa2267e9b1bf739a70bb1860ab2a99c"><div class="ttname"><a href="namespaceripple.html#ad5143ceada01141772ae4aab984f94bda7fa2267e9b1bf739a70bb1860ab2a99c">ripple::HashPrefix::ledgerMaster</a></div><div class="ttdeci">@ ledgerMaster</div><div class="ttdoc">ledger master data for signing</div></div>
|
||||
<div class="ttc" id="alock_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/thread/lock.html">std::lock</a></div><div class="ttdeci">T lock(T... args)</div></div>
|
||||
@@ -1092,7 +1097,7 @@ $(function() {
|
||||
<div class="ttc" id="aclassripple_1_1RCLCxPeerPos_html_af7dbd15db4bfc7852a84f0cc7dd27685"><div class="ttname"><a href="classripple_1_1RCLCxPeerPos.html#af7dbd15db4bfc7852a84f0cc7dd27685">ripple::RCLCxPeerPos::signature</a></div><div class="ttdeci">Slice signature() const</div><div class="ttdoc">Signature of the proposal (not necessarily verified)</div><div class="ttdef"><b>Definition:</b> <a href="RCLCxPeerPos_8h_source.html#l00074">RCLCxPeerPos.h:74</a></div></div>
|
||||
<div class="ttc" id="ashared_ptr_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a></div><div class="ttdoc">STL class.</div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_a33f8b6e68b5f63faf2e9755cc251563ea80dcf57f5ecd4be3cbfa37eccbcb6f44"><div class="ttname"><a href="namespaceripple.html#a33f8b6e68b5f63faf2e9755cc251563ea80dcf57f5ecd4be3cbfa37eccbcb6f44">ripple::ConsensusMode::proposing</a></div><div class="ttdeci">@ proposing</div><div class="ttdoc">We are normal participant in consensus and propose our position.</div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_html_acdab4291925cbabf861b8019c76355ea"><div class="ttname"><a href="classripple_1_1RCLConsensus.html#acdab4291925cbabf861b8019c76355ea">ripple::RCLConsensus::getJson</a></div><div class="ttdeci">Json::Value getJson(bool full) const</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00856">RCLConsensus.cpp:856</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_html_acdab4291925cbabf861b8019c76355ea"><div class="ttname"><a href="classripple_1_1RCLConsensus.html#acdab4291925cbabf861b8019c76355ea">ripple::RCLConsensus::getJson</a></div><div class="ttdeci">Json::Value getJson(bool full) const</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00861">RCLConsensus.cpp:861</a></div></div>
|
||||
<div class="ttc" id="aexception_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/error/exception.html">std::exception</a></div><div class="ttdoc">STL class.</div></div>
|
||||
<div class="ttc" id="aclassbeast_1_1Journal_html_abbe082bd27ca0f1d1365af2824e4f85b"><div class="ttname"><a href="classbeast_1_1Journal.html#abbe082bd27ca0f1d1365af2824e4f85b">beast::Journal::trace</a></div><div class="ttdeci">Stream trace() const</div><div class="ttdoc">Severity stream access functions.</div><div class="ttdef"><b>Definition:</b> <a href="Journal_8h_source.html#l00309">Journal.h:309</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_html_a95eae2c34b7b917b097947ff42e9c94c"><div class="ttname"><a href="classripple_1_1RCLConsensus.html#a95eae2c34b7b917b097947ff42e9c94c">ripple::RCLConsensus::consensus_</a></div><div class="ttdeci">Consensus< Adaptor > consensus_</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8h_source.html#l00523">RCLConsensus.h:523</a></div></div>
|
||||
@@ -1107,7 +1112,7 @@ $(function() {
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_ac97ef5d20d6f7ec91992dbc344f9d77a"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#ac97ef5d20d6f7ec91992dbc344f9d77a">ripple::RCLConsensus::Adaptor::hasOpenTransactions</a></div><div class="ttdeci">bool hasOpenTransactions() const</div><div class="ttdoc">Whether the open ledger has any transactions.</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00240">RCLConsensus.cpp:240</a></div></div>
|
||||
<div class="ttc" id="avector_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector< TxIDSeq ></a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_a79cc3b590c118bd551b693bb333fb9d1a93cba07454f06a4a960172bbd6e2a435"><div class="ttname"><a href="namespaceripple.html#a79cc3b590c118bd551b693bb333fb9d1a93cba07454f06a4a960172bbd6e2a435">ripple::ConsensusState::Yes</a></div><div class="ttdeci">@ Yes</div><div class="ttdoc">We have consensus along with the network.</div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_html_a269eadc254a964bcd8d79876420c379b"><div class="ttname"><a href="classripple_1_1RCLConsensus.html#a269eadc254a964bcd8d79876420c379b">ripple::RCLConsensus::gotTxSet</a></div><div class="ttdeci">void gotTxSet(NetClock::time_point const &now, RCLTxSet const &txSet)</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00884">RCLConsensus.cpp:884</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_html_a269eadc254a964bcd8d79876420c379b"><div class="ttname"><a href="classripple_1_1RCLConsensus.html#a269eadc254a964bcd8d79876420c379b">ripple::RCLConsensus::gotTxSet</a></div><div class="ttdeci">void gotTxSet(NetClock::time_point const &now, RCLTxSet const &txSet)</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00889">RCLConsensus.cpp:889</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::duration</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_aec8ba6a5bc49a937911f50c264a48439"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#aec8ba6a5bc49a937911f50c264a48439">ripple::RCLConsensus::Adaptor::getPrevLedger</a></div><div class="ttdeci">uint256 getPrevLedger(uint256 ledgerID, RCLCxLedger const &ledger, ConsensusMode mode)</div><div class="ttdoc">Get the ID of the previous ledger/last closed ledger(LCL) on the network.</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00262">RCLConsensus.cpp:262</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLTxSet_html_af36354d58eaa7e9ea65500a213d9aea5"><div class="ttname"><a href="classripple_1_1RCLTxSet.html#af36354d58eaa7e9ea65500a213d9aea5">ripple::RCLTxSet::map_</a></div><div class="ttdeci">std::shared_ptr< SHAMap > map_</div><div class="ttdoc">The SHAMap representing the transactions.</div><div class="ttdef"><b>Definition:</b> <a href="RCLCxTx_8h_source.html#l00189">RCLCxTx.h:189</a></div></div>
|
||||
@@ -1116,7 +1121,7 @@ $(function() {
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_html_aec02fa9195e2a9f090c95b55711e2ec7"><div class="ttname"><a href="classripple_1_1RCLConsensus.html#aec02fa9195e2a9f090c95b55711e2ec7">ripple::RCLConsensus::j_</a></div><div class="ttdeci">const beast::Journal j_</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8h_source.html#l00524">RCLConsensus.h:524</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1PublicKey_html_ae0bcc607176a440ec63a86bae5767036"><div class="ttname"><a href="classripple_1_1PublicKey.html#ae0bcc607176a440ec63a86bae5767036">ripple::PublicKey::slice</a></div><div class="ttdeci">Slice slice() const noexcept</div><div class="ttdef"><b>Definition:</b> <a href="PublicKey_8h_source.html#l00123">PublicKey.h:123</a></div></div>
|
||||
<div class="ttc" id="astructripple_1_1ConsensusResult_html_ad1c8143d67980ac53ec5bd8ebf8b9ce3"><div class="ttname"><a href="structripple_1_1ConsensusResult.html#ad1c8143d67980ac53ec5bd8ebf8b9ce3">ripple::ConsensusResult::roundTime</a></div><div class="ttdeci">ConsensusTimer roundTime</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusTypes_8h_source.html#l00233">ConsensusTypes.h:233</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_html_a66f29b3d7bf4aedbc6b6af362572e91c"><div class="ttname"><a href="classripple_1_1RCLConsensus.html#a66f29b3d7bf4aedbc6b6af362572e91c">ripple::RCLConsensus::timerEntry</a></div><div class="ttdeci">void timerEntry(NetClock::time_point const &now)</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00868">RCLConsensus.cpp:868</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_html_a66f29b3d7bf4aedbc6b6af362572e91c"><div class="ttname"><a href="classripple_1_1RCLConsensus.html#a66f29b3d7bf4aedbc6b6af362572e91c">ripple::RCLConsensus::timerEntry</a></div><div class="ttdeci">void timerEntry(NetClock::time_point const &now)</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00873">RCLConsensus.cpp:873</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLValidationsAdaptor_html_a0eebe32ebe8432114e6b1f32e0faf3ad"><div class="ttname"><a href="classripple_1_1RCLValidationsAdaptor.html#a0eebe32ebe8432114e6b1f32e0faf3ad">ripple::RCLValidationsAdaptor::journal</a></div><div class="ttdeci">beast::Journal journal() const</div><div class="ttdef"><b>Definition:</b> <a href="RCLValidations_8h_source.html#l00225">RCLValidations.h:225</a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_a96888695e8d79474e080c334f149e30a"><div class="ttname"><a href="namespaceripple.html#a96888695e8d79474e080c334f149e30a">ripple::to_string</a></div><div class="ttdeci">std::string to_string(ListDisposition disposition)</div><div class="ttdef"><b>Definition:</b> <a href="ValidatorList_8cpp_source.html#l00041">ValidatorList.cpp:41</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_a2f168067d1fbfbee91c628629cd5017a"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#a2f168067d1fbfbee91c628629cd5017a">ripple::RCLConsensus::Adaptor::onClose</a></div><div class="ttdeci">Result onClose(RCLCxLedger const &ledger, NetClock::time_point const &closeTime, ConsensusMode mode)</div><div class="ttdoc">Close the open ledger and return initial consensus position.</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00284">RCLConsensus.cpp:284</a></div></div>
|
||||
@@ -1138,18 +1143,18 @@ $(function() {
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_a8f02892ce5a6496090326e89b531a017"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#a8f02892ce5a6496090326e89b531a017">ripple::RCLConsensus::Adaptor::onAccept</a></div><div class="ttdeci">void onAccept(Result const &result, RCLCxLedger const &prevLedger, NetClock::duration const &closeResolution, ConsensusCloseTimes const &rawCloseTimes, ConsensusMode const &mode, Json::Value &&consensusJson)</div><div class="ttdoc">Process the accepted ledger.</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00384">RCLConsensus.cpp:384</a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_a33f8b6e68b5f63faf2e9755cc251563eaea5234685f43dcab142e132c0e7be2ce"><div class="ttname"><a href="namespaceripple.html#a33f8b6e68b5f63faf2e9755cc251563eaea5234685f43dcab142e132c0e7be2ce">ripple::ConsensusMode::observing</a></div><div class="ttdeci">@ observing</div><div class="ttdoc">We are observing peer positions, but not proposing our position.</div></div>
|
||||
<div class="ttc" id="aclassripple_1_1base__uint_html"><div class="ttname"><a href="classripple_1_1base__uint.html">ripple::base_uint< 256 ></a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_af204a12bd25345da7fbdb8d267a1e23f"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#af204a12bd25345da7fbdb8d267a1e23f">ripple::RCLConsensus::Adaptor::updateOperatingMode</a></div><div class="ttdeci">void updateOperatingMode(std::size_t const positions) const</div><div class="ttdoc">Update operating mode based on current peer positions.</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00996">RCLConsensus.cpp:996</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_af204a12bd25345da7fbdb8d267a1e23f"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#af204a12bd25345da7fbdb8d267a1e23f">ripple::RCLConsensus::Adaptor::updateOperatingMode</a></div><div class="ttdeci">void updateOperatingMode(std::size_t const positions) const</div><div class="ttdoc">Update operating mode based on current peer positions.</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l01001">RCLConsensus.cpp:1001</a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_a076d4f6f5b4dbe69103fb54a69b98324"><div class="ttname"><a href="namespaceripple.html#a076d4f6f5b4dbe69103fb54a69b98324">ripple::isPseudoTx</a></div><div class="ttdeci">bool isPseudoTx(STObject const &tx)</div><div class="ttdoc">Check whether a transaction is a pseudo-transaction.</div><div class="ttdef"><b>Definition:</b> <a href="STTx_8cpp_source.html#l00524">STTx.cpp:524</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_ad0aa2492ff95815e202bd5801b37e030"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#ad0aa2492ff95815e202bd5801b37e030">ripple::RCLConsensus::Adaptor::haveValidated</a></div><div class="ttdeci">bool haveValidated() const</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00964">RCLConsensus.cpp:964</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_ad0aa2492ff95815e202bd5801b37e030"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#ad0aa2492ff95815e202bd5801b37e030">ripple::RCLConsensus::Adaptor::haveValidated</a></div><div class="ttdeci">bool haveValidated() const</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00969">RCLConsensus.cpp:969</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1Validations_html_a49e72adb9b1df906dc15cc1fa073aefb"><div class="ttname"><a href="classripple_1_1Validations.html#a49e72adb9b1df906dc15cc1fa073aefb">ripple::Validations::getPreferred</a></div><div class="ttdeci">boost::optional< std::pair< Seq, ID > > getPreferred(Ledger const &curr)</div><div class="ttdoc">Return the sequence number and ID of the preferred working ledger.</div><div class="ttdef"><b>Definition:</b> <a href="Validations_8h_source.html#l00767">Validations.h:767</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_a64490ffd82ff2b75da2406bb52fcd7dd"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#a64490ffd82ff2b75da2406bb52fcd7dd">ripple::RCLConsensus::Adaptor::laggards</a></div><div class="ttdeci">std::size_t laggards(Ledger_t::Seq const seq, hash_set< NodeKey_t > &trustedKeys) const</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00982">RCLConsensus.cpp:982</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_a64490ffd82ff2b75da2406bb52fcd7dd"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#a64490ffd82ff2b75da2406bb52fcd7dd">ripple::RCLConsensus::Adaptor::laggards</a></div><div class="ttdeci">std::size_t laggards(Ledger_t::Seq const seq, hash_set< NodeKey_t > &trustedKeys) const</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00987">RCLConsensus.cpp:987</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_a3c19242b4c7feb5d9ce80c7f49f00646"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#a3c19242b4c7feb5d9ce80c7f49f00646">ripple::RCLConsensus::Adaptor::share</a></div><div class="ttdeci">void share(RCLCxPeerPos const &peerPos)</div><div class="ttdoc">Share the given proposal with all peers.</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00136">RCLConsensus.cpp:136</a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_a597325d7385ff9c19686e14e5bead510aa5afd6edd5336d91316964e493936858"><div class="ttname"><a href="namespaceripple.html#a597325d7385ff9c19686e14e5bead510aa5afd6edd5336d91316964e493936858">ripple::OperatingMode::CONNECTED</a></div><div class="ttdeci">@ CONNECTED</div><div class="ttdoc">convinced we are talking to the network</div></div>
|
||||
<div class="ttc" id="astructripple_1_1ConsensusResult_html_acaf3328683148dad2a2dca4bd50aba7f"><div class="ttname"><a href="structripple_1_1ConsensusResult.html#acaf3328683148dad2a2dca4bd50aba7f">ripple::ConsensusResult::state</a></div><div class="ttdeci">ConsensusState state</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusTypes_8h_source.html#l00237">ConsensusTypes.h:237</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1ConsensusTimer_html_a3c6486c5da8f92bc3d05c0a45be4f0d8"><div class="ttname"><a href="classripple_1_1ConsensusTimer.html#a3c6486c5da8f92bc3d05c0a45be4f0d8">ripple::ConsensusTimer::read</a></div><div class="ttdeci">std::chrono::milliseconds read() const</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusTypes_8h_source.html#l00142">ConsensusTypes.h:142</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1SHAMapItem_html"><div class="ttname"><a href="classripple_1_1SHAMapItem.html">ripple::SHAMapItem</a></div><div class="ttdef"><b>Definition:</b> <a href="SHAMapItem_8h_source.html#l00034">SHAMapItem.h:34</a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_a0429dc3d934c2cebe43fb8a723cf9eb3"><div class="ttname"><a href="namespaceripple.html#a0429dc3d934c2cebe43fb8a723cf9eb3">ripple::signDigest</a></div><div class="ttdeci">Buffer signDigest(PublicKey const &pk, SecretKey const &sk, uint256 const &digest)</div><div class="ttdoc">Generate a signature for a message digest.</div><div class="ttdef"><b>Definition:</b> <a href="SecretKey_8cpp_source.html#l00098">SecretKey.cpp:98</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_html_aa0e46b668adf5d791806adf85d852c11"><div class="ttname"><a href="classripple_1_1RCLConsensus.html#aa0e46b668adf5d791806adf85d852c11">ripple::RCLConsensus::peerProposal</a></div><div class="ttdeci">bool peerProposal(NetClock::time_point const &now, RCLCxPeerPos const &newProposal)</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00911">RCLConsensus.cpp:911</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_html_aa0e46b668adf5d791806adf85d852c11"><div class="ttname"><a href="classripple_1_1RCLConsensus.html#aa0e46b668adf5d791806adf85d852c11">ripple::RCLConsensus::peerProposal</a></div><div class="ttdeci">bool peerProposal(NetClock::time_point const &now, RCLCxPeerPos const &newProposal)</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00916">RCLConsensus.cpp:916</a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_ad99788f1aca6ce31a1fe8365eee1bba3"><div class="ttname"><a href="namespaceripple.html#ad99788f1aca6ce31a1fe8365eee1bba3">ripple::Rethrow</a></div><div class="ttdeci">void Rethrow()</div><div class="ttdoc">Rethrow the exception currently being handled.</div><div class="ttdef"><b>Definition:</b> <a href="contract_8h_source.html#l00048">contract.h:48</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1STObject_html_a4aee4efa6aeff63e0d5ff08d31730be2"><div class="ttname"><a href="classripple_1_1STObject.html#a4aee4efa6aeff63e0d5ff08d31730be2">ripple::STObject::setFieldH256</a></div><div class="ttdeci">void setFieldH256(SField const &field, uint256 const &)</div><div class="ttdef"><b>Definition:</b> <a href="STObject_8cpp_source.html#l00650">STObject.cpp:650</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLTxSet_html"><div class="ttname"><a href="classripple_1_1RCLTxSet.html">ripple::RCLTxSet</a></div><div class="ttdoc">Represents a set of transactions in RCLConsensus.</div><div class="ttdef"><b>Definition:</b> <a href="RCLCxTx_8h_source.html#l00065">RCLCxTx.h:65</a></div></div>
|
||||
@@ -1179,14 +1184,14 @@ $(function() {
|
||||
<div class="ttc" id="anamespaceripple_html_a79cc3b590c118bd551b693bb333fb9d1a6978081a12147518207c7512374c5c80"><div class="ttname"><a href="namespaceripple.html#a79cc3b590c118bd551b693bb333fb9d1a6978081a12147518207c7512374c5c80">ripple::ConsensusState::MovedOn</a></div><div class="ttdeci">@ MovedOn</div><div class="ttdoc">The network has consensus without us.</div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_html_abc9a72a85632483bb04f03f00af63db3"><div class="ttname"><a href="classripple_1_1RCLConsensus.html#abc9a72a85632483bb04f03f00af63db3">ripple::RCLConsensus::adaptor_</a></div><div class="ttdeci">Adaptor adaptor_</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8h_source.html#l00522">RCLConsensus.h:522</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1SHAMapItem_html_a3f52867a7d3829faede60bf7dd5628ba"><div class="ttname"><a href="classripple_1_1SHAMapItem.html#a3f52867a7d3829faede60bf7dd5628ba">ripple::SHAMapItem::slice</a></div><div class="ttdeci">Slice slice() const</div><div class="ttdef"><b>Definition:</b> <a href="SHAMapItem_8h_source.html#l00063">SHAMapItem.h:63</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_a89732653d5e60191140d595d9192bc83"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#a89732653d5e60191140d595d9192bc83">ripple::RCLConsensus::Adaptor::validator</a></div><div class="ttdeci">bool validator() const</div><div class="ttdoc">Whether I am a validator.</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00990">RCLConsensus.cpp:990</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_a89732653d5e60191140d595d9192bc83"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#a89732653d5e60191140d595d9192bc83">ripple::RCLConsensus::Adaptor::validator</a></div><div class="ttdeci">bool validator() const</div><div class="ttdoc">Whether I am a validator.</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00995">RCLConsensus.cpp:995</a></div></div>
|
||||
<div class="ttc" id="aclassbeast_1_1abstract__clock_html"><div class="ttname"><a href="classbeast_1_1abstract__clock.html">beast::abstract_clock< std::chrono::steady_clock ></a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_a0f5de38ef7c5157e23527a0e6a720a22"><div class="ttname"><a href="namespaceripple.html#a0f5de38ef7c5157e23527a0e6a720a22">ripple::proposalUniqueId</a></div><div class="ttdeci">uint256 proposalUniqueId(uint256 const &proposeHash, uint256 const &previousLedger, std::uint32_t proposeSeq, NetClock::time_point closeTime, Slice const &publicKey, Slice const &signature)</div><div class="ttdoc">Calculate a unique identifier for a signed proposal.</div><div class="ttdef"><b>Definition:</b> <a href="RCLCxPeerPos_8cpp_source.html#l00072">RCLCxPeerPos.cpp:72</a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_afe6621666690fb309225d4d57b1748d1"><div class="ttname"><a href="namespaceripple.html#afe6621666690fb309225d4d57b1748d1">ripple::featureHardenedValidations</a></div><div class="ttdeci">const uint256 featureHardenedValidations</div><div class="ttdef"><b>Definition:</b> <a href="Feature_8cpp_source.html#l00190">Feature.cpp:190</a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_afe6621666690fb309225d4d57b1748d1"><div class="ttname"><a href="namespaceripple.html#afe6621666690fb309225d4d57b1748d1">ripple::featureHardenedValidations</a></div><div class="ttdeci">const uint256 featureHardenedValidations</div><div class="ttdef"><b>Definition:</b> <a href="Feature_8cpp_source.html#l00184">Feature.cpp:184</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_a8ca18b539a9a017ac1210c8104ffcc74"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#a8ca18b539a9a017ac1210c8104ffcc74">ripple::RCLConsensus::Adaptor::buildLCL</a></div><div class="ttdeci">RCLCxLedger buildLCL(RCLCxLedger const &previousLedger, CanonicalTXSet &retriableTxs, NetClock::time_point closeTime, bool closeTimeCorrect, NetClock::duration closeResolution, std::chrono::milliseconds roundTime, std::set< TxID > &failedTxs)</div><div class="ttdoc">Build the new last closed ledger.</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00718">RCLConsensus.cpp:718</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLCxPeerPos_html_ae755e970550b6ffaf5d5d18468c40488"><div class="ttname"><a href="classripple_1_1RCLCxPeerPos.html#ae755e970550b6ffaf5d5d18468c40488">ripple::RCLCxPeerPos::publicKey</a></div><div class="ttdeci">PublicKey const & publicKey() const</div><div class="ttdoc">Public key of peer that sent the proposal.</div><div class="ttdef"><b>Definition:</b> <a href="RCLCxPeerPos_8h_source.html#l00081">RCLCxPeerPos.h:81</a></div></div>
|
||||
<div class="ttc" id="adecay_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/types/decay.html">std::decay_t</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_a602cb9acaeb931bb5a7b5a74de5f5280"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#a602cb9acaeb931bb5a7b5a74de5f5280">ripple::RCLConsensus::Adaptor::onModeChange</a></div><div class="ttdeci">void onModeChange(ConsensusMode before, ConsensusMode after)</div><div class="ttdoc">Notified of change in consensus mode.</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00840">RCLConsensus.cpp:840</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_a602cb9acaeb931bb5a7b5a74de5f5280"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#a602cb9acaeb931bb5a7b5a74de5f5280">ripple::RCLConsensus::Adaptor::onModeChange</a></div><div class="ttdeci">void onModeChange(ConsensusMode before, ConsensusMode after)</div><div class="ttdoc">Notified of change in consensus mode.</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00845">RCLConsensus.cpp:845</a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_a8a16d6f665a032453ec4cbfca01929b6a3e4d891a5df3d6d0d7dd9432a1bc6470"><div class="ttname"><a href="namespaceripple.html#a8a16d6f665a032453ec4cbfca01929b6a3e4d891a5df3d6d0d7dd9432a1bc6470">ripple::ManifestDisposition::accepted</a></div><div class="ttdeci">@ accepted</div><div class="ttdoc">Manifest is valid.</div></div>
|
||||
<div class="ttc" id="aclassripple_1_1Serializer_html"><div class="ttname"><a href="classripple_1_1Serializer.html">ripple::Serializer</a></div><div class="ttdef"><b>Definition:</b> <a href="Serializer_8h_source.html#l00039">Serializer.h:39</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLCxLedger_html"><div class="ttname"><a href="classripple_1_1RCLCxLedger.html">ripple::RCLCxLedger</a></div><div class="ttdoc">Represents a ledger in RCLConsensus.</div><div class="ttdef"><b>Definition:</b> <a href="RCLCxLedger_8h_source.html#l00035">RCLCxLedger.h:35</a></div></div>
|
||||
@@ -1194,7 +1199,7 @@ $(function() {
|
||||
<div class="ttc" id="aemplace_back_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector/emplace_back.html">std::vector::emplace_back</a></div><div class="ttdeci">T emplace_back(T... args)</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="anamespaceripple_html_a33f8b6e68b5f63faf2e9755cc251563e"><div class="ttname"><a href="namespaceripple.html#a33f8b6e68b5f63faf2e9755cc251563e">ripple::ConsensusMode</a></div><div class="ttdeci">ConsensusMode</div><div class="ttdoc">Represents how a node currently participates in Consensus.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusTypes_8h_source.html#l00055">ConsensusTypes.h:55</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_a9f9e5d015fc6b18e3726ce51658b257c"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#a9f9e5d015fc6b18e3726ce51658b257c">ripple::RCLConsensus::Adaptor::getValidLedgerIndex</a></div><div class="ttdeci">LedgerIndex getValidLedgerIndex() const</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00970">RCLConsensus.cpp:970</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_a9f9e5d015fc6b18e3726ce51658b257c"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#a9f9e5d015fc6b18e3726ce51658b257c">ripple::RCLConsensus::Adaptor::getValidLedgerIndex</a></div><div class="ttdeci">LedgerIndex getValidLedgerIndex() const</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00975">RCLConsensus.cpp:975</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1base__uint_html_a2ffd09234d574e5554c5d84199a9f287"><div class="ttname"><a href="classripple_1_1base__uint.html#a2ffd09234d574e5554c5d84199a9f287">ripple::base_uint::begin</a></div><div class="ttdeci">iterator begin()</div><div class="ttdef"><b>Definition:</b> <a href="base__uint_8h_source.html#l00114">base_uint.h:114</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_a7876494135a528d824f373af32efce2e"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#a7876494135a528d824f373af32efce2e">ripple::RCLConsensus::Adaptor::acquireTxSet</a></div><div class="ttdeci">boost::optional< RCLTxSet > acquireTxSet(RCLTxSet::ID const &setId)</div><div class="ttdoc">Acquire the transaction set associated with a proposal.</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00230">RCLConsensus.cpp:230</a></div></div>
|
||||
<div class="ttc" id="anamespacestd_html"><div class="ttname"><a href="namespacestd.html">std</a></div><div class="ttdoc">STL namespace.</div></div>
|
||||
@@ -1202,10 +1207,9 @@ $(function() {
|
||||
<div class="ttc" id="anamespaceripple_html_ae3f5bc352766a1a8dbf5270eb7dbc2e7"><div class="ttname"><a href="namespaceripple.html#ae3f5bc352766a1a8dbf5270eb7dbc2e7">ripple::sha512Half</a></div><div class="ttdeci">sha512_half_hasher::result_type sha512Half(Args const &... args)</div><div class="ttdoc">Returns the SHA512-Half of a series of objects.</div><div class="ttdef"><b>Definition:</b> <a href="digest_8h_source.html#l00227">digest.h:227</a></div></div>
|
||||
<div class="ttc" id="astructripple_1_1ConsensusResult_html_afc0376d9cf4dfd013539594b7b8bbbde"><div class="ttname"><a href="structripple_1_1ConsensusResult.html#afc0376d9cf4dfd013539594b7b8bbbde">ripple::ConsensusResult::position</a></div><div class="ttdeci">Proposal_t position</div><div class="ttdoc">Our proposed position on transactions/close time.</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusTypes_8h_source.html#l00224">ConsensusTypes.h:224</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1ConsensusProposal_html_ab811b62e9290b5aa39c7dfc2b11dbe40"><div class="ttname"><a href="classripple_1_1ConsensusProposal.html#ab811b62e9290b5aa39c7dfc2b11dbe40">ripple::ConsensusProposal< NodeID, uint256, uint256 >::seqJoin</a></div><div class="ttdeci">static const std::uint32_t seqJoin</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusProposal_8h_source.html#l00058">ConsensusProposal.h:58</a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_aeba5e3c78f4db7d52eea3bbeb75fb08a"><div class="ttname"><a href="namespaceripple.html#aeba5e3c78f4db7d52eea3bbeb75fb08a">ripple::handleNewValidation</a></div><div class="ttdeci">bool handleNewValidation(Application &app, std::shared_ptr< STValidation > const &val, std::string const &source)</div><div class="ttdoc">Handle a new validation.</div><div class="ttdef"><b>Definition:</b> <a href="RCLValidations_8cpp_source.html#l00152">RCLValidations.cpp:152</a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_a00a2aa0c3f2861ed15d2b9b8b71b03a3"><div class="ttname"><a href="namespaceripple.html#a00a2aa0c3f2861ed15d2b9b8b71b03a3">ripple::buildLedger</a></div><div class="ttdeci">std::shared_ptr< Ledger > buildLedger(std::shared_ptr< Ledger const > const &parent, NetClock::time_point closeTime, const bool closeTimeCorrect, NetClock::duration closeResolution, Application &app, CanonicalTXSet &txns, std::set< TxID > &failedTxs, beast::Journal j)</div><div class="ttdoc">Build a new ledger by applying consensus transactions.</div><div class="ttdef"><b>Definition:</b> <a href="BuildLedger_8cpp_source.html#l00172">BuildLedger.cpp:172</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1STObject_html_a4fa764a09a6e972491891d939eb9d2f2"><div class="ttname"><a href="classripple_1_1STObject.html#a4fa764a09a6e972491891d939eb9d2f2">ripple::STObject::setFlag</a></div><div class="ttdeci">bool setFlag(std::uint32_t)</div><div class="ttdef"><b>Definition:</b> <a href="STObject_8cpp_source.html#l00424">STObject.cpp:424</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_ae5b558328de659c1f1a4233e43d23024"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#ae5b558328de659c1f1a4233e43d23024">ripple::RCLConsensus::Adaptor::preStartRound</a></div><div class="ttdeci">bool preStartRound(RCLCxLedger const &prevLedger)</div><div class="ttdoc">Called before kicking off a new consensus round.</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00920">RCLConsensus.cpp:920</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_ae5b558328de659c1f1a4233e43d23024"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#ae5b558328de659c1f1a4233e43d23024">ripple::RCLConsensus::Adaptor::preStartRound</a></div><div class="ttdeci">bool preStartRound(RCLCxLedger const &prevLedger)</div><div class="ttdoc">Called before kicking off a new consensus round.</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00925">RCLConsensus.cpp:925</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_aecfa90103c1ac29bb861acc866e16230"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#aecfa90103c1ac29bb861acc866e16230">ripple::RCLConsensus::Adaptor::proposersValidated</a></div><div class="ttdeci">std::size_t proposersValidated(LedgerHash const &h) const</div><div class="ttdoc">Number of proposers that have validated the given ledger.</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00246">RCLConsensus.cpp:246</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1Validations_html"><div class="ttname"><a href="classripple_1_1Validations.html">ripple::Validations< RCLValidationsAdaptor ></a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLCxPeerPos_html_a748ae509bb447cc33356579b72ef8e62"><div class="ttname"><a href="classripple_1_1RCLCxPeerPos.html#a748ae509bb447cc33356579b72ef8e62">ripple::RCLCxPeerPos::suppressionID</a></div><div class="ttdeci">uint256 const & suppressionID() const</div><div class="ttdoc">Unique id used by hash router to suppress duplicates.</div><div class="ttdef"><b>Definition:</b> <a href="RCLCxPeerPos_8h_source.html#l00088">RCLCxPeerPos.h:88</a></div></div>
|
||||
@@ -1230,7 +1234,8 @@ $(function() {
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_a71558db36f2c6e246d00408955a8eb7f"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#a71558db36f2c6e246d00408955a8eb7f">ripple::RCLConsensus::Adaptor::onForceAccept</a></div><div class="ttdeci">void onForceAccept(Result const &result, RCLCxLedger const &prevLedger, NetClock::duration const &closeResolution, ConsensusCloseTimes const &rawCloseTimes, ConsensusMode const &mode, Json::Value &&consensusJson)</div><div class="ttdoc">Process the accepted ledger that was a result of simulation/force accept.</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00366">RCLConsensus.cpp:366</a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_a05eeff73e4bcdcb73dbd29a57a4f2b3e"><div class="ttname"><a href="namespaceripple.html#a05eeff73e4bcdcb73dbd29a57a4f2b3e">ripple::sfLedgerHash</a></div><div class="ttdeci">const SF_U256 sfLedgerHash(access, STI_HASH256, 1, "LedgerHash")</div><div class="ttdef"><b>Definition:</b> <a href="SField_8h_source.html#l00416">SField.h:416</a></div></div>
|
||||
<div class="ttc" id="aset_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/set.html">std::set</a></div><div class="ttdoc">STL class.</div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_af8d2a95620b4b70e89890757d9bfb528"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#af8d2a95620b4b70e89890757d9bfb528">ripple::RCLConsensus::Adaptor::getQuorumKeys</a></div><div class="ttdeci">std::pair< std::size_t, hash_set< NodeKey_t > > getQuorumKeys() const</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00976">RCLConsensus.cpp:976</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_af8d2a95620b4b70e89890757d9bfb528"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#af8d2a95620b4b70e89890757d9bfb528">ripple::RCLConsensus::Adaptor::getQuorumKeys</a></div><div class="ttdeci">std::pair< std::size_t, hash_set< NodeKey_t > > getQuorumKeys() const</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00981">RCLConsensus.cpp:981</a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_a5be750120b2129bbf4ec4fccb592de4c"><div class="ttname"><a href="namespaceripple.html#a5be750120b2129bbf4ec4fccb592de4c">ripple::handleNewValidation</a></div><div class="ttdeci">void handleNewValidation(Application &app, std::shared_ptr< STValidation > const &val, std::string const &source)</div><div class="ttdoc">Handle a new validation.</div><div class="ttdef"><b>Definition:</b> <a href="RCLValidations_8cpp_source.html#l00152">RCLValidations.cpp:152</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_1_1Adaptor_html_a52d6c6005bc8066ec68d7e81038a6906"><div class="ttname"><a href="classripple_1_1RCLConsensus_1_1Adaptor.html#a52d6c6005bc8066ec68d7e81038a6906">ripple::RCLConsensus::Adaptor::validating</a></div><div class="ttdeci">bool validating() const</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8h_source.html#l00108">RCLConsensus.h:108</a></div></div>
|
||||
<div class="ttc" id="awhat_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/error/exception/what.html">std::runtime_error::what</a></div><div class="ttdeci">T what(T... args)</div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_a6b403455e1efce1935495bb2e7c6e8ff"><div class="ttname"><a href="namespaceripple.html#a6b403455e1efce1935495bb2e7c6e8ff">ripple::effCloseTime</a></div><div class="ttdeci">std::chrono::time_point< Clock, Duration > effCloseTime(std::chrono::time_point< Clock, Duration > closeTime, std::chrono::duration< Rep, Period > resolution, std::chrono::time_point< Clock, Duration > priorCloseTime)</div><div class="ttdoc">Calculate the effective ledger close time.</div><div class="ttdef"><b>Definition:</b> <a href="LedgerTiming_8h_source.html#l00149">LedgerTiming.h:149</a></div></div>
|
||||
@@ -1238,8 +1243,8 @@ $(function() {
|
||||
<div class="ttc" id="aclassJson_1_1Value_html"><div class="ttname"><a href="classJson_1_1Value.html">Json::Value</a></div><div class="ttdoc">Represents a JSON value.</div><div class="ttdef"><b>Definition:</b> <a href="json__value_8h_source.html#l00145">json_value.h:145</a></div></div>
|
||||
<div class="ttc" id="astructripple_1_1ConsensusResult_html_adbe9cfc54c331e78706ffcba7a0f35a3"><div class="ttname"><a href="structripple_1_1ConsensusResult.html#adbe9cfc54c331e78706ffcba7a0f35a3">ripple::ConsensusResult::proposers</a></div><div class="ttdeci">std::size_t proposers</div><div class="ttdef"><b>Definition:</b> <a href="ConsensusTypes_8h_source.html#l00240">ConsensusTypes.h:240</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1InboundTransactions_html"><div class="ttname"><a href="classripple_1_1InboundTransactions.html">ripple::InboundTransactions</a></div><div class="ttdoc">Manages the acquisition and lifetime of transaction sets.</div><div class="ttdef"><b>Definition:</b> <a href="InboundTransactions_8h_source.html#l00036">InboundTransactions.h:36</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_html_a61e43340f35a266ed3bb875ad8f6fd3f"><div class="ttname"><a href="classripple_1_1RCLConsensus.html#a61e43340f35a266ed3bb875ad8f6fd3f">ripple::RCLConsensus::simulate</a></div><div class="ttdeci">void simulate(NetClock::time_point const &now, boost::optional< std::chrono::milliseconds > consensusDelay)</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00902">RCLConsensus.cpp:902</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_html_ad519160f848bca8cb5b44ec7710cfe51"><div class="ttname"><a href="classripple_1_1RCLConsensus.html#ad519160f848bca8cb5b44ec7710cfe51">ripple::RCLConsensus::startRound</a></div><div class="ttdeci">void startRound(NetClock::time_point const &now, RCLCxLedger::ID const &prevLgrId, RCLCxLedger const &prevLgr, hash_set< NodeID > const &nowUntrusted)</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l01003">RCLConsensus.cpp:1003</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_html_a61e43340f35a266ed3bb875ad8f6fd3f"><div class="ttname"><a href="classripple_1_1RCLConsensus.html#a61e43340f35a266ed3bb875ad8f6fd3f">ripple::RCLConsensus::simulate</a></div><div class="ttdeci">void simulate(NetClock::time_point const &now, boost::optional< std::chrono::milliseconds > consensusDelay)</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l00907">RCLConsensus.cpp:907</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1RCLConsensus_html_ad519160f848bca8cb5b44ec7710cfe51"><div class="ttname"><a href="classripple_1_1RCLConsensus.html#ad519160f848bca8cb5b44ec7710cfe51">ripple::RCLConsensus::startRound</a></div><div class="ttdeci">void startRound(NetClock::time_point const &now, RCLCxLedger::ID const &prevLgrId, RCLCxLedger const &prevLgr, hash_set< NodeID > const &nowUntrusted)</div><div class="ttdef"><b>Definition:</b> <a href="RCLConsensus_8cpp_source.html#l01008">RCLConsensus.cpp:1008</a></div></div>
|
||||
<div class="ttc" id="aclassripple_1_1ConsensusProposal_html"><div class="ttname"><a href="classripple_1_1ConsensusProposal.html">ripple::ConsensusProposal< NodeID, uint256, uint256 ></a></div></div>
|
||||
<div class="ttc" id="anamespaceripple_html_a597325d7385ff9c19686e14e5bead510aba7de5bc6888294e5884b024a4c894f1"><div class="ttname"><a href="namespaceripple.html#a597325d7385ff9c19686e14e5bead510aba7de5bc6888294e5884b024a4c894f1">ripple::OperatingMode::FULL</a></div><div class="ttdeci">@ FULL</div><div class="ttdoc">we have the ledger and can even validate</div></div>
|
||||
<!-- start footer part -->
|
||||
|
||||
Reference in New Issue
Block a user