mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-01-19 14:53:43 +01:00
fReindex is one of the last remaining globals exposed by the kernel library, so move it into the blockstorage class to reduce the amount of global mutable state and make the kernel library a bit less awkward to use.
33 lines
845 B
C++
33 lines
845 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 <kernel/notifications_interface.h>
|
|
#include <util/fs.h>
|
|
|
|
#include <cstdint>
|
|
|
|
class CChainParams;
|
|
|
|
namespace kernel {
|
|
|
|
/**
|
|
* An options struct for `BlockManager`, more ergonomically referred to as
|
|
* `BlockManager::Options` due to the using-declaration in `BlockManager`.
|
|
*/
|
|
struct BlockManagerOpts {
|
|
const CChainParams& chainparams;
|
|
uint64_t prune_target{0};
|
|
bool fast_prune{false};
|
|
const fs::path blocks_dir;
|
|
Notifications& notifications;
|
|
bool reindex{false};
|
|
};
|
|
|
|
} // namespace kernel
|
|
|
|
#endif // BITCOIN_KERNEL_BLOCKMANAGER_OPTS_H
|