// This file is @generated by prost-build.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VirtualGateAreaStatus {
    #[prost(message, optional, tag = "1")]
    pub stamp: ::core::option::Option<super::super::builtin_interfaces::msg::Time>,
    #[prost(uint32, tag = "2")]
    pub status: u32,
    #[prost(uint32, tag = "3")]
    pub sequence_id: u32,
    #[prost(string, tag = "4")]
    pub area_id: ::prost::alloc::string::String,
    #[prost(string, repeated, tag = "5")]
    pub gate_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
    #[prost(message, repeated, tag = "6")]
    pub expected_time_arrival: ::prost::alloc::vec::Vec<
        super::super::builtin_interfaces::msg::Time,
    >,
}
impl ::prost::Name for VirtualGateAreaStatus {
    const NAME: &'static str = "VirtualGateAreaStatus";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.autoware_v2x_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.autoware_v2x_msgs.msg.VirtualGateAreaStatus".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.autoware_v2x_msgs.msg.VirtualGateAreaStatus".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VirtualGateStatus {
    #[prost(message, repeated, tag = "1")]
    pub areas: ::prost::alloc::vec::Vec<VirtualGateAreaStatus>,
}
impl ::prost::Name for VirtualGateStatus {
    const NAME: &'static str = "VirtualGateStatus";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.autoware_v2x_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.autoware_v2x_msgs.msg.VirtualGateStatus".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.autoware_v2x_msgs.msg.VirtualGateStatus".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VirtualGateAreaCommand {
    #[prost(uint32, tag = "1")]
    pub command: u32,
    #[prost(uint32, tag = "2")]
    pub sequence_id: u32,
    #[prost(string, tag = "3")]
    pub area_id: ::prost::alloc::string::String,
    #[prost(string, repeated, tag = "4")]
    pub gate_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
    #[prost(message, repeated, tag = "5")]
    pub expected_time_arrival: ::prost::alloc::vec::Vec<
        super::super::builtin_interfaces::msg::Time,
    >,
}
impl ::prost::Name for VirtualGateAreaCommand {
    const NAME: &'static str = "VirtualGateAreaCommand";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.autoware_v2x_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.autoware_v2x_msgs.msg.VirtualGateAreaCommand".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.autoware_v2x_msgs.msg.VirtualGateAreaCommand".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VirtualGateCommand {
    #[prost(message, optional, tag = "1")]
    pub stamp: ::core::option::Option<super::super::builtin_interfaces::msg::Time>,
    #[prost(message, repeated, tag = "2")]
    pub areas: ::prost::alloc::vec::Vec<VirtualGateAreaCommand>,
}
impl ::prost::Name for VirtualGateCommand {
    const NAME: &'static str = "VirtualGateCommand";
    const PACKAGE: &'static str = "make87_messages_ros2.jazzy.autoware_v2x_msgs.msg";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.jazzy.autoware_v2x_msgs.msg.VirtualGateCommand".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.jazzy.autoware_v2x_msgs.msg.VirtualGateCommand".into()
    }
}
