ros2_interfaces_rolling/game_controller_spl_interfaces/msg/
robot_info16.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
4pub struct RobotInfo16 {
5 pub penalty: u8,
6 pub secs_till_unpenalised: u8,
7}
8
9impl RobotInfo16 {
10 pub const PENALTY_NONE: u8 = 0;
11 pub const PENALTY_SPL_ILLEGAL_BALL_CONTACT: u8 = 1;
12 pub const PENALTY_SPL_PLAYER_PUSHING: u8 = 2;
13 pub const PENALTY_SPL_ILLEGAL_MOTION_IN_SET: u8 = 3;
14 pub const PENALTY_SPL_INACTIVE_PLAYER: u8 = 4;
15 pub const PENALTY_SPL_ILLEGAL_POSITION: u8 = 5;
16 pub const PENALTY_SPL_LEAVING_THE_FIELD: u8 = 6;
17 pub const PENALTY_SPL_REQUEST_FOR_PICKUP: u8 = 7;
18 pub const PENALTY_SPL_LOCAL_GAME_STUCK: u8 = 8;
19 pub const PENALTY_SPL_ILLEGAL_POSITION_IN_SET: u8 = 9;
20 pub const PENALTY_SPL_PLAYER_STANCE: u8 = 10;
21 pub const PENALTY_SPL_ILLEGAL_MOTION_IN_INITIAL: u8 = 11;
22 pub const PENALTY_SUBSTITUTE: u8 = 14;
23 pub const PENALTY_MANUAL: u8 = 15;
24}
25
26impl Default for RobotInfo16 {
27 fn default() -> Self {
28 RobotInfo16 {
29 penalty: 0,
30 secs_till_unpenalised: 0,
31 }
32 }
33}
34
35impl ros2_client::Message for RobotInfo16 {}