Switch all robots over to use EventLoop
Stop using the old QueueGroup constructor for ControlLoop
Change-Id: I027febf86e75399a97cdb4dc50dbc475705e0393
diff --git a/y2018/control_loops/superstructure/superstructure.cc b/y2018/control_loops/superstructure/superstructure.cc
index c2d0bcf..9474b6d 100644
--- a/y2018/control_loops/superstructure/superstructure.cc
+++ b/y2018/control_loops/superstructure/superstructure.cc
@@ -35,10 +35,10 @@
}
}
-Superstructure::Superstructure(
- control_loops::SuperstructureQueue *superstructure_queue)
- : aos::controls::ControlLoop<control_loops::SuperstructureQueue>(
- superstructure_queue),
+Superstructure::Superstructure(::aos::EventLoop *event_loop,
+ const ::std::string &name)
+ : aos::controls::ControlLoop<control_loops::SuperstructureQueue>(event_loop,
+ name),
intake_left_(constants::GetValues().left_intake.zeroing),
intake_right_(constants::GetValues().right_intake.zeroing) {}
diff --git a/y2018/control_loops/superstructure/superstructure.h b/y2018/control_loops/superstructure/superstructure.h
index 4f8f4d5..3d1a6af 100644
--- a/y2018/control_loops/superstructure/superstructure.h
+++ b/y2018/control_loops/superstructure/superstructure.h
@@ -17,8 +17,8 @@
: public ::aos::controls::ControlLoop<control_loops::SuperstructureQueue> {
public:
explicit Superstructure(
- control_loops::SuperstructureQueue *my_superstructure =
- &control_loops::superstructure_queue);
+ ::aos::EventLoop *event_loop,
+ const ::std::string &name = ".y2018.control_loops.superstructure_queue");
const intake::IntakeSide &intake_left() const { return intake_left_; }
const intake::IntakeSide &intake_right() const { return intake_right_; }
diff --git a/y2018/control_loops/superstructure/superstructure_lib_test.cc b/y2018/control_loops/superstructure/superstructure_lib_test.cc
index 0ad4d16..89cfaa0 100644
--- a/y2018/control_loops/superstructure/superstructure_lib_test.cc
+++ b/y2018/control_loops/superstructure/superstructure_lib_test.cc
@@ -273,7 +273,7 @@
".y2018.control_loops.superstructure.output",
".y2018.control_loops.superstructure.status",
".y2018.control_loops.superstructure.position"),
- superstructure_(&superstructure_queue_) {
+ superstructure_(&event_loop_, ".y2018.control_loops.superstructure") {
status_light.Clear();
::y2018::vision::vision_status.Clear();
::frc971::control_loops::drivetrain_queue.output.Clear();
@@ -323,6 +323,7 @@
}
}
+ ::aos::ShmEventLoop event_loop_;
// Create a new instance of the test queue so that it invalidates the queue
// that it points to. Otherwise, we will have a pointer to shared memory
// that is no longer valid.
diff --git a/y2018/control_loops/superstructure/superstructure_main.cc b/y2018/control_loops/superstructure/superstructure_main.cc
index fca04e8..f5b026c 100644
--- a/y2018/control_loops/superstructure/superstructure_main.cc
+++ b/y2018/control_loops/superstructure/superstructure_main.cc
@@ -1,10 +1,13 @@
#include "y2018/control_loops/superstructure/superstructure.h"
+#include "aos/events/shm-event-loop.h"
#include "aos/init.h"
int main() {
::aos::InitNRT(true);
- ::y2018::control_loops::superstructure::Superstructure superstructure;
+ ::aos::ShmEventLoop event_loop;
+ ::y2018::control_loops::superstructure::Superstructure superstructure(
+ &event_loop);
::aos::GoRT();
superstructure.Run();
::aos::Cleanup();