Drop intermediate list of files from log reading

We are saving a temporary variable in a ton of places for the lifetime
of the program.  Inline it so we can change the return type.

Change-Id: If8d90ffd07806644aceed4c44087e5fd206c8df9
Signed-off-by: James Kuszmaul <james.kuszmaul@bluerivertech.com>
diff --git a/aos/events/logging/log_config_extractor.cc b/aos/events/logging/log_config_extractor.cc
index da0c65f..f2df5b3 100644
--- a/aos/events/logging/log_config_extractor.cc
+++ b/aos/events/logging/log_config_extractor.cc
@@ -98,11 +98,8 @@
     WriteFlatbufferToJson(output_path + ".json", config);
     LOG(INFO) << "Done writing json to " << output_path << ".json";
   } else {
-    const std::vector<std::string> unsorted_logfiles =
-        aos::logger::FindLogs(argc, argv);
-
     const std::vector<aos::logger::LogFile> logfiles =
-        aos::logger::SortParts(unsorted_logfiles);
+        aos::logger::SortParts(aos::logger::FindLogs(argc, argv));
 
     WriteConfig(logfiles[0].config.get(), output_path);
   }
diff --git a/aos/events/logging/log_replayer.cc b/aos/events/logging/log_replayer.cc
index 7231a91..b69df4a 100644
--- a/aos/events/logging/log_replayer.cc
+++ b/aos/events/logging/log_replayer.cc
@@ -52,11 +52,8 @@
 namespace aos::logger {
 
 int Main(int argc, char *argv[]) {
-  const std::vector<std::string> unsorted_logfiles =
-      aos::logger::FindLogs(argc, argv);
-
   const std::vector<aos::logger::LogFile> logfiles =
-      aos::logger::SortParts(unsorted_logfiles);
+      aos::logger::SortParts(aos::logger::FindLogs(argc, argv));
 
   aos::logger::LogReader config_reader(logfiles);
   aos::FlatbufferDetachedBuffer<aos::Configuration> config =
diff --git a/frc971/analysis/log_to_match.cc b/frc971/analysis/log_to_match.cc
index b23e8ad..cbe7e50 100644
--- a/frc971/analysis/log_to_match.cc
+++ b/frc971/analysis/log_to_match.cc
@@ -7,9 +7,8 @@
 int main(int argc, char **argv) {
   aos::InitGoogle(&argc, &argv);
 
-  std::vector<std::string> unsorted_logfiles =
-      aos::logger::FindLogs(argc, argv);
-  aos::logger::LogReader reader(aos::logger::SortParts(unsorted_logfiles));
+  aos::logger::LogReader reader(
+      aos::logger::SortParts(aos::logger::FindLogs(argc, argv)));
   reader.Register();
   const aos::Node *roborio =
       aos::configuration::GetNode(reader.configuration(), "roborio");
diff --git a/y2020/control_loops/drivetrain/drivetrain_replay.cc b/y2020/control_loops/drivetrain/drivetrain_replay.cc
index 0035fb3..326c184 100644
--- a/y2020/control_loops/drivetrain/drivetrain_replay.cc
+++ b/y2020/control_loops/drivetrain/drivetrain_replay.cc
@@ -39,13 +39,9 @@
   const aos::FlatbufferDetachedBuffer<aos::Configuration> config =
       aos::configuration::ReadConfig(FLAGS_config);
 
-  // find logfiles
-  std::vector<std::string> unsorted_logfiles =
-      aos::logger::FindLogs(argc, argv);
-
   // sort logfiles
   const std::vector<aos::logger::LogFile> logfiles =
-      aos::logger::SortParts(unsorted_logfiles);
+      aos::logger::SortParts(aos::logger::FindLogs(argc, argv));
 
   // open logfiles
   aos::logger::LogReader reader(logfiles, &config.message());
diff --git a/y2020/vision/viewer_replay.cc b/y2020/vision/viewer_replay.cc
index a818859..03777bc 100644
--- a/y2020/vision/viewer_replay.cc
+++ b/y2020/vision/viewer_replay.cc
@@ -17,11 +17,9 @@
 namespace {
 
 void ViewerMain(int argc, char *argv[]) {
-  std::vector<std::string> unsorted_logfiles =
-      aos::logger::FindLogs(argc, argv);
-
   // open logfiles
-  aos::logger::LogReader reader(aos::logger::SortParts(unsorted_logfiles));
+  aos::logger::LogReader reader(
+      aos::logger::SortParts(aos::logger::FindLogs(argc, argv)));
   reader.Register();
   const aos::Node *node = nullptr;
   if (aos::configuration::MultiNode(reader.configuration())) {
diff --git a/y2022/localizer/localizer_replay.cc b/y2022/localizer/localizer_replay.cc
index e706421..a3baf3b 100644
--- a/y2022/localizer/localizer_replay.cc
+++ b/y2022/localizer/localizer_replay.cc
@@ -29,13 +29,9 @@
   const aos::FlatbufferDetachedBuffer<aos::Configuration> config =
       aos::configuration::ReadConfig(FLAGS_config);
 
-  // find logfiles
-  std::vector<std::string> unsorted_logfiles =
-      aos::logger::FindLogs(argc, argv);
-
   // sort logfiles
   const std::vector<aos::logger::LogFile> logfiles =
-      aos::logger::SortParts(unsorted_logfiles);
+      aos::logger::SortParts(aos::logger::FindLogs(argc, argv));
 
   // open logfiles
   aos::logger::LogReader reader(logfiles, &config.message());
diff --git a/y2022/vision/viewer_replay.cc b/y2022/vision/viewer_replay.cc
index 66087e5..7e8c800 100644
--- a/y2022/vision/viewer_replay.cc
+++ b/y2022/vision/viewer_replay.cc
@@ -47,10 +47,9 @@
   data->match_start = monotonic_clock::min_time;
   data->match_end = monotonic_clock::min_time;
 
-  std::vector<std::string> unsorted_logfiles =
-      aos::logger::FindLogs(FLAGS_roborio_log);
   // Open logfiles
-  aos::logger::LogReader reader(aos::logger::SortParts(unsorted_logfiles));
+  aos::logger::LogReader reader(
+      aos::logger::SortParts(aos::logger::FindLogs(FLAGS_roborio_log)));
   reader.Register();
   const aos::Node *roborio =
       aos::configuration::GetNode(reader.configuration(), "roborio");
@@ -149,11 +148,9 @@
         << "Can't use match timestamps if match never ended";
   }
 
-  std::vector<std::string> unsorted_logfiles =
-      aos::logger::FindLogs(FLAGS_logger_pi_log);
-
   // Open logfiles
-  aos::logger::LogReader reader(aos::logger::SortParts(unsorted_logfiles));
+  aos::logger::LogReader reader(
+      aos::logger::SortParts(aos::logger::FindLogs(FLAGS_logger_pi_log)));
   reader.Register();
   const aos::Node *pi =
       aos::configuration::GetNode(reader.configuration(), FLAGS_pi);
diff --git a/y2023/localizer/localizer_replay.cc b/y2023/localizer/localizer_replay.cc
index 27fdd85..859b77e 100644
--- a/y2023/localizer/localizer_replay.cc
+++ b/y2023/localizer/localizer_replay.cc
@@ -25,13 +25,9 @@
   const aos::FlatbufferDetachedBuffer<aos::Configuration> config =
       aos::configuration::ReadConfig(FLAGS_config);
 
-  // find logfiles
-  std::vector<std::string> unsorted_logfiles =
-      aos::logger::FindLogs(argc, argv);
-
   // sort logfiles
   const std::vector<aos::logger::LogFile> logfiles =
-      aos::logger::SortParts(unsorted_logfiles);
+      aos::logger::SortParts(aos::logger::FindLogs(argc, argv));
 
   // open logfiles
   aos::logger::LogReader reader(logfiles, &config.message());
diff --git a/y2023/vision/target_mapping.cc b/y2023/vision/target_mapping.cc
index 985a412..2ca6f66 100644
--- a/y2023/vision/target_mapping.cc
+++ b/y2023/vision/target_mapping.cc
@@ -398,9 +398,6 @@
 }
 
 void MappingMain(int argc, char *argv[]) {
-  std::vector<std::string> unsorted_logfiles =
-      aos::logger::FindLogs(argc, argv);
-
   std::vector<DataAdapter::TimestampedDetection> timestamped_target_detections;
 
   std::optional<aos::FlatbufferDetachedBuffer<aos::Configuration>> config =
@@ -410,7 +407,7 @@
 
   // Open logfiles
   aos::logger::LogReader reader(
-      aos::logger::SortParts(unsorted_logfiles),
+      aos::logger::SortParts(aos::logger::FindLogs(argc, argv)),
       config.has_value() ? &config->message() : nullptr);
 
   TargetMapperReplay mapper_replay(&reader);