// ECOin - Copyright (c) - 2014/2022 - GPLv3 - epsylon@riseup.net (https://03c8.net) #ifndef ECOIN_MINER_H #define ECOIN_MINER_H #include "main.h" #include "wallet.h" /* Generate a new block, without valid proof-of-work */ CBlock* CreateNewBlock(CWallet* pwallet, bool fProofOfStake=false); /** Modify the extranonce in a block */ void IncrementExtraNonce(CBlock* pblock, CBlockIndex* pindexPrev, unsigned int& nExtraNonce); /** Do mining precalculation */ void FormatHashBuffers(CBlock* pblock, char* pmidstate, char* pdata, char* phash1); /** Check mined proof-of-work block */ bool CheckWork(CBlock* pblock, CWallet& wallet, CReserveKey& reservekey); /** Check mined proof-of-stake block */ bool CheckStake(CBlock* pblock, CWallet& wallet); /** Base sha256 mining transform */ void SHA256Transform(void* pstate, void* pinput, const void* pinit); #endif // ECOIN_MINER_H