// This file is @generated by prost-build.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GearDiagnostics {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(bool, tag = "2")]
    pub degraded: bool,
    #[prost(bool, tag = "3")]
    pub degraded_cmd_type: bool,
    #[prost(bool, tag = "4")]
    pub degraded_comms: bool,
    #[prost(bool, tag = "5")]
    pub degraded_comms_dbw: bool,
    #[prost(bool, tag = "6")]
    pub degraded_comms_dbw_gateway: bool,
    #[prost(bool, tag = "7")]
    pub degraded_comms_dbw_steer: bool,
    #[prost(bool, tag = "8")]
    pub degraded_comms_dbw_brake: bool,
    #[prost(bool, tag = "9")]
    pub degraded_comms_dbw_thrtl: bool,
    #[prost(bool, tag = "10")]
    pub degraded_comms_vehicle: bool,
    #[prost(bool, tag = "11")]
    pub degraded_comms_vehicle_1: bool,
    #[prost(bool, tag = "12")]
    pub degraded_comms_vehicle_2: bool,
    #[prost(bool, tag = "13")]
    pub degraded_comms_actuator: bool,
    #[prost(bool, tag = "14")]
    pub degraded_comms_actuator_1: bool,
    #[prost(bool, tag = "15")]
    pub degraded_comms_actuator_2: bool,
    #[prost(bool, tag = "16")]
    pub degraded_internal: bool,
    #[prost(bool, tag = "17")]
    pub degraded_control_performance: bool,
    #[prost(bool, tag = "18")]
    pub degraded_param_mismatch: bool,
    #[prost(bool, tag = "19")]
    pub degraded_vehicle: bool,
    #[prost(bool, tag = "20")]
    pub degraded_vehicle_speed: bool,
    #[prost(bool, tag = "21")]
    pub degraded_actuator: bool,
    #[prost(bool, tag = "22")]
    pub degraded_gear_mismatch: bool,
    #[prost(bool, tag = "23")]
    pub degraded_power: bool,
    #[prost(bool, tag = "24")]
    pub degraded_calibration: bool,
    #[prost(bool, tag = "25")]
    pub fault: bool,
    #[prost(bool, tag = "26")]
    pub fault_power: bool,
    #[prost(bool, tag = "27")]
    pub fault_comms: bool,
    #[prost(bool, tag = "28")]
    pub fault_comms_dbw: bool,
    #[prost(bool, tag = "29")]
    pub fault_comms_dbw_gateway: bool,
    #[prost(bool, tag = "30")]
    pub fault_comms_dbw_steer: bool,
    #[prost(bool, tag = "31")]
    pub fault_comms_dbw_brake: bool,
    #[prost(bool, tag = "32")]
    pub fault_comms_dbw_thrtl: bool,
    #[prost(bool, tag = "33")]
    pub fault_comms_vehicle: bool,
    #[prost(bool, tag = "34")]
    pub fault_comms_vehicle_1: bool,
    #[prost(bool, tag = "35")]
    pub fault_comms_vehicle_2: bool,
    #[prost(bool, tag = "36")]
    pub fault_comms_actuator: bool,
    #[prost(bool, tag = "37")]
    pub fault_comms_actuator_1: bool,
    #[prost(bool, tag = "38")]
    pub fault_comms_actuator_2: bool,
    #[prost(bool, tag = "39")]
    pub fault_internal: bool,
    #[prost(bool, tag = "40")]
    pub fault_vehicle: bool,
    #[prost(bool, tag = "41")]
    pub fault_vehicle_speed: bool,
    #[prost(bool, tag = "42")]
    pub fault_actuator: bool,
    #[prost(bool, tag = "43")]
    pub fault_actuator_config: bool,
    #[prost(bool, tag = "44")]
    pub fault_param_mismatch: bool,
    #[prost(bool, tag = "45")]
    pub fault_calibration: bool,
}
impl ::prost::Name for GearDiagnostics {
    const NAME: &'static str = "GearDiagnostics";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.GearDiagnostics".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.GearDiagnostics".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TrafficSignInfo {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "2")]
    pub status: u32,
    #[prost(bool, tag = "3")]
    pub camera_used: bool,
    #[prost(bool, tag = "4")]
    pub navigation_used: bool,
    #[prost(uint32, tag = "5")]
    pub speed_units: u32,
    #[prost(float, tag = "6")]
    pub speed_limit: f32,
}
impl ::prost::Name for TrafficSignInfo {
    const NAME: &'static str = "TrafficSignInfo";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.TrafficSignInfo".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.TrafficSignInfo".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BrakeCmd {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(float, tag = "2")]
    pub cmd: f32,
    #[prost(float, tag = "3")]
    pub rate_inc: f32,
    #[prost(float, tag = "4")]
    pub rate_dec: f32,
    #[prost(uint32, tag = "5")]
    pub cmd_type: u32,
    #[prost(bool, tag = "6")]
    pub enable: bool,
    #[prost(bool, tag = "7")]
    pub clear: bool,
    #[prost(bool, tag = "8")]
    pub ignore: bool,
}
impl ::prost::Name for BrakeCmd {
    const NAME: &'static str = "BrakeCmd";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.BrakeCmd".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.BrakeCmd".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct WheelPositions {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(int32, tag = "2")]
    pub front_left: i32,
    #[prost(int32, tag = "3")]
    pub front_right: i32,
    #[prost(int32, tag = "4")]
    pub rear_left: i32,
    #[prost(int32, tag = "5")]
    pub rear_right: i32,
}
impl ::prost::Name for WheelPositions {
    const NAME: &'static str = "WheelPositions";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.WheelPositions".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.WheelPositions".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VehicleVelocity {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(float, tag = "2")]
    pub vehicle_velocity_brake: f32,
    #[prost(float, tag = "3")]
    pub vehicle_velocity_propulsion: f32,
    #[prost(uint32, tag = "4")]
    pub dir_src: u32,
}
impl ::prost::Name for VehicleVelocity {
    const NAME: &'static str = "VehicleVelocity";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.VehicleVelocity".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.VehicleVelocity".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UlcCmd {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(float, tag = "2")]
    pub cmd: f32,
    #[prost(float, tag = "3")]
    pub limit_accel: f32,
    #[prost(float, tag = "4")]
    pub limit_decel: f32,
    #[prost(float, tag = "5")]
    pub limit_jerk_throttle: f32,
    #[prost(float, tag = "6")]
    pub limit_jerk_brake: f32,
    #[prost(uint32, tag = "7")]
    pub cmd_type: u32,
    #[prost(bool, tag = "8")]
    pub enable: bool,
    #[prost(bool, tag = "9")]
    pub clear: bool,
    #[prost(bool, tag = "10")]
    pub enable_shift: bool,
    #[prost(bool, tag = "11")]
    pub enable_shift_park: bool,
    #[prost(bool, tag = "12")]
    pub coast_decel: bool,
}
impl ::prost::Name for UlcCmd {
    const NAME: &'static str = "UlcCmd";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.UlcCmd".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.UlcCmd".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ThrottleCmd {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(float, tag = "2")]
    pub cmd: f32,
    #[prost(float, tag = "3")]
    pub rate_inc: f32,
    #[prost(float, tag = "4")]
    pub rate_dec: f32,
    #[prost(uint32, tag = "5")]
    pub cmd_type: u32,
    #[prost(bool, tag = "6")]
    pub enable: bool,
    #[prost(bool, tag = "7")]
    pub clear: bool,
    #[prost(bool, tag = "8")]
    pub ignore: bool,
}
impl ::prost::Name for ThrottleCmd {
    const NAME: &'static str = "ThrottleCmd";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.ThrottleCmd".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.ThrottleCmd".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct WheelSpeeds {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(float, tag = "2")]
    pub front_left: f32,
    #[prost(float, tag = "3")]
    pub front_right: f32,
    #[prost(float, tag = "4")]
    pub rear_left: f32,
    #[prost(float, tag = "5")]
    pub rear_right: f32,
}
impl ::prost::Name for WheelSpeeds {
    const NAME: &'static str = "WheelSpeeds";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.WheelSpeeds".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.WheelSpeeds".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SteeringOffset {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(float, tag = "2")]
    pub steering_wheel_angle: f32,
    #[prost(float, tag = "3")]
    pub steering_wheel_angle_raw: f32,
    #[prost(float, tag = "4")]
    pub steering_wheel_angle_offset: f32,
    #[prost(uint32, tag = "5")]
    pub offset_type: u32,
}
impl ::prost::Name for SteeringOffset {
    const NAME: &'static str = "SteeringOffset";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.SteeringOffset".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.SteeringOffset".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UlcReport {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "2")]
    pub cmd_type: u32,
    #[prost(float, tag = "3")]
    pub vel_ref: f32,
    #[prost(float, tag = "4")]
    pub vel_meas: f32,
    #[prost(float, tag = "5")]
    pub accel_ref: f32,
    #[prost(float, tag = "6")]
    pub accel_meas: f32,
    #[prost(bool, tag = "7")]
    pub coast_decel: bool,
    #[prost(bool, tag = "8")]
    pub ready: bool,
    #[prost(bool, tag = "9")]
    pub enabled: bool,
    #[prost(bool, tag = "10")]
    pub override_active: bool,
    #[prost(bool, tag = "11")]
    pub override_latched: bool,
    #[prost(bool, tag = "12")]
    pub preempted: bool,
    #[prost(bool, tag = "13")]
    pub timeout: bool,
    #[prost(bool, tag = "14")]
    pub bad_crc: bool,
    #[prost(bool, tag = "15")]
    pub bad_rc: bool,
}
impl ::prost::Name for UlcReport {
    const NAME: &'static str = "UlcReport";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.UlcReport".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.UlcReport".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SteeringCmd {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(float, tag = "2")]
    pub cmd: f32,
    #[prost(float, tag = "3")]
    pub cmd_rate: f32,
    #[prost(float, tag = "4")]
    pub cmd_accel: f32,
    #[prost(uint32, tag = "5")]
    pub cmd_type: u32,
    #[prost(bool, tag = "6")]
    pub enable: bool,
    #[prost(bool, tag = "7")]
    pub clear: bool,
    #[prost(bool, tag = "8")]
    pub ignore: bool,
}
impl ::prost::Name for SteeringCmd {
    const NAME: &'static str = "SteeringCmd";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.SteeringCmd".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.SteeringCmd".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FuelLevel {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(float, tag = "2")]
    pub fuel_level: f32,
    #[prost(float, tag = "3")]
    pub fuel_range: f32,
    #[prost(float, tag = "4")]
    pub odometer: f32,
}
impl ::prost::Name for FuelLevel {
    const NAME: &'static str = "FuelLevel";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.FuelLevel".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.FuelLevel".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EcuInfo {
    #[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 version: ::prost::alloc::string::String,
    #[prost(string, tag = "4")]
    pub mac_addr: ::prost::alloc::string::String,
    #[prost(string, tag = "5")]
    pub config_hash: ::prost::alloc::string::String,
    #[prost(uint32, tag = "6")]
    pub config_count_modified: u32,
    #[prost(uint32, tag = "7")]
    pub config_count_configured: u32,
    #[prost(bool, tag = "8")]
    pub config_nvm_blank: bool,
    #[prost(bool, tag = "9")]
    pub config_nvm_write_pending: bool,
    #[prost(string, tag = "10")]
    pub build_date: ::prost::alloc::string::String,
    #[prost(string, tag = "11")]
    pub license_date: ::prost::alloc::string::String,
    #[prost(bool, tag = "12")]
    pub control_licensed: bool,
    #[prost(string, tag = "13")]
    pub log_filename: ::prost::alloc::string::String,
    #[prost(bool, tag = "14")]
    pub log_filesystem_present: bool,
    #[prost(bool, tag = "15")]
    pub log_fault: bool,
}
impl ::prost::Name for EcuInfo {
    const NAME: &'static str = "EcuInfo";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.EcuInfo".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.EcuInfo".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BatteryTraction {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(float, tag = "2")]
    pub state_of_charge: f32,
    #[prost(float, tag = "3")]
    pub voltage: f32,
    #[prost(float, tag = "4")]
    pub current: f32,
    #[prost(float, tag = "5")]
    pub temperature: f32,
    #[prost(uint32, tag = "6")]
    pub status: u32,
}
impl ::prost::Name for BatteryTraction {
    const NAME: &'static str = "BatteryTraction";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.BatteryTraction".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.BatteryTraction".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MonitorCmd {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "2")]
    pub cmd_type: u32,
}
impl ::prost::Name for MonitorCmd {
    const NAME: &'static str = "MonitorCmd";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.MonitorCmd".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.MonitorCmd".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SteeringDiagnostics {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(bool, tag = "2")]
    pub degraded: bool,
    #[prost(bool, tag = "3")]
    pub degraded_cmd_type: bool,
    #[prost(bool, tag = "4")]
    pub degraded_comms: bool,
    #[prost(bool, tag = "5")]
    pub degraded_comms_dbw: bool,
    #[prost(bool, tag = "6")]
    pub degraded_comms_dbw_gateway: bool,
    #[prost(bool, tag = "7")]
    pub degraded_comms_dbw_brake: bool,
    #[prost(bool, tag = "8")]
    pub degraded_comms_dbw_thrtl: bool,
    #[prost(bool, tag = "9")]
    pub degraded_comms_dbw_gear: bool,
    #[prost(bool, tag = "10")]
    pub degraded_comms_vehicle: bool,
    #[prost(bool, tag = "11")]
    pub degraded_comms_actuator: bool,
    #[prost(bool, tag = "12")]
    pub degraded_internal: bool,
    #[prost(bool, tag = "13")]
    pub degraded_control_performance: bool,
    #[prost(bool, tag = "14")]
    pub degraded_param_mismatch: bool,
    #[prost(bool, tag = "15")]
    pub degraded_vehicle: bool,
    #[prost(bool, tag = "16")]
    pub degraded_actuator: bool,
    #[prost(bool, tag = "17")]
    pub degraded_vehicle_speed: bool,
    #[prost(bool, tag = "18")]
    pub degraded_calibration: bool,
    #[prost(bool, tag = "19")]
    pub fault: bool,
    #[prost(bool, tag = "20")]
    pub fault_power: bool,
    #[prost(bool, tag = "21")]
    pub fault_comms: bool,
    #[prost(bool, tag = "22")]
    pub fault_comms_dbw: bool,
    #[prost(bool, tag = "23")]
    pub fault_comms_dbw_gateway: bool,
    #[prost(bool, tag = "24")]
    pub fault_comms_dbw_brake: bool,
    #[prost(bool, tag = "25")]
    pub fault_comms_dbw_thrtl: bool,
    #[prost(bool, tag = "26")]
    pub fault_comms_dbw_gear: bool,
    #[prost(bool, tag = "27")]
    pub fault_comms_vehicle: bool,
    #[prost(bool, tag = "28")]
    pub fault_comms_actuator: bool,
    #[prost(bool, tag = "29")]
    pub fault_internal: bool,
    #[prost(bool, tag = "30")]
    pub fault_vehicle: bool,
    #[prost(bool, tag = "31")]
    pub fault_vehicle_speed: bool,
    #[prost(bool, tag = "32")]
    pub fault_angle_sensor: bool,
    #[prost(bool, tag = "33")]
    pub fault_torque_sensor_1: bool,
    #[prost(bool, tag = "34")]
    pub fault_torque_sensor_2: bool,
    #[prost(bool, tag = "35")]
    pub fault_torque_sensor_mismatch: bool,
    #[prost(bool, tag = "36")]
    pub fault_actuator: bool,
    #[prost(bool, tag = "37")]
    pub fault_actuator_torque_sensor: bool,
    #[prost(bool, tag = "38")]
    pub fault_actuator_config: bool,
    #[prost(bool, tag = "39")]
    pub fault_actuator_assist: bool,
    #[prost(bool, tag = "40")]
    pub fault_control_performance: bool,
    #[prost(bool, tag = "41")]
    pub fault_param_mismatch: bool,
    #[prost(bool, tag = "42")]
    pub fault_param_limits: bool,
    #[prost(bool, tag = "43")]
    pub fault_calibration: bool,
}
impl ::prost::Name for SteeringDiagnostics {
    const NAME: &'static str = "SteeringDiagnostics";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.SteeringDiagnostics".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.SteeringDiagnostics".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BrakeDiagnostics {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(bool, tag = "2")]
    pub degraded: bool,
    #[prost(bool, tag = "3")]
    pub degraded_cmd_type: bool,
    #[prost(bool, tag = "4")]
    pub degraded_comms: bool,
    #[prost(bool, tag = "5")]
    pub degraded_comms_dbw: bool,
    #[prost(bool, tag = "6")]
    pub degraded_comms_dbw_gateway: bool,
    #[prost(bool, tag = "7")]
    pub degraded_comms_dbw_steer: bool,
    #[prost(bool, tag = "8")]
    pub degraded_comms_dbw_thrtl: bool,
    #[prost(bool, tag = "9")]
    pub degraded_comms_dbw_gear: bool,
    #[prost(bool, tag = "10")]
    pub degraded_comms_vehicle: bool,
    #[prost(bool, tag = "11")]
    pub degraded_comms_actuator: bool,
    #[prost(bool, tag = "12")]
    pub degraded_comms_actuator_1: bool,
    #[prost(bool, tag = "13")]
    pub degraded_comms_actuator_2: bool,
    #[prost(bool, tag = "14")]
    pub degraded_internal: bool,
    #[prost(bool, tag = "15")]
    pub degraded_control_performance: bool,
    #[prost(bool, tag = "16")]
    pub degraded_param_mismatch: bool,
    #[prost(bool, tag = "17")]
    pub degraded_btsi_stuck_low: bool,
    #[prost(bool, tag = "18")]
    pub degraded_btsi_stuck_high: bool,
    #[prost(bool, tag = "19")]
    pub degraded_vehicle: bool,
    #[prost(bool, tag = "20")]
    pub degraded_vehicle_speed: bool,
    #[prost(bool, tag = "21")]
    pub degraded_bped_feedback: bool,
    #[prost(bool, tag = "22")]
    pub degraded_actuator: bool,
    #[prost(bool, tag = "23")]
    pub degraded_actuator_1: bool,
    #[prost(bool, tag = "24")]
    pub degraded_actuator_2: bool,
    #[prost(bool, tag = "25")]
    pub degraded_actuator_aeb_deny: bool,
    #[prost(bool, tag = "26")]
    pub degraded_actuator_warm: bool,
    #[prost(bool, tag = "27")]
    pub degraded_calibration: bool,
    #[prost(bool, tag = "28")]
    pub fault: bool,
    #[prost(bool, tag = "29")]
    pub fault_power: bool,
    #[prost(bool, tag = "30")]
    pub fault_comms: bool,
    #[prost(bool, tag = "31")]
    pub fault_internal: bool,
    #[prost(bool, tag = "32")]
    pub fault_vehicle: bool,
    #[prost(bool, tag = "33")]
    pub fault_actuator: bool,
    #[prost(bool, tag = "34")]
    pub fault_comms_dbw: bool,
    #[prost(bool, tag = "35")]
    pub fault_comms_dbw_gateway: bool,
    #[prost(bool, tag = "36")]
    pub fault_comms_dbw_steer: bool,
    #[prost(bool, tag = "37")]
    pub fault_comms_dbw_thrtl: bool,
    #[prost(bool, tag = "38")]
    pub fault_comms_dbw_gear: bool,
    #[prost(bool, tag = "39")]
    pub fault_comms_vehicle: bool,
    #[prost(bool, tag = "40")]
    pub fault_comms_actuator: bool,
    #[prost(bool, tag = "41")]
    pub fault_comms_actuator_1: bool,
    #[prost(bool, tag = "42")]
    pub fault_comms_actuator_2: bool,
    #[prost(bool, tag = "43")]
    pub fault_vehicle_speed: bool,
    #[prost(bool, tag = "44")]
    pub fault_actuator_acc_deny: bool,
    #[prost(bool, tag = "45")]
    pub fault_actuator_pedal_sensor: bool,
    #[prost(bool, tag = "46")]
    pub fault_bped_sensor_1: bool,
    #[prost(bool, tag = "47")]
    pub fault_bped_sensor_2: bool,
    #[prost(bool, tag = "48")]
    pub fault_bped_sensor_mismatch: bool,
    #[prost(bool, tag = "49")]
    pub fault_actuator_1: bool,
    #[prost(bool, tag = "50")]
    pub fault_actuator_2: bool,
    #[prost(bool, tag = "51")]
    pub fault_control_performance: bool,
    #[prost(bool, tag = "52")]
    pub fault_param_mismatch: bool,
    #[prost(bool, tag = "53")]
    pub fault_param_limits: bool,
    #[prost(bool, tag = "54")]
    pub fault_calibration: bool,
}
impl ::prost::Name for BrakeDiagnostics {
    const NAME: &'static str = "BrakeDiagnostics";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.BrakeDiagnostics".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.BrakeDiagnostics".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EyeTracker {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(float, tag = "2")]
    pub attention: f32,
    #[prost(uint32, tag = "3")]
    pub gaze: u32,
    #[prost(bool, tag = "4")]
    pub eyes_present: bool,
}
impl ::prost::Name for EyeTracker {
    const NAME: &'static str = "EyeTracker";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.EyeTracker".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.EyeTracker".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TirePressures {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(float, tag = "2")]
    pub front_left: f32,
    #[prost(float, tag = "3")]
    pub front_right: f32,
    #[prost(float, tag = "4")]
    pub rear_left: f32,
    #[prost(float, tag = "5")]
    pub rear_right: f32,
    #[prost(float, tag = "6")]
    pub spare: f32,
}
impl ::prost::Name for TirePressures {
    const NAME: &'static str = "TirePressures";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.TirePressures".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.TirePressures".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MonitorReport {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(bool, tag = "2")]
    pub fault: bool,
    #[prost(bool, tag = "3")]
    pub shutoff: bool,
    #[prost(bool, tag = "4")]
    pub shutoff_on_motion: bool,
    #[prost(bool, tag = "5")]
    pub stationary: bool,
    #[prost(uint32, tag = "6")]
    pub fault_test: u32,
    #[prost(uint32, tag = "7")]
    pub fault_system: u32,
    #[prost(uint32, tag = "8")]
    pub fault_steer: u32,
    #[prost(uint32, tag = "9")]
    pub fault_brake: u32,
    #[prost(uint32, tag = "10")]
    pub fault_thrtl: u32,
    #[prost(uint32, tag = "11")]
    pub fault_gear: u32,
    #[prost(uint32, tag = "12")]
    pub fault_ulc: u32,
    #[prost(uint32, tag = "13")]
    pub fault_vehicle_velocity: u32,
    #[prost(uint32, tag = "14")]
    pub fault_steer_feedback: u32,
    #[prost(uint32, tag = "15")]
    pub fault_steer_input: u32,
    #[prost(uint32, tag = "16")]
    pub fault_steer_param: u32,
    #[prost(uint32, tag = "17")]
    pub fault_steer_limit: u32,
    #[prost(uint32, tag = "18")]
    pub fault_steer_override: u32,
    #[prost(uint32, tag = "19")]
    pub fault_steer_cmd: u32,
    #[prost(uint32, tag = "20")]
    pub fault_steer_cmd_rate: u32,
    #[prost(uint32, tag = "21")]
    pub fault_steer_cmd_en: u32,
    #[prost(uint32, tag = "22")]
    pub fault_steer_cmd_sys: u32,
    #[prost(uint32, tag = "23")]
    pub fault_steer_cmd_ovr: u32,
    #[prost(uint32, tag = "24")]
    pub fault_brake_feedback: u32,
    #[prost(uint32, tag = "25")]
    pub fault_brake_input: u32,
    #[prost(uint32, tag = "26")]
    pub fault_brake_param: u32,
    #[prost(uint32, tag = "27")]
    pub fault_brake_limit: u32,
    #[prost(uint32, tag = "28")]
    pub fault_brake_override: u32,
    #[prost(uint32, tag = "29")]
    pub fault_brake_cmd: u32,
    #[prost(uint32, tag = "30")]
    pub fault_brake_cmd_ulc: u32,
    #[prost(uint32, tag = "31")]
    pub fault_brake_cmd_en: u32,
    #[prost(uint32, tag = "32")]
    pub fault_brake_cmd_sys: u32,
    #[prost(uint32, tag = "33")]
    pub fault_brake_cmd_ovr: u32,
    #[prost(uint32, tag = "34")]
    pub fault_thrtl_feedback: u32,
    #[prost(uint32, tag = "35")]
    pub fault_thrtl_input: u32,
    #[prost(uint32, tag = "36")]
    pub fault_thrtl_param: u32,
    #[prost(uint32, tag = "37")]
    pub fault_thrtl_limit: u32,
    #[prost(uint32, tag = "38")]
    pub fault_thrtl_override: u32,
    #[prost(uint32, tag = "39")]
    pub fault_thrtl_cmd: u32,
    #[prost(uint32, tag = "40")]
    pub fault_thrtl_cmd_ulc: u32,
    #[prost(uint32, tag = "41")]
    pub fault_thrtl_cmd_en: u32,
    #[prost(uint32, tag = "42")]
    pub fault_thrtl_cmd_sys: u32,
    #[prost(uint32, tag = "43")]
    pub fault_thrtl_cmd_ovr: u32,
    #[prost(uint32, tag = "44")]
    pub fault_gear_feedback: u32,
    #[prost(uint32, tag = "45")]
    pub fault_gear_input: u32,
    #[prost(uint32, tag = "46")]
    pub fault_gear_param: u32,
    #[prost(uint32, tag = "47")]
    pub fault_gear_override: u32,
    #[prost(uint32, tag = "48")]
    pub fault_gear_cmd: u32,
    #[prost(uint32, tag = "49")]
    pub fault_gear_cmd_ulc: u32,
    #[prost(uint32, tag = "50")]
    pub fault_system_param: u32,
    #[prost(bool, tag = "51")]
    pub steer_cmd_match_oem: bool,
    #[prost(bool, tag = "52")]
    pub steer_cmd_match_dbw: bool,
    #[prost(bool, tag = "53")]
    pub brake_cmd_match_oem: bool,
    #[prost(bool, tag = "54")]
    pub brake_cmd_match_dbw: bool,
    #[prost(bool, tag = "55")]
    pub thrtl_cmd_match_oem: bool,
    #[prost(bool, tag = "56")]
    pub thrtl_cmd_match_dbw: bool,
    #[prost(bool, tag = "57")]
    pub gear_cmd_match_oem: bool,
    #[prost(bool, tag = "58")]
    pub gear_cmd_match_dbw: bool,
}
impl ::prost::Name for MonitorReport {
    const NAME: &'static str = "MonitorReport";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.MonitorReport".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.MonitorReport".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ThrottleDiagnostics {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(bool, tag = "2")]
    pub degraded: bool,
    #[prost(bool, tag = "3")]
    pub degraded_cmd_type: bool,
    #[prost(bool, tag = "4")]
    pub degraded_comms: bool,
    #[prost(bool, tag = "5")]
    pub degraded_comms_dbw: bool,
    #[prost(bool, tag = "6")]
    pub degraded_comms_dbw_gateway: bool,
    #[prost(bool, tag = "7")]
    pub degraded_comms_dbw_steer: bool,
    #[prost(bool, tag = "8")]
    pub degraded_comms_dbw_brake: bool,
    #[prost(bool, tag = "9")]
    pub degraded_comms_dbw_gear: bool,
    #[prost(bool, tag = "10")]
    pub degraded_internal: bool,
    #[prost(bool, tag = "11")]
    pub degraded_control_performance: bool,
    #[prost(bool, tag = "12")]
    pub degraded_param_mismatch: bool,
    #[prost(bool, tag = "13")]
    pub degraded_vehicle: bool,
    #[prost(bool, tag = "14")]
    pub degraded_vehicle_speed: bool,
    #[prost(bool, tag = "15")]
    pub degraded_aped_feedback: bool,
    #[prost(bool, tag = "16")]
    pub degraded_actuator_pedal_sensor: bool,
    #[prost(bool, tag = "17")]
    pub degraded_sensor: bool,
    #[prost(bool, tag = "18")]
    pub degraded_calibration: bool,
    #[prost(bool, tag = "19")]
    pub fault: bool,
    #[prost(bool, tag = "20")]
    pub fault_power: bool,
    #[prost(bool, tag = "21")]
    pub fault_comms: bool,
    #[prost(bool, tag = "22")]
    pub fault_comms_dbw: bool,
    #[prost(bool, tag = "23")]
    pub fault_comms_dbw_gateway: bool,
    #[prost(bool, tag = "24")]
    pub fault_comms_dbw_steer: bool,
    #[prost(bool, tag = "25")]
    pub fault_comms_dbw_brake: bool,
    #[prost(bool, tag = "26")]
    pub fault_comms_dbw_gear: bool,
    #[prost(bool, tag = "27")]
    pub fault_internal: bool,
    #[prost(bool, tag = "28")]
    pub fault_vehicle: bool,
    #[prost(bool, tag = "29")]
    pub fault_vehicle_speed: bool,
    #[prost(bool, tag = "30")]
    pub fault_sensor: bool,
    #[prost(bool, tag = "31")]
    pub fault_aped_sensor_1: bool,
    #[prost(bool, tag = "32")]
    pub fault_aped_sensor_2: bool,
    #[prost(bool, tag = "33")]
    pub fault_aped_sensor_mismatch: bool,
    #[prost(bool, tag = "34")]
    pub fault_actuator_pedal_sensor: bool,
    #[prost(bool, tag = "35")]
    pub fault_control_performance: bool,
    #[prost(bool, tag = "36")]
    pub fault_param_mismatch: bool,
    #[prost(bool, tag = "37")]
    pub fault_param_limits: bool,
    #[prost(bool, tag = "38")]
    pub fault_calibration: bool,
}
impl ::prost::Name for ThrottleDiagnostics {
    const NAME: &'static str = "ThrottleDiagnostics";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.ds_dbw_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.ds_dbw_msgs.msg.ThrottleDiagnostics".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.ds_dbw_msgs.msg.ThrottleDiagnostics".into()
    }
}
