Bitcoin Core 31.99.0
P2P Digital Currency
Classes | Enumerations | Functions | Variables
block_policy_estimator.h File Reference
#include <consensus/amount.h>
#include <policy/feerate.h>
#include <primitives/transaction_identifier.h>
#include <random.h>
#include <sync.h>
#include <uint256.h>
#include <util/expected.h>
#include <util/fees.h>
#include <util/fs.h>
#include <array>
#include <chrono>
#include <map>
#include <memory>
#include <set>
#include <string>
#include <vector>
Include dependency graph for block_policy_estimator.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  EstimatorBucket
 
struct  EstimationResult
 
struct  FeeCalculation
 
class  CBlockPolicyEstimator
 The BlockPolicyEstimator is used for estimating the feerate needed for a transaction to be included in a block within a certain number of blocks. More...
 
struct  CBlockPolicyEstimator::TxStatsInfo
 
class  FeeFilterRounder
 

Enumerations

enum class  FeeEstimateHorizon { SHORT_HALFLIFE , MED_HALFLIFE , LONG_HALFLIFE }
 
enum class  BlockPolicyEstimateReason {
  NONE , HALF_ESTIMATE , FULL_ESTIMATE , DOUBLE_ESTIMATE ,
  CONSERVATIVE
}
 

Functions

std::string StringForFeeEstimateHorizon (FeeEstimateHorizon horizon)
 
std::string StringForBlockPolicyEstimateReason (BlockPolicyEstimateReason reason)
 

Variables

constexpr std::chrono::hours MAX_FILE_AGE {60}
 Block policy estimate files that are more than 60 hours (2.5 days) old will not be read, as fee estimates are based on historical data and may be inaccurate if network activity has changed. More...
 
constexpr bool DEFAULT_ACCEPT_STALE_FEE_ESTIMATES {false}
 
constexpr auto ALL_FEE_ESTIMATE_HORIZONS
 

Enumeration Type Documentation

◆ BlockPolicyEstimateReason

enum class BlockPolicyEstimateReason
strong
Enumerator
NONE 
HALF_ESTIMATE 
FULL_ESTIMATE 
DOUBLE_ESTIMATE 
CONSERVATIVE 

Definition at line 58 of file block_policy_estimator.h.

◆ FeeEstimateHorizon

enum class FeeEstimateHorizon
strong
Enumerator
SHORT_HALFLIFE 
MED_HALFLIFE 
LONG_HALFLIFE 

Definition at line 43 of file block_policy_estimator.h.

Function Documentation

◆ StringForBlockPolicyEstimateReason()

std::string StringForBlockPolicyEstimateReason ( BlockPolicyEstimateReason  reason)

Definition at line 52 of file block_policy_estimator.cpp.

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

◆ StringForFeeEstimateHorizon()

std::string StringForFeeEstimateHorizon ( FeeEstimateHorizon  horizon)

Definition at line 42 of file block_policy_estimator.cpp.

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

Variable Documentation

◆ ALL_FEE_ESTIMATE_HORIZONS

constexpr auto ALL_FEE_ESTIMATE_HORIZONS
inlineconstexpr

◆ DEFAULT_ACCEPT_STALE_FEE_ESTIMATES

constexpr bool DEFAULT_ACCEPT_STALE_FEE_ESTIMATES {false}
inlineconstexpr

Definition at line 34 of file block_policy_estimator.h.

◆ MAX_FILE_AGE

constexpr std::chrono::hours MAX_FILE_AGE {60}
inlineconstexpr

Block policy estimate files that are more than 60 hours (2.5 days) old will not be read, as fee estimates are based on historical data and may be inaccurate if network activity has changed.

Definition at line 31 of file block_policy_estimator.h.