Add a catapult test which takes a shot.
It is hard to test that the optimization problem actually works
correctly, but we can check the plumbing to make sure it takes and
counts shots correctly.
Change-Id: I506fc2113d61471cb997e38e289de8f77a2ed4ab
Signed-off-by: Austin Schuh <austin.linux@gmail.com>
diff --git a/y2022/control_loops/superstructure/catapult/catapult.h b/y2022/control_loops/superstructure/catapult/catapult.h
index a5ffc92..a8141a0 100644
--- a/y2022/control_loops/superstructure/catapult/catapult.h
+++ b/y2022/control_loops/superstructure/catapult/catapult.h
@@ -198,6 +198,9 @@
bool mpc_active() const { return !use_profile_; }
+ // Returns the number of shots taken.
+ int shot_count() const { return shot_count_; }
+
// Runs either the MPC or the profiled subsystem depending on if we are
// shooting or not. Returns the status.
const flatbuffers::Offset<
@@ -219,6 +222,8 @@
bool last_firing_ = false;
bool use_profile_ = true;
+
+ int shot_count_ = 0;
};
} // namespace catapult