ros2_interfaces_rolling/moveit_msgs/msg/
collision_object.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
4pub struct CollisionObject {
5 pub header: crate::std_msgs::msg::Header,
6 pub pose: crate::geometry_msgs::msg::Pose,
7 pub id: ::std::string::String,
8 #[serde(rename = "type")] pub type_: crate::object_recognition_msgs::msg::ObjectType,
9 pub primitives: Vec<crate::shape_msgs::msg::SolidPrimitive>,
10 pub primitive_poses: Vec<crate::geometry_msgs::msg::Pose>,
11 pub meshes: Vec<crate::shape_msgs::msg::Mesh>,
12 pub mesh_poses: Vec<crate::geometry_msgs::msg::Pose>,
13 pub planes: Vec<crate::shape_msgs::msg::Plane>,
14 pub plane_poses: Vec<crate::geometry_msgs::msg::Pose>,
15 pub subframe_names: Vec<::std::string::String>,
16 pub subframe_poses: Vec<crate::geometry_msgs::msg::Pose>,
17 pub operation: u8,
18}
19
20impl CollisionObject {
21 pub const ADD: u8 = 0;
22 pub const REMOVE: u8 = 1;
23 pub const APPEND: u8 = 2;
24 pub const MOVE: u8 = 3;
25}
26
27impl Default for CollisionObject {
28 fn default() -> Self {
29 CollisionObject {
30 header: crate::std_msgs::msg::Header::default(),
31 pose: crate::geometry_msgs::msg::Pose::default(),
32 id: ::std::string::String::new(),
33 type_: crate::object_recognition_msgs::msg::ObjectType::default(),
34 primitives: Vec::new(),
35 primitive_poses: Vec::new(),
36 meshes: Vec::new(),
37 mesh_poses: Vec::new(),
38 planes: Vec::new(),
39 plane_poses: Vec::new(),
40 subframe_names: Vec::new(),
41 subframe_poses: Vec::new(),
42 operation: 0,
43 }
44 }
45}
46
47impl ros2_client::Message for CollisionObject {}