// This file is @generated by prost-build.
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct BlockHeader {
    #[prost(uint32, tag = "1")]
    pub sync_1: u32,
    #[prost(uint32, tag = "2")]
    pub sync_2: u32,
    #[prost(uint32, tag = "3")]
    pub crc: u32,
    #[prost(uint32, tag = "4")]
    pub id: u32,
    #[prost(uint32, tag = "5")]
    pub revision: u32,
    #[prost(uint32, tag = "6")]
    pub length: u32,
    #[prost(uint32, tag = "7")]
    pub tow: u32,
    #[prost(uint32, tag = "8")]
    pub wnc: u32,
}
impl ::prost::Name for BlockHeader {
    const NAME: &'static str = "BlockHeader";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.BlockHeader".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.BlockHeader".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ExtSensorMeas {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(uint32, tag = "3")]
    pub n: u32,
    #[prost(uint32, tag = "4")]
    pub sb_length: u32,
    #[prost(uint32, repeated, tag = "5")]
    pub source: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "6")]
    pub sensor_model: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "7")]
    pub r#type: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint32, repeated, tag = "8")]
    pub obs_info: ::prost::alloc::vec::Vec<u32>,
    #[prost(double, tag = "9")]
    pub acceleration_x: f64,
    #[prost(double, tag = "10")]
    pub acceleration_y: f64,
    #[prost(double, tag = "11")]
    pub acceleration_z: f64,
    #[prost(double, tag = "12")]
    pub angular_rate_x: f64,
    #[prost(double, tag = "13")]
    pub angular_rate_y: f64,
    #[prost(double, tag = "14")]
    pub angular_rate_z: f64,
    #[prost(float, tag = "15")]
    pub velocity_x: f32,
    #[prost(float, tag = "16")]
    pub velocity_y: f32,
    #[prost(float, tag = "17")]
    pub velocity_z: f32,
    #[prost(float, tag = "18")]
    pub std_dev_x: f32,
    #[prost(float, tag = "19")]
    pub std_dev_y: f32,
    #[prost(float, tag = "20")]
    pub std_dev_z: f32,
    #[prost(float, tag = "21")]
    pub sensor_temperature: f32,
    #[prost(double, tag = "22")]
    pub zero_velocity_flag: f64,
}
impl ::prost::Name for ExtSensorMeas {
    const NAME: &'static str = "ExtSensorMeas";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.ExtSensorMeas".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.ExtSensorMeas".into()
    }
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct VectorInfoCart {
    #[prost(uint32, tag = "1")]
    pub nr_sv: u32,
    #[prost(uint32, tag = "2")]
    pub error: u32,
    #[prost(uint32, tag = "3")]
    pub mode: u32,
    #[prost(uint32, tag = "4")]
    pub misc: u32,
    #[prost(double, tag = "5")]
    pub delta_x: f64,
    #[prost(double, tag = "6")]
    pub delta_y: f64,
    #[prost(double, tag = "7")]
    pub delta_z: f64,
    #[prost(float, tag = "8")]
    pub delta_vx: f32,
    #[prost(float, tag = "9")]
    pub delta_vy: f32,
    #[prost(float, tag = "10")]
    pub delta_vz: f32,
    #[prost(uint32, tag = "11")]
    pub azimuth: u32,
    #[prost(int32, tag = "12")]
    pub elevation: i32,
    #[prost(uint32, tag = "13")]
    pub reference_id: u32,
    #[prost(uint32, tag = "14")]
    pub corr_age: u32,
    #[prost(uint32, tag = "15")]
    pub signal_info: u32,
}
impl ::prost::Name for VectorInfoCart {
    const NAME: &'static str = "VectorInfoCart";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.VectorInfoCart".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.VectorInfoCart".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ImuSetup {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(uint32, tag = "3")]
    pub serial_port: u32,
    #[prost(float, tag = "4")]
    pub ant_lever_arm_x: f32,
    #[prost(float, tag = "5")]
    pub ant_lever_arm_y: f32,
    #[prost(float, tag = "6")]
    pub ant_lever_arm_z: f32,
    #[prost(float, tag = "7")]
    pub theta_x: f32,
    #[prost(float, tag = "8")]
    pub theta_y: f32,
    #[prost(float, tag = "9")]
    pub theta_z: f32,
}
impl ::prost::Name for ImuSetup {
    const NAME: &'static str = "IMUSetup";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.IMUSetup".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.IMUSetup".into()
    }
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct MeasEpochChannelType2 {
    #[prost(uint32, tag = "1")]
    pub r#type: u32,
    #[prost(uint32, tag = "2")]
    pub lock_time: u32,
    #[prost(uint32, tag = "3")]
    pub cn0: u32,
    #[prost(uint32, tag = "4")]
    pub offsets_msb: u32,
    #[prost(int32, tag = "5")]
    pub carrier_msb: i32,
    #[prost(uint32, tag = "6")]
    pub obs_info: u32,
    #[prost(uint32, tag = "7")]
    pub code_offset_lsb: u32,
    #[prost(uint32, tag = "8")]
    pub carrier_lsb: u32,
    #[prost(uint32, tag = "9")]
    pub doppler_offset_lsb: u32,
}
impl ::prost::Name for MeasEpochChannelType2 {
    const NAME: &'static str = "MeasEpochChannelType2";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.MeasEpochChannelType2"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.MeasEpochChannelType2"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MeasEpochChannelType1 {
    #[prost(uint32, tag = "1")]
    pub rx_channel: u32,
    #[prost(uint32, tag = "2")]
    pub r#type: u32,
    #[prost(uint32, tag = "3")]
    pub sv_id: u32,
    #[prost(uint32, tag = "4")]
    pub misc: u32,
    #[prost(uint32, tag = "5")]
    pub code_lsb: u32,
    #[prost(int32, tag = "6")]
    pub doppler: i32,
    #[prost(uint32, tag = "7")]
    pub carrier_lsb: u32,
    #[prost(int32, tag = "8")]
    pub carrier_msb: i32,
    #[prost(uint32, tag = "9")]
    pub cn0: u32,
    #[prost(uint32, tag = "10")]
    pub lock_time: u32,
    #[prost(uint32, tag = "11")]
    pub obs_info: u32,
    #[prost(uint32, tag = "12")]
    pub n2: u32,
    #[prost(message, repeated, tag = "13")]
    pub type2: ::prost::alloc::vec::Vec<MeasEpochChannelType2>,
}
impl ::prost::Name for MeasEpochChannelType1 {
    const NAME: &'static str = "MeasEpochChannelType1";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.MeasEpochChannelType1"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.MeasEpochChannelType1"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct InsNavGeod {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(uint32, tag = "3")]
    pub gnss_mode: u32,
    #[prost(uint32, tag = "4")]
    pub error: u32,
    #[prost(uint32, tag = "5")]
    pub info: u32,
    #[prost(uint32, tag = "6")]
    pub gnss_age: u32,
    #[prost(double, tag = "7")]
    pub latitude: f64,
    #[prost(double, tag = "8")]
    pub longitude: f64,
    #[prost(double, tag = "9")]
    pub height: f64,
    #[prost(float, tag = "10")]
    pub undulation: f32,
    #[prost(uint32, tag = "11")]
    pub accuracy: u32,
    #[prost(uint32, tag = "12")]
    pub latency: u32,
    #[prost(uint32, tag = "13")]
    pub datum: u32,
    #[prost(uint32, tag = "14")]
    pub sb_list: u32,
    #[prost(float, tag = "15")]
    pub latitude_std_dev: f32,
    #[prost(float, tag = "16")]
    pub longitude_std_dev: f32,
    #[prost(float, tag = "17")]
    pub height_std_dev: f32,
    #[prost(float, tag = "18")]
    pub latitude_longitude_cov: f32,
    #[prost(float, tag = "19")]
    pub latitude_height_cov: f32,
    #[prost(float, tag = "20")]
    pub longitude_height_cov: f32,
    #[prost(float, tag = "21")]
    pub heading: f32,
    #[prost(float, tag = "22")]
    pub pitch: f32,
    #[prost(float, tag = "23")]
    pub roll: f32,
    #[prost(float, tag = "24")]
    pub heading_std_dev: f32,
    #[prost(float, tag = "25")]
    pub pitch_std_dev: f32,
    #[prost(float, tag = "26")]
    pub roll_std_dev: f32,
    #[prost(float, tag = "27")]
    pub heading_pitch_cov: f32,
    #[prost(float, tag = "28")]
    pub heading_roll_cov: f32,
    #[prost(float, tag = "29")]
    pub pitch_roll_cov: f32,
    #[prost(float, tag = "30")]
    pub ve: f32,
    #[prost(float, tag = "31")]
    pub vn: f32,
    #[prost(float, tag = "32")]
    pub vu: f32,
    #[prost(float, tag = "33")]
    pub ve_std_dev: f32,
    #[prost(float, tag = "34")]
    pub vn_std_dev: f32,
    #[prost(float, tag = "35")]
    pub vu_std_dev: f32,
    #[prost(float, tag = "36")]
    pub ve_vn_cov: f32,
    #[prost(float, tag = "37")]
    pub ve_vu_cov: f32,
    #[prost(float, tag = "38")]
    pub vn_vu_cov: f32,
}
impl ::prost::Name for InsNavGeod {
    const NAME: &'static str = "INSNavGeod";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.INSNavGeod".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.INSNavGeod".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PosCovCartesian {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(uint32, tag = "3")]
    pub mode: u32,
    #[prost(uint32, tag = "4")]
    pub error: u32,
    #[prost(float, tag = "5")]
    pub cov_xx: f32,
    #[prost(float, tag = "6")]
    pub cov_yy: f32,
    #[prost(float, tag = "7")]
    pub cov_zz: f32,
    #[prost(float, tag = "8")]
    pub cov_bb: f32,
    #[prost(float, tag = "9")]
    pub cov_xy: f32,
    #[prost(float, tag = "10")]
    pub cov_xz: f32,
    #[prost(float, tag = "11")]
    pub cov_xb: f32,
    #[prost(float, tag = "12")]
    pub cov_yz: f32,
    #[prost(float, tag = "13")]
    pub cov_yb: f32,
    #[prost(float, tag = "14")]
    pub cov_zb: f32,
}
impl ::prost::Name for PosCovCartesian {
    const NAME: &'static str = "PosCovCartesian";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.PosCovCartesian".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.PosCovCartesian".into()
    }
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct RfBand {
    #[prost(uint32, tag = "1")]
    pub frequency: u32,
    #[prost(uint32, tag = "2")]
    pub bandwidth: u32,
    #[prost(uint32, tag = "3")]
    pub info: u32,
}
impl ::prost::Name for RfBand {
    const NAME: &'static str = "RFBand";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.RFBand".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.RFBand".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RfStatus {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(uint32, tag = "3")]
    pub n: u32,
    #[prost(uint32, tag = "4")]
    pub sb_length: u32,
    #[prost(uint32, tag = "5")]
    pub flags: u32,
    #[prost(message, repeated, tag = "6")]
    pub rfband: ::prost::alloc::vec::Vec<RfBand>,
}
impl ::prost::Name for RfStatus {
    const NAME: &'static str = "RFStatus";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.RFStatus".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.RFStatus".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct InsNavCart {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(uint32, tag = "3")]
    pub gnss_mode: u32,
    #[prost(uint32, tag = "4")]
    pub error: u32,
    #[prost(uint32, tag = "5")]
    pub info: u32,
    #[prost(uint32, tag = "6")]
    pub gnss_age: u32,
    #[prost(double, tag = "7")]
    pub x: f64,
    #[prost(double, tag = "8")]
    pub y: f64,
    #[prost(double, tag = "9")]
    pub z: f64,
    #[prost(uint32, tag = "10")]
    pub accuracy: u32,
    #[prost(uint32, tag = "11")]
    pub latency: u32,
    #[prost(uint32, tag = "12")]
    pub datum: u32,
    #[prost(uint32, tag = "13")]
    pub sb_list: u32,
    #[prost(float, tag = "14")]
    pub x_std_dev: f32,
    #[prost(float, tag = "15")]
    pub y_std_dev: f32,
    #[prost(float, tag = "16")]
    pub z_std_dev: f32,
    #[prost(float, tag = "17")]
    pub xy_cov: f32,
    #[prost(float, tag = "18")]
    pub xz_cov: f32,
    #[prost(float, tag = "19")]
    pub yz_cov: f32,
    #[prost(float, tag = "20")]
    pub heading: f32,
    #[prost(float, tag = "21")]
    pub pitch: f32,
    #[prost(float, tag = "22")]
    pub roll: f32,
    #[prost(float, tag = "23")]
    pub heading_std_dev: f32,
    #[prost(float, tag = "24")]
    pub pitch_std_dev: f32,
    #[prost(float, tag = "25")]
    pub roll_std_dev: f32,
    #[prost(float, tag = "26")]
    pub heading_pitch_cov: f32,
    #[prost(float, tag = "27")]
    pub heading_roll_cov: f32,
    #[prost(float, tag = "28")]
    pub pitch_roll_cov: f32,
    #[prost(float, tag = "29")]
    pub vx: f32,
    #[prost(float, tag = "30")]
    pub vy: f32,
    #[prost(float, tag = "31")]
    pub vz: f32,
    #[prost(float, tag = "32")]
    pub vx_std_dev: f32,
    #[prost(float, tag = "33")]
    pub vy_std_dev: f32,
    #[prost(float, tag = "34")]
    pub vz_std_dev: f32,
    #[prost(float, tag = "35")]
    pub vx_vy_cov: f32,
    #[prost(float, tag = "36")]
    pub vx_vz_cov: f32,
    #[prost(float, tag = "37")]
    pub vy_vz_cov: f32,
}
impl ::prost::Name for InsNavCart {
    const NAME: &'static str = "INSNavCart";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.INSNavCart".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.INSNavCart".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AttEuler {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(uint32, tag = "3")]
    pub nr_sv: u32,
    #[prost(uint32, tag = "4")]
    pub error: u32,
    #[prost(uint32, tag = "5")]
    pub mode: u32,
    #[prost(float, tag = "6")]
    pub heading: f32,
    #[prost(float, tag = "7")]
    pub pitch: f32,
    #[prost(float, tag = "8")]
    pub roll: f32,
    #[prost(float, tag = "9")]
    pub pitch_dot: f32,
    #[prost(float, tag = "10")]
    pub roll_dot: f32,
    #[prost(float, tag = "11")]
    pub heading_dot: f32,
}
impl ::prost::Name for AttEuler {
    const NAME: &'static str = "AttEuler";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.AttEuler".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.AttEuler".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PvtGeodetic {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(uint32, tag = "3")]
    pub mode: u32,
    #[prost(uint32, tag = "4")]
    pub error: u32,
    #[prost(double, tag = "5")]
    pub latitude: f64,
    #[prost(double, tag = "6")]
    pub longitude: f64,
    #[prost(double, tag = "7")]
    pub height: f64,
    #[prost(float, tag = "8")]
    pub undulation: f32,
    #[prost(float, tag = "9")]
    pub vn: f32,
    #[prost(float, tag = "10")]
    pub ve: f32,
    #[prost(float, tag = "11")]
    pub vu: f32,
    #[prost(float, tag = "12")]
    pub cog: f32,
    #[prost(double, tag = "13")]
    pub rx_clk_bias: f64,
    #[prost(float, tag = "14")]
    pub rx_clk_drift: f32,
    #[prost(uint32, tag = "15")]
    pub time_system: u32,
    #[prost(uint32, tag = "16")]
    pub datum: u32,
    #[prost(uint32, tag = "17")]
    pub nr_sv: u32,
    #[prost(uint32, tag = "18")]
    pub wa_corr_info: u32,
    #[prost(uint32, tag = "19")]
    pub reference_id: u32,
    #[prost(uint32, tag = "20")]
    pub mean_corr_age: u32,
    #[prost(uint32, tag = "21")]
    pub signal_info: u32,
    #[prost(uint32, tag = "22")]
    pub alert_flag: u32,
    #[prost(uint32, tag = "23")]
    pub nr_bases: u32,
    #[prost(uint32, tag = "24")]
    pub ppp_info: u32,
    #[prost(uint32, tag = "25")]
    pub latency: u32,
    #[prost(uint32, tag = "26")]
    pub h_accuracy: u32,
    #[prost(uint32, tag = "27")]
    pub v_accuracy: u32,
    #[prost(uint32, tag = "28")]
    pub misc: u32,
}
impl ::prost::Name for PvtGeodetic {
    const NAME: &'static str = "PVTGeodetic";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.PVTGeodetic".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.PVTGeodetic".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BaseVectorCart {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(uint32, tag = "3")]
    pub n: u32,
    #[prost(uint32, tag = "4")]
    pub sb_length: u32,
    #[prost(message, repeated, tag = "5")]
    pub vector_info_cart: ::prost::alloc::vec::Vec<VectorInfoCart>,
}
impl ::prost::Name for BaseVectorCart {
    const NAME: &'static str = "BaseVectorCart";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.BaseVectorCart".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.BaseVectorCart".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VelCovCartesian {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(uint32, tag = "3")]
    pub mode: u32,
    #[prost(uint32, tag = "4")]
    pub error: u32,
    #[prost(float, tag = "5")]
    pub cov_vxvx: f32,
    #[prost(float, tag = "6")]
    pub cov_vyvy: f32,
    #[prost(float, tag = "7")]
    pub cov_vzvz: f32,
    #[prost(float, tag = "8")]
    pub cov_dtdt: f32,
    #[prost(float, tag = "9")]
    pub cov_vxvy: f32,
    #[prost(float, tag = "10")]
    pub cov_vxvz: f32,
    #[prost(float, tag = "11")]
    pub cov_vxdt: f32,
    #[prost(float, tag = "12")]
    pub cov_vyvz: f32,
    #[prost(float, tag = "13")]
    pub cov_vydt: f32,
    #[prost(float, tag = "14")]
    pub cov_vzdt: f32,
}
impl ::prost::Name for VelCovCartesian {
    const NAME: &'static str = "VelCovCartesian";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.VelCovCartesian".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.VelCovCartesian".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GalAuthStatus {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(uint32, tag = "3")]
    pub osnma_status: u32,
    #[prost(float, tag = "4")]
    pub trusted_time_delta: f32,
    #[prost(uint64, tag = "5")]
    pub gal_active_mask: u64,
    #[prost(uint64, tag = "6")]
    pub gal_authentic_mask: u64,
    #[prost(uint64, tag = "7")]
    pub gps_active_mask: u64,
    #[prost(uint64, tag = "8")]
    pub gps_authentic_mask: u64,
}
impl ::prost::Name for GalAuthStatus {
    const NAME: &'static str = "GALAuthStatus";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.GALAuthStatus".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.GALAuthStatus".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AttCovEuler {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(uint32, tag = "3")]
    pub error: u32,
    #[prost(float, tag = "4")]
    pub cov_headhead: f32,
    #[prost(float, tag = "5")]
    pub cov_pitchpitch: f32,
    #[prost(float, tag = "6")]
    pub cov_rollroll: f32,
    #[prost(float, tag = "7")]
    pub cov_headpitch: f32,
    #[prost(float, tag = "8")]
    pub cov_headroll: f32,
    #[prost(float, tag = "9")]
    pub cov_pitchroll: f32,
}
impl ::prost::Name for AttCovEuler {
    const NAME: &'static str = "AttCovEuler";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.AttCovEuler".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.AttCovEuler".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AimPlusStatus {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "2")]
    pub tow: u32,
    #[prost(uint32, tag = "3")]
    pub wnc: u32,
    #[prost(uint32, tag = "4")]
    pub interference: u32,
    #[prost(uint32, tag = "5")]
    pub spoofing: u32,
    #[prost(bool, tag = "6")]
    pub osnma_authenticating: bool,
    #[prost(uint32, tag = "7")]
    pub galileo_authentic: u32,
    #[prost(uint32, tag = "8")]
    pub galileo_spoofed: u32,
    #[prost(uint32, tag = "9")]
    pub gps_authentic: u32,
    #[prost(uint32, tag = "10")]
    pub gps_spoofed: u32,
}
impl ::prost::Name for AimPlusStatus {
    const NAME: &'static str = "AIMPlusStatus";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.AIMPlusStatus".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.AIMPlusStatus".into()
    }
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct VectorInfoGeod {
    #[prost(uint32, tag = "1")]
    pub nr_sv: u32,
    #[prost(uint32, tag = "2")]
    pub error: u32,
    #[prost(uint32, tag = "3")]
    pub mode: u32,
    #[prost(uint32, tag = "4")]
    pub misc: u32,
    #[prost(double, tag = "5")]
    pub delta_east: f64,
    #[prost(double, tag = "6")]
    pub delta_north: f64,
    #[prost(double, tag = "7")]
    pub delta_up: f64,
    #[prost(float, tag = "8")]
    pub delta_ve: f32,
    #[prost(float, tag = "9")]
    pub delta_vn: f32,
    #[prost(float, tag = "10")]
    pub delta_vu: f32,
    #[prost(uint32, tag = "11")]
    pub azimuth: u32,
    #[prost(int32, tag = "12")]
    pub elevation: i32,
    #[prost(uint32, tag = "13")]
    pub reference_id: u32,
    #[prost(uint32, tag = "14")]
    pub corr_age: u32,
    #[prost(uint32, tag = "15")]
    pub signal_info: u32,
}
impl ::prost::Name for VectorInfoGeod {
    const NAME: &'static str = "VectorInfoGeod";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.VectorInfoGeod".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.VectorInfoGeod".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BaseVectorGeod {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(uint32, tag = "3")]
    pub n: u32,
    #[prost(uint32, tag = "4")]
    pub sb_length: u32,
    #[prost(message, repeated, tag = "5")]
    pub vector_info_geod: ::prost::alloc::vec::Vec<VectorInfoGeod>,
}
impl ::prost::Name for BaseVectorGeod {
    const NAME: &'static str = "BaseVectorGeod";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.BaseVectorGeod".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.BaseVectorGeod".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PosCovGeodetic {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(uint32, tag = "3")]
    pub mode: u32,
    #[prost(uint32, tag = "4")]
    pub error: u32,
    #[prost(float, tag = "5")]
    pub cov_latlat: f32,
    #[prost(float, tag = "6")]
    pub cov_lonlon: f32,
    #[prost(float, tag = "7")]
    pub cov_hgthgt: f32,
    #[prost(float, tag = "8")]
    pub cov_bb: f32,
    #[prost(float, tag = "9")]
    pub cov_latlon: f32,
    #[prost(float, tag = "10")]
    pub cov_lathgt: f32,
    #[prost(float, tag = "11")]
    pub cov_latb: f32,
    #[prost(float, tag = "12")]
    pub cov_lonhgt: f32,
    #[prost(float, tag = "13")]
    pub cov_lonb: f32,
    #[prost(float, tag = "14")]
    pub cov_hb: f32,
}
impl ::prost::Name for PosCovGeodetic {
    const NAME: &'static str = "PosCovGeodetic";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.PosCovGeodetic".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.PosCovGeodetic".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VelCovGeodetic {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(uint32, tag = "3")]
    pub mode: u32,
    #[prost(uint32, tag = "4")]
    pub error: u32,
    #[prost(float, tag = "5")]
    pub cov_vnvn: f32,
    #[prost(float, tag = "6")]
    pub cov_veve: f32,
    #[prost(float, tag = "7")]
    pub cov_vuvu: f32,
    #[prost(float, tag = "8")]
    pub cov_dtdt: f32,
    #[prost(float, tag = "9")]
    pub cov_vnve: f32,
    #[prost(float, tag = "10")]
    pub cov_vnvu: f32,
    #[prost(float, tag = "11")]
    pub cov_vndt: f32,
    #[prost(float, tag = "12")]
    pub cov_vevu: f32,
    #[prost(float, tag = "13")]
    pub cov_vedt: f32,
    #[prost(float, tag = "14")]
    pub cov_vudt: f32,
}
impl ::prost::Name for VelCovGeodetic {
    const NAME: &'static str = "VelCovGeodetic";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.VelCovGeodetic".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.VelCovGeodetic".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VelSensorSetup {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(uint32, tag = "3")]
    pub port: u32,
    #[prost(float, tag = "4")]
    pub lever_arm_x: f32,
    #[prost(float, tag = "5")]
    pub lever_arm_y: f32,
    #[prost(float, tag = "6")]
    pub lever_arm_z: f32,
}
impl ::prost::Name for VelSensorSetup {
    const NAME: &'static str = "VelSensorSetup";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.VelSensorSetup".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.VelSensorSetup".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MeasEpoch {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(uint32, tag = "3")]
    pub n: u32,
    #[prost(uint32, tag = "4")]
    pub sb1_length: u32,
    #[prost(uint32, tag = "5")]
    pub sb2_length: u32,
    #[prost(uint32, tag = "6")]
    pub common_flags: u32,
    #[prost(uint32, tag = "7")]
    pub cum_clk_jumps: u32,
    #[prost(message, repeated, tag = "8")]
    pub type1: ::prost::alloc::vec::Vec<MeasEpochChannelType1>,
}
impl ::prost::Name for MeasEpoch {
    const NAME: &'static str = "MeasEpoch";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.MeasEpoch".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.MeasEpoch".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PvtCartesian {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(uint32, tag = "3")]
    pub mode: u32,
    #[prost(uint32, tag = "4")]
    pub error: u32,
    #[prost(double, tag = "5")]
    pub x: f64,
    #[prost(double, tag = "6")]
    pub y: f64,
    #[prost(double, tag = "7")]
    pub z: f64,
    #[prost(float, tag = "8")]
    pub undulation: f32,
    #[prost(float, tag = "9")]
    pub vx: f32,
    #[prost(float, tag = "10")]
    pub vy: f32,
    #[prost(float, tag = "11")]
    pub vz: f32,
    #[prost(float, tag = "12")]
    pub cog: f32,
    #[prost(double, tag = "13")]
    pub rx_clk_bias: f64,
    #[prost(float, tag = "14")]
    pub rx_clk_drift: f32,
    #[prost(uint32, tag = "15")]
    pub time_system: u32,
    #[prost(uint32, tag = "16")]
    pub datum: u32,
    #[prost(uint32, tag = "17")]
    pub nr_sv: u32,
    #[prost(uint32, tag = "18")]
    pub wa_corr_info: u32,
    #[prost(uint32, tag = "19")]
    pub reference_id: u32,
    #[prost(uint32, tag = "20")]
    pub mean_corr_age: u32,
    #[prost(uint32, tag = "21")]
    pub signal_info: u32,
    #[prost(uint32, tag = "22")]
    pub alert_flag: u32,
    #[prost(uint32, tag = "23")]
    pub nr_bases: u32,
    #[prost(uint32, tag = "24")]
    pub ppp_info: u32,
    #[prost(uint32, tag = "25")]
    pub latency: u32,
    #[prost(uint32, tag = "26")]
    pub h_accuracy: u32,
    #[prost(uint32, tag = "27")]
    pub v_accuracy: u32,
    #[prost(uint32, tag = "28")]
    pub misc: u32,
}
impl ::prost::Name for PvtCartesian {
    const NAME: &'static str = "PVTCartesian";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.PVTCartesian".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.PVTCartesian".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ReceiverTime {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub block_header: ::core::option::Option<BlockHeader>,
    #[prost(int32, tag = "3")]
    pub utc_year: i32,
    #[prost(int32, tag = "4")]
    pub utc_month: i32,
    #[prost(int32, tag = "5")]
    pub utc_day: i32,
    #[prost(int32, tag = "6")]
    pub utc_hour: i32,
    #[prost(int32, tag = "7")]
    pub utc_min: i32,
    #[prost(int32, tag = "8")]
    pub utc_second: i32,
    #[prost(int32, tag = "9")]
    pub delta_ls: i32,
    #[prost(uint32, tag = "10")]
    pub sync_level: u32,
}
impl ::prost::Name for ReceiverTime {
    const NAME: &'static str = "ReceiverTime";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.ReceiverTime".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.septentrio_gnss_driver.msg.ReceiverTime".into()
    }
}
