Bitcoin Core
31.1.0
P2P Digital Currency
Toggle main menu visibility
Loading...
Searching...
No Matches
src
kernel
chainstatemanager_opts.h
Go to the documentation of this file.
1
// Copyright (c) 2022-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_KERNEL_CHAINSTATEMANAGER_OPTS_H
6
#define BITCOIN_KERNEL_CHAINSTATEMANAGER_OPTS_H
7
8
#include <
kernel/notifications_interface.h
>
9
10
#include <
arith_uint256.h
>
11
#include <
dbwrapper.h
>
12
#include <
script/sigcache.h
>
13
#include <
txdb.h
>
14
#include <
uint256.h
>
15
#include <util/time.h>
16
17
#include <cstdint>
18
#include <functional>
19
#include <optional>
20
21
class
CChainParams
;
22
class
ValidationSignals
;
23
24
static
constexpr
auto
DEFAULT_MAX_TIP_AGE
{24h};
25
26
namespace
kernel
{
27
33
struct
ChainstateManagerOpts
{
34
const
CChainParams
&
chainparams
;
35
fs::path
datadir
;
36
std::optional<int32_t>
check_block_index
{};
38
std::optional<arith_uint256>
minimum_chain_work
{};
40
std::optional<uint256>
assumed_valid_block
{};
42
std::chrono::seconds
max_tip_age
{
DEFAULT_MAX_TIP_AGE
};
43
DBOptions
coins_db
{};
44
CoinsViewOptions
coins_view
{};
45
Notifications
&
notifications
;
46
ValidationSignals
*
signals
{
nullptr
};
48
int
worker_threads_num
{0};
49
size_t
script_execution_cache_bytes
{
DEFAULT_SCRIPT_EXECUTION_CACHE_BYTES
};
50
size_t
signature_cache_bytes
{
DEFAULT_SIGNATURE_CACHE_BYTES
};
51
};
52
53
}
// namespace kernel
54
55
#endif
// BITCOIN_KERNEL_CHAINSTATEMANAGER_OPTS_H
arith_uint256.h
DEFAULT_MAX_TIP_AGE
static constexpr auto DEFAULT_MAX_TIP_AGE
Definition
chainstatemanager_opts.h:24
CChainParams
CChainParams defines various tweakable parameters of a given instance of the Bitcoin system.
Definition
chainparams.h:77
ValidationSignals
Definition
validationinterface.h:166
kernel::Notifications
A base class defining functions for notifying about certain kernel events.
Definition
notifications_interface.h:36
dbwrapper.h
kernel
Definition
coinstatsindex.h:21
notifications_interface.h
sigcache.h
DEFAULT_SIGNATURE_CACHE_BYTES
static constexpr size_t DEFAULT_SIGNATURE_CACHE_BYTES
Definition
sigcache.h:29
DEFAULT_SCRIPT_EXECUTION_CACHE_BYTES
static constexpr size_t DEFAULT_SCRIPT_EXECUTION_CACHE_BYTES
Definition
sigcache.h:30
CoinsViewOptions
User-controlled performance and debug options.
Definition
txdb.h:28
DBOptions
User-controlled performance and debug options.
Definition
dbwrapper.h:27
kernel::ChainstateManagerOpts
An options struct for ChainstateManager, more ergonomically referred to as ChainstateManager::Options...
Definition
chainstatemanager_opts.h:33
kernel::ChainstateManagerOpts::signature_cache_bytes
size_t signature_cache_bytes
Definition
chainstatemanager_opts.h:50
kernel::ChainstateManagerOpts::signals
ValidationSignals * signals
Definition
chainstatemanager_opts.h:46
kernel::ChainstateManagerOpts::assumed_valid_block
std::optional< uint256 > assumed_valid_block
If set, it will override the block hash whose ancestors we will assume to have valid scripts without ...
Definition
chainstatemanager_opts.h:40
kernel::ChainstateManagerOpts::minimum_chain_work
std::optional< arith_uint256 > minimum_chain_work
If set, it will override the minimum work we will assume exists on some valid chain.
Definition
chainstatemanager_opts.h:38
kernel::ChainstateManagerOpts::check_block_index
std::optional< int32_t > check_block_index
Definition
chainstatemanager_opts.h:36
kernel::ChainstateManagerOpts::datadir
fs::path datadir
Definition
chainstatemanager_opts.h:35
kernel::ChainstateManagerOpts::max_tip_age
std::chrono::seconds max_tip_age
If the tip is older than this, the node is considered to be in initial block download.
Definition
chainstatemanager_opts.h:42
kernel::ChainstateManagerOpts::notifications
Notifications & notifications
Definition
chainstatemanager_opts.h:45
kernel::ChainstateManagerOpts::coins_db
DBOptions coins_db
Definition
chainstatemanager_opts.h:43
kernel::ChainstateManagerOpts::chainparams
const CChainParams & chainparams
Definition
chainstatemanager_opts.h:34
kernel::ChainstateManagerOpts::script_execution_cache_bytes
size_t script_execution_cache_bytes
Definition
chainstatemanager_opts.h:49
kernel::ChainstateManagerOpts::worker_threads_num
int worker_threads_num
Number of script check worker threads. Zero means no parallel verification.
Definition
chainstatemanager_opts.h:48
kernel::ChainstateManagerOpts::coins_view
CoinsViewOptions coins_view
Definition
chainstatemanager_opts.h:44
txdb.h
uint256.h
Generated on
for Bitcoin Core by
1.17.0