Add CCoinsViewCache::HaveCoinsInCache to check if a tx is cached
This commit is contained in:
parent
677aa3d88c
commit
97bf377bd1
2 changed files with 12 additions and 0 deletions
|
@ -144,6 +144,11 @@ bool CCoinsViewCache::HaveCoins(const uint256 &txid) const {
|
||||||
return (it != cacheCoins.end() && !it->second.coins.vout.empty());
|
return (it != cacheCoins.end() && !it->second.coins.vout.empty());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool CCoinsViewCache::HaveCoinsInCache(const uint256 &txid) const {
|
||||||
|
CCoinsMap::const_iterator it = cacheCoins.find(txid);
|
||||||
|
return it != cacheCoins.end();
|
||||||
|
}
|
||||||
|
|
||||||
uint256 CCoinsViewCache::GetBestBlock() const {
|
uint256 CCoinsViewCache::GetBestBlock() const {
|
||||||
if (hashBlock.IsNull())
|
if (hashBlock.IsNull())
|
||||||
hashBlock = base->GetBestBlock();
|
hashBlock = base->GetBestBlock();
|
||||||
|
|
|
@ -405,6 +405,13 @@ public:
|
||||||
void SetBestBlock(const uint256 &hashBlock);
|
void SetBestBlock(const uint256 &hashBlock);
|
||||||
bool BatchWrite(CCoinsMap &mapCoins, const uint256 &hashBlock);
|
bool BatchWrite(CCoinsMap &mapCoins, const uint256 &hashBlock);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check if we have the given tx already loaded in this cache.
|
||||||
|
* The semantics are the same as HaveCoins(), but no calls to
|
||||||
|
* the backing CCoinsView are made.
|
||||||
|
*/
|
||||||
|
bool HaveCoinsInCache(const uint256 &txid) const;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return a pointer to CCoins in the cache, or NULL if not found. This is
|
* Return a pointer to CCoins in the cache, or NULL if not found. This is
|
||||||
* more efficient than GetCoins. Modifications to other cache entries are
|
* more efficient than GetCoins. Modifications to other cache entries are
|
||||||
|
|
Loading…
Reference in a new issue