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 HazardStatus {
    pub level: u8,
    pub emergency: bool,
    pub emergency_holding: bool,
    pub diag_no_fault: Vec<crate::diagnostic_msgs::msg::DiagnosticStatus>,
    pub diag_safe_fault: Vec<crate::diagnostic_msgs::msg::DiagnosticStatus>,
    pub diag_latent_fault: Vec<crate::diagnostic_msgs::msg::DiagnosticStatus>,
    pub diag_single_point_fault: Vec<crate::diagnostic_msgs::msg::DiagnosticStatus>,
}

impl HazardStatus {
    pub const NO_FAULT: u8 = 0;
    pub const SAFE_FAULT: u8 = 1;
    pub const LATENT_FAULT: u8 = 2;
    pub const SINGLE_POINT_FAULT: u8 = 3;
}

impl Default for HazardStatus {
    fn default() -> Self {
        HazardStatus {
            level: 0,
            emergency: false,
            emergency_holding: false,
            diag_no_fault: Vec::new(),
            diag_safe_fault: Vec::new(),
            diag_latent_fault: Vec::new(),
            diag_single_point_fault: Vec::new(),
        }
    }
}

impl ros2_client::Message for HazardStatus {}