// This file is @generated by prost-build.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TimedSwitch {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(int32, tag = "2")]
    pub switch_mode: i32,
    #[prost(int32, tag = "3")]
    pub num_cycles: i32,
    #[prost(float, repeated, tag = "4")]
    pub pulse_pattern: ::prost::alloc::vec::Vec<f32>,
}
impl ::prost::Name for TimedSwitch {
    const NAME: &'static str = "TimedSwitch";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.wiimote_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.wiimote_msgs.msg.TimedSwitch".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.wiimote_msgs.msg.TimedSwitch".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct IrSourceInfo {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(double, tag = "2")]
    pub x: f64,
    #[prost(double, tag = "3")]
    pub y: f64,
    #[prost(int64, tag = "4")]
    pub ir_size: i64,
}
impl ::prost::Name for IrSourceInfo {
    const NAME: &'static str = "IrSourceInfo";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.wiimote_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.wiimote_msgs.msg.IrSourceInfo".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.wiimote_msgs.msg.IrSourceInfo".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct State {
    #[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(message, optional, tag = "3")]
    pub angular_velocity_zeroed: ::core::option::Option<
        super::super::geometry_msgs::msg::Vector3,
    >,
    #[prost(message, optional, tag = "4")]
    pub angular_velocity_raw: ::core::option::Option<
        super::super::geometry_msgs::msg::Vector3,
    >,
    #[prost(double, repeated, tag = "5")]
    pub angular_velocity_covariance: ::prost::alloc::vec::Vec<f64>,
    #[prost(message, optional, tag = "6")]
    pub linear_acceleration_zeroed: ::core::option::Option<
        super::super::geometry_msgs::msg::Vector3,
    >,
    #[prost(message, optional, tag = "7")]
    pub linear_acceleration_raw: ::core::option::Option<
        super::super::geometry_msgs::msg::Vector3,
    >,
    #[prost(double, repeated, tag = "8")]
    pub linear_acceleration_covariance: ::prost::alloc::vec::Vec<f64>,
    #[prost(message, optional, tag = "9")]
    pub nunchuk_acceleration_zeroed: ::core::option::Option<
        super::super::geometry_msgs::msg::Vector3,
    >,
    #[prost(message, optional, tag = "10")]
    pub nunchuk_acceleration_raw: ::core::option::Option<
        super::super::geometry_msgs::msg::Vector3,
    >,
    #[prost(float, repeated, tag = "11")]
    pub nunchuk_joystick_zeroed: ::prost::alloc::vec::Vec<f32>,
    #[prost(float, repeated, tag = "12")]
    pub nunchuk_joystick_raw: ::prost::alloc::vec::Vec<f32>,
    #[prost(bool, repeated, tag = "13")]
    pub buttons: ::prost::alloc::vec::Vec<bool>,
    #[prost(bool, repeated, tag = "14")]
    pub nunchuk_buttons: ::prost::alloc::vec::Vec<bool>,
    #[prost(bool, repeated, tag = "15")]
    pub leds: ::prost::alloc::vec::Vec<bool>,
    #[prost(bool, tag = "16")]
    pub rumble: bool,
    #[prost(message, repeated, tag = "17")]
    pub ir_tracking: ::prost::alloc::vec::Vec<IrSourceInfo>,
    #[prost(float, tag = "18")]
    pub raw_battery: f32,
    #[prost(float, tag = "19")]
    pub percent_battery: f32,
    #[prost(message, optional, tag = "20")]
    pub zeroing_time: ::core::option::Option<
        super::super::builtin_interfaces::msg::Time,
    >,
    #[prost(uint64, tag = "21")]
    pub errors: u64,
}
impl ::prost::Name for State {
    const NAME: &'static str = "State";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.wiimote_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.wiimote_msgs.msg.State".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.wiimote_msgs.msg.State".into()
    }
}
