Bitcoin ABC 0.30.3
P2P Digital Currency
Public Member Functions | Protected Attributes | List of all members
CCoinsViewBacked Class Reference

CCoinsView backed by another CCoinsView. More...

#include <coins.h>

Inheritance diagram for CCoinsViewBacked:
[legend]
Collaboration diagram for CCoinsViewBacked:
[legend]

Public Member Functions

 CCoinsViewBacked (CCoinsView *viewIn)
 
bool GetCoin (const COutPoint &outpoint, Coin &coin) const override
 Retrieve the Coin (unspent transaction output) for a given outpoint. More...
 
bool HaveCoin (const COutPoint &outpoint) const override
 Just check whether a given outpoint is unspent. More...
 
BlockHash GetBestBlock () const override
 Retrieve the block hash whose state this CCoinsView currently represents. More...
 
std::vector< BlockHashGetHeadBlocks () const override
 Retrieve the range of blocks that may have been only partially written. More...
 
void SetBackend (CCoinsView &viewIn)
 
bool BatchWrite (CCoinsMap &mapCoins, const BlockHash &hashBlock, bool erase=true) override
 Do a bulk modification (multiple Coin changes + BestBlock change). More...
 
CCoinsViewCursorCursor () const override
 Get a cursor to iterate over the whole state. More...
 
size_t EstimateSize () const override
 Estimate database size (0 if not implemented) More...
 
- Public Member Functions inherited from CCoinsView
virtual bool GetCoin (const COutPoint &outpoint, Coin &coin) const
 Retrieve the Coin (unspent transaction output) for a given outpoint. More...
 
virtual bool HaveCoin (const COutPoint &outpoint) const
 Just check whether a given outpoint is unspent. More...
 
virtual BlockHash GetBestBlock () const
 Retrieve the block hash whose state this CCoinsView currently represents. More...
 
virtual std::vector< BlockHashGetHeadBlocks () const
 Retrieve the range of blocks that may have been only partially written. More...
 
virtual bool BatchWrite (CCoinsMap &mapCoins, const BlockHash &hashBlock, bool erase=true)
 Do a bulk modification (multiple Coin changes + BestBlock change). More...
 
virtual CCoinsViewCursorCursor () const
 Get a cursor to iterate over the whole state. More...
 
virtual ~CCoinsView ()
 As we use CCoinsViews polymorphically, have a virtual destructor. More...
 
virtual size_t EstimateSize () const
 Estimate database size (0 if not implemented) More...
 

Protected Attributes

CCoinsViewbase
 

Detailed Description

CCoinsView backed by another CCoinsView.

Definition at line 201 of file coins.h.

Constructor & Destructor Documentation

◆ CCoinsViewBacked()

CCoinsViewBacked::CCoinsViewBacked ( CCoinsView viewIn)

Definition at line 34 of file coins.cpp.

Member Function Documentation

◆ BatchWrite()

bool CCoinsViewBacked::BatchWrite ( CCoinsMap mapCoins,
const BlockHash hashBlock,
bool  erase = true 
)
overridevirtual

Do a bulk modification (multiple Coin changes + BestBlock change).

The passed mapCoins can be modified.

Reimplemented from CCoinsView.

Reimplemented in CCoinsViewCache.

Definition at line 50 of file coins.cpp.

Here is the call graph for this function:

◆ Cursor()

CCoinsViewCursor * CCoinsViewBacked::Cursor ( ) const
overridevirtual

Get a cursor to iterate over the whole state.

Reimplemented from CCoinsView.

Reimplemented in CCoinsViewCache.

Definition at line 54 of file coins.cpp.

Here is the call graph for this function:

◆ EstimateSize()

size_t CCoinsViewBacked::EstimateSize ( ) const
overridevirtual

Estimate database size (0 if not implemented)

Reimplemented from CCoinsView.

Definition at line 57 of file coins.cpp.

Here is the call graph for this function:

◆ GetBestBlock()

BlockHash CCoinsViewBacked::GetBestBlock ( ) const
overridevirtual

Retrieve the block hash whose state this CCoinsView currently represents.

Reimplemented from CCoinsView.

Reimplemented in CCoinsViewCache.

Definition at line 41 of file coins.cpp.

Here is the call graph for this function:

◆ GetCoin()

bool CCoinsViewBacked::GetCoin ( const COutPoint outpoint,
Coin coin 
) const
overridevirtual

Retrieve the Coin (unspent transaction output) for a given outpoint.

Returns true only when an unspent coin was found, which is returned in coin. When false is returned, coin's value is unspecified.

Reimplemented from CCoinsView.

Reimplemented in CCoinsViewCache, CCoinsViewErrorCatcher, and CCoinsViewMemPool.

Definition at line 35 of file coins.cpp.

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

◆ GetHeadBlocks()

std::vector< BlockHash > CCoinsViewBacked::GetHeadBlocks ( ) const
overridevirtual

Retrieve the range of blocks that may have been only partially written.

If the database is in a consistent state, the result is the empty vector. Otherwise, a two-element vector is returned consisting of the new and the old block hash, in that order.

Reimplemented from CCoinsView.

Definition at line 44 of file coins.cpp.

Here is the call graph for this function:

◆ HaveCoin()

bool CCoinsViewBacked::HaveCoin ( const COutPoint outpoint) const
overridevirtual

Just check whether a given outpoint is unspent.

Reimplemented from CCoinsView.

Reimplemented in CCoinsViewCache.

Definition at line 38 of file coins.cpp.

Here is the call graph for this function:

◆ SetBackend()

void CCoinsViewBacked::SetBackend ( CCoinsView viewIn)

Definition at line 47 of file coins.cpp.

Here is the caller graph for this function:

Member Data Documentation

◆ base

CCoinsView* CCoinsViewBacked::base
protected

Definition at line 203 of file coins.h.


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