added stake cache + checked ismine
This commit is contained in:
11
src/pos.h
11
src/pos.h
@@ -21,11 +21,22 @@ using namespace std;
|
||||
/** Compute the hash modifier for proof-of-stake */
|
||||
uint256 ComputeStakeModifier(const CBlockIndex* pindexPrev, const uint256& kernel);
|
||||
|
||||
struct CStakeCache{
|
||||
CStakeCache(CBlockHeader blockFrom_, CDiskTxPos txindex_, const CTransaction txPrev_) : blockFrom(blockFrom_), txindex(txindex_), txPrev(txPrev_){
|
||||
}
|
||||
CBlockHeader blockFrom;
|
||||
CDiskTxPos txindex;
|
||||
const CTransaction txPrev;
|
||||
};
|
||||
|
||||
// Check whether the coinstake timestamp meets protocol
|
||||
bool CheckCoinStakeTimestamp(int64_t nTimeBlock, int64_t nTimeTx);
|
||||
bool CheckStakeBlockTimestamp(int64_t nTimeBlock);
|
||||
bool CheckKernel(CBlockIndex* pindexPrev, unsigned int nBits, uint32_t nTime, const COutPoint& prevout, uint32_t* pBlockTime = NULL);
|
||||
bool CheckKernel(CBlockIndex* pindexPrev, unsigned int nBits, uint32_t nTime, const COutPoint& prevout, uint32_t* pBlockTime, const std::map<COutPoint, CStakeCache>& cache);
|
||||
bool CheckStakeKernelHash(const CBlockIndex* pindexPrev, unsigned int nBits, const CCoins* txPrev, const COutPoint& prevout, unsigned int nTimeTx);
|
||||
bool IsConfirmedInNPrevBlocks(const CDiskTxPos& txindex, const CBlockIndex* pindexFrom, int nMaxDepth, int& nActualDepth);
|
||||
bool CheckProofOfStake(CBlockIndex* pindexPrev, const CTransaction& tx, unsigned int nBits, CValidationState &state);
|
||||
void CacheKernel(std::map<COutPoint, CStakeCache>& cache, const COutPoint& prevout);
|
||||
bool VerifySignature(const CTransaction& txFrom, const CTransaction& txTo, unsigned int nIn, unsigned int flags, int nHashType);
|
||||
#endif // BLACKCOIN_POS_H
|
||||
|
||||
Reference in New Issue
Block a user