ros2_interfaces_rolling/derived_object_msgs/msg/
lane.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
4pub struct Lane {
5 pub quality: u8,
6 pub marker_kind: u8,
7 pub curve_model_kind: u8,
8 pub marker_offset: f64,
9 pub heading_angle: f64,
10 pub curvature: f64,
11 pub curvature_derivative: f64,
12 pub marker_width: f64,
13 pub view_range: f64,
14}
15
16impl Lane {
17 pub const LANE_QUALITY_INVALID: u8 = 0;
18 pub const LANE_QUALITY_UNKNOWN: u8 = 1;
19 pub const LANE_QUALITY_NOT_AVAILABLE: u8 = 2;
20 pub const LANE_QUALITY_0: u8 = 3;
21 pub const LANE_QUALITY_1: u8 = 4;
22 pub const LANE_QUALITY_2: u8 = 5;
23 pub const LANE_QUALITY_3: u8 = 6;
24 pub const LANE_QUALITY_4: u8 = 7;
25 pub const LANE_QUALITY_5: u8 = 8;
26 pub const LANE_QUALITY_6: u8 = 9;
27 pub const LANE_QUALITY_7: u8 = 10;
28 pub const LANE_QUALITY_8: u8 = 11;
29 pub const LANE_QUALITY_9: u8 = 12;
30 pub const LANE_QUALITY_KIND_COUNT: u8 = 13;
31 pub const LANE_MARKER_INVALID: u8 = 0;
32 pub const LANE_MARKER_UNKNOWN: u8 = 1;
33 pub const LANE_MARKER_NOT_AVAILABLE: u8 = 2;
34 pub const LANE_MARKER_NONE: u8 = 3;
35 pub const LANE_MARKER_SOLID: u8 = 4;
36 pub const LANE_MARKER_DASHED: u8 = 5;
37 pub const LANE_MARKER_VIRTUAL: u8 = 6;
38 pub const LANE_MARKER_DOTS: u8 = 7;
39 pub const LANE_MARKER_ROAD_EDGE: u8 = 8;
40 pub const LANE_MARKER_DOUBLE_LINE: u8 = 9;
41 pub const LANE_MARKER_KIND_COUNT: u8 = 10;
42 pub const LANE_CURVE_MODEL_INVALID: u8 = 0;
43 pub const LANE_CURVE_MODEL_UNKNOWN: u8 = 1;
44 pub const LANE_CURVE_MODEL_NOT_AVAILABLE: u8 = 2;
45 pub const LANE_CURVE_MODEL_LINEAR: u8 = 3;
46 pub const LANE_CURVE_MODEL_PARABOLIC: u8 = 4;
47 pub const LANE_CURVE_MODEL_3D: u8 = 5;
48 pub const LANE_CURVE_MODEL_KIND_COUNT: u8 = 6;
49}
50
51impl Default for Lane {
52 fn default() -> Self {
53 Lane {
54 quality: 0,
55 marker_kind: 0,
56 curve_model_kind: 0,
57 marker_offset: 0.0,
58 heading_angle: 0.0,
59 curvature: 0.0,
60 curvature_derivative: 0.0,
61 marker_width: 0.0,
62 view_range: 0.0,
63 }
64 }
65}
66
67impl ros2_client::Message for Lane {}