pub type Particle = [u8; 32];
pub type NeuronId = [u8; 32];
pub struct ParticleRecord {
pub energy: u64,
pub pi_star: u64,
pub weight: u64,
pub s_yes: u64,
pub s_no: u64,
pub meta_score: u64,
}
impl ParticleRecord {
pub fn zero() -> Self {
Self { energy: 0, pi_star: 0, weight: 0, s_yes: 0, s_no: 0, meta_score: 0 }
}
}
pub struct NeuronRecord {
pub focus: u64,
pub karma: u64,
pub stake: u64,
}
pub struct LocationRecord {
pub lat: i32,
pub lon: i32,
}
pub struct CoinRecord {
pub total_supply: u64,
}
pub struct CardRecord {
pub owner: NeuronId,
pub particle: Particle,
}
pub struct FileRecord {
pub available: bool,
pub chunk_count: u32,
}
pub struct SignalRecord {
pub neuron: NeuronId,
pub network: Particle,
pub link_count: u32,
pub block_height: u64,
pub proof_hash: Particle,
}
pub struct IntentRecord {
pub neuron: NeuronId,
pub h0: u64,
pub scope_hash: Particle,
pub signature: [u8; 64],
}