Skip to main content

PoolStrategy

Trait PoolStrategy 

Source
pub trait PoolStrategy: Send + Sync {
    // Required methods
    fn pool_type(&self) -> PoolType;
    fn calculate_shares(
        &self,
        proofs: &[ProofRecord],
        reward: u64,
    ) -> Result<Vec<MinerShare>, TribeError>;
    fn minimum_stake(&self) -> u64;
    fn accept_miner(&self, miner: &MinerInfo) -> Result<bool, TribeError>;
    fn pool_info(&self, miners: usize, total_stake: u64) -> PoolInfo;
}
Expand description

How mining rewards are distributed among participants.

Required Methods§

Source

fn pool_type(&self) -> PoolType

Source

fn calculate_shares( &self, proofs: &[ProofRecord], reward: u64, ) -> Result<Vec<MinerShare>, TribeError>

Source

fn minimum_stake(&self) -> u64

Source

fn accept_miner(&self, miner: &MinerInfo) -> Result<bool, TribeError>

Source

fn pool_info(&self, miners: usize, total_stake: u64) -> PoolInfo

Implementors§