// This file is @generated by prost-build.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ModuleState {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(string, tag = "2")]
    pub name: ::prost::alloc::string::String,
    #[prost(string, tag = "3")]
    pub state: ::prost::alloc::string::String,
    #[prost(string, tag = "4")]
    pub info: ::prost::alloc::string::String,
}
impl ::prost::Name for ModuleState {
    const NAME: &'static str = "ModuleState";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.automotive_navigation_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.automotive_navigation_msgs.msg.ModuleState".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.automotive_navigation_msgs.msg.ModuleState".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LaneBoundary {
    #[prost(uint32, tag = "1")]
    pub style: u32,
    #[prost(uint32, tag = "2")]
    pub color: u32,
    #[prost(message, repeated, tag = "3")]
    pub line: ::prost::alloc::vec::Vec<super::super::geometry_msgs::msg::Point>,
}
impl ::prost::Name for LaneBoundary {
    const NAME: &'static str = "LaneBoundary";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.automotive_navigation_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.automotive_navigation_msgs.msg.LaneBoundary".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.automotive_navigation_msgs.msg.LaneBoundary"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandWithHandshake {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "2")]
    pub msg_counter: u32,
    #[prost(int32, tag = "3")]
    pub command: i32,
}
impl ::prost::Name for CommandWithHandshake {
    const NAME: &'static str = "CommandWithHandshake";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.automotive_navigation_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.automotive_navigation_msgs.msg.CommandWithHandshake"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.automotive_navigation_msgs.msg.CommandWithHandshake"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PointOfInterest {
    #[prost(uint64, tag = "1")]
    pub guid: u64,
    #[prost(double, tag = "2")]
    pub latitude: f64,
    #[prost(double, tag = "3")]
    pub longitude: f64,
    #[prost(string, tag = "4")]
    pub params: ::prost::alloc::string::String,
}
impl ::prost::Name for PointOfInterest {
    const NAME: &'static str = "PointOfInterest";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.automotive_navigation_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.automotive_navigation_msgs.msg.PointOfInterest"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.automotive_navigation_msgs.msg.PointOfInterest"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PointOfInterestArray {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "2")]
    pub update_num: u32,
    #[prost(message, repeated, tag = "3")]
    pub point_list: ::prost::alloc::vec::Vec<PointOfInterest>,
}
impl ::prost::Name for PointOfInterestArray {
    const NAME: &'static str = "PointOfInterestArray";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.automotive_navigation_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.automotive_navigation_msgs.msg.PointOfInterestArray"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.automotive_navigation_msgs.msg.PointOfInterestArray"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PointOfInterestRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(string, tag = "2")]
    pub name: ::prost::alloc::string::String,
    #[prost(string, tag = "3")]
    pub module_name: ::prost::alloc::string::String,
    #[prost(uint32, tag = "4")]
    pub request_id: u32,
    #[prost(uint32, tag = "5")]
    pub cancel: u32,
    #[prost(uint32, tag = "6")]
    pub update_num: u32,
    #[prost(uint32, tag = "7")]
    pub guid_valid: u32,
    #[prost(uint64, tag = "8")]
    pub guid: u64,
    #[prost(float, tag = "9")]
    pub tolerance: f32,
}
impl ::prost::Name for PointOfInterestRequest {
    const NAME: &'static str = "PointOfInterestRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.automotive_navigation_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.automotive_navigation_msgs.msg.PointOfInterestRequest"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.automotive_navigation_msgs.msg.PointOfInterestRequest"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PointOfInterestStatus {
    #[prost(uint64, tag = "1")]
    pub guid: u64,
    #[prost(float, tag = "2")]
    pub distance: f32,
    #[prost(float, tag = "3")]
    pub heading: f32,
    #[prost(float, tag = "4")]
    pub x_position: f32,
    #[prost(float, tag = "5")]
    pub y_position: f32,
    #[prost(string, tag = "6")]
    pub params: ::prost::alloc::string::String,
}
impl ::prost::Name for PointOfInterestStatus {
    const NAME: &'static str = "PointOfInterestStatus";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.automotive_navigation_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.automotive_navigation_msgs.msg.PointOfInterestStatus"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.automotive_navigation_msgs.msg.PointOfInterestStatus"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PointOfInterestResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(string, tag = "2")]
    pub name: ::prost::alloc::string::String,
    #[prost(string, tag = "3")]
    pub module_name: ::prost::alloc::string::String,
    #[prost(uint32, tag = "4")]
    pub request_id: u32,
    #[prost(uint32, tag = "5")]
    pub update_num: u32,
    #[prost(message, repeated, tag = "6")]
    pub point_statuses: ::prost::alloc::vec::Vec<PointOfInterestStatus>,
}
impl ::prost::Name for PointOfInterestResponse {
    const NAME: &'static str = "PointOfInterestResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.automotive_navigation_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.automotive_navigation_msgs.msg.PointOfInterestResponse"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.automotive_navigation_msgs.msg.PointOfInterestResponse"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DistanceToDestination {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "2")]
    pub msg_counter: u32,
    #[prost(float, tag = "3")]
    pub distance: f32,
}
impl ::prost::Name for DistanceToDestination {
    const NAME: &'static str = "DistanceToDestination";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.automotive_navigation_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.automotive_navigation_msgs.msg.DistanceToDestination"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.automotive_navigation_msgs.msg.DistanceToDestination"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LaneBoundaryArray {
    #[prost(message, repeated, tag = "1")]
    pub boundaries: ::prost::alloc::vec::Vec<LaneBoundary>,
}
impl ::prost::Name for LaneBoundaryArray {
    const NAME: &'static str = "LaneBoundaryArray";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.automotive_navigation_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.automotive_navigation_msgs.msg.LaneBoundaryArray"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.automotive_navigation_msgs.msg.LaneBoundaryArray"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RoadNetworkBoundaries {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, repeated, tag = "2")]
    pub road_network_boundaries: ::prost::alloc::vec::Vec<LaneBoundaryArray>,
}
impl ::prost::Name for RoadNetworkBoundaries {
    const NAME: &'static str = "RoadNetworkBoundaries";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.automotive_navigation_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.automotive_navigation_msgs.msg.RoadNetworkBoundaries"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.automotive_navigation_msgs.msg.RoadNetworkBoundaries"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DesiredDestination {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "2")]
    pub msg_counter: u32,
    #[prost(uint32, tag = "3")]
    pub valid: u32,
    #[prost(double, tag = "4")]
    pub latitude: f64,
    #[prost(double, tag = "5")]
    pub longitude: f64,
}
impl ::prost::Name for DesiredDestination {
    const NAME: &'static str = "DesiredDestination";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.automotive_navigation_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.automotive_navigation_msgs.msg.DesiredDestination"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.automotive_navigation_msgs.msg.DesiredDestination"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Direction {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(int32, tag = "2")]
    pub direction: i32,
}
impl ::prost::Name for Direction {
    const NAME: &'static str = "Direction";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.automotive_navigation_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.automotive_navigation_msgs.msg.Direction".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.automotive_navigation_msgs.msg.Direction".into()
    }
}
