Documentation
¶
Index ¶
- type Agent
- type Backend
- type CpuAgent
- type Miner
- func (self *Miner) GetCoinbase() common.Address
- func (self *Miner) GetPubKey() ed25519.PublicKey
- func (self *Miner) HashRate() uint64
- func (self *Miner) MinerDoWork()
- func (self *Miner) Mining() bool
- func (self *Miner) Quit()
- func (self *Miner) Register(agent Agent)
- func (self *Miner) SetCoinbase(eb common.Address)
- func (self *Miner) SetPubKey(pubKey ed25519.PublicKey)
- func (self *Miner) Start(pubKey ed25519.PublicKey, eb common.Address)
- func (self *Miner) Stop()
- func (self *Miner) SuspendMiner()
- func (self *Miner) Unregister(agent Agent)
- type RemoteAgent
- func (a *RemoteAgent) GetHashRate() (tot int64)
- func (a *RemoteAgent) GetWork() ([3]string, error)
- func (a *RemoteAgent) SetReturnCh(returnCh chan<- *Result)
- func (a *RemoteAgent) Start()
- func (a *RemoteAgent) Stop()
- func (a *RemoteAgent) SubmitHashrate(id common.Hash, rate uint64)
- func (a *RemoteAgent) SubmitWork(nonce types.BlockNonce, mixDigest, hash common.Hash) bool
- func (a *RemoteAgent) Work() chan<- *Work
- type Result
- type Work
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Backend ¶
type Backend interface { AccountManager() *accounts.Manager BlockChain() *core.BlockChain KeyBlockChain() *core.KeyBlockChain CandidatePool() *core.CandidatePool TxPool() *core.TxPool ChainDb() cphdb.Database }
Backend wraps all methods required for mining.
type CpuAgent ¶
type CpuAgent struct {
// contains filtered or unexported fields
}
func NewCpuAgent ¶
func NewCpuAgent(chain types.ChainReader, engine pow.Engine) *CpuAgent
func (*CpuAgent) SetReturnCh ¶
type Miner ¶
type Miner struct {
// contains filtered or unexported fields
}
Miner creates candidate from current head keyblock and searches for proof-of-work values.
func (*Miner) GetCoinbase ¶
func (*Miner) MinerDoWork ¶
func (self *Miner) MinerDoWork()
func (*Miner) SetCoinbase ¶
func (*Miner) SuspendMiner ¶
func (self *Miner) SuspendMiner()
func (*Miner) Unregister ¶
type RemoteAgent ¶
type RemoteAgent struct {
// contains filtered or unexported fields
}
func NewRemoteAgent ¶
func NewRemoteAgent(chain types.KeyChainReader, engine pow.Engine) *RemoteAgent
func (*RemoteAgent) GetHashRate ¶
func (a *RemoteAgent) GetHashRate() (tot int64)
GetHashRate returns the accumulated hashrate of all identifier combined
func (*RemoteAgent) GetWork ¶
func (a *RemoteAgent) GetWork() ([3]string, error)
func (*RemoteAgent) SetReturnCh ¶
func (a *RemoteAgent) SetReturnCh(returnCh chan<- *Result)
func (*RemoteAgent) Start ¶
func (a *RemoteAgent) Start()
func (*RemoteAgent) Stop ¶
func (a *RemoteAgent) Stop()
func (*RemoteAgent) SubmitHashrate ¶
func (a *RemoteAgent) SubmitHashrate(id common.Hash, rate uint64)
func (*RemoteAgent) SubmitWork ¶
func (a *RemoteAgent) SubmitWork(nonce types.BlockNonce, mixDigest, hash common.Hash) bool
SubmitWork tries to inject a pow solution into the remote agent, returning whether the solution was accepted or not (not can be both a bad pow as well as any other error, like no work pending).
func (*RemoteAgent) Work ¶
func (a *RemoteAgent) Work() chan<- *Work
Click to show internal directories.
Click to hide internal directories.