ros2-interfaces-rolling 0.0.1

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


#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct LoadNodeReq {
    pub package_name: ::std::string::String,
    pub plugin_name: ::std::string::String,
    pub node_name: ::std::string::String,
    pub node_namespace: ::std::string::String,
    pub log_level: u8,
    pub remap_rules: Vec<::std::string::String>,
    pub parameters: Vec<crate::rcl_interfaces::msg::Parameter>,
    pub extra_arguments: Vec<crate::rcl_interfaces::msg::Parameter>,
}

impl Default for LoadNodeReq {
    fn default() -> Self {
        LoadNodeReq {
            package_name: ::std::string::String::new(),
            plugin_name: ::std::string::String::new(),
            node_name: ::std::string::String::new(),
            node_namespace: ::std::string::String::new(),
            log_level: 0,
            remap_rules: Vec::new(),
            parameters: Vec::new(),
            extra_arguments: Vec::new(),
        }
    }
}

impl ros2_client::Message for LoadNodeReq {}



#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct LoadNodeRes {
    pub success: bool,
    pub error_message: ::std::string::String,
    pub full_node_name: ::std::string::String,
    pub unique_id: u64,
}

impl Default for LoadNodeRes {
    fn default() -> Self {
        LoadNodeRes {
            success: false,
            error_message: ::std::string::String::new(),
            full_node_name: ::std::string::String::new(),
            unique_id: 0,
        }
    }
}

impl ros2_client::Message for LoadNodeRes {}


pub struct LoadNode;
impl ros2_client::Service for LoadNode {
    type Request = LoadNodeReq;
    type Response = LoadNodeRes;

    fn request_type_name(&self) -> &str { "LoadNodeReq" }
    fn response_type_name(&self) -> &str { "LoadNodeRes" }
}