Use overloading instead of default values

As we are getting ready to add the send boot UUID everywhere, that will
require a UUID as an argument to all the Send methods with a default
that is event_loop_->boot_uuid().  That doesn't work.  Instead, use
overloading to achieve the same purpose.

There are few call sites for all of these, so it isn't hard to change
them all.

Change-Id: Id1e17bbef2e63c72fa6ad2b038c69d452610e86e
diff --git a/aos/events/event_loop.h b/aos/events/event_loop.h
index b8f8d2d..22f7c6f 100644
--- a/aos/events/event_loop.h
+++ b/aos/events/event_loop.h
@@ -147,21 +147,18 @@
   // get the sent times instead.
   virtual void *data() = 0;
   virtual size_t size() = 0;
-  bool Send(size_t size,
-            aos::monotonic_clock::time_point monotonic_remote_time =
-                aos::monotonic_clock::min_time,
-            aos::realtime_clock::time_point realtime_remote_time =
-                aos::realtime_clock::min_time,
-            uint32_t remote_queue_index = 0xffffffffu);
+  bool Send(size_t size);
+  bool Send(size_t size, monotonic_clock::time_point monotonic_remote_time,
+            realtime_clock::time_point realtime_remote_time,
+            uint32_t remote_queue_index);
 
   // Sends a single block of data by copying it.
   // The remote arguments have the same meaning as in Send above.
+  bool Send(const void *data, size_t size);
   bool Send(const void *data, size_t size,
-            aos::monotonic_clock::time_point monotonic_remote_time =
-                aos::monotonic_clock::min_time,
-            aos::realtime_clock::time_point realtime_remote_time =
-                aos::realtime_clock::min_time,
-            uint32_t remote_queue_index = 0xffffffffu);
+            monotonic_clock::time_point monotonic_remote_time,
+            realtime_clock::time_point realtime_remote_time,
+            uint32_t remote_queue_index);
 
   const Channel *channel() const { return channel_; }
 
@@ -190,10 +187,8 @@
  protected:
   EventLoop *event_loop() { return event_loop_; }
 
-  aos::monotonic_clock::time_point monotonic_sent_time_ =
-      aos::monotonic_clock::min_time;
-  aos::realtime_clock::time_point realtime_sent_time_ =
-      aos::realtime_clock::min_time;
+  monotonic_clock::time_point monotonic_sent_time_ = monotonic_clock::min_time;
+  realtime_clock::time_point realtime_sent_time_ = realtime_clock::min_time;
   uint32_t sent_queue_index_ = 0xffffffff;
 
  private:
diff --git a/aos/events/event_loop_param_test.cc b/aos/events/event_loop_param_test.cc
index 79f326d..e0c6024 100644
--- a/aos/events/event_loop_param_test.cc
+++ b/aos/events/event_loop_param_test.cc
@@ -1848,6 +1848,7 @@
       aos::monotonic_clock::time_point(chrono::seconds(1501));
   const aos::realtime_clock::time_point realtime_remote_time =
       aos::realtime_clock::time_point(chrono::seconds(3132));
+  const uint32_t remote_queue_index = 0x254971;
 
   std::unique_ptr<aos::RawSender> sender =
       loop1->MakeRawSender(configuration::GetChannel(
@@ -1859,18 +1860,20 @@
 
   loop2->OnRun([&]() {
     EXPECT_TRUE(sender->Send(kData.data(), kData.size(), monotonic_remote_time,
-                             realtime_remote_time));
+                             realtime_remote_time, remote_queue_index));
   });
 
   bool happened = false;
   loop2->MakeRawWatcher(
       configuration::GetChannel(loop2->configuration(), "/test",
                                 "aos.TestMessage", "", nullptr),
-      [this, monotonic_remote_time, realtime_remote_time, &fetcher, &happened](
-          const Context &context, const void * /*message*/) {
+      [this, monotonic_remote_time, realtime_remote_time,
+       remote_queue_index, &fetcher,
+       &happened](const Context &context, const void * /*message*/) {
         happened = true;
         EXPECT_EQ(monotonic_remote_time, context.monotonic_remote_time);
         EXPECT_EQ(realtime_remote_time, context.realtime_remote_time);
+        EXPECT_EQ(remote_queue_index, context.remote_queue_index);
 
         ASSERT_TRUE(fetcher->Fetch());
         EXPECT_EQ(monotonic_remote_time,
diff --git a/aos/events/event_loop_tmpl.h b/aos/events/event_loop_tmpl.h
index 06b1643..74d3493 100644
--- a/aos/events/event_loop_tmpl.h
+++ b/aos/events/event_loop_tmpl.h
@@ -129,6 +129,11 @@
   return false;
 }
 
+inline bool RawSender::Send(size_t size) {
+  return Send(size, monotonic_clock::min_time, realtime_clock::min_time,
+              0xffffffffu);
+}
+
 inline bool RawSender::Send(
     size_t size, aos::monotonic_clock::time_point monotonic_remote_time,
     aos::realtime_clock::time_point realtime_remote_time,
@@ -147,6 +152,11 @@
   return false;
 }
 
+inline bool RawSender::Send(const void *data, size_t size) {
+  return Send(data, size, monotonic_clock::min_time, realtime_clock::min_time,
+              0xffffffffu);
+}
+
 inline bool RawSender::Send(
     const void *data, size_t size,
     aos::monotonic_clock::time_point monotonic_remote_time,