Files
rippled/classripple_1_1SHAMapInnerNode.html
2022-12-09 04:19:09 +00:00

1577 lines
89 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>rippled: ripple::SHAMapInnerNode Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">rippled
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceripple.html">ripple</a></li><li class="navelem"><a class="el" href="classripple_1_1SHAMapInnerNode.html">SHAMapInnerNode</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pub-static-attribs">Static Public Attributes</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="#pri-methods">Private Member Functions</a> &#124;
<a href="#pri-static-methods">Static Private Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="classripple_1_1SHAMapInnerNode-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ripple::SHAMapInnerNode Class Reference<span class="mlabels"><span class="mlabel">final</span></span></div> </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for ripple::SHAMapInnerNode:</div>
<div class="dyncontent">
<div class="center"><img src="classripple_1_1SHAMapInnerNode__inherit__graph.png" border="0" usemap="#ripple_1_1SHAMapInnerNode_inherit__map" alt="Inheritance graph"/></div>
<map name="ripple_1_1SHAMapInnerNode_inherit__map" id="ripple_1_1SHAMapInnerNode_inherit__map">
<area shape="rect" title=" " alt="" coords="104,95,292,121"/>
<area shape="rect" href="classripple_1_1SHAMapTreeNode.html" title=" " alt="" coords="5,13,188,39"/>
<area shape="rect" href="classripple_1_1CountedObject.html" title=" " alt="" coords="213,5,386,47"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for ripple::SHAMapInnerNode:</div>
<div class="dyncontent">
<div class="center"><img src="classripple_1_1SHAMapInnerNode__coll__graph.png" border="0" usemap="#ripple_1_1SHAMapInnerNode_coll__map" alt="Collaboration graph"/></div>
<map name="ripple_1_1SHAMapInnerNode_coll__map" id="ripple_1_1SHAMapInnerNode_coll__map">
<area shape="rect" title=" " alt="" coords="1429,148,1617,175"/>
<area shape="rect" href="classripple_1_1SHAMapTreeNode.html" title=" " alt="" coords="1049,59,1232,85"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/types/integer.html" title=" " alt="" coords="5,59,108,85"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/container/array.html" title=" " alt="" coords="221,110,389,151"/>
<area shape="rect" href="classripple_1_1SHAMapHash.html" title=" " alt="" coords="775,116,929,143"/>
<area shape="rect" href="classripple_1_1base__uint.html" title=" " alt="" coords="487,121,628,162"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/types/size_t.html" title=" " alt="" coords="261,177,349,204"/>
<area shape="rect" href="classripple_1_1CountedObject.html" title=" " alt="" coords="1054,110,1227,151"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/atomic/atomic.html" title=" " alt="" coords="1037,239,1244,265"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/types/integer.html" title=" " alt="" coords="801,196,903,223"/>
<area shape="rect" href="classripple_1_1TaggedPointer.html" title="TaggedPointer is a combination of a pointer and a mask stored in the lowest two bits." alt="" coords="1061,289,1220,316"/>
<area shape="rect" href="http://en.cppreference.com/w/cpp/types/integer.html" title=" " alt="" coords="799,289,905,316"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a2cf4d1f797c61c9e2bb458b7b14056b6"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a2cf4d1f797c61c9e2bb458b7b14056b6">SHAMapInnerNode</a> (<a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> <a class="el" href="group__SHAMap.html#gac9adec7146a8bea60fe6acf6c1ed98d1">cowid</a>, <a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint8_t</a> numAllocatedChildren=2)</td></tr>
<tr class="separator:a2cf4d1f797c61c9e2bb458b7b14056b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab2ededa70def474e4a8c05dce5ee34e6"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#ab2ededa70def474e4a8c05dce5ee34e6">SHAMapInnerNode</a> (<a class="el" href="classripple_1_1SHAMapInnerNode.html">SHAMapInnerNode</a> const &amp;)=delete</td></tr>
<tr class="separator:ab2ededa70def474e4a8c05dce5ee34e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae84ee3ceb7d8344d9c78b365b60cfa50"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classripple_1_1SHAMapInnerNode.html">SHAMapInnerNode</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#ae84ee3ceb7d8344d9c78b365b60cfa50">operator=</a> (<a class="el" href="classripple_1_1SHAMapInnerNode.html">SHAMapInnerNode</a> const &amp;)=delete</td></tr>
<tr class="separator:ae84ee3ceb7d8344d9c78b365b60cfa50"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa36ffe7811690d0c57b52c792a634dee"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#aa36ffe7811690d0c57b52c792a634dee">~SHAMapInnerNode</a> ()</td></tr>
<tr class="separator:aa36ffe7811690d0c57b52c792a634dee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a2d1da1093314594a2e1c5e0bcd13af"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a3a2d1da1093314594a2e1c5e0bcd13af">clone</a> (<a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> <a class="el" href="group__SHAMap.html#gac9adec7146a8bea60fe6acf6c1ed98d1">cowid</a>) const override</td></tr>
<tr class="memdesc:a3a2d1da1093314594a2e1c5e0bcd13af"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make a copy of this node, setting the owner. <a href="classripple_1_1SHAMapInnerNode.html#a3a2d1da1093314594a2e1c5e0bcd13af">More...</a><br /></td></tr>
<tr class="separator:a3a2d1da1093314594a2e1c5e0bcd13af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad22cdc21675181d90ba0cd4786925f9e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceripple.html#ae0356b1de00f841c554c830be509dd58">SHAMapNodeType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#ad22cdc21675181d90ba0cd4786925f9e">getType</a> () const override</td></tr>
<tr class="memdesc:ad22cdc21675181d90ba0cd4786925f9e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines the type of node. <a href="classripple_1_1SHAMapInnerNode.html#ad22cdc21675181d90ba0cd4786925f9e">More...</a><br /></td></tr>
<tr class="separator:ad22cdc21675181d90ba0cd4786925f9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a726a08267f012f1041c20fa4756ad1fc"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a726a08267f012f1041c20fa4756ad1fc">isLeaf</a> () const override</td></tr>
<tr class="memdesc:a726a08267f012f1041c20fa4756ad1fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines if this is a leaf node. <a href="classripple_1_1SHAMapInnerNode.html#a726a08267f012f1041c20fa4756ad1fc">More...</a><br /></td></tr>
<tr class="separator:a726a08267f012f1041c20fa4756ad1fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11f313e4e571af4bd75a5a3f7abeceee"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a11f313e4e571af4bd75a5a3f7abeceee">isInner</a> () const override</td></tr>
<tr class="memdesc:a11f313e4e571af4bd75a5a3f7abeceee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines if this is an inner node. <a href="classripple_1_1SHAMapInnerNode.html#a11f313e4e571af4bd75a5a3f7abeceee">More...</a><br /></td></tr>
<tr class="separator:a11f313e4e571af4bd75a5a3f7abeceee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a13fcdfee8199a8e54429edf6b9085ae0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a13fcdfee8199a8e54429edf6b9085ae0">isEmpty</a> () const</td></tr>
<tr class="separator:a13fcdfee8199a8e54429edf6b9085ae0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b4f103d62324f6efb4e21a8a6404c27"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a5b4f103d62324f6efb4e21a8a6404c27">isEmptyBranch</a> (int m) const</td></tr>
<tr class="separator:a5b4f103d62324f6efb4e21a8a6404c27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aec522cbc8cfb50ed87ebf8c634a40276"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#aec522cbc8cfb50ed87ebf8c634a40276">getBranchCount</a> () const</td></tr>
<tr class="separator:aec522cbc8cfb50ed87ebf8c634a40276"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8932a6ff79c447556da4b17e908bd008"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classripple_1_1SHAMapHash.html">SHAMapHash</a> const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a8932a6ff79c447556da4b17e908bd008">getChildHash</a> (int m) const</td></tr>
<tr class="separator:a8932a6ff79c447556da4b17e908bd008"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7fb5fc0e5d65ed4c3c77537a8fda8d32"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a7fb5fc0e5d65ed4c3c77537a8fda8d32">setChild</a> (int m, <a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt; child)</td></tr>
<tr class="separator:a7fb5fc0e5d65ed4c3c77537a8fda8d32"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a5be285c023d39777772c86322df101"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a1a5be285c023d39777772c86322df101">shareChild</a> (int m, <a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt; const &amp;child)</td></tr>
<tr class="separator:a1a5be285c023d39777772c86322df101"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee8c4572b5618083dd1513dbffba280d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#aee8c4572b5618083dd1513dbffba280d">getChildPointer</a> (int branch)</td></tr>
<tr class="separator:aee8c4572b5618083dd1513dbffba280d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5693ae02e17473b1d7fec7cfea0d4443"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a5693ae02e17473b1d7fec7cfea0d4443">getChild</a> (int branch)</td></tr>
<tr class="separator:a5693ae02e17473b1d7fec7cfea0d4443"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1d3440e82f822d85cc57734a16dc524"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#ad1d3440e82f822d85cc57734a16dc524">canonicalizeChild</a> (int branch, <a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt; node)</td></tr>
<tr class="separator:ad1d3440e82f822d85cc57734a16dc524"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a597b4db5c84297776d2e8ebdbe9e1b6f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a597b4db5c84297776d2e8ebdbe9e1b6f">isFullBelow</a> (<a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> generation) const</td></tr>
<tr class="separator:a597b4db5c84297776d2e8ebdbe9e1b6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad03f4f678da9104ef53946bb07bdf8ae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#ad03f4f678da9104ef53946bb07bdf8ae">setFullBelowGen</a> (<a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> gen)</td></tr>
<tr class="separator:ad03f4f678da9104ef53946bb07bdf8ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a73212411125e46812e0e19f2e307b155"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a73212411125e46812e0e19f2e307b155">updateHash</a> () override</td></tr>
<tr class="memdesc:a73212411125e46812e0e19f2e307b155"><td class="mdescLeft">&#160;</td><td class="mdescRight">Recalculate the hash of this node. <a href="classripple_1_1SHAMapInnerNode.html#a73212411125e46812e0e19f2e307b155">More...</a><br /></td></tr>
<tr class="separator:a73212411125e46812e0e19f2e307b155"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad83701be0c7a908a61601d1bcbf7ecb1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#ad83701be0c7a908a61601d1bcbf7ecb1">updateHashDeep</a> ()</td></tr>
<tr class="memdesc:ad83701be0c7a908a61601d1bcbf7ecb1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Recalculate the hash of all children and this node. <a href="classripple_1_1SHAMapInnerNode.html#ad83701be0c7a908a61601d1bcbf7ecb1">More...</a><br /></td></tr>
<tr class="separator:ad83701be0c7a908a61601d1bcbf7ecb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0ebb4c9ea3cc41acaf6806a3e43ec91"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#ad0ebb4c9ea3cc41acaf6806a3e43ec91">serializeForWire</a> (<a class="el" href="classripple_1_1Serializer.html">Serializer</a> &amp;) const override</td></tr>
<tr class="memdesc:ad0ebb4c9ea3cc41acaf6806a3e43ec91"><td class="mdescLeft">&#160;</td><td class="mdescRight">Serialize the node in a format appropriate for sending over the wire. <a href="classripple_1_1SHAMapInnerNode.html#ad0ebb4c9ea3cc41acaf6806a3e43ec91">More...</a><br /></td></tr>
<tr class="separator:ad0ebb4c9ea3cc41acaf6806a3e43ec91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f4b0002303fdffed19ea5019f8070f8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a5f4b0002303fdffed19ea5019f8070f8">serializeWithPrefix</a> (<a class="el" href="classripple_1_1Serializer.html">Serializer</a> &amp;) const override</td></tr>
<tr class="memdesc:a5f4b0002303fdffed19ea5019f8070f8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Serialize the node in a format appropriate for hashing. <a href="classripple_1_1SHAMapInnerNode.html#a5f4b0002303fdffed19ea5019f8070f8">More...</a><br /></td></tr>
<tr class="separator:a5f4b0002303fdffed19ea5019f8070f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa91785cf9d4979e8dd4dd9c183ad9c5e"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/string/basic_string.html">std::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#aa91785cf9d4979e8dd4dd9c183ad9c5e">getString</a> (<a class="el" href="classripple_1_1SHAMapNodeID.html">SHAMapNodeID</a> const &amp;) const override</td></tr>
<tr class="separator:aa91785cf9d4979e8dd4dd9c183ad9c5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a964421b7b7b071f1a5daa95afa8f0fe9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a964421b7b7b071f1a5daa95afa8f0fe9">invariants</a> (bool is_root=false) const override</td></tr>
<tr class="separator:a964421b7b7b071f1a5daa95afa8f0fe9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac9adec7146a8bea60fe6acf6c1ed98d1"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SHAMap.html#gac9adec7146a8bea60fe6acf6c1ed98d1">cowid</a> () const</td></tr>
<tr class="memdesc:gac9adec7146a8bea60fe6acf6c1ed98d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the <a class="el" href="classripple_1_1SHAMap.html" title="A SHAMap is both a radix tree with a fan-out of 16 and a Merkle tree.">SHAMap</a> that owns this node. <a href="group__SHAMap.html#gac9adec7146a8bea60fe6acf6c1ed98d1">More...</a><br /></td></tr>
<tr class="separator:gac9adec7146a8bea60fe6acf6c1ed98d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga766bfbd4b6d8fdfd9e60ebcd603da6a3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SHAMap.html#ga766bfbd4b6d8fdfd9e60ebcd603da6a3">unshare</a> ()</td></tr>
<tr class="memdesc:ga766bfbd4b6d8fdfd9e60ebcd603da6a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">If this node is shared with another map, mark it as no longer shared. <a href="group__SHAMap.html#ga766bfbd4b6d8fdfd9e60ebcd603da6a3">More...</a><br /></td></tr>
<tr class="separator:ga766bfbd4b6d8fdfd9e60ebcd603da6a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a454e86c9ed693f8921d53a915d8b1415"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classripple_1_1SHAMapHash.html">SHAMapHash</a> const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapTreeNode.html#a454e86c9ed693f8921d53a915d8b1415">getHash</a> () const</td></tr>
<tr class="memdesc:a454e86c9ed693f8921d53a915d8b1415"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the hash of this node. <a href="classripple_1_1SHAMapTreeNode.html#a454e86c9ed693f8921d53a915d8b1415">More...</a><br /></td></tr>
<tr class="separator:a454e86c9ed693f8921d53a915d8b1415"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:ad1efe48ac7bf6f3b4a10ad9c26573bec"><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#ad1efe48ac7bf6f3b4a10ad9c26573bec">makeFullInner</a> (<a class="el" href="classripple_1_1Slice.html">Slice</a> data, <a class="el" href="classripple_1_1SHAMapHash.html">SHAMapHash</a> const &amp;hash, bool hashValid)</td></tr>
<tr class="separator:ad1efe48ac7bf6f3b4a10ad9c26573bec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c00b72186bf55aad286505bb5cedc00"><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a7c00b72186bf55aad286505bb5cedc00">makeCompressedInner</a> (<a class="el" href="classripple_1_1Slice.html">Slice</a> data)</td></tr>
<tr class="separator:a7c00b72186bf55aad286505bb5cedc00"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5631e2f77123e3b73229ef4c890ad60f"><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapTreeNode.html#a5631e2f77123e3b73229ef4c890ad60f">makeFromPrefix</a> (<a class="el" href="classripple_1_1Slice.html">Slice</a> rawNode, <a class="el" href="classripple_1_1SHAMapHash.html">SHAMapHash</a> const &amp;hash)</td></tr>
<tr class="separator:a5631e2f77123e3b73229ef4c890ad60f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1b494609b7a732614554da92e235f57"><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapTreeNode.html#ae1b494609b7a732614554da92e235f57">makeFromWire</a> (<a class="el" href="classripple_1_1Slice.html">Slice</a> rawNode)</td></tr>
<tr class="separator:ae1b494609b7a732614554da92e235f57"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr class="memitem:a42a7132ff24a6edf8ca1e022f61826d9"><td class="memItemLeft" align="right" valign="top">static constexpr unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a42a7132ff24a6edf8ca1e022f61826d9">branchFactor</a> = 16</td></tr>
<tr class="memdesc:a42a7132ff24a6edf8ca1e022f61826d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Each inner node has 16 children (the 'radix tree' part of the map) <a href="classripple_1_1SHAMapInnerNode.html#a42a7132ff24a6edf8ca1e022f61826d9">More...</a><br /></td></tr>
<tr class="separator:a42a7132ff24a6edf8ca1e022f61826d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:a705bca4eb622097a917a3cac5c3a013d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classripple_1_1SHAMapHash.html">SHAMapHash</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapTreeNode.html#a705bca4eb622097a917a3cac5c3a013d">hash_</a></td></tr>
<tr class="separator:a705bca4eb622097a917a3cac5c3a013d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f27d867484104446867c0f50adc5ffb"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapTreeNode.html#a7f27d867484104446867c0f50adc5ffb">cowid_</a></td></tr>
<tr class="memdesc:a7f27d867484104446867c0f50adc5ffb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines the owning <a class="el" href="classripple_1_1SHAMap.html" title="A SHAMap is both a radix tree with a fan-out of 16 and a Merkle tree.">SHAMap</a>, if any. <a href="classripple_1_1SHAMapTreeNode.html#a7f27d867484104446867c0f50adc5ffb">More...</a><br /></td></tr>
<tr class="separator:a7f27d867484104446867c0f50adc5ffb"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
Private Member Functions</h2></td></tr>
<tr class="memitem:a64c8817ea46bb682a9d354590cd11449"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a64c8817ea46bb682a9d354590cd11449">resizeChildArrays</a> (<a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint8_t</a> toAllocate)</td></tr>
<tr class="memdesc:a64c8817ea46bb682a9d354590cd11449"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert arrays stored in <code>hashesAndChildren_</code> so they can store the requested number of children. <a href="classripple_1_1SHAMapInnerNode.html#a64c8817ea46bb682a9d354590cd11449">More...</a><br /></td></tr>
<tr class="separator:a64c8817ea46bb682a9d354590cd11449"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25aac316c799590fec7f818d5b5584b5"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional</a>&lt; int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a25aac316c799590fec7f818d5b5584b5">getChildIndex</a> (int i) const</td></tr>
<tr class="memdesc:a25aac316c799590fec7f818d5b5584b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the child's index inside the <code>hashes</code> or <code>children</code> array (stored in <code>hashesAndChildren_</code>. <a href="classripple_1_1SHAMapInnerNode.html#a25aac316c799590fec7f818d5b5584b5">More...</a><br /></td></tr>
<tr class="separator:a25aac316c799590fec7f818d5b5584b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a636a12a32e96bbd6a7d32e580a55fd4f"><td class="memTemplParams" colspan="2">template&lt;class F &gt; </td></tr>
<tr class="memitem:a636a12a32e96bbd6a7d32e580a55fd4f"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a636a12a32e96bbd6a7d32e580a55fd4f">iterChildren</a> (F &amp;&amp;f) const</td></tr>
<tr class="memdesc:a636a12a32e96bbd6a7d32e580a55fd4f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Call the <code>f</code> callback for all 16 (branchFactor) branches - even if the branch is empty. <a href="classripple_1_1SHAMapInnerNode.html#a636a12a32e96bbd6a7d32e580a55fd4f">More...</a><br /></td></tr>
<tr class="separator:a636a12a32e96bbd6a7d32e580a55fd4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c356c106a60a7f75bff902bd04cb505"><td class="memTemplParams" colspan="2">template&lt;class F &gt; </td></tr>
<tr class="memitem:a5c356c106a60a7f75bff902bd04cb505"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a5c356c106a60a7f75bff902bd04cb505">iterNonEmptyChildIndexes</a> (F &amp;&amp;f) const</td></tr>
<tr class="memdesc:a5c356c106a60a7f75bff902bd04cb505"><td class="mdescLeft">&#160;</td><td class="mdescRight">Call the <code>f</code> callback for all non-empty branches. <a href="classripple_1_1SHAMapInnerNode.html#a5c356c106a60a7f75bff902bd04cb505">More...</a><br /></td></tr>
<tr class="separator:a5c356c106a60a7f75bff902bd04cb505"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-static-methods"></a>
Static Private Member Functions</h2></td></tr>
<tr class="memitem:a86766049429f10a7a04bca455542313e"><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapTreeNode.html#a86766049429f10a7a04bca455542313e">makeTransaction</a> (<a class="el" href="classripple_1_1Slice.html">Slice</a> data, <a class="el" href="classripple_1_1SHAMapHash.html">SHAMapHash</a> const &amp;hash, bool hashValid)</td></tr>
<tr class="separator:a86766049429f10a7a04bca455542313e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c42ed30e5e522b0f9cfcb4a44ff197f"><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapTreeNode.html#a3c42ed30e5e522b0f9cfcb4a44ff197f">makeAccountState</a> (<a class="el" href="classripple_1_1Slice.html">Slice</a> data, <a class="el" href="classripple_1_1SHAMapHash.html">SHAMapHash</a> const &amp;hash, bool hashValid)</td></tr>
<tr class="separator:a3c42ed30e5e522b0f9cfcb4a44ff197f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a14ef4be050f894475d155ea11f00d011"><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapTreeNode.html#a14ef4be050f894475d155ea11f00d011">makeTransactionWithMeta</a> (<a class="el" href="classripple_1_1Slice.html">Slice</a> data, <a class="el" href="classripple_1_1SHAMapHash.html">SHAMapHash</a> const &amp;hash, bool hashValid)</td></tr>
<tr class="separator:a14ef4be050f894475d155ea11f00d011"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acde6c67ea432f6bb32d2ecb5db786ce8"><td class="memItemLeft" align="right" valign="top">static auto &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1CountedObject.html#acde6c67ea432f6bb32d2ecb5db786ce8">getCounter</a> () noexcept</td></tr>
<tr class="separator:acde6c67ea432f6bb32d2ecb5db786ce8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:ac506e73531d73c05cf6505d3ece00d41"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classripple_1_1TaggedPointer.html">TaggedPointer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#ac506e73531d73c05cf6505d3ece00d41">hashesAndChildren_</a></td></tr>
<tr class="memdesc:ac506e73531d73c05cf6505d3ece00d41"><td class="mdescLeft">&#160;</td><td class="mdescRight">Opaque type that contains the <code>hashes</code> array (array of type <code><a class="el" href="classripple_1_1SHAMapHash.html">SHAMapHash</a></code>) and the <code>children</code> array (array of type <code><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html" title="STL class.">std::shared_ptr</a>&lt;<a class="el" href="classripple_1_1SHAMapInnerNode.html">SHAMapInnerNode</a>&gt;</code>). <a href="classripple_1_1SHAMapInnerNode.html#ac506e73531d73c05cf6505d3ece00d41">More...</a><br /></td></tr>
<tr class="separator:ac506e73531d73c05cf6505d3ece00d41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a07f4125beab496a2b812ce3f3c43f31e"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a07f4125beab496a2b812ce3f3c43f31e">fullBelowGen_</a> = 0</td></tr>
<tr class="separator:a07f4125beab496a2b812ce3f3c43f31e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52169174ccb10b0ea379da3463dba155"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint16_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#a52169174ccb10b0ea379da3463dba155">isBranch_</a> = 0</td></tr>
<tr class="separator:a52169174ccb10b0ea379da3463dba155"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af954310317885e9dbbc845270ddd5076"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://en.cppreference.com/w/cpp/atomic/atomic.html">std::atomic</a>&lt; <a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint16_t</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classripple_1_1SHAMapInnerNode.html#af954310317885e9dbbc845270ddd5076">lock_</a> = 0</td></tr>
<tr class="memdesc:af954310317885e9dbbc845270ddd5076"><td class="mdescLeft">&#160;</td><td class="mdescRight">A bitlock for the children of this node, with one bit per child. <a href="classripple_1_1SHAMapInnerNode.html#af954310317885e9dbbc845270ddd5076">More...</a><br /></td></tr>
<tr class="separator:af954310317885e9dbbc845270ddd5076"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8h_source.html#l00041">41</a> of file <a class="el" href="SHAMapInnerNode_8h_source.html">SHAMapInnerNode.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a2cf4d1f797c61c9e2bb458b7b14056b6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2cf4d1f797c61c9e2bb458b7b14056b6">&#9670;&nbsp;</a></span>SHAMapInnerNode() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ripple::SHAMapInnerNode::SHAMapInnerNode </td>
<td>(</td>
<td class="paramtype"><a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a>&#160;</td>
<td class="paramname"><em>cowid</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint8_t</a>&#160;</td>
<td class="paramname"><em>numAllocatedChildren</em> = <code>2</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00038">38</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="ab2ededa70def474e4a8c05dce5ee34e6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab2ededa70def474e4a8c05dce5ee34e6">&#9670;&nbsp;</a></span>SHAMapInnerNode() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ripple::SHAMapInnerNode::SHAMapInnerNode </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classripple_1_1SHAMapInnerNode.html">SHAMapInnerNode</a> const &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">delete</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aa36ffe7811690d0c57b52c792a634dee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa36ffe7811690d0c57b52c792a634dee">&#9670;&nbsp;</a></span>~SHAMapInnerNode()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ripple::SHAMapInnerNode::~SHAMapInnerNode </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a64c8817ea46bb682a9d354590cd11449"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a64c8817ea46bb682a9d354590cd11449">&#9670;&nbsp;</a></span>resizeChildArrays()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ripple::SHAMapInnerNode::resizeChildArrays </td>
<td>(</td>
<td class="paramtype"><a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint8_t</a>&#160;</td>
<td class="paramname"><em>toAllocate</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Convert arrays stored in <code>hashesAndChildren_</code> so they can store the requested number of children. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">toAllocate</td><td>allocate space for at least this number of children (must be &lt;= branchFactor)</td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>the arrays may allocate more than the requested value in <code>toAllocate</code>. This is due to the implementation of TagPointer, which only supports allocating arrays of 4 different sizes. </dd></dl>
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00062">62</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="a25aac316c799590fec7f818d5b5584b5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a25aac316c799590fec7f818d5b5584b5">&#9670;&nbsp;</a></span>getChildIndex()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/utility/optional.html">std::optional</a>&lt; int &gt; ripple::SHAMapInnerNode::getChildIndex </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the child's index inside the <code>hashes</code> or <code>children</code> array (stored in <code>hashesAndChildren_</code>. </p>
<p>These arrays may or may not be sparse). The optional will be empty is an empty branch is requested and the arrays are sparse.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">i</td><td>index of the requested child </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00069">69</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="a636a12a32e96bbd6a7d32e580a55fd4f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a636a12a32e96bbd6a7d32e580a55fd4f">&#9670;&nbsp;</a></span>iterChildren()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class F &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ripple::SHAMapInnerNode::iterChildren </td>
<td>(</td>
<td class="paramtype">F &amp;&amp;&#160;</td>
<td class="paramname"><em>f</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Call the <code>f</code> callback for all 16 (branchFactor) branches - even if the branch is empty. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">f</td><td>a one parameter callback function. The parameter is the child's hash. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00049">49</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="a5c356c106a60a7f75bff902bd04cb505"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5c356c106a60a7f75bff902bd04cb505">&#9670;&nbsp;</a></span>iterNonEmptyChildIndexes()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class F &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ripple::SHAMapInnerNode::iterNonEmptyChildIndexes </td>
<td>(</td>
<td class="paramtype">F &amp;&amp;&#160;</td>
<td class="paramname"><em>f</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Call the <code>f</code> callback for all non-empty branches. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">f</td><td>a two parameter callback function. The first parameter is the branch number, the second parameter is the index into the array. For dense formats these are the same, for sparse they may be different. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00056">56</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="ae84ee3ceb7d8344d9c78b365b60cfa50"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae84ee3ceb7d8344d9c78b365b60cfa50">&#9670;&nbsp;</a></span>operator=()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classripple_1_1SHAMapInnerNode.html">SHAMapInnerNode</a>&amp; ripple::SHAMapInnerNode::operator= </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classripple_1_1SHAMapInnerNode.html">SHAMapInnerNode</a> const &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">delete</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a3a2d1da1093314594a2e1c5e0bcd13af"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3a2d1da1093314594a2e1c5e0bcd13af">&#9670;&nbsp;</a></span>clone()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt; ripple::SHAMapInnerNode::clone </td>
<td>(</td>
<td class="paramtype"><a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a>&#160;</td>
<td class="paramname"><em>cowid</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Make a copy of this node, setting the owner. </p>
<p>Implements <a class="el" href="group__SHAMap.html#gaa47d992a6d4f439258714054f0c497a5">ripple::SHAMapTreeNode</a>.</p>
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00075">75</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="ad22cdc21675181d90ba0cd4786925f9e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad22cdc21675181d90ba0cd4786925f9e">&#9670;&nbsp;</a></span>getType()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceripple.html#ae0356b1de00f841c554c830be509dd58">SHAMapNodeType</a> ripple::SHAMapInnerNode::getType </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Determines the type of node. </p>
<p>Implements <a class="el" href="classripple_1_1SHAMapTreeNode.html#aebfb8013182e80c9c2436764cf018090">ripple::SHAMapTreeNode</a>.</p>
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8h_source.html#l00120">120</a> of file <a class="el" href="SHAMapInnerNode_8h_source.html">SHAMapInnerNode.h</a>.</p>
</div>
</div>
<a id="a726a08267f012f1041c20fa4756ad1fc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a726a08267f012f1041c20fa4756ad1fc">&#9670;&nbsp;</a></span>isLeaf()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ripple::SHAMapInnerNode::isLeaf </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Determines if this is a leaf node. </p>
<p>Implements <a class="el" href="classripple_1_1SHAMapTreeNode.html#a3feaa925a9dc0e847049e6c4cfbb6875">ripple::SHAMapTreeNode</a>.</p>
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8h_source.html#l00126">126</a> of file <a class="el" href="SHAMapInnerNode_8h_source.html">SHAMapInnerNode.h</a>.</p>
</div>
</div>
<a id="a11f313e4e571af4bd75a5a3f7abeceee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a11f313e4e571af4bd75a5a3f7abeceee">&#9670;&nbsp;</a></span>isInner()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ripple::SHAMapInnerNode::isInner </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Determines if this is an inner node. </p>
<p>Implements <a class="el" href="classripple_1_1SHAMapTreeNode.html#a7aff7622ccd8ffd0be9367518b39436e">ripple::SHAMapTreeNode</a>.</p>
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8h_source.html#l00132">132</a> of file <a class="el" href="SHAMapInnerNode_8h_source.html">SHAMapInnerNode.h</a>.</p>
</div>
</div>
<a id="a13fcdfee8199a8e54429edf6b9085ae0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a13fcdfee8199a8e54429edf6b9085ae0">&#9670;&nbsp;</a></span>isEmpty()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ripple::SHAMapInnerNode::isEmpty </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00260">260</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="a5b4f103d62324f6efb4e21a8a6404c27"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5b4f103d62324f6efb4e21a8a6404c27">&#9670;&nbsp;</a></span>isEmptyBranch()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ripple::SHAMapInnerNode::isEmptyBranch </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>m</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8h_source.html#l00198">198</a> of file <a class="el" href="SHAMapInnerNode_8h_source.html">SHAMapInnerNode.h</a>.</p>
</div>
</div>
<a id="aec522cbc8cfb50ed87ebf8c634a40276"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aec522cbc8cfb50ed87ebf8c634a40276">&#9670;&nbsp;</a></span>getBranchCount()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ripple::SHAMapInnerNode::getBranchCount </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00266">266</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="a8932a6ff79c447556da4b17e908bd008"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8932a6ff79c447556da4b17e908bd008">&#9670;&nbsp;</a></span>getChildHash()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classripple_1_1SHAMapHash.html">SHAMapHash</a> const &amp; ripple::SHAMapInnerNode::getChildHash </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>m</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00361">361</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="a7fb5fc0e5d65ed4c3c77537a8fda8d32"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7fb5fc0e5d65ed4c3c77537a8fda8d32">&#9670;&nbsp;</a></span>setChild()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ripple::SHAMapInnerNode::setChild </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>m</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt;&#160;</td>
<td class="paramname"><em>child</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00287">287</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="a1a5be285c023d39777772c86322df101"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1a5be285c023d39777772c86322df101">&#9670;&nbsp;</a></span>shareChild()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ripple::SHAMapInnerNode::shareChild </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>m</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt; const &amp;&#160;</td>
<td class="paramname"><em>child</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00323">323</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="aee8c4572b5618083dd1513dbffba280d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aee8c4572b5618083dd1513dbffba280d">&#9670;&nbsp;</a></span>getChildPointer()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> * ripple::SHAMapInnerNode::getChildPointer </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>branch</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00335">335</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="a5693ae02e17473b1d7fec7cfea0d4443"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5693ae02e17473b1d7fec7cfea0d4443">&#9670;&nbsp;</a></span>getChild()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt; ripple::SHAMapInnerNode::getChild </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>branch</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00348">348</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="ad1d3440e82f822d85cc57734a16dc524"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad1d3440e82f822d85cc57734a16dc524">&#9670;&nbsp;</a></span>canonicalizeChild()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt; ripple::SHAMapInnerNode::canonicalizeChild </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>branch</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt;&#160;</td>
<td class="paramname"><em>node</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00371">371</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="a597b4db5c84297776d2e8ebdbe9e1b6f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a597b4db5c84297776d2e8ebdbe9e1b6f">&#9670;&nbsp;</a></span>isFullBelow()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ripple::SHAMapInnerNode::isFullBelow </td>
<td>(</td>
<td class="paramtype"><a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a>&#160;</td>
<td class="paramname"><em>generation</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8h_source.html#l00204">204</a> of file <a class="el" href="SHAMapInnerNode_8h_source.html">SHAMapInnerNode.h</a>.</p>
</div>
</div>
<a id="ad03f4f678da9104ef53946bb07bdf8ae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad03f4f678da9104ef53946bb07bdf8ae">&#9670;&nbsp;</a></span>setFullBelowGen()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ripple::SHAMapInnerNode::setFullBelowGen </td>
<td>(</td>
<td class="paramtype"><a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a>&#160;</td>
<td class="paramname"><em>gen</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8h_source.html#l00210">210</a> of file <a class="el" href="SHAMapInnerNode_8h_source.html">SHAMapInnerNode.h</a>.</p>
</div>
</div>
<a id="a73212411125e46812e0e19f2e307b155"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a73212411125e46812e0e19f2e307b155">&#9670;&nbsp;</a></span>updateHash()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ripple::SHAMapInnerNode::updateHash </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Recalculate the hash of this node. </p>
<p>Implements <a class="el" href="classripple_1_1SHAMapTreeNode.html#a6bdd2d5b35200db414ead5041495f7dd">ripple::SHAMapTreeNode</a>.</p>
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00196">196</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="ad83701be0c7a908a61601d1bcbf7ecb1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad83701be0c7a908a61601d1bcbf7ecb1">&#9670;&nbsp;</a></span>updateHashDeep()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ripple::SHAMapInnerNode::updateHashDeep </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Recalculate the hash of all children and this node. </p>
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00211">211</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="ad0ebb4c9ea3cc41acaf6806a3e43ec91"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad0ebb4c9ea3cc41acaf6806a3e43ec91">&#9670;&nbsp;</a></span>serializeForWire()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ripple::SHAMapInnerNode::serializeForWire </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classripple_1_1Serializer.html">Serializer</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Serialize the node in a format appropriate for sending over the wire. </p>
<p>Implements <a class="el" href="classripple_1_1SHAMapTreeNode.html#ad46f1e9ad54cbfff3af4c21991f659da">ripple::SHAMapTreeNode</a>.</p>
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00226">226</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="a5f4b0002303fdffed19ea5019f8070f8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5f4b0002303fdffed19ea5019f8070f8">&#9670;&nbsp;</a></span>serializeWithPrefix()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ripple::SHAMapInnerNode::serializeWithPrefix </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classripple_1_1Serializer.html">Serializer</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Serialize the node in a format appropriate for hashing. </p>
<p>Implements <a class="el" href="classripple_1_1SHAMapTreeNode.html#ae1888014b78e231a2ce381f8871fad61">ripple::SHAMapTreeNode</a>.</p>
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00250">250</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="aa91785cf9d4979e8dd4dd9c183ad9c5e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa91785cf9d4979e8dd4dd9c183ad9c5e">&#9670;&nbsp;</a></span>getString()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/string/basic_string.html">std::string</a> ripple::SHAMapInnerNode::getString </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classripple_1_1SHAMapNodeID.html">SHAMapNodeID</a> const &amp;&#160;</td>
<td class="paramname"><em>id</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reimplemented from <a class="el" href="classripple_1_1SHAMapTreeNode.html#a2dbee3cfa72319c01b649f4c255a5a9d">ripple::SHAMapTreeNode</a>.</p>
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00272">272</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="a964421b7b7b071f1a5daa95afa8f0fe9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a964421b7b7b071f1a5daa95afa8f0fe9">&#9670;&nbsp;</a></span>invariants()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ripple::SHAMapInnerNode::invariants </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>is_root</em> = <code>false</code></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implements <a class="el" href="classripple_1_1SHAMapTreeNode.html#a80832069374ff1ff0473b1eca6ece09f">ripple::SHAMapTreeNode</a>.</p>
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00399">399</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="ad1efe48ac7bf6f3b4a10ad9c26573bec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad1efe48ac7bf6f3b4a10ad9c26573bec">&#9670;&nbsp;</a></span>makeFullInner()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt; ripple::SHAMapInnerNode::makeFullInner </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classripple_1_1Slice.html">Slice</a>&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classripple_1_1SHAMapHash.html">SHAMapHash</a> const &amp;&#160;</td>
<td class="paramname"><em>hash</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>hashValid</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00126">126</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="a7c00b72186bf55aad286505bb5cedc00"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7c00b72186bf55aad286505bb5cedc00">&#9670;&nbsp;</a></span>makeCompressedInner()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt; ripple::SHAMapInnerNode::makeCompressedInner </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classripple_1_1Slice.html">Slice</a>&#160;</td>
<td class="paramname"><em>data</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8cpp_source.html#l00160">160</a> of file <a class="el" href="SHAMapInnerNode_8cpp_source.html">SHAMapInnerNode.cpp</a>.</p>
</div>
</div>
<a id="a454e86c9ed693f8921d53a915d8b1415"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a454e86c9ed693f8921d53a915d8b1415">&#9670;&nbsp;</a></span>getHash()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classripple_1_1SHAMapHash.html">SHAMapHash</a> const&amp; ripple::SHAMapTreeNode::getHash </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Return the hash of this node. </p>
<p class="definition">Definition at line <a class="el" href="SHAMapTreeNode_8h_source.html#l00143">143</a> of file <a class="el" href="SHAMapTreeNode_8h_source.html">SHAMapTreeNode.h</a>.</p>
</div>
</div>
<a id="a5631e2f77123e3b73229ef4c890ad60f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5631e2f77123e3b73229ef4c890ad60f">&#9670;&nbsp;</a></span>makeFromPrefix()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt; ripple::SHAMapTreeNode::makeFromPrefix </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classripple_1_1Slice.html">Slice</a>&#160;</td>
<td class="paramname"><em>rawNode</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classripple_1_1SHAMapHash.html">SHAMapHash</a> const &amp;&#160;</td>
<td class="paramname"><em>hash</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapTreeNode_8cpp_source.html#l00148">148</a> of file <a class="el" href="SHAMapTreeNode_8cpp_source.html">SHAMapTreeNode.cpp</a>.</p>
</div>
</div>
<a id="ae1b494609b7a732614554da92e235f57"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae1b494609b7a732614554da92e235f57">&#9670;&nbsp;</a></span>makeFromWire()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt; ripple::SHAMapTreeNode::makeFromWire </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classripple_1_1Slice.html">Slice</a>&#160;</td>
<td class="paramname"><em>rawNode</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapTreeNode_8cpp_source.html#l00116">116</a> of file <a class="el" href="SHAMapTreeNode_8cpp_source.html">SHAMapTreeNode.cpp</a>.</p>
</div>
</div>
<a id="a86766049429f10a7a04bca455542313e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a86766049429f10a7a04bca455542313e">&#9670;&nbsp;</a></span>makeTransaction()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt; ripple::SHAMapTreeNode::makeTransaction </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classripple_1_1Slice.html">Slice</a>&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classripple_1_1SHAMapHash.html">SHAMapHash</a> const &amp;&#160;</td>
<td class="paramname"><em>hash</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>hashValid</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapTreeNode_8cpp_source.html#l00040">40</a> of file <a class="el" href="SHAMapTreeNode_8cpp_source.html">SHAMapTreeNode.cpp</a>.</p>
</div>
</div>
<a id="a3c42ed30e5e522b0f9cfcb4a44ff197f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3c42ed30e5e522b0f9cfcb4a44ff197f">&#9670;&nbsp;</a></span>makeAccountState()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt; ripple::SHAMapTreeNode::makeAccountState </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classripple_1_1Slice.html">Slice</a>&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classripple_1_1SHAMapHash.html">SHAMapHash</a> const &amp;&#160;</td>
<td class="paramname"><em>hash</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>hashValid</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapTreeNode_8cpp_source.html#l00084">84</a> of file <a class="el" href="SHAMapTreeNode_8cpp_source.html">SHAMapTreeNode.cpp</a>.</p>
</div>
</div>
<a id="a14ef4be050f894475d155ea11f00d011"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a14ef4be050f894475d155ea11f00d011">&#9670;&nbsp;</a></span>makeTransactionWithMeta()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html">std::shared_ptr</a>&lt; <a class="el" href="classripple_1_1SHAMapTreeNode.html">SHAMapTreeNode</a> &gt; ripple::SHAMapTreeNode::makeTransactionWithMeta </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classripple_1_1Slice.html">Slice</a>&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classripple_1_1SHAMapHash.html">SHAMapHash</a> const &amp;&#160;</td>
<td class="paramname"><em>hash</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>hashValid</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapTreeNode_8cpp_source.html#l00055">55</a> of file <a class="el" href="SHAMapTreeNode_8cpp_source.html">SHAMapTreeNode.cpp</a>.</p>
</div>
</div>
<a id="acde6c67ea432f6bb32d2ecb5db786ce8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acde6c67ea432f6bb32d2ecb5db786ce8">&#9670;&nbsp;</a></span>getCounter()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static auto&amp; <a class="el" href="classripple_1_1CountedObject.html">ripple::CountedObject</a>&lt; <a class="el" href="classripple_1_1SHAMapInnerNode.html">SHAMapInnerNode</a> &gt;::getCounter</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span><span class="mlabel">noexcept</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="CountedObject_8h_source.html#l00128">128</a> of file <a class="el" href="CountedObject_8h_source.html">CountedObject.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a42a7132ff24a6edf8ca1e022f61826d9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a42a7132ff24a6edf8ca1e022f61826d9">&#9670;&nbsp;</a></span>branchFactor</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">constexpr unsigned int ripple::SHAMapInnerNode::branchFactor = 16</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Each inner node has 16 children (the 'radix tree' part of the map) </p>
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8h_source.html#l00046">46</a> of file <a class="el" href="SHAMapInnerNode_8h_source.html">SHAMapInnerNode.h</a>.</p>
</div>
</div>
<a id="ac506e73531d73c05cf6505d3ece00d41"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac506e73531d73c05cf6505d3ece00d41">&#9670;&nbsp;</a></span>hashesAndChildren_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classripple_1_1TaggedPointer.html">TaggedPointer</a> ripple::SHAMapInnerNode::hashesAndChildren_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Opaque type that contains the <code>hashes</code> array (array of type <code><a class="el" href="classripple_1_1SHAMapHash.html">SHAMapHash</a></code>) and the <code>children</code> array (array of type <code><a class="elRef" href="http://en.cppreference.com/w/cpp/memory/shared_ptr.html" title="STL class.">std::shared_ptr</a>&lt;<a class="el" href="classripple_1_1SHAMapInnerNode.html">SHAMapInnerNode</a>&gt;</code>). </p>
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8h_source.html#l00053">53</a> of file <a class="el" href="SHAMapInnerNode_8h_source.html">SHAMapInnerNode.h</a>.</p>
</div>
</div>
<a id="a07f4125beab496a2b812ce3f3c43f31e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a07f4125beab496a2b812ce3f3c43f31e">&#9670;&nbsp;</a></span>fullBelowGen_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> ripple::SHAMapInnerNode::fullBelowGen_ = 0</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8h_source.html#l00055">55</a> of file <a class="el" href="SHAMapInnerNode_8h_source.html">SHAMapInnerNode.h</a>.</p>
</div>
</div>
<a id="a52169174ccb10b0ea379da3463dba155"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a52169174ccb10b0ea379da3463dba155">&#9670;&nbsp;</a></span>isBranch_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint16_t</a> ripple::SHAMapInnerNode::isBranch_ = 0</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8h_source.html#l00056">56</a> of file <a class="el" href="SHAMapInnerNode_8h_source.html">SHAMapInnerNode.h</a>.</p>
</div>
</div>
<a id="af954310317885e9dbbc845270ddd5076"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af954310317885e9dbbc845270ddd5076">&#9670;&nbsp;</a></span>lock_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/atomic/atomic.html">std::atomic</a>&lt;<a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint16_t</a>&gt; ripple::SHAMapInnerNode::lock_ = 0</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">mutable</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A bitlock for the children of this node, with one bit per child. </p>
<p class="definition">Definition at line <a class="el" href="SHAMapInnerNode_8h_source.html#l00059">59</a> of file <a class="el" href="SHAMapInnerNode_8h_source.html">SHAMapInnerNode.h</a>.</p>
</div>
</div>
<a id="a705bca4eb622097a917a3cac5c3a013d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a705bca4eb622097a917a3cac5c3a013d">&#9670;&nbsp;</a></span>hash_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classripple_1_1SHAMapHash.html">SHAMapHash</a> ripple::SHAMapTreeNode::hash_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="SHAMapTreeNode_8h_source.html#l00056">56</a> of file <a class="el" href="SHAMapTreeNode_8h_source.html">SHAMapTreeNode.h</a>.</p>
</div>
</div>
<a id="a7f27d867484104446867c0f50adc5ffb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7f27d867484104446867c0f50adc5ffb">&#9670;&nbsp;</a></span>cowid_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="elRef" href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a> ripple::SHAMapTreeNode::cowid_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Determines the owning <a class="el" href="classripple_1_1SHAMap.html" title="A SHAMap is both a radix tree with a fan-out of 16 and a Merkle tree.">SHAMap</a>, if any. </p>
<p>Used for copy-on-write semantics.</p>
<p>If this value is 0, the node is not dirty and does not need to be flushed. It is eligible for sharing and may be included multiple <a class="el" href="classripple_1_1SHAMap.html" title="A SHAMap is both a radix tree with a fan-out of 16 and a Merkle tree.">SHAMap</a> instances. </p>
<p class="definition">Definition at line <a class="el" href="SHAMapTreeNode_8h_source.html#l00064">64</a> of file <a class="el" href="SHAMapTreeNode_8h_source.html">SHAMapTreeNode.h</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.17
</small></address>
</body>
</html>