ros2_interfaces_rolling/tuw_object_map_msgs/msg/
object.rs

1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
4pub struct Object {
5    pub id: i64,
6    #[serde(rename = "type")]    pub type_: u32,
7    pub geo_points: Vec<crate::tuw_object_map_msgs::msg::GeoPoint>,
8    pub map_points: Vec<crate::geometry_msgs::msg::Point>,
9    pub enflation_radius: Vec<f64>,
10    pub bondary_radius: Vec<f64>,
11}
12
13impl Object {
14    pub const TYPE_NA: u32 = 0;
15    pub const TYPE_FRAME_ORIGIN: u32 = 100;
16    pub const TYPE_FRAME_WINDOW: u32 = 101;
17    pub const TYPE_PLANT: u32 = 200;
18    pub const TYPE_PLANT_WINE_ROW: u32 = 201;
19    pub const TYPE_OBSTACLE: u32 = 300;
20    pub const TYPE_OBSTACLE_HOUSE: u32 = 301;
21    pub const TYPE_OBSTACLE_TREE: u32 = 302;
22    pub const TYPE_TRANSIT: u32 = 400;
23    pub const TYPE_TRANSIT_STREET: u32 = 401;
24    pub const TYPE_TRANSIT_GRAVEL: u32 = 402;
25}
26
27impl Default for Object {
28    fn default() -> Self {
29        Object {
30            id: 0,
31            type_: 0,
32            geo_points: Vec::new(),
33            map_points: Vec::new(),
34            enflation_radius: Vec::new(),
35            bondary_radius: Vec::new(),
36        }
37    }
38}
39
40impl ros2_client::Message for Object {}