// This file is @generated by prost-build.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Echo {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub amplitude: u32,
    #[prost(uint32, tag = "3")]
    pub distance: u32,
}
impl ::prost::Name for Echo {
    const NAME: &'static str = "Echo";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.off_highway_uss_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.off_highway_uss_msgs.msg.Echo".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.off_highway_uss_msgs.msg.Echo".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MaxDetectionRange {
    #[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(float, repeated, tag = "3")]
    pub max_detection_ranges: ::prost::alloc::vec::Vec<f32>,
}
impl ::prost::Name for MaxDetectionRange {
    const NAME: &'static str = "MaxDetectionRange";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.off_highway_uss_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.off_highway_uss_msgs.msg.MaxDetectionRange".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.off_highway_uss_msgs.msg.MaxDetectionRange".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Object {
    #[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 id: u32,
    #[prost(message, optional, tag = "4")]
    pub position_first: ::core::option::Option<super::super::geometry_msgs::msg::Point>,
    #[prost(double, tag = "5")]
    pub exist_probability: f64,
    #[prost(message, optional, tag = "6")]
    pub position_second: ::core::option::Option<super::super::geometry_msgs::msg::Point>,
    #[prost(uint32, tag = "7")]
    pub object_type: u32,
}
impl ::prost::Name for Object {
    const NAME: &'static str = "Object";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.off_highway_uss_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.off_highway_uss_msgs.msg.Object".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.off_highway_uss_msgs.msg.Object".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Objects {
    #[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 objects: ::prost::alloc::vec::Vec<Object>,
}
impl ::prost::Name for Objects {
    const NAME: &'static str = "Objects";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.off_highway_uss_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.off_highway_uss_msgs.msg.Objects".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.off_highway_uss_msgs.msg.Objects".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DirectEcho {
    #[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 id: u32,
    #[prost(message, optional, tag = "4")]
    pub first: ::core::option::Option<Echo>,
    #[prost(message, optional, tag = "5")]
    pub first_filtered: ::core::option::Option<Echo>,
    #[prost(message, optional, tag = "6")]
    pub second: ::core::option::Option<Echo>,
}
impl ::prost::Name for DirectEcho {
    const NAME: &'static str = "DirectEcho";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.off_highway_uss_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.off_highway_uss_msgs.msg.DirectEcho".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.off_highway_uss_msgs.msg.DirectEcho".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DirectEchos {
    #[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 direct_echos: ::prost::alloc::vec::Vec<DirectEcho>,
}
impl ::prost::Name for DirectEchos {
    const NAME: &'static str = "DirectEchos";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.off_highway_uss_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.off_highway_uss_msgs.msg.DirectEchos".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.off_highway_uss_msgs.msg.DirectEchos".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 number_sensors: u32,
    #[prost(uint32, tag = "4")]
    pub sending_pattern: u32,
    #[prost(uint32, tag = "5")]
    pub operating_mode: u32,
    #[prost(double, tag = "6")]
    pub outside_temperature: f64,
    #[prost(uint32, tag = "7")]
    pub sensor_blindness: u32,
    #[prost(uint32, tag = "8")]
    pub sensitivity: u32,
    #[prost(uint32, tag = "9")]
    pub sensor_faulted: u32,
    #[prost(bool, tag = "10")]
    pub failure_status: bool,
}
impl ::prost::Name for Information {
    const NAME: &'static str = "Information";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.off_highway_uss_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.off_highway_uss_msgs.msg.Information".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.off_highway_uss_msgs.msg.Information".into()
    }
}
