// This file is @generated by prost-build.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EngagementLevel {
    #[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 level: u32,
}
impl ::prost::Name for EngagementLevel {
    const NAME: &'static str = "EngagementLevel";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.hri_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.hri_msgs.msg.EngagementLevel".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.hri_msgs.msg.EngagementLevel".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct NormalizedPointOfInterest2DStamped {
    #[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(float, tag = "3")]
    pub x: f32,
    #[prost(float, tag = "4")]
    pub y: f32,
    #[prost(float, tag = "5")]
    pub c: f32,
}
impl ::prost::Name for NormalizedPointOfInterest2DStamped {
    const NAME: &'static str = "NormalizedPointOfInterest2DStamped";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.hri_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.hri_msgs.msg.NormalizedPointOfInterest2DStamped"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.hri_msgs.msg.NormalizedPointOfInterest2DStamped"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct IdsList {
    #[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(string, repeated, tag = "3")]
    pub ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
impl ::prost::Name for IdsList {
    const NAME: &'static str = "IdsList";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.hri_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.hri_msgs.msg.IdsList".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.hri_msgs.msg.IdsList".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Group {
    #[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(string, tag = "3")]
    pub group_id: ::prost::alloc::string::String,
    #[prost(string, repeated, tag = "4")]
    pub members: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
impl ::prost::Name for Group {
    const NAME: &'static str = "Group";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.hri_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.hri_msgs.msg.Group".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.hri_msgs.msg.Group".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FacialActionUnits {
    #[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(float, repeated, tag = "3")]
    pub intensity: ::prost::alloc::vec::Vec<f32>,
    #[prost(float, repeated, tag = "4")]
    pub confidence: ::prost::alloc::vec::Vec<f32>,
}
impl ::prost::Name for FacialActionUnits {
    const NAME: &'static str = "FacialActionUnits";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.hri_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.hri_msgs.msg.FacialActionUnits".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.hri_msgs.msg.FacialActionUnits".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Expression {
    #[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(string, tag = "3")]
    pub expression: ::prost::alloc::string::String,
    #[prost(float, tag = "4")]
    pub valence: f32,
    #[prost(float, tag = "5")]
    pub arousal: f32,
    #[prost(float, tag = "6")]
    pub confidence: f32,
}
impl ::prost::Name for Expression {
    const NAME: &'static str = "Expression";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.hri_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.hri_msgs.msg.Expression".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.hri_msgs.msg.Expression".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct NormalizedPointOfInterest2D {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(float, tag = "2")]
    pub x: f32,
    #[prost(float, tag = "3")]
    pub y: f32,
    #[prost(float, tag = "4")]
    pub c: f32,
}
impl ::prost::Name for NormalizedPointOfInterest2D {
    const NAME: &'static str = "NormalizedPointOfInterest2D";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.hri_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.hri_msgs.msg.NormalizedPointOfInterest2D".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.hri_msgs.msg.NormalizedPointOfInterest2D".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FacialLandmarks {
    #[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, repeated, tag = "3")]
    pub landmarks: ::prost::alloc::vec::Vec<NormalizedPointOfInterest2D>,
    #[prost(uint32, tag = "4")]
    pub height: u32,
    #[prost(uint32, tag = "5")]
    pub width: u32,
}
impl ::prost::Name for FacialLandmarks {
    const NAME: &'static str = "FacialLandmarks";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.hri_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.hri_msgs.msg.FacialLandmarks".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.hri_msgs.msg.FacialLandmarks".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct IdsMatch {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub id1: ::prost::alloc::string::String,
    #[prost(int32, tag = "3")]
    pub id1_type: i32,
    #[prost(string, tag = "4")]
    pub id2: ::prost::alloc::string::String,
    #[prost(int32, tag = "5")]
    pub id2_type: i32,
    #[prost(float, tag = "6")]
    pub confidence: f32,
}
impl ::prost::Name for IdsMatch {
    const NAME: &'static str = "IdsMatch";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.hri_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.hri_msgs.msg.IdsMatch".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.hri_msgs.msg.IdsMatch".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct NormalizedRegionOfInterest2D {
    #[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(float, tag = "3")]
    pub xmin: f32,
    #[prost(float, tag = "4")]
    pub ymin: f32,
    #[prost(float, tag = "5")]
    pub xmax: f32,
    #[prost(float, tag = "6")]
    pub ymax: f32,
    #[prost(float, tag = "7")]
    pub c: f32,
}
impl ::prost::Name for NormalizedRegionOfInterest2D {
    const NAME: &'static str = "NormalizedRegionOfInterest2D";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.hri_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.hri_msgs.msg.NormalizedRegionOfInterest2D".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.hri_msgs.msg.NormalizedRegionOfInterest2D".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BodyPosture {
    #[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 posture: u32,
}
impl ::prost::Name for BodyPosture {
    const NAME: &'static str = "BodyPosture";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.hri_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.hri_msgs.msg.BodyPosture".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.hri_msgs.msg.BodyPosture".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SoftBiometrics {
    #[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 age: u32,
    #[prost(float, tag = "4")]
    pub age_confidence: f32,
    #[prost(uint32, tag = "5")]
    pub gender: u32,
    #[prost(float, tag = "6")]
    pub gender_confidence: f32,
}
impl ::prost::Name for SoftBiometrics {
    const NAME: &'static str = "SoftBiometrics";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.hri_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.hri_msgs.msg.SoftBiometrics".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.hri_msgs.msg.SoftBiometrics".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gesture {
    #[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 gesture: u32,
    #[prost(uint32, tag = "4")]
    pub handedness: u32,
}
impl ::prost::Name for Gesture {
    const NAME: &'static str = "Gesture";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.hri_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.hri_msgs.msg.Gesture".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.hri_msgs.msg.Gesture".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AudioFeatures {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(float, tag = "2")]
    pub zcr: f32,
    #[prost(float, tag = "3")]
    pub rms: f32,
    #[prost(float, tag = "4")]
    pub pitch: f32,
    #[prost(float, tag = "5")]
    pub hnr: f32,
    #[prost(float, repeated, tag = "6")]
    pub mfcc: ::prost::alloc::vec::Vec<f32>,
}
impl ::prost::Name for AudioFeatures {
    const NAME: &'static str = "AudioFeatures";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.hri_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.hri_msgs.msg.AudioFeatures".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.hri_msgs.msg.AudioFeatures".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Gaze {
    #[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(string, tag = "3")]
    pub sender: ::prost::alloc::string::String,
    #[prost(string, tag = "4")]
    pub receiver: ::prost::alloc::string::String,
}
impl ::prost::Name for Gaze {
    const NAME: &'static str = "Gaze";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.hri_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.hri_msgs.msg.Gaze".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.hri_msgs.msg.Gaze".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LiveSpeech {
    #[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(string, tag = "3")]
    pub incremental: ::prost::alloc::string::String,
    #[prost(string, tag = "4")]
    pub r#final: ::prost::alloc::string::String,
    #[prost(double, tag = "5")]
    pub confidence: f64,
    #[prost(string, tag = "6")]
    pub locale: ::prost::alloc::string::String,
    #[prost(string, tag = "7")]
    pub language: ::prost::alloc::string::String,
}
impl ::prost::Name for LiveSpeech {
    const NAME: &'static str = "LiveSpeech";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.hri_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.hri_msgs.msg.LiveSpeech".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.hri_msgs.msg.LiveSpeech".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Skeleton2D {
    #[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, repeated, tag = "3")]
    pub skeleton: ::prost::alloc::vec::Vec<NormalizedPointOfInterest2D>,
}
impl ::prost::Name for Skeleton2D {
    const NAME: &'static str = "Skeleton2D";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.hri_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.hri_msgs.msg.Skeleton2D".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.hri_msgs.msg.Skeleton2D".into()
    }
}
