// This file is @generated by prost-build.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ObjectInformation {
    #[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 ground_truth_mesh: ::core::option::Option<super::super::shape_msgs::msg::Mesh>,
    #[prost(message, optional, tag = "4")]
    pub ground_truth_point_cloud: ::core::option::Option<
        super::super::sensor_msgs::msg::PointCloud2,
    >,
}
impl ::prost::Name for ObjectInformation {
    const NAME: &'static str = "ObjectInformation";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.object_recognition_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.object_recognition_msgs.msg.ObjectInformation"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.object_recognition_msgs.msg.ObjectInformation"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ObjectType {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(string, tag = "2")]
    pub key: ::prost::alloc::string::String,
    #[prost(string, tag = "3")]
    pub db: ::prost::alloc::string::String,
}
impl ::prost::Name for ObjectType {
    const NAME: &'static str = "ObjectType";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.object_recognition_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.object_recognition_msgs.msg.ObjectType".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.object_recognition_msgs.msg.ObjectType".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Table {
    #[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 pose: ::core::option::Option<super::super::geometry_msgs::msg::Pose>,
    #[prost(message, repeated, tag = "4")]
    pub convex_hull: ::prost::alloc::vec::Vec<super::super::geometry_msgs::msg::Point>,
}
impl ::prost::Name for Table {
    const NAME: &'static str = "Table";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.object_recognition_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.object_recognition_msgs.msg.Table".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.object_recognition_msgs.msg.Table".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TableArray {
    #[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 tables: ::prost::alloc::vec::Vec<Table>,
}
impl ::prost::Name for TableArray {
    const NAME: &'static str = "TableArray";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.object_recognition_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.object_recognition_msgs.msg.TableArray".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.object_recognition_msgs.msg.TableArray".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RecognizedObject {
    #[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 r#type: ::core::option::Option<ObjectType>,
    #[prost(float, tag = "4")]
    pub confidence: f32,
    #[prost(message, repeated, tag = "5")]
    pub point_clouds: ::prost::alloc::vec::Vec<
        super::super::sensor_msgs::msg::PointCloud2,
    >,
    #[prost(message, optional, tag = "6")]
    pub bounding_mesh: ::core::option::Option<super::super::shape_msgs::msg::Mesh>,
    #[prost(message, repeated, tag = "7")]
    pub bounding_contours: ::prost::alloc::vec::Vec<
        super::super::geometry_msgs::msg::Point,
    >,
    #[prost(message, optional, tag = "8")]
    pub pose: ::core::option::Option<
        super::super::geometry_msgs::msg::PoseWithCovarianceStamped,
    >,
}
impl ::prost::Name for RecognizedObject {
    const NAME: &'static str = "RecognizedObject";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.object_recognition_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.object_recognition_msgs.msg.RecognizedObject".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.object_recognition_msgs.msg.RecognizedObject"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RecognizedObjectArray {
    #[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 objects: ::prost::alloc::vec::Vec<RecognizedObject>,
    #[prost(float, repeated, tag = "4")]
    pub cooccurrence: ::prost::alloc::vec::Vec<f32>,
}
impl ::prost::Name for RecognizedObjectArray {
    const NAME: &'static str = "RecognizedObjectArray";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.object_recognition_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.object_recognition_msgs.msg.RecognizedObjectArray"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.object_recognition_msgs.msg.RecognizedObjectArray"
            .into()
    }
}
