Skip to main content

carbon_virtual_curve_decoder/accounts/
virtual_pool.rs

1use super::super::types::*;
2
3use carbon_core::{borsh, CarbonDeserialize};
4
5#[derive(
6    CarbonDeserialize, Debug, serde::Deserialize, serde::Serialize, PartialEq, Eq, Clone, Hash,
7)]
8#[carbon(discriminator = "0xd5e005d16245775c")]
9pub struct VirtualPool {
10    pub volatility_tracker: VolatilityTracker,
11    pub config: solana_pubkey::Pubkey,
12    pub creator: solana_pubkey::Pubkey,
13    pub base_mint: solana_pubkey::Pubkey,
14    pub base_vault: solana_pubkey::Pubkey,
15    pub quote_vault: solana_pubkey::Pubkey,
16    pub base_reserve: u64,
17    pub quote_reserve: u64,
18    pub protocol_base_fee: u64,
19    pub protocol_quote_fee: u64,
20    pub trading_base_fee: u64,
21    pub trading_quote_fee: u64,
22    pub sqrt_price: u128,
23    pub activation_point: u64,
24    pub pool_type: u8,
25    pub is_migrated: u8,
26    pub is_partner_withdraw_surplus: u8,
27    pub is_procotol_withdraw_surplus: u8,
28    pub migration_progress: u8,
29    pub padding_0: [u8; 3],
30    pub metrics: PoolMetrics,
31    pub finish_curve_timestamp: u64,
32    pub padding_1: [u64; 9],
33}