Bitcoin ABC  0.29.2
P2P Digital Currency
Public Member Functions | List of all members
CCoinsView Class Reference

Abstract view on the open txout dataset. More...

#include <coins.h>

Inheritance diagram for CCoinsView:
[legend]

Public Member Functions

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

Detailed Description

Abstract view on the open txout dataset.

Definition at line 147 of file coins.h.

Constructor & Destructor Documentation

◆ ~CCoinsView()

virtual CCoinsView::~CCoinsView ( )
inlinevirtual

As we use CCoinsViews polymorphically, have a virtual destructor.

Definition at line 177 of file coins.h.

Member Function Documentation

◆ BatchWrite()

bool CCoinsView::BatchWrite ( CCoinsMap mapCoins,
const BlockHash hashBlock 
)
virtual

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

The passed mapCoins can be modified.

Reimplemented in CCoinsViewDB, CCoinsViewCache, and CCoinsViewBacked.

Definition at line 22 of file coins.cpp.

Here is the caller graph for this function:

◆ Cursor()

CCoinsViewCursor * CCoinsView::Cursor ( ) const
virtual

Get a cursor to iterate over the whole state.

Reimplemented in CCoinsViewDB, CCoinsViewCache, and CCoinsViewBacked.

Definition at line 25 of file coins.cpp.

Here is the caller graph for this function:

◆ EstimateSize()

virtual size_t CCoinsView::EstimateSize ( ) const
inlinevirtual

Estimate database size (0 if not implemented)

Reimplemented in CCoinsViewDB, and CCoinsViewBacked.

Definition at line 180 of file coins.h.

Here is the caller graph for this function:

◆ GetBestBlock()

BlockHash CCoinsView::GetBestBlock ( ) const
virtual

Retrieve the block hash whose state this CCoinsView currently represents.

Reimplemented in CCoinsViewDB, CCoinsViewCache, and CCoinsViewBacked.

Definition at line 16 of file coins.cpp.

Here is the caller graph for this function:

◆ GetCoin()

bool CCoinsView::GetCoin ( const COutPoint outpoint,
Coin coin 
) const
virtual

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 in CCoinsViewMemPool, CCoinsViewDB, CCoinsViewErrorCatcher, CCoinsViewCache, and CCoinsViewBacked.

Definition at line 13 of file coins.cpp.

Here is the caller graph for this function:

◆ GetHeadBlocks()

std::vector< BlockHash > CCoinsView::GetHeadBlocks ( ) const
virtual

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 in CCoinsViewDB, and CCoinsViewBacked.

Definition at line 19 of file coins.cpp.

Here is the caller graph for this function:

◆ HaveCoin()

bool CCoinsView::HaveCoin ( const COutPoint outpoint) const
virtual

Just check whether a given outpoint is unspent.

Reimplemented in CCoinsViewDB, CCoinsViewCache, and CCoinsViewBacked.

Definition at line 28 of file coins.cpp.

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

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