ros2-interfaces-iron 0.0.2

Structs for Messages and Services listed by ROS Index for ROS2 Iron. Built around the `ros2-client` crate.
Documentation
use serde::{Deserialize, Serialize};

#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct NavSTATUS {
    pub i_tow: u32,
    pub gps_fix: u8,
    pub flags: u8,
    pub fix_stat: u8,
    pub flags2: u8,
    pub ttff: u32,
    pub msss: u32,
}

impl NavSTATUS {
    pub const CLASS_ID: u8 = 1;
    pub const MESSAGE_ID: u8 = 3;
    pub const GPS_NO_FIX: u8 = 0;
    pub const GPS_DEAD_RECKONING_ONLY: u8 = 1;
    pub const GPS_2D_FIX: u8 = 2;
    pub const GPS_3D_FIX: u8 = 3;
    pub const GPS_GPS_DEAD_RECKONING_COMBINED: u8 = 4;
    pub const GPS_TIME_ONLY_FIX: u8 = 5;
    pub const FLAGS_GPS_FIX_OK: u8 = 1;
    pub const FLAGS_DIFF_SOLN: u8 = 2;
    pub const FLAGS_WKNSET: u8 = 4;
    pub const FLAGS_TOWSET: u8 = 8;
    pub const FIX_STAT_DIFF_CORR_MASK: u8 = 1;
    pub const FIX_STAT_MAP_MATCHING_MASK: u8 = 192;
    pub const MAP_MATCHING_NONE: u8 = 0;
    pub const MAP_MATCHING_VALID: u8 = 64;
    pub const MAP_MATCHING_USED: u8 = 128;
    pub const MAP_MATCHING_DR: u8 = 192;
    pub const FLAGS2_PSM_STATE_MASK: u8 = 3;
    pub const PSM_STATE_ACQUISITION: u8 = 0;
    pub const PSM_STATE_TRACKING: u8 = 1;
    pub const PSM_STATE_POWER_OPTIMIZED_TRACKING: u8 = 2;
    pub const PSM_STATE_INACTIVE: u8 = 3;
    pub const FLAGS2_SPOOF_DET_STATE_MASK: u8 = 24;
    pub const SPOOF_DET_STATE_UNKNOWN: u8 = 0;
    pub const SPOOF_DET_STATE_NONE: u8 = 8;
    pub const SPOOF_DET_STATE_SPOOFING: u8 = 16;
    pub const SPOOF_DET_STATE_MULTIPLE: u8 = 24;
}

impl Default for NavSTATUS {
    fn default() -> Self {
        NavSTATUS {
            i_tow: 0,
            gps_fix: 0,
            flags: 0,
            fix_stat: 0,
            flags2: 0,
            ttff: 0,
            msss: 0,
        }
    }
}

impl ros2_client::Message for NavSTATUS {}