mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-01-19 23:03:45 +01:00
This commit is done in preparation for the next commit. Here, the block
tree options are moved to the blockmanager options and the block tree is
instantiated through a helper method of the BlockManager, which is
removed again in the next commit.
Co-authored-by: MarcoFalke <*~=`'#}+{/-|&$^_@721217.xyz>
37 lines
971 B
C++
37 lines
971 B
C++
// Copyright (c) 2022 The Bitcoin Core developers
|
|
// Distributed under the MIT software license, see the accompanying
|
|
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|
|
|
#ifndef BITCOIN_KERNEL_BLOCKMANAGER_OPTS_H
|
|
#define BITCOIN_KERNEL_BLOCKMANAGER_OPTS_H
|
|
|
|
#include <dbwrapper.h>
|
|
#include <kernel/notifications_interface.h>
|
|
#include <util/fs.h>
|
|
|
|
#include <cstdint>
|
|
|
|
class CChainParams;
|
|
|
|
namespace kernel {
|
|
|
|
static constexpr bool DEFAULT_XOR_BLOCKSDIR{true};
|
|
|
|
/**
|
|
* An options struct for `BlockManager`, more ergonomically referred to as
|
|
* `BlockManager::Options` due to the using-declaration in `BlockManager`.
|
|
*/
|
|
struct BlockManagerOpts {
|
|
const CChainParams& chainparams;
|
|
bool use_xor{DEFAULT_XOR_BLOCKSDIR};
|
|
uint64_t prune_target{0};
|
|
bool fast_prune{false};
|
|
const fs::path blocks_dir;
|
|
Notifications& notifications;
|
|
DBParams block_tree_db_params;
|
|
};
|
|
|
|
} // namespace kernel
|
|
|
|
#endif // BITCOIN_KERNEL_BLOCKMANAGER_OPTS_H
|