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 MountConfigureRequest {
    pub header: crate::std_msgs::msg::Header,
    pub mode: u8,
    pub stabilize_roll: bool,
    pub stabilize_pitch: bool,
    pub stabilize_yaw: bool,
    pub roll_input: u8,
    pub pitch_input: u8,
    pub yaw_input: u8,
}

impl MountConfigureRequest {
    pub const MODE_RETRACT: u8 = 0;
    pub const MODE_NEUTRAL: u8 = 1;
    pub const MODE_MAVLINK_TARGETING: u8 = 2;
    pub const MODE_RC_TARGETING: u8 = 3;
    pub const MODE_GPS_POINT: u8 = 4;
    pub const INPUT_ANGLE_BODY_FRAME: u8 = 0;
    pub const INPUT_ANGULAR_RATE: u8 = 1;
    pub const INPUT_ANGLE_ABSOLUTE_FRAME: u8 = 2;
}

impl Default for MountConfigureRequest {
    fn default() -> Self {
        MountConfigureRequest {
            header: crate::std_msgs::msg::Header::default(),
            mode: 0,
            stabilize_roll: false,
            stabilize_pitch: false,
            stabilize_yaw: false,
            roll_input: 0,
            pitch_input: 0,
            yaw_input: 0,
        }
    }
}

impl ros2_client::Message for MountConfigureRequest {}



#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct MountConfigureResponse {
    pub success: bool,
    pub result: u8,
}

impl Default for MountConfigureResponse {
    fn default() -> Self {
        MountConfigureResponse {
            success: false,
            result: 0,
        }
    }
}

impl ros2_client::Message for MountConfigureResponse {}


pub struct MountConfigure;
impl ros2_client::Service for MountConfigure {
    type Request = MountConfigureRequest;
    type Response = MountConfigureResponse;

    fn request_type_name(&self) -> &str { "MountConfigureRequest" }
    fn response_type_name(&self) -> &str { "MountConfigureResponse" }
}