5#ifndef BITCOIN_POLICY_BLOCK_PRECONSENSUS_H
6#define BITCOIN_POLICY_BLOCK_PRECONSENSUS_H
The block chain is a tree shaped structure starting with the genesis block at the root,...
CTxMemPool stores valid-according-to-the-current-best-chain transactions that may be included in the ...
RecursiveMutex cs
This mutex needs to be locked when accessing mapTx or other members that are guarded by it.
const CBlockIndex & m_blockIndex
const CTxMemPool * m_mempool
bool operator()(BlockPolicyValidationState &state) override EXCLUSIVE_LOCKS_REQUIRED(m_mempool -> cs)
PreConsensusPolicy(const CBlockIndex &blockIndex, const CBlock &block, const CTxMemPool *mempool)
T GetRand(T nMax=std::numeric_limits< T >::max()) noexcept
Generate a uniform random integer of type T in the range [0..nMax) nMax defaults to std::numeric_limi...
#define EXCLUSIVE_LOCKS_REQUIRED(...)