Merge pull request #6055

a8cdaf5 checkpoints: move the checkpoints enable boolean into main (Cory Fields)
11982d3 checkpoints: Decouple checkpoints from Params (Cory Fields)
6996823 checkpoints: make checkpoints a member of CChainParams (Cory Fields)
9f13a10 checkpoints: store mapCheckpoints in CCheckpointData rather than a pointer (Cory Fields)
This commit is contained in:
Wladimir J. van der Laan
2015-05-06 11:33:51 +02:00
12 changed files with 103 additions and 117 deletions

View File

@@ -20,24 +20,22 @@ namespace Checkpoints
typedef std::map<int, uint256> MapCheckpoints;
struct CCheckpointData {
const MapCheckpoints *mapCheckpoints;
MapCheckpoints mapCheckpoints;
int64_t nTimeLastCheckpoint;
int64_t nTransactionsLastCheckpoint;
double fTransactionsPerDay;
};
//! Returns true if block passes checkpoint checks
bool CheckBlock(int nHeight, const uint256& hash);
bool CheckBlock(const CCheckpointData& data, int nHeight, const uint256& hash);
//! Return conservative estimate of total number of blocks, 0 if unknown
int GetTotalBlocksEstimate();
int GetTotalBlocksEstimate(const CCheckpointData& data);
//! Returns last CBlockIndex* in mapBlockIndex that is a checkpoint
CBlockIndex* GetLastCheckpoint();
CBlockIndex* GetLastCheckpoint(const CCheckpointData& data);
double GuessVerificationProgress(CBlockIndex* pindex, bool fSigchecks = true);
extern bool fEnabled;
double GuessVerificationProgress(const CCheckpointData& data, CBlockIndex* pindex, bool fSigchecks = true);
} //namespace Checkpoints