ros2_interfaces_jazzy/ublox_msgs/msg/
mon_hw.rs

1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
4pub struct MonHW {
5    pub pin_sel: u32,
6    pub pin_bank: u32,
7    pub pin_dir: u32,
8    pub pin_val: u32,
9    pub noise_per_ms: u16,
10    pub agc_cnt: u16,
11    pub a_status: u8,
12    pub a_power: u8,
13    pub flags: u8,
14    pub reserved0: u8,
15    pub used_mask: u32,
16    pub vp: [u8; 17],
17    pub jam_ind: u8,
18    pub reserved1: [u8; 2],
19    pub pin_irq: u32,
20    pub pull_h: u32,
21    pub pull_l: u32,
22}
23
24impl MonHW {
25    pub const CLASS_ID: u8 = 10;
26    pub const MESSAGE_ID: u8 = 9;
27    pub const A_STATUS_INIT: u8 = 0;
28    pub const A_STATUS_UNKNOWN: u8 = 1;
29    pub const A_STATUS_OK: u8 = 2;
30    pub const A_STATUS_SHORT: u8 = 3;
31    pub const A_STATUS_OPEN: u8 = 4;
32    pub const A_POWER_OFF: u8 = 0;
33    pub const A_POWER_ON: u8 = 1;
34    pub const A_POWER_UNKNOWN: u8 = 2;
35    pub const FLAGS_RTC_CALIB: u8 = 1;
36    pub const FLAGS_SAFE_BOOT: u8 = 2;
37    pub const FLAGS_JAMMING_STATE_MASK: u8 = 12;
38    pub const JAMMING_STATE_UNKNOWN_OR_DISABLED: u8 = 0;
39    pub const JAMMING_STATE_OK: u8 = 4;
40    pub const JAMMING_STATE_WARNING: u8 = 8;
41    pub const JAMMING_STATE_CRITICAL: u8 = 12;
42    pub const FLAGS_XTAL_ABSENT: u8 = 16;
43    pub const JAM_IND_NONE: u8 = 0;
44    pub const JAM_IND_STRONG: u8 = 255;
45}
46
47impl Default for MonHW {
48    fn default() -> Self {
49        MonHW {
50            pin_sel: 0,
51            pin_bank: 0,
52            pin_dir: 0,
53            pin_val: 0,
54            noise_per_ms: 0,
55            agc_cnt: 0,
56            a_status: 0,
57            a_power: 0,
58            flags: 0,
59            reserved0: 0,
60            used_mask: 0,
61            vp: [0; 17],
62            jam_ind: 0,
63            reserved1: [0; 2],
64            pin_irq: 0,
65            pull_h: 0,
66            pull_l: 0,
67        }
68    }
69}
70
71impl ros2_client::Message for MonHW {}