rm_control
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
referee_base.h
Go to the documentation of this file.
1//
2// Created by ljq on 2021/12/3.
3//
4
5#pragma once
6
8#include <ros/timer.h>
10
16
17namespace rm_referee
18{
20{
21public:
22 explicit RefereeBase(ros::NodeHandle& nh, Base& base);
23 virtual void addUi();
24
25 // unpack call back
26 virtual void robotStatusDataCallBack(const rm_msgs::GameRobotStatus& game_robot_status_data,
27 const ros::Time& last_get_data_time);
28 virtual void gameStatusDataCallBack(const rm_msgs::GameStatus& game_status_data, const ros::Time& last_get_data_time);
29 virtual void capacityDataCallBack(const rm_msgs::PowerManagementSampleAndStatusData& data,
30 ros::Time& last_get_data_time);
31 virtual void powerHeatDataCallBack(const rm_msgs::PowerHeatData& power_heat_data, const ros::Time& last_get_data_time);
32 virtual void robotHurtDataCallBack(const rm_msgs::RobotHurt& robot_hurt_data, const ros::Time& last_get_data_time);
33 virtual void bulletRemainDataCallBack(const rm_msgs::BulletAllowance& bullet_allowance,
34 const ros::Time& last_get_data_time);
35 virtual void interactiveDataCallBack(const rm_referee::InteractiveData& interactive_data,
36 const ros::Time& last_get_data_time);
37 virtual void eventDataCallBack(const rm_msgs::EventData& event_data, const ros::Time& last_get_data_time);
38 virtual void updateHeroHitDataCallBack(const rm_msgs::GameRobotHp& game_robot_hp_data);
39 virtual void supplyBulletDataCallBack(const rm_msgs::SupplyProjectileAction& data);
40 virtual void updateShootDataDataCallBack(const rm_msgs::ShootData& msg);
41 virtual void updateBulletRemainData(const rm_referee::BulletNumData& data);
42
43 // sub call back
44 virtual void jointStateCallback(const sensor_msgs::JointState::ConstPtr& joint_state);
45 virtual void actuatorStateCallback(const rm_msgs::ActuatorState::ConstPtr& data);
46 virtual void dbusDataCallback(const rm_msgs::DbusData::ConstPtr& data);
47 virtual void chassisCmdDataCallback(const rm_msgs::ChassisCmd::ConstPtr& data);
48 virtual void vel2DCmdDataCallback(const geometry_msgs::Twist::ConstPtr& data);
49 virtual void shootStateCallback(const rm_msgs::ShootState::ConstPtr& data);
50 virtual void gimbalCmdDataCallback(const rm_msgs::GimbalCmd::ConstPtr& data);
51 virtual void cardCmdDataCallback(const rm_msgs::StateCmd::ConstPtr& data);
52 virtual void engineerUiDataCallback(const rm_msgs::EngineerUi::ConstPtr& data);
53 virtual void manualDataCallBack(const rm_msgs::ManualToReferee::ConstPtr& data);
54 virtual void radarDataCallBack(const std_msgs::Int8MultiArrayConstPtr& data);
55 virtual void cameraNameCallBack(const std_msgs::StringConstPtr& data);
56 virtual void trackCallBack(const rm_msgs::TrackDataConstPtr& data);
57 virtual void balanceStateCallback(const rm_msgs::BalanceStateConstPtr& data);
58 virtual void radarReceiveCallback(const rm_msgs::ClientMapReceiveData::ConstPtr& data);
59 virtual void mapSentryCallback(const rm_msgs::MapSentryDataConstPtr& data);
60 virtual void sentryAttackingTargetCallback(const rm_msgs::SentryAttackingTargetConstPtr& data);
61 virtual void sendSentryCmdCallback(const rm_msgs::SentryCmdConstPtr& data);
62 virtual void sendRadarCmdCallback(const rm_msgs::RadarInfoConstPtr& data);
63 virtual void sendCustomInfoCallback(const std_msgs::StringConstPtr& data);
64 virtual void dronePoseCallBack(const geometry_msgs::PoseStampedConstPtr& data);
65 virtual void shootCmdCallBack(const rm_msgs::ShootCmdConstPtr& data);
66 virtual void radarToRefereeCallBack(const rm_msgs::RadarToSentryConstPtr& data);
67 virtual void customizeDisplayCmdCallBack(const std_msgs::UInt32ConstPtr& data);
68 virtual void visualizeStateDataCallBack(const rm_msgs::VisualizeStateDataConstPtr& data);
69
70 // send ui
72 void sendQueue();
73
74 ros::Subscriber joint_state_sub_;
75 ros::Subscriber actuator_state_sub_;
76 ros::Subscriber dbus_sub_;
77 ros::Subscriber chassis_cmd_sub_;
78 ros::Subscriber vel2D_cmd_sub_;
79 ros::Subscriber shoot_state_sub_;
80 ros::Subscriber gimbal_cmd_sub_;
81 ros::Subscriber detection_status_sub_;
82 ros::Subscriber card_cmd_sub_;
83 ros::Subscriber calibration_status_sub_;
84 ros::Subscriber engineer_cmd_sub_;
85 ros::Subscriber radar_date_sub_;
86 ros::Subscriber manual_data_sub_;
87 ros::Subscriber camera_name_sub_;
88 ros::Subscriber track_sub_;
89 ros::Subscriber balance_state_sub_;
90 ros::Subscriber radar_receive_sub_;
91 ros::Subscriber map_sentry_sub_;
92 ros::Subscriber sentry_to_referee_sub_;
93 ros::Subscriber radar_to_referee_sub_;
94 ros::Subscriber sentry_cmd_sub_;
95 ros::Subscriber radar_cmd_sub_;
96 ros::Subscriber sentry_state_sub_;
97 ros::Subscriber drone_pose_sub_;
98 ros::Subscriber shoot_cmd_sub_;
101
109
124
129
131
139
145
147 std::deque<Graph> graph_queue_;
148 std::deque<Graph> character_queue_;
149 // std::deque<std::tuple<>> interactive_data_queue_;
150
154
159 bool add_ui_flag_ = false, is_adding_ = false;
160 ros::NodeHandle nh_;
161 std::string dbus_topic_;
162};
163} // namespace rm_referee
Definition time_change_ui.h:180
Definition data.h:112
Definition interactive_data.h:40
Definition time_change_ui.h:293
Definition flash_ui.h:160
Definition trigger_change_ui.h:206
Definition time_change_ui.h:43
Definition trigger_change_ui.h:49
Definition flash_ui.h:68
Definition interactive_data.h:28
Definition flash_ui.h:44
Definition time_change_ui.h:85
Definition flash_ui.h:95
Definition time_change_ui.h:320
Definition time_change_ui.h:57
Definition flash_ui.h:145
Definition ui_base.h:98
Definition trigger_change_ui.h:244
Definition time_change_ui.h:353
Definition trigger_change_ui.h:101
Definition ui_base.h:72
Definition flash_ui.h:110
Definition time_change_ui.h:255
Definition interactive_data.h:12
Definition time_change_ui.h:268
Definition time_change_ui.h:133
Definition time_change_ui.h:242
Definition time_change_ui.h:71
Definition interactive_data.h:64
Definition referee_base.h:20
FrictionSpeedTriggerChangeUi * friction_speed_trigger_change_ui_
Definition referee_base.h:108
virtual void robotHurtDataCallBack(const rm_msgs::RobotHurt &robot_hurt_data, const ros::Time &last_get_data_time)
Definition referee_base.cpp:381
virtual void radarReceiveCallback(const rm_msgs::ClientMapReceiveData::ConstPtr &data)
Definition referee_base.cpp:522
virtual void updateHeroHitDataCallBack(const rm_msgs::GameRobotHp &game_robot_hp_data)
Definition referee_base.cpp:362
ros::Subscriber sentry_state_sub_
Definition referee_base.h:96
ProgressTimeChangeUi * progress_time_change_ui_
Definition referee_base.h:113
GimbalTriggerChangeUi * gimbal_trigger_change_ui_
Definition referee_base.h:104
BurstFlashUi * burst_flash_ui_
Definition referee_base.h:138
StringTriggerChangeUi * joint_temperature_trigger_change_ui_
Definition referee_base.h:127
ros::Subscriber manual_data_sub_
Definition referee_base.h:86
virtual void robotStatusDataCallBack(const rm_msgs::GameRobotStatus &game_robot_status_data, const ros::Time &last_get_data_time)
Definition referee_base.cpp:356
virtual void balanceStateCallback(const rm_msgs::BalanceStateConstPtr &data)
Definition referee_base.cpp:512
virtual void interactiveDataCallBack(const rm_referee::InteractiveData &interactive_data, const ros::Time &last_get_data_time)
Definition referee_base.cpp:392
RadarToSentry * radar_to_sentry_
Definition referee_base.h:144
BulletTimeChangeUi * bullet_time_change_ui_
Definition referee_base.h:110
int add_ui_max_times_
Definition referee_base.h:157
ros::Subscriber camera_name_sub_
Definition referee_base.h:87
ros::Subscriber visualize_state_data_sub_
Definition referee_base.h:100
virtual void sendSentryCmdCallback(const rm_msgs::SentryCmdConstPtr &data)
Definition referee_base.cpp:551
virtual void radarToRefereeCallBack(const rm_msgs::RadarToSentryConstPtr &data)
Definition referee_base.cpp:607
ros::Subscriber chassis_cmd_sub_
Definition referee_base.h:77
void sendSerialDataCallback()
Definition referee_base.cpp:270
virtual void eventDataCallBack(const rm_msgs::EventData &event_data, const ros::Time &last_get_data_time)
Definition referee_base.cpp:395
virtual void gimbalCmdDataCallback(const rm_msgs::GimbalCmd::ConstPtr &data)
Definition referee_base.cpp:463
LaneLineTimeChangeGroupUi * lane_line_time_change_ui_
Definition referee_base.h:116
virtual void updateBulletRemainData(const rm_referee::BulletNumData &data)
Definition referee_base.cpp:601
GroupUiBase * graph_queue_sender_
Definition referee_base.h:146
CapacitorTimeChangeUi * capacitor_time_change_ui_
Definition referee_base.h:111
virtual void mapSentryCallback(const rm_msgs::MapSentryDataConstPtr &data)
Definition referee_base.cpp:532
std::string dbus_topic_
Definition referee_base.h:161
ros::Subscriber actuator_state_sub_
Definition referee_base.h:75
virtual void actuatorStateCallback(const rm_msgs::ActuatorState::ConstPtr &data)
Definition referee_base.cpp:417
ros::Subscriber joint_state_sub_
Definition referee_base.h:74
SpinFlashUi * spin_flash_ui_
Definition referee_base.h:133
ros::Subscriber engineer_cmd_sub_
Definition referee_base.h:84
EffortTimeChangeUi * effort_time_change_ui_
Definition referee_base.h:112
virtual void customizeDisplayCmdCallBack(const std_msgs::UInt32ConstPtr &data)
Definition referee_base.cpp:613
CameraTriggerChangeUi * camera_trigger_change_ui_
Definition referee_base.h:107
std::deque< Graph > character_queue_
Definition referee_base.h:148
virtual void shootCmdCallBack(const rm_msgs::ShootCmdConstPtr &data)
Definition referee_base.cpp:595
ros::Subscriber vel2D_cmd_sub_
Definition referee_base.h:78
virtual void chassisCmdDataCallback(const rm_msgs::ChassisCmd::ConstPtr &data)
Definition referee_base.cpp:440
StringTriggerChangeUi * servo_mode_trigger_change_ui_
Definition referee_base.h:126
virtual void sendRadarCmdCallback(const rm_msgs::RadarInfoConstPtr &data)
Definition referee_base.cpp:561
ros::Time radar_interactive_data_last_send_
Definition referee_base.h:151
void sendQueue()
Definition referee_base.cpp:321
BalancePitchTimeChangeGroupUi * balance_pitch_time_change_group_ui_
Definition referee_base.h:117
ros::Subscriber balance_state_sub_
Definition referee_base.h:89
InteractiveSender * interactive_data_sender_
Definition referee_base.h:140
ros::Subscriber sentry_cmd_sub_
Definition referee_base.h:94
ros::Subscriber card_cmd_sub_
Definition referee_base.h:82
JointPositionTimeChangeUi * engineer_joint2_time_change_ui
Definition referee_base.h:120
virtual void shootStateCallback(const rm_msgs::ShootState::ConstPtr &data)
Definition referee_base.cpp:456
bool add_ui_flag_
Definition referee_base.h:159
ros::Subscriber shoot_cmd_sub_
Definition referee_base.h:98
StringTriggerChangeUi * gripper_state_trigger_change_ui_
Definition referee_base.h:127
ros::Subscriber customize_display_cmd_sub_
Definition referee_base.h:99
DroneTowardsTimeChangeGroupUi * drone_towards_time_change_group_ui_
Definition referee_base.h:125
virtual void addUi()
Definition referee_base.cpp:191
virtual void radarDataCallBack(const std_msgs::Int8MultiArrayConstPtr &data)
Definition referee_base.cpp:497
virtual void manualDataCallBack(const rm_msgs::ManualToReferee::ConstPtr &data)
Definition referee_base.cpp:482
virtual void sendCustomInfoCallback(const std_msgs::StringConstPtr &data)
Definition referee_base.cpp:572
ros::Time sentry_interactive_data_last_send_
Definition referee_base.h:152
CustomInfoSender * custom_info_sender
Definition referee_base.h:141
ros::Time sentry_cmd_data_last_send_
Definition referee_base.h:153
TargetViewAngleTriggerChangeUi * target_view_angle_trigger_change_ui_
Definition referee_base.h:106
FixedUi * fixed_ui_
Definition referee_base.h:130
HeroHitFlashUi * hero_hit_flash_ui_
Definition referee_base.h:135
ros::Subscriber map_sentry_sub_
Definition referee_base.h:91
virtual void dbusDataCallback(const rm_msgs::DbusData::ConstPtr &data)
Definition referee_base.cpp:420
JointPositionTimeChangeUi * engineer_joint3_time_change_ui
Definition referee_base.h:121
StringTriggerChangeUi * stone_num_trigger_change_ui_
Definition referee_base.h:126
virtual void vel2DCmdDataCallback(const geometry_msgs::Twist::ConstPtr &data)
Definition referee_base.cpp:451
ShooterTriggerChangeUi * shooter_trigger_change_ui_
Definition referee_base.h:103
CoverFlashUi * cover_flash_ui_
Definition referee_base.h:132
RefereeBase(ros::NodeHandle &nh, Base &base)
Definition referee_base.cpp:10
ExceedBulletSpeedFlashUi * exceed_bullet_speed_flash_ui_
Definition referee_base.h:136
JointPositionTimeChangeUi * engineer_joint1_time_change_ui
Definition referee_base.h:120
ros::Subscriber sentry_to_referee_sub_
Definition referee_base.h:92
virtual void cardCmdDataCallback(const rm_msgs::StateCmd::ConstPtr &data)
Definition referee_base.cpp:468
virtual void bulletRemainDataCallBack(const rm_msgs::BulletAllowance &bullet_allowance, const ros::Time &last_get_data_time)
Definition referee_base.cpp:384
ros::Subscriber detection_status_sub_
Definition referee_base.h:81
ros::Subscriber calibration_status_sub_
Definition referee_base.h:83
ros::Subscriber track_sub_
Definition referee_base.h:88
ros::Subscriber dbus_sub_
Definition referee_base.h:76
double send_ui_queue_delay_
Definition referee_base.h:158
ros::Time radar_cmd_data_last_send_
Definition referee_base.h:153
RotationTimeChangeUi * rotation_time_change_ui_
Definition referee_base.h:115
virtual void supplyBulletDataCallBack(const rm_msgs::SupplyProjectileAction &data)
Definition referee_base.cpp:579
FriendBulletsTimeChangeGroupUi * friend_bullets_time_change_group_ui_
Definition referee_base.h:123
ros::Subscriber shoot_state_sub_
Definition referee_base.h:79
ros::Subscriber radar_to_referee_sub_
Definition referee_base.h:93
CustomizeDisplayFlashUi * customize_display_flash_ui_
Definition referee_base.h:137
virtual void visualizeStateDataCallBack(const rm_msgs::VisualizeStateDataConstPtr &data)
Definition referee_base.cpp:619
virtual void sentryAttackingTargetCallback(const rm_msgs::SentryAttackingTargetConstPtr &data)
Definition referee_base.cpp:517
SentryToRadar * sentry_to_radar_
Definition referee_base.h:143
TargetDistanceTimeChangeUi * target_distance_time_change_ui_
Definition referee_base.h:122
int add_ui_times_
Definition referee_base.h:157
virtual void updateShootDataDataCallBack(const rm_msgs::ShootData &msg)
Definition referee_base.cpp:589
virtual void trackCallBack(const rm_msgs::TrackDataConstPtr &data)
Definition referee_base.cpp:505
virtual void cameraNameCallBack(const std_msgs::StringConstPtr &data)
Definition referee_base.cpp:500
Base & base_
Definition referee_base.h:155
ros::Subscriber drone_pose_sub_
Definition referee_base.h:97
BulletNumShare * bullet_num_share_
Definition referee_base.h:142
virtual void dronePoseCallBack(const geometry_msgs::PoseStampedConstPtr &data)
Definition referee_base.cpp:583
virtual void engineerUiDataCallback(const rm_msgs::EngineerUi::ConstPtr &data)
Definition referee_base.cpp:471
ros::Subscriber gimbal_cmd_sub_
Definition referee_base.h:80
ros::Timer add_ui_timer_
Definition referee_base.h:156
PitchAngleTimeChangeUi * pitch_angle_time_change_ui_
Definition referee_base.h:118
ros::Timer send_serial_data_timer_
Definition referee_base.h:156
ros::Subscriber radar_date_sub_
Definition referee_base.h:85
VisualizeStateTriggerChangeUi * visualize_state_trigger_change_ui_
Definition referee_base.h:128
virtual void powerHeatDataCallBack(const rm_msgs::PowerHeatData &power_heat_data, const ros::Time &last_get_data_time)
Definition referee_base.cpp:378
bool is_adding_
Definition referee_base.h:159
ros::Subscriber radar_cmd_sub_
Definition referee_base.h:95
virtual void gameStatusDataCallBack(const rm_msgs::GameStatus &game_status_data, const ros::Time &last_get_data_time)
Definition referee_base.cpp:367
DartStatusTimeChangeUi * dart_status_time_change_ui_
Definition referee_base.h:114
DeployFlashUi * deploy_flash_ui_
Definition referee_base.h:134
ImageTransmissionAngleTimeChangeUi * image_transmission_angle_time_change_ui_
Definition referee_base.h:119
TargetTriggerChangeUi * target_trigger_change_ui_
Definition referee_base.h:105
ros::Subscriber radar_receive_sub_
Definition referee_base.h:90
std::deque< Graph > graph_queue_
Definition referee_base.h:147
virtual void capacityDataCallBack(const rm_msgs::PowerManagementSampleAndStatusData &data, ros::Time &last_get_data_time)
Definition referee_base.cpp:370
ChassisTriggerChangeUi * chassis_trigger_change_ui_
Definition referee_base.h:102
virtual void jointStateCallback(const sensor_msgs::JointState::ConstPtr &joint_state)
Definition referee_base.cpp:398
int add_ui_frequency_
Definition referee_base.h:157
ros::NodeHandle nh_
Definition referee_base.h:160
Definition time_change_ui.h:98
Definition interactive_data.h:51
Definition trigger_change_ui.h:82
Definition flash_ui.h:82
Definition trigger_change_ui.h:231
Definition time_change_ui.h:307
Definition trigger_change_ui.h:120
Definition trigger_change_ui.h:143
Definition trigger_change_ui.h:257
Definition data.h:101