// This file is @generated by prost-build.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListControllerTypesRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
}
impl ::prost::Name for ListControllerTypesRequest {
    const NAME: &'static str = "ListControllerTypesRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.ListControllerTypesRequest"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.ListControllerTypesRequest"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListControllerTypesResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, repeated, tag = "2")]
    pub types: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
    #[prost(string, repeated, tag = "3")]
    pub base_classes: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
impl ::prost::Name for ListControllerTypesResponse {
    const NAME: &'static str = "ListControllerTypesResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.ListControllerTypesResponse"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.ListControllerTypesResponse"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UnloadControllerRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub name: ::prost::alloc::string::String,
}
impl ::prost::Name for UnloadControllerRequest {
    const NAME: &'static str = "UnloadControllerRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.UnloadControllerRequest"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.UnloadControllerRequest"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UnloadControllerResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub ok: bool,
}
impl ::prost::Name for UnloadControllerResponse {
    const NAME: &'static str = "UnloadControllerResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.UnloadControllerResponse"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.UnloadControllerResponse"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ConfigureControllerRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub name: ::prost::alloc::string::String,
}
impl ::prost::Name for ConfigureControllerRequest {
    const NAME: &'static str = "ConfigureControllerRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.ConfigureControllerRequest"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.ConfigureControllerRequest"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ConfigureControllerResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub ok: bool,
}
impl ::prost::Name for ConfigureControllerResponse {
    const NAME: &'static str = "ConfigureControllerResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.ConfigureControllerResponse"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.ConfigureControllerResponse"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListHardwareComponentsRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
}
impl ::prost::Name for ListHardwareComponentsRequest {
    const NAME: &'static str = "ListHardwareComponentsRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.ListHardwareComponentsRequest"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.ListHardwareComponentsRequest"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListHardwareComponentsResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(message, repeated, tag = "2")]
    pub component: ::prost::alloc::vec::Vec<super::msg::HardwareComponentState>,
}
impl ::prost::Name for ListHardwareComponentsResponse {
    const NAME: &'static str = "ListHardwareComponentsResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.ListHardwareComponentsResponse"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.ListHardwareComponentsResponse"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetHardwareComponentStateRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub name: ::prost::alloc::string::String,
    #[prost(message, optional, tag = "3")]
    pub target_state: ::core::option::Option<super::super::lifecycle_msgs::msg::State>,
}
impl ::prost::Name for SetHardwareComponentStateRequest {
    const NAME: &'static str = "SetHardwareComponentStateRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.SetHardwareComponentStateRequest"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.SetHardwareComponentStateRequest"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SetHardwareComponentStateResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub ok: bool,
    #[prost(message, optional, tag = "3")]
    pub state: ::core::option::Option<super::super::lifecycle_msgs::msg::State>,
}
impl ::prost::Name for SetHardwareComponentStateResponse {
    const NAME: &'static str = "SetHardwareComponentStateResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.SetHardwareComponentStateResponse"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.SetHardwareComponentStateResponse"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ReloadControllerLibrariesRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub force_kill: bool,
}
impl ::prost::Name for ReloadControllerLibrariesRequest {
    const NAME: &'static str = "ReloadControllerLibrariesRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.ReloadControllerLibrariesRequest"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.ReloadControllerLibrariesRequest"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ReloadControllerLibrariesResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub ok: bool,
}
impl ::prost::Name for ReloadControllerLibrariesResponse {
    const NAME: &'static str = "ReloadControllerLibrariesResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.ReloadControllerLibrariesResponse"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.ReloadControllerLibrariesResponse"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListHardwareInterfacesRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
}
impl ::prost::Name for ListHardwareInterfacesRequest {
    const NAME: &'static str = "ListHardwareInterfacesRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.ListHardwareInterfacesRequest"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.ListHardwareInterfacesRequest"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListHardwareInterfacesResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(message, repeated, tag = "2")]
    pub command_interfaces: ::prost::alloc::vec::Vec<super::msg::HardwareInterface>,
    #[prost(message, repeated, tag = "3")]
    pub state_interfaces: ::prost::alloc::vec::Vec<super::msg::HardwareInterface>,
}
impl ::prost::Name for ListHardwareInterfacesResponse {
    const NAME: &'static str = "ListHardwareInterfacesResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.ListHardwareInterfacesResponse"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.ListHardwareInterfacesResponse"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListControllersRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
}
impl ::prost::Name for ListControllersRequest {
    const NAME: &'static str = "ListControllersRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.ListControllersRequest"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.ListControllersRequest"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListControllersResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(message, repeated, tag = "2")]
    pub controller: ::prost::alloc::vec::Vec<super::msg::ControllerState>,
}
impl ::prost::Name for ListControllersResponse {
    const NAME: &'static str = "ListControllersResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.ListControllersResponse"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.ListControllersResponse"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LoadControllerRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub name: ::prost::alloc::string::String,
}
impl ::prost::Name for LoadControllerRequest {
    const NAME: &'static str = "LoadControllerRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.LoadControllerRequest"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.LoadControllerRequest"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LoadControllerResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub ok: bool,
}
impl ::prost::Name for LoadControllerResponse {
    const NAME: &'static str = "LoadControllerResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.LoadControllerResponse"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.LoadControllerResponse"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SwitchControllerRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, repeated, tag = "2")]
    pub activate_controllers: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
    #[prost(string, repeated, tag = "3")]
    pub deactivate_controllers: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
    #[prost(string, repeated, tag = "4")]
    pub start_controllers: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
    #[prost(string, repeated, tag = "5")]
    pub stop_controllers: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
    #[prost(int32, tag = "6")]
    pub strictness: i32,
    #[prost(bool, tag = "7")]
    pub start_asap: bool,
    #[prost(bool, tag = "8")]
    pub activate_asap: bool,
    #[prost(message, optional, tag = "9")]
    pub timeout: ::core::option::Option<super::super::builtin_interfaces::msg::Duration>,
}
impl ::prost::Name for SwitchControllerRequest {
    const NAME: &'static str = "SwitchControllerRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.SwitchControllerRequest"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.SwitchControllerRequest"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SwitchControllerResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(bool, tag = "2")]
    pub ok: bool,
}
impl ::prost::Name for SwitchControllerResponse {
    const NAME: &'static str = "SwitchControllerResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.controller_manager_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.controller_manager_msgs.srv.SwitchControllerResponse"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.controller_manager_msgs.srv.SwitchControllerResponse"
            .into()
    }
}
