Changeset View
Changeset View
Standalone View
Standalone View
src/miner.cpp
Show All 23 Lines | |||||
#include <util/moneystr.h> | #include <util/moneystr.h> | ||||
#include <util/system.h> | #include <util/system.h> | ||||
#include <util/validation.h> | #include <util/validation.h> | ||||
#include <validation.h> | #include <validation.h> | ||||
#include <algorithm> | #include <algorithm> | ||||
#include <utility> | #include <utility> | ||||
std::unique_ptr<BlockTemplateManager> g_block_template_manager; | |||||
int64_t UpdateTime(CBlockHeader *pblock, const CChainParams &chainParams, | int64_t UpdateTime(CBlockHeader *pblock, const CChainParams &chainParams, | ||||
const CBlockIndex *pindexPrev) { | const CBlockIndex *pindexPrev) { | ||||
int64_t nOldTime = pblock->nTime; | int64_t nOldTime = pblock->nTime; | ||||
int64_t nNewTime = | int64_t nNewTime = | ||||
std::max(pindexPrev->GetMedianTimePast() + 1, GetAdjustedTime()); | std::max(pindexPrev->GetMedianTimePast() + 1, GetAdjustedTime()); | ||||
if (nOldTime < nNewTime) { | if (nOldTime < nNewTime) { | ||||
pblock->nTime = nNewTime; | pblock->nTime = nNewTime; | ||||
▲ Show 20 Lines • Show All 522 Lines • ▼ Show 20 Lines | void IncrementExtraNonce(CBlock *pblock, const CBlockIndex *pindexPrev, | ||||
} | } | ||||
assert(txCoinbase.vin[0].scriptSig.size() <= MAX_COINBASE_SCRIPTSIG_SIZE); | assert(txCoinbase.vin[0].scriptSig.size() <= MAX_COINBASE_SCRIPTSIG_SIZE); | ||||
assert(::GetSerializeSize(txCoinbase, PROTOCOL_VERSION) >= MIN_TX_SIZE); | assert(::GetSerializeSize(txCoinbase, PROTOCOL_VERSION) >= MIN_TX_SIZE); | ||||
pblock->vtx[0] = MakeTransactionRef(std::move(txCoinbase)); | pblock->vtx[0] = MakeTransactionRef(std::move(txCoinbase)); | ||||
pblock->hashMerkleRoot = BlockMerkleRoot(*pblock); | pblock->hashMerkleRoot = BlockMerkleRoot(*pblock); | ||||
} | } | ||||
BlockTemplateId BlockTemplateManager::addBlockTemplate( | |||||
std::shared_ptr<CBlockTemplate> templateIn) { | |||||
blockTemplate = templateIn; | |||||
return 0; | |||||
} | |||||
std::shared_ptr<CBlockTemplate> | |||||
BlockTemplateManager::getBlockTemplate(BlockTemplateId id) { | |||||
// Just return the latest template for now | |||||
return blockTemplate; | |||||
} |