// This file is @generated by prost-build.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ParamPullRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub force_pull: bool,
}
impl ::prost::Name for ParamPullRequest {
    const NAME: &'static str = "ParamPullRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.ParamPullRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.ParamPullRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ParamPullResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub param_received: u32,
}
impl ::prost::Name for ParamPullResponse {
    const NAME: &'static str = "ParamPullResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.ParamPullResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.ParamPullResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct WaypointSetCurrentRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub wp_seq: u32,
}
impl ::prost::Name for WaypointSetCurrentRequest {
    const NAME: &'static str = "WaypointSetCurrentRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.WaypointSetCurrentRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.WaypointSetCurrentRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct WaypointSetCurrentResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
}
impl ::prost::Name for WaypointSetCurrentResponse {
    const NAME: &'static str = "WaypointSetCurrentResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.WaypointSetCurrentResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.WaypointSetCurrentResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetMavFrameRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub mav_frame: u32,
}
impl ::prost::Name for SetMavFrameRequest {
    const NAME: &'static str = "SetMavFrameRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.SetMavFrameRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.SetMavFrameRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetMavFrameResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
}
impl ::prost::Name for SetMavFrameResponse {
    const NAME: &'static str = "SetMavFrameResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.SetMavFrameResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.SetMavFrameResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandIntRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub broadcast: bool,
    #[prost(uint32, tag = "3")]
    pub frame: u32,
    #[prost(uint32, tag = "4")]
    pub command: u32,
    #[prost(uint32, tag = "5")]
    pub current: u32,
    #[prost(uint32, tag = "6")]
    pub autocontinue: u32,
    #[prost(float, tag = "7")]
    pub param1: f32,
    #[prost(float, tag = "8")]
    pub param2: f32,
    #[prost(float, tag = "9")]
    pub param3: f32,
    #[prost(float, tag = "10")]
    pub param4: f32,
    #[prost(int32, tag = "11")]
    pub x: i32,
    #[prost(int32, tag = "12")]
    pub y: i32,
    #[prost(float, tag = "13")]
    pub z: f32,
}
impl ::prost::Name for CommandIntRequest {
    const NAME: &'static str = "CommandIntRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandIntRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandIntRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandIntResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
}
impl ::prost::Name for CommandIntResponse {
    const NAME: &'static str = "CommandIntResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandIntResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandIntResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct WaypointClearRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
}
impl ::prost::Name for WaypointClearRequest {
    const NAME: &'static str = "WaypointClearRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.WaypointClearRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.WaypointClearRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct WaypointClearResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
}
impl ::prost::Name for WaypointClearResponse {
    const NAME: &'static str = "WaypointClearResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.WaypointClearResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.WaypointClearResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EndpointAddRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub url: ::prost::alloc::string::String,
    #[prost(uint32, tag = "3")]
    pub r#type: u32,
}
impl ::prost::Name for EndpointAddRequest {
    const NAME: &'static str = "EndpointAddRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.EndpointAddRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.EndpointAddRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EndpointAddResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub successful: bool,
    #[prost(string, tag = "3")]
    pub reason: ::prost::alloc::string::String,
    #[prost(uint32, tag = "4")]
    pub id: u32,
}
impl ::prost::Name for EndpointAddResponse {
    const NAME: &'static str = "EndpointAddResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.EndpointAddResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.EndpointAddResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GimbalManagerCameraTrackRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub mode: u32,
    #[prost(float, tag = "3")]
    pub x: f32,
    #[prost(float, tag = "4")]
    pub y: f32,
    #[prost(float, tag = "5")]
    pub radius: f32,
    #[prost(float, tag = "6")]
    pub top_left_x: f32,
    #[prost(float, tag = "7")]
    pub top_left_y: f32,
    #[prost(float, tag = "8")]
    pub bottom_right_x: f32,
    #[prost(float, tag = "9")]
    pub bottom_right_y: f32,
}
impl ::prost::Name for GimbalManagerCameraTrackRequest {
    const NAME: &'static str = "GimbalManagerCameraTrackRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.GimbalManagerCameraTrackRequest"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.GimbalManagerCameraTrackRequest"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GimbalManagerCameraTrackResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub result: u32,
}
impl ::prost::Name for GimbalManagerCameraTrackResponse {
    const NAME: &'static str = "GimbalManagerCameraTrackResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.GimbalManagerCameraTrackResponse"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.GimbalManagerCameraTrackResponse"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LogRequestListRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub start: u32,
    #[prost(uint32, tag = "3")]
    pub end: u32,
}
impl ::prost::Name for LogRequestListRequest {
    const NAME: &'static str = "LogRequestListRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.LogRequestListRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.LogRequestListRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LogRequestListResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
}
impl ::prost::Name for LogRequestListResponse {
    const NAME: &'static str = "LogRequestListResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.LogRequestListResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.LogRequestListResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GimbalManagerConfigureRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(int32, tag = "2")]
    pub sysid_primary: i32,
    #[prost(int32, tag = "3")]
    pub compid_primary: i32,
    #[prost(int32, tag = "4")]
    pub sysid_secondary: i32,
    #[prost(int32, tag = "5")]
    pub compid_secondary: i32,
    #[prost(uint32, tag = "6")]
    pub gimbal_device_id: u32,
}
impl ::prost::Name for GimbalManagerConfigureRequest {
    const NAME: &'static str = "GimbalManagerConfigureRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.GimbalManagerConfigureRequest"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.GimbalManagerConfigureRequest"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GimbalManagerConfigureResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub result: u32,
}
impl ::prost::Name for GimbalManagerConfigureResponse {
    const NAME: &'static str = "GimbalManagerConfigureResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.GimbalManagerConfigureResponse"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.GimbalManagerConfigureResponse"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileCloseRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub file_path: ::prost::alloc::string::String,
}
impl ::prost::Name for FileCloseRequest {
    const NAME: &'static str = "FileCloseRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileCloseRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileCloseRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileCloseResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(int32, tag = "3")]
    pub r_errno: i32,
}
impl ::prost::Name for FileCloseResponse {
    const NAME: &'static str = "FileCloseResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileCloseResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileCloseResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandTriggerIntervalRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(float, tag = "2")]
    pub cycle_time: f32,
    #[prost(float, tag = "3")]
    pub integration_time: f32,
}
impl ::prost::Name for CommandTriggerIntervalRequest {
    const NAME: &'static str = "CommandTriggerIntervalRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandTriggerIntervalRequest"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandTriggerIntervalRequest"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandTriggerIntervalResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub result: u32,
}
impl ::prost::Name for CommandTriggerIntervalResponse {
    const NAME: &'static str = "CommandTriggerIntervalResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandTriggerIntervalResponse"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandTriggerIntervalResponse"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MountConfigureRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(message, optional, tag = "2")]
    pub ros2_header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "3")]
    pub mode: u32,
    #[prost(bool, tag = "4")]
    pub stabilize_roll: bool,
    #[prost(bool, tag = "5")]
    pub stabilize_pitch: bool,
    #[prost(bool, tag = "6")]
    pub stabilize_yaw: bool,
    #[prost(uint32, tag = "7")]
    pub roll_input: u32,
    #[prost(uint32, tag = "8")]
    pub pitch_input: u32,
    #[prost(uint32, tag = "9")]
    pub yaw_input: u32,
}
impl ::prost::Name for MountConfigureRequest {
    const NAME: &'static str = "MountConfigureRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.MountConfigureRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.MountConfigureRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MountConfigureResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub result: u32,
}
impl ::prost::Name for MountConfigureResponse {
    const NAME: &'static str = "MountConfigureResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.MountConfigureResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.MountConfigureResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ParamPushRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
}
impl ::prost::Name for ParamPushRequest {
    const NAME: &'static str = "ParamPushRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.ParamPushRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.ParamPushRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ParamPushResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub param_transfered: u32,
}
impl ::prost::Name for ParamPushResponse {
    const NAME: &'static str = "ParamPushResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.ParamPushResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.ParamPushResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StreamRateRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub stream_id: u32,
    #[prost(uint32, tag = "3")]
    pub message_rate: u32,
    #[prost(bool, tag = "4")]
    pub on_off: bool,
}
impl ::prost::Name for StreamRateRequest {
    const NAME: &'static str = "StreamRateRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.StreamRateRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.StreamRateRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StreamRateResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
}
impl ::prost::Name for StreamRateResponse {
    const NAME: &'static str = "StreamRateResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.StreamRateResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.StreamRateResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileRenameRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub old_path: ::prost::alloc::string::String,
    #[prost(string, tag = "3")]
    pub new_path: ::prost::alloc::string::String,
}
impl ::prost::Name for FileRenameRequest {
    const NAME: &'static str = "FileRenameRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileRenameRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileRenameRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileRenameResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(int32, tag = "3")]
    pub r_errno: i32,
}
impl ::prost::Name for FileRenameResponse {
    const NAME: &'static str = "FileRenameResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileRenameResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileRenameResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MessageIntervalRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub message_id: u32,
    #[prost(float, tag = "3")]
    pub message_rate: f32,
}
impl ::prost::Name for MessageIntervalRequest {
    const NAME: &'static str = "MessageIntervalRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.MessageIntervalRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.MessageIntervalRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MessageIntervalResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
}
impl ::prost::Name for MessageIntervalResponse {
    const NAME: &'static str = "MessageIntervalResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.MessageIntervalResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.MessageIntervalResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandBoolRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub value: bool,
}
impl ::prost::Name for CommandBoolRequest {
    const NAME: &'static str = "CommandBoolRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandBoolRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandBoolRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandBoolResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub result: u32,
}
impl ::prost::Name for CommandBoolResponse {
    const NAME: &'static str = "CommandBoolResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandBoolResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandBoolResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ParamSetRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub param_id: ::prost::alloc::string::String,
    #[prost(message, optional, tag = "3")]
    pub value: ::core::option::Option<super::msg::ParamValue>,
}
impl ::prost::Name for ParamSetRequest {
    const NAME: &'static str = "ParamSetRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.ParamSetRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.ParamSetRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ParamSetResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(message, optional, tag = "3")]
    pub value: ::core::option::Option<super::msg::ParamValue>,
}
impl ::prost::Name for ParamSetResponse {
    const NAME: &'static str = "ParamSetResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.ParamSetResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.ParamSetResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandHomeRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub current_gps: bool,
    #[prost(float, tag = "3")]
    pub yaw: f32,
    #[prost(float, tag = "4")]
    pub latitude: f32,
    #[prost(float, tag = "5")]
    pub longitude: f32,
    #[prost(float, tag = "6")]
    pub altitude: f32,
}
impl ::prost::Name for CommandHomeRequest {
    const NAME: &'static str = "CommandHomeRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandHomeRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandHomeRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandHomeResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub result: u32,
}
impl ::prost::Name for CommandHomeResponse {
    const NAME: &'static str = "CommandHomeResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandHomeResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandHomeResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VehicleInfoGetRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub sysid: u32,
    #[prost(uint32, tag = "3")]
    pub compid: u32,
    #[prost(bool, tag = "4")]
    pub get_all: bool,
}
impl ::prost::Name for VehicleInfoGetRequest {
    const NAME: &'static str = "VehicleInfoGetRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.VehicleInfoGetRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.VehicleInfoGetRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VehicleInfoGetResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(message, repeated, tag = "3")]
    pub vehicles: ::prost::alloc::vec::Vec<super::msg::VehicleInfo>,
}
impl ::prost::Name for VehicleInfoGetResponse {
    const NAME: &'static str = "VehicleInfoGetResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.VehicleInfoGetResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.VehicleInfoGetResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileTruncateRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub file_path: ::prost::alloc::string::String,
    #[prost(uint64, tag = "3")]
    pub length: u64,
}
impl ::prost::Name for FileTruncateRequest {
    const NAME: &'static str = "FileTruncateRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileTruncateRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileTruncateRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileTruncateResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(int32, tag = "3")]
    pub r_errno: i32,
}
impl ::prost::Name for FileTruncateResponse {
    const NAME: &'static str = "FileTruncateResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileTruncateResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileTruncateResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileReadRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub file_path: ::prost::alloc::string::String,
    #[prost(uint64, tag = "3")]
    pub offset: u64,
    #[prost(uint64, tag = "4")]
    pub size: u64,
}
impl ::prost::Name for FileReadRequest {
    const NAME: &'static str = "FileReadRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileReadRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileReadRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileReadResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, repeated, tag = "2")]
    pub data: ::prost::alloc::vec::Vec<u32>,
    #[prost(bool, tag = "3")]
    pub success: bool,
    #[prost(int32, tag = "4")]
    pub r_errno: i32,
}
impl ::prost::Name for FileReadResponse {
    const NAME: &'static str = "FileReadResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileReadResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileReadResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileChecksumRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub file_path: ::prost::alloc::string::String,
}
impl ::prost::Name for FileChecksumRequest {
    const NAME: &'static str = "FileChecksumRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileChecksumRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileChecksumRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileChecksumResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub crc32: u32,
    #[prost(bool, tag = "3")]
    pub success: bool,
    #[prost(int32, tag = "4")]
    pub r_errno: i32,
}
impl ::prost::Name for FileChecksumResponse {
    const NAME: &'static str = "FileChecksumResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileChecksumResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileChecksumResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ParamGetRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub param_id: ::prost::alloc::string::String,
}
impl ::prost::Name for ParamGetRequest {
    const NAME: &'static str = "ParamGetRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.ParamGetRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.ParamGetRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ParamGetResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(message, optional, tag = "3")]
    pub value: ::core::option::Option<super::msg::ParamValue>,
}
impl ::prost::Name for ParamGetResponse {
    const NAME: &'static str = "ParamGetResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.ParamGetResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.ParamGetResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileOpenRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub file_path: ::prost::alloc::string::String,
    #[prost(uint32, tag = "3")]
    pub mode: u32,
}
impl ::prost::Name for FileOpenRequest {
    const NAME: &'static str = "FileOpenRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileOpenRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileOpenRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileOpenResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub size: u32,
    #[prost(bool, tag = "3")]
    pub success: bool,
    #[prost(int32, tag = "4")]
    pub r_errno: i32,
}
impl ::prost::Name for FileOpenResponse {
    const NAME: &'static str = "FileOpenResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileOpenResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileOpenResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileWriteRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub file_path: ::prost::alloc::string::String,
    #[prost(uint64, tag = "3")]
    pub offset: u64,
    #[prost(uint32, repeated, tag = "4")]
    pub data: ::prost::alloc::vec::Vec<u32>,
}
impl ::prost::Name for FileWriteRequest {
    const NAME: &'static str = "FileWriteRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileWriteRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileWriteRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileWriteResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(int32, tag = "3")]
    pub r_errno: i32,
}
impl ::prost::Name for FileWriteResponse {
    const NAME: &'static str = "FileWriteResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileWriteResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileWriteResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ParamSetV2Request {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub force_set: bool,
    #[prost(string, tag = "3")]
    pub param_id: ::prost::alloc::string::String,
    #[prost(message, optional, tag = "4")]
    pub value: ::core::option::Option<super::super::rcl_interfaces::msg::ParameterValue>,
}
impl ::prost::Name for ParamSetV2Request {
    const NAME: &'static str = "ParamSetV2Request";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.ParamSetV2Request".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.ParamSetV2Request".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ParamSetV2Response {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(message, optional, tag = "3")]
    pub value: ::core::option::Option<super::super::rcl_interfaces::msg::ParameterValue>,
}
impl ::prost::Name for ParamSetV2Response {
    const NAME: &'static str = "ParamSetV2Response";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.ParamSetV2Response".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.ParamSetV2Response".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandVtolTransitionRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(message, optional, tag = "2")]
    pub ros2_header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(uint32, tag = "3")]
    pub state: u32,
}
impl ::prost::Name for CommandVtolTransitionRequest {
    const NAME: &'static str = "CommandVtolTransitionRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandVtolTransitionRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandVtolTransitionRequest"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandVtolTransitionResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub result: u32,
}
impl ::prost::Name for CommandVtolTransitionResponse {
    const NAME: &'static str = "CommandVtolTransitionResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandVtolTransitionResponse"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandVtolTransitionResponse"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandLongRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub broadcast: bool,
    #[prost(uint32, tag = "3")]
    pub command: u32,
    #[prost(uint32, tag = "4")]
    pub confirmation: u32,
    #[prost(float, tag = "5")]
    pub param1: f32,
    #[prost(float, tag = "6")]
    pub param2: f32,
    #[prost(float, tag = "7")]
    pub param3: f32,
    #[prost(float, tag = "8")]
    pub param4: f32,
    #[prost(float, tag = "9")]
    pub param5: f32,
    #[prost(float, tag = "10")]
    pub param6: f32,
    #[prost(float, tag = "11")]
    pub param7: f32,
}
impl ::prost::Name for CommandLongRequest {
    const NAME: &'static str = "CommandLongRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandLongRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandLongRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandLongResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub result: u32,
}
impl ::prost::Name for CommandLongResponse {
    const NAME: &'static str = "CommandLongResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandLongResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandLongResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct WaypointPullRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
}
impl ::prost::Name for WaypointPullRequest {
    const NAME: &'static str = "WaypointPullRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.WaypointPullRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.WaypointPullRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct WaypointPullResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub wp_received: u32,
}
impl ::prost::Name for WaypointPullResponse {
    const NAME: &'static str = "WaypointPullResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.WaypointPullResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.WaypointPullResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandTolLocalRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(float, tag = "2")]
    pub min_pitch: f32,
    #[prost(float, tag = "3")]
    pub offset: f32,
    #[prost(float, tag = "4")]
    pub rate: f32,
    #[prost(float, tag = "5")]
    pub yaw: f32,
    #[prost(message, optional, tag = "6")]
    pub position: ::core::option::Option<super::super::geometry_msgs::msg::Vector3>,
}
impl ::prost::Name for CommandTolLocalRequest {
    const NAME: &'static str = "CommandTOLLocalRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandTOLLocalRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandTOLLocalRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandTolLocalResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub result: u32,
}
impl ::prost::Name for CommandTolLocalResponse {
    const NAME: &'static str = "CommandTOLLocalResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandTOLLocalResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandTOLLocalResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GimbalGetInformationRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
}
impl ::prost::Name for GimbalGetInformationRequest {
    const NAME: &'static str = "GimbalGetInformationRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.GimbalGetInformationRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.GimbalGetInformationRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GimbalGetInformationResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub result: u32,
}
impl ::prost::Name for GimbalGetInformationResponse {
    const NAME: &'static str = "GimbalGetInformationResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.GimbalGetInformationResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.GimbalGetInformationResponse"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetModeRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub base_mode: u32,
    #[prost(string, tag = "3")]
    pub custom_mode: ::prost::alloc::string::String,
}
impl ::prost::Name for SetModeRequest {
    const NAME: &'static str = "SetModeRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.SetModeRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.SetModeRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetModeResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub mode_sent: bool,
}
impl ::prost::Name for SetModeResponse {
    const NAME: &'static str = "SetModeResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.SetModeResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.SetModeResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct WaypointPushRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub start_index: u32,
    #[prost(message, repeated, tag = "3")]
    pub waypoints: ::prost::alloc::vec::Vec<super::msg::Waypoint>,
}
impl ::prost::Name for WaypointPushRequest {
    const NAME: &'static str = "WaypointPushRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.WaypointPushRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.WaypointPushRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct WaypointPushResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub wp_transfered: u32,
}
impl ::prost::Name for WaypointPushResponse {
    const NAME: &'static str = "WaypointPushResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.WaypointPushResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.WaypointPushResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandTriggerControlRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub trigger_enable: bool,
    #[prost(bool, tag = "3")]
    pub sequence_reset: bool,
    #[prost(bool, tag = "4")]
    pub trigger_pause: bool,
}
impl ::prost::Name for CommandTriggerControlRequest {
    const NAME: &'static str = "CommandTriggerControlRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandTriggerControlRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandTriggerControlRequest"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandTriggerControlResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub result: u32,
}
impl ::prost::Name for CommandTriggerControlResponse {
    const NAME: &'static str = "CommandTriggerControlResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandTriggerControlResponse"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandTriggerControlResponse"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GimbalManagerPitchyawRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(float, tag = "2")]
    pub pitch: f32,
    #[prost(float, tag = "3")]
    pub yaw: f32,
    #[prost(float, tag = "4")]
    pub pitch_rate: f32,
    #[prost(float, tag = "5")]
    pub yaw_rate: f32,
    #[prost(uint32, tag = "6")]
    pub flags: u32,
    #[prost(uint32, tag = "7")]
    pub gimbal_device_id: u32,
}
impl ::prost::Name for GimbalManagerPitchyawRequest {
    const NAME: &'static str = "GimbalManagerPitchyawRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.GimbalManagerPitchyawRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.GimbalManagerPitchyawRequest"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GimbalManagerPitchyawResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub result: u32,
}
impl ::prost::Name for GimbalManagerPitchyawResponse {
    const NAME: &'static str = "GimbalManagerPitchyawResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.GimbalManagerPitchyawResponse"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.GimbalManagerPitchyawResponse"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GimbalManagerSetRoiRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub mode: u32,
    #[prost(uint32, tag = "3")]
    pub gimbal_device_id: u32,
    #[prost(float, tag = "4")]
    pub latitude: f32,
    #[prost(float, tag = "5")]
    pub longitude: f32,
    #[prost(float, tag = "6")]
    pub altitude: f32,
    #[prost(float, tag = "7")]
    pub pitch_offset: f32,
    #[prost(float, tag = "8")]
    pub roll_offset: f32,
    #[prost(float, tag = "9")]
    pub yaw_offset: f32,
    #[prost(uint32, tag = "10")]
    pub sysid: u32,
}
impl ::prost::Name for GimbalManagerSetRoiRequest {
    const NAME: &'static str = "GimbalManagerSetRoiRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.GimbalManagerSetRoiRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.GimbalManagerSetRoiRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GimbalManagerSetRoiResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub result: u32,
}
impl ::prost::Name for GimbalManagerSetRoiResponse {
    const NAME: &'static str = "GimbalManagerSetRoiResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.GimbalManagerSetRoiResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.GimbalManagerSetRoiResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandTolRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(float, tag = "2")]
    pub min_pitch: f32,
    #[prost(float, tag = "3")]
    pub yaw: f32,
    #[prost(float, tag = "4")]
    pub latitude: f32,
    #[prost(float, tag = "5")]
    pub longitude: f32,
    #[prost(float, tag = "6")]
    pub altitude: f32,
}
impl ::prost::Name for CommandTolRequest {
    const NAME: &'static str = "CommandTOLRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandTOLRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandTOLRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandTolResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub result: u32,
}
impl ::prost::Name for CommandTolResponse {
    const NAME: &'static str = "CommandTOLResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandTOLResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandTOLResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileListRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub dir_path: ::prost::alloc::string::String,
}
impl ::prost::Name for FileListRequest {
    const NAME: &'static str = "FileListRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileListRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileListRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileListResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(message, repeated, tag = "2")]
    pub list: ::prost::alloc::vec::Vec<super::msg::FileEntry>,
    #[prost(bool, tag = "3")]
    pub success: bool,
    #[prost(int32, tag = "4")]
    pub r_errno: i32,
}
impl ::prost::Name for FileListResponse {
    const NAME: &'static str = "FileListResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileListResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileListResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EndpointDelRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub id: u32,
    #[prost(string, tag = "3")]
    pub url: ::prost::alloc::string::String,
    #[prost(uint32, tag = "4")]
    pub r#type: u32,
}
impl ::prost::Name for EndpointDelRequest {
    const NAME: &'static str = "EndpointDelRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.EndpointDelRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.EndpointDelRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EndpointDelResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub successful: bool,
}
impl ::prost::Name for EndpointDelResponse {
    const NAME: &'static str = "EndpointDelResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.EndpointDelResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.EndpointDelResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileRemoveDirRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub dir_path: ::prost::alloc::string::String,
}
impl ::prost::Name for FileRemoveDirRequest {
    const NAME: &'static str = "FileRemoveDirRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileRemoveDirRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileRemoveDirRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileRemoveDirResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(int32, tag = "3")]
    pub r_errno: i32,
}
impl ::prost::Name for FileRemoveDirResponse {
    const NAME: &'static str = "FileRemoveDirResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileRemoveDirResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileRemoveDirResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandAckRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub command: u32,
    #[prost(uint32, tag = "3")]
    pub result: u32,
    #[prost(uint32, tag = "4")]
    pub progress: u32,
    #[prost(uint32, tag = "5")]
    pub result_param2: u32,
}
impl ::prost::Name for CommandAckRequest {
    const NAME: &'static str = "CommandAckRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandAckRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandAckRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommandAckResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(uint32, tag = "3")]
    pub result: u32,
}
impl ::prost::Name for CommandAckResponse {
    const NAME: &'static str = "CommandAckResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.CommandAckResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.CommandAckResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LogRequestEndRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
}
impl ::prost::Name for LogRequestEndRequest {
    const NAME: &'static str = "LogRequestEndRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.LogRequestEndRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.LogRequestEndRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LogRequestEndResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
}
impl ::prost::Name for LogRequestEndResponse {
    const NAME: &'static str = "LogRequestEndResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.LogRequestEndResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.LogRequestEndResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileMakeDirRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub dir_path: ::prost::alloc::string::String,
}
impl ::prost::Name for FileMakeDirRequest {
    const NAME: &'static str = "FileMakeDirRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileMakeDirRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileMakeDirRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileMakeDirResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(int32, tag = "3")]
    pub r_errno: i32,
}
impl ::prost::Name for FileMakeDirResponse {
    const NAME: &'static str = "FileMakeDirResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileMakeDirResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileMakeDirResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileRemoveRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub file_path: ::prost::alloc::string::String,
}
impl ::prost::Name for FileRemoveRequest {
    const NAME: &'static str = "FileRemoveRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileRemoveRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileRemoveRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FileRemoveResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
    #[prost(int32, tag = "3")]
    pub r_errno: i32,
}
impl ::prost::Name for FileRemoveResponse {
    const NAME: &'static str = "FileRemoveResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.FileRemoveResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.FileRemoveResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LogRequestDataRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub id: u32,
    #[prost(uint32, tag = "3")]
    pub offset: u32,
    #[prost(uint32, tag = "4")]
    pub count: u32,
}
impl ::prost::Name for LogRequestDataRequest {
    const NAME: &'static str = "LogRequestDataRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.LogRequestDataRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.LogRequestDataRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LogRequestDataResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub success: bool,
}
impl ::prost::Name for LogRequestDataResponse {
    const NAME: &'static str = "LogRequestDataResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.mavros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.mavros_msgs.srv.LogRequestDataResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.mavros_msgs.srv.LogRequestDataResponse".into()
    }
}
