add mode module with basic defintions
This commit is contained in:
@ -0,0 +1,25 @@
|
||||
use crate::tmtc::TargetId;
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
#[derive(Debug, Copy, Clone, PartialEq, Eq)]
|
||||
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
|
||||
pub struct ModePair {
|
||||
mode: u32,
|
||||
submode: u16,
|
||||
}
|
||||
|
||||
#[derive(Debug, Copy, Clone, PartialEq, Eq)]
|
||||
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
|
||||
pub struct ModeCommand {
|
||||
address: TargetId,
|
||||
mode: ModePair,
|
||||
}
|
||||
|
||||
#[derive(Debug, Copy, Clone, PartialEq, Eq)]
|
||||
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
|
||||
pub enum ModeRequest {
|
||||
SetMode(ModeCommand),
|
||||
ReadMode(TargetId),
|
||||
AnnounceMode(TargetId),
|
||||
AnnounceModeRecursive(TargetId),
|
||||
}
|
||||
|
Reference in New Issue
Block a user