![]() |
Bitcoin Core
25.99.0
P2P Digital Currency
|
CTxMemPoolEntry stores data about the corresponding transaction, as well as data about all in-mempool transactions that depend on the transaction ("descendant" transactions). More...
#include <mempool_entry.h>
Public Types | |
typedef std::reference_wrapper< const CTxMemPoolEntry > | CTxMemPoolEntryRef |
typedef std::set< CTxMemPoolEntryRef, CompareIteratorByHash > | Parents |
typedef std::set< CTxMemPoolEntryRef, CompareIteratorByHash > | Children |
Public Member Functions | |
CTxMemPoolEntry (const CTransactionRef &tx, CAmount fee, int64_t time, unsigned int entry_height, bool spends_coinbase, int64_t sigops_cost, LockPoints lp) | |
const CTransaction & | GetTx () const |
CTransactionRef | GetSharedTx () const |
const CAmount & | GetFee () const |
size_t | GetTxSize () const |
size_t | GetTxWeight () const |
std::chrono::seconds | GetTime () const |
unsigned int | GetHeight () const |
int64_t | GetSigOpCost () const |
CAmount | GetModifiedFee () const |
size_t | DynamicMemoryUsage () const |
const LockPoints & | GetLockPoints () const |
void | UpdateDescendantState (int64_t modifySize, CAmount modifyFee, int64_t modifyCount) |
void | UpdateAncestorState (int64_t modifySize, CAmount modifyFee, int64_t modifyCount, int64_t modifySigOps) |
void | UpdateModifiedFee (CAmount fee_diff) |
void | UpdateLockPoints (const LockPoints &lp) |
uint64_t | GetCountWithDescendants () const |
uint64_t | GetSizeWithDescendants () const |
CAmount | GetModFeesWithDescendants () const |
bool | GetSpendsCoinbase () const |
uint64_t | GetCountWithAncestors () const |
uint64_t | GetSizeWithAncestors () const |
CAmount | GetModFeesWithAncestors () const |
int64_t | GetSigOpCostWithAncestors () const |
const Parents & | GetMemPoolParentsConst () const |
const Children & | GetMemPoolChildrenConst () const |
Parents & | GetMemPoolParents () const |
Children & | GetMemPoolChildren () const |
Public Attributes | |
size_t | vTxHashesIdx |
Index in mempool's vTxHashes. More... | |
Epoch::Marker | m_epoch_marker |
epoch when last touched, useful for graph algorithms More... | |
Private Attributes | |
const CTransactionRef | tx |
Parents | m_parents |
Children | m_children |
const CAmount | nFee |
Cached to avoid expensive parent-transaction lookups. More... | |
const size_t | nTxWeight |
... and avoid recomputing tx weight (also used for GetTxSize()) More... | |
const size_t | nUsageSize |
... and total memory usage More... | |
const int64_t | nTime |
Local time when entering the mempool. More... | |
const unsigned int | entryHeight |
Chain height when entering the mempool. More... | |
const bool | spendsCoinbase |
keep track of transactions that spend a coinbase More... | |
const int64_t | sigOpCost |
Total sigop cost. More... | |
CAmount | m_modified_fee |
Used for determining the priority of the transaction for mining in a block. More... | |
LockPoints | lockPoints |
Track the height and time at which tx was final. More... | |
uint64_t | nCountWithDescendants {1} |
number of descendant transactions More... | |
uint64_t | nSizeWithDescendants |
... and size More... | |
CAmount | nModFeesWithDescendants |
... and total fees (all including us) More... | |
uint64_t | nCountWithAncestors {1} |
uint64_t | nSizeWithAncestors |
CAmount | nModFeesWithAncestors |
int64_t | nSigOpCostWithAncestors |
CTxMemPoolEntry stores data about the corresponding transaction, as well as data about all in-mempool transactions that depend on the transaction ("descendant" transactions).
When a new entry is added to the mempool, we update the descendant state (nCountWithDescendants, nSizeWithDescendants, and nModFeesWithDescendants) for all ancestors of the newly added transaction.
Definition at line 65 of file mempool_entry.h.
typedef std::set<CTxMemPoolEntryRef, CompareIteratorByHash> CTxMemPoolEntry::Children |
Definition at line 71 of file mempool_entry.h.
typedef std::reference_wrapper<const CTxMemPoolEntry> CTxMemPoolEntry::CTxMemPoolEntryRef |
Definition at line 68 of file mempool_entry.h.
typedef std::set<CTxMemPoolEntryRef, CompareIteratorByHash> CTxMemPoolEntry::Parents |
Definition at line 70 of file mempool_entry.h.
|
inline |
Definition at line 101 of file mempool_entry.h.
|
inline |
Definition at line 133 of file mempool_entry.h.
|
inline |
Definition at line 160 of file mempool_entry.h.
|
inline |
Definition at line 154 of file mempool_entry.h.
|
inline |
|
inline |
|
inline |
Definition at line 134 of file mempool_entry.h.
|
inline |
Definition at line 168 of file mempool_entry.h.
|
inline |
|
inline |
Definition at line 167 of file mempool_entry.h.
|
inline |
Definition at line 165 of file mempool_entry.h.
|
inline |
Definition at line 162 of file mempool_entry.h.
|
inline |
|
inline |
|
inline |
Definition at line 122 of file mempool_entry.h.
|
inline |
Definition at line 131 of file mempool_entry.h.
|
inline |
Definition at line 163 of file mempool_entry.h.
|
inline |
Definition at line 161 of file mempool_entry.h.
|
inline |
|
inline |
Definition at line 158 of file mempool_entry.h.
|
inline |
|
inline |
|
inline |
Definition at line 124 of file mempool_entry.h.
|
inline |
Definition at line 128 of file mempool_entry.h.
void CTxMemPoolEntry::UpdateAncestorState | ( | int64_t | modifySize, |
CAmount | modifyFee, | ||
int64_t | modifyCount, | ||
int64_t | modifySigOps | ||
) |
Definition at line 377 of file txmempool.cpp.
void CTxMemPoolEntry::UpdateDescendantState | ( | int64_t | modifySize, |
CAmount | modifyFee, | ||
int64_t | modifyCount | ||
) |
Definition at line 368 of file txmempool.cpp.
|
inline |
|
inline |
Definition at line 141 of file mempool_entry.h.
|
private |
Chain height when entering the mempool.
Definition at line 81 of file mempool_entry.h.
|
private |
Track the height and time at which tx was final.
Definition at line 85 of file mempool_entry.h.
|
mutableprivate |
Definition at line 76 of file mempool_entry.h.
|
mutable |
epoch when last touched, useful for graph algorithms
Definition at line 171 of file mempool_entry.h.
|
private |
Used for determining the priority of the transaction for mining in a block.
Definition at line 84 of file mempool_entry.h.
|
mutableprivate |
Definition at line 75 of file mempool_entry.h.
|
private |
Definition at line 95 of file mempool_entry.h.
|
private |
number of descendant transactions
Definition at line 90 of file mempool_entry.h.
|
private |
Cached to avoid expensive parent-transaction lookups.
Definition at line 77 of file mempool_entry.h.
|
private |
Definition at line 97 of file mempool_entry.h.
|
private |
... and total fees (all including us)
Definition at line 92 of file mempool_entry.h.
|
private |
Definition at line 98 of file mempool_entry.h.
|
private |
Definition at line 96 of file mempool_entry.h.
|
private |
... and size
Definition at line 91 of file mempool_entry.h.
|
private |
Local time when entering the mempool.
Definition at line 80 of file mempool_entry.h.
|
private |
... and avoid recomputing tx weight (also used for GetTxSize())
Definition at line 78 of file mempool_entry.h.
|
private |
... and total memory usage
Definition at line 79 of file mempool_entry.h.
|
private |
Total sigop cost.
Definition at line 83 of file mempool_entry.h.
|
private |
keep track of transactions that spend a coinbase
Definition at line 82 of file mempool_entry.h.
|
private |
Definition at line 74 of file mempool_entry.h.
|
mutable |
Index in mempool's vTxHashes.
Definition at line 170 of file mempool_entry.h.