Dash Core Source Documentation (0.16.0.1)

Find detailed information regarding the Dash Core source code.

Used to relay blocks as header + vector<merkle branch> to filtered nodes. More...

#include <merkleblock.h>

+ Collaboration diagram for CMerkleBlock:

Public Member Functions

 CMerkleBlock (const CBlock &block, CBloomFilter &filter)
 Create from a CBlock, filtering transactions according to filter Note that this will call IsRelevantAndUpdate on the filter for each transaction, thus the filter will likely be modified. More...
 
 CMerkleBlock (const CBlock &block, const std::set< uint256 > &txids)
 
 CMerkleBlock ()
 
template<typename Stream , typename Operation >
void SerializationOp (Stream &s, Operation ser_action)
 

Public Attributes

CBlockHeader header
 Public only for unit testing. More...
 
CPartialMerkleTree txn
 
std::vector< std::pair< unsigned int, uint256 > > vMatchedTxn
 Public only for unit testing and relay testing (not relayed). More...
 
 ADD_SERIALIZE_METHODS
 

Private Member Functions

 CMerkleBlock (const CBlock &block, CBloomFilter *filter, const std::set< uint256 > *txids)
 

Detailed Description

Used to relay blocks as header + vector<merkle branch> to filtered nodes.

NOTE: The class assumes that the given CBlock has at least 1 transaction. If the CBlock has 0 txs, it will hit an assertion.

Definition at line 127 of file merkleblock.h.

Constructor & Destructor Documentation

◆ CMerkleBlock() [1/4]

CMerkleBlock::CMerkleBlock ( const CBlock block,
CBloomFilter filter 
)
inline

Create from a CBlock, filtering transactions according to filter Note that this will call IsRelevantAndUpdate on the filter for each transaction, thus the filter will likely be modified.

Definition at line 147 of file merkleblock.h.

◆ CMerkleBlock() [2/4]

CMerkleBlock::CMerkleBlock ( const CBlock block,
const std::set< uint256 > &  txids 
)
inline

Definition at line 150 of file merkleblock.h.

◆ CMerkleBlock() [3/4]

CMerkleBlock::CMerkleBlock ( )
inline

Definition at line 152 of file merkleblock.h.

◆ CMerkleBlock() [4/4]

Member Function Documentation

◆ SerializationOp()

template<typename Stream , typename Operation >
void CMerkleBlock::SerializationOp ( Stream &  s,
Operation  ser_action 
)
inline

Definition at line 157 of file merkleblock.h.

References header, READWRITE, and txn.

Member Data Documentation

◆ ADD_SERIALIZE_METHODS

CMerkleBlock::ADD_SERIALIZE_METHODS

Definition at line 154 of file merkleblock.h.

◆ header

CBlockHeader CMerkleBlock::header

Public only for unit testing.

Definition at line 131 of file merkleblock.h.

Referenced by CMerkleBlock(), and SerializationOp().

◆ txn

CPartialMerkleTree CMerkleBlock::txn

Definition at line 132 of file merkleblock.h.

Referenced by CMerkleBlock(), and SerializationOp().

◆ vMatchedTxn

std::vector<std::pair<unsigned int, uint256> > CMerkleBlock::vMatchedTxn

Public only for unit testing and relay testing (not relayed).

Used only when a bloom filter is specified to allow testing the transactions which matched the bloom filter.

Definition at line 140 of file merkleblock.h.

Referenced by CMerkleBlock(), getmerkleblocks(), and ProcessGetBlockData().


The documentation for this class was generated from the following files:
Released under the MIT license