kernel

Kernel library components for validating blocks and maintaining chain state.

Types

NameDescription
BlockManagerOpts An options struct for BlockManager, more ergonomically referred to as BlockManager::Options due to the using-declaration in BlockManager.
BlockTreeDB Access to the block database (blocks/index/)
CBlockFileInfo On-disk statistics describing the contents of one block file.
CCoinsStats Aggregate statistics computed over the UTXO set.
CacheSizes Byte budgets for the validation caches, derived from a single total.
ChainstateManagerOpts An options struct for ChainstateManager, more ergonomically referred to as ChainstateManager::Options due to the using-declaration in ChainstateManager.
ChainstateRole Identifies which chainstate (active or background) a notification refers to.
Context Process-wide context owning the libbitcoin_kernel global state.
Interrupted Result type for use with std::variant to indicate that an operation should be interrupted.
MemPoolLimits Options struct containing limit options for a CTxMemPool. Default constructor populates the struct with sane default values which can be modified.
MemPoolOptions Tunable options controlling memory-pool acceptance and limits.
Notifications A base class defining functions for notifying about certain kernel events.

Type Aliases

NameDescription
InterruptResult Simple result type for functions that need to propagate an interrupt status and don't have other return values.

Enums

NameDescription
CoinStatsHashType Selects the hashing scheme used to summarize the UTXO set.
Warning Categories of node warning raised by the validation kernel.

Functions

NameDescription
ApplyCoinHash Folds a coin into the running MuHash of the UTXO set.
ComputeUTXOStats Computes aggregate statistics over the UTXO set.
GetBogoSize Computes the serialization-agnostic size measure of an output script.
IsInterrupted Tests whether a variant result holds the Interrupted alternative.
MakeBlockInfo Builds block metadata from a block index entry.
RemoveCoinHash Removes a coin from the running MuHash of the UTXO set.
SanityChecks Ensure a usable environment with all necessary library support.
operator<< Writes a human-readable form of a chainstate role to a stream.

Variables

NameDescription
DEFAULT_XOR_BLOCKSDIR Default for whether block files are obfuscated (XOR-ed) on disk.