ros2_interfaces_rolling/radar_msgs/msg/
radar_track.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
4pub struct RadarTrack {
5 pub uuid: crate::unique_identifier_msgs::msg::UUID,
6 pub position: crate::geometry_msgs::msg::Point,
7 pub velocity: crate::geometry_msgs::msg::Vector3,
8 pub acceleration: crate::geometry_msgs::msg::Vector3,
9 pub size: crate::geometry_msgs::msg::Vector3,
10 pub classification: u16,
11 pub position_covariance: [f32; 6],
12 pub velocity_covariance: [f32; 6],
13 pub acceleration_covariance: [f32; 6],
14 pub size_covariance: [f32; 6],
15}
16
17impl RadarTrack {
18 pub const NO_CLASSIFICATION: u16 = 0;
19 pub const STATIC: u16 = 1;
20 pub const DYNAMIC: u16 = 2;
21}
22
23impl Default for RadarTrack {
24 fn default() -> Self {
25 RadarTrack {
26 uuid: crate::unique_identifier_msgs::msg::UUID::default(),
27 position: crate::geometry_msgs::msg::Point::default(),
28 velocity: crate::geometry_msgs::msg::Vector3::default(),
29 acceleration: crate::geometry_msgs::msg::Vector3::default(),
30 size: crate::geometry_msgs::msg::Vector3::default(),
31 classification: 0,
32 position_covariance: [0.0; 6],
33 velocity_covariance: [0.0; 6],
34 acceleration_covariance: [0.0; 6],
35 size_covariance: [0.0; 6],
36 }
37 }
38}
39
40impl ros2_client::Message for RadarTrack {}