Coverage Report

Created: 2024-08-21 05:08

/workdir/bitcoin/src/walletinitinterface.h
Line
Count
Source (jump to first uncovered line)
1
// Copyright (c) 2017-2021 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_WALLETINITINTERFACE_H
6
#define BITCOIN_WALLETINITINTERFACE_H
7
8
class ArgsManager;
9
10
namespace node {
11
struct NodeContext;
12
} // namespace node
13
14
class WalletInitInterface {
15
public:
16
    /** Is the wallet component enabled */
17
    virtual bool HasWalletSupport() const = 0;
18
    /** Get wallet help string */
19
    virtual void AddWalletOptions(ArgsManager& argsman) const = 0;
20
    /** Check wallet parameter interaction */
21
    virtual bool ParameterInteraction() const = 0;
22
    /** Add wallets that should be opened to list of chain clients. */
23
    virtual void Construct(node::NodeContext& node) const = 0;
24
25
0
    virtual ~WalletInitInterface() = default;
26
};
27
28
extern const WalletInitInterface& g_wallet_init_interface;
29
30
#endif // BITCOIN_WALLETINITINTERFACE_H