Bitcoin
Functions
MapWallet

Functions

std::vector< CKeyIDGetAffectedKeys (const CScript &spk, const SigningProvider &provider)
 
static bool ExtractPubKey (const CScript &dest, CPubKey &pubKeyOut)
 
int64_t CalculateMaximumSignedTxSize (const CTransaction &tx, const CWallet *wallet, bool use_max_sig)
 
int64_t CalculateMaximumSignedTxSize (const CTransaction &tx, const CWallet *wallet, const std::vector< CTxOut > &txouts, bool use_max_sig)
 
int CalculateMaximumSignedInputSize (const CTxOut &txout, const CWallet *wallet, bool use_max_sig)
 
std::string COutput::ToString () const
 
const CWalletTxCWallet::GetWalletTx (const uint256 &hash) const
 
CPubKey CWallet::GenerateNewKey (WalletBatch &batch, bool internal=false) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
void CWallet::DeriveNewChildKey (WalletBatch &batch, CKeyMetadata &metadata, CKey &secret, bool internal=false) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool CWallet::AddKeyPubKeyWithDB (WalletBatch &batch, const CKey &key, const CPubKey &pubkey) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 Adds a key to the store, and saves it to disk. More...
 
bool CWallet::AddKeyPubKey (const CKey &key, const CPubKey &pubkey) override EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 Adds a key to the store, and saves it to disk. More...
 
bool CWallet::AddCryptedKey (const CPubKey &vchPubKey, const std::vector< unsigned char > &vchCryptedSecret)
 Adds an encrypted key to the store, and saves it to disk. More...
 
void CWallet::LoadKeyMetadata (const CKeyID &keyID, const CKeyMetadata &metadata) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 Load metadata (used by LoadWallet) More...
 
void CWallet::LoadScriptMetadata (const CScriptID &script_id, const CKeyMetadata &metadata) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
void CWallet::UpgradeKeyMetadata () EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 Upgrade stored CKeyMetadata objects to store key origin info as KeyOriginInfo. 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) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool CWallet::AddCScript (const CScript &redeemScript) override
 
bool CWallet::AddCScriptWithDB (WalletBatch &batch, const CScript &script)
 Adds a script to the store and saves it to disk. More...
 
bool CWallet::LoadCScript (const CScript &redeemScript)
 
bool CWallet::AddWatchOnlyInMem (const CScript &dest)
 
bool CWallet::AddWatchOnlyWithDB (WalletBatch &batch, const CScript &dest) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool CWallet::AddWatchOnlyWithDB (WalletBatch &batch, const CScript &dest, int64_t create_time) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 Adds a watch-only address to the store, and saves it to disk. More...
 
bool CWallet::AddWatchOnly (const CScript &dest) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool CWallet::AddWatchOnly (const CScript &dest, int64_t nCreateTime) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 Adds a watch-only address to the store, and saves it to disk. More...
 
bool CWallet::RemoveWatchOnly (const CScript &dest) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
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::HaveWatchOnly (const CScript &dest) const
 Returns whether the watch-only script is in the wallet. More...
 
bool CWallet::HaveWatchOnly () const
 Returns whether there are any watch-only things in the wallet. More...
 
bool CWallet::Unlock (const SecureString &strWalletPassphrase, bool accept_no_keys=false)
 
bool CWallet::ChangeWalletPassphrase (const SecureString &strOldWalletPassphrase, const SecureString &strNewWalletPassphrase)
 
void CWallet::ChainStateFlushed (const CBlockLocator &loc) override
 
void 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 EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 Get wallet transactions that conflict with given transaction (spend same outputs) More...
 
bool CWallet::HasWalletSpend (const uint256 &txid) const EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 Check if a given transaction has any of its outputs spent by another transaction in the wallet. More...
 
void CWallet::Flush (bool shutdown=false)
 Flush wallet (bitdb flush) More...
 
void CWallet::SyncMetaData (std::pair< TxSpends::iterator, TxSpends::iterator >) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool CWallet::IsSpent (interfaces::Chain::Lock &locked_chain, const uint256 &hash, unsigned int n) const EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
void CWallet::AddToSpends (const COutPoint &outpoint, const uint256 &wtxid) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
void CWallet::AddToSpends (const uint256 &wtxid) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool CWallet::EncryptWallet (const SecureString &strWalletPassphrase)
 
DBErrors CWallet::ReorderTransactions ()
 
int64_t CWallet::IncOrderPosNext (WalletBatch *batch=nullptr) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
void CWallet::MarkDirty ()
 
bool CWallet::MarkReplaced (const uint256 &originalHash, const uint256 &newHash)
 
void CWallet::SetUsedDestinationState (const uint256 &hash, unsigned int n, bool used)
 
bool CWallet::IsUsedDestination (const CTxDestination &dst) const
 
bool CWallet::IsUsedDestination (const uint256 &hash, unsigned int n) const
 
bool CWallet::AddToWallet (const CWalletTx &wtxIn, bool fFlushOnClose=true)
 
void CWallet::LoadToWallet (const CWalletTx &wtxIn) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool CWallet::AddToWalletIfInvolvingMe (const CTransactionRef &tx, const uint256 &block_hash, int posInBlock, bool fUpdate) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool CWallet::TransactionCanBeAbandoned (const uint256 &hashTx) const
 
void CWallet::MarkInputsDirty (const CTransactionRef &tx) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool CWallet::AbandonTransaction (interfaces::Chain::Lock &locked_chain, const uint256 &hashTx)
 
void CWallet::MarkConflicted (const uint256 &hashBlock, const uint256 &hashTx)
 
void CWallet::SyncTransaction (const CTransactionRef &tx, const uint256 &block_hash, int posInBlock=0, bool update_tx=true) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
void CWallet::TransactionAddedToMempool (const CTransactionRef &tx) override
 
void CWallet::TransactionRemovedFromMempool (const CTransactionRef &ptx) override
 
void CWallet::BlockConnected (const CBlock &block, const std::vector< CTransactionRef > &vtxConflicted) override
 
void CWallet::BlockDisconnected (const CBlock &block) override
 
void CWallet::UpdatedBlockTip () override
 
void CWallet::BlockUntilSyncedToCurrentChain () LOCKS_EXCLUDED(cs_main
 
isminetype CWallet::IsMine (const CTxIn &txin) const
 
CAmount CWallet::GetDebit (const CTxIn &txin, const isminefilter &filter) const
 
isminetype CWallet::IsMine (const CTxOut &txout) const
 
CAmount CWallet::GetCredit (const CTxOut &txout, const isminefilter &filter) const
 
bool CWallet::IsChange (const CTxOut &txout) const
 
bool CWallet::IsChange (const CScript &script) const
 
CAmount CWallet::GetChange (const CTxOut &txout) const
 
bool CWallet::IsMine (const CTransaction &tx) const
 
bool CWallet::IsFromMe (const CTransaction &tx) const
 
CAmount CWallet::GetDebit (const CTransaction &tx, const isminefilter &filter) const
 
bool CWallet::IsAllFromMe (const CTransaction &tx, const isminefilter &filter) const
 
CAmount CWallet::GetCredit (const CTransaction &tx, const isminefilter &filter) const
 
CAmount CWallet::GetChange (const CTransaction &tx) const
 
CPubKey CWallet::GenerateNewSeed ()
 
CPubKey CWallet::DeriveNewSeed (const CKey &key)
 
void CWallet::SetHDSeed (const CPubKey &key)
 
void CWallet::SetHDChain (const CHDChain &chain, bool memonly)
 
bool CWallet::IsHDEnabled () const
 
bool CWallet::CanGenerateKeys ()
 
bool CWallet::CanGetAddresses (bool internal=false)
 
void CWallet::SetWalletFlag (uint64_t flags)
 
void CWallet::UnsetWalletFlag (uint64_t flag)
 
void CWallet::UnsetWalletFlagWithDB (WalletBatch &batch, uint64_t flag)
 Unsets a wallet flag and saves it to disk. More...
 
bool CWallet::IsWalletFlagSet (uint64_t flag) const
 
bool CWallet::SetWalletFlags (uint64_t overwriteFlags, bool memOnly)
 
int64_t CWalletTx::GetTxTime () const
 
bool CWallet::DummySignInput (CTxIn &tx_in, const CTxOut &txout, bool use_max_sig=false) const
 
bool CWallet::DummySignTx (CMutableTransaction &txNew, const std::vector< CTxOut > &txouts, bool use_max_sig=false) const
 
bool CWallet::ImportScripts (const std::set< CScript > scripts) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool CWallet::ImportPrivKeys (const std::map< CKeyID, CKey > &privkey_map, const int64_t timestamp) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool CWallet::ImportPubKeys (const std::vector< CKeyID > &ordered_pubkeys, const std::map< CKeyID, CPubKey > &pubkey_map, const std::map< CKeyID, std::pair< CPubKey, KeyOriginInfo >> &key_origins, const bool add_keypool, const bool internal, const int64_t timestamp) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool CWallet::ImportScriptPubKeys (const std::string &label, const std::set< CScript > &script_pub_keys, const bool have_solving_data, const bool internal, const int64_t timestamp) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
void CWalletTx::GetAmounts (std::list< COutputEntry > &listReceived, std::list< COutputEntry > &listSent, CAmount &nFee, const isminefilter &filter) const
 
int64_t CWallet::RescanFromTime (int64_t startTime, const WalletRescanReserver &reserver, bool update)
 
ScanResult CWallet::ScanForWalletTransactions (const uint256 &first_block, const uint256 &last_block, const WalletRescanReserver &reserver, bool fUpdate)
 
void CWallet::ReacceptWalletTransactions (interfaces::Chain::Lock &locked_chain) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool CWalletTx::RelayWalletTransaction (interfaces::Chain::Lock &locked_chain)
 
std::set< uint256CWalletTx::GetConflicts () const NO_THREAD_SAFETY_ANALYSIS
 
CAmount CWalletTx::GetCachableAmount (AmountType type, const isminefilter &filter, bool recalculate=false) const
 
CAmount CWalletTx::GetDebit (const isminefilter &filter) const
 filter decides which addresses will count towards the debit More...
 
CAmount CWalletTx::GetCredit (interfaces::Chain::Lock &locked_chain, const isminefilter &filter) const
 
CAmount CWalletTx::GetImmatureCredit (interfaces::Chain::Lock &locked_chain, bool fUseCache=true) const
 
CAmount CWalletTx::GetAvailableCredit (interfaces::Chain::Lock &locked_chain, bool fUseCache=true, const isminefilter &filter=ISMINE_SPENDABLE) const NO_THREAD_SAFETY_ANALYSIS
 
CAmount CWalletTx::GetImmatureWatchOnlyCredit (interfaces::Chain::Lock &locked_chain, const bool fUseCache=true) const
 
CAmount CWalletTx::GetChange () const
 
bool CWalletTx::InMempool () const
 
bool CWalletTx::IsTrusted (interfaces::Chain::Lock &locked_chain) const
 
bool CWalletTx::IsEquivalentTo (const CWalletTx &tx) const
 
void CWallet::ResendWalletTransactions ()
 

Detailed Description

Function Documentation

◆ AbandonTransaction()

bool CWallet::AbandonTransaction ( interfaces::Chain::Lock locked_chain,
const uint256 hashTx 
)

◆ AddCryptedKey()

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

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

◆ AddCScript()

bool CWallet::AddCScript ( const CScript redeemScript)
overridevirtual

Reimplemented from FillableSigningProvider.

◆ AddCScriptWithDB()

bool CWallet::AddCScriptWithDB ( WalletBatch batch,
const CScript script 
)
private

Adds a script to the store and saves it to disk.

◆ AddKeyPubKey()

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

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

Reimplemented from FillableSigningProvider.

◆ AddKeyPubKeyWithDB()

bool CWallet::AddKeyPubKeyWithDB ( WalletBatch batch,
const CKey key,
const CPubKey pubkey 
)
private

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

◆ AddToSpends() [1/2]

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

◆ AddToSpends() [2/2]

void CWallet::AddToSpends ( const uint256 wtxid)
private

◆ AddToWallet()

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

◆ AddToWalletIfInvolvingMe()

bool CWallet::AddToWalletIfInvolvingMe ( const CTransactionRef tx,
const uint256 block_hash,
int  posInBlock,
bool  fUpdate 
)
private

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.

◆ AddWatchOnly() [1/2]

bool CWallet::AddWatchOnly ( const CScript dest)
private

Private version of AddWatchOnly method which does not accept a timestamp, and which will reset the wallet's nTimeFirstKey value to 1 if the watch key did not previously have a timestamp associated with it. Because this is an inherited virtual method, it is accessible despite being marked private, but it is marked private anyway to encourage use of the other AddWatchOnly which accepts a timestamp and sets nTimeFirstKey more intelligently for more efficient rescans.

◆ AddWatchOnly() [2/2]

bool CWallet::AddWatchOnly ( const CScript dest,
int64_t  nCreateTime 
)

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

◆ AddWatchOnlyInMem()

bool CWallet::AddWatchOnlyInMem ( const CScript dest)
private

◆ AddWatchOnlyWithDB() [1/2]

bool CWallet::AddWatchOnlyWithDB ( WalletBatch batch,
const CScript dest 
)
private

◆ AddWatchOnlyWithDB() [2/2]

bool CWallet::AddWatchOnlyWithDB ( WalletBatch batch,
const CScript dest,
int64_t  create_time 
)
private

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

◆ BlockConnected()

void CWallet::BlockConnected ( const CBlock block,
const std::vector< CTransactionRef > &  vtxConflicted 
)
overridevirtual

Reimplemented from interfaces::Chain::Notifications.

◆ BlockDisconnected()

void CWallet::BlockDisconnected ( const CBlock block)
overridevirtual

Reimplemented from interfaces::Chain::Notifications.

◆ 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

◆ CalculateMaximumSignedInputSize()

int CalculateMaximumSignedInputSize ( const CTxOut txout,
const CWallet wallet,
bool  use_max_sig 
)

◆ CalculateMaximumSignedTxSize() [1/2]

int64_t CalculateMaximumSignedTxSize ( const CTransaction tx,
const CWallet wallet,
bool  use_max_sig 
)

◆ CalculateMaximumSignedTxSize() [2/2]

int64_t CalculateMaximumSignedTxSize ( const CTransaction tx,
const CWallet wallet,
const std::vector< CTxOut > &  txouts,
bool  use_max_sig 
)

◆ CanGenerateKeys()

bool CWallet::CanGenerateKeys ( )

◆ CanGetAddresses()

bool CWallet::CanGetAddresses ( bool  internal = false)

◆ ChainStateFlushed()

void CWallet::ChainStateFlushed ( const CBlockLocator loc)
overridevirtual

Reimplemented from interfaces::Chain::Notifications.

◆ ChangeWalletPassphrase()

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

◆ DeriveNewChildKey()

void CWallet::DeriveNewChildKey ( WalletBatch batch,
CKeyMetadata metadata,
CKey secret,
bool  internal = false 
)
private

◆ DeriveNewSeed()

CPubKey CWallet::DeriveNewSeed ( const CKey key)

◆ DummySignInput()

bool CWallet::DummySignInput ( CTxIn tx_in,
const CTxOut txout,
bool  use_max_sig = false 
) const

◆ DummySignTx()

bool CWallet::DummySignTx ( CMutableTransaction txNew,
const std::vector< CTxOut > &  txouts,
bool  use_max_sig = false 
) const

◆ EncryptWallet()

bool CWallet::EncryptWallet ( const SecureString strWalletPassphrase)

◆ ExtractPubKey()

static bool ExtractPubKey ( const CScript dest,
CPubKey pubKeyOut 
)
static

◆ Flush()

void CWallet::Flush ( bool  shutdown = false)

Flush wallet (bitdb flush)

◆ GenerateNewKey()

CPubKey CWallet::GenerateNewKey ( WalletBatch batch,
bool  internal = false 
)

keystore implementation Generate a new key

◆ GenerateNewSeed()

CPubKey CWallet::GenerateNewSeed ( )

◆ GetAffectedKeys()

std::vector<CKeyID> GetAffectedKeys ( const CScript spk,
const SigningProvider provider 
)

◆ GetAmounts()

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

◆ GetAvailableCredit()

CAmount CWalletTx::GetAvailableCredit ( interfaces::Chain::Lock locked_chain,
bool  fUseCache = true,
const isminefilter filter = ISMINE_SPENDABLE 
) const

◆ GetCachableAmount()

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

◆ GetChange() [1/3]

CAmount CWalletTx::GetChange ( ) const

◆ GetChange() [2/3]

CAmount CWallet::GetChange ( const CTxOut txout) const

◆ GetChange() [3/3]

CAmount CWallet::GetChange ( const CTransaction tx) const

◆ GetConflicts() [1/2]

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

◆ GetConflicts() [2/2]

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

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

◆ GetCredit() [1/3]

CAmount CWalletTx::GetCredit ( interfaces::Chain::Lock locked_chain,
const isminefilter filter 
) const

◆ GetCredit() [2/3]

CAmount CWallet::GetCredit ( const CTxOut txout,
const isminefilter filter 
) const

◆ GetCredit() [3/3]

CAmount CWallet::GetCredit ( const CTransaction tx,
const isminefilter filter 
) const

◆ GetDebit() [1/3]

CAmount CWalletTx::GetDebit ( const isminefilter filter) const

filter decides which addresses will count towards the debit

◆ GetDebit() [2/3]

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

Returns amount of debit if the input matches the filter, otherwise returns 0

◆ GetDebit() [3/3]

CAmount CWallet::GetDebit ( const CTransaction tx,
const isminefilter filter 
) const

◆ GetImmatureCredit()

CAmount CWalletTx::GetImmatureCredit ( interfaces::Chain::Lock locked_chain,
bool  fUseCache = true 
) const

◆ GetImmatureWatchOnlyCredit()

CAmount CWalletTx::GetImmatureWatchOnlyCredit ( interfaces::Chain::Lock locked_chain,
const bool  fUseCache = true 
) const

◆ GetTxTime()

int64_t CWalletTx::GetTxTime ( ) const

◆ GetWalletTx()

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

◆ HasWalletSpend()

bool CWallet::HasWalletSpend ( const uint256 txid) const

Check if a given transaction has any of its outputs spent by another transaction in the wallet.

◆ HaveWatchOnly() [1/2]

bool CWallet::HaveWatchOnly ( const CScript dest) const

Returns whether the watch-only script is in the wallet.

◆ HaveWatchOnly() [2/2]

bool CWallet::HaveWatchOnly ( ) const

Returns whether there are any watch-only things in the wallet.

◆ ImportPrivKeys()

bool CWallet::ImportPrivKeys ( const std::map< CKeyID, CKey > &  privkey_map,
const int64_t  timestamp 
)

◆ ImportPubKeys()

bool CWallet::ImportPubKeys ( const std::vector< CKeyID > &  ordered_pubkeys,
const std::map< CKeyID, CPubKey > &  pubkey_map,
const std::map< CKeyID, std::pair< CPubKey, KeyOriginInfo >> &  key_origins,
const bool  add_keypool,
const bool  internal,
const int64_t  timestamp 
)

◆ ImportScriptPubKeys()

bool CWallet::ImportScriptPubKeys ( const std::string &  label,
const std::set< CScript > &  script_pub_keys,
const bool  have_solving_data,
const bool  internal,
const int64_t  timestamp 
)

◆ ImportScripts()

bool CWallet::ImportScripts ( const std::set< CScript scripts)

◆ IncOrderPosNext()

int64_t CWallet::IncOrderPosNext ( WalletBatch batch = nullptr)

Increment the next transaction order id

Returns
next transaction order id

◆ InMempool()

bool CWalletTx::InMempool ( ) const

◆ IsAllFromMe()

bool CWallet::IsAllFromMe ( const CTransaction tx,
const isminefilter filter 
) const

Returns whether all of the inputs match the filter

◆ IsChange() [1/2]

bool CWallet::IsChange ( const CTxOut txout) const

◆ IsChange() [2/2]

bool CWallet::IsChange ( const CScript script) const

◆ IsEquivalentTo()

bool CWalletTx::IsEquivalentTo ( const CWalletTx tx) const

◆ IsFromMe()

bool CWallet::IsFromMe ( const CTransaction tx) const

should probably be renamed to IsRelevantToMe

◆ IsHDEnabled()

bool CWallet::IsHDEnabled ( ) const

◆ IsMine() [1/3]

isminetype CWallet::IsMine ( const CTxIn txin) const

◆ IsMine() [2/3]

isminetype CWallet::IsMine ( const CTxOut txout) const

◆ IsMine() [3/3]

bool CWallet::IsMine ( const CTransaction tx) const

◆ IsSpent()

bool CWallet::IsSpent ( interfaces::Chain::Lock locked_chain,
const uint256 hash,
unsigned int  n 
) const

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

◆ IsTrusted()

bool CWalletTx::IsTrusted ( interfaces::Chain::Lock locked_chain) const

◆ IsUsedDestination() [1/2]

bool CWallet::IsUsedDestination ( const CTxDestination dst) const

◆ IsUsedDestination() [2/2]

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

◆ IsWalletFlagSet()

bool CWallet::IsWalletFlagSet ( uint64_t  flag) const

check if a certain wallet flag is set

◆ 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)

◆ LoadCScript()

bool CWallet::LoadCScript ( const CScript redeemScript)

◆ LoadKeyMetadata()

void CWallet::LoadKeyMetadata ( const CKeyID keyID,
const CKeyMetadata metadata 
)

Load metadata (used by LoadWallet)

◆ LoadScriptMetadata()

void CWallet::LoadScriptMetadata ( const CScriptID script_id,
const CKeyMetadata metadata 
)

◆ LoadToWallet()

void CWallet::LoadToWallet ( const CWalletTx wtxIn)

◆ LoadWatchOnly()

bool CWallet::LoadWatchOnly ( const CScript dest)

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

◆ MarkConflicted()

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

◆ MarkDirty()

void CWallet::MarkDirty ( )

◆ MarkInputsDirty()

void CWallet::MarkInputsDirty ( const CTransactionRef tx)
private

◆ MarkReplaced()

bool CWallet::MarkReplaced ( const uint256 originalHash,
const uint256 newHash 
)

Mark a transaction as replaced by another transaction (e.g., BIP 125).

◆ ReacceptWalletTransactions()

void CWallet::ReacceptWalletTransactions ( interfaces::Chain::Lock locked_chain)

◆ RelayWalletTransaction()

bool CWalletTx::RelayWalletTransaction ( interfaces::Chain::Lock locked_chain)

◆ RemoveWatchOnly()

bool CWallet::RemoveWatchOnly ( const CScript dest)

◆ ReorderTransactions()

DBErrors CWallet::ReorderTransactions ( )

◆ 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.

◆ ResendWalletTransactions()

void CWallet::ResendWalletTransactions ( )

◆ ScanForWalletTransactions()

CWallet::ScanResult CWallet::ScanForWalletTransactions ( const uint256 start_block,
const uint256 stop_block,
const WalletRescanReserver reserver,
bool  fUpdate 
)

Scan the block chain (starting in start_block) for transactions from or to us. If fUpdate is true, found transactions that already exist in the wallet will be updated.

Parameters
[in]start_blockScan starting block. If block is not on the active chain, the scan will return SUCCESS immediately.
[in]stop_blockScan ending block. If block is not on the active chain, the scan will continue until it reaches the chain tip.
Returns
ScanResult returning scan information and indicating success or failure. Return status will be set to SUCCESS if scan was successful. FAILURE if a complete rescan was not possible (due to pruning or corruption). USER_ABORT if the rescan was aborted before it could complete.
Precondition
Caller needs to make sure start_block (and the optional stop_block) are on the main chain after to the addition of any new keys you want to detect transactions for.

◆ SetHDChain()

void CWallet::SetHDChain ( const CHDChain chain,
bool  memonly 
)

◆ SetHDSeed()

void CWallet::SetHDSeed ( const CPubKey key)

◆ 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)

◆ SetMinVersion()

void 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

◆ SetUsedDestinationState()

void CWallet::SetUsedDestinationState ( const uint256 hash,
unsigned int  n,
bool  used 
)

◆ SetWalletFlag()

void CWallet::SetWalletFlag ( uint64_t  flags)

set a single wallet flag

◆ SetWalletFlags()

bool CWallet::SetWalletFlags ( uint64_t  overwriteFlags,
bool  memOnly 
)

overwrite all flags by the given uint64_t returns false if unknown, non-tolerable flags are present

◆ SyncMetaData()

void CWallet::SyncMetaData ( std::pair< TxSpends::iterator, TxSpends::iterator >  range)
private

◆ SyncTransaction()

void CWallet::SyncTransaction ( const CTransactionRef tx,
const uint256 block_hash,
int  posInBlock = 0,
bool  update_tx = true 
)
private

◆ ToString()

std::string COutput::ToString ( ) const

◆ TransactionAddedToMempool()

void CWallet::TransactionAddedToMempool ( const CTransactionRef tx)
overridevirtual

Reimplemented from interfaces::Chain::Notifications.

◆ TransactionCanBeAbandoned()

bool CWallet::TransactionCanBeAbandoned ( const uint256 hashTx) const

Return whether transaction can be abandoned

◆ TransactionRemovedFromMempool()

void CWallet::TransactionRemovedFromMempool ( const CTransactionRef ptx)
overridevirtual

Reimplemented from interfaces::Chain::Notifications.

◆ Unlock()

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

◆ UnsetWalletFlag()

void CWallet::UnsetWalletFlag ( uint64_t  flag)

Unsets a single wallet flag

◆ UnsetWalletFlagWithDB()

void CWallet::UnsetWalletFlagWithDB ( WalletBatch batch,
uint64_t  flag 
)
private

Unsets a wallet flag and saves it to disk.

◆ UpdatedBlockTip()

void CWallet::UpdatedBlockTip ( )
overridevirtual

Reimplemented from interfaces::Chain::Notifications.

◆ 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.

◆ UpgradeKeyMetadata()

void CWallet::UpgradeKeyMetadata ( )

Upgrade stored CKeyMetadata objects to store key origin info as KeyOriginInfo.