Create an enum for sender errors
Will replace usages of bools, and will now currently only be used
for indicating that messages were sent too fast
After we merge this commit we will replace this enum with a general
Status class for all of aos, similar to absl::Status.
Change-Id: I4b5b2e7685744b3c6826a241cd3c84190eaa96ee
Signed-off-by: milind-u <milind.upadhyay@gmail.com>
diff --git a/y2014/actors/autonomous_actor.cc b/y2014/actors/autonomous_actor.cc
index a78ab4b..07c6855 100644
--- a/y2014/actors/autonomous_actor.cc
+++ b/y2014/actors/autonomous_actor.cc
@@ -53,7 +53,7 @@
goal_builder.add_intake(intake_power);
goal_builder.add_centering(centering_power);
- if (!builder.Send(goal_builder.Finish())) {
+ if (builder.Send(goal_builder.Finish()) != aos::RawSender::Error::kOk) {
AOS_LOG(WARNING, "sending claw goal failed\n");
}
}
@@ -66,7 +66,7 @@
goal_builder.add_separation_angle(0.0);
goal_builder.add_intake(12.0);
goal_builder.add_centering(12.0);
- if (!builder.Send(goal_builder.Finish())) {
+ if (builder.Send(goal_builder.Finish()) != aos::RawSender::Error::kOk) {
AOS_LOG(WARNING, "sending claw goal failed\n");
}
}
@@ -81,7 +81,7 @@
goal_builder.add_separation_angle(0.0);
goal_builder.add_intake(4.0);
goal_builder.add_centering(1.0);
- if (!builder.Send(goal_builder.Finish())) {
+ if (builder.Send(goal_builder.Finish()) != aos::RawSender::Error::kOk) {
AOS_LOG(WARNING, "sending claw goal failed\n");
}
}
@@ -94,7 +94,7 @@
goal_builder.add_separation_angle(0.10);
goal_builder.add_intake(4.0);
goal_builder.add_centering(1.0);
- if (!builder.Send(goal_builder.Finish())) {
+ if (builder.Send(goal_builder.Finish()) != aos::RawSender::Error::kOk) {
AOS_LOG(WARNING, "sending claw goal failed\n");
}
}
@@ -108,7 +108,7 @@
goal_builder.add_shot_requested(false);
goal_builder.add_unload_requested(false);
goal_builder.add_load_requested(false);
- if (!builder.Send(goal_builder.Finish())) {
+ if (builder.Send(goal_builder.Finish()) != aos::RawSender::Error::kOk) {
AOS_LOG(WARNING, "sending shooter goal failed\n");
}
}
diff --git a/y2014/actors/shoot_actor.cc b/y2014/actors/shoot_actor.cc
index 095a972..aad64e8 100644
--- a/y2014/actors/shoot_actor.cc
+++ b/y2014/actors/shoot_actor.cc
@@ -63,7 +63,8 @@
claw_builder.add_intake(0.0);
claw_builder.add_centering(0.0);
- if (!builder.Send(claw_builder.Finish())) {
+ if (builder.Send(claw_builder.Finish()) !=
+ aos::RawSender::Error::kOk) {
AOS_LOG(WARNING, "sending claw goal failed\n");
return false;
}
@@ -88,7 +89,8 @@
shooter_builder.add_shot_requested(false);
shooter_builder.add_unload_requested(false);
shooter_builder.add_load_requested(false);
- if (!builder.Send(shooter_builder.Finish())) {
+ if (builder.Send(shooter_builder.Finish()) !=
+ aos::RawSender::Error::kOk) {
AOS_LOG(WARNING, "sending shooter goal failed\n");
return false;
}
@@ -122,7 +124,8 @@
goal_builder.add_shot_requested(true);
goal_builder.add_unload_requested(false);
goal_builder.add_load_requested(false);
- if (!builder.Send(goal_builder.Finish())) {
+ if (builder.Send(goal_builder.Finish()) !=
+ aos::RawSender::Error::kOk) {
AOS_LOG(WARNING, "sending shooter goal failed\n");
return;
}
diff --git a/y2014/control_loops/claw/claw.cc b/y2014/control_loops/claw/claw.cc
index 4f0248c..4b76fd2 100644
--- a/y2014/control_loops/claw/claw.cc
+++ b/y2014/control_loops/claw/claw.cc
@@ -619,8 +619,9 @@
if (::std::isnan(goal->bottom_angle()) ||
::std::isnan(goal->separation_angle()) ||
::std::isnan(goal->intake()) || ::std::isnan(goal->centering())) {
- status->Send(Status::Pack(*status->fbb(), &status_struct));
- output->Send(Output::Pack(*output->fbb(), &output_struct));
+ (void)status->Send(Status::Pack(*status->fbb(), &status_struct));
+ output->CheckOk(
+ output->Send(Output::Pack(*output->fbb(), &output_struct)));
return;
}
}
@@ -977,7 +978,7 @@
output_struct.bottom_claw_voltage = -kMaxVoltage;
}
- output->Send(Output::Pack(*output->fbb(), &output_struct));
+ output->CheckOk(output->Send(Output::Pack(*output->fbb(), &output_struct)));
}
status_struct.bottom = bottom_absolute_position();
@@ -1013,7 +1014,7 @@
bottom_claw_.zeroing_state() ==
ZeroedStateFeedbackLoop::DISABLED_CALIBRATION);
- status->Send(Status::Pack(*status->fbb(), &status_struct));
+ (void)status->Send(Status::Pack(*status->fbb(), &status_struct));
was_enabled_ = enabled;
}
diff --git a/y2014/control_loops/claw/claw_lib_test.cc b/y2014/control_loops/claw/claw_lib_test.cc
index eb941a1..a714124 100644
--- a/y2014/control_loops/claw/claw_lib_test.cc
+++ b/y2014/control_loops/claw/claw_lib_test.cc
@@ -241,7 +241,8 @@
// Only set calibration if it changed last cycle. Calibration starts out
// with a value of 0.
- builder.Send(Position::Pack(*builder.fbb(), &position));
+ EXPECT_EQ(builder.Send(Position::Pack(*builder.fbb(), &position)),
+ aos::RawSender::Error::kOk);
last_position_ = std::move(position);
}
@@ -335,7 +336,8 @@
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_bottom_angle(::std::nan(""));
goal_builder.add_separation_angle(::std::nan(""));
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
SetEnabled(true);
@@ -349,7 +351,8 @@
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_bottom_angle(0.1);
goal_builder.add_separation_angle(0.2);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
SetEnabled(true);
@@ -446,7 +449,8 @@
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_bottom_angle(0.1);
goal_builder.add_separation_angle(0.2);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
SetEnabled(true);
@@ -614,7 +618,8 @@
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_bottom_angle(0.1);
goal_builder.add_separation_angle(0.2);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
TestWindup(ClawMotor::UNKNOWN_LOCATION,
@@ -631,7 +636,8 @@
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_bottom_angle(0.1);
goal_builder.add_separation_angle(0.2);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
TestWindup(ClawMotor::UNKNOWN_LOCATION,
@@ -648,7 +654,8 @@
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_bottom_angle(0.1);
goal_builder.add_separation_angle(0.2);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
TestWindup(ClawMotor::FINE_TUNE_BOTTOM,
diff --git a/y2014/control_loops/shooter/shooter.cc b/y2014/control_loops/shooter/shooter.cc
index 230a048..2a3e0d0 100644
--- a/y2014/control_loops/shooter/shooter.cc
+++ b/y2014/control_loops/shooter/shooter.cc
@@ -656,7 +656,7 @@
output_struct.latch_piston = latch_piston_;
output_struct.brake_piston = brake_piston_;
- output->Send(Output::Pack(*output->fbb(), &output_struct));
+ output->CheckOk(output->Send(Output::Pack(*output->fbb(), &output_struct)));
}
if (position) {
@@ -676,7 +676,7 @@
status_builder.add_shots(shot_count_);
- status->Send(status_builder.Finish());
+ (void)status->Send(status_builder.Finish());
}
flatbuffers::Offset<Output> ShooterMotor::Zero(
diff --git a/y2014/control_loops/shooter/shooter_lib_test.cc b/y2014/control_loops/shooter/shooter_lib_test.cc
index d3217a6..f7dcf20 100644
--- a/y2014/control_loops/shooter/shooter_lib_test.cc
+++ b/y2014/control_loops/shooter/shooter_lib_test.cc
@@ -199,7 +199,8 @@
*last_position_message_.pusher_proximal.get(),
values.shooter.pusher_proximal, last_position_);
- builder.Send(Position::Pack(*builder.fbb(), &position));
+ EXPECT_EQ(builder.Send(Position::Pack(*builder.fbb(), &position)),
+ aos::RawSender::Error::kOk);
last_position_ = position.position;
last_position_message_ = std::move(position);
@@ -403,7 +404,8 @@
::aos::Sender<Goal>::Builder builder = shooter_goal_sender_.MakeBuilder();
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_shot_power(70.0);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
RunFor(chrono::seconds(2));
@@ -422,7 +424,8 @@
::aos::Sender<Goal>::Builder builder = shooter_goal_sender_.MakeBuilder();
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_shot_power(70.0);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
RunFor(chrono::milliseconds(1200));
EXPECT_EQ(ShooterMotor::STATE_READY, shooter_motor_.state());
@@ -431,7 +434,8 @@
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_shot_power(35.0);
goal_builder.add_shot_requested(true);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
bool hit_fire = false;
@@ -445,7 +449,8 @@
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_shot_power(17.0);
goal_builder.add_shot_requested(false);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
hit_fire = true;
}
@@ -467,7 +472,8 @@
::aos::Sender<Goal>::Builder builder = shooter_goal_sender_.MakeBuilder();
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_shot_power(70.0);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
RunFor(chrono::milliseconds(1500));
@@ -477,7 +483,8 @@
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_shot_power(0.0);
goal_builder.add_shot_requested(true);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
bool hit_fire = false;
@@ -490,7 +497,8 @@
shooter_goal_sender_.MakeBuilder();
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_shot_requested(false);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
hit_fire = true;
}
@@ -513,7 +521,8 @@
::aos::Sender<Goal>::Builder builder = shooter_goal_sender_.MakeBuilder();
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_shot_power(500.0);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
while (test_event_loop_->monotonic_now() <
monotonic_clock::time_point(chrono::milliseconds(1600))) {
@@ -531,7 +540,8 @@
::aos::Sender<Goal>::Builder builder = shooter_goal_sender_.MakeBuilder();
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_shot_power(70.0);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
RunFor(chrono::milliseconds(1500));
@@ -540,7 +550,8 @@
::aos::Sender<Goal>::Builder builder = shooter_goal_sender_.MakeBuilder();
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_shot_power(14.0);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
RunFor(chrono::milliseconds(500));
@@ -559,7 +570,8 @@
::aos::Sender<Goal>::Builder builder = shooter_goal_sender_.MakeBuilder();
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_shot_power(70.0);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
RunFor(chrono::milliseconds(1500));
EXPECT_EQ(ShooterMotor::STATE_READY, shooter_motor_.state());
@@ -567,7 +579,8 @@
::aos::Sender<Goal>::Builder builder = shooter_goal_sender_.MakeBuilder();
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_unload_requested(true);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
while (test_event_loop_->monotonic_now() <
@@ -588,7 +601,8 @@
::aos::Sender<Goal>::Builder builder = shooter_goal_sender_.MakeBuilder();
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_shot_power(70);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
RunFor(chrono::milliseconds(1500));
@@ -601,7 +615,8 @@
::aos::Sender<Goal>::Builder builder = shooter_goal_sender_.MakeBuilder();
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_unload_requested(true);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
while (test_event_loop_->monotonic_now() <
@@ -622,7 +637,8 @@
::aos::Sender<Goal>::Builder builder = shooter_goal_sender_.MakeBuilder();
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_shot_power(70);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
RunFor(chrono::milliseconds(1500));
EXPECT_EQ(ShooterMotor::STATE_READY, shooter_motor_.state());
@@ -630,7 +646,8 @@
::aos::Sender<Goal>::Builder builder = shooter_goal_sender_.MakeBuilder();
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_unload_requested(true);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
int kicked_delay = 20;
@@ -665,7 +682,8 @@
::aos::Sender<Goal>::Builder builder = shooter_goal_sender_.MakeBuilder();
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_shot_power(70);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
RunFor(chrono::milliseconds(1500));
EXPECT_EQ(ShooterMotor::STATE_READY, shooter_motor_.state());
@@ -673,7 +691,8 @@
::aos::Sender<Goal>::Builder builder = shooter_goal_sender_.MakeBuilder();
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_unload_requested(true);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
int kicked_delay = 20;
@@ -713,7 +732,8 @@
::aos::Sender<Goal>::Builder builder = shooter_goal_sender_.MakeBuilder();
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_shot_power(70.0);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
RunFor(chrono::seconds(2));
// EXPECT_NEAR(0.0, shooter_motor_.GetPosition(), 0.01);
@@ -734,7 +754,8 @@
::aos::Sender<Goal>::Builder builder = shooter_goal_sender_.MakeBuilder();
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_shot_power(70.0);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
RunFor(chrono::seconds(3));
// EXPECT_NEAR(0.0, shooter_motor_.GetPosition(), 0.01);
@@ -765,7 +786,8 @@
::aos::Sender<Goal>::Builder builder = shooter_goal_sender_.MakeBuilder();
Goal::Builder goal_builder = builder.MakeBuilder<Goal>();
goal_builder.add_shot_power(120.0);
- EXPECT_TRUE(builder.Send(goal_builder.Finish()));
+ EXPECT_EQ(builder.Send(goal_builder.Finish()),
+ aos::RawSender::Error::kOk);
}
while (test_event_loop_->monotonic_now() <
monotonic_clock::time_point(chrono::seconds(2))) {
diff --git a/y2014/hot_goal_reader.cc b/y2014/hot_goal_reader.cc
index 5972a92..71380f4 100644
--- a/y2014/hot_goal_reader.cc
+++ b/y2014/hot_goal_reader.cc
@@ -89,7 +89,7 @@
builder.MakeBuilder<y2014::HotGoal>();
hot_goal_builder.add_left_count(left_count);
hot_goal_builder.add_right_count(right_count);
- builder.Send(hot_goal_builder.Finish());
+ (void)builder.Send(hot_goal_builder.Finish());
} break;
case 0:
AOS_LOG(WARNING, "read on %d timed out\n", connection);
diff --git a/y2014/joystick_reader.cc b/y2014/joystick_reader.cc
index d1569d7..fc78994 100644
--- a/y2014/joystick_reader.cc
+++ b/y2014/joystick_reader.cc
@@ -393,7 +393,8 @@
: (data.IsPressed(kRollersOut) ? -12.0 : intake_power_));
goal_builder.add_centering(intaking ? 12.0 : 0.0);
- if (!builder.Send(goal_builder.Finish())) {
+ if (builder.Send(goal_builder.Finish()) !=
+ aos::RawSender::Error::kOk) {
AOS_LOG(WARNING, "sending claw goal failed\n");
}
}
@@ -406,7 +407,8 @@
goal_builder.add_shot_requested(data.IsPressed(kFire));
goal_builder.add_unload_requested(data.IsPressed(kUnload));
goal_builder.add_load_requested(data.IsPressed(kReload));
- if (!builder.Send(goal_builder.Finish())) {
+ if (builder.Send(goal_builder.Finish()) !=
+ aos::RawSender::Error::kOk) {
AOS_LOG(WARNING, "sending shooter goal failed\n");
}
}
diff --git a/y2014/wpilib_interface.cc b/y2014/wpilib_interface.cc
index 3e34064..9f8e2ce 100644
--- a/y2014/wpilib_interface.cc
+++ b/y2014/wpilib_interface.cc
@@ -271,7 +271,7 @@
position_builder.add_right_shifter_position(
hall_translate(values.right_drive, low_right_hall, high_right_hall));
- builder.Send(position_builder.Finish());
+ builder.CheckOk(builder.Send(position_builder.Finish()));
}
{
@@ -279,7 +279,7 @@
y2014::sensors::AutoMode::Builder auto_builder =
builder.MakeBuilder<y2014::sensors::AutoMode>();
auto_builder.add_voltage(auto_selector_analog_->GetVoltage());
- builder.Send(auto_builder.Finish());
+ builder.CheckOk(builder.Send(auto_builder.Finish()));
}
}
@@ -310,7 +310,7 @@
position_builder.add_pusher_distal(pusher_distal_offset);
position_builder.add_pusher_proximal(pusher_proximal_offset);
- builder.Send(position_builder.Finish());
+ builder.CheckOk(builder.Send(position_builder.Finish()));
}
{
@@ -325,7 +325,7 @@
position_builder.add_top(top_offset);
position_builder.add_bottom(bottom_offset);
- builder.Send(position_builder.Finish());
+ builder.CheckOk(builder.Send(position_builder.Finish()));
}
}
@@ -558,7 +558,7 @@
pcm_->Flush();
to_log_builder.add_read_solenoids(pcm_->GetAll());
- builder.Send(to_log_builder.Finish());
+ (void)builder.Send(to_log_builder.Finish());
}
}