MCPcopy Create free account
hub / github.com/LUX-Core/lux / GetPoWMHashPS

Function GetPoWMHashPS

src/rpcserver.cpp:668–686  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

666const CRPCTable tableRPC;
667
668double GetPoWMHashPS() {
669 if (pindexBestHeader->nHeight >= Params().GetConsensus().nLastPOWBlock)
670 return 0;
671 int nPoWInterval = 72;
672 int64_t nTargetSpacingWorkMin = 30, nTargetSpacingWork = 30;
673 CBlockIndex* pindexGenesisBlock = chainActive.Genesis();
674 CBlockIndex* pindex = pindexGenesisBlock;
675 CBlockIndex* pindexPrevWork = pindexGenesisBlock;
676 while (pindex) {
677 if (pindex->IsProofOfWork()) {
678 int64_t nActualSpacingWork = pindex->GetBlockTime() - pindexPrevWork->GetBlockTime();
679 nTargetSpacingWork = ((nPoWInterval - 1) * nTargetSpacingWork + nActualSpacingWork + nActualSpacingWork) / (nPoWInterval + 1);
680 nTargetSpacingWork = std::max(nTargetSpacingWork, nTargetSpacingWorkMin);
681 pindexPrevWork = pindex;
682 }
683 pindex = pindex->pnext;
684 }
685 return GetDifficulty() * 4294.967296 / nTargetSpacingWork;
686}
687
688double GetPoSKernelPS() {
689 int nStakingInterval = Params().StakingInterval();

Callers

nothing calls this directly

Calls 6

maxFunction · 0.85
GetDifficultyFunction · 0.85
GenesisMethod · 0.80
ParamsClass · 0.70
IsProofOfWorkMethod · 0.45
GetBlockTimeMethod · 0.45

Tested by

no test coverage detected