Ethereum  PoC-8
The C++ Implementation of Ethereum
dev::eth::SealEngineBase Class Reference

#include <SealEngine.h>

Inheritance diagram for dev::eth::SealEngineBase:
dev::eth::SealEngineFace dev::eth::BasicAuthority dev::eth::NoProof

Public Types

enum  { MixHashField = 0, NonceField = 1 }
 

Public Member Functions

void onSealGenerated (std::function< void(bytes const &)> const &_f) override
 
EVMSchedule const & evmSchedule (u256 const &_blockNumber) const override
 
u256 blockReward (u256 const &_blockNumber) const override
 
- Public Member Functions inherited from dev::eth::SealEngineFace
virtual ~SealEngineFace ()
 
virtual std::tuple< h256, h256, h256getWork (BlockHeader const &)
 
virtual bool isMining () const
 
virtual unsigned revision () const
 
virtual unsigned sealFields () const
 
virtual bytes sealRLP () const
 
virtual StringHashMap jsInfo (BlockHeader const &) const
 
virtual void verify (Strictness _s, BlockHeader const &_bi, BlockHeader const &_parent=BlockHeader(), bytesConstRef _block=bytesConstRef()) const
 Don't forget to call Super::verify when subclassing & overriding. More...
 
virtual void verifyTransaction (ImportRequirements::value _ir, TransactionBase const &_t, BlockHeader const &_header, u256 const &_startGasUsed) const
 Additional verification for transactions in blocks. More...
 
virtual void populateFromParent (BlockHeader &_bi, BlockHeader const &_parent) const
 Don't forget to call Super::populateFromParent when subclassing & overriding. More...
 
bytes option (std::string const &_name) const
 
bool setOption (std::string const &_name, bytes const &_value)
 
virtual strings sealers () const
 
virtual std::string sealer () const
 
virtual void setSealer (std::string const &)
 
virtual bool shouldSeal (Interface *)
 
virtual void generateSeal (BlockHeader const &_bi)=0
 
virtual void onSealGenerated (std::function< void(bytes const &s)> const &_f)=0
 
virtual void cancelGeneration ()
 
ChainOperationParams const & chainParams () const
 
void setChainParams (ChainOperationParams const &_params)
 
SealEngineFacewithChainParams (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, bytesexecutePrecompiled (Address const &_a, bytesConstRef _in, u256 const &) const
 

Protected Attributes

std::function< void(bytes const &s)> m_onSealGenerated
 

Additional Inherited Members

- Protected Member Functions inherited from dev::eth::SealEngineFace
virtual bool onOptionChanging (std::string const &, bytes const &)
 

Detailed Description

Definition at line 103 of file SealEngine.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
MixHashField 
NonceField 

Definition at line 106 of file SealEngine.h.

Member Function Documentation

◆ blockReward()

u256 dev::eth::SealEngineBase::blockReward ( u256 const &  _blockNumber) const
overridevirtual

Implements dev::eth::SealEngineFace.

Definition at line 177 of file SealEngine.cpp.

◆ evmSchedule()

EVMSchedule const & dev::eth::SealEngineBase::evmSchedule ( u256 const &  _blockNumber) const
overridevirtual

Implements dev::eth::SealEngineFace.

Definition at line 172 of file SealEngine.cpp.

◆ onSealGenerated()

void dev::eth::SealEngineBase::onSealGenerated ( std::function< void(bytes const &)> const &  _f)
inlineoverride

Definition at line 111 of file SealEngine.h.

Member Data Documentation

◆ m_onSealGenerated

std::function<void(bytes const& s)> dev::eth::SealEngineBase::m_onSealGenerated
protected

Definition at line 116 of file SealEngine.h.


The documentation for this class was generated from the following files: