Fabcoin Core
0.16.2
P2P Digital Currency
|
#include <Ethash.h>
Public Types | |
enum | { MixHashField = 0, NonceField = 1 } |
Public Member Functions | |
Ethash () | |
std::string | name () const override |
unsigned | revision () const override |
unsigned | sealFields () const override |
bytes | sealRLP () const override |
StringHashMap | jsInfo (BlockHeader const &_bi) const override |
void | verify (Strictness _s, BlockHeader const &_bi, BlockHeader const &_parent, bytesConstRef _block) const override |
Don't forget to call Super::verify when subclassing & overriding. More... | |
void | verifyTransaction (ImportRequirements::value _ir, TransactionBase const &_t, BlockHeader const &_bi) const override |
Additional verification for transactions in blocks. More... | |
void | populateFromParent (BlockHeader &_bi, BlockHeader const &_parent) const override |
Don't forget to call Super::populateFromParent when subclassing & overriding. More... | |
strings | sealers () const override |
std::string | sealer () const override |
void | setSealer (std::string const &_sealer) override |
void | cancelGeneration () override |
void | generateSeal (BlockHeader const &_bi) override |
bool | shouldSeal (Interface *_i) override |
eth::GenericFarm< EthashProofOfWork > & | farm () |
u256 | calculateDifficulty (BlockHeader const &_bi, BlockHeader const &_parent) const |
u256 | childGasLimit (BlockHeader const &_bi, u256 const &_gasFloorTarget=Invalid256) const |
void | manuallySetWork (BlockHeader const &_work) |
void | manuallySubmitWork (h256 const &_mixHash, Nonce _nonce) |
Public Member Functions inherited from dev::eth::SealEngineBase | |
void | generateSeal (BlockHeader const &_bi) override |
void | onSealGenerated (std::function< void(bytes const &)> const &_f) override |
EVMSchedule const & | evmSchedule (EnvInfo const &) const override |
Public Member Functions inherited from dev::eth::SealEngineFace | |
virtual | ~SealEngineFace () |
bytes | option (std::string const &_name) const |
bool | setOption (std::string const &_name, bytes const &_value) |
virtual void | onSealGenerated (std::function< void(bytes const &s)> const &_f)=0 |
ChainOperationParams const & | chainParams () const |
void | setChainParams (ChainOperationParams const &_params) |
SealEngineFace * | withChainParams (ChainOperationParams const &_params) |
virtual bool | isPrecompiled (Address const &_a, u256 const &_blockNumber) const |
virtual bigint | costOfPrecompiled (Address const &_a, bytesConstRef _in, u256 const &) const |
virtual std::pair< bool, bytes > | executePrecompiled (Address const &_a, bytesConstRef _in, u256 const &) const |
void | setFascSchedule (EVMSchedule _fascSchedule) const |
EVMSchedule & | getFascSchedule () const |
Static Public Member Functions | |
static h256 | seedHash (BlockHeader const &_bi) |
static Nonce | nonce (BlockHeader const &_bi) |
static h256 | mixHash (BlockHeader const &_bi) |
static h256 | boundary (BlockHeader const &_bi) |
static BlockHeader & | setNonce (BlockHeader &_bi, Nonce _v) |
static BlockHeader & | setMixHash (BlockHeader &_bi, h256 const &_v) |
static void | ensurePrecomputed (unsigned _number) |
static void | init () |
Private Member Functions | |
bool | verifySeal (BlockHeader const &_bi) const |
bool | quickVerifySeal (BlockHeader const &_bi) const |
Private Attributes | |
eth::GenericFarm< EthashProofOfWork > | m_farm |
std::string | m_sealer = "cpu" |
BlockHeader | m_sealing |
Additional Inherited Members | |
Public Attributes inherited from dev::eth::SealEngineFace | |
std::set< Address > | deleteAddresses |
Protected Member Functions inherited from dev::eth::SealEngineFace | |
virtual bool | onOptionChanging (std::string const &, bytes const &) |
Protected Attributes inherited from dev::eth::SealEngineBase | |
std::function< void(bytes const &s)> | m_onSealGenerated |
Ethash::Ethash | ( | ) |
|
inlinestatic |
u256 Ethash::calculateDifficulty | ( | BlockHeader const & | _bi, |
BlockHeader const & | _parent | ||
) | const |
Definition at line 182 of file Ethash.cpp.
|
inlineoverridevirtual |
Reimplemented from dev::eth::SealEngineFace.
Definition at line 54 of file Ethash.h.
u256 Ethash::childGasLimit | ( | BlockHeader const & | _bi, |
u256 const & | _gasFloorTarget = Invalid256 |
||
) | const |
Definition at line 166 of file Ethash.cpp.
|
static |
|
inline |
|
overridevirtual |
Implements dev::eth::SealEngineFace.
Definition at line 264 of file Ethash.cpp.
|
static |
|
overridevirtual |
Reimplemented from dev::eth::SealEngineFace.
Definition at line 71 of file Ethash.cpp.
|
inline |
|
inlinestatic |
|
inlineoverridevirtual |
Implements dev::eth::SealEngineFace.
|
inlinestatic |
|
overridevirtual |
Don't forget to call Super::populateFromParent when subclassing & overriding.
Reimplemented from dev::eth::SealEngineFace.
Definition at line 209 of file Ethash.cpp.
|
private |
Definition at line 216 of file Ethash.cpp.
|
inlineoverridevirtual |
Reimplemented from dev::eth::SealEngineFace.
|
inlineoverridevirtual |
Reimplemented from dev::eth::SealEngineFace.
|
overridevirtual |
Reimplemented from dev::eth::SealEngineFace.
Definition at line 61 of file Ethash.cpp.
|
inlineoverridevirtual |
Reimplemented from dev::eth::SealEngineFace.
|
inlineoverridevirtual |
Reimplemented from dev::eth::SealEngineFace.
Definition at line 44 of file Ethash.h.
|
static |
Definition at line 66 of file Ethash.cpp.
|
inlinestatic |
|
inlinestatic |
|
inlineoverridevirtual |
Reimplemented from dev::eth::SealEngineFace.
|
overridevirtual |
Reimplemented from dev::eth::SealEngineFace.
Definition at line 275 of file Ethash.cpp.
|
overridevirtual |
Don't forget to call Super::verify when subclassing & overriding.
Reimplemented from dev::eth::SealEngineFace.
Definition at line 76 of file Ethash.cpp.
|
private |
Definition at line 233 of file Ethash.cpp.
|
overridevirtual |
Additional verification for transactions in blocks.
Reimplemented from dev::eth::SealEngineFace.
Definition at line 147 of file Ethash.cpp.
|
private |
|
private |