Dash Core  0.12.2.1
P2P Digital Currency
CWallet Class Reference

#include <wallet.h>

+ Inheritance diagram for CWallet:

Public Types

typedef std::map< unsigned int, CMasterKeyMasterKeyMap
 
typedef std::pair< CWalletTx *, CAccountingEntry * > TxPair
 
typedef std::multimap< int64_t, TxPairTxItems
 

Public Member Functions

void LoadKeyPool (int nIndex, const CKeyPool &keypool)
 
 CWallet ()
 
 CWallet (const std::string &strWalletFileIn)
 
 ~CWallet ()
 
void SetNull ()
 
const CWalletTxGetWalletTx (const uint256 &hash) const
 
bool CanSupportFeature (enum WalletFeature wf)
 check whether we are allowed to upgrade (or already support) to the named feature More...
 
void AvailableCoins (std::vector< COutput > &vCoins, bool fOnlyConfirmed=true, const CCoinControl *coinControl=NULL, bool fIncludeZeroValue=false, AvailableCoinsType nCoinType=ALL_COINS, bool fUseInstantSend=false) const
 
bool SelectCoinsMinConf (const CAmount &nTargetValue, int nConfMine, int nConfTheirs, std::vector< COutput > vCoins, std::set< std::pair< const CWalletTx *, unsigned int > > &setCoinsRet, CAmount &nValueRet, bool fUseInstantSend=false) const
 
bool SelectCoinsByDenominations (int nDenom, CAmount nValueMin, CAmount nValueMax, std::vector< CTxIn > &vecTxInRet, std::vector< COutput > &vCoinsRet, CAmount &nValueRet, int nPrivateSendRoundsMin, int nPrivateSendRoundsMax)
 
bool GetCollateralTxIn (CTxIn &txinRet, CAmount &nValueRet) const
 
bool SelectCoinsDark (CAmount nValueMin, CAmount nValueMax, std::vector< CTxIn > &vecTxInRet, CAmount &nValueRet, int nPrivateSendRoundsMin, int nPrivateSendRoundsMax) const
 
bool SelectCoinsGrouppedByAddresses (std::vector< CompactTallyItem > &vecTallyRet, bool fSkipDenominated=true, bool fAnonymizable=true, bool fSkipUnconfirmed=true) const
 
bool GetMasternodeOutpointAndKeys (COutPoint &outpointRet, CPubKey &pubKeyRet, CKey &keyRet, std::string strTxHash="", std::string strOutputIndex="")
 Get 1000DASH output and keys which can be used for the Masternode. More...
 
bool GetOutpointAndKeysFromOutput (const COutput &out, COutPoint &outpointRet, CPubKey &pubKeyRet, CKey &keyRet)
 Extract txin information and keys from output. More...
 
bool HasCollateralInputs (bool fOnlyConfirmed=true) const
 
bool IsCollateralAmount (CAmount nInputAmount) const
 
int CountInputsWithAmount (CAmount nInputAmount)
 
int GetRealOutpointPrivateSendRounds (const COutPoint &outpoint, int nRounds) const
 
int GetOutpointPrivateSendRounds (const COutPoint &outpoint) const
 
bool IsDenominated (const COutPoint &outpoint) const
 
bool IsDenominatedAmount (CAmount nInputAmount) const
 
bool IsSpent (const uint256 &hash, unsigned int n) const
 
bool IsLockedCoin (uint256 hash, unsigned int n) const
 
void LockCoin (COutPoint &output)
 
void UnlockCoin (COutPoint &output)
 
void UnlockAllCoins ()
 
void ListLockedCoins (std::vector< COutPoint > &vOutpts)
 
CPubKey GenerateNewKey (uint32_t nAccountIndex, bool fInternal)
 
bool HaveKey (const CKeyID &address) const
 HaveKey implementation that also checks the mapHdPubKeys. More...
 
bool GetPubKey (const CKeyID &address, CPubKey &vchPubKeyOut) const
 GetPubKey implementation that also checks the mapHdPubKeys. More...
 
bool GetKey (const CKeyID &address, CKey &keyOut) const
 GetKey implementation that can derive a HD private key on the fly. More...
 
bool AddHDPubKey (const CExtPubKey &extPubKey, bool fInternal)
 Adds a HDPubKey into the wallet(database) More...
 
bool LoadHDPubKey (const CHDPubKey &hdPubKey)
 loads a HDPubKey into the wallets memory More...
 
bool AddKeyPubKey (const CKey &key, const CPubKey &pubkey)
 Adds a key to the store, and saves it to disk. More...
 
bool LoadKey (const CKey &key, const CPubKey &pubkey)
 Adds a key to the store, without saving it to disk (used by LoadWallet) More...
 
bool LoadKeyMetadata (const CPubKey &pubkey, const CKeyMetadata &metadata)
 Load metadata (used by LoadWallet) More...
 
bool LoadMinVersion (int nVersion)
 
bool AddCryptedKey (const CPubKey &vchPubKey, const std::vector< unsigned char > &vchCryptedSecret)
 Adds an encrypted key to the store, and saves it to disk. More...
 
bool LoadCryptedKey (const CPubKey &vchPubKey, const std::vector< unsigned char > &vchCryptedSecret)
 Adds an encrypted key to the store, without saving it to disk (used by LoadWallet) More...
 
bool AddCScript (const CScript &redeemScript)
 Support for BIP 0013 : see https://github.com/bitcoin/bips/blob/master/bip-0013.mediawiki. More...
 
bool LoadCScript (const CScript &redeemScript)
 
bool AddDestData (const CTxDestination &dest, const std::string &key, const std::string &value)
 Adds a destination data tuple to the store, and saves it to disk. More...
 
bool EraseDestData (const CTxDestination &dest, const std::string &key)
 Erases a destination data tuple in the store and on disk. More...
 
bool LoadDestData (const CTxDestination &dest, const std::string &key, const std::string &value)
 Adds a destination data tuple to the store, without saving it to disk. More...
 
bool GetDestData (const CTxDestination &dest, const std::string &key, std::string *value) const
 Look up a destination data tuple in the store, return true if found false otherwise. More...
 
bool AddWatchOnly (const CScript &dest)
 Adds a watch-only address to the store, and saves it to disk. More...
 
bool RemoveWatchOnly (const CScript &dest)
 
bool LoadWatchOnly (const CScript &dest)
 Adds a watch-only address to the store, without saving it to disk (used by LoadWallet) More...
 
bool Unlock (const SecureString &strWalletPassphrase, bool fForMixingOnly=false)
 
bool ChangeWalletPassphrase (const SecureString &strOldWalletPassphrase, const SecureString &strNewWalletPassphrase)
 
bool EncryptWallet (const SecureString &strWalletPassphrase)
 
void GetKeyBirthTimes (std::map< CKeyID, int64_t > &mapKeyBirth) const
 
int64_t IncOrderPosNext (CWalletDB *pwalletdb=NULL)
 
void MarkDirty ()
 
bool AddToWallet (const CWalletTx &wtxIn, bool fFromLoadWallet, CWalletDB *pwalletdb)
 
void SyncTransaction (const CTransaction &tx, const CBlock *pblock)
 
bool AddToWalletIfInvolvingMe (const CTransaction &tx, const CBlock *pblock, bool fUpdate)
 
int ScanForWalletTransactions (CBlockIndex *pindexStart, bool fUpdate=false)
 
void ReacceptWalletTransactions ()
 
void ResendWalletTransactions (int64_t nBestBlockTime, CConnman *connman)
 
std::vector< uint256ResendWalletTransactionsBefore (int64_t nTime, CConnman *connman)
 
CAmount GetBalance () const
 
CAmount GetUnconfirmedBalance () const
 
CAmount GetImmatureBalance () const
 
CAmount GetWatchOnlyBalance () const
 
CAmount GetUnconfirmedWatchOnlyBalance () const
 
CAmount GetImmatureWatchOnlyBalance () const
 
CAmount GetAnonymizableBalance (bool fSkipDenominated=false, bool fSkipUnconfirmed=true) const
 
CAmount GetAnonymizedBalance () const
 
float GetAverageAnonymizedRounds () const
 
CAmount GetNormalizedAnonymizedBalance () const
 
CAmount GetNeedsToBeAnonymizedBalance (CAmount nMinBalance=0) const
 
CAmount GetDenominatedBalance (bool unconfirmed=false) const
 
bool GetBudgetSystemCollateralTX (CTransaction &tx, uint256 hash, CAmount amount, bool fUseInstantSend)
 
bool GetBudgetSystemCollateralTX (CWalletTx &tx, uint256 hash, CAmount amount, bool fUseInstantSend)
 
bool FundTransaction (CMutableTransaction &tx, CAmount &nFeeRet, int &nChangePosRet, std::string &strFailReason, bool includeWatching)
 
bool CreateTransaction (const std::vector< CRecipient > &vecSend, CWalletTx &wtxNew, CReserveKey &reservekey, CAmount &nFeeRet, int &nChangePosRet, std::string &strFailReason, const CCoinControl *coinControl=NULL, bool sign=true, AvailableCoinsType nCoinType=ALL_COINS, bool fUseInstantSend=false)
 
bool CommitTransaction (CWalletTx &wtxNew, CReserveKey &reservekey, CConnman *connman, std::string strCommand="tx")
 
bool CreateCollateralTransaction (CMutableTransaction &txCollateral, std::string &strReason)
 
bool ConvertList (std::vector< CTxIn > vecTxIn, std::vector< CAmount > &vecAmounts)
 
bool AddAccountingEntry (const CAccountingEntry &, CWalletDB &pwalletdb)
 
bool NewKeyPool ()
 
size_t KeypoolCountExternalKeys ()
 
size_t KeypoolCountInternalKeys ()
 
bool TopUpKeyPool (unsigned int kpSize=0)
 
void ReserveKeyFromKeyPool (int64_t &nIndex, CKeyPool &keypool, bool fInternal)
 
void KeepKey (int64_t nIndex)
 
void ReturnKey (int64_t nIndex, bool fInternal)
 
bool GetKeyFromPool (CPubKey &key, bool fInternal)
 
int64_t GetOldestKeyPoolTime ()
 
void GetAllReserveKeys (std::set< CKeyID > &setAddress) const
 
std::set< std::set< CTxDestination > > GetAddressGroupings ()
 
std::map< CTxDestination, CAmountGetAddressBalances ()
 
std::set< CTxDestinationGetAccountAddresses (const std::string &strAccount) const
 
isminetype IsMine (const CTxIn &txin) const
 
CAmount GetDebit (const CTxIn &txin, const isminefilter &filter) const
 
isminetype IsMine (const CTxOut &txout) const
 
CAmount GetCredit (const CTxOut &txout, const isminefilter &filter) const
 
bool IsChange (const CTxOut &txout) const
 
CAmount GetChange (const CTxOut &txout) const
 
bool IsMine (const CTransaction &tx) const
 
bool IsFromMe (const CTransaction &tx) const
 
CAmount GetDebit (const CTransaction &tx, const isminefilter &filter) const
 
CAmount GetCredit (const CTransaction &tx, const isminefilter &filter) const
 
CAmount GetChange (const CTransaction &tx) const
 
void SetBestChain (const CBlockLocator &loc)
 
DBErrors LoadWallet (bool &fFirstRunRet)
 
DBErrors ZapWalletTx (std::vector< CWalletTx > &vWtx)
 
bool SetAddressBook (const CTxDestination &address, const std::string &strName, const std::string &purpose)
 
bool DelAddressBook (const CTxDestination &address)
 
bool UpdatedTransaction (const uint256 &hashTx)
 
void Inventory (const uint256 &hash)
 
void GetScriptForMining (boost::shared_ptr< CReserveScript > &script)
 
void ResetRequestCount (const uint256 &hash)
 
unsigned int GetKeyPoolSize ()
 
bool SetDefaultKey (const CPubKey &vchPubKey)
 
bool SetMinVersion (enum WalletFeature, CWalletDB *pwalletdbIn=NULL, bool fExplicit=false)
 signify that a particular wallet feature is now used. this may change nWalletVersion and nWalletMaxVersion if those are lower More...
 
bool SetMaxVersion (int nVersion)
 change which version we're allowed to upgrade to (note that this does not immediately imply upgrading to that format) More...
 
int GetVersion ()
 get the current wallet format (the oldest client version guaranteed to understand this wallet) More...
 
std::set< uint256GetConflicts (const uint256 &txid) const
 Get wallet transactions that conflict with given transaction (spend same outputs) More...
 
void Flush (bool shutdown=false)
 Flush wallet (bitdb flush) More...
 
bool GetBroadcastTransactions () const
 
void SetBroadcastTransactions (bool broadcast)
 
bool AbandonTransaction (const uint256 &hashTx)
 
bool IsHDEnabled ()
 
void GenerateNewHDChain ()
 
bool SetHDChain (const CHDChain &chain, bool memonly)
 
bool SetCryptedHDChain (const CHDChain &chain, bool memonly)
 
bool GetDecryptedHDChain (CHDChain &hdChainRet)
 
- Public Member Functions inherited from CCryptoKeyStore
 CCryptoKeyStore ()
 
bool IsCrypted () const
 
bool IsLocked (bool fForMixing=false) const
 
bool Lock (bool fAllowMixing=false)
 
void GetKeys (std::set< CKeyID > &setAddress) const
 
bool GetHDChain (CHDChain &hdChainRet) const
 
- Public Member Functions inherited from CBasicKeyStore
virtual bool HaveCScript (const CScriptID &hash) const
 
virtual bool GetCScript (const CScriptID &hash, CScript &redeemScriptOut) const
 
virtual bool HaveWatchOnly (const CScript &dest) const
 
virtual bool HaveWatchOnly () const
 
bool GetHDChain (CHDChain &hdChainRet) const
 
- Public Member Functions inherited from CKeyStore
virtual ~CKeyStore ()
 
virtual bool AddKey (const CKey &key)
 

Static Public Member Functions

static CAmount GetMinimumFee (unsigned int nTxBytes, unsigned int nConfirmTarget, const CTxMemPool &pool)
 
static CAmount GetRequiredFee (unsigned int nTxBytes)
 
static bool Verify (const std::string &walletFile, std::string &warningString, std::string &errorString)
 Verify the wallet database and perform salvage if required. More...
 

Public Attributes

CCriticalSection cs_wallet
 
bool fFileBacked
 
const std::string strWalletFile
 
std::set< int64_t > setInternalKeyPool
 
std::set< int64_t > setExternalKeyPool
 
std::map< CKeyID, CKeyMetadatamapKeyMetadata
 
MasterKeyMap mapMasterKeys
 
unsigned int nMasterKeyMaxID
 
std::map< uint256, CWalletTxmapWallet
 
std::list< CAccountingEntrylaccentries
 
TxItems wtxOrdered
 
int64_t nOrderPosNext
 
std::map< uint256, int > mapRequestCount
 
std::map< CTxDestination, CAddressBookDatamapAddressBook
 
CPubKey vchDefaultKey
 
std::set< COutPointsetLockedCoins
 
int64_t nTimeFirstKey
 
int64_t nKeysLeftSinceAutoBackup
 
std::map< CKeyID, CHDPubKeymapHdPubKeys
 
boost::signals2::signal< void(CWallet *wallet, const CTxDestination &address, const std::string &label, bool isMine, const std::string &purpose, ChangeType status)> NotifyAddressBookChanged
 
boost::signals2::signal< void(CWallet *wallet, const uint256 &hashTx, ChangeType status)> NotifyTransactionChanged
 
boost::signals2::signal< void(const std::string &title, int nProgress)> ShowProgress
 
boost::signals2::signal< void(bool fHaveWatchOnly)> NotifyWatchonlyChanged
 
- Public Attributes inherited from CCryptoKeyStore
boost::signals2::signal< void(CCryptoKeyStore *wallet)> NotifyStatusChanged
 

Static Public Attributes

static CFeeRate minTxFee = CFeeRate(DEFAULT_LEGACY_TRANSACTION_MINFEE)
 
static CFeeRate fallbackFee = CFeeRate(DEFAULT_LEGACY_FALLBACK_FEE)
 

Private Types

typedef std::multimap< COutPoint, uint256TxSpends
 

Private Member Functions

bool SelectCoins (const CAmount &nTargetValue, std::set< std::pair< const CWalletTx *, unsigned int > > &setCoinsRet, CAmount &nValueRet, const CCoinControl *coinControl=NULL, AvailableCoinsType nCoinType=ALL_COINS, bool fUseInstantSend=true) const
 
void AddToSpends (const COutPoint &outpoint, const uint256 &wtxid)
 
void AddToSpends (const uint256 &wtxid)
 
void MarkConflicted (const uint256 &hashBlock, const uint256 &hashTx)
 
void SyncMetaData (std::pair< TxSpends::iterator, TxSpends::iterator >)
 
void DeriveNewChildKey (const CKeyMetadata &metadata, CKey &secretRet, uint32_t nAccountIndex, bool fInternal)
 

Private Attributes

CWalletDBpwalletdbEncryption
 
int nWalletVersion
 the current wallet version: clients below this version are not able to load the wallet More...
 
int nWalletMaxVersion
 the maximum wallet format version: memory-only variable that specifies to what version this wallet may be upgraded More...
 
int64_t nNextResend
 
int64_t nLastResend
 
bool fBroadcastTransactions
 
bool fAnonymizableTallyCached
 
std::vector< CompactTallyItemvecAnonymizableTallyCached
 
bool fAnonymizableTallyCachedNonDenom
 
std::vector< CompactTallyItemvecAnonymizableTallyCachedNonDenom
 
TxSpends mapTxSpends
 
std::set< COutPointsetWalletUTXO
 

Additional Inherited Members

- Protected Member Functions inherited from CCryptoKeyStore
bool SetCrypted ()
 
bool EncryptKeys (CKeyingMaterial &vMasterKeyIn)
 will encrypt previously unencrypted keys More...
 
bool EncryptHDChain (const CKeyingMaterial &vMasterKeyIn)
 
bool DecryptHDChain (CHDChain &hdChainRet) const
 
bool SetHDChain (const CHDChain &chain)
 
bool SetCryptedHDChain (const CHDChain &chain)
 
bool Unlock (const CKeyingMaterial &vMasterKeyIn, bool fForMixingOnly=false)
 
- Protected Member Functions inherited from CValidationInterface
virtual void AcceptedBlockHeader (const CBlockIndex *pindexNew)
 
virtual void NotifyHeaderTip (const CBlockIndex *pindexNew, bool fInitialDownload)
 
virtual void UpdatedBlockTip (const CBlockIndex *pindexNew, const CBlockIndex *pindexFork, bool fInitialDownload)
 
virtual void NotifyTransactionLock (const CTransaction &tx)
 
virtual void BlockChecked (const CBlock &, const CValidationState &)
 
friend void ::RegisterValidationInterface (CValidationInterface *)
 
friend void ::UnregisterValidationInterface (CValidationInterface *)
 
friend void ::UnregisterAllValidationInterfaces ()
 
- Protected Attributes inherited from CBasicKeyStore
KeyMap mapKeys
 
WatchKeyMap mapWatchKeys
 
ScriptMap mapScripts
 
WatchOnlySet setWatchOnly
 
CHDChain hdChain
 
- Protected Attributes inherited from CKeyStore
CCriticalSection cs_KeyStore
 

Detailed Description

A CWallet is an extension of a keystore, which also maintains a set of transactions and balances, and provides the ability to create new transactions.

Definition at line 617 of file wallet.h.

Member Typedef Documentation

◆ MasterKeyMap

typedef std::map<unsigned int, CMasterKey> CWallet::MasterKeyMap

Definition at line 697 of file wallet.h.

◆ TxItems

typedef std::multimap<int64_t, TxPair > CWallet::TxItems

Definition at line 742 of file wallet.h.

◆ TxPair

Definition at line 741 of file wallet.h.

◆ TxSpends

typedef std::multimap<COutPoint, uint256> CWallet::TxSpends
private

Used to keep track of spent outpoints, and detect and report conflicts (double-spends or mutated transactions where the mutant gets mined).

Definition at line 649 of file wallet.h.

Constructor & Destructor Documentation

◆ CWallet() [1/2]

CWallet::CWallet ( )
inline

Definition at line 701 of file wallet.h.

◆ CWallet() [2/2]

CWallet::CWallet ( const std::string &  strWalletFileIn)
inline

Definition at line 706 of file wallet.h.

◆ ~CWallet()

CWallet::~CWallet ( )
inline

Definition at line 714 of file wallet.h.

Member Function Documentation

◆ AddDestData()

bool CWallet::AddDestData ( const CTxDestination dest,
const std::string &  key,
const std::string &  value 
)

Adds a destination data tuple to the store, and saves it to disk.

Definition at line 4325 of file wallet.cpp.

◆ CanSupportFeature()

bool CWallet::CanSupportFeature ( enum WalletFeature  wf)
inline

check whether we are allowed to upgrade (or already support) to the named feature

Definition at line 762 of file wallet.h.

◆ EraseDestData()

bool CWallet::EraseDestData ( const CTxDestination dest,
const std::string &  key 
)

Erases a destination data tuple in the store and on disk.

Definition at line 4336 of file wallet.cpp.

◆ GetBroadcastTransactions()

bool CWallet::GetBroadcastTransactions ( ) const
inline

Inquire whether this wallet broadcasts transactions.

Definition at line 1027 of file wallet.h.

Referenced by sendmany(), and SendMoney().

◆ GetDestData()

bool CWallet::GetDestData ( const CTxDestination dest,
const std::string &  key,
std::string *  value 
) const

Look up a destination data tuple in the store, return true if found false otherwise.

Definition at line 4351 of file wallet.cpp.

◆ GetKeyBirthTimes()

void CWallet::GetKeyBirthTimes ( std::map< CKeyID, int64_t > &  mapKeyBirth) const

Definition at line 4273 of file wallet.cpp.

Referenced by dumpwallet().

◆ GetKeyPoolSize()

unsigned int CWallet::GetKeyPoolSize ( )
inline

Definition at line 978 of file wallet.h.

Referenced by getinfo(), and keypoolrefill().

◆ GetVersion()

int CWallet::GetVersion ( )
inline

get the current wallet format (the oldest client version guaranteed to understand this wallet)

Definition at line 993 of file wallet.h.

Referenced by getinfo(), and getwalletinfo().

◆ Inventory()

void CWallet::Inventory ( const uint256 hash)
inlinevirtual

Reimplemented from CValidationInterface.

Definition at line 961 of file wallet.h.

◆ LoadDestData()

bool CWallet::LoadDestData ( const CTxDestination dest,
const std::string &  key,
const std::string &  value 
)

Adds a destination data tuple to the store, without saving it to disk.

Definition at line 4345 of file wallet.cpp.

Referenced by ReadKeyValue().

◆ LoadKey()

bool CWallet::LoadKey ( const CKey key,
const CPubKey pubkey 
)
inline

Adds a key to the store, without saving it to disk (used by LoadWallet)

Definition at line 825 of file wallet.h.

Referenced by ReadKeyValue().

◆ LoadKeyPool()

void CWallet::LoadKeyPool ( int  nIndex,
const CKeyPool keypool 
)
inline

Definition at line 677 of file wallet.h.

Referenced by ReadKeyValue().

◆ LoadMinVersion()

bool CWallet::LoadMinVersion ( int  nVersion)
inline

Definition at line 829 of file wallet.h.

Referenced by CWalletDB::FindWalletTx(), and CWalletDB::LoadWallet().

◆ ResetRequestCount()

void CWallet::ResetRequestCount ( const uint256 hash)
inlinevirtual

Reimplemented from CValidationInterface.

Definition at line 972 of file wallet.h.

◆ SetBroadcastTransactions()

void CWallet::SetBroadcastTransactions ( bool  broadcast)
inline

Set whether this wallet broadcasts transactions.

Definition at line 1029 of file wallet.h.

Referenced by AppInit2().

◆ SetNull()

void CWallet::SetNull ( )
inline

Definition at line 720 of file wallet.h.

Referenced by CWallet().

Member Data Documentation

◆ cs_wallet

CCriticalSection CWallet::cs_wallet
mutable

Definition at line 672 of file wallet.h.

Referenced by abandontransaction(), addmultisigaddress(), AppInit2(), backupwallet(), CanSupportFeature(), CPrivateSendClient::CreateDenominated(), dumphdinfo(), dumpprivkey(), dumpwallet(), encryptwallet(), CWalletDB::FindWalletTx(), getaccount(), getaccountaddress(), getaddressesbyaccount(), getbalance(), getinfo(), GetKeyPoolSize(), getnewaddress(), getrawchangeaddress(), getreceivedbyaccount(), getreceivedbyaddress(), gettransaction(), getunconfirmedbalance(), GetVersion(), getwalletinfo(), importaddress(), importelectrumwallet(), importprivkey(), importpubkey(), importwallet(), instantsendtoaddress(), Inventory(), keypoolrefill(), listaccounts(), listaddressgroupings(), listlockunspent(), listreceivedbyaccount(), listreceivedbyaddress(), listsinceblock(), listtransactions(), listunspent(), LoadMinVersion(), CWalletDB::LoadWallet(), lockunspent(), CPrivateSendClient::MakeCollateralAmounts(), CActiveMasternode::ManageStateLocal(), masternode(), masternodebroadcast(), movecmd(), CPrivateSendClient::PrepareDenominate(), privatesend(), CInstantSend::ProcessMessage(), CInstantSend::ProcessOrphanTxLockVotes(), CInstantSend::ProcessTxLockVote(), CWalletDB::Recover(), CWalletDB::ReorderTransactions(), resendwallettransactions(), ResetRequestCount(), sendfrom(), sendmany(), sendtoaddress(), setaccount(), settxfee(), signmessage(), signrawtransaction(), CInstantSend::TryToFinalizeLockCandidate(), CPrivateSendClient::UnlockCoins(), CInstantSend::UpdateLockedTransaction(), validateaddress(), walletlock(), walletpassphrase(), and walletpassphrasechange().

◆ fallbackFee

CFeeRate CWallet::fallbackFee = CFeeRate(DEFAULT_LEGACY_FALLBACK_FEE)
static

If fee estimation does not have enough data to provide estimates, use this fee instead. Has no effect if not using fee estimation Override with -fallbackfee

Definition at line 910 of file wallet.h.

Referenced by AppInit2(), CDSNotificationInterface::UpdatedBlockTip(), and SendCoinsDialog::updateSmartFeeLabel().

◆ fAnonymizableTallyCached

bool CWallet::fAnonymizableTallyCached
mutableprivate

Definition at line 639 of file wallet.h.

Referenced by SetNull().

◆ fAnonymizableTallyCachedNonDenom

bool CWallet::fAnonymizableTallyCachedNonDenom
mutableprivate

Definition at line 641 of file wallet.h.

Referenced by SetNull().

◆ fBroadcastTransactions

bool CWallet::fBroadcastTransactions
private

Definition at line 637 of file wallet.h.

Referenced by GetBroadcastTransactions(), SetBroadcastTransactions(), and SetNull().

◆ fFileBacked

bool CWallet::fFileBacked

Definition at line 674 of file wallet.h.

Referenced by CWallet(), and SetNull().

◆ laccentries

std::list<CAccountingEntry> CWallet::laccentries

Definition at line 739 of file wallet.h.

Referenced by listaccounts(), and CWalletDB::LoadWallet().

◆ mapAddressBook

◆ mapHdPubKeys

std::map<CKeyID, CHDPubKey> CWallet::mapHdPubKeys

Definition at line 757 of file wallet.h.

Referenced by dumpwallet(), and validateaddress().

◆ mapKeyMetadata

std::map<CKeyID, CKeyMetadata> CWallet::mapKeyMetadata

Definition at line 695 of file wallet.h.

Referenced by importprivkey(), importwallet(), and LoadKeyPool().

◆ mapMasterKeys

MasterKeyMap CWallet::mapMasterKeys

Definition at line 698 of file wallet.h.

Referenced by ReadKeyValue().

◆ mapRequestCount

std::map<uint256, int> CWallet::mapRequestCount

Definition at line 746 of file wallet.h.

Referenced by Inventory(), and ResetRequestCount().

◆ mapTxSpends

TxSpends CWallet::mapTxSpends
private

Definition at line 650 of file wallet.h.

◆ mapWallet

◆ minTxFee

Fees smaller than this (in duffs) are considered zero fee (for transaction creation) Override with -mintxfee

Definition at line 909 of file wallet.h.

Referenced by AppInit2(), and CDSNotificationInterface::UpdatedBlockTip().

◆ nKeysLeftSinceAutoBackup

int64_t CWallet::nKeysLeftSinceAutoBackup

◆ nLastResend

int64_t CWallet::nLastResend
private

Definition at line 636 of file wallet.h.

Referenced by SetNull().

◆ nMasterKeyMaxID

unsigned int CWallet::nMasterKeyMaxID

Definition at line 699 of file wallet.h.

Referenced by ReadKeyValue(), and SetNull().

◆ nNextResend

int64_t CWallet::nNextResend
private

Definition at line 635 of file wallet.h.

Referenced by SetNull().

◆ nOrderPosNext

int64_t CWallet::nOrderPosNext

Definition at line 745 of file wallet.h.

Referenced by ReadKeyValue(), CWalletDB::ReorderTransactions(), and SetNull().

◆ NotifyAddressBookChanged

boost::signals2::signal<void (CWallet *wallet, const CTxDestination &address, const std::string &label, bool isMine, const std::string &purpose, ChangeType status)> CWallet::NotifyAddressBookChanged

Address book entry changed.

Note
called with lock cs_wallet held.

Definition at line 1011 of file wallet.h.

◆ NotifyTransactionChanged

boost::signals2::signal<void (CWallet *wallet, const uint256 &hashTx, ChangeType status)> CWallet::NotifyTransactionChanged

Wallet transaction added, removed or updated.

Note
called with lock cs_wallet held.

Definition at line 1018 of file wallet.h.

◆ NotifyWatchonlyChanged

boost::signals2::signal<void (bool fHaveWatchOnly)> CWallet::NotifyWatchonlyChanged

Watch-only address added

Definition at line 1024 of file wallet.h.

◆ nTimeFirstKey

int64_t CWallet::nTimeFirstKey

◆ nWalletMaxVersion

int CWallet::nWalletMaxVersion
private

the maximum wallet format version: memory-only variable that specifies to what version this wallet may be upgraded

Definition at line 633 of file wallet.h.

Referenced by CanSupportFeature(), LoadMinVersion(), and SetNull().

◆ nWalletVersion

int CWallet::nWalletVersion
private

the current wallet version: clients below this version are not able to load the wallet

Definition at line 630 of file wallet.h.

Referenced by GetVersion(), LoadMinVersion(), and SetNull().

◆ pwalletdbEncryption

CWalletDB* CWallet::pwalletdbEncryption
private

Definition at line 627 of file wallet.h.

Referenced by SetNull(), and ~CWallet().

◆ setExternalKeyPool

std::set<int64_t> CWallet::setExternalKeyPool

Definition at line 694 of file wallet.h.

Referenced by GetKeyPoolSize(), and LoadKeyPool().

◆ setInternalKeyPool

std::set<int64_t> CWallet::setInternalKeyPool

Definition at line 693 of file wallet.h.

Referenced by GetKeyPoolSize(), and LoadKeyPool().

◆ setLockedCoins

std::set<COutPoint> CWallet::setLockedCoins

Definition at line 752 of file wallet.h.

◆ setWalletUTXO

std::set<COutPoint> CWallet::setWalletUTXO
private

Definition at line 654 of file wallet.h.

◆ ShowProgress

boost::signals2::signal<void (const std::string &title, int nProgress)> CWallet::ShowProgress

Show progress e.g. for rescan

Definition at line 1021 of file wallet.h.

Referenced by importelectrumwallet(), importwallet(), and SplashScreen::unsubscribeFromCoreSignals().

◆ strWalletFile

const std::string CWallet::strWalletFile

Definition at line 675 of file wallet.h.

Referenced by AppInit2(), GetAccountAddress(), GetAccountBalance(), and movecmd().

◆ vchDefaultKey

CPubKey CWallet::vchDefaultKey

Definition at line 750 of file wallet.h.

Referenced by AppInit2(), CWalletDB::FindWalletTx(), CWalletDB::LoadWallet(), and ReadKeyValue().

◆ vecAnonymizableTallyCached

std::vector<CompactTallyItem> CWallet::vecAnonymizableTallyCached
mutableprivate

Definition at line 640 of file wallet.h.

Referenced by SetNull().

◆ vecAnonymizableTallyCachedNonDenom

std::vector<CompactTallyItem> CWallet::vecAnonymizableTallyCachedNonDenom
mutableprivate

Definition at line 642 of file wallet.h.

Referenced by SetNull().

◆ wtxOrdered

TxItems CWallet::wtxOrdered

Definition at line 743 of file wallet.h.

Referenced by listtransactions(), and CWalletDB::LoadWallet().


The documentation for this class was generated from the following files: