Bitcoin Core  27.99.0
P2P Digital Currency
mempool_persist.h
Go to the documentation of this file.
1 // Copyright (c) 2022 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_MEMPOOL_PERSIST_H
6 #define BITCOIN_KERNEL_MEMPOOL_PERSIST_H
7 
8 #include <util/fs.h>
9 
10 class Chainstate;
11 class CTxMemPool;
12 
13 namespace kernel {
14 
16 bool DumpMempool(const CTxMemPool& pool, const fs::path& dump_path,
17  fsbridge::FopenFn mockable_fopen_function = fsbridge::fopen,
18  bool skip_file_commit = false);
19 
22  bool use_current_time{false};
25 };
27 bool LoadMempool(CTxMemPool& pool, const fs::path& load_path,
28  Chainstate& active_chainstate,
29  ImportMempoolOptions&& opts);
30 
31 } // namespace kernel
32 
33 
34 #endif // BITCOIN_KERNEL_MEMPOOL_PERSIST_H
CTxMemPool stores valid-according-to-the-current-best-chain transactions that may be included in the ...
Definition: txmempool.h:302
Chainstate stores and provides an API to update our local knowledge of the current best chain.
Definition: validation.h:491
Path class wrapper to block calls to the fs::path(std::string) implicit constructor and the fs::path:...
Definition: fs.h:33
FILE * fopen(const fs::path &p, const char *mode)
Definition: fs.cpp:26
std::function< FILE *(const fs::path &, const char *)> FopenFn
Definition: fs.h:209
bool LoadMempool(CTxMemPool &pool, const fs::path &load_path, Chainstate &active_chainstate, ImportMempoolOptions &&opts)
Import the file and attempt to add its contents to the mempool.
bool DumpMempool(const CTxMemPool &pool, const fs::path &dump_path, FopenFn mockable_fopen_function, bool skip_file_commit)
fsbridge::FopenFn mockable_fopen_function