9#include <rm_msgs/LeggedChassisStatus.h>
18 explicit TimeChangeUi(XmlRpc::XmlRpcValue& rpc_value,
Base& base,
const std::string& graph_name,
19 std::deque<Graph>* graph_queue, std::deque<Graph>* character_queue)
20 :
UiBase(rpc_value, base, graph_queue, character_queue)
33 std::deque<Graph>* graph_queue, std::deque<Graph>* character_queue)
34 :
GroupUiBase(rpc_value, base, graph_queue, character_queue)
50 std::deque<Graph>* character_queue)
51 :
TimeChangeUi(rpc_value, base,
"capacitor", graph_queue, character_queue){};
56 void updateConfig()
override;
57 double remain_charge_;
64 std::deque<Graph>* character_queue)
65 :
TimeChangeUi(rpc_value, base,
"relocalize", graph_queue, character_queue)
72 void updateConfig()
override;
73 double relocalize_progress_;
80 std::deque<Graph>* character_queue)
81 :
TimeChangeUi(rpc_value, base,
"effort", graph_queue, character_queue){};
85 void updateConfig()
override;
87 std::string joint_name_;
94 std::deque<Graph>* character_queue)
95 :
TimeChangeUi(rpc_value, base,
"progress", graph_queue, character_queue){};
96 void updateEngineerUiData(
const rm_msgs::EngineerUi::ConstPtr data,
const ros::Time& last_get_data_time);
99 void updateConfig()
override;
100 uint32_t finished_data_, total_steps_;
101 std::string step_name_;
108 std::deque<Graph>* character_queue)
109 :
TimeChangeUi(rpc_value, base,
"dart", graph_queue, character_queue){};
110 void updateDartClientCmd(
const rm_msgs::DartClientCmd::ConstPtr data,
const ros::Time& last_get_data_time);
113 void updateConfig()
override;
114 uint8_t dart_launch_opening_status_;
121 std::deque<Graph>* character_queue)
122 :
TimeChangeUi(rpc_value, base,
"rotation", graph_queue, character_queue)
124 if (rpc_value.hasMember(
"data"))
126 XmlRpc::XmlRpcValue data = rpc_value[
"data"];
129 arc_scale_ = static_cast<int>(data[
"scale"]);
130 gimbal_reference_frame_ = static_cast<std::string>(data[
"gimbal_reference_frame"]);
131 chassis_reference_frame_ = static_cast<std::string>(data[
"chassis_reference_frame"]);
133 catch (XmlRpc::XmlRpcException& e)
135 ROS_FATAL_STREAM(
"Exception raised by XmlRpc while reading the "
136 <<
"configuration: " << e.getMessage() <<
".\n"
137 <<
"Please check configuration is exit");
141 ROS_WARN(
"RotationTimeChangeUi config 's member 'data' not defined.");
143 void updateChassisCmdData(
const rm_msgs::ChassisCmd::ConstPtr data);
146 void updateConfig()
override;
148 std::string gimbal_reference_frame_, chassis_reference_frame_;
149 uint8_t chassis_mode_;
156 std::deque<Graph>* character_queue)
159 if (rpc_value.hasMember(
"data"))
161 XmlRpc::XmlRpcValue& data = rpc_value[
"data"];
162 robot_radius_ = data[
"radius"];
163 robot_height_ = data[
"height"];
164 camera_range_ = data[
"camera_range"];
165 surface_coefficient_ = data[
"surface_coefficient"];
168 ROS_WARN(
"LaneLineTimeChangeGroupUi config 's member 'data' not defined.");
170 if (rpc_value.hasMember(
"reference_frame"))
172 reference_frame_ = static_cast<std::string>(rpc_value[
"reference_frame"]);
175 ROS_WARN(
"LaneLineTimeChangeGroupUi config 's member 'reference_frame' not defined.");
177 graph_vector_.insert(
178 std::pair<std::string, Graph*>(graph_name_ +
"_left",
new Graph(rpc_value[
"config"], base_, id_++)));
179 graph_vector_.insert(
180 std::pair<std::string, Graph*>(graph_name_ +
"_right",
new Graph(rpc_value[
"config"], base_, id_++)));
182 for (
auto it : graph_vector_)
183 lane_line_double_graph_.push_back(it.second);
185 void updateJointStateData(
const sensor_msgs::JointState::ConstPtr data,
const ros::Time& time);
189 double robot_radius_, robot_height_,
camera_range_, surface_coefficient_ = 0.5;
190 double pitch_angle_ = 0., screen_x_ = 1920, screen_y_ = 1080;
194 void updateConfig()
override;
196 std::vector<Graph*> lane_line_double_graph_;
203 std::deque<Graph>* character_queue)
204 :
TimeChangeGroupUi(rpc_value, base,
"balance_pitch", graph_queue, character_queue)
206 XmlRpc::XmlRpcValue config;
208 config[
"type"] =
"line";
209 if (rpc_value[
"config"].hasMember(
"color"))
210 config[
"color"] = rpc_value[
"config"][
"color"];
212 config[
"color"] =
"cyan";
213 if (rpc_value[
"config"].hasMember(
"width"))
214 config[
"width"] = rpc_value[
"config"][
"width"];
217 if (rpc_value[
"config"].hasMember(
"delay"))
218 config[
"delay"] = rpc_value[
"config"][
"delay"];
220 config[
"delay"] = 0.2;
222 XmlRpc::XmlRpcValue data = rpc_value[
"data"];
223 ROS_ASSERT(data.hasMember(
"centre_point") && data.hasMember(
"bottom_angle") && data.hasMember(
"length"));
224 centre_point_[0] =
static_cast<int>(data[
"centre_point"][0]);
225 centre_point_[1] =
static_cast<int>(data[
"centre_point"][1]);
226 bottom_angle_ = data[
"bottom_angle"];
227 length_ = data[
"length"];
228 triangle_left_point_[0] = centre_point_[0] - length_ * sin(bottom_angle_ / 2);
229 triangle_left_point_[1] = centre_point_[1] + length_ * cos(bottom_angle_ / 2);
230 triangle_right_point_[0] = centre_point_[0] + length_ * sin(bottom_angle_ / 2);
231 triangle_right_point_[1] = centre_point_[1] + length_ * cos(bottom_angle_ / 2);
233 config[
"start_position"][0] = centre_point_[0] - length_;
234 config[
"start_position"][1] = centre_point_[1];
235 config[
"end_position"][0] = centre_point_[0] + length_;
236 config[
"end_position"][1] = centre_point_[1];
237 graph_vector_.insert(std::make_pair<std::string, Graph*>(
"bottom",
new Graph(config, base_, id_++)));
239 config[
"start_position"][0] = centre_point_[0];
240 config[
"start_position"][1] = centre_point_[1];
241 config[
"end_position"][0] = triangle_left_point_[0];
242 config[
"end_position"][1] = triangle_left_point_[1];
243 graph_vector_.insert(std::make_pair<std::string, Graph*>(
"triangle_left_side",
new Graph(config, base_, id_++)));
245 config[
"start_position"][0] = centre_point_[0];
246 config[
"start_position"][1] = centre_point_[1];
247 config[
"end_position"][0] = triangle_right_point_[0];
248 config[
"end_position"][1] = triangle_right_point_[1];
249 graph_vector_.insert(std::make_pair<std::string, Graph*>(
"triangle_right_side",
new Graph(config, base_, id_++)));
252 void calculatePointPosition(
const rm_msgs::BalanceStateConstPtr& data,
const ros::Time& time);
255 void updateConfig()
override;
257 int centre_point_[2], triangle_left_point_[2], triangle_right_point_[2], length_;
258 double bottom_angle_;
265 std::deque<Graph>* character_queue)
266 :
TimeChangeUi(rpc_value, base,
"pitch", graph_queue, character_queue){};
267 void updateJointStateData(
const sensor_msgs::JointState::ConstPtr data,
const ros::Time& time);
270 void updateConfig()
override;
271 double pitch_angle_ = 0.;
278 std::deque<Graph>* graph_queue, std::deque<Graph>* character_queue)
279 :
TimeChangeUi(rpc_value, base,
"image_transmission", graph_queue, character_queue){};
280 void updateJointStateData(
const sensor_msgs::JointState::ConstPtr data,
const ros::Time& time);
283 void updateConfig()
override;
284 double image_transmission_angle_ = 0.;
291 std::deque<Graph>* character_queue, std::string name)
292 :
TimeChangeUi(rpc_value, base, name, graph_queue, character_queue)
294 if (rpc_value.hasMember(
"data"))
296 XmlRpc::XmlRpcValue data = rpc_value[
"data"];
297 min_val_ = static_cast<double>(data[
"min_val"]);
298 max_val_ = static_cast<double>(data[
"max_val"]);
299 direction_ = static_cast<std::string>(data[
"direction"]);
300 length_ = static_cast<double>(data[
"line_length"]);
304 void updateJointStateData(
const sensor_msgs::JointState::ConstPtr data,
const ros::Time& time);
307 void updateConfig()
override;
308 std::string name_, direction_;
309 double max_val_, min_val_, current_val_, length_;
316 std::deque<Graph>* character_queue)
317 :
TimeChangeUi(rpc_value, base,
"remaining_bullet", graph_queue, character_queue){};
318 void updateBulletData(
const rm_msgs::BulletAllowance& data,
const ros::Time& time);
322 void updateConfig()
override;
323 int bullet_allowance_num_17_mm_, bullet_allowance_num_42_mm_, bullet_num_17_mm_{ 0 }, bullet_num_42_mm_{ 0 };
330 std::deque<Graph>* character_queue)
331 :
TimeChangeUi(rpc_value, base,
"target_distance", graph_queue, character_queue){};
332 void updateTargetDistanceData(
const rm_msgs::TrackData::ConstPtr& data);
335 void updateConfig()
override;
336 double target_distance_;
343 std::deque<Graph>* character_queue)
344 :
TimeChangeUi(rpc_value, base,
"deploy_distance", graph_queue, character_queue){};
345 void updateDeployDistanceData(
const geometry_msgs::PointConstPtr& data);
348 void updateConfig()
override;
349 double deploy_distance_{};
356 std::deque<Graph>* character_queue)
357 :
TimeChangeUi(rpc_value, base,
"hero_leg_feedforward_countdown", graph_queue, character_queue)
360 void updateFeedforwardCountdown(
int feedforward_countdown);
363 void updateConfig()
override;
364 int feedforward_countdown_{};
370 std::deque<Graph>* character_queue)
371 :
TimeChangeGroupUi(rpc_value, base,
"drone_towards", graph_queue, character_queue)
373 if (rpc_value.hasMember(
"data"))
375 XmlRpc::XmlRpcValue& data = rpc_value[
"data"];
376 ori_x_ = static_cast<int>(data[
"ori_x"]);
377 ori_y_ = static_cast<int>(data[
"ori_y"]);
380 ROS_WARN(
"DroneTowardsTimeChangeGroupUi config 's member 'data' not defined.");
382 graph_vector_.insert(
383 std::pair<std::string, Graph*>(graph_name_ +
"_mid",
new Graph(rpc_value[
"config"], base_, id_++)));
384 graph_vector_.insert(
385 std::pair<std::string, Graph*>(graph_name_ +
"_left",
new Graph(rpc_value[
"config"], base_, id_++)));
386 graph_vector_.insert(
387 std::pair<std::string, Graph*>(graph_name_ +
"_right",
new Graph(rpc_value[
"config"], base_, id_++)));
389 void updateTowardsData(
const geometry_msgs::PoseStampedConstPtr& data);
392 void updateConfig()
override;
395 int mid_line_x1_, mid_line_y1_, mid_line_x2_, mid_line_y2_, left_line_x2_, left_line_y2_, right_line_x2_,
403 std::deque<Graph>* character_queue)
404 :
TimeChangeGroupUi(rpc_value, base,
"friend_bullets", graph_queue, character_queue)
406 graph_vector_.insert(std::pair<std::string, Graph*>(
"hero",
new Graph(rpc_value[
"config"], base_, id_++)));
407 graph_vector_.insert(std::pair<std::string, Graph*>(
"standard3",
new Graph(rpc_value[
"config"], base_, id_++)));
408 graph_vector_.insert(std::pair<std::string, Graph*>(
"standard4",
new Graph(rpc_value[
"config"], base_, id_++)));
409 graph_vector_.insert(std::pair<std::string, Graph*>(
"standard5",
new Graph(rpc_value[
"config"], base_, id_++)));
411 for (
auto it = graph_vector_.begin(); it != graph_vector_.end(); ++it)
413 if (it == graph_vector_.begin())
414 ui_start_y = it->second->getConfig().start_y;
418 it->second->setStartY(ui_start_y);
422 void updateBulletsData(
const rm_referee::BulletNumData& data);
425 void updateConfig()
override;
426 int hero_bullets_{ 1 }, standard3_bullets_{ 3 }, standard4_bullets_{ 4 }, standard5_bullets_{ 5 };
433 std::deque<Graph>* character_queue)
434 :
TimeChangeUi(rpc_value, base,
"target_hp", graph_queue, character_queue)
436 if (rpc_value.hasMember(
"enemy_id"))
438 XmlRpc::XmlRpcValue& enemy_id = rpc_value[
"enemy_id"];
439 for (int i = 0; i < enemy_id.size(); i++)
441 int id = static_cast<int>(enemy_id[i]);
442 enemy_robot_hp_[id] = 0;
446 void setEnemyHp(
const rm_msgs::GameRobotHp& data);
447 void updateTrackID(
int id);
448 void updateTargeHptData();
451 void updateConfig()
override;
452 std::map<int, int> enemy_robot_hp_;
453 int target_hp_{}, target_id_{};
460 std::deque<Graph>* character_queue)
463 XmlRpc::XmlRpcValue line_config;
464 line_config[
"type"] =
"line";
465 if (rpc_value.hasMember(
"config") && rpc_value[
"config"].hasMember(
"color"))
466 line_config[
"color"] = rpc_value[
"config"][
"color"];
468 line_config[
"color"] =
"cyan";
469 if (rpc_value.hasMember(
"config") && rpc_value[
"config"].hasMember(
"width"))
470 line_config[
"width"] = rpc_value[
"config"][
"width"];
472 line_config[
"width"] = 2;
473 if (rpc_value.hasMember(
"config") && rpc_value[
"config"].hasMember(
"delay"))
474 line_config[
"delay"] = rpc_value[
"config"][
"delay"];
476 line_config[
"delay"] = 0.2;
479 XmlRpc::XmlRpcValue virtual_rod_config = line_config;
480 if (rpc_value.hasMember(
"config") && rpc_value[
"config"].hasMember(
"virtual_rod_color"))
481 virtual_rod_config[
"color"] = rpc_value[
"config"][
"virtual_rod_color"];
482 if (rpc_value.hasMember(
"config") && rpc_value[
"config"].hasMember(
"virtual_rod_width"))
483 virtual_rod_config[
"width"] = rpc_value[
"config"][
"virtual_rod_width"];
485 virtual_rod_config[
"width"] = 1;
487 XmlRpc::XmlRpcValue rect_config;
488 rect_config[
"type"] =
"rectangle";
489 if (rpc_value.hasMember(
"config") && rpc_value[
"config"].hasMember(
"chassis_color"))
490 rect_config[
"color"] = rpc_value[
"config"][
"chassis_color"];
492 rect_config[
"color"] = line_config[
"color"];
493 rect_config[
"width"] = line_config[
"width"];
494 rect_config[
"delay"] = line_config[
"delay"];
496 if (rpc_value.hasMember(
"data"))
498 XmlRpc::XmlRpcValue data = rpc_value[
"data"];
499 if (data.hasMember(
"draw_chassis"))
500 draw_chassis_ = static_cast<bool>(data[
"draw_chassis"]);
501 if (data.hasMember(
"chassis_start") && data.hasMember(
"chassis_end"))
503 chassis_start_[0] = static_cast<int>(data[
"chassis_start"][0]);
504 chassis_start_[1] = static_cast<int>(data[
"chassis_start"][1]);
505 chassis_end_[0] = static_cast<int>(data[
"chassis_end"][0]);
506 chassis_end_[1] = static_cast<int>(data[
"chassis_end"][1]);
510 ROS_WARN(
"LegThetaTimeChangeGroupUi: 'data.chassis_start/end' not defined, using default rectangle.");
511 chassis_start_[0] = 800;
512 chassis_start_[1] = 600;
513 chassis_end_[0] = 1120;
514 chassis_end_[1] = 720;
517 if (data.hasMember(
"origin_point"))
519 origin_point_[0] = static_cast<int>(data[
"origin_point"][0]);
520 origin_point_[1] = static_cast<int>(data[
"origin_point"][1]);
525 origin_point_[0] = (chassis_start_[0] + chassis_end_[0]) / 2;
526 origin_point_[1] = (chassis_start_[1] + chassis_end_[1]) / 2;
529 if (data.hasMember(
"link1_length"))
530 link1_length_m_ =
static_cast<double>(data[
"link1_length"]);
531 if (data.hasMember(
"link2_length"))
532 link2_length_m_ =
static_cast<double>(data[
"link2_length"]);
533 if (data.hasMember(
"pixels_per_meter"))
534 pixels_per_meter_ =
static_cast<double>(data[
"pixels_per_meter"]);
535 if (data.hasMember(
"leg_side"))
536 leg_side_ =
static_cast<std::string
>(data[
"leg_side"]);
540 ROS_WARN(
"LegThetaTimeChangeGroupUi config 's member 'data' not defined.");
546 rect_config[
"start_position"][0] = chassis_start_[0];
547 rect_config[
"start_position"][1] = chassis_start_[1];
548 rect_config[
"end_position"][0] = chassis_end_[0];
549 rect_config[
"end_position"][1] = chassis_end_[1];
550 graph_vector_.insert(std::make_pair<std::string, Graph*>(
"chassis",
new Graph(rect_config, base_, id_++)));
554 line_config[
"start_position"][0] = origin_point_[0];
555 line_config[
"start_position"][1] = origin_point_[1];
556 line_config[
"end_position"][0] = origin_point_[0];
557 line_config[
"end_position"][1] = origin_point_[1];
558 graph_vector_.insert(std::make_pair<std::string, Graph*>(
"link1",
new Graph(line_config, base_, id_++)));
559 graph_vector_.insert(std::make_pair<std::string, Graph*>(
"link2",
new Graph(line_config, base_, id_++)));
562 void calculatePointPosition(
const rm_msgs::LeggedChassisStatusConstPtr& data,
const ros::Time& time);
565 void updateConfig()
override;
567 int chassis_start_[2]{ 800, 600 };
568 int chassis_end_[2]{ 1120, 720 };
569 int origin_point_[2]{ 960, 660 };
571 bool draw_chassis_{
true };
574 double link1_length_m_{ 0.21 };
575 double link2_length_m_{ 0.248 };
576 double pixels_per_meter_{ 600.0 };
577 std::string leg_side_{
"left" };
580 double virtual_rod_length_m_{ 0.0 };
581 double virtual_rod_theta_rad_{ 0.0 };
584 int knee_point_[2]{ 960, 660 };
585 int foot_point_[2]{ 960, 660 };
588 bool knee_initialized_{
false };
Definition time_change_ui.h:200
BalancePitchTimeChangeGroupUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:202
Definition time_change_ui.h:313
BulletTimeChangeUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:315
Definition time_change_ui.h:47
CapacitorTimeChangeUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:49
void updateRemainCharge(const double remain_charge, const ros::Time &time)
Definition time_change_ui.cpp:76
void add() override
Definition time_change_ui.cpp:50
Definition time_change_ui.h:105
void updateDartClientCmd(const rm_msgs::DartClientCmd::ConstPtr data, const ros::Time &last_get_data_time)
Definition time_change_ui.cpp:183
DartStatusTimeChangeUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:107
Definition time_change_ui.h:340
DeployDistanceTimeChangeUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:342
Definition time_change_ui.h:367
DroneTowardsTimeChangeGroupUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:369
Definition time_change_ui.h:77
void updateJointStateData(const sensor_msgs::JointState::ConstPtr data, const ros::Time &time)
Definition time_change_ui.cpp:125
EffortTimeChangeUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:79
Definition time_change_ui.h:400
FriendBulletsTimeChangeGroupUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:402
Definition time_change_ui.h:353
HeroLegTimeChangeUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:355
Definition time_change_ui.h:275
ImageTransmissionAngleTimeChangeUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:277
Definition time_change_ui.h:288
JointPositionTimeChangeUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue, std::string name)
Definition time_change_ui.h:290
Definition time_change_ui.h:153
double end_point_a_angle_
Definition time_change_ui.h:191
double camera_range_
Definition time_change_ui.h:189
LaneLineTimeChangeGroupUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:155
std::string reference_frame_
Definition time_change_ui.h:188
Definition time_change_ui.h:457
LegThetaTimeChangeGroupUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:459
Definition time_change_ui.h:262
PitchAngleTimeChangeUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:264
Definition time_change_ui.h:91
void updateEngineerUiData(const rm_msgs::EngineerUi::ConstPtr data, const ros::Time &last_get_data_time)
Definition time_change_ui.cpp:154
ProgressTimeChangeUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:93
Definition time_change_ui.h:61
RelocalizeProgressTimeChangeUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:63
void add() override
Definition time_change_ui.cpp:81
void updateRelocalizeProgress(const double data, const ros::Time &time)
Definition time_change_ui.cpp:107
Definition time_change_ui.h:118
RotationTimeChangeUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:120
Definition time_change_ui.h:327
TargetDistanceTimeChangeUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:329
Definition time_change_ui.h:430
TargetHpTimeChangeUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:432
Definition time_change_ui.h:30
std::string graph_name_
Definition time_change_ui.h:43
virtual void updateConfig()
Definition time_change_ui.h:40
TimeChangeGroupUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, const std::string &graph_name, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:32
void update() override
Definition time_change_ui.cpp:18
void updateForQueue() override
Definition time_change_ui.cpp:40
Definition time_change_ui.h:16
TimeChangeUi(XmlRpc::XmlRpcValue &rpc_value, Base &base, const std::string &graph_name, std::deque< Graph > *graph_queue, std::deque< Graph > *character_queue)
Definition time_change_ui.h:18
void updateForQueue() override
Definition time_change_ui.cpp:28
virtual void updateConfig()
Definition time_change_ui.h:26
void update() override
Definition time_change_ui.cpp:11
Graph * graph_
Definition ui_base.h:59
static int id_
Definition ui_base.h:60
Base & base_
Definition ui_base.h:58