Bitcoin Core
31.1.0
P2P Digital Currency
Toggle main menu visibility
Loading...
Searching...
No Matches
src
rpc
server_util.h
Go to the documentation of this file.
1
// Copyright (c) 2021-present 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_RPC_SERVER_UTIL_H
6
#define BITCOIN_RPC_SERVER_UTIL_H
7
8
#include <any>
9
10
#include <
consensus/params.h
>
11
12
class
AddrMan
;
13
class
ArgsManager
;
14
class
CBlockIndex
;
15
class
CBlockPolicyEstimator
;
16
class
CConnman
;
17
class
CTxMemPool
;
18
class
ChainstateManager
;
19
class
PeerManager
;
20
class
BanMan
;
21
namespace
node
{
22
struct
NodeContext
;
23
}
// namespace node
24
namespace
interfaces
{
25
class
Mining
;
26
}
// namespace interfaces
27
28
node::NodeContext
&
EnsureAnyNodeContext
(
const
std::any&
context
);
29
CTxMemPool
&
EnsureMemPool
(
const
node::NodeContext
&
node
);
30
CTxMemPool
&
EnsureAnyMemPool
(
const
std::any&
context
);
31
BanMan
&
EnsureBanman
(
const
node::NodeContext
&
node
);
32
BanMan
&
EnsureAnyBanman
(
const
std::any&
context
);
33
ArgsManager
&
EnsureArgsman
(
const
node::NodeContext
&
node
);
34
ArgsManager
&
EnsureAnyArgsman
(
const
std::any&
context
);
35
ChainstateManager
&
EnsureChainman
(
const
node::NodeContext
&
node
);
36
ChainstateManager
&
EnsureAnyChainman
(
const
std::any&
context
);
37
CBlockPolicyEstimator
&
EnsureFeeEstimator
(
const
node::NodeContext
&
node
);
38
CBlockPolicyEstimator
&
EnsureAnyFeeEstimator
(
const
std::any&
context
);
39
CConnman
&
EnsureConnman
(
const
node::NodeContext
&
node
);
40
interfaces::Mining
&
EnsureMining
(
const
node::NodeContext
&
node
);
41
PeerManager
&
EnsurePeerman
(
const
node::NodeContext
&
node
);
42
AddrMan
&
EnsureAddrman
(
const
node::NodeContext
&
node
);
43
AddrMan
&
EnsureAnyAddrman
(
const
std::any&
context
);
44
46
void
NextEmptyBlockIndex
(
CBlockIndex
& tip,
const
Consensus::Params
& consensusParams,
CBlockIndex
& next_index);
47
48
#endif
// BITCOIN_RPC_SERVER_UTIL_H
AddrMan
Stochastic address manager.
Definition
addrman.h:89
ArgsManager
Definition
args.h:103
BanMan
Definition
banman.h:64
CBlockIndex
The block chain is a tree shaped structure starting with the genesis block at the root,...
Definition
chain.h:94
CBlockPolicyEstimator
The BlockPolicyEstimator is used for estimating the feerate needed for a transaction to be included i...
Definition
block_policy_estimator.h:149
CConnman
Definition
net.h:1077
CTxMemPool
CTxMemPool stores valid-according-to-the-current-best-chain transactions that may be included in the ...
Definition
txmempool.h:187
ChainstateManager
Interface for managing multiple Chainstate objects, where each chainstate is associated with chainsta...
Definition
validation.h:940
Mining::context
virtual node::NodeContext * context()
Definition
mining.h:159
PeerManager
Definition
net_processing.h:77
interfaces::Mining
Definition
mining.h:97
interfaces
Definition
interfaces.cpp:41
node
Definition
messages.h:21
params.h
EnsureBanman
BanMan & EnsureBanman(const node::NodeContext &node)
Definition
server_util.cpp:48
EnsureAnyChainman
ChainstateManager & EnsureAnyChainman(const std::any &context)
Definition
server_util.cpp:82
EnsureMining
interfaces::Mining & EnsureMining(const node::NodeContext &node)
Definition
server_util.cpp:108
NextEmptyBlockIndex
void NextEmptyBlockIndex(CBlockIndex &tip, const Consensus::Params &consensusParams, CBlockIndex &next_index)
Return an empty block index on top of the tip, with height, time and nBits set.
Definition
server_util.cpp:137
EnsureAnyAddrman
AddrMan & EnsureAnyAddrman(const std::any &context)
Definition
server_util.cpp:132
EnsureAddrman
AddrMan & EnsureAddrman(const node::NodeContext &node)
Definition
server_util.cpp:124
EnsureArgsman
ArgsManager & EnsureArgsman(const node::NodeContext &node)
Definition
server_util.cpp:61
EnsureFeeEstimator
CBlockPolicyEstimator & EnsureFeeEstimator(const node::NodeContext &node)
Definition
server_util.cpp:87
EnsureAnyNodeContext
node::NodeContext & EnsureAnyNodeContext(const std::any &context)
Definition
server_util.cpp:25
EnsureAnyBanman
BanMan & EnsureAnyBanman(const std::any &context)
Definition
server_util.cpp:56
EnsureMemPool
CTxMemPool & EnsureMemPool(const node::NodeContext &node)
Definition
server_util.cpp:34
EnsureAnyMemPool
CTxMemPool & EnsureAnyMemPool(const std::any &context)
Definition
server_util.cpp:42
EnsurePeerman
PeerManager & EnsurePeerman(const node::NodeContext &node)
Definition
server_util.cpp:116
EnsureAnyFeeEstimator
CBlockPolicyEstimator & EnsureAnyFeeEstimator(const std::any &context)
Definition
server_util.cpp:95
EnsureConnman
CConnman & EnsureConnman(const node::NodeContext &node)
Definition
server_util.cpp:100
EnsureChainman
ChainstateManager & EnsureChainman(const node::NodeContext &node)
Definition
server_util.cpp:74
EnsureAnyArgsman
ArgsManager & EnsureAnyArgsman(const std::any &context)
Definition
server_util.cpp:69
Consensus::Params
Parameters that influence chain consensus.
Definition
params.h:84
node::NodeContext
Definition
context.h:56
Generated on
for Bitcoin Core by
1.17.0