// This file is @generated by prost-build.
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct Point2D {
    #[prost(double, tag = "1")]
    pub x: f64,
    #[prost(double, tag = "2")]
    pub y: f64,
}
impl ::prost::Name for Point2D {
    const NAME: &'static str = "Point2D";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.polygon_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.polygon_msgs.msg.Point2D".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.polygon_msgs.msg.Point2D".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Polygon2D {
    #[prost(message, repeated, tag = "1")]
    pub points: ::prost::alloc::vec::Vec<Point2D>,
}
impl ::prost::Name for Polygon2D {
    const NAME: &'static str = "Polygon2D";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.polygon_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.polygon_msgs.msg.Polygon2D".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.polygon_msgs.msg.Polygon2D".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ComplexPolygon2D {
    #[prost(message, optional, tag = "1")]
    pub outer: ::core::option::Option<Polygon2D>,
    #[prost(message, repeated, tag = "2")]
    pub inner: ::prost::alloc::vec::Vec<Polygon2D>,
}
impl ::prost::Name for ComplexPolygon2D {
    const NAME: &'static str = "ComplexPolygon2D";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.polygon_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.polygon_msgs.msg.ComplexPolygon2D".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.polygon_msgs.msg.ComplexPolygon2D".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ComplexPolygon2DStamped {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub polygon: ::core::option::Option<ComplexPolygon2D>,
}
impl ::prost::Name for ComplexPolygon2DStamped {
    const NAME: &'static str = "ComplexPolygon2DStamped";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.polygon_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.polygon_msgs.msg.ComplexPolygon2DStamped".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.polygon_msgs.msg.ComplexPolygon2DStamped".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ComplexPolygon2DCollection {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, repeated, tag = "2")]
    pub polygons: ::prost::alloc::vec::Vec<ComplexPolygon2D>,
    #[prost(message, repeated, tag = "3")]
    pub colors: ::prost::alloc::vec::Vec<super::super::std_msgs::msg::ColorRgba>,
}
impl ::prost::Name for ComplexPolygon2DCollection {
    const NAME: &'static str = "ComplexPolygon2DCollection";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.polygon_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.polygon_msgs.msg.ComplexPolygon2DCollection".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.polygon_msgs.msg.ComplexPolygon2DCollection"
            .into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Polygon2DStamped {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, optional, tag = "2")]
    pub polygon: ::core::option::Option<Polygon2D>,
}
impl ::prost::Name for Polygon2DStamped {
    const NAME: &'static str = "Polygon2DStamped";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.polygon_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.polygon_msgs.msg.Polygon2DStamped".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.polygon_msgs.msg.Polygon2DStamped".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Polygon2DCollection {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<super::super::std_msgs::msg::Header>,
    #[prost(message, repeated, tag = "2")]
    pub polygons: ::prost::alloc::vec::Vec<Polygon2D>,
    #[prost(message, repeated, tag = "3")]
    pub colors: ::prost::alloc::vec::Vec<super::super::std_msgs::msg::ColorRgba>,
}
impl ::prost::Name for Polygon2DCollection {
    const NAME: &'static str = "Polygon2DCollection";
    const PACKAGE: &'static str = "make87_messages_ros2.rolling.polygon_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.rolling.polygon_msgs.msg.Polygon2DCollection".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.rolling.polygon_msgs.msg.Polygon2DCollection".into()
    }
}
