Bitcoin Core  27.99.0
P2P Digital Currency
Namespaces | Functions | Variables
blockchain.h File Reference
#include <consensus/amount.h>
#include <core_io.h>
#include <streams.h>
#include <sync.h>
#include <util/fs.h>
#include <validation.h>
#include <any>
#include <stdint.h>
#include <vector>
Include dependency graph for blockchain.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 node
 

Functions

double GetDifficulty (const CBlockIndex &blockindex)
 Get the difficulty of the net wrt to the given block index. More...
 
void RPCNotifyBlockChange (const CBlockIndex *)
 Callback for when block tip changed. More...
 
UniValue blockToJSON (node::BlockManager &blockman, const CBlock &block, const CBlockIndex &tip, const CBlockIndex &blockindex, TxVerbosity verbosity) LOCKS_EXCLUDED(cs_main)
 Block description to JSON. More...
 
UniValue blockheaderToJSON (const CBlockIndex &tip, const CBlockIndex &blockindex) LOCKS_EXCLUDED(cs_main)
 Block header to JSON. More...
 
void CalculatePercentilesByWeight (CAmount result[NUM_GETBLOCKSTATS_PERCENTILES], std::vector< std::pair< CAmount, int64_t >> &scores, int64_t total_weight)
 Used by getblockstats to get feerates at different percentiles by weight
More...
 
UniValue CreateUTXOSnapshot (node::NodeContext &node, Chainstate &chainstate, AutoFile &afile, const fs::path &path, const fs::path &tmppath)
 Helper to create UTXO snapshots given a chainstate and a file handle. More...
 

Variables

static constexpr int NUM_GETBLOCKSTATS_PERCENTILES = 5
 

Function Documentation

◆ blockheaderToJSON()

UniValue blockheaderToJSON ( const CBlockIndex tip,
const CBlockIndex blockindex 
)

Block header to JSON.

Definition at line 135 of file blockchain.cpp.

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

◆ blockToJSON()

UniValue blockToJSON ( node::BlockManager blockman,
const CBlock block,
const CBlockIndex tip,
const CBlockIndex blockindex,
TxVerbosity  verbosity 
)

Block description to JSON.

Definition at line 164 of file blockchain.cpp.

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

◆ CalculatePercentilesByWeight()

void CalculatePercentilesByWeight ( CAmount  result[NUM_GETBLOCKSTATS_PERCENTILES],
std::vector< std::pair< CAmount, int64_t >> &  scores,
int64_t  total_weight 
)

Used by getblockstats to get feerates at different percentiles by weight

Definition at line 1720 of file blockchain.cpp.

Here is the caller graph for this function:

◆ CreateUTXOSnapshot()

UniValue CreateUTXOSnapshot ( node::NodeContext node,
Chainstate chainstate,
AutoFile afile,
const fs::path path,
const fs::path tmppath 
)

Helper to create UTXO snapshots given a chainstate and a file handle.

Returns
a UniValue map containing metadata about the snapshot.

Definition at line 2651 of file blockchain.cpp.

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

◆ GetDifficulty()

double GetDifficulty ( const CBlockIndex blockindex)

Get the difficulty of the net wrt to the given block index.

Returns
A floating point number that is a multiple of the main net minimum difficulty (4295032833 hashes).

Definition at line 77 of file blockchain.cpp.

Here is the caller graph for this function:

◆ RPCNotifyBlockChange()

void RPCNotifyBlockChange ( const CBlockIndex pindex)

Callback for when block tip changed.

Definition at line 243 of file blockchain.cpp.

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

Variable Documentation

◆ NUM_GETBLOCKSTATS_PERCENTILES

constexpr int NUM_GETBLOCKSTATS_PERCENTILES = 5
staticconstexpr

Definition at line 27 of file blockchain.h.