// This file is @generated by prost-build.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LkaReferencePoints {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(double, tag = "2")]
    pub ref_point_1_position: f64,
    #[prost(double, tag = "3")]
    pub ref_point_1_distance: f64,
    #[prost(bool, tag = "4")]
    pub ref_point_1_validity: bool,
    #[prost(double, tag = "5")]
    pub ref_point_2_position: f64,
    #[prost(double, tag = "6")]
    pub ref_point_2_distance: f64,
    #[prost(bool, tag = "7")]
    pub ref_point_2_validity: bool,
}
impl ::prost::Name for LkaReferencePoints {
    const NAME: &'static str = "LkaReferencePoints";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.LkaReferencePoints"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.LkaReferencePoints"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TsrVisionOnly {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "2")]
    pub vision_only_sign_type_display1: u32,
    #[prost(uint32, tag = "3")]
    pub vision_only_supplementary_sign_type_display1: u32,
    #[prost(uint32, tag = "4")]
    pub vision_only_sign_type_display2: u32,
    #[prost(uint32, tag = "5")]
    pub vision_only_supplementary_sign_type_display2: u32,
    #[prost(uint32, tag = "6")]
    pub vision_only_sign_type_display3: u32,
    #[prost(uint32, tag = "7")]
    pub vision_only_supplementary_sign_type_display3: u32,
    #[prost(uint32, tag = "8")]
    pub vision_only_sign_type_display4: u32,
    #[prost(uint32, tag = "9")]
    pub vision_only_supplementary_sign_type_display4: u32,
}
impl ::prost::Name for TsrVisionOnly {
    const NAME: &'static str = "TsrVisionOnly";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.TsrVisionOnly".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.TsrVisionOnly".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ObstacleData {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "2")]
    pub obstacle_id: u32,
    #[prost(double, tag = "3")]
    pub obstacle_pos_x: f64,
    #[prost(double, tag = "4")]
    pub obstacle_pos_y: f64,
    #[prost(uint32, tag = "5")]
    pub blinker_info: u32,
    #[prost(uint32, tag = "6")]
    pub cut_in_and_out: u32,
    #[prost(double, tag = "7")]
    pub obstacle_rel_vel_x: f64,
    #[prost(uint32, tag = "8")]
    pub obstacle_type: u32,
    #[prost(uint32, tag = "9")]
    pub obstacle_status: u32,
    #[prost(bool, tag = "10")]
    pub obstacle_brake_lights: bool,
    #[prost(uint32, tag = "11")]
    pub obstacle_valid: u32,
    #[prost(float, tag = "12")]
    pub obstacle_length: f32,
    #[prost(float, tag = "13")]
    pub obstacle_width: f32,
    #[prost(uint32, tag = "14")]
    pub obstacle_age: u32,
    #[prost(uint32, tag = "15")]
    pub obstacle_lane: u32,
    #[prost(bool, tag = "16")]
    pub cipv_flag: bool,
    #[prost(float, tag = "17")]
    pub radar_pos_x: f32,
    #[prost(float, tag = "18")]
    pub radar_vel_x: f32,
    #[prost(uint32, tag = "19")]
    pub radar_match_confidence: u32,
    #[prost(uint32, tag = "20")]
    pub matched_radar_id: u32,
    #[prost(float, tag = "21")]
    pub obstacle_angle_rate: f32,
    #[prost(double, tag = "22")]
    pub obstacle_scale_change: f64,
    #[prost(float, tag = "23")]
    pub object_accel_x: f32,
    #[prost(bool, tag = "24")]
    pub obstacle_replaced: bool,
    #[prost(float, tag = "25")]
    pub obstacle_angle: f32,
}
impl ::prost::Name for ObstacleData {
    const NAME: &'static str = "ObstacleData";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.ObstacleData".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.ObstacleData".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AftermarketLane {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "2")]
    pub lane_confidence_left: u32,
    #[prost(bool, tag = "3")]
    pub ldw_available_left: bool,
    #[prost(uint32, tag = "4")]
    pub lane_type_left: u32,
    #[prost(float, tag = "5")]
    pub distance_to_left_lane: f32,
    #[prost(uint32, tag = "6")]
    pub lane_confidence_right: u32,
    #[prost(bool, tag = "7")]
    pub ldw_available_right: bool,
    #[prost(uint32, tag = "8")]
    pub lane_type_right: u32,
    #[prost(float, tag = "9")]
    pub distance_to_right_lane: f32,
}
impl ::prost::Name for AftermarketLane {
    const NAME: &'static str = "AftermarketLane";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.AftermarketLane".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.AftermarketLane".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LkaLane {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "2")]
    pub lane_type: u32,
    #[prost(uint32, tag = "3")]
    pub quality: u32,
    #[prost(uint32, tag = "4")]
    pub model_degree: u32,
    #[prost(double, tag = "5")]
    pub position_parameter_c0: f64,
    #[prost(double, tag = "6")]
    pub curvature_parameter_c2: f64,
    #[prost(double, tag = "7")]
    pub curvature_derivative_parameter_c3: f64,
    #[prost(float, tag = "8")]
    pub marking_width: f32,
    #[prost(double, tag = "9")]
    pub heading_angle_parameter_c1: f64,
    #[prost(float, tag = "10")]
    pub view_range: f32,
    #[prost(bool, tag = "11")]
    pub view_range_availability: bool,
}
impl ::prost::Name for LkaLane {
    const NAME: &'static str = "LkaLane";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.LkaLane".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.LkaLane".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AhbcGradual {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(float, tag = "2")]
    pub boundary_domain_bottom_non_glare_hlb: f32,
    #[prost(float, tag = "3")]
    pub boundary_domain_non_glare_left_hand_hlb: f32,
    #[prost(float, tag = "4")]
    pub boundary_domain_non_glare_right_hand_hlb: f32,
    #[prost(uint32, tag = "5")]
    pub object_distance_hlb: u32,
    #[prost(uint32, tag = "6")]
    pub status_boundary_domain_bottom_non_glare_hlb: u32,
    #[prost(uint32, tag = "7")]
    pub status_boundary_domain_non_glare_left_hand_hlb: u32,
    #[prost(uint32, tag = "8")]
    pub status_boundary_domain_non_glare_right_hand_hlb: u32,
    #[prost(uint32, tag = "9")]
    pub status_object_distance_hlb: u32,
    #[prost(bool, tag = "10")]
    pub left_target_change: bool,
    #[prost(bool, tag = "11")]
    pub right_target_change: bool,
    #[prost(bool, tag = "12")]
    pub too_many_cars: bool,
    #[prost(bool, tag = "13")]
    pub busy_scene: bool,
}
impl ::prost::Name for AhbcGradual {
    const NAME: &'static str = "AhbcGradual";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.AhbcGradual".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.AhbcGradual".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LkaNumOfNextLaneMarkersReported {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "2")]
    pub num_of_next_lane_markers_reported: u32,
}
impl ::prost::Name for LkaNumOfNextLaneMarkersReported {
    const NAME: &'static str = "LkaNumOfNextLaneMarkersReported";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.LkaNumOfNextLaneMarkersReported"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.LkaNumOfNextLaneMarkersReported"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AwsDisplay {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(bool, tag = "2")]
    pub suppress_sound: bool,
    #[prost(bool, tag = "3")]
    pub night_time: bool,
    #[prost(bool, tag = "4")]
    pub dusk_time: bool,
    #[prost(uint32, tag = "5")]
    pub sound_type: u32,
    #[prost(bool, tag = "6")]
    pub headway_valid: bool,
    #[prost(float, tag = "7")]
    pub headway_measurement: f32,
    #[prost(bool, tag = "8")]
    pub lanes_on: bool,
    #[prost(bool, tag = "9")]
    pub left_ldw_on: bool,
    #[prost(bool, tag = "10")]
    pub right_ldw_on: bool,
    #[prost(bool, tag = "11")]
    pub fcw_on: bool,
    #[prost(bool, tag = "12")]
    pub left_crossing: bool,
    #[prost(bool, tag = "13")]
    pub right_crossing: bool,
    #[prost(bool, tag = "14")]
    pub maintenance: bool,
    #[prost(bool, tag = "15")]
    pub failsafe: bool,
    #[prost(bool, tag = "16")]
    pub ped_fcw: bool,
    #[prost(bool, tag = "17")]
    pub ped_in_dz: bool,
    #[prost(uint32, tag = "18")]
    pub headway_warning_level: u32,
}
impl ::prost::Name for AwsDisplay {
    const NAME: &'static str = "AwsDisplay";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.AwsDisplay".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.AwsDisplay".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Tsr {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "2")]
    pub vision_only_sign_type: u32,
    #[prost(uint32, tag = "3")]
    pub vision_only_supplementary_sign_type: u32,
    #[prost(float, tag = "4")]
    pub sign_position_x: f32,
    #[prost(float, tag = "5")]
    pub sign_position_y: f32,
    #[prost(float, tag = "6")]
    pub sign_position_z: f32,
    #[prost(uint32, tag = "7")]
    pub filter_type: u32,
}
impl ::prost::Name for Tsr {
    const NAME: &'static str = "Tsr";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.Tsr".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.Tsr".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Lane {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(double, tag = "2")]
    pub lane_curvature: f64,
    #[prost(double, tag = "3")]
    pub lane_heading: f64,
    #[prost(bool, tag = "4")]
    pub construction_area: bool,
    #[prost(double, tag = "5")]
    pub pitch_angle: f64,
    #[prost(double, tag = "6")]
    pub yaw_angle: f64,
    #[prost(bool, tag = "7")]
    pub right_ldw_availability: bool,
    #[prost(bool, tag = "8")]
    pub left_ldw_availability: bool,
}
impl ::prost::Name for Lane {
    const NAME: &'static str = "Lane";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.Lane".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.Lane".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FixedFoe {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(double, tag = "2")]
    pub fixed_yaw: f64,
    #[prost(double, tag = "3")]
    pub fixed_horizon: f64,
}
impl ::prost::Name for FixedFoe {
    const NAME: &'static str = "FixedFoe";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.FixedFoe".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.FixedFoe".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ObstacleStatus {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "2")]
    pub num_obstacles: u32,
    #[prost(uint32, tag = "3")]
    pub timestamp: u32,
    #[prost(uint32, tag = "4")]
    pub application_version: u32,
    #[prost(uint32, tag = "5")]
    pub active_version_number_section: u32,
    #[prost(bool, tag = "6")]
    pub left_close_range_cut_in: bool,
    #[prost(bool, tag = "7")]
    pub right_close_range_cut_in: bool,
    #[prost(uint32, tag = "8")]
    pub stop_go: u32,
    #[prost(uint32, tag = "9")]
    pub protocol_version: u32,
    #[prost(bool, tag = "10")]
    pub close_car: bool,
    #[prost(uint32, tag = "11")]
    pub failsafe: u32,
}
impl ::prost::Name for ObstacleStatus {
    const NAME: &'static str = "ObstacleStatus";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.ObstacleStatus".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.ObstacleStatus".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ahbc {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "2")]
    pub high_low_beam_decision: u32,
    #[prost(uint32, tag = "3")]
    pub reasons_for_switch_to_low_beam: u32,
}
impl ::prost::Name for Ahbc {
    const NAME: &'static str = "Ahbc";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.Ahbc".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.mobileye_560_660_msgs.msg.Ahbc".into()
    }
}
