Unify y2022 localizer into y2022/localizer folder

Somehow ended up creating multiple folders....

Change-Id: Ib8e7e69a7583379caecb9d0639042c77bba039ed
Signed-off-by: James Kuszmaul <jabukuszmaul+collab@gmail.com>
diff --git a/frc971/analysis/BUILD b/frc971/analysis/BUILD
index f86bc6d..686529f 100644
--- a/frc971/analysis/BUILD
+++ b/frc971/analysis/BUILD
@@ -52,8 +52,8 @@
         "//y2020/control_loops/superstructure:hood_plotter",
         "//y2020/control_loops/superstructure:turret_plotter",
         "//y2021_bot3/control_loops/superstructure:superstructure_plotter",
-        "//y2022/control_loops/localizer:localizer_plotter",
         "//y2022/control_loops/superstructure:catapult_plotter",
+        "//y2022/localizer:localizer_plotter",
     ],
 )
 
diff --git a/frc971/analysis/plot_index.ts b/frc971/analysis/plot_index.ts
index 4235ba9..332db34 100644
--- a/frc971/analysis/plot_index.ts
+++ b/frc971/analysis/plot_index.ts
@@ -37,7 +37,7 @@
 import {plotCatapult as plot2022Catapult} from
     'org_frc971/y2022/control_loops/superstructure/catapult_plotter'
 import {plotLocalizer as plot2022Localizer} from
-    'org_frc971/y2022/control_loops/localizer/localizer_plotter'
+    'org_frc971/y2022/localizer/localizer_plotter'
 import {plotAccelerator} from
     'org_frc971/y2020/control_loops/superstructure/accelerator_plotter'
 import {plotHood} from
diff --git a/y2022/BUILD b/y2022/BUILD
index 1aa4fa1..44b81a5 100644
--- a/y2022/BUILD
+++ b/y2022/BUILD
@@ -35,7 +35,7 @@
         "//y2020/vision:calibration",
         "//y2022/vision:viewer",
         "//y2022/localizer:imu_main",
-        "//y2022/control_loops/localizer:localizer_main",
+        "//y2022/localizer:localizer_main",
     ],
     data = [
         ":aos_config",
@@ -112,8 +112,8 @@
         "//aos/network:message_bridge_server_fbs",
         "//aos/network:timestamp_fbs",
         "//aos/network:remote_message_fbs",
-        "//y2022/control_loops/localizer:localizer_status_fbs",
-        "//y2022/control_loops/localizer:localizer_output_fbs",
+        "//y2022/localizer:localizer_status_fbs",
+        "//y2022/localizer:localizer_output_fbs",
     ],
     target_compatible_with = ["@platforms//os:linux"],
     visibility = ["//visibility:public"],
diff --git a/y2022/control_loops/drivetrain/BUILD b/y2022/control_loops/drivetrain/BUILD
index 5381254..3442a39 100644
--- a/y2022/control_loops/drivetrain/BUILD
+++ b/y2022/control_loops/drivetrain/BUILD
@@ -80,7 +80,7 @@
         "//aos/network:message_bridge_server_fbs",
         "//frc971/control_loops/drivetrain:hybrid_ekf",
         "//frc971/control_loops/drivetrain:localizer",
-        "//y2022/control_loops/localizer:localizer_output_fbs",
+        "//y2022/localizer:localizer_output_fbs",
     ],
 )
 
@@ -127,7 +127,7 @@
         "//frc971/control_loops:team_number_test_environment",
         "//frc971/control_loops/drivetrain:drivetrain_lib",
         "//frc971/control_loops/drivetrain:drivetrain_test_lib",
-        "//y2022/control_loops/localizer:localizer_output_fbs",
+        "//y2022/localizer:localizer_output_fbs",
     ],
 )
 
diff --git a/y2022/control_loops/drivetrain/localizer.h b/y2022/control_loops/drivetrain/localizer.h
index 50d083a..4505e9b 100644
--- a/y2022/control_loops/drivetrain/localizer.h
+++ b/y2022/control_loops/drivetrain/localizer.h
@@ -6,7 +6,7 @@
 #include "aos/events/event_loop.h"
 #include "frc971/control_loops/drivetrain/hybrid_ekf.h"
 #include "frc971/control_loops/drivetrain/localizer.h"
-#include "y2022/control_loops/localizer/localizer_output_generated.h"
+#include "y2022/localizer/localizer_output_generated.h"
 #include "aos/network/message_bridge_server_generated.h"
 
 namespace y2022 {
@@ -16,7 +16,7 @@
 // This class handles the localization for the 2022 robot. Rather than actually
 // doing any work on the roborio, we farm all the localization out to a
 // raspberry pi and it then sends out LocalizerOutput messages that we treat as
-// measurement updates. See //y2022/control_loops/localizer.
+// measurement updates. See //y2022/localizer.
 // TODO(james): Needs tests. Should refactor out some of the code from the 2020
 // localizer test.
 class Localizer : public frc971::control_loops::drivetrain::LocalizerInterface {
diff --git a/y2022/control_loops/drivetrain/localizer_test.cc b/y2022/control_loops/drivetrain/localizer_test.cc
index 87fc3fd..1e33826 100644
--- a/y2022/control_loops/drivetrain/localizer_test.cc
+++ b/y2022/control_loops/drivetrain/localizer_test.cc
@@ -10,7 +10,7 @@
 #include "frc971/control_loops/drivetrain/drivetrain.h"
 #include "frc971/control_loops/drivetrain/drivetrain_test_lib.h"
 #include "frc971/control_loops/team_number_test_environment.h"
-#include "y2022/control_loops/localizer/localizer_output_generated.h"
+#include "y2022/localizer/localizer_output_generated.h"
 #include "gtest/gtest.h"
 #include "y2022/control_loops/drivetrain/drivetrain_base.h"
 
diff --git a/y2022/control_loops/localizer/BUILD b/y2022/control_loops/localizer/BUILD
deleted file mode 100644
index f1bc2d1..0000000
--- a/y2022/control_loops/localizer/BUILD
+++ /dev/null
@@ -1,121 +0,0 @@
-load("@com_github_google_flatbuffers//:build_defs.bzl", "flatbuffer_cc_library")
-load("//aos:flatbuffers.bzl", "cc_static_flatbuffer")
-load("@npm//@bazel/typescript:index.bzl", "ts_library")
-
-ts_library(
-    name = "localizer_plotter",
-    srcs = ["localizer_plotter.ts"],
-    target_compatible_with = ["@platforms//os:linux"],
-    visibility = ["//visibility:public"],
-    deps = [
-        "//aos/network/www:aos_plotter",
-        "//aos/network/www:colors",
-        "//aos/network/www:proxy",
-        "//frc971/wpilib:imu_plot_utils",
-    ],
-)
-
-flatbuffer_cc_library(
-    name = "localizer_output_fbs",
-    srcs = [
-        "localizer_output.fbs",
-    ],
-    gen_reflections = True,
-    target_compatible_with = ["@platforms//os:linux"],
-    visibility = ["//visibility:public"],
-)
-
-flatbuffer_cc_library(
-    name = "localizer_status_fbs",
-    srcs = [
-        "localizer_status.fbs",
-    ],
-    gen_reflections = True,
-    includes = [
-        "//frc971/control_loops:control_loops_fbs_includes",
-        "//frc971/control_loops/drivetrain:drivetrain_status_fbs_includes",
-    ],
-    target_compatible_with = ["@platforms//os:linux"],
-    visibility = ["//visibility:public"],
-)
-
-cc_static_flatbuffer(
-    name = "localizer_schema",
-    function = "frc971::controls::LocalizerStatusSchema",
-    target = ":localizer_status_fbs_reflection_out",
-    visibility = ["//visibility:public"],
-)
-
-cc_library(
-    name = "localizer",
-    srcs = ["localizer.cc"],
-    hdrs = ["localizer.h"],
-    visibility = ["//visibility:public"],
-    deps = [
-        ":localizer_output_fbs",
-        ":localizer_status_fbs",
-        "//aos/containers:ring_buffer",
-        "//aos/events:event_loop",
-        "//aos/time",
-        "//frc971/control_loops:c2d",
-        "//frc971/control_loops:control_loops_fbs",
-        "//frc971/control_loops/drivetrain:drivetrain_output_fbs",
-        "//frc971/control_loops/drivetrain:drivetrain_status_fbs",
-        "//frc971/control_loops/drivetrain:improved_down_estimator",
-        "//frc971/control_loops/drivetrain:localizer_fbs",
-        "//frc971/wpilib:imu_batch_fbs",
-        "//frc971/wpilib:imu_fbs",
-        "//frc971/zeroing:imu_zeroer",
-        "//frc971/zeroing:wrap",
-        "//y2020/vision/sift:sift_fbs",
-        "//y2022:constants",
-        "@org_tuxfamily_eigen//:eigen",
-    ],
-)
-
-cc_binary(
-    name = "localizer_main",
-    srcs = ["localizer_main.cc"],
-    visibility = ["//visibility:public"],
-    deps = [
-        ":localizer",
-        "//aos:init",
-        "//aos/events:shm_event_loop",
-        "//y2022/control_loops/drivetrain:drivetrain_base",
-    ],
-)
-
-cc_test(
-    name = "localizer_test",
-    srcs = ["localizer_test.cc"],
-    data = [
-        "//y2022:aos_config",
-    ],
-    shard_count = 10,
-    deps = [
-        ":localizer",
-        "//aos/events:simulated_event_loop",
-        "//aos/testing:googletest",
-        "//frc971/control_loops/drivetrain:drivetrain_test_lib",
-    ],
-)
-
-cc_binary(
-    name = "localizer_replay",
-    srcs = ["localizer_replay.cc"],
-    data = [
-        "//y2022:aos_config",
-    ],
-    target_compatible_with = ["@platforms//os:linux"],
-    deps = [
-        ":localizer",
-        ":localizer_schema",
-        "//aos:configuration",
-        "//aos:init",
-        "//aos:json_to_flatbuffer",
-        "//aos/events:simulated_event_loop",
-        "//aos/events/logging:log_reader",
-        "//aos/events/logging:log_writer",
-        "//y2022/control_loops/drivetrain:drivetrain_base",
-    ],
-)
diff --git a/y2022/localizer/BUILD b/y2022/localizer/BUILD
index c2afa55..e13159f 100644
--- a/y2022/localizer/BUILD
+++ b/y2022/localizer/BUILD
@@ -1,3 +1,125 @@
+load("@com_github_google_flatbuffers//:build_defs.bzl", "flatbuffer_cc_library")
+load("//aos:flatbuffers.bzl", "cc_static_flatbuffer")
+load("@npm//@bazel/typescript:index.bzl", "ts_library")
+
+ts_library(
+    name = "localizer_plotter",
+    srcs = ["localizer_plotter.ts"],
+    target_compatible_with = ["@platforms//os:linux"],
+    visibility = ["//visibility:public"],
+    deps = [
+        "//aos/network/www:aos_plotter",
+        "//aos/network/www:colors",
+        "//aos/network/www:proxy",
+        "//frc971/wpilib:imu_plot_utils",
+    ],
+)
+
+flatbuffer_cc_library(
+    name = "localizer_output_fbs",
+    srcs = [
+        "localizer_output.fbs",
+    ],
+    gen_reflections = True,
+    target_compatible_with = ["@platforms//os:linux"],
+    visibility = ["//visibility:public"],
+)
+
+flatbuffer_cc_library(
+    name = "localizer_status_fbs",
+    srcs = [
+        "localizer_status.fbs",
+    ],
+    gen_reflections = True,
+    includes = [
+        "//frc971/control_loops:control_loops_fbs_includes",
+        "//frc971/control_loops/drivetrain:drivetrain_status_fbs_includes",
+    ],
+    target_compatible_with = ["@platforms//os:linux"],
+    visibility = ["//visibility:public"],
+)
+
+cc_static_flatbuffer(
+    name = "localizer_schema",
+    function = "frc971::controls::LocalizerStatusSchema",
+    target = ":localizer_status_fbs_reflection_out",
+    visibility = ["//visibility:public"],
+)
+
+cc_library(
+    name = "localizer",
+    srcs = ["localizer.cc"],
+    hdrs = ["localizer.h"],
+    visibility = ["//visibility:public"],
+    deps = [
+        ":localizer_output_fbs",
+        ":localizer_status_fbs",
+        "//aos/containers:ring_buffer",
+        "//aos/events:event_loop",
+        "//aos/time",
+        "//frc971/control_loops:c2d",
+        "//frc971/control_loops:control_loops_fbs",
+        "//frc971/control_loops/drivetrain:drivetrain_output_fbs",
+        "//frc971/control_loops/drivetrain:drivetrain_status_fbs",
+        "//frc971/control_loops/drivetrain:improved_down_estimator",
+        "//frc971/control_loops/drivetrain:localizer_fbs",
+        "//frc971/wpilib:imu_batch_fbs",
+        "//frc971/wpilib:imu_fbs",
+        "//frc971/zeroing:imu_zeroer",
+        "//frc971/zeroing:wrap",
+        "//y2020/vision/sift:sift_fbs",
+        "//y2022:constants",
+        "@org_tuxfamily_eigen//:eigen",
+    ],
+)
+
+cc_binary(
+    name = "localizer_main",
+    srcs = ["localizer_main.cc"],
+    visibility = ["//visibility:public"],
+    deps = [
+        ":localizer",
+        "//aos:init",
+        "//aos/events:shm_event_loop",
+        "//y2022/control_loops/drivetrain:drivetrain_base",
+    ],
+)
+
+cc_test(
+    name = "localizer_test",
+    srcs = ["localizer_test.cc"],
+    data = [
+        "//y2022:aos_config",
+    ],
+    shard_count = 10,
+    deps = [
+        ":localizer",
+        "//aos/events:simulated_event_loop",
+        "//aos/testing:googletest",
+        "//frc971/control_loops/drivetrain:drivetrain_test_lib",
+    ],
+)
+
+cc_binary(
+    name = "localizer_replay",
+    srcs = ["localizer_replay.cc"],
+    data = [
+        "//y2022:aos_config",
+    ],
+    target_compatible_with = ["@platforms//os:linux"],
+    deps = [
+        ":localizer",
+        ":localizer_schema",
+        "//aos:configuration",
+        "//aos:init",
+        "//aos:json_to_flatbuffer",
+        "//aos/events:simulated_event_loop",
+        "//aos/events/logging:log_reader",
+        "//aos/events/logging:log_writer",
+        "//y2022/control_loops/drivetrain:drivetrain_base",
+    ],
+)
+
 cc_library(
     name = "imu",
     srcs = [
diff --git a/y2022/control_loops/localizer/localizer.cc b/y2022/localizer/localizer.cc
similarity index 99%
rename from y2022/control_loops/localizer/localizer.cc
rename to y2022/localizer/localizer.cc
index 56c2769..8d4f908 100644
--- a/y2022/control_loops/localizer/localizer.cc
+++ b/y2022/localizer/localizer.cc
@@ -1,4 +1,4 @@
-#include "y2022/control_loops/localizer/localizer.h"
+#include "y2022/localizer/localizer.h"
 
 #include "frc971/control_loops/c2d.h"
 #include "frc971/wpilib/imu_batch_generated.h"
diff --git a/y2022/control_loops/localizer/localizer.h b/y2022/localizer/localizer.h
similarity index 96%
rename from y2022/control_loops/localizer/localizer.h
rename to y2022/localizer/localizer.h
index d1eaf5c..d7b6a23 100644
--- a/y2022/control_loops/localizer/localizer.h
+++ b/y2022/localizer/localizer.h
@@ -1,5 +1,5 @@
-#ifndef Y2022_CONTROL_LOOPS_LOCALIZER_LOCALIZER_H_
-#define Y2022_CONTROL_LOOPS_LOCALIZER_LOCALIZER_H_
+#ifndef Y2022_LOCALIZER_LOCALIZER_H_
+#define Y2022_LOCALIZER_LOCALIZER_H_
 
 #include "Eigen/Dense"
 #include "Eigen/Geometry"
@@ -8,8 +8,8 @@
 #include "aos/containers/ring_buffer.h"
 #include "aos/time/time.h"
 #include "y2020/vision/sift/sift_generated.h"
-#include "y2022/control_loops/localizer/localizer_status_generated.h"
-#include "y2022/control_loops/localizer/localizer_output_generated.h"
+#include "y2022/localizer/localizer_status_generated.h"
+#include "y2022/localizer/localizer_output_generated.h"
 #include "frc971/control_loops/drivetrain/improved_down_estimator.h"
 #include "frc971/control_loops/drivetrain/drivetrain_output_generated.h"
 #include "frc971/control_loops/drivetrain/localizer_generated.h"
@@ -245,4 +245,4 @@
   zeroing::UnwrapSensor right_encoder_;
 };
 }  // namespace frc971::controls
-#endif // Y2022_CONTROL_LOOPS_LOCALIZER_LOCALIZER_H_
+#endif  // Y2022_LOCALIZER_LOCALIZER_H_
diff --git a/y2022/control_loops/localizer/localizer_main.cc b/y2022/localizer/localizer_main.cc
similarity index 91%
rename from y2022/control_loops/localizer/localizer_main.cc
rename to y2022/localizer/localizer_main.cc
index 187a441..fab1d51 100644
--- a/y2022/control_loops/localizer/localizer_main.cc
+++ b/y2022/localizer/localizer_main.cc
@@ -1,6 +1,6 @@
 #include "aos/events/shm_event_loop.h"
 #include "aos/init.h"
-#include "y2022/control_loops/localizer/localizer.h"
+#include "y2022/localizer/localizer.h"
 #include "y2022/control_loops/drivetrain/drivetrain_base.h"
 
 DEFINE_string(config, "aos_config.json", "Path to the config file to use.");
diff --git a/y2022/control_loops/localizer/localizer_output.fbs b/y2022/localizer/localizer_output.fbs
similarity index 100%
rename from y2022/control_loops/localizer/localizer_output.fbs
rename to y2022/localizer/localizer_output.fbs
diff --git a/y2022/control_loops/localizer/localizer_plotter.ts b/y2022/localizer/localizer_plotter.ts
similarity index 100%
rename from y2022/control_loops/localizer/localizer_plotter.ts
rename to y2022/localizer/localizer_plotter.ts
diff --git a/y2022/control_loops/localizer/localizer_replay.cc b/y2022/localizer/localizer_replay.cc
similarity index 96%
rename from y2022/control_loops/localizer/localizer_replay.cc
rename to y2022/localizer/localizer_replay.cc
index 199882c..d328948 100644
--- a/y2022/control_loops/localizer/localizer_replay.cc
+++ b/y2022/localizer/localizer_replay.cc
@@ -1,4 +1,3 @@
-
 #include "aos/configuration.h"
 #include "aos/events/logging/log_reader.h"
 #include "aos/events/logging/log_writer.h"
@@ -6,8 +5,8 @@
 #include "aos/init.h"
 #include "aos/json_to_flatbuffer.h"
 #include "aos/network/team_number.h"
-#include "y2022/control_loops/localizer/localizer.h"
-#include "y2022/control_loops/localizer/localizer_schema.h"
+#include "y2022/localizer/localizer.h"
+#include "y2022/localizer/localizer_schema.h"
 #include "gflags/gflags.h"
 #include "y2022/control_loops/drivetrain/drivetrain_base.h"
 
diff --git a/y2022/control_loops/localizer/localizer_status.fbs b/y2022/localizer/localizer_status.fbs
similarity index 100%
rename from y2022/control_loops/localizer/localizer_status.fbs
rename to y2022/localizer/localizer_status.fbs
diff --git a/y2022/control_loops/localizer/localizer_test.cc b/y2022/localizer/localizer_test.cc
similarity index 99%
rename from y2022/control_loops/localizer/localizer_test.cc
rename to y2022/localizer/localizer_test.cc
index c58f664..1997b80 100644
--- a/y2022/control_loops/localizer/localizer_test.cc
+++ b/y2022/localizer/localizer_test.cc
@@ -1,4 +1,4 @@
-#include "y2022/control_loops/localizer/localizer.h"
+#include "y2022/localizer/localizer.h"
 
 #include "aos/events/simulated_event_loop.h"
 #include "gtest/gtest.h"