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 LandingTarget {
    pub header: crate::std_msgs::msg::Header,
    pub target_num: u8,
    pub frame: u8,
    pub angle: [f32; 2],
    pub distance: f32,
    pub size: [f32; 2],
    pub pose: crate::geometry_msgs::msg::Pose,
    #[serde(rename = "type")]    pub type_: u8,
}

impl LandingTarget {
    pub const GLOBAL: u8 = 0;
    pub const LOCAL_NED: u8 = 2;
    pub const MISSION: u8 = 3;
    pub const GLOBAL_RELATIVE_ALT: u8 = 4;
    pub const LOCAL_ENU: u8 = 5;
    pub const GLOBAL_INT: u8 = 6;
    pub const GLOBAL_RELATIVE_ALT_INT: u8 = 7;
    pub const LOCAL_OFFSET_NED: u8 = 8;
    pub const BODY_NED: u8 = 9;
    pub const BODY_OFFSET_NED: u8 = 10;
    pub const GLOBAL_TERRAIN_ALT: u8 = 11;
    pub const GLOBAL_TERRAIN_ALT_INT: u8 = 12;
    pub const LIGHT_BEACON: u8 = 0;
    pub const RADIO_BEACON: u8 = 1;
    pub const VISION_FIDUCIAL: u8 = 2;
    pub const VISION_OTHER: u8 = 3;
}

impl Default for LandingTarget {
    fn default() -> Self {
        LandingTarget {
            header: crate::std_msgs::msg::Header::default(),
            target_num: 0,
            frame: 0,
            angle: [0.0; 2],
            distance: 0.0,
            size: [0.0; 2],
            pose: crate::geometry_msgs::msg::Pose::default(),
            type_: 0,
        }
    }
}

impl ros2_client::Message for LandingTarget {}