diff options
Diffstat (limited to 'src/node/mempool_persist.h')
-rw-r--r-- | src/node/mempool_persist.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/node/mempool_persist.h b/src/node/mempool_persist.h new file mode 100644 index 0000000000..7c5754a90c --- /dev/null +++ b/src/node/mempool_persist.h @@ -0,0 +1,34 @@ +// 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_NODE_MEMPOOL_PERSIST_H +#define BITCOIN_NODE_MEMPOOL_PERSIST_H + +#include <util/fs.h> + +class Chainstate; +class CTxMemPool; + +namespace node { + +/** Dump the mempool to a file. */ +bool DumpMempool(const CTxMemPool& pool, const fs::path& dump_path, + fsbridge::FopenFn mockable_fopen_function = fsbridge::fopen, + bool skip_file_commit = false); + +struct ImportMempoolOptions { + fsbridge::FopenFn mockable_fopen_function{fsbridge::fopen}; + bool use_current_time{false}; + bool apply_fee_delta_priority{true}; + bool apply_unbroadcast_set{true}; +}; +/** Import the file and attempt to add its contents to the mempool. */ +bool LoadMempool(CTxMemPool& pool, const fs::path& load_path, + Chainstate& active_chainstate, + ImportMempoolOptions&& opts); + +} // namespace node + + +#endif // BITCOIN_NODE_MEMPOOL_PERSIST_H |