// This file is @generated by prost-build.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TargetA {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub can_id: u32,
    #[prost(message, optional, tag = "3")]
    pub stamp: ::core::option::Option<super::super::builtin_interfaces::msg::Time>,
    #[prost(uint32, tag = "4")]
    pub id: u32,
    #[prost(double, tag = "5")]
    pub radial_distance: f64,
    #[prost(double, tag = "6")]
    pub radial_velocity: f64,
    #[prost(double, tag = "7")]
    pub reflected_power: f64,
    #[prost(double, tag = "8")]
    pub azimuth_angle: f64,
    #[prost(bool, tag = "9")]
    pub measured: bool,
}
impl ::prost::Name for TargetA {
    const NAME: &'static str = "TargetA";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.off_highway_general_purpose_radar_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.off_highway_general_purpose_radar_msgs.msg.TargetA"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.off_highway_general_purpose_radar_msgs.msg.TargetA"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TargetB {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub can_id: u32,
    #[prost(message, optional, tag = "3")]
    pub stamp: ::core::option::Option<super::super::builtin_interfaces::msg::Time>,
    #[prost(uint32, tag = "4")]
    pub id: u32,
    #[prost(double, tag = "5")]
    pub azimuth_angle_std: f64,
    #[prost(double, tag = "6")]
    pub radial_velocity_std: f64,
    #[prost(double, tag = "7")]
    pub radial_distance_std: f64,
    #[prost(double, tag = "8")]
    pub exist_probability: f64,
    #[prost(double, tag = "9")]
    pub time_since_meas: f64,
}
impl ::prost::Name for TargetB {
    const NAME: &'static str = "TargetB";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.off_highway_general_purpose_radar_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.off_highway_general_purpose_radar_msgs.msg.TargetB"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.off_highway_general_purpose_radar_msgs.msg.TargetB"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Target {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(message, optional, tag = "2")]
    pub ros2_header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "3")]
    pub a: ::core::option::Option<TargetA>,
    #[prost(message, optional, tag = "4")]
    pub b: ::core::option::Option<TargetB>,
}
impl ::prost::Name for Target {
    const NAME: &'static str = "Target";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.off_highway_general_purpose_radar_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.off_highway_general_purpose_radar_msgs.msg.Target"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.off_highway_general_purpose_radar_msgs.msg.Target"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Targets {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(message, optional, tag = "2")]
    pub ros2_header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, repeated, tag = "3")]
    pub targets: ::prost::alloc::vec::Vec<Target>,
}
impl ::prost::Name for Targets {
    const NAME: &'static str = "Targets";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.off_highway_general_purpose_radar_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.off_highway_general_purpose_radar_msgs.msg.Targets"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.off_highway_general_purpose_radar_msgs.msg.Targets"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Information {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(message, optional, tag = "2")]
    pub ros2_header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "3")]
    pub sensor_type: u32,
    #[prost(double, tag = "4")]
    pub hw_temperature: f64,
    #[prost(bool, tag = "5")]
    pub sensor_blind: bool,
    #[prost(bool, tag = "6")]
    pub sw_fail: bool,
    #[prost(bool, tag = "7")]
    pub hw_fail: bool,
    #[prost(bool, tag = "8")]
    pub can_fail: bool,
    #[prost(bool, tag = "9")]
    pub config_fail: bool,
    #[prost(bool, tag = "10")]
    pub diag_mode: bool,
    #[prost(uint32, tag = "11")]
    pub dtc: u32,
    #[prost(uint32, tag = "12")]
    pub dtc_order_id: u32,
    #[prost(bool, tag = "13")]
    pub sensor_not_safe: bool,
}
impl ::prost::Name for Information {
    const NAME: &'static str = "Information";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.off_highway_general_purpose_radar_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.off_highway_general_purpose_radar_msgs.msg.Information"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.off_highway_general_purpose_radar_msgs.msg.Information"
            .into()
    }
}
