diff options
author | John Newbery <john@johnnewbery.com> | 2017-07-06 08:50:48 +0100 |
---|---|---|
committer | John Newbery <john@johnnewbery.com> | 2018-03-26 13:23:24 -0400 |
commit | caaf9722f3200775cf37aab6b911a7054b2378e7 (patch) | |
tree | b1e4690418de5ea35cf25e7e0cdfa3adec587e8a | |
parent | 5fb54210a68612ebcc47b2b12048d192a529d3d7 (diff) |
[wallet] Create wallet init interface.
-rw-r--r-- | src/Makefile.am | 1 | ||||
-rw-r--r-- | src/walletinitinterface.h | 37 |
2 files changed, 38 insertions, 0 deletions
diff --git a/src/Makefile.am b/src/Makefile.am index ac822d6c5e..15ff4256e0 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -161,6 +161,7 @@ BITCOIN_CORE_H = \ validation.h \ validationinterface.h \ versionbits.h \ + walletinitinterface.h \ wallet/coincontrol.h \ wallet/crypter.h \ wallet/db.h \ diff --git a/src/walletinitinterface.h b/src/walletinitinterface.h new file mode 100644 index 0000000000..95c51a4f49 --- /dev/null +++ b/src/walletinitinterface.h @@ -0,0 +1,37 @@ +// Copyright (c) 2017 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 WALLETINITINTERFACE_H +#define WALLETINITINTERFACE_H + +#include <string> + +class CScheduler; +class CRPCTable; + +class WalletInitInterface { +public: + /** Get wallet help string */ + virtual std::string GetHelpString(bool showDebug) = 0; + /** Check wallet parameter interaction */ + virtual bool ParameterInteraction() = 0; + /** Register wallet RPC*/ + virtual void RegisterRPC(CRPCTable &) = 0; + /** Verify wallets */ + virtual bool Verify() = 0; + /** Open wallets*/ + virtual bool Open() = 0; + /** Start wallets*/ + virtual void Start(CScheduler& scheduler) = 0; + /** Flush Wallets*/ + virtual void Flush() = 0; + /** Stop Wallets*/ + virtual void Stop() = 0; + /** Close wallets */ + virtual void Close() = 0; + + virtual ~WalletInitInterface() {} +}; + +#endif // WALLETINITINTERFACE_H |