Generate a new block, without valid proof-of-work.
More...
#include <miner.h>
Generate a new block, without valid proof-of-work.
Definition at line 130 of file miner.h.
◆ BlockAssembler() [1/2]
◆ BlockAssembler() [2/2]
◆ addPackageTxs()
void node::BlockAssembler::addPackageTxs |
( |
const CTxMemPool & |
mempool, |
|
|
int & |
nPackagesSelected, |
|
|
int & |
nDescendantsUpdated |
|
) |
| |
|
private |
Add transactions based on feerate including unconfirmed ancestors Increments nPackagesSelected / nDescendantsUpdated with corresponding statistics from the package selection (for logging statistics).
Return true if given transaction from mapTx has already been evaluated, or if the transaction's cached data in mapTx is incorrect.
Definition at line 292 of file miner.cpp.
◆ AddToBlock()
Add a tx to the block.
Definition at line 222 of file miner.cpp.
◆ CreateNewBlock()
Construct a new block template with coinbase to scriptPubKeyIn.
Definition at line 105 of file miner.cpp.
◆ onlyUnconfirmed()
Remove confirmed (inBlock) entries from given set.
Definition at line 186 of file miner.cpp.
◆ resetBlock()
void node::BlockAssembler::resetBlock |
( |
| ) |
|
|
private |
Clear the block's state and prepare for assembling a new block.
Definition at line 92 of file miner.cpp.
◆ SortForBlock()
Sort the package in an order that is valid to appear in a block.
Definition at line 271 of file miner.cpp.
◆ TestPackage()
bool node::BlockAssembler::TestPackage |
( |
uint64_t |
packageSize, |
|
|
int64_t |
packageSigOpsCost |
|
) |
| const |
|
private |
Test if a new package would "fit" in the block.
Definition at line 198 of file miner.cpp.
◆ TestPackageTransactions()
Perform checks on each transaction in a package: locktime, premature-witness, serialized size (if necessary) These checks should always succeed, and they're here only as an extra check in case of suboptimal node configuration.
Definition at line 212 of file miner.cpp.
◆ chainparams
◆ inBlock
◆ m_chainstate
◆ m_last_block_num_txs
std::optional<int64_t> node::BlockAssembler::m_last_block_num_txs {} |
|
inlinestatic |
◆ m_last_block_weight
std::optional<int64_t> node::BlockAssembler::m_last_block_weight {} |
|
inlinestatic |
◆ m_lock_time_cutoff
int64_t node::BlockAssembler::m_lock_time_cutoff |
|
private |
◆ m_mempool
const CTxMemPool* const node::BlockAssembler::m_mempool |
|
private |
◆ m_options
const Options node::BlockAssembler::m_options |
|
private |
◆ nBlockSigOpsCost
uint64_t node::BlockAssembler::nBlockSigOpsCost |
|
private |
◆ nBlockTx
uint64_t node::BlockAssembler::nBlockTx |
|
private |
◆ nBlockWeight
uint64_t node::BlockAssembler::nBlockWeight |
|
private |
◆ nFees
CAmount node::BlockAssembler::nFees |
|
private |
◆ nHeight
int node::BlockAssembler::nHeight |
|
private |
◆ pblocktemplate
The documentation for this class was generated from the following files: