// This file is @generated by prost-build.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetIoRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(int32, tag = "2")]
    pub fun: i32,
    #[prost(int32, tag = "3")]
    pub pin: i32,
    #[prost(float, tag = "4")]
    pub state: f32,
}
impl ::prost::Name for SetIoRequest {
    const NAME: &'static str = "SetIORequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.ur_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.ur_msgs.srv.SetIORequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.ur_msgs.srv.SetIORequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetIoResponse {
    #[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 SetIoResponse {
    const NAME: &'static str = "SetIOResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.ur_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.ur_msgs.srv.SetIOResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.ur_msgs.srv.SetIOResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetSpeedSliderFractionRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(double, tag = "2")]
    pub speed_slider_fraction: f64,
}
impl ::prost::Name for SetSpeedSliderFractionRequest {
    const NAME: &'static str = "SetSpeedSliderFractionRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.ur_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.ur_msgs.srv.SetSpeedSliderFractionRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.ur_msgs.srv.SetSpeedSliderFractionRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetSpeedSliderFractionResponse {
    #[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 SetSpeedSliderFractionResponse {
    const NAME: &'static str = "SetSpeedSliderFractionResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.ur_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.ur_msgs.srv.SetSpeedSliderFractionResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.ur_msgs.srv.SetSpeedSliderFractionResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetRobotSoftwareVersionRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
}
impl ::prost::Name for GetRobotSoftwareVersionRequest {
    const NAME: &'static str = "GetRobotSoftwareVersionRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.ur_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.ur_msgs.srv.GetRobotSoftwareVersionRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.ur_msgs.srv.GetRobotSoftwareVersionRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetRobotSoftwareVersionResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint32, tag = "2")]
    pub major: u32,
    #[prost(uint32, tag = "3")]
    pub minor: u32,
    #[prost(uint32, tag = "4")]
    pub bugfix: u32,
    #[prost(uint32, tag = "5")]
    pub build: u32,
}
impl ::prost::Name for GetRobotSoftwareVersionResponse {
    const NAME: &'static str = "GetRobotSoftwareVersionResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.ur_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.ur_msgs.srv.GetRobotSoftwareVersionResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.ur_msgs.srv.GetRobotSoftwareVersionResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetPayloadRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(float, tag = "2")]
    pub mass: f32,
    #[prost(message, optional, tag = "3")]
    pub center_of_gravity: ::core::option::Option<
        super::super::geometry_msgs::msg::Vector3,
    >,
}
impl ::prost::Name for SetPayloadRequest {
    const NAME: &'static str = "SetPayloadRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.ur_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.ur_msgs.srv.SetPayloadRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.ur_msgs.srv.SetPayloadRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetPayloadResponse {
    #[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 SetPayloadResponse {
    const NAME: &'static str = "SetPayloadResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.ur_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.ur_msgs.srv.SetPayloadResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.ur_msgs.srv.SetPayloadResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetForceModeRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(message, optional, tag = "2")]
    pub task_frame: ::core::option::Option<
        super::super::geometry_msgs::msg::PoseStamped,
    >,
    #[prost(bool, tag = "3")]
    pub selection_vector_x: bool,
    #[prost(bool, tag = "4")]
    pub selection_vector_y: bool,
    #[prost(bool, tag = "5")]
    pub selection_vector_z: bool,
    #[prost(bool, tag = "6")]
    pub selection_vector_rx: bool,
    #[prost(bool, tag = "7")]
    pub selection_vector_ry: bool,
    #[prost(bool, tag = "8")]
    pub selection_vector_rz: bool,
    #[prost(message, optional, tag = "9")]
    pub wrench: ::core::option::Option<super::super::geometry_msgs::msg::Wrench>,
    #[prost(uint32, tag = "10")]
    pub r#type: u32,
    #[prost(message, optional, tag = "11")]
    pub speed_limits: ::core::option::Option<super::super::geometry_msgs::msg::Twist>,
    #[prost(float, repeated, tag = "12")]
    pub deviation_limits: ::prost::alloc::vec::Vec<f32>,
    #[prost(float, tag = "13")]
    pub damping_factor: f32,
    #[prost(float, tag = "14")]
    pub gain_scaling: f32,
}
impl ::prost::Name for SetForceModeRequest {
    const NAME: &'static str = "SetForceModeRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.ur_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.ur_msgs.srv.SetForceModeRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.ur_msgs.srv.SetForceModeRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetForceModeResponse {
    #[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 SetForceModeResponse {
    const NAME: &'static str = "SetForceModeResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.ur_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.ur_msgs.srv.SetForceModeResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.ur_msgs.srv.SetForceModeResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetAnalogOutputRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(message, optional, tag = "2")]
    pub data: ::core::option::Option<super::msg::Analog>,
}
impl ::prost::Name for SetAnalogOutputRequest {
    const NAME: &'static str = "SetAnalogOutputRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.ur_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.ur_msgs.srv.SetAnalogOutputRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.ur_msgs.srv.SetAnalogOutputRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetAnalogOutputResponse {
    #[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 SetAnalogOutputResponse {
    const NAME: &'static str = "SetAnalogOutputResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.ur_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.ur_msgs.srv.SetAnalogOutputResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.ur_msgs.srv.SetAnalogOutputResponse".into()
    }
}
