[#CMerkleBlock-2constructor-09]
= xref:CMerkleBlock.adoc[CMerkleBlock]::CMerkleBlock
:relfileprefix: ../
:mrdocs:

Constructors

== Synopses

Declared in `&lt;merkleblock&period;h&gt;`

Construct an empty merkle block&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
constexpr
xref:CMerkleBlock/2constructor-08.adoc[CMerkleBlock]() = default;
----

[.small]#xref:CMerkleBlock/2constructor-08.adoc[_» more&period;&period;&period;_]#

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&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:CMerkleBlock/2constructor-06.adoc[CMerkleBlock](
    xref:CBlock.adoc[CBlock] const& block,
    xref:CBloomFilter.adoc[CBloomFilter]& filter);
----

[.small]#xref:CMerkleBlock/2constructor-06.adoc[_» more&period;&period;&period;_]#

Create from a CBlock, matching the txids in the set&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:CMerkleBlock/2constructor-0a.adoc[CMerkleBlock](
    xref:CBlock.adoc[CBlock] const& block,
    std::set&lt;Txid&gt; const& txids);
----

[.small]#xref:CMerkleBlock/2constructor-0a.adoc[_» more&period;&period;&period;_]#

== Parameters

[cols="1,4"]
|===
| Name| Description
| *block*
| The block to build the merkle proof from&period;
| *filter*
| The bloom filter selecting which transactions to include&semi; updated per transaction&period;
| *txids*
| The set of transaction ids to include in the proof&period;
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
