pub struct Round {Show 24 fields
pub discriminator: [u8; 8],
pub version: u16,
pub bump: u8,
pub id: u32,
pub state: RoundState,
pub blockhash_entropy: [u8; 32],
pub winning_tile: Option<u8>,
pub deployed_pending_usd_amount: u64,
pub deployed_usd_amount: u64,
pub deployed_btc_amount: u64,
pub deployed_usd_on_winning_tile_amount: u64,
pub miners_count: u32,
pub revealed_miners_count: u32,
pub winners_count: u32,
pub settled_miners_count: u32,
pub strike_bonus_usd: u64,
pub strike_bonus_btc: u64,
pub public_tile_stakes: [TileStake; 21],
pub deploy_entropy_acc: [u8; 32],
pub settled_at_slot: u64,
pub pending_epoch_fee_usd_amount: u64,
pub pending_one_btc_fee_usd_amount: u64,
pub pending_protocol_fee_usd_amount: u64,
pub reserved: [u8; 40],
}Fields§
§discriminator: [u8; 8]§version: u16Struct version.
bump: u8PDA bump seed.
id: u32Sequential round identifier.
state: RoundStateRound state
blockhash_entropy: [u8; 32]Raw blockhash entropy, read from the SlotHashes sysvar at reveal.
winning_tile: Option<u8>Winning tile index, revealed upon settlement
deployed_pending_usd_amount: u64Total net USD deployed into the round before the USD->BTC swap
deployed_usd_amount: u64Total net USD stake after USD->BTC swap
deployed_btc_amount: u64Total net BTC stake after USD->BTC swap
deployed_usd_on_winning_tile_amount: u64Total net USD placed on the winning tile
miners_count: u32Total amount of players in the round
revealed_miners_count: u32Number of miners whose selection is revealed.
winners_count: u32Total amount of winners, revealed during settlement
settled_miners_count: u32Total amount of miners who claimed their winnings/hashrate, should equal to miners_count
strike_bonus_usd: u64Strike jackpot USD rolled into this round on trigger, distributed to winners.
strike_bonus_btc: u64Strike jackpot BTC rolled into this round on trigger, distributed to winners.
public_tile_stakes: [TileStake; 21]Per-tile deploy count and stake sum, accumulated as public miners deploy. Indexed by tile (0..TILES_COUNT). Read at reveal to derive the winning tile’s totals without a per-deployment settlement pass.
deploy_entropy_acc: [u8; 32]Running hash-chain accumulator of every public deploy.
settled_at_slot: u64Slot at which the round reached Settled state.
pending_epoch_fee_usd_amount: u64Epoch Vault fee accrued by this round’s deploys, in USD base units. Physically sits in the board’s USD pool until swept at rotation.
pending_one_btc_fee_usd_amount: u641 BTC Vault fee accrued by this round’s deploys; same lifecycle.
pending_protocol_fee_usd_amount: u64Protocol (treasury) fee accrued by this round’s deploys; same lifecycle.
reserved: [u8; 40]Reserved.
Implementations§
Trait Implementations§
Source§impl BorshDeserialize for Round
impl BorshDeserialize for Round
fn deserialize_reader<__R: Read>(reader: &mut __R) -> Result<Self, Error>
Source§fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
Source§fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_reader<R>(reader: &mut R) -> Result<Self, Error>where
R: Read,
Source§impl BorshSerialize for Round
impl BorshSerialize for Round
impl Eq for Round
impl StructuralPartialEq for Round
Auto Trait Implementations§
impl Freeze for Round
impl RefUnwindSafe for Round
impl Send for Round
impl Sync for Round
impl Unpin for Round
impl UnsafeUnpin for Round
impl UnwindSafe for Round
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more