Changeset View
Changeset View
Standalone View
Standalone View
src/walletinitinterface.h
// Copyright (c) 2017 The Bitcoin Core developers | // Copyright (c) 2017 The Bitcoin Core developers | ||||
// Distributed under the MIT software license, see the accompanying | // Distributed under the MIT software license, see the accompanying | ||||
// file COPYING or http://www.opensource.org/licenses/mit-license.php. | // file COPYING or http://www.opensource.org/licenses/mit-license.php. | ||||
#ifndef BITCOIN_WALLETINITINTERFACE_H | #ifndef BITCOIN_WALLETINITINTERFACE_H | ||||
#define BITCOIN_WALLETINITINTERFACE_H | #define BITCOIN_WALLETINITINTERFACE_H | ||||
struct InitInterfaces; | struct NodeContext; | ||||
class WalletInitInterface { | class WalletInitInterface { | ||||
public: | public: | ||||
/** Is the wallet component enabled */ | /** Is the wallet component enabled */ | ||||
virtual bool HasWalletSupport() const = 0; | virtual bool HasWalletSupport() const = 0; | ||||
/** Get wallet help string */ | /** Get wallet help string */ | ||||
virtual void AddWalletOptions() const = 0; | virtual void AddWalletOptions() const = 0; | ||||
/** Check wallet parameter interaction */ | /** Check wallet parameter interaction */ | ||||
virtual bool ParameterInteraction() const = 0; | virtual bool ParameterInteraction() const = 0; | ||||
/** Add wallets that should be opened to list of init interfaces. */ | /** Add wallets that should be opened to list of chain clients. */ | ||||
virtual void Construct(InitInterfaces &interfaces) const = 0; | virtual void Construct(NodeContext &node) const = 0; | ||||
virtual ~WalletInitInterface() {} | virtual ~WalletInitInterface() {} | ||||
}; | }; | ||||
extern const WalletInitInterface &g_wallet_init_interface; | extern const WalletInitInterface &g_wallet_init_interface; | ||||
#endif // BITCOIN_WALLETINITINTERFACE_H | #endif // BITCOIN_WALLETINITINTERFACE_H |