dash-docs/en/doxygen/html/masternode-payments_8h_source.html

221 lines
96 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Dash Core: src/masternode-payments.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="bitcoin_logo_doxygen.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Dash Core
&#160;<span id="projectnumber">0.12.2.1</span>
</div>
<div id="projectbrief">P2P Digital Currency</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('masternode-payments_8h_source.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">masternode-payments.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="masternode-payments_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">// Copyright (c) 2014-2017 The Dash Core developers</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment">// Distributed under the MIT/X11 software license, see the accompanying</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment">// file COPYING or http://www.opensource.org/licenses/mit-license.php.</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="preprocessor">#ifndef MASTERNODE_PAYMENTS_H</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="preprocessor">#define MASTERNODE_PAYMENTS_H</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="util_8h.html">util.h</a>&quot;</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="core__io_8h.html">core_io.h</a>&quot;</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="key_8h.html">key.h</a>&quot;</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="masternode_8h.html">masternode.h</a>&quot;</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="net__processing_8h.html">net_processing.h</a>&quot;</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="utilstrencodings_8h.html">utilstrencodings.h</a>&quot;</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="keyword">class </span><a class="code" href="classCMasternodePayments.html">CMasternodePayments</a>;</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="keyword">class </span><a class="code" href="classCMasternodePaymentVote.html">CMasternodePaymentVote</a>;</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="keyword">class </span><a class="code" href="classCMasternodeBlockPayees.html">CMasternodeBlockPayees</a>;</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;</div><div class="line"><a name="l00019"></a><span class="lineno"><a class="line" href="masternode-payments_8h.html#aee4296d2886eb994c149795e80d42d7e"> 19</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="masternode-payments_8h.html#aee4296d2886eb994c149795e80d42d7e">MNPAYMENTS_SIGNATURES_REQUIRED</a> = 6;</div><div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="masternode-payments_8h.html#a05e13919c270de268e28afc0227a9c2c"> 20</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="masternode-payments_8h.html#a05e13919c270de268e28afc0227a9c2c">MNPAYMENTS_SIGNATURES_TOTAL</a> = 10;</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment">// vote for masternode and be elected as a payment winner</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment">// V1 - Last protocol version before update</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment">// V2 - Newest protocol version</span></div><div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="masternode-payments_8h.html#a55c7b4ef12706994a2185e9dc7e773b1"> 26</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="masternode-payments_8h.html#a55c7b4ef12706994a2185e9dc7e773b1">MIN_MASTERNODE_PAYMENT_PROTO_VERSION_1</a> = 70206;</div><div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="masternode-payments_8h.html#aa1f4489ed173ce38197edb296f385d5e"> 27</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="masternode-payments_8h.html#aa1f4489ed173ce38197edb296f385d5e">MIN_MASTERNODE_PAYMENT_PROTO_VERSION_2</a> = 70208;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="keyword">extern</span> <a class="code" href="classAnnotatedMixin.html">CCriticalSection</a> <a class="code" href="masternode-payments_8h.html#a51764240f42529c755c09fbbcf6203c4">cs_vecPayees</a>;</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="keyword">extern</span> <a class="code" href="classAnnotatedMixin.html">CCriticalSection</a> <a class="code" href="masternode-payments_8h.html#aac327e3a251800c22ec67bfa9534c838">cs_mapMasternodeBlocks</a>;</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="keyword">extern</span> <a class="code" href="classAnnotatedMixin.html">CCriticalSection</a> <a class="code" href="masternode-payments_8h.html#a50c9d39685d2d650800068de85c593c4">cs_mapMasternodePayeeVotes</a>;</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="keyword">extern</span> <a class="code" href="classCMasternodePayments.html">CMasternodePayments</a> <a class="code" href="masternode-payments_8h.html#ab15235ecb957ac017b2a372923b90765">mnpayments</a>;</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="masternode-payments_8h.html#ab5c4de235616a5c435b32167d76f1efe">IsBlockValueValid</a>(<span class="keyword">const</span> <a class="code" href="classCBlock.html">CBlock</a>&amp; block, <span class="keywordtype">int</span> <a class="code" href="classCMasternodeBlockPayees.html#ae7eae4dd466c444d7c41debcbcc402f1">nBlockHeight</a>, <a class="code" href="amount_8h.html#a4eaf3a5239714d8c45b851527f7cb564">CAmount</a> blockReward, std::string &amp;strErrorRet);</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="masternode-payments_8h.html#a26df8e859f425afc3af5448f582c8dd5">IsBlockPayeeValid</a>(<span class="keyword">const</span> <a class="code" href="classCTransaction.html">CTransaction</a>&amp; txNew, <span class="keywordtype">int</span> <a class="code" href="classCMasternodeBlockPayees.html#ae7eae4dd466c444d7c41debcbcc402f1">nBlockHeight</a>, <a class="code" href="amount_8h.html#a4eaf3a5239714d8c45b851527f7cb564">CAmount</a> blockReward);</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="keywordtype">void</span> <a class="code" href="masternode-payments_8h.html#a1a60010ef73db581ad54a165770391c6">FillBlockPayments</a>(<a class="code" href="structCMutableTransaction.html">CMutableTransaction</a>&amp; txNew, <span class="keywordtype">int</span> <a class="code" href="classCMasternodeBlockPayees.html#ae7eae4dd466c444d7c41debcbcc402f1">nBlockHeight</a>, <a class="code" href="amount_8h.html#a4eaf3a5239714d8c45b851527f7cb564">CAmount</a> blockReward, <a class="code" href="classCTxOut.html">CTxOut</a>&amp; txoutMasternodeRet, std::vector&lt;CTxOut&gt;&amp; voutSuperblockRet);</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;std::string <a class="code" href="masternode-payments_8h.html#a7828ab0b9a1302db35b658f727b260e1">GetRequiredPaymentsString</a>(<span class="keywordtype">int</span> <a class="code" href="classCMasternodeBlockPayees.html#ae7eae4dd466c444d7c41debcbcc402f1">nBlockHeight</a>);</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classCMasternodePayee.html"> 41</a></span>&#160;<span class="keyword">class </span><a class="code" href="classCMasternodePayee.html">CMasternodePayee</a></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;{</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keyword">private</span>:</div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="classCMasternodePayee.html#ab7f8d7f7108b556c92edd00ddd190e63"> 44</a></span>&#160; <a class="code" href="classCScript.html">CScript</a> <a class="code" href="classCMasternodePayee.html#ab7f8d7f7108b556c92edd00ddd190e63">scriptPubKey</a>;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="classCMasternodePayee.html#a1c2d5658d7f9d0e80421d674a89427fc"> 45</a></span>&#160; std::vector&lt;uint256&gt; <a class="code" href="classCMasternodePayee.html#a1c2d5658d7f9d0e80421d674a89427fc">vecVoteHashes</a>;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classCMasternodePayee.html#ad2280163b5e84e48061851c42e7bc5fa"> 48</a></span>&#160; <a class="code" href="classCMasternodePayee.html#ad2280163b5e84e48061851c42e7bc5fa">CMasternodePayee</a>() :</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="classCMasternodePayee.html#ab7f8d7f7108b556c92edd00ddd190e63">scriptPubKey</a>(),</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="classCMasternodePayee.html#a1c2d5658d7f9d0e80421d674a89427fc">vecVoteHashes</a>()</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; {}</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classCMasternodePayee.html#ab55ebed87bf241d648d4ad4f806d8538"> 53</a></span>&#160; <a class="code" href="classCMasternodePayee.html#ab55ebed87bf241d648d4ad4f806d8538">CMasternodePayee</a>(<a class="code" href="classCScript.html">CScript</a> payee, <a class="code" href="classuint256.html">uint256</a> hashIn) :</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="classCMasternodePayee.html#ab7f8d7f7108b556c92edd00ddd190e63">scriptPubKey</a>(payee),</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="classCMasternodePayee.html#a1c2d5658d7f9d0e80421d674a89427fc">vecVoteHashes</a>()</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; {</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <a class="code" href="classCMasternodePayee.html#a1c2d5658d7f9d0e80421d674a89427fc">vecVoteHashes</a>.push_back(hashIn);</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; }</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="classCMasternodePayee.html#a601ce07af776d21f02a76878c6de16e8"> 60</a></span>&#160; <a class="code" href="classCMasternodePayee.html#a601ce07af776d21f02a76878c6de16e8">ADD_SERIALIZE_METHODS</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">typename</span> Stream, <span class="keyword">typename</span> Operation&gt;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="classCMasternodePayee.html#a43f62a2409a02ccb16b4b43b00442888"> 63</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classCMasternodePayee.html#a43f62a2409a02ccb16b4b43b00442888">SerializationOp</a>(Stream&amp; s, Operation ser_action, <span class="keywordtype">int</span> nType, <span class="keywordtype">int</span> nVersion) {</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="serialize_8h.html#a4d7fc7040e01003a01f367b8d90324f1">READWRITE</a>(*(<a class="code" href="classprevector.html">CScriptBase</a>*)(&amp;<a class="code" href="classCMasternodePayee.html#ab7f8d7f7108b556c92edd00ddd190e63">scriptPubKey</a>));</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="serialize_8h.html#a4d7fc7040e01003a01f367b8d90324f1">READWRITE</a>(<a class="code" href="classCMasternodePayee.html#a1c2d5658d7f9d0e80421d674a89427fc">vecVoteHashes</a>);</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; }</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="classCMasternodePayee.html#ab172befa55a1d1c5f96f2cdfc0ca2ede"> 68</a></span>&#160; <a class="code" href="classCScript.html">CScript</a> <a class="code" href="classCMasternodePayee.html#ab172befa55a1d1c5f96f2cdfc0ca2ede">GetPayee</a>() { <span class="keywordflow">return</span> <a class="code" href="classCMasternodePayee.html#ab7f8d7f7108b556c92edd00ddd190e63">scriptPubKey</a>; }</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="classCMasternodePayee.html#a32d4afac5ac8cfd6740d7fd4c7ad026e"> 70</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classCMasternodePayee.html#a32d4afac5ac8cfd6740d7fd4c7ad026e">AddVoteHash</a>(<a class="code" href="classuint256.html">uint256</a> hashIn) { <a class="code" href="classCMasternodePayee.html#a1c2d5658d7f9d0e80421d674a89427fc">vecVoteHashes</a>.push_back(hashIn); }</div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="classCMasternodePayee.html#a0a528122e2a1d52cd56259c4bf70a263"> 71</a></span>&#160; std::vector&lt;uint256&gt; <a class="code" href="classCMasternodePayee.html#a0a528122e2a1d52cd56259c4bf70a263">GetVoteHashes</a>() { <span class="keywordflow">return</span> <a class="code" href="classCMasternodePayee.html#a1c2d5658d7f9d0e80421d674a89427fc">vecVoteHashes</a>; }</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="classCMasternodePayee.html#a8d009230992f87adbac046f5d7df8ce5"> 72</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classCMasternodePayee.html#a8d009230992f87adbac046f5d7df8ce5">GetVoteCount</a>() { <span class="keywordflow">return</span> <a class="code" href="classCMasternodePayee.html#a1c2d5658d7f9d0e80421d674a89427fc">vecVoteHashes</a>.size(); }</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;};</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment">// Keep track of votes for payees from masternodes</span></div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="classCMasternodeBlockPayees.html"> 76</a></span>&#160;<span class="keyword">class </span><a class="code" href="classCMasternodeBlockPayees.html">CMasternodeBlockPayees</a></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;{</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classCMasternodeBlockPayees.html#ae7eae4dd466c444d7c41debcbcc402f1"> 79</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classCMasternodeBlockPayees.html#ae7eae4dd466c444d7c41debcbcc402f1">nBlockHeight</a>;</div><div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="classCMasternodeBlockPayees.html#a61f566bf72c56e12ccf1b3159c867c9d"> 80</a></span>&#160; std::vector&lt;CMasternodePayee&gt; <a class="code" href="classCMasternodeBlockPayees.html#a61f566bf72c56e12ccf1b3159c867c9d">vecPayees</a>;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="classCMasternodeBlockPayees.html#a57cf1c21d11f8bda7da5282632b9528c"> 82</a></span>&#160; <a class="code" href="classCMasternodeBlockPayees.html#a57cf1c21d11f8bda7da5282632b9528c">CMasternodeBlockPayees</a>() :</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="classCMasternodeBlockPayees.html#ae7eae4dd466c444d7c41debcbcc402f1">nBlockHeight</a>(0),</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <a class="code" href="classCMasternodeBlockPayees.html#a61f566bf72c56e12ccf1b3159c867c9d">vecPayees</a>()</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; {}</div><div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="classCMasternodeBlockPayees.html#a0b181e78ae9b160c146bc9e8d12d44b5"> 86</a></span>&#160; <a class="code" href="classCMasternodeBlockPayees.html#a0b181e78ae9b160c146bc9e8d12d44b5">CMasternodeBlockPayees</a>(<span class="keywordtype">int</span> nBlockHeightIn) :</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="classCMasternodeBlockPayees.html#ae7eae4dd466c444d7c41debcbcc402f1">nBlockHeight</a>(nBlockHeightIn),</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="classCMasternodeBlockPayees.html#a61f566bf72c56e12ccf1b3159c867c9d">vecPayees</a>()</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; {}</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div><div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="classCMasternodeBlockPayees.html#ab596470ea981333cb3a905422c64eec1"> 91</a></span>&#160; <a class="code" href="classCMasternodeBlockPayees.html#ab596470ea981333cb3a905422c64eec1">ADD_SERIALIZE_METHODS</a>;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">typename</span> Stream, <span class="keyword">typename</span> Operation&gt;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="classCMasternodeBlockPayees.html#a482b77d8b758b21b4e6b0c8a0ef7a09f"> 94</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classCMasternodeBlockPayees.html#a482b77d8b758b21b4e6b0c8a0ef7a09f">SerializationOp</a>(Stream&amp; s, Operation ser_action, <span class="keywordtype">int</span> nType, <span class="keywordtype">int</span> nVersion) {</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="serialize_8h.html#a4d7fc7040e01003a01f367b8d90324f1">READWRITE</a>(<a class="code" href="classCMasternodeBlockPayees.html#ae7eae4dd466c444d7c41debcbcc402f1">nBlockHeight</a>);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="serialize_8h.html#a4d7fc7040e01003a01f367b8d90324f1">READWRITE</a>(<a class="code" href="classCMasternodeBlockPayees.html#a61f566bf72c56e12ccf1b3159c867c9d">vecPayees</a>);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; }</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classCMasternodeBlockPayees.html#abce1347dcf4dc53a329f2dc338a77dc3">AddPayee</a>(<span class="keyword">const</span> <a class="code" href="classCMasternodePaymentVote.html">CMasternodePaymentVote</a>&amp; vote);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classCMasternodeBlockPayees.html#a1b7d7842fa0102e17aaf4637b5815d04">GetBestPayee</a>(<a class="code" href="classCScript.html">CScript</a>&amp; payeeRet);</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classCMasternodeBlockPayees.html#a5faa2a615fd40387b03c3f14b0c7e578">HasPayeeWithVotes</a>(<span class="keyword">const</span> <a class="code" href="classCScript.html">CScript</a>&amp; payeeIn, <span class="keywordtype">int</span> nVotesReq);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classCMasternodeBlockPayees.html#a6721f357d17e653ceb93c28ffd3ae528">IsTransactionValid</a>(<span class="keyword">const</span> <a class="code" href="classCTransaction.html">CTransaction</a>&amp; txNew);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; std::string <a class="code" href="classCMasternodeBlockPayees.html#a1026e555a9484567ea6cbfe8f90b428e">GetRequiredPaymentsString</a>();</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;};</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment">// vote for the winning payment</span></div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="classCMasternodePaymentVote.html"> 109</a></span>&#160;<span class="keyword">class </span><a class="code" href="classCMasternodePaymentVote.html">CMasternodePaymentVote</a></div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;{</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="classCMasternodePaymentVote.html#a1a07779b769a2ca2b10267d61553df94"> 112</a></span>&#160; <a class="code" href="classCTxIn.html">CTxIn</a> <a class="code" href="classCMasternodePaymentVote.html#a1a07779b769a2ca2b10267d61553df94">vinMasternode</a>;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="classCMasternodePaymentVote.html#ad75d093e53aa3e727a81aea841f4e26d"> 114</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classCMasternodePaymentVote.html#ad75d093e53aa3e727a81aea841f4e26d">nBlockHeight</a>;</div><div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="classCMasternodePaymentVote.html#ab68f835feb0b7130296c642f526ce48b"> 115</a></span>&#160; <a class="code" href="classCScript.html">CScript</a> <a class="code" href="classCMasternodePaymentVote.html#ab68f835feb0b7130296c642f526ce48b">payee</a>;</div><div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="classCMasternodePaymentVote.html#ad2c427fe8708689ad611b687d0bc89e0"> 116</a></span>&#160; std::vector&lt;unsigned char&gt; <a class="code" href="classCMasternodePaymentVote.html#ad2c427fe8708689ad611b687d0bc89e0">vchSig</a>;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="classCMasternodePaymentVote.html#a91fe054a7e2c78e22bc4d9f3bc4651d1"> 118</a></span>&#160; <a class="code" href="classCMasternodePaymentVote.html#a91fe054a7e2c78e22bc4d9f3bc4651d1">CMasternodePaymentVote</a>() :</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <a class="code" href="classCMasternodePaymentVote.html#a1a07779b769a2ca2b10267d61553df94">vinMasternode</a>(),</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <a class="code" href="classCMasternodePaymentVote.html#ad75d093e53aa3e727a81aea841f4e26d">nBlockHeight</a>(0),</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <a class="code" href="classCMasternodePaymentVote.html#ab68f835feb0b7130296c642f526ce48b">payee</a>(),</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <a class="code" href="classCMasternodePaymentVote.html#ad2c427fe8708689ad611b687d0bc89e0">vchSig</a>()</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; {}</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;</div><div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="classCMasternodePaymentVote.html#aa7cbc6f18d8ab3ae610d6a168532ee6c"> 125</a></span>&#160; <a class="code" href="classCMasternodePaymentVote.html#aa7cbc6f18d8ab3ae610d6a168532ee6c">CMasternodePaymentVote</a>(<a class="code" href="classCOutPoint.html">COutPoint</a> outpointMasternode, <span class="keywordtype">int</span> <a class="code" href="classCMasternodePaymentVote.html#ad75d093e53aa3e727a81aea841f4e26d">nBlockHeight</a>, <a class="code" href="classCScript.html">CScript</a> <a class="code" href="classCMasternodePaymentVote.html#ab68f835feb0b7130296c642f526ce48b">payee</a>) :</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="classCMasternodePaymentVote.html#a1a07779b769a2ca2b10267d61553df94">vinMasternode</a>(outpointMasternode),</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="classCMasternodePaymentVote.html#ad75d093e53aa3e727a81aea841f4e26d">nBlockHeight</a>(<a class="code" href="classCMasternodePaymentVote.html#ad75d093e53aa3e727a81aea841f4e26d">nBlockHeight</a>),</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <a class="code" href="classCMasternodePaymentVote.html#ab68f835feb0b7130296c642f526ce48b">payee</a>(<a class="code" href="classCMasternodePaymentVote.html#ab68f835feb0b7130296c642f526ce48b">payee</a>),</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="classCMasternodePaymentVote.html#ad2c427fe8708689ad611b687d0bc89e0">vchSig</a>()</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; {}</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;</div><div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="classCMasternodePaymentVote.html#a4e198526440fedc60e0cfae574341c53"> 132</a></span>&#160; <a class="code" href="classCMasternodePaymentVote.html#a4e198526440fedc60e0cfae574341c53">ADD_SERIALIZE_METHODS</a>;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">typename</span> Stream, <span class="keyword">typename</span> Operation&gt;</div><div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="classCMasternodePaymentVote.html#a21c61547161e4de3a29b8ea80917926d"> 135</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classCMasternodePaymentVote.html#a21c61547161e4de3a29b8ea80917926d">SerializationOp</a>(Stream&amp; s, Operation ser_action, <span class="keywordtype">int</span> nType, <span class="keywordtype">int</span> nVersion) {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <a class="code" href="serialize_8h.html#a4d7fc7040e01003a01f367b8d90324f1">READWRITE</a>(<a class="code" href="classCMasternodePaymentVote.html#a1a07779b769a2ca2b10267d61553df94">vinMasternode</a>);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <a class="code" href="serialize_8h.html#a4d7fc7040e01003a01f367b8d90324f1">READWRITE</a>(<a class="code" href="classCMasternodePaymentVote.html#ad75d093e53aa3e727a81aea841f4e26d">nBlockHeight</a>);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="serialize_8h.html#a4d7fc7040e01003a01f367b8d90324f1">READWRITE</a>(*(<a class="code" href="classprevector.html">CScriptBase</a>*)(&amp;<a class="code" href="classCMasternodePaymentVote.html#ab68f835feb0b7130296c642f526ce48b">payee</a>));</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="serialize_8h.html#a4d7fc7040e01003a01f367b8d90324f1">READWRITE</a>(<a class="code" href="classCMasternodePaymentVote.html#ad2c427fe8708689ad611b687d0bc89e0">vchSig</a>);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; }</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div><div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="classCMasternodePaymentVote.html#ac9dc15bcd8554151de83079ca0b65696"> 142</a></span>&#160; <a class="code" href="classuint256.html">uint256</a> <a class="code" href="classCMasternodePaymentVote.html#ac9dc15bcd8554151de83079ca0b65696">GetHash</a>()<span class="keyword"> const </span>{</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <a class="code" href="classCHashWriter.html">CHashWriter</a> ss(<a class="code" href="serialize_8h.html#ae4d5251432e1a9e6803c0240cc492e18aca6c7596d50ce42f28b5b97f39ba178a">SER_GETHASH</a>, <a class="code" href="version_8h.html#a4e2497f7c9c4319adcaf945159ec63f4">PROTOCOL_VERSION</a>);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; ss &lt;&lt; *(<a class="code" href="classprevector.html">CScriptBase</a>*)(&amp;<a class="code" href="classCMasternodePaymentVote.html#ab68f835feb0b7130296c642f526ce48b">payee</a>);</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; ss &lt;&lt; <a class="code" href="classCMasternodePaymentVote.html#ad75d093e53aa3e727a81aea841f4e26d">nBlockHeight</a>;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; ss &lt;&lt; <a class="code" href="classCMasternodePaymentVote.html#a1a07779b769a2ca2b10267d61553df94">vinMasternode</a>.<a class="code" href="classCTxIn.html#aed9312051a25380cbd7f123408ab7c20">prevout</a>;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">return</span> ss.<a class="code" href="classCHashWriter.html#ae94a937211502eabf19477630090093a">GetHash</a>();</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; }</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classCMasternodePaymentVote.html#a7e3cb1b9bbd3c03500facbea2a66de5d">Sign</a>();</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classCMasternodePaymentVote.html#a07da3b083404cef1b60ed8b1305e4f0c">CheckSignature</a>(<span class="keyword">const</span> <a class="code" href="classCPubKey.html">CPubKey</a>&amp; pubKeyMasternode, <span class="keywordtype">int</span> nValidationHeight, <span class="keywordtype">int</span> &amp;nDos);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classCMasternodePaymentVote.html#a1a71aea4fa595413ae19377afc8e4de6">IsValid</a>(<a class="code" href="classCNode.html">CNode</a>* pnode, <span class="keywordtype">int</span> nValidationHeight, std::string&amp; strError, <a class="code" href="classCConnman.html">CConnman</a>&amp; connman);</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classCMasternodePaymentVote.html#a41908eaf0855f6e5f62be63a048af9b5">Relay</a>(<a class="code" href="classCConnman.html">CConnman</a>&amp; connman);</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;</div><div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="classCMasternodePaymentVote.html#a4f228e9faf3d4a61fffb201bfb8007e5"> 156</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classCMasternodePaymentVote.html#a4f228e9faf3d4a61fffb201bfb8007e5">IsVerified</a>() { <span class="keywordflow">return</span> !<a class="code" href="classCMasternodePaymentVote.html#ad2c427fe8708689ad611b687d0bc89e0">vchSig</a>.empty(); }</div><div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="classCMasternodePaymentVote.html#a4b25b5a393ea2dc1cbc63e50a73eef56"> 157</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classCMasternodePaymentVote.html#a4b25b5a393ea2dc1cbc63e50a73eef56">MarkAsNotVerified</a>() { <a class="code" href="classCMasternodePaymentVote.html#ad2c427fe8708689ad611b687d0bc89e0">vchSig</a>.clear(); }</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; std::string <a class="code" href="classCMasternodePaymentVote.html#a6b80e1a526e23a5745e3dc5f0dbbbdc5">ToString</a>() <span class="keyword">const</span>;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;};</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment">// Masternode Payments Class</span></div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment">// Keeps track of who should get paid for which blocks</span></div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;</div><div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="classCMasternodePayments.html"> 167</a></span>&#160;<span class="keyword">class </span><a class="code" href="classCMasternodePayments.html">CMasternodePayments</a></div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;{</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="keyword">private</span>:</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="comment">// masternode count times nStorageCoeff payments blocks should be stored ...</span></div><div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="classCMasternodePayments.html#a849874b6a32a2efafb4b19f53551cefc"> 171</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">float</span> <a class="code" href="classCMasternodePayments.html#a849874b6a32a2efafb4b19f53551cefc">nStorageCoeff</a>;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="comment">// ... but at least nMinBlocksToStore (payments blocks)</span></div><div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="classCMasternodePayments.html#aab34cb80ed48506ef3bdc231f41425b4"> 173</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="classCMasternodePayments.html#aab34cb80ed48506ef3bdc231f41425b4">nMinBlocksToStore</a>;</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="comment">// Keep track of current block height</span></div><div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="classCMasternodePayments.html#a3f14bfd5d95c09549fcde66a40f5b75f"> 176</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classCMasternodePayments.html#a3f14bfd5d95c09549fcde66a40f5b75f">nCachedBlockHeight</a>;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="classCMasternodePayments.html#a830408cb2635a3e3b4a1c48d1deefb85"> 179</a></span>&#160; std::map&lt;uint256, CMasternodePaymentVote&gt; <a class="code" href="classCMasternodePayments.html#a830408cb2635a3e3b4a1c48d1deefb85">mapMasternodePaymentVotes</a>;</div><div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="classCMasternodePayments.html#a6feb2c94183cd649ede84dc38d3ae442"> 180</a></span>&#160; std::map&lt;int, CMasternodeBlockPayees&gt; <a class="code" href="classCMasternodePayments.html#a6feb2c94183cd649ede84dc38d3ae442">mapMasternodeBlocks</a>;</div><div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="classCMasternodePayments.html#a8922cb51ac6a8aeb4e590d5e18b5bd1a"> 181</a></span>&#160; std::map&lt;COutPoint, int&gt; <a class="code" href="classCMasternodePayments.html#a8922cb51ac6a8aeb4e590d5e18b5bd1a">mapMasternodesLastVote</a>;</div><div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="classCMasternodePayments.html#af53e14eb857028bb1411be2355dfa9f6"> 182</a></span>&#160; std::map&lt;COutPoint, int&gt; <a class="code" href="classCMasternodePayments.html#af53e14eb857028bb1411be2355dfa9f6">mapMasternodesDidNotVote</a>;</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="classCMasternodePayments.html#a4b9454f265a927528c881716e7649973"> 184</a></span>&#160; <a class="code" href="classCMasternodePayments.html#a4b9454f265a927528c881716e7649973">CMasternodePayments</a>() : <a class="code" href="classCMasternodePayments.html#a849874b6a32a2efafb4b19f53551cefc">nStorageCoeff</a>(1.25), <a class="code" href="classCMasternodePayments.html#aab34cb80ed48506ef3bdc231f41425b4">nMinBlocksToStore</a>(5000) {}</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;</div><div class="line"><a name="l00186"></a><span class="lineno"><a class="line" href="classCMasternodePayments.html#a0f90877d276308aa16314dcaa84f332c"> 186</a></span>&#160; <a class="code" href="classCMasternodePayments.html#a0f90877d276308aa16314dcaa84f332c">ADD_SERIALIZE_METHODS</a>;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">typename</span> Stream, <span class="keyword">typename</span> Operation&gt;</div><div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="classCMasternodePayments.html#a94644b08b8e3d359794457a0871f95cc"> 189</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classCMasternodePayments.html#a94644b08b8e3d359794457a0871f95cc">SerializationOp</a>(Stream&amp; s, Operation ser_action, <span class="keywordtype">int</span> nType, <span class="keywordtype">int</span> nVersion) {</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="code" href="serialize_8h.html#a4d7fc7040e01003a01f367b8d90324f1">READWRITE</a>(<a class="code" href="classCMasternodePayments.html#a830408cb2635a3e3b4a1c48d1deefb85">mapMasternodePaymentVotes</a>);</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <a class="code" href="serialize_8h.html#a4d7fc7040e01003a01f367b8d90324f1">READWRITE</a>(<a class="code" href="classCMasternodePayments.html#a6feb2c94183cd649ede84dc38d3ae442">mapMasternodeBlocks</a>);</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; }</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classCMasternodePayments.html#ace5711bd6c2b17cd1e35e0924aae4268">Clear</a>();</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classCMasternodePayments.html#a90c4db8f9eaf3749ecbed6a0840333bb">AddPaymentVote</a>(<span class="keyword">const</span> <a class="code" href="classCMasternodePaymentVote.html">CMasternodePaymentVote</a>&amp; vote);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classCMasternodePayments.html#a3b0eff1d9f454e6451f2a290e6677b3a">HasVerifiedPaymentVote</a>(<a class="code" href="classuint256.html">uint256</a> hashIn);</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classCMasternodePayments.html#a3827f5f6335d03ba2c4fabe542d55d54">ProcessBlock</a>(<span class="keywordtype">int</span> nBlockHeight, <a class="code" href="classCConnman.html">CConnman</a>&amp; connman);</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classCMasternodePayments.html#a903d39fccb07351211ef86dfab69a650">CheckPreviousBlockVotes</a>(<span class="keywordtype">int</span> nPrevBlockHeight);</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classCMasternodePayments.html#abdbcfd46df44a78604f3d4e767de9329">Sync</a>(<a class="code" href="classCNode.html">CNode</a>* node, <a class="code" href="classCConnman.html">CConnman</a>&amp; connman);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classCMasternodePayments.html#ae7bd46e78b426a11be0f643e1fc0f469">RequestLowDataPaymentBlocks</a>(<a class="code" href="classCNode.html">CNode</a>* pnode, <a class="code" href="classCConnman.html">CConnman</a>&amp; connman);</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classCMasternodePayments.html#a33e0570c7554fa461f407649fb6bbbcd">CheckAndRemove</a>();</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classCMasternodePayments.html#a23ced53f72a503a71bbe6be8d472ecfd">GetBlockPayee</a>(<span class="keywordtype">int</span> nBlockHeight, <a class="code" href="classCScript.html">CScript</a>&amp; payee);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classCMasternodePayments.html#aa1376c50210f892f65ad7ee6408c02f9">IsTransactionValid</a>(<span class="keyword">const</span> <a class="code" href="classCTransaction.html">CTransaction</a>&amp; txNew, <span class="keywordtype">int</span> nBlockHeight);</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classCMasternodePayments.html#ae7b481b02b86b14946497bb21e375f1a">IsScheduled</a>(<a class="code" href="classCMasternode.html">CMasternode</a>&amp; mn, <span class="keywordtype">int</span> nNotBlockHeight);</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classCMasternodePayments.html#ad0891106128d392e1cb4206061b4aec4">CanVote</a>(<a class="code" href="classCOutPoint.html">COutPoint</a> outMasternode, <span class="keywordtype">int</span> nBlockHeight);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordtype">int</span> <a class="code" href="classCMasternodePayments.html#adb98cc9f21cf8746c0b6ac3131b85dfb">GetMinMasternodePaymentsProto</a>();</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classCMasternodePayments.html#ab422d617badf70979aeda0cb745714ad">ProcessMessage</a>(<a class="code" href="classCNode.html">CNode</a>* pfrom, std::string&amp; strCommand, <a class="code" href="classCDataStream.html">CDataStream</a>&amp; vRecv, <a class="code" href="classCConnman.html">CConnman</a>&amp; connman);</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; std::string <a class="code" href="classCMasternodePayments.html#a5527c8d625c8e32ea27cf645453365cc">GetRequiredPaymentsString</a>(<span class="keywordtype">int</span> nBlockHeight);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classCMasternodePayments.html#a6c323905008eeba029283b2467463b9e">FillBlockPayee</a>(<a class="code" href="structCMutableTransaction.html">CMutableTransaction</a>&amp; txNew, <span class="keywordtype">int</span> nBlockHeight, <a class="code" href="amount_8h.html#a4eaf3a5239714d8c45b851527f7cb564">CAmount</a> blockReward, <a class="code" href="classCTxOut.html">CTxOut</a>&amp; txoutMasternodeRet);</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; std::string <a class="code" href="classCMasternodePayments.html#ac020d2b42771a003a271d4ddb014272a">ToString</a>() <span class="keyword">const</span>;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div><div class="line"><a name="l00217"></a><span class="lineno"><a class="line" href="classCMasternodePayments.html#ab7679d3a59bcccefe00eeff3e18a8e77"> 217</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classCMasternodePayments.html#ab7679d3a59bcccefe00eeff3e18a8e77">GetBlockCount</a>() { <span class="keywordflow">return</span> <a class="code" href="classCMasternodePayments.html#a6feb2c94183cd649ede84dc38d3ae442">mapMasternodeBlocks</a>.size(); }</div><div class="line"><a name="l00218"></a><span class="lineno"><a class="line" href="classCMasternodePayments.html#a5bef017573f7ecee7e1a15a4b1c43017"> 218</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classCMasternodePayments.html#a5bef017573f7ecee7e1a15a4b1c43017">GetVoteCount</a>() { <span class="keywordflow">return</span> <a class="code" href="classCMasternodePayments.html#a830408cb2635a3e3b4a1c48d1deefb85">mapMasternodePaymentVotes</a>.size(); }</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classCMasternodePayments.html#a3136ca03b99f310b24416df6ed6daea7">IsEnoughData</a>();</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordtype">int</span> <a class="code" href="classCMasternodePayments.html#a7dc5c44ba12a6f3c7c502cd046ce3000">GetStorageLimit</a>();</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classCMasternodePayments.html#a83580d8ca468c726d7de57c5bb832b24">UpdatedBlockTip</a>(<span class="keyword">const</span> <a class="code" href="classCBlockIndex.html">CBlockIndex</a> *pindex, <a class="code" href="classCConnman.html">CConnman</a>&amp; connman);</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;};</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="classCMasternodePayments_html_a90c4db8f9eaf3749ecbed6a0840333bb"><div class="ttname"><a href="classCMasternodePayments.html#a90c4db8f9eaf3749ecbed6a0840333bb">CMasternodePayments::AddPaymentVote</a></div><div class="ttdeci">bool AddPaymentVote(const CMasternodePaymentVote &amp;vote)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00467">masternode-payments.cpp:467</a></div></div>
<div class="ttc" id="net__processing_8h_html"><div class="ttname"><a href="net__processing_8h.html">net_processing.h</a></div></div>
<div class="ttc" id="structCMutableTransaction_html"><div class="ttname"><a href="structCMutableTransaction.html">CMutableTransaction</a></div><div class="ttdef"><b>Definition:</b> <a href="transaction_8h_source.html#l00303">transaction.h:303</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a6c323905008eeba029283b2467463b9e"><div class="ttname"><a href="classCMasternodePayments.html#a6c323905008eeba029283b2467463b9e">CMasternodePayments::FillBlockPayee</a></div><div class="ttdeci">void FillBlockPayee(CMutableTransaction &amp;txNew, int nBlockHeight, CAmount blockReward, CTxOut &amp;txoutMasternodeRet)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00264">masternode-payments.cpp:264</a></div></div>
<div class="ttc" id="core__io_8h_html"><div class="ttname"><a href="core__io_8h.html">core_io.h</a></div></div>
<div class="ttc" id="classCTxIn_html"><div class="ttname"><a href="classCTxIn.html">CTxIn</a></div><div class="ttdef"><b>Definition:</b> <a href="transaction_8h_source.html#l00058">transaction.h:58</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_ab7679d3a59bcccefe00eeff3e18a8e77"><div class="ttname"><a href="classCMasternodePayments.html#ab7679d3a59bcccefe00eeff3e18a8e77">CMasternodePayments::GetBlockCount</a></div><div class="ttdeci">int GetBlockCount()</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00217">masternode-payments.h:217</a></div></div>
<div class="ttc" id="classCMasternodePaymentVote_html_a6b80e1a526e23a5745e3dc5f0dbbbdc5"><div class="ttname"><a href="classCMasternodePaymentVote.html#a6b80e1a526e23a5745e3dc5f0dbbbdc5">CMasternodePaymentVote::ToString</a></div><div class="ttdeci">std::string ToString() const</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00874">masternode-payments.cpp:874</a></div></div>
<div class="ttc" id="serialize_8h_html_a4d7fc7040e01003a01f367b8d90324f1"><div class="ttname"><a href="serialize_8h.html#a4d7fc7040e01003a01f367b8d90324f1">READWRITE</a></div><div class="ttdeci">#define READWRITE(obj)</div><div class="ttdef"><b>Definition:</b> <a href="serialize_8h_source.html#l00175">serialize.h:175</a></div></div>
<div class="ttc" id="classCMasternodePaymentVote_html_aa7cbc6f18d8ab3ae610d6a168532ee6c"><div class="ttname"><a href="classCMasternodePaymentVote.html#aa7cbc6f18d8ab3ae610d6a168532ee6c">CMasternodePaymentVote::CMasternodePaymentVote</a></div><div class="ttdeci">CMasternodePaymentVote(COutPoint outpointMasternode, int nBlockHeight, CScript payee)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00125">masternode-payments.h:125</a></div></div>
<div class="ttc" id="classCMasternodePayee_html_ab55ebed87bf241d648d4ad4f806d8538"><div class="ttname"><a href="classCMasternodePayee.html#ab55ebed87bf241d648d4ad4f806d8538">CMasternodePayee::CMasternodePayee</a></div><div class="ttdeci">CMasternodePayee(CScript payee, uint256 hashIn)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00053">masternode-payments.h:53</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a3136ca03b99f310b24416df6ed6daea7"><div class="ttname"><a href="classCMasternodePayments.html#a3136ca03b99f310b24416df6ed6daea7">CMasternodePayments::IsEnoughData</a></div><div class="ttdeci">bool IsEnoughData()</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l01002">masternode-payments.cpp:1002</a></div></div>
<div class="ttc" id="classCMasternodeBlockPayees_html_a1b7d7842fa0102e17aaf4637b5815d04"><div class="ttname"><a href="classCMasternodeBlockPayees.html#a1b7d7842fa0102e17aaf4637b5815d04">CMasternodeBlockPayees::GetBestPayee</a></div><div class="ttdeci">bool GetBestPayee(CScript &amp;payeeRet)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00509">masternode-payments.cpp:509</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_ac020d2b42771a003a271d4ddb014272a"><div class="ttname"><a href="classCMasternodePayments.html#ac020d2b42771a003a271d4ddb014272a">CMasternodePayments::ToString</a></div><div class="ttdeci">std::string ToString() const</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00992">masternode-payments.cpp:992</a></div></div>
<div class="ttc" id="classCMasternodePayments_html"><div class="ttname"><a href="classCMasternodePayments.html">CMasternodePayments</a></div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00167">masternode-payments.h:167</a></div></div>
<div class="ttc" id="classCMasternodePaymentVote_html_a07da3b083404cef1b60ed8b1305e4f0c"><div class="ttname"><a href="classCMasternodePaymentVote.html#a07da3b083404cef1b60ed8b1305e4f0c">CMasternodePaymentVote::CheckSignature</a></div><div class="ttdeci">bool CheckSignature(const CPubKey &amp;pubKeyMasternode, int nValidationHeight, int &amp;nDos)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00851">masternode-payments.cpp:851</a></div></div>
<div class="ttc" id="masternode-payments_8h_html_a51764240f42529c755c09fbbcf6203c4"><div class="ttname"><a href="masternode-payments_8h.html#a51764240f42529c755c09fbbcf6203c4">cs_vecPayees</a></div><div class="ttdeci">CCriticalSection cs_vecPayees</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00020">masternode-payments.cpp:20</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a7dc5c44ba12a6f3c7c502cd046ce3000"><div class="ttname"><a href="classCMasternodePayments.html#a7dc5c44ba12a6f3c7c502cd046ce3000">CMasternodePayments::GetStorageLimit</a></div><div class="ttdeci">int GetStorageLimit()</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l01009">masternode-payments.cpp:1009</a></div></div>
<div class="ttc" id="classCMasternodePaymentVote_html_a21c61547161e4de3a29b8ea80917926d"><div class="ttname"><a href="classCMasternodePaymentVote.html#a21c61547161e4de3a29b8ea80917926d">CMasternodePaymentVote::SerializationOp</a></div><div class="ttdeci">void SerializationOp(Stream &amp;s, Operation ser_action, int nType, int nVersion)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00135">masternode-payments.h:135</a></div></div>
<div class="ttc" id="classCConnman_html"><div class="ttname"><a href="classCConnman.html">CConnman</a></div><div class="ttdef"><b>Definition:</b> <a href="net_8h_source.html#l00108">net.h:108</a></div></div>
<div class="ttc" id="masternode_8h_html"><div class="ttname"><a href="masternode_8h.html">masternode.h</a></div></div>
<div class="ttc" id="classCMasternodeBlockPayees_html_ab596470ea981333cb3a905422c64eec1"><div class="ttname"><a href="classCMasternodeBlockPayees.html#ab596470ea981333cb3a905422c64eec1">CMasternodeBlockPayees::ADD_SERIALIZE_METHODS</a></div><div class="ttdeci">ADD_SERIALIZE_METHODS</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00091">masternode-payments.h:91</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_ab422d617badf70979aeda0cb745714ad"><div class="ttname"><a href="classCMasternodePayments.html#ab422d617badf70979aeda0cb745714ad">CMasternodePayments::ProcessMessage</a></div><div class="ttdeci">void ProcessMessage(CNode *pfrom, std::string &amp;strCommand, CDataStream &amp;vRecv, CConnman &amp;connman)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00306">masternode-payments.cpp:306</a></div></div>
<div class="ttc" id="classCMasternodePayee_html_ab172befa55a1d1c5f96f2cdfc0ca2ede"><div class="ttname"><a href="classCMasternodePayee.html#ab172befa55a1d1c5f96f2cdfc0ca2ede">CMasternodePayee::GetPayee</a></div><div class="ttdeci">CScript GetPayee()</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00068">masternode-payments.h:68</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_aab34cb80ed48506ef3bdc231f41425b4"><div class="ttname"><a href="classCMasternodePayments.html#aab34cb80ed48506ef3bdc231f41425b4">CMasternodePayments::nMinBlocksToStore</a></div><div class="ttdeci">const int nMinBlocksToStore</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00173">masternode-payments.h:173</a></div></div>
<div class="ttc" id="masternode-payments_8h_html_aee4296d2886eb994c149795e80d42d7e"><div class="ttname"><a href="masternode-payments_8h.html#aee4296d2886eb994c149795e80d42d7e">MNPAYMENTS_SIGNATURES_REQUIRED</a></div><div class="ttdeci">static const int MNPAYMENTS_SIGNATURES_REQUIRED</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00019">masternode-payments.h:19</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a4b9454f265a927528c881716e7649973"><div class="ttname"><a href="classCMasternodePayments.html#a4b9454f265a927528c881716e7649973">CMasternodePayments::CMasternodePayments</a></div><div class="ttdeci">CMasternodePayments()</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00184">masternode-payments.h:184</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_ae7bd46e78b426a11be0f643e1fc0f469"><div class="ttname"><a href="classCMasternodePayments.html#ae7bd46e78b426a11be0f643e1fc0f469">CMasternodePayments::RequestLowDataPaymentBlocks</a></div><div class="ttdeci">void RequestLowDataPaymentBlocks(CNode *pnode, CConnman &amp;connman)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00913">masternode-payments.cpp:913</a></div></div>
<div class="ttc" id="classCMasternodePaymentVote_html_a1a71aea4fa595413ae19377afc8e4de6"><div class="ttname"><a href="classCMasternodePaymentVote.html#a1a71aea4fa595413ae19377afc8e4de6">CMasternodePaymentVote::IsValid</a></div><div class="ttdeci">bool IsValid(CNode *pnode, int nValidationHeight, std::string &amp;strError, CConnman &amp;connman)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00655">masternode-payments.cpp:655</a></div></div>
<div class="ttc" id="classAnnotatedMixin_html"><div class="ttname"><a href="classAnnotatedMixin.html">AnnotatedMixin&lt; boost::recursive_mutex &gt;</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a903d39fccb07351211ef86dfab69a650"><div class="ttname"><a href="classCMasternodePayments.html#a903d39fccb07351211ef86dfab69a650">CMasternodePayments::CheckPreviousBlockVotes</a></div><div class="ttdeci">void CheckPreviousBlockVotes(int nPrevBlockHeight)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00780">masternode-payments.cpp:780</a></div></div>
<div class="ttc" id="classCMasternodePayee_html_a32d4afac5ac8cfd6740d7fd4c7ad026e"><div class="ttname"><a href="classCMasternodePayee.html#a32d4afac5ac8cfd6740d7fd4c7ad026e">CMasternodePayee::AddVoteHash</a></div><div class="ttdeci">void AddVoteHash(uint256 hashIn)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00070">masternode-payments.h:70</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a83580d8ca468c726d7de57c5bb832b24"><div class="ttname"><a href="classCMasternodePayments.html#a83580d8ca468c726d7de57c5bb832b24">CMasternodePayments::UpdatedBlockTip</a></div><div class="ttdeci">void UpdatedBlockTip(const CBlockIndex *pindex, CConnman &amp;connman)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l01014">masternode-payments.cpp:1014</a></div></div>
<div class="ttc" id="masternode-payments_8h_html_a7828ab0b9a1302db35b658f727b260e1"><div class="ttname"><a href="masternode-payments_8h.html#a7828ab0b9a1302db35b658f727b260e1">GetRequiredPaymentsString</a></div><div class="ttdeci">std::string GetRequiredPaymentsString(int nBlockHeight)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00227">masternode-payments.cpp:227</a></div></div>
<div class="ttc" id="amount_8h_html_a4eaf3a5239714d8c45b851527f7cb564"><div class="ttname"><a href="amount_8h.html#a4eaf3a5239714d8c45b851527f7cb564">CAmount</a></div><div class="ttdeci">int64_t CAmount</div><div class="ttdef"><b>Definition:</b> <a href="amount_8h_source.html#l00014">amount.h:14</a></div></div>
<div class="ttc" id="classCHashWriter_html_ae94a937211502eabf19477630090093a"><div class="ttname"><a href="classCHashWriter.html#ae94a937211502eabf19477630090093a">CHashWriter::GetHash</a></div><div class="ttdeci">uint256 GetHash()</div><div class="ttdef"><b>Definition:</b> <a href="hash_8h_source.html#l00254">hash.h:254</a></div></div>
<div class="ttc" id="masternode-payments_8h_html_a26df8e859f425afc3af5448f582c8dd5"><div class="ttname"><a href="masternode-payments_8h.html#a26df8e859f425afc3af5448f582c8dd5">IsBlockPayeeValid</a></div><div class="ttdeci">bool IsBlockPayeeValid(const CTransaction &amp;txNew, int nBlockHeight, CAmount blockReward)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00132">masternode-payments.cpp:132</a></div></div>
<div class="ttc" id="utilstrencodings_8h_html"><div class="ttname"><a href="utilstrencodings_8h.html">utilstrencodings.h</a></div></div>
<div class="ttc" id="masternode-payments_8h_html_a05e13919c270de268e28afc0227a9c2c"><div class="ttname"><a href="masternode-payments_8h.html#a05e13919c270de268e28afc0227a9c2c">MNPAYMENTS_SIGNATURES_TOTAL</a></div><div class="ttdeci">static const int MNPAYMENTS_SIGNATURES_TOTAL</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00020">masternode-payments.h:20</a></div></div>
<div class="ttc" id="classCMasternodePaymentVote_html_a7e3cb1b9bbd3c03500facbea2a66de5d"><div class="ttname"><a href="classCMasternodePaymentVote.html#a7e3cb1b9bbd3c03500facbea2a66de5d">CMasternodePaymentVote::Sign</a></div><div class="ttdeci">bool Sign()</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00416">masternode-payments.cpp:416</a></div></div>
<div class="ttc" id="classCTxIn_html_aed9312051a25380cbd7f123408ab7c20"><div class="ttname"><a href="classCTxIn.html#aed9312051a25380cbd7f123408ab7c20">CTxIn::prevout</a></div><div class="ttdeci">COutPoint prevout</div><div class="ttdef"><b>Definition:</b> <a href="transaction_8h_source.html#l00061">transaction.h:61</a></div></div>
<div class="ttc" id="classCMasternodeBlockPayees_html_a61f566bf72c56e12ccf1b3159c867c9d"><div class="ttname"><a href="classCMasternodeBlockPayees.html#a61f566bf72c56e12ccf1b3159c867c9d">CMasternodeBlockPayees::vecPayees</a></div><div class="ttdeci">std::vector&lt; CMasternodePayee &gt; vecPayees</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00080">masternode-payments.h:80</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a8922cb51ac6a8aeb4e590d5e18b5bd1a"><div class="ttname"><a href="classCMasternodePayments.html#a8922cb51ac6a8aeb4e590d5e18b5bd1a">CMasternodePayments::mapMasternodesLastVote</a></div><div class="ttdeci">std::map&lt; COutPoint, int &gt; mapMasternodesLastVote</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00181">masternode-payments.h:181</a></div></div>
<div class="ttc" id="classCNode_html"><div class="ttname"><a href="classCNode.html">CNode</a></div><div class="ttdef"><b>Definition:</b> <a href="net_8h_source.html#l00661">net.h:661</a></div></div>
<div class="ttc" id="classCMasternodeBlockPayees_html_a482b77d8b758b21b4e6b0c8a0ef7a09f"><div class="ttname"><a href="classCMasternodeBlockPayees.html#a482b77d8b758b21b4e6b0c8a0ef7a09f">CMasternodeBlockPayees::SerializationOp</a></div><div class="ttdeci">void SerializationOp(Stream &amp;s, Operation ser_action, int nType, int nVersion)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00094">masternode-payments.h:94</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a5bef017573f7ecee7e1a15a4b1c43017"><div class="ttname"><a href="classCMasternodePayments.html#a5bef017573f7ecee7e1a15a4b1c43017">CMasternodePayments::GetVoteCount</a></div><div class="ttdeci">int GetVoteCount()</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00218">masternode-payments.h:218</a></div></div>
<div class="ttc" id="classCTransaction_html"><div class="ttname"><a href="classCTransaction.html">CTransaction</a></div><div class="ttdef"><b>Definition:</b> <a href="transaction_8h_source.html#l00210">transaction.h:210</a></div></div>
<div class="ttc" id="classCOutPoint_html"><div class="ttname"><a href="classCOutPoint.html">COutPoint</a></div><div class="ttdef"><b>Definition:</b> <a href="transaction_8h_source.html#l00015">transaction.h:15</a></div></div>
<div class="ttc" id="classCMasternodePayee_html_a601ce07af776d21f02a76878c6de16e8"><div class="ttname"><a href="classCMasternodePayee.html#a601ce07af776d21f02a76878c6de16e8">CMasternodePayee::ADD_SERIALIZE_METHODS</a></div><div class="ttdeci">ADD_SERIALIZE_METHODS</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00060">masternode-payments.h:60</a></div></div>
<div class="ttc" id="classCMasternode_html"><div class="ttname"><a href="classCMasternode.html">CMasternode</a></div><div class="ttdef"><b>Definition:</b> <a href="masternode_8h_source.html#l00131">masternode.h:131</a></div></div>
<div class="ttc" id="classCMasternodePayee_html_a8d009230992f87adbac046f5d7df8ce5"><div class="ttname"><a href="classCMasternodePayee.html#a8d009230992f87adbac046f5d7df8ce5">CMasternodePayee::GetVoteCount</a></div><div class="ttdeci">int GetVoteCount()</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00072">masternode-payments.h:72</a></div></div>
<div class="ttc" id="classCMasternodePayee_html_a0a528122e2a1d52cd56259c4bf70a263"><div class="ttname"><a href="classCMasternodePayee.html#a0a528122e2a1d52cd56259c4bf70a263">CMasternodePayee::GetVoteHashes</a></div><div class="ttdeci">std::vector&lt; uint256 &gt; GetVoteHashes()</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00071">masternode-payments.h:71</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_ae7b481b02b86b14946497bb21e375f1a"><div class="ttname"><a href="classCMasternodePayments.html#ae7b481b02b86b14946497bb21e375f1a">CMasternodePayments::IsScheduled</a></div><div class="ttdeci">bool IsScheduled(CMasternode &amp;mn, int nNotBlockHeight)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00447">masternode-payments.cpp:447</a></div></div>
<div class="ttc" id="classCMasternodeBlockPayees_html_a6721f357d17e653ceb93c28ffd3ae528"><div class="ttname"><a href="classCMasternodeBlockPayees.html#a6721f357d17e653ceb93c28ffd3ae528">CMasternodeBlockPayees::IsTransactionValid</a></div><div class="ttdeci">bool IsTransactionValid(const CTransaction &amp;txNew)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00543">masternode-payments.cpp:543</a></div></div>
<div class="ttc" id="util_8h_html"><div class="ttname"><a href="util_8h.html">util.h</a></div></div>
<div class="ttc" id="classCDataStream_html"><div class="ttname"><a href="classCDataStream.html">CDataStream</a></div><div class="ttdef"><b>Definition:</b> <a href="streams_8h_source.html#l00030">streams.h:30</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_aa1376c50210f892f65ad7ee6408c02f9"><div class="ttname"><a href="classCMasternodePayments.html#aa1376c50210f892f65ad7ee6408c02f9">CMasternodePayments::IsTransactionValid</a></div><div class="ttdeci">bool IsTransactionValid(const CTransaction &amp;txNew, int nBlockHeight)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00621">masternode-payments.cpp:621</a></div></div>
<div class="ttc" id="masternode-payments_8h_html_ab15235ecb957ac017b2a372923b90765"><div class="ttname"><a href="masternode-payments_8h.html#ab15235ecb957ac017b2a372923b90765">mnpayments</a></div><div class="ttdeci">CMasternodePayments mnpayments</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00018">masternode-payments.cpp:18</a></div></div>
<div class="ttc" id="classCMasternodePaymentVote_html_a4f228e9faf3d4a61fffb201bfb8007e5"><div class="ttname"><a href="classCMasternodePaymentVote.html#a4f228e9faf3d4a61fffb201bfb8007e5">CMasternodePaymentVote::IsVerified</a></div><div class="ttdeci">bool IsVerified()</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00156">masternode-payments.h:156</a></div></div>
<div class="ttc" id="classCMasternodeBlockPayees_html_a0b181e78ae9b160c146bc9e8d12d44b5"><div class="ttname"><a href="classCMasternodeBlockPayees.html#a0b181e78ae9b160c146bc9e8d12d44b5">CMasternodeBlockPayees::CMasternodeBlockPayees</a></div><div class="ttdeci">CMasternodeBlockPayees(int nBlockHeightIn)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00086">masternode-payments.h:86</a></div></div>
<div class="ttc" id="classCMasternodePaymentVote_html_a4b25b5a393ea2dc1cbc63e50a73eef56"><div class="ttname"><a href="classCMasternodePaymentVote.html#a4b25b5a393ea2dc1cbc63e50a73eef56">CMasternodePaymentVote::MarkAsNotVerified</a></div><div class="ttdeci">void MarkAsNotVerified()</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00157">masternode-payments.h:157</a></div></div>
<div class="ttc" id="classprevector_html"><div class="ttname"><a href="classprevector.html">prevector</a></div><div class="ttdef"><b>Definition:</b> <a href="prevector_8h_source.html#l00030">prevector.h:30</a></div></div>
<div class="ttc" id="classCMasternodePaymentVote_html_a1a07779b769a2ca2b10267d61553df94"><div class="ttname"><a href="classCMasternodePaymentVote.html#a1a07779b769a2ca2b10267d61553df94">CMasternodePaymentVote::vinMasternode</a></div><div class="ttdeci">CTxIn vinMasternode</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00112">masternode-payments.h:112</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a5527c8d625c8e32ea27cf645453365cc"><div class="ttname"><a href="classCMasternodePayments.html#a5527c8d625c8e32ea27cf645453365cc">CMasternodePayments::GetRequiredPaymentsString</a></div><div class="ttdeci">std::string GetRequiredPaymentsString(int nBlockHeight)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00610">masternode-payments.cpp:610</a></div></div>
<div class="ttc" id="masternode-payments_8h_html_a55c7b4ef12706994a2185e9dc7e773b1"><div class="ttname"><a href="masternode-payments_8h.html#a55c7b4ef12706994a2185e9dc7e773b1">MIN_MASTERNODE_PAYMENT_PROTO_VERSION_1</a></div><div class="ttdeci">static const int MIN_MASTERNODE_PAYMENT_PROTO_VERSION_1</div><div class="ttdoc">minimum peer version that can receive and send masternode payment messages, </div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00026">masternode-payments.h:26</a></div></div>
<div class="ttc" id="masternode-payments_8h_html_aac327e3a251800c22ec67bfa9534c838"><div class="ttname"><a href="masternode-payments_8h.html#aac327e3a251800c22ec67bfa9534c838">cs_mapMasternodeBlocks</a></div><div class="ttdeci">CCriticalSection cs_mapMasternodeBlocks</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00021">masternode-payments.cpp:21</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_ace5711bd6c2b17cd1e35e0924aae4268"><div class="ttname"><a href="classCMasternodePayments.html#ace5711bd6c2b17cd1e35e0924aae4268">CMasternodePayments::Clear</a></div><div class="ttdeci">void Clear()</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00238">masternode-payments.cpp:238</a></div></div>
<div class="ttc" id="masternode-payments_8h_html_a1a60010ef73db581ad54a165770391c6"><div class="ttname"><a href="masternode-payments_8h.html#a1a60010ef73db581ad54a165770391c6">FillBlockPayments</a></div><div class="ttdeci">void FillBlockPayments(CMutableTransaction &amp;txNew, int nBlockHeight, CAmount blockReward, CTxOut &amp;txoutMasternodeRet, std::vector&lt; CTxOut &gt; &amp;voutSuperblockRet)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00210">masternode-payments.cpp:210</a></div></div>
<div class="ttc" id="masternode-payments_8h_html_aa1f4489ed173ce38197edb296f385d5e"><div class="ttname"><a href="masternode-payments_8h.html#aa1f4489ed173ce38197edb296f385d5e">MIN_MASTERNODE_PAYMENT_PROTO_VERSION_2</a></div><div class="ttdeci">static const int MIN_MASTERNODE_PAYMENT_PROTO_VERSION_2</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00027">masternode-payments.h:27</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a849874b6a32a2efafb4b19f53551cefc"><div class="ttname"><a href="classCMasternodePayments.html#a849874b6a32a2efafb4b19f53551cefc">CMasternodePayments::nStorageCoeff</a></div><div class="ttdeci">const float nStorageCoeff</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00171">masternode-payments.h:171</a></div></div>
<div class="ttc" id="classCMasternodeBlockPayees_html_a57cf1c21d11f8bda7da5282632b9528c"><div class="ttname"><a href="classCMasternodeBlockPayees.html#a57cf1c21d11f8bda7da5282632b9528c">CMasternodeBlockPayees::CMasternodeBlockPayees</a></div><div class="ttdeci">CMasternodeBlockPayees()</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00082">masternode-payments.h:82</a></div></div>
<div class="ttc" id="classuint256_html"><div class="ttname"><a href="classuint256.html">uint256</a></div><div class="ttdef"><b>Definition:</b> <a href="uint256_8h_source.html#l00114">uint256.h:114</a></div></div>
<div class="ttc" id="classCMasternodePaymentVote_html_ad2c427fe8708689ad611b687d0bc89e0"><div class="ttname"><a href="classCMasternodePaymentVote.html#ad2c427fe8708689ad611b687d0bc89e0">CMasternodePaymentVote::vchSig</a></div><div class="ttdeci">std::vector&lt; unsigned char &gt; vchSig</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00116">masternode-payments.h:116</a></div></div>
<div class="ttc" id="classCMasternodePayee_html_a43f62a2409a02ccb16b4b43b00442888"><div class="ttname"><a href="classCMasternodePayee.html#a43f62a2409a02ccb16b4b43b00442888">CMasternodePayee::SerializationOp</a></div><div class="ttdeci">void SerializationOp(Stream &amp;s, Operation ser_action, int nType, int nVersion)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00063">masternode-payments.h:63</a></div></div>
<div class="ttc" id="classCMasternodeBlockPayees_html_a5faa2a615fd40387b03c3f14b0c7e578"><div class="ttname"><a href="classCMasternodeBlockPayees.html#a5faa2a615fd40387b03c3f14b0c7e578">CMasternodeBlockPayees::HasPayeeWithVotes</a></div><div class="ttdeci">bool HasPayeeWithVotes(const CScript &amp;payeeIn, int nVotesReq)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00529">masternode-payments.cpp:529</a></div></div>
<div class="ttc" id="classCMasternodePaymentVote_html_a4e198526440fedc60e0cfae574341c53"><div class="ttname"><a href="classCMasternodePaymentVote.html#a4e198526440fedc60e0cfae574341c53">CMasternodePaymentVote::ADD_SERIALIZE_METHODS</a></div><div class="ttdeci">ADD_SERIALIZE_METHODS</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00132">masternode-payments.h:132</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a3827f5f6335d03ba2c4fabe542d55d54"><div class="ttname"><a href="classCMasternodePayments.html#a3827f5f6335d03ba2c4fabe542d55d54">CMasternodePayments::ProcessBlock</a></div><div class="ttdeci">bool ProcessBlock(int nBlockHeight, CConnman &amp;connman)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00715">masternode-payments.cpp:715</a></div></div>
<div class="ttc" id="classCMasternodeBlockPayees_html_a1026e555a9484567ea6cbfe8f90b428e"><div class="ttname"><a href="classCMasternodeBlockPayees.html#a1026e555a9484567ea6cbfe8f90b428e">CMasternodeBlockPayees::GetRequiredPaymentsString</a></div><div class="ttdeci">std::string GetRequiredPaymentsString()</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00588">masternode-payments.cpp:588</a></div></div>
<div class="ttc" id="version_8h_html_a4e2497f7c9c4319adcaf945159ec63f4"><div class="ttname"><a href="version_8h.html#a4e2497f7c9c4319adcaf945159ec63f4">PROTOCOL_VERSION</a></div><div class="ttdeci">static const int PROTOCOL_VERSION</div><div class="ttdef"><b>Definition:</b> <a href="version_8h_source.html#l00013">version.h:13</a></div></div>
<div class="ttc" id="classCMasternodePaymentVote_html_a91fe054a7e2c78e22bc4d9f3bc4651d1"><div class="ttname"><a href="classCMasternodePaymentVote.html#a91fe054a7e2c78e22bc4d9f3bc4651d1">CMasternodePaymentVote::CMasternodePaymentVote</a></div><div class="ttdeci">CMasternodePaymentVote()</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00118">masternode-payments.h:118</a></div></div>
<div class="ttc" id="classCScript_html"><div class="ttname"><a href="classCScript.html">CScript</a></div><div class="ttdef"><b>Definition:</b> <a href="script_8h_source.html#l00373">script.h:373</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a94644b08b8e3d359794457a0871f95cc"><div class="ttname"><a href="classCMasternodePayments.html#a94644b08b8e3d359794457a0871f95cc">CMasternodePayments::SerializationOp</a></div><div class="ttdeci">void SerializationOp(Stream &amp;s, Operation ser_action, int nType, int nVersion)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00189">masternode-payments.h:189</a></div></div>
<div class="ttc" id="classCMasternodePaymentVote_html_ac9dc15bcd8554151de83079ca0b65696"><div class="ttname"><a href="classCMasternodePaymentVote.html#ac9dc15bcd8554151de83079ca0b65696">CMasternodePaymentVote::GetHash</a></div><div class="ttdeci">uint256 GetHash() const</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00142">masternode-payments.h:142</a></div></div>
<div class="ttc" id="masternode-payments_8h_html_ab5c4de235616a5c435b32167d76f1efe"><div class="ttname"><a href="masternode-payments_8h.html#ab5c4de235616a5c435b32167d76f1efe">IsBlockValueValid</a></div><div class="ttdeci">bool IsBlockValueValid(const CBlock &amp;block, int nBlockHeight, CAmount blockReward, std::string &amp;strErrorRet)</div><div class="ttdoc">TODO: all 4 functions do not belong here really, they should be refactored/moved somewhere (main...</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00035">masternode-payments.cpp:35</a></div></div>
<div class="ttc" id="classCMasternodePayee_html_ab7f8d7f7108b556c92edd00ddd190e63"><div class="ttname"><a href="classCMasternodePayee.html#ab7f8d7f7108b556c92edd00ddd190e63">CMasternodePayee::scriptPubKey</a></div><div class="ttdeci">CScript scriptPubKey</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00044">masternode-payments.h:44</a></div></div>
<div class="ttc" id="classCMasternodePayee_html_ad2280163b5e84e48061851c42e7bc5fa"><div class="ttname"><a href="classCMasternodePayee.html#ad2280163b5e84e48061851c42e7bc5fa">CMasternodePayee::CMasternodePayee</a></div><div class="ttdeci">CMasternodePayee()</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00048">masternode-payments.h:48</a></div></div>
<div class="ttc" id="masternode-payments_8h_html_a50c9d39685d2d650800068de85c593c4"><div class="ttname"><a href="masternode-payments_8h.html#a50c9d39685d2d650800068de85c593c4">cs_mapMasternodePayeeVotes</a></div><div class="ttdeci">CCriticalSection cs_mapMasternodePayeeVotes</div></div>
<div class="ttc" id="classCBlockIndex_html"><div class="ttname"><a href="classCBlockIndex.html">CBlockIndex</a></div><div class="ttdef"><b>Definition:</b> <a href="chain_8h_source.html#l00100">chain.h:100</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a0f90877d276308aa16314dcaa84f332c"><div class="ttname"><a href="classCMasternodePayments.html#a0f90877d276308aa16314dcaa84f332c">CMasternodePayments::ADD_SERIALIZE_METHODS</a></div><div class="ttdeci">ADD_SERIALIZE_METHODS</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00186">masternode-payments.h:186</a></div></div>
<div class="ttc" id="classCPubKey_html"><div class="ttname"><a href="classCPubKey.html">CPubKey</a></div><div class="ttdef"><b>Definition:</b> <a href="pubkey_8h_source.html#l00037">pubkey.h:37</a></div></div>
<div class="ttc" id="classCMasternodePayee_html"><div class="ttname"><a href="classCMasternodePayee.html">CMasternodePayee</a></div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00041">masternode-payments.h:41</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_af53e14eb857028bb1411be2355dfa9f6"><div class="ttname"><a href="classCMasternodePayments.html#af53e14eb857028bb1411be2355dfa9f6">CMasternodePayments::mapMasternodesDidNotVote</a></div><div class="ttdeci">std::map&lt; COutPoint, int &gt; mapMasternodesDidNotVote</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00182">masternode-payments.h:182</a></div></div>
<div class="ttc" id="serialize_8h_html_ae4d5251432e1a9e6803c0240cc492e18aca6c7596d50ce42f28b5b97f39ba178a"><div class="ttname"><a href="serialize_8h.html#ae4d5251432e1a9e6803c0240cc492e18aca6c7596d50ce42f28b5b97f39ba178a">SER_GETHASH</a></div><div class="ttdef"><b>Definition:</b> <a href="serialize_8h_source.html#l00172">serialize.h:172</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a3f14bfd5d95c09549fcde66a40f5b75f"><div class="ttname"><a href="classCMasternodePayments.html#a3f14bfd5d95c09549fcde66a40f5b75f">CMasternodePayments::nCachedBlockHeight</a></div><div class="ttdeci">int nCachedBlockHeight</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00176">masternode-payments.h:176</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a33e0570c7554fa461f407649fb6bbbcd"><div class="ttname"><a href="classCMasternodePayments.html#a33e0570c7554fa461f407649fb6bbbcd">CMasternodePayments::CheckAndRemove</a></div><div class="ttdeci">void CheckAndRemove()</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00632">masternode-payments.cpp:632</a></div></div>
<div class="ttc" id="key_8h_html"><div class="ttname"><a href="key_8h.html">key.h</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_adb98cc9f21cf8746c0b6ac3131b85dfb"><div class="ttname"><a href="classCMasternodePayments.html#adb98cc9f21cf8746c0b6ac3131b85dfb">CMasternodePayments::GetMinMasternodePaymentsProto</a></div><div class="ttdeci">int GetMinMasternodePaymentsProto()</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00300">masternode-payments.cpp:300</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_abdbcfd46df44a78604f3d4e767de9329"><div class="ttname"><a href="classCMasternodePayments.html#abdbcfd46df44a78604f3d4e767de9329">CMasternodePayments::Sync</a></div><div class="ttdeci">void Sync(CNode *node, CConnman &amp;connman)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00887">masternode-payments.cpp:887</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a830408cb2635a3e3b4a1c48d1deefb85"><div class="ttname"><a href="classCMasternodePayments.html#a830408cb2635a3e3b4a1c48d1deefb85">CMasternodePayments::mapMasternodePaymentVotes</a></div><div class="ttdeci">std::map&lt; uint256, CMasternodePaymentVote &gt; mapMasternodePaymentVotes</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00179">masternode-payments.h:179</a></div></div>
<div class="ttc" id="classCBlock_html"><div class="ttname"><a href="classCBlock.html">CBlock</a></div><div class="ttdef"><b>Definition:</b> <a href="block_8h_source.html#l00073">block.h:73</a></div></div>
<div class="ttc" id="classCMasternodePaymentVote_html_a41908eaf0855f6e5f62be63a048af9b5"><div class="ttname"><a href="classCMasternodePaymentVote.html#a41908eaf0855f6e5f62be63a048af9b5">CMasternodePaymentVote::Relay</a></div><div class="ttdeci">void Relay(CConnman &amp;connman)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00842">masternode-payments.cpp:842</a></div></div>
<div class="ttc" id="classCMasternodePaymentVote_html"><div class="ttname"><a href="classCMasternodePaymentVote.html">CMasternodePaymentVote</a></div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00109">masternode-payments.h:109</a></div></div>
<div class="ttc" id="classCMasternodeBlockPayees_html_ae7eae4dd466c444d7c41debcbcc402f1"><div class="ttname"><a href="classCMasternodeBlockPayees.html#ae7eae4dd466c444d7c41debcbcc402f1">CMasternodeBlockPayees::nBlockHeight</a></div><div class="ttdeci">int nBlockHeight</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00079">masternode-payments.h:79</a></div></div>
<div class="ttc" id="classCHashWriter_html"><div class="ttname"><a href="classCHashWriter.html">CHashWriter</a></div><div class="ttdef"><b>Definition:</b> <a href="hash_8h_source.html#l00237">hash.h:237</a></div></div>
<div class="ttc" id="classCMasternodePayee_html_a1c2d5658d7f9d0e80421d674a89427fc"><div class="ttname"><a href="classCMasternodePayee.html#a1c2d5658d7f9d0e80421d674a89427fc">CMasternodePayee::vecVoteHashes</a></div><div class="ttdeci">std::vector&lt; uint256 &gt; vecVoteHashes</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00045">masternode-payments.h:45</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_ad0891106128d392e1cb4206061b4aec4"><div class="ttname"><a href="classCMasternodePayments.html#ad0891106128d392e1cb4206061b4aec4">CMasternodePayments::CanVote</a></div><div class="ttdeci">bool CanVote(COutPoint outMasternode, int nBlockHeight)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00245">masternode-payments.cpp:245</a></div></div>
<div class="ttc" id="classCMasternodeBlockPayees_html"><div class="ttname"><a href="classCMasternodeBlockPayees.html">CMasternodeBlockPayees</a></div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00076">masternode-payments.h:76</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a23ced53f72a503a71bbe6be8d472ecfd"><div class="ttname"><a href="classCMasternodePayments.html#a23ced53f72a503a71bbe6be8d472ecfd">CMasternodePayments::GetBlockPayee</a></div><div class="ttdeci">bool GetBlockPayee(int nBlockHeight, CScript &amp;payee)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00436">masternode-payments.cpp:436</a></div></div>
<div class="ttc" id="classCMasternodePaymentVote_html_ad75d093e53aa3e727a81aea841f4e26d"><div class="ttname"><a href="classCMasternodePaymentVote.html#ad75d093e53aa3e727a81aea841f4e26d">CMasternodePaymentVote::nBlockHeight</a></div><div class="ttdeci">int nBlockHeight</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00114">masternode-payments.h:114</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a6feb2c94183cd649ede84dc38d3ae442"><div class="ttname"><a href="classCMasternodePayments.html#a6feb2c94183cd649ede84dc38d3ae442">CMasternodePayments::mapMasternodeBlocks</a></div><div class="ttdeci">std::map&lt; int, CMasternodeBlockPayees &gt; mapMasternodeBlocks</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00180">masternode-payments.h:180</a></div></div>
<div class="ttc" id="classCMasternodeBlockPayees_html_abce1347dcf4dc53a329f2dc338a77dc3"><div class="ttname"><a href="classCMasternodeBlockPayees.html#abce1347dcf4dc53a329f2dc338a77dc3">CMasternodeBlockPayees::AddPayee</a></div><div class="ttdeci">void AddPayee(const CMasternodePaymentVote &amp;vote)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00495">masternode-payments.cpp:495</a></div></div>
<div class="ttc" id="classCMasternodePayments_html_a3b0eff1d9f454e6451f2a290e6677b3a"><div class="ttname"><a href="classCMasternodePayments.html#a3b0eff1d9f454e6451f2a290e6677b3a">CMasternodePayments::HasVerifiedPaymentVote</a></div><div class="ttdeci">bool HasVerifiedPaymentVote(uint256 hashIn)</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8cpp_source.html#l00488">masternode-payments.cpp:488</a></div></div>
<div class="ttc" id="classCMasternodePaymentVote_html_ab68f835feb0b7130296c642f526ce48b"><div class="ttname"><a href="classCMasternodePaymentVote.html#ab68f835feb0b7130296c642f526ce48b">CMasternodePaymentVote::payee</a></div><div class="ttdeci">CScript payee</div><div class="ttdef"><b>Definition:</b> <a href="masternode-payments_8h_source.html#l00115">masternode-payments.h:115</a></div></div>
<div class="ttc" id="classCTxOut_html"><div class="ttname"><a href="classCTxOut.html">CTxOut</a></div><div class="ttdef"><b>Definition:</b> <a href="transaction_8h_source.html#l00133">transaction.h:133</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="masternode-payments_8h.html">masternode-payments.h</a></li>
<li class="footer">Generated on Thu Dec 14 2017 13:15:03 for Dash Core by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li>
</ul>
</div>
</body>
</html>