ore_boost_api/state/
boost.rs

1use steel::*;
2
3use super::BoostAccount;
4
5/// Boost tracks the mining multiplier and stake deposits of a boost account.
6#[repr(C)]
7#[derive(Clone, Copy, Debug, PartialEq, Pod, Zeroable)]
8pub struct Boost {
9    /// The bump used for signing.
10    pub bump: u64,
11
12    /// The unix timestamp this boost expires.
13    pub expires_at: i64,
14
15    /// Flag indicating if this boost is locked for checkpointing.
16    pub locked: u64,
17
18    /// The mint address of the token associated with this boost.
19    pub mint: Pubkey,
20
21    /// The multiplier allocated to this boost.
22    pub multiplier: u64,
23    
24    // The total amount of stake deposited in this boost.
25    pub total_deposits: u64,
26
27    /// The number of stakers in this boost.
28    pub total_stakers: u64,
29}
30
31account!(BoostAccount, Boost);