Bitcoin Core  29.1.0
P2P Digital Currency
mining.h
Go to the documentation of this file.
1 // Copyright (c) 2019-2021 The Bitcoin Core developers
2 // Distributed under the MIT software license, see the accompanying
3 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
4 
5 #ifndef BITCOIN_TEST_UTIL_MINING_H
6 #define BITCOIN_TEST_UTIL_MINING_H
7 
8 #include <node/miner.h>
9 
10 #include <memory>
11 #include <string>
12 #include <vector>
13 
14 class CBlock;
15 class CChainParams;
16 class COutPoint;
17 class CScript;
18 namespace node {
19 struct NodeContext;
20 } // namespace node
21 
23 std::vector<std::shared_ptr<CBlock>> CreateBlockChain(size_t total_height, const CChainParams& params);
24 
27  const node::BlockAssembler::Options& assembler_options);
28 
33 COutPoint MineBlock(const node::NodeContext&, std::shared_ptr<CBlock>& block);
34 
36 std::shared_ptr<CBlock> PrepareBlock(const node::NodeContext&);
37 std::shared_ptr<CBlock> PrepareBlock(const node::NodeContext& node,
38  const node::BlockAssembler::Options& assembler_options);
39 
41 COutPoint generatetoaddress(const node::NodeContext&, const std::string& address);
42 
43 #endif // BITCOIN_TEST_UTIL_MINING_H
Definition: block.h:68
COutPoint MineBlock(const node::NodeContext &, const node::BlockAssembler::Options &assembler_options)
Returns the generated coin.
Definition: mining.cpp:64
CChainParams defines various tweakable parameters of a given instance of the Bitcoin system...
Definition: chainparams.h:80
NodeContext struct containing references to chain state and connection state.
Definition: context.h:56
An outpoint - a combination of a transaction hash and an index n into its vout.
Definition: transaction.h:28
std::shared_ptr< CBlock > PrepareBlock(const node::NodeContext &)
Prepare a block to be mined.
Definition: messages.h:20
Serialized script, used inside transaction inputs and outputs.
Definition: script.h:414
COutPoint generatetoaddress(const node::NodeContext &, const std::string &address)
RPC-like helper function, returns the generated coin.
Definition: mining.cpp:23
std::vector< std::shared_ptr< CBlock > > CreateBlockChain(size_t total_height, const CChainParams &params)
Create a blockchain, starting from genesis.
Definition: mining.cpp:33