2323#include < utility>
2424#include < vector>
2525
26- class CCoinControl ;
2726class CFeeRate ;
2827class CKey ;
29- class CWallet ;
3028enum class FeeReason ;
3129enum class OutputType ;
3230enum class TransactionError ;
31+ struct PartiallySignedTransaction ;
32+ struct bilingual_str ;
33+ namespace wallet {
34+ class CCoinControl ;
35+ class CWallet ;
3336enum isminetype : unsigned int ;
3437struct CRecipient ;
35- struct PartiallySignedTransaction ;
3638struct WalletContext ;
37- struct bilingual_str ;
3839using isminefilter = std::underlying_type<isminetype>::type;
40+ } // namespace wallet
3941
4042namespace interfaces {
4143
@@ -107,7 +109,7 @@ class Wallet
107109 // ! Look up address in wallet, return whether exists.
108110 virtual bool getAddress (const CTxDestination& dest,
109111 std::string* name,
110- isminetype* is_mine,
112+ wallet:: isminetype* is_mine,
111113 std::string* purpose) = 0;
112114
113115 // ! Get wallet address list.
@@ -135,8 +137,8 @@ class Wallet
135137 virtual void listLockedCoins (std::vector<COutPoint>& outputs) = 0;
136138
137139 // ! Create transaction.
138- virtual CTransactionRef createTransaction (const std::vector<CRecipient>& recipients,
139- const CCoinControl& coin_control,
140+ virtual CTransactionRef createTransaction (const std::vector<wallet:: CRecipient>& recipients,
141+ const wallet:: CCoinControl& coin_control,
140142 bool sign,
141143 int & change_pos,
142144 CAmount& fee,
@@ -158,7 +160,7 @@ class Wallet
158160
159161 // ! Create bump transaction.
160162 virtual bool createBumpTransaction (const uint256& txid,
161- const CCoinControl& coin_control,
163+ const wallet:: CCoinControl& coin_control,
162164 std::vector<bilingual_str>& errors,
163165 CAmount& old_fee,
164166 CAmount& new_fee,
@@ -213,19 +215,19 @@ class Wallet
213215 virtual CAmount getBalance () = 0;
214216
215217 // ! Get available balance.
216- virtual CAmount getAvailableBalance (const CCoinControl& coin_control) = 0;
218+ virtual CAmount getAvailableBalance (const wallet:: CCoinControl& coin_control) = 0;
217219
218220 // ! Return whether transaction input belongs to wallet.
219- virtual isminetype txinIsMine (const CTxIn& txin) = 0;
221+ virtual wallet:: isminetype txinIsMine (const CTxIn& txin) = 0;
220222
221223 // ! Return whether transaction output belongs to wallet.
222- virtual isminetype txoutIsMine (const CTxOut& txout) = 0;
224+ virtual wallet:: isminetype txoutIsMine (const CTxOut& txout) = 0;
223225
224226 // ! Return debit amount if transaction input belongs to wallet.
225- virtual CAmount getDebit (const CTxIn& txin, isminefilter filter) = 0;
227+ virtual CAmount getDebit (const CTxIn& txin, wallet:: isminefilter filter) = 0;
226228
227229 // ! Return credit amount if transaction input belongs to wallet.
228- virtual CAmount getCredit (const CTxOut& txout, isminefilter filter) = 0;
230+ virtual CAmount getCredit (const CTxOut& txout, wallet:: isminefilter filter) = 0;
229231
230232 // ! Return AvailableCoins + LockedCoins grouped by wallet address.
231233 // ! (put change in one group with wallet address)
@@ -240,7 +242,7 @@ class Wallet
240242
241243 // ! Get minimum fee.
242244 virtual CAmount getMinimumFee (unsigned int tx_bytes,
243- const CCoinControl& coin_control,
245+ const wallet:: CCoinControl& coin_control,
244246 int * returned_target,
245247 FeeReason* reason) = 0;
246248
@@ -307,7 +309,7 @@ class Wallet
307309 virtual std::unique_ptr<Handler> handleCanGetAddressesChanged (CanGetAddressesChangedFn fn) = 0;
308310
309311 // ! Return pointer to internal wallet class, useful for testing.
310- virtual CWallet* wallet () { return nullptr ; }
312+ virtual wallet:: CWallet* wallet () { return nullptr ; }
311313};
312314
313315// ! Wallet chain client that in addition to having chain client methods for
@@ -341,18 +343,18 @@ class WalletLoader : public ChainClient
341343 virtual std::unique_ptr<Handler> handleLoadWallet (LoadWalletFn fn) = 0;
342344
343345 // ! Return pointer to internal context, useful for testing.
344- virtual WalletContext* context () { return nullptr ; }
346+ virtual wallet:: WalletContext* context () { return nullptr ; }
345347};
346348
347349// ! Information about one wallet address.
348350struct WalletAddress
349351{
350352 CTxDestination dest;
351- isminetype is_mine;
353+ wallet:: isminetype is_mine;
352354 std::string name;
353355 std::string purpose;
354356
355- WalletAddress (CTxDestination dest, isminetype is_mine, std::string name, std::string purpose)
357+ WalletAddress (CTxDestination dest, wallet:: isminetype is_mine, std::string name, std::string purpose)
356358 : dest(std::move(dest)), is_mine(is_mine), name(std::move(name)), purpose(std::move(purpose))
357359 {
358360 }
@@ -382,10 +384,10 @@ struct WalletBalances
382384struct WalletTx
383385{
384386 CTransactionRef tx;
385- std::vector<isminetype> txin_is_mine;
386- std::vector<isminetype> txout_is_mine;
387+ std::vector<wallet:: isminetype> txin_is_mine;
388+ std::vector<wallet:: isminetype> txout_is_mine;
387389 std::vector<CTxDestination> txout_address;
388- std::vector<isminetype> txout_address_is_mine;
390+ std::vector<wallet:: isminetype> txout_address_is_mine;
389391 CAmount credit;
390392 CAmount debit;
391393 CAmount change;
@@ -420,7 +422,7 @@ struct WalletTxOut
420422
421423// ! Return implementation of Wallet interface. This function is defined in
422424// ! dummywallet.cpp and throws if the wallet component is not compiled.
423- std::unique_ptr<Wallet> MakeWallet (WalletContext& context, const std::shared_ptr<CWallet>& wallet);
425+ std::unique_ptr<Wallet> MakeWallet (wallet:: WalletContext& context, const std::shared_ptr<wallet:: CWallet>& wallet);
424426
425427// ! Return implementation of ChainClient interface for a wallet loader. This
426428// ! function will be undefined in builds where ENABLE_WALLET is false.
0 commit comments