Bitcoin Core 28.99.0
P2P Digital Currency
Public Member Functions | List of all members
DummyChainState Class Referencefinal

#include <mempool.h>

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

Public Member Functions

void SetMempool (CTxMemPool *mempool)
 
- Public Member Functions inherited from Chainstate
 Chainstate (CTxMemPool *mempool, node::BlockManager &blockman, ChainstateManager &chainman, std::optional< uint256 > from_snapshot_blockhash=std::nullopt)
 
ChainstateRole GetRole() const EXCLUSIVE_LOCKS_REQUIRED(void InitCoinsDB (size_t cache_size_bytes, bool in_memory, bool should_wipe, fs::path leveldb_name="chainstate")
 Return the current role of the chainstate. More...
 
void InitCoinsCache(size_t cache_size_bytes) EXCLUSIVE_LOCKS_REQUIRED(bool CanFlushToDisk () const EXCLUSIVE_LOCKS_REQUIRED(
 Initialize the in-memory coins cache (to be done after the health of the on-disk database is verified). More...
 
CCoinsViewCacheCoinsTip () EXCLUSIVE_LOCKS_REQUIRED(
 
CCoinsViewDBCoinsDB () EXCLUSIVE_LOCKS_REQUIRED(
 
CTxMemPoolGetMempool ()
 
CCoinsViewErrorCatcherCoinsErrorCatcher () EXCLUSIVE_LOCKS_REQUIRED(
 
void ResetCoinsViews ()
 Destructs all objects related to accessing the UTXO set. More...
 
bool HasCoinsViews () const
 Does this chainstate have a UTXO set attached? More...
 
bool ResizeCoinsCaches(size_t coinstip_size, size_t coinsdb_size) EXCLUSIVE_LOCKS_REQUIRED(bool FlushStateToDisk (BlockValidationState &state, FlushStateMode mode, int nManualPruneHeight=0)
 Resize the CoinsViews caches dynamically and flush state to disk. More...
 
void ForceFlushStateToDisk ()
 Unconditionally flush all changes to disk. More...
 
void PruneAndFlush ()
 Prune blockfiles from the disk if necessary and then flush chainstate changes if we pruned. More...
 
bool DisconnectTip (BlockValidationState &state, DisconnectedBlockTransactions *disconnectpool) EXCLUSIVE_LOCKS_REQUIRED(cs_main
 Disconnect m_chain's tip. More...
 
bool ReplayBlocks ()
 Replay blocks that aren't fully applied to the database. More...
 
bool NeedsRedownload () const EXCLUSIVE_LOCKS_REQUIRED(cs_main)
 Whether the chain state needs to be redownloaded due to lack of witness data. More...
 
bool LoadGenesisBlock ()
 Ensures we have a genesis block in the block tree, possibly writing one to disk. More...
 
void TryAddBlockIndexCandidate (CBlockIndex *pindex) EXCLUSIVE_LOCKS_REQUIRED(cs_main)
 
void PruneBlockIndexCandidates ()
 Delete all entries in setBlockIndexCandidates that are worse than the current tip. More...
 
void ClearBlockIndexCandidates() EXCLUSIVE_LOCKS_REQUIRED(const CBlockIndexFindForkInGlobalIndex (const CBlockLocator &locator) const EXCLUSIVE_LOCKS_REQUIRED(cs_main)
 Find the last common block of this chain and a locator. More...
 
bool LoadChainTip () EXCLUSIVE_LOCKS_REQUIRED(cs_main)
 Update the chain tip based on database information, i.e. More...
 
CoinsCacheSizeState GetCoinsCacheSizeState() EXCLUSIVE_LOCKS_REQUIRED(CoinsCacheSizeState GetCoinsCacheSizeState(size_t max_coins_cache_size_bytes, size_t max_mempool_size_bytes) EXCLUSIVE_LOCKS_REQUIRED(std::string ToString() EXCLUSIVE_LOCKS_REQUIRED(RecursiveMutexMempoolMutex () const LOCK_RETURNED(m_mempool -> cs)
 Dictates whether we need to flush the cache to disk or not. More...
 

Additional Inherited Members

- Public Attributes inherited from Chainstate
node::BlockManagerm_blockman
 Reference to a BlockManager instance which itself is shared across all Chainstate instances. More...
 
ChainstateManagerm_chainman
 The chainstate manager that owns this chainstate. More...
 
CChain m_chain
 The current chain of blockheaders we consult and build on. More...
 
const std::optional< uint256m_from_snapshot_blockhash
 The blockhash which is the base of the snapshot this chainstate was created from. More...
 
const CBlockIndex *SnapshotBase() EXCLUSIVE_LOCKS_REQUIRED(std::set< CBlockIndex *, node::CBlockIndexWorkComparatorsetBlockIndexCandidates
 The base of the snapshot this chainstate was created from. More...
 
size_t m_coinsdb_cache_size_bytes {0}
 The cache size of the on-disk coins view. More...
 
size_t m_coinstip_cache_size_bytes {0}
 The cache size of the in-memory coins view. More...
 
bool ActivateBestChain(BlockValidationState &state, std::shared_ptr< const CBlock > pblock=nullptr) LOCKS_EXCLUDED(DisconnectResult DisconnectBlock(const CBlock &block, const CBlockIndex *pindex, CCoinsViewCache &view) EXCLUSIVE_LOCKS_REQUIRED(boo ConnectBlock )(const CBlock &block, BlockValidationState &state, CBlockIndex *pindex, CCoinsViewCache &view, bool fJustCheck=false) EXCLUSIVE_LOCKS_REQUIRED(cs_main)
 Find the best known block, and make it the tip of the block chain. More...
 
bool m_mempool cs
 
bool PreciousBlock(BlockValidationState &state, CBlockIndex *pindex) LOCKS_EXCLUDED(bool InvalidateBlock(BlockValidationState &state, CBlockIndex *pindex) LOCKS_EXCLUDED(void SetBlockFailureFlags(CBlockIndex *pindex) EXCLUSIVE_LOCKS_REQUIRED(voi ResetBlockFailureFlags )(CBlockIndex *pindex) EXCLUSIVE_LOCKS_REQUIRED(cs_main)
 Mark a block as precious and reorganize. More...
 
- Protected Member Functions inherited from Chainstate
bool m_disabled GUARDED_BY (::cs_main)
 This toggle exists for use when doing background validation for UTXO snapshots. More...
 
const CBlockIndex *m_cached_snapshot_base GUARDED_BY (::cs_main)
 Cached result of LookupBlockIndex(*m_from_snapshot_blockhash) More...
 
- Protected Attributes inherited from Chainstate
Mutex m_chainstate_mutex
 The ChainState Mutex A lock that must be held when modifying this ChainState - held in ActivateBestChain() and InvalidateBlock() More...
 
CTxMemPoolm_mempool
 Optional mempool that is kept in sync with the chain. More...
 
std::unique_ptr< CoinsViewsm_coins_views
 Manages the UTXO set, which is a reflection of the contents of m_chain. More...
 

Detailed Description

Definition at line 15 of file mempool.h.

Member Function Documentation

◆ SetMempool()

void DummyChainState::SetMempool ( CTxMemPool mempool)
inline

Definition at line 18 of file mempool.h.

Here is the caller graph for this function:

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