ore_boost_api/state/config.rs
1use steel::*;
2
3use super::BoostAccount;
4
5/// Config holds onto global program variables.
6#[repr(C)]
7#[derive(Clone, Copy, Debug, PartialEq, Pod, Zeroable)]
8pub struct Config {
9 /// The admin with authority to create and update boost incentives.
10 pub admin: Pubkey,
11
12 /// The list of all boosts available for activation.
13 pub boosts: [Pubkey; 256],
14
15 /// The number of boosts available in the directory.
16 pub len: u64,
17
18 /// The cumulative rewards collected by all boosts, divided by the total weight at the time of collection.
19 pub rewards_factor: Numeric,
20
21 /// The portion of hash rewards boost stakers should receive (in basis points).
22 pub take_rate: u64,
23
24 /// The total weight of all boosts.
25 pub total_weight: u64,
26}
27
28account!(BoostAccount, Config);