PIVX Core  5.6.99
P2P Digital Currency
Classes | Functions
MapWallet

Classes

struct  CompareValueOnly
 
class  CAffectedKeysVisitor
 

Functions

std::string COutput::ToString () const
 
std::vector< CKeyIDCWallet::GetAffectedKeys (const CScript &spk)
 
bool CWallet::SetupSPKM (bool newKeypool=true, bool memOnly=false)
 Generates hd wallet //. More...
 
bool CWallet::ActivateSaplingWallet (bool memOnly=false)
 
bool CWallet::IsHDEnabled () const
 Whether the wallet is hd or not //. More...
 
bool CWallet::IsSaplingUpgradeEnabled () const
 Whether the wallet supports Sapling or not //. More...
 
const CWalletTxCWallet::GetWalletTx (const uint256 &hash) const
 
std::vector< CWalletTxCWallet::getWalletTxs ()
 
CallResult< CTxDestinationCWallet::getNewAddress (const std::string &label)
 
CallResult< CTxDestinationCWallet::getNewStakingAddress (const std::string &label)
 
CallResult< CTxDestinationCWallet::getNewAddress (const std::string &addressLabel, const std::string purpose, const CChainParams::Base58Type addrType=CChainParams::PUBKEY_ADDRESS)
 
int64_t CWallet::GetKeyCreationTime (const CWDestination &dest)
 
int64_t CWallet::GetKeyCreationTime (CPubKey pubkey)
 
int64_t CWallet::GetKeyCreationTime (const CTxDestination &address)
 
int64_t CWallet::GetKeyCreationTime (const libzcash::SaplingPaymentAddress &address)
 
bool CWallet::AddKeyPubKey (const CKey &key, const CPubKey &pubkey) override
 Adds a key to the store, and saves it to disk. More...
 
bool CWallet::AddCryptedKey (const CPubKey &vchPubKey, const std::vector< unsigned char > &vchCryptedSecret) override
 Adds an encrypted key to the store, and saves it to disk. More...
 
bool CWallet::LoadKeyMetadata (const CPubKey &pubkey, const CKeyMetadata &metadata)
 Load metadata (used by LoadWallet) More...
 
bool CWallet::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...
 
void CWallet::UpdateTimeFirstKey (int64_t nCreateTime)
 Update wallet first key creation time. More...
 
bool CWallet::AddCScript (const CScript &redeemScript) override
 Support for BIP 0013 : see https://github.com/bitcoin/bips/blob/master/bip-0013.mediawiki. More...
 
bool CWallet::LoadCScript (const CScript &redeemScript)
 
bool CWallet::AddWatchOnly (const CScript &dest) override
 Adds a watch-only address to the store, and saves it to disk. More...
 
bool CWallet::RemoveWatchOnly (const CScript &dest) override
 
bool CWallet::LoadWatchOnly (const CScript &dest)
 Adds a watch-only address to the store, without saving it to disk (used by LoadWallet) More...
 
bool CWallet::Unlock (const SecureString &strWalletPassphrase, bool anonimizeOnly=false)
 
bool CWallet::Lock ()
 
bool CWallet::Unlock (const CKeyingMaterial &vMasterKeyIn)
 
bool CWallet::ChangeWalletPassphrase (const SecureString &strOldWalletPassphrase, const SecureString &strNewWalletPassphrase)
 
void CWallet::ChainTipAdded (const CBlockIndex *pindex, const CBlock *pblock, SaplingMerkleTree saplingTree)
 
void CWallet::SetBestChain (const CBlockLocator &loc) override
 Notifies listeners of the new active block chain on-disk. More...
 
void CWallet::SetBestChainInternal (WalletBatch &batch, const CBlockLocator &loc)
 
bool CWallet::SetMinVersion (enum WalletFeature, WalletBatch *batch_in=nullptr, bool fExplicit=false)
 signify that a particular wallet feature is now used. this may change nWalletVersion and nWalletMaxVersion if those are lower More...
 
bool CWallet::SetMaxVersion (int nVersion)
 change which version we're allowed to upgrade to (note that this does not immediately imply upgrading to that format) More...
 
std::set< uint256CWallet::GetConflicts (const uint256 &txid) const
 Get wallet transactions that conflict with given transaction (spend same outputs) More...
 
void CWallet::SyncMetaDataN (std::pair< TxSpendMap< uint256 >::iterator, TxSpendMap< uint256 >::iterator > range)
 
template<class T >
void CWallet::SyncMetaData (std::pair< typename TxSpendMap< T >::iterator, typename TxSpendMap< T >::iterator > range)
 
const CKeyingMaterialCWallet::GetEncryptionKey () const
 
bool CWallet::HasEncryptionKeys () const
 
ScriptPubKeyManCWallet::GetScriptPubKeyMan () const
 Get spkm. More...
 
bool CWallet::HasSaplingSPKM () const
 
bool CWallet::IsSaplingSpent (const SaplingOutPoint &op) const
 
bool CWallet::IsSpent (const COutPoint &outpoint) const
 Outpoint is spent if any non-conflicted transaction spends it: More...
 
bool CWallet::IsSpent (const uint256 &hash, unsigned int n) const
 
void CWallet::AddToSpends (const COutPoint &outpoint, const uint256 &wtxid)
 
void CWallet::AddToSpends (const uint256 &wtxid)
 
bool CWallet::EncryptWallet (const SecureString &strWalletPassphrase)
 
int64_t CWallet::IncOrderPosNext (WalletBatch *batch=nullptr)
 Increment the next transaction order id. More...
 
bool CWallet::IsKeyUsed (const CPubKey &vchPubKey) const
 
void CWallet::MarkDirty ()
 
bool CWallet::AddToWallet (const CWalletTx &wtxIn, bool fFlushOnClose=true)
 
bool CWallet::LoadToWallet (CWalletTx &wtxIn)
 
bool CWallet::FindNotesDataAndAddMissingIVKToKeystore (const CTransaction &tx, Optional< mapSaplingNoteData_t > &saplingNoteData)
 
void CWallet::AddExternalNotesDataToTx (CWalletTx &wtx) const
 
bool CWallet::AddToWalletIfInvolvingMe (const CTransactionRef &tx, const CWalletTx::Confirmation &confirm, bool fUpdate)
 Add a transaction to the wallet, or update it. More...
 
bool CWallet::AbandonTransaction (const uint256 &hashTx)
 
void CWallet::MarkConflicted (const uint256 &hashBlock, int conflicting_height, const uint256 &hashTx)
 
void CWallet::SyncTransaction (const CTransactionRef &tx, const CWalletTx::Confirmation &confirm)
 
void CWallet::TransactionAddedToMempool (const CTransactionRef &tx) override
 Notifies listeners of a transaction having been added to mempool. More...
 
void CWallet::TransactionRemovedFromMempool (const CTransactionRef &ptx, MemPoolRemovalReason reason) override
 Notifies listeners of a transaction leaving mempool. More...
 
void CWallet::BlockConnected (const std::shared_ptr< const CBlock > &pblock, const CBlockIndex *pindex) override
 Notifies listeners of a block being connected. More...
 
void CWallet::BlockDisconnected (const std::shared_ptr< const CBlock > &pblock, const uint256 &blockHash, int nBlockHeight, int64_t blockTime) override
 Notifies listeners of a block being disconnected. More...
 
void CWallet::BlockUntilSyncedToCurrentChain ()
 Blocks until the wallet state is up-to-date to /at least/ the current chain at the time this function is entered Obviously holding cs_main/cs_wallet when going into this call may cause deadlock. More...
 
void CWallet::MarkAffectedTransactionsDirty (const CTransaction &tx)
 
void CWallet::EraseFromWallet (const uint256 &hash)
 
isminetype CWallet::IsMine (const CTxIn &txin) const
 
bool CWallet::IsUsed (const CTxDestination address) const
 
bool CWallet::IsUsed (const libzcash::SaplingPaymentAddress address) const
 
CAmount CWallet::GetDebit (const CTxIn &txin, const isminefilter &filter) const
 
bool CWallet::IsChange (const CTxOut &txout) const
 
bool CWallet::IsChange (const CTxDestination &address) const
 
int64_t CWalletTx::GetTxTime () const
 
void CWalletTx::UpdateTimeSmart ()
 Update smart timestamp for a transaction being added to the wallet. More...
 
CAmount CWalletTx::GetCachableAmount (AmountType type, const isminefilter &filter, bool recalculate=false) const
 
bool CWalletTx::IsAmountCached (AmountType type, const isminefilter &filter) const
 
CAmount CWalletTx::GetDebit (const isminefilter &filter) const
 filter decides which addresses will count towards the debit More...
 
CAmount CWalletTx::GetColdStakingDebit (bool fUseCache=true) const
 
CAmount CWalletTx::GetStakeDelegationDebit (bool fUseCache=true) const
 
CAmount CWalletTx::GetCredit (const isminefilter &filter, bool recalculate=false) const
 
CAmount CWalletTx::GetImmatureCredit (bool fUseCache=true, const isminefilter &filter=ISMINE_SPENDABLE_ALL) const
 
CAmount CWalletTx::GetAvailableCredit (bool fUseCache=true, const isminefilter &filter=ISMINE_SPENDABLE) const
 
CAmount CWalletTx::GetColdStakingCredit (bool fUseCache=true) const
 
CAmount CWalletTx::GetStakeDelegationCredit (bool fUseCache=true) const
 
CAmount CWalletTx::GetLockedCredit () const
 
CAmount CWalletTx::GetImmatureWatchOnlyCredit (const bool fUseCache=true) const
 
CAmount CWalletTx::GetAvailableWatchOnlyCredit (const bool fUseCache=true) const
 
void CWalletTx::GetAmounts (std::list< COutputEntry > &listReceived, std::list< COutputEntry > &listSent, CAmount &nFee, const isminefilter &filter) const
 
bool CWallet::Upgrade (std::string &error, const int prevVersion)
 Upgrade wallet to HD and Sapling if needed. More...
 
int64_t CWallet::RescanFromTime (int64_t startTime, const WalletRescanReserver &reserver, bool update)
 Scan active chain for relevant transactions after importing keys. More...
 
CBlockIndexCWallet::ScanForWalletTransactions (CBlockIndex *pindexStart, CBlockIndex *pindexStop, const WalletRescanReserver &reserver, bool fUpdate=false, bool fromStartup=false)
 Scan the block chain (starting in pindexStart) for transactions from or to us. More...
 
void CWallet::ReacceptWalletTransactions (bool fFirstLoad=false)
 
bool CWalletTx::InMempool () const
 
void CWalletTx::RelayWalletTransaction (CConnman *connman)
 
std::set< uint256CWalletTx::GetConflicts () const
 
void CWallet::Flush (bool shutdown=false)
 Flush wallet (bitdb flush) More...
 
void CWallet::ResendWalletTransactions (CConnman *connman) override
 Tells listeners to broadcast their data. More...
 
void CWallet::UpdatedBlockTip (const CBlockIndex *pindexNew, const CBlockIndex *pindexFork, bool fInitialDownload) override
 Notifies listeners when the block chain tip advances. More...
 

Detailed Description

Function Documentation

◆ AbandonTransaction()

bool CWallet::AbandonTransaction ( const uint256 hashTx)

Definition at line 1144 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ActivateSaplingWallet()

bool CWallet::ActivateSaplingWallet ( bool  memOnly = false)

Definition at line 142 of file wallet.cpp.

Here is the caller graph for this function:

◆ AddCryptedKey()

bool CWallet::AddCryptedKey ( const CPubKey vchPubKey,
const std::vector< unsigned char > &  vchCryptedSecret 
)
overridevirtual

Adds an encrypted key to the store, and saves it to disk.

Reimplemented from CCryptoKeyStore.

Definition at line 279 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AddCScript()

bool CWallet::AddCScript ( const CScript redeemScript)
overridevirtual

Support for BIP 0013 : see https://github.com/bitcoin/bips/blob/master/bip-0013.mediawiki.

Reimplemented from CBasicKeyStore.

Definition at line 327 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AddExternalNotesDataToTx()

void CWallet::AddExternalNotesDataToTx ( CWalletTx wtx) const

Definition at line 1040 of file wallet.cpp.

Here is the call graph for this function:

◆ AddKeyPubKey()

bool CWallet::AddKeyPubKey ( const CKey key,
const CPubKey pubkey 
)
overridevirtual

Adds a key to the store, and saves it to disk.

Todo:
: Move the follow block entirely inside the spkm (including WriteKey to AddKeyPubKeyWithDB)

Reimplemented from CCryptoKeyStore.

Definition at line 252 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AddToSpends() [1/2]

void CWallet::AddToSpends ( const COutPoint outpoint,
const uint256 wtxid 
)
private

Definition at line 745 of file wallet.cpp.

Here is the caller graph for this function:

◆ AddToSpends() [2/2]

void CWallet::AddToSpends ( const uint256 wtxid)
private

Definition at line 755 of file wallet.cpp.

Here is the call graph for this function:

◆ AddToWallet()

bool CWallet::AddToWallet ( const CWalletTx wtxIn,
bool  fFlushOnClose = true 
)

Definition at line 901 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AddToWalletIfInvolvingMe()

bool CWallet::AddToWalletIfInvolvingMe ( const CTransactionRef ptx,
const CWalletTx::Confirmation confirm,
bool  fUpdate 
)

Add a transaction to the wallet, or update it.

pIndex and posInBlock should be set when the transaction was known to be included in a block. When pIndex == nullptr, then wallet state is not updated in AddToWallet, but notifications happen and cached balances are marked dirty.

If fUpdate is true, existing transactions will be updated. TODO: One exception to this is that the abandoned state is cleared under the assumption that any further notification of a transaction that was considered abandoned is an indication that it is not safe to be considered abandoned. Abandoned state should probably be more carefully tracked via different posInBlock signals or by checking mempool presence when necessary.

Definition at line 1077 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AddWatchOnly()

bool CWallet::AddWatchOnly ( const CScript dest)
overridevirtual

Adds a watch-only address to the store, and saves it to disk.

Reimplemented from CBasicKeyStore.

Definition at line 349 of file wallet.cpp.

Here is the call graph for this function:

◆ BlockConnected()

void CWallet::BlockConnected ( const std::shared_ptr< const CBlock > &  block,
const CBlockIndex pindex 
)
overridevirtual

Notifies listeners of a block being connected.

Provides a vector of transactions evicted from the mempool as a result.

Called on a background thread.

Reimplemented from CValidationInterface.

Definition at line 1319 of file wallet.cpp.

Here is the call graph for this function:

◆ BlockDisconnected()

void CWallet::BlockDisconnected ( const std::shared_ptr< const CBlock > &  block,
const uint256 blockHash,
int  nBlockHeight,
int64_t  blockTime 
)
overridevirtual

Notifies listeners of a block being disconnected.

Called on a background thread.

Reimplemented from CValidationInterface.

Definition at line 1360 of file wallet.cpp.

Here is the call graph for this function:

◆ BlockUntilSyncedToCurrentChain()

void CWallet::BlockUntilSyncedToCurrentChain ( )

Blocks until the wallet state is up-to-date to /at least/ the current chain at the time this function is entered Obviously holding cs_main/cs_wallet when going into this call may cause deadlock.

Definition at line 1383 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ChainTipAdded()

void CWallet::ChainTipAdded ( const CBlockIndex pindex,
const CBlock pblock,
SaplingMerkleTree  saplingTree 
)
private

Definition at line 503 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ChangeWalletPassphrase()

bool CWallet::ChangeWalletPassphrase ( const SecureString strOldWalletPassphrase,
const SecureString strNewWalletPassphrase 
)

Definition at line 457 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ EncryptWallet()

bool CWallet::EncryptWallet ( const SecureString strWalletPassphrase)

Definition at line 773 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ EraseFromWallet()

void CWallet::EraseFromWallet ( const uint256 hash)

Definition at line 1437 of file wallet.cpp.

Here is the call graph for this function:

◆ FindNotesDataAndAddMissingIVKToKeystore()

bool CWallet::FindNotesDataAndAddMissingIVKToKeystore ( const CTransaction tx,
Optional< mapSaplingNoteData_t > &  saplingNoteData 
)

Definition at line 1026 of file wallet.cpp.

◆ Flush()

void CWallet::Flush ( bool  shutdown = false)

Flush wallet (bitdb flush)

Definition at line 2063 of file wallet.cpp.

◆ GetAffectedKeys()

std::vector< CKeyID > CWallet::GetAffectedKeys ( const CScript spk)

Definition at line 118 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetAmounts()

void CWalletTx::GetAmounts ( std::list< COutputEntry > &  listReceived,
std::list< COutputEntry > &  listSent,
CAmount nFee,
const isminefilter filter 
) const

Definition at line 1754 of file wallet.cpp.

◆ GetAvailableCredit()

CAmount CWalletTx::GetAvailableCredit ( bool  fUseCache = true,
const isminefilter filter = ISMINE_SPENDABLE 
) const

Definition at line 1647 of file wallet.cpp.

Here is the caller graph for this function:

◆ GetAvailableWatchOnlyCredit()

CAmount CWalletTx::GetAvailableWatchOnlyCredit ( const bool  fUseCache = true) const

Definition at line 1749 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetCachableAmount()

CAmount CWalletTx::GetCachableAmount ( AmountType  type,
const isminefilter filter,
bool  recalculate = false 
) const

Definition at line 1565 of file wallet.cpp.

Here is the caller graph for this function:

◆ GetColdStakingCredit()

CAmount CWalletTx::GetColdStakingCredit ( bool  fUseCache = true) const

Definition at line 1694 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetColdStakingDebit()

CAmount CWalletTx::GetColdStakingDebit ( bool  fUseCache = true) const

Definition at line 1606 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetConflicts() [1/2]

std::set< uint256 > CWalletTx::GetConflicts ( ) const

Definition at line 2052 of file wallet.cpp.

Here is the call graph for this function:

◆ GetConflicts() [2/2]

std::set< uint256 > CWallet::GetConflicts ( const uint256 txid) const

Get wallet transactions that conflict with given transaction (spend same outputs)

Definition at line 618 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetCredit()

CAmount CWalletTx::GetCredit ( const isminefilter filter,
bool  recalculate = false 
) const

Definition at line 1616 of file wallet.cpp.

Here is the caller graph for this function:

◆ GetDebit() [1/2]

CAmount CWallet::GetDebit ( const CTxIn txin,
const isminefilter filter 
) const

Definition at line 1500 of file wallet.cpp.

Here is the caller graph for this function:

◆ GetDebit() [2/2]

CAmount CWalletTx::GetDebit ( const isminefilter filter) const

filter decides which addresses will count towards the debit

Definition at line 1580 of file wallet.cpp.

Here is the caller graph for this function:

◆ GetEncryptionKey()

const CKeyingMaterial & CWallet::GetEncryptionKey ( ) const

Definition at line 691 of file wallet.cpp.

Here is the caller graph for this function:

◆ GetImmatureCredit()

CAmount CWalletTx::GetImmatureCredit ( bool  fUseCache = true,
const isminefilter filter = ISMINE_SPENDABLE_ALL 
) const

Definition at line 1638 of file wallet.cpp.

Here is the caller graph for this function:

◆ GetImmatureWatchOnlyCredit()

CAmount CWalletTx::GetImmatureWatchOnlyCredit ( const bool  fUseCache = true) const

Definition at line 1740 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetKeyCreationTime() [1/4]

int64_t CWallet::GetKeyCreationTime ( const CTxDestination address)

Definition at line 233 of file wallet.cpp.

Here is the call graph for this function:

◆ GetKeyCreationTime() [2/4]

int64_t CWallet::GetKeyCreationTime ( const CWDestination dest)

Definition at line 221 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetKeyCreationTime() [3/4]

int64_t CWallet::GetKeyCreationTime ( const libzcash::SaplingPaymentAddress address)

Definition at line 245 of file wallet.cpp.

Here is the call graph for this function:

◆ GetKeyCreationTime() [4/4]

int64_t CWallet::GetKeyCreationTime ( CPubKey  pubkey)

Definition at line 228 of file wallet.cpp.

Here is the call graph for this function:

◆ GetLockedCredit()

CAmount CWalletTx::GetLockedCredit ( ) const

Definition at line 1705 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getNewAddress() [1/2]

CallResult< CTxDestination > CWallet::getNewAddress ( const std::string &  addressLabel,
const std::string  purpose,
const CChainParams::Base58Type  addrType = CChainParams::PUBKEY_ADDRESS 
)

Definition at line 196 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getNewAddress() [2/2]

CallResult< CTxDestination > CWallet::getNewAddress ( const std::string &  label)

Definition at line 186 of file wallet.cpp.

Here is the call graph for this function:

◆ getNewStakingAddress()

CallResult< CTxDestination > CWallet::getNewStakingAddress ( const std::string &  label)

Definition at line 191 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetScriptPubKeyMan()

ScriptPubKeyMan * CWallet::GetScriptPubKeyMan ( ) const

Get spkm.

Definition at line 701 of file wallet.cpp.

Here is the caller graph for this function:

◆ GetStakeDelegationCredit()

CAmount CWalletTx::GetStakeDelegationCredit ( bool  fUseCache = true) const

Definition at line 1699 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetStakeDelegationDebit()

CAmount CWalletTx::GetStakeDelegationDebit ( bool  fUseCache = true) const

Definition at line 1611 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetTxTime()

int64_t CWalletTx::GetTxTime ( ) const

Definition at line 1541 of file wallet.cpp.

Here is the caller graph for this function:

◆ GetWalletTx()

const CWalletTx * CWallet::GetWalletTx ( const uint256 hash) const

Definition at line 166 of file wallet.cpp.

Here is the caller graph for this function:

◆ getWalletTxs()

std::vector< CWalletTx > CWallet::getWalletTxs ( )

Definition at line 175 of file wallet.cpp.

Here is the caller graph for this function:

◆ HasEncryptionKeys()

bool CWallet::HasEncryptionKeys ( ) const

Definition at line 696 of file wallet.cpp.

Here is the caller graph for this function:

◆ HasSaplingSPKM()

bool CWallet::HasSaplingSPKM ( ) const

Definition at line 706 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IncOrderPosNext()

int64_t CWallet::IncOrderPosNext ( WalletBatch batch = nullptr)

Increment the next transaction order id.

Returns
next transaction order id

Definition at line 866 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ InMempool()

bool CWalletTx::InMempool ( ) const

Definition at line 2031 of file wallet.cpp.

Here is the caller graph for this function:

◆ IsAmountCached()

bool CWalletTx::IsAmountCached ( AmountType  type,
const isminefilter filter 
) const

Definition at line 1574 of file wallet.cpp.

Here is the caller graph for this function:

◆ IsChange() [1/2]

bool CWallet::IsChange ( const CTxDestination address) const

Definition at line 1534 of file wallet.cpp.

Here is the call graph for this function:

◆ IsChange() [2/2]

bool CWallet::IsChange ( const CTxOut txout) const
Todo:
: fix handling of 'change' outputs. The assumption is that any

Definition at line 1515 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsHDEnabled()

bool CWallet::IsHDEnabled ( ) const

Whether the wallet is hd or not //.

Definition at line 156 of file wallet.cpp.

Here is the caller graph for this function:

◆ IsKeyUsed()

bool CWallet::IsKeyUsed ( const CPubKey vchPubKey) const
private

Definition at line 878 of file wallet.cpp.

Here is the call graph for this function:

◆ IsMine()

isminetype CWallet::IsMine ( const CTxIn txin) const

Definition at line 1448 of file wallet.cpp.

Here is the caller graph for this function:

◆ IsSaplingSpent()

bool CWallet::IsSaplingSpent ( const SaplingOutPoint op) const

Definition at line 711 of file wallet.cpp.

Here is the caller graph for this function:

◆ IsSaplingUpgradeEnabled()

bool CWallet::IsSaplingUpgradeEnabled ( ) const

Whether the wallet supports Sapling or not //.

Definition at line 161 of file wallet.cpp.

Here is the caller graph for this function:

◆ IsSpent() [1/2]

bool CWallet::IsSpent ( const COutPoint outpoint) const

Outpoint is spent if any non-conflicted transaction spends it:

Definition at line 720 of file wallet.cpp.

Here is the caller graph for this function:

◆ IsSpent() [2/2]

bool CWallet::IsSpent ( const uint256 hash,
unsigned int  n 
) const

Definition at line 740 of file wallet.cpp.

Here is the call graph for this function:

◆ IsUsed() [1/2]

bool CWallet::IsUsed ( const CTxDestination  address) const

Definition at line 1462 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsUsed() [2/2]

bool CWallet::IsUsed ( const libzcash::SaplingPaymentAddress  address) const

Definition at line 1483 of file wallet.cpp.

Here is the call graph for this function:

◆ LoadCryptedKey()

bool CWallet::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)

Definition at line 306 of file wallet.cpp.

Here is the call graph for this function:

◆ LoadCScript()

bool CWallet::LoadCScript ( const CScript redeemScript)

Definition at line 334 of file wallet.cpp.

Here is the call graph for this function:

◆ LoadKeyMetadata()

bool CWallet::LoadKeyMetadata ( const CPubKey pubkey,
const CKeyMetadata metadata 
)

Load metadata (used by LoadWallet)

Definition at line 296 of file wallet.cpp.

Here is the call graph for this function:

◆ LoadToWallet()

bool CWallet::LoadToWallet ( CWalletTx wtxIn)

Definition at line 983 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ LoadWatchOnly()

bool CWallet::LoadWatchOnly ( const CScript dest)

Adds a watch-only address to the store, without saving it to disk (used by LoadWallet)

Definition at line 371 of file wallet.cpp.

Here is the call graph for this function:

◆ Lock()

bool CWallet::Lock ( )

Definition at line 397 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MarkAffectedTransactionsDirty()

void CWallet::MarkAffectedTransactionsDirty ( const CTransaction tx)

Definition at line 1408 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MarkConflicted()

void CWallet::MarkConflicted ( const uint256 hashBlock,
int  conflicting_height,
const uint256 hashTx 
)
private

Definition at line 1203 of file wallet.cpp.

Here is the call graph for this function:

◆ MarkDirty()

void CWallet::MarkDirty ( )

Definition at line 892 of file wallet.cpp.

Here is the caller graph for this function:

◆ ReacceptWalletTransactions()

void CWallet::ReacceptWalletTransactions ( bool  fFirstLoad = false)

Definition at line 2000 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ RelayWalletTransaction()

void CWalletTx::RelayWalletTransaction ( CConnman connman)

Definition at line 2036 of file wallet.cpp.

Here is the call graph for this function:

◆ RemoveWatchOnly()

bool CWallet::RemoveWatchOnly ( const CScript dest)
overridevirtual

Reimplemented from CBasicKeyStore.

Definition at line 358 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ RescanFromTime()

int64_t CWallet::RescanFromTime ( int64_t  startTime,
const WalletRescanReserver reserver,
bool  update 
)

Scan active chain for relevant transactions after importing keys.

This should be called whenever new keys are added to the wallet, with the oldest key creation time.

Returns
Earliest timestamp that could be successfully scanned from. Timestamp returned will be higher than startTime if relevant blocks could not be read.

Definition at line 1859 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ResendWalletTransactions()

void CWallet::ResendWalletTransactions ( CConnman connman)
overridevirtual

Tells listeners to broadcast their data.

Reimplemented from CValidationInterface.

Definition at line 2068 of file wallet.cpp.

Here is the call graph for this function:

◆ ScanForWalletTransactions()

CBlockIndex * CWallet::ScanForWalletTransactions ( CBlockIndex pindexStart,
CBlockIndex pindexStop,
const WalletRescanReserver reserver,
bool  fUpdate = false,
bool  fromStartup = false 
)

Scan the block chain (starting in pindexStart) for transactions from or to us.

If fUpdate is true, found transactions that already exist in the wallet will be updated.

Returns null if scan was successful. Otherwise, if a complete rescan was not possible (due to pruning or corruption), returns pointer to the most recent block that could not be scanned.

If pindexStop is not a nullptr, the scan will stop at the block-index defined by pindexStop

Caller needs to make sure pindexStop (and the optional pindexStart) are on the main chain after to the addition of any new keys you want to detect transactions for.

Definition at line 1896 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetBestChain()

void CWallet::SetBestChain ( const CBlockLocator locator)
overridevirtual

Notifies listeners of the new active block chain on-disk.

Called on a background thread.

Reimplemented from CValidationInterface.

Definition at line 511 of file wallet.cpp.

Here is the call graph for this function:

◆ SetBestChainInternal()

void CWallet::SetBestChainInternal ( WalletBatch batch,
const CBlockLocator loc 
)

Definition at line 517 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetMaxVersion()

bool CWallet::SetMaxVersion ( int  nVersion)

change which version we're allowed to upgrade to (note that this does not immediately imply upgrading to that format)

Definition at line 606 of file wallet.cpp.

Here is the caller graph for this function:

◆ SetMinVersion()

bool CWallet::SetMinVersion ( enum WalletFeature  nVersion,
WalletBatch batch_in = nullptr,
bool  fExplicit = false 
)

signify that a particular wallet feature is now used. this may change nWalletVersion and nWalletMaxVersion if those are lower

Definition at line 580 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetupSPKM()

bool CWallet::SetupSPKM ( bool  newKeypool = true,
bool  memOnly = false 
)

Generates hd wallet //.

Definition at line 133 of file wallet.cpp.

Here is the caller graph for this function:

◆ SyncMetaData()

template<class T >
void CWallet::SyncMetaData ( std::pair< typename TxSpendMap< T >::iterator, typename TxSpendMap< T >::iterator >  range)
private

Definition at line 652 of file wallet.cpp.

◆ SyncMetaDataN()

void CWallet::SyncMetaDataN ( std::pair< TxSpendMap< uint256 >::iterator, TxSpendMap< uint256 >::iterator >  range)

Definition at line 646 of file wallet.cpp.

Here is the caller graph for this function:

◆ SyncTransaction()

void CWallet::SyncTransaction ( const CTransactionRef tx,
const CWalletTx::Confirmation confirm 
)
private

Definition at line 1260 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ToString()

std::string COutput::ToString ( ) const

Definition at line 72 of file wallet.cpp.

Here is the call graph for this function:

◆ TransactionAddedToMempool()

void CWallet::TransactionAddedToMempool ( const CTransactionRef ptxn)
overridevirtual

Notifies listeners of a transaction having been added to mempool.

Called on a background thread.

Reimplemented from CValidationInterface.

Definition at line 1269 of file wallet.cpp.

Here is the call graph for this function:

◆ TransactionRemovedFromMempool()

void CWallet::TransactionRemovedFromMempool ( const CTransactionRef ptx,
MemPoolRemovalReason  reason 
)
overridevirtual

Notifies listeners of a transaction leaving mempool.

This notification fires for transactions that are removed from the mempool for the following reasons:

  • EXPIRY (expired from mempool after -mempoolexpiry hours)
  • SIZELIMIT (removed in size limiting if the mempool exceeds -maxmempool megabytes)
  • REORG (removed during a reorg)
  • CONFLICT (removed because it conflicts with in-block transaction)
  • REPLACED (removed due to RBF replacement) – not supported yet –

This does not fire for transactions that are removed from the mempool because they have been included in a block. Any client that is interested in transactions removed from the mempool for inclusion in a block can learn about those transactions from the BlockConnected notification.

Transactions that are removed from the mempool because they conflict with a transaction in the new block will have TransactionRemovedFromMempool events fired before the BlockConnected event is fired. If multiple blocks are connected in one step, then the ordering could be:

  • TransactionRemovedFromMempool(tx1 from block A)
  • TransactionRemovedFromMempool(tx2 from block A)
  • TransactionRemovedFromMempool(tx1 from block B)
  • TransactionRemovedFromMempool(tx2 from block B)
  • BlockConnected(A)
  • BlockConnected(B)

Called on a background thread.

Reimplemented from CValidationInterface.

Definition at line 1281 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Unlock() [1/2]

bool CWallet::Unlock ( const CKeyingMaterial vMasterKeyIn)

Definition at line 411 of file wallet.cpp.

Here is the call graph for this function:

◆ Unlock() [2/2]

bool CWallet::Unlock ( const SecureString strWalletPassphrase,
bool  anonimizeOnly = false 
)

Definition at line 376 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ UpdatedBlockTip()

void CWallet::UpdatedBlockTip ( const CBlockIndex pindexNew,
const CBlockIndex pindexFork,
bool  fInitialDownload 
)
overridevirtual

Notifies listeners when the block chain tip advances.

When multiple blocks are connected at once, UpdatedBlockTip will be called on the final tip but may not be called on every intermediate tip. If the latter behavior is desired, subscribe to BlockConnected() instead.

Called on a background thread.

Reimplemented from CValidationInterface.

Definition at line 2108 of file wallet.cpp.

Here is the call graph for this function:

◆ UpdateTimeFirstKey()

void CWallet::UpdateTimeFirstKey ( int64_t  nCreateTime)

Update wallet first key creation time.

This should be called whenever keys are added to the wallet, with the oldest key creation time.

Definition at line 315 of file wallet.cpp.

Here is the caller graph for this function:

◆ UpdateTimeSmart()

void CWalletTx::UpdateTimeSmart ( )

Update smart timestamp for a transaction being added to the wallet.

Logic:

  • If the transaction is not yet part of a block, assign its timestamp to the current time.
  • Else assign its timestamp to the block time

Definition at line 1554 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Upgrade()

bool CWallet::Upgrade ( std::string &  error,
const int  prevVersion 
)

Upgrade wallet to HD and Sapling if needed.

Does nothing if not.

Definition at line 1824 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function: