Switch all robots over to use EventLoop

Stop using the old QueueGroup constructor for ControlLoop

Change-Id: I027febf86e75399a97cdb4dc50dbc475705e0393
diff --git a/frc971/control_loops/drivetrain/drivetrain.cc b/frc971/control_loops/drivetrain/drivetrain.cc
index 27a0a76..a06bc3b 100644
--- a/frc971/control_loops/drivetrain/drivetrain.cc
+++ b/frc971/control_loops/drivetrain/drivetrain.cc
@@ -29,11 +29,11 @@
 namespace control_loops {
 namespace drivetrain {
 
-DrivetrainLoop::DrivetrainLoop(
-    const DrivetrainConfig<double> &dt_config,
-    ::frc971::control_loops::DrivetrainQueue *my_drivetrain)
+DrivetrainLoop::DrivetrainLoop(const DrivetrainConfig<double> &dt_config,
+                               ::aos::EventLoop *event_loop,
+                               const ::std::string &name)
     : aos::controls::ControlLoop<::frc971::control_loops::DrivetrainQueue>(
-          my_drivetrain),
+          event_loop, name),
       dt_config_(dt_config),
       kf_(dt_config_.make_kf_drivetrain_loop()),
       dt_openloop_(dt_config_, &kf_),
diff --git a/frc971/control_loops/drivetrain/drivetrain.h b/frc971/control_loops/drivetrain/drivetrain.h
index 9396aed..a357eab 100644
--- a/frc971/control_loops/drivetrain/drivetrain.h
+++ b/frc971/control_loops/drivetrain/drivetrain.h
@@ -22,9 +22,8 @@
   // Constructs a control loop which can take a Drivetrain or defaults to the
   // drivetrain at frc971::control_loops::drivetrain
   explicit DrivetrainLoop(
-      const DrivetrainConfig<double> &dt_config,
-      ::frc971::control_loops::DrivetrainQueue *my_drivetrain =
-          &::frc971::control_loops::drivetrain_queue);
+      const DrivetrainConfig<double> &dt_config, ::aos::EventLoop *event_loop,
+      const ::std::string &name = ".frc971.control_loops.drivetrain_queue");
 
   int ControllerIndexFromGears();
 
diff --git a/frc971/control_loops/drivetrain/drivetrain_lib_test.cc b/frc971/control_loops/drivetrain/drivetrain_lib_test.cc
index bb5d5d9..5c1a8b4 100644
--- a/frc971/control_loops/drivetrain/drivetrain_lib_test.cc
+++ b/frc971/control_loops/drivetrain/drivetrain_lib_test.cc
@@ -103,11 +103,11 @@
   // TODO(aschuh) Do we want to test the clutch one too?
   DrivetrainSimulation()
       : drivetrain_plant_(new DrivetrainPlant(MakeDrivetrainPlant())),
-        my_drivetrain_queue_(".frc971.control_loops.drivetrain",
-                             ".frc971.control_loops.drivetrain.goal",
-                             ".frc971.control_loops.drivetrain.position",
-                             ".frc971.control_loops.drivetrain.output",
-                             ".frc971.control_loops.drivetrain.status"),
+        my_drivetrain_queue_(".frc971.control_loops.drivetrain_queue",
+                             ".frc971.control_loops.drivetrain_queue.goal",
+                             ".frc971.control_loops.drivetrain_queue.position",
+                             ".frc971.control_loops.drivetrain_queue.output",
+                             ".frc971.control_loops.drivetrain_queue.status"),
         gyro_reading_(::frc971::sensors::gyro_reading.name()) {
     Reinitialize();
     last_U_.setZero();
@@ -219,17 +219,18 @@
   // is no longer valid.
   ::frc971::control_loops::DrivetrainQueue my_drivetrain_queue_;
 
+  ::aos::ShmEventLoop event_loop_;
   // Create a loop and simulation plant.
   DrivetrainLoop drivetrain_motor_;
   DrivetrainSimulation drivetrain_motor_plant_;
 
   DrivetrainTest()
-      : my_drivetrain_queue_(".frc971.control_loops.drivetrain",
-                             ".frc971.control_loops.drivetrain.goal",
-                             ".frc971.control_loops.drivetrain.position",
-                             ".frc971.control_loops.drivetrain.output",
-                             ".frc971.control_loops.drivetrain.status"),
-        drivetrain_motor_(GetDrivetrainConfig(), &my_drivetrain_queue_),
+      : my_drivetrain_queue_(".frc971.control_loops.drivetrain_queue",
+                             ".frc971.control_loops.drivetrain_queue.goal",
+                             ".frc971.control_loops.drivetrain_queue.position",
+                             ".frc971.control_loops.drivetrain_queue.output",
+                             ".frc971.control_loops.drivetrain_queue.status"),
+        drivetrain_motor_(GetDrivetrainConfig(), &event_loop_),
         drivetrain_motor_plant_() {
     ::frc971::sensors::gyro_reading.Clear();
     set_battery_voltage(12.0);