![]() |
Bitcoin Core 32.1.0
P2P Digital Currency
|
#include <bitcoin-build-config.h>#include <interfaces/mining.h>#include <rpc/register.h>#include <addresstype.h>#include <arith_uint256.h>#include <chain.h>#include <chainparams.h>#include <chainparamsbase.h>#include <consensus/amount.h>#include <consensus/consensus.h>#include <consensus/merkle.h>#include <consensus/params.h>#include <consensus/validation.h>#include <core_io.h>#include <crypto/hex_base.h>#include <interfaces/types.h>#include <key_io.h>#include <net.h>#include <netbase.h>#include <node/blockstorage.h>#include <node/context.h>#include <node/miner.h>#include <node/mining_args.h>#include <node/mining_types.h>#include <node/warnings.h>#include <policy/feerate.h>#include <policy/policy.h>#include <pow.h>#include <primitives/block.h>#include <primitives/transaction.h>#include <rpc/blockchain.h>#include <rpc/mining.h>#include <rpc/protocol.h>#include <rpc/request.h>#include <rpc/server.h>#include <rpc/server_util.h>#include <rpc/util.h>#include <script/descriptor.h>#include <script/script.h>#include <script/signingprovider.h>#include <serialize.h>#include <streams.h>#include <sync.h>#include <tinyformat.h>#include <txmempool.h>#include <uint256.h>#include <univalue.h>#include <util/chaintype.h>#include <util/check.h>#include <util/signalinterrupt.h>#include <util/strencodings.h>#include <util/string.h>#include <util/time.h>#include <validation.h>#include <validationinterface.h>#include <versionbits.h>#include <algorithm>#include <cstddef>#include <cstdint>#include <functional>#include <limits>#include <map>#include <memory>#include <optional>#include <set>#include <span>#include <string>#include <string_view>#include <utility>#include <vector>Go to the source code of this file.
Classes | |
| class | submitblock_StateCatcher |
Functions | |
| static UniValue | GetNetworkHashPS (int lookup, int height, const CChain &active_chain) |
| Return average network hashes per second based on the last 'lookup' blocks, or from the last difficulty change if 'lookup' is -1. | |
| static RPCMethod | getnetworkhashps () |
| static bool | GenerateBlock (ChainstateManager &chainman, CBlock &&block, uint64_t &max_tries, std::shared_ptr< const CBlock > &block_out, bool process_new_block) |
| static UniValue | generateBlocks (ChainstateManager &chainman, Mining &miner, const CScript &coinbase_output_script, int nGenerate, uint64_t nMaxTries) |
| static bool | getScriptFromDescriptor (std::string_view descriptor, CScript &script, std::string &error) |
| static RPCMethod | generatetodescriptor () |
| static RPCMethod | generate () |
| static RPCMethod | generatetoaddress () |
| static RPCMethod | generateblock () |
| static RPCMethod | getmininginfo () |
| static RPCMethod | prioritisetransaction () |
| static RPCMethod | getprioritisedtransactions () |
| static UniValue | BIP22ValidationResult (const BlockValidationState &state) |
| static std::string | gbt_rule_value (const std::string &name, bool gbt_optional_rule) |
| static RPCMethod | getblocktemplate () |
| static RPCMethod | submitblock () |
| static RPCMethod | submitheader () |
| void | RegisterMiningRPCCommands (CRPCTable &t) |
| int64_t | GetMinimumTime (const CBlockIndex *pindexPrev, int64_t difficulty_adjustment_interval) |
| Get the minimum time a miner should use in the next block. | |
| void | RegenerateCommitments (CBlock &block, ChainstateManager &chainman) |
| Update an old GenerateCoinbaseCommitment from CreateNewBlock after the block txs have changed. | |
| int64_t | UpdateTime (CBlockHeader *pblock, const Consensus::Params &consensusParams, const CBlockIndex *pindexPrev) |
| template<typename T> | |
| std::string | ToString (const T &t) |
| Locale-independent version of std::to_string. | |
|
static |
Definition at line 618 of file mining.cpp.
|
static |
Definition at line 637 of file mining.cpp.
|
static |
Definition at line 288 of file mining.cpp.
|
static |
Definition at line 168 of file mining.cpp.
|
static |
Definition at line 336 of file mining.cpp.
|
static |
Definition at line 195 of file mining.cpp.
|
static |
Definition at line 295 of file mining.cpp.
|
static |
Definition at line 250 of file mining.cpp.
|
static |
Wait to respond until either the best block changes, OR there are more transactions.
The check for new transactions first happens after 1 minute and subsequently every 10 seconds. BIP22 does not require this particular interval. On mainnet the mempool changes frequently enough that in practice this RPC returns after 60 seconds, or sooner if the best block changes.
getblocktemplate is unlikely to be called by bitcoin-cli, so -rpcclienttimeout is not a concern. BIP22 recommends a long request timeout.
The longpollid is assumed to be a tip hash if it has the right format.
Definition at line 646 of file mining.cpp.
| int64_t node::GetMinimumTime | ( | const CBlockIndex * | pindexPrev, |
| const int64_t | difficulty_adjustment_interval ) |
|
static |
Definition at line 447 of file mining.cpp.
Return average network hashes per second based on the last 'lookup' blocks, or from the last difficulty change if 'lookup' is -1.
If 'height' is -1, compute the estimate from current chain tip. If 'height' is a valid block height, compute the estimate at the time when a given block was found.
Definition at line 96 of file mining.cpp.
|
static |
Definition at line 142 of file mining.cpp.
|
static |
Definition at line 578 of file mining.cpp.
|
static |
Definition at line 215 of file mining.cpp.
|
static |
Definition at line 532 of file mining.cpp.
| void node::RegenerateCommitments | ( | CBlock & | block, |
| ChainstateManager & | chainman ) |
| void RegisterMiningRPCCommands | ( | CRPCTable & | t | ) |
Definition at line 1180 of file mining.cpp.
|
static |
Definition at line 1087 of file mining.cpp.
|
static |
Definition at line 1140 of file mining.cpp.
| std::string util::ToString | ( | const T & | t | ) |
| int64_t node::UpdateTime | ( | CBlockHeader * | pblock, |
| const Consensus::Params & | consensusParams, | ||
| const CBlockIndex * | pindexPrev ) |