Virtual A/B report metrics from update_engine. (1/2)

Test: apply OTA and look at log
Bug: 138817833
Bug: 147696014
Change-Id: I12331a272028e4a21a14604e1e7e48cb2c5ef55c
diff --git a/cleanup_previous_update_action.h b/cleanup_previous_update_action.h
index 9afcf27..7b1586c 100644
--- a/cleanup_previous_update_action.h
+++ b/cleanup_previous_update_action.h
@@ -17,10 +17,13 @@
 #ifndef UPDATE_ENGINE_CLEANUP_PREVIOUS_UPDATE_ACTION_H_
 #define UPDATE_ENGINE_CLEANUP_PREVIOUS_UPDATE_ACTION_H_
 
+#include <chrono>  // NOLINT(build/c++11) -- for merge times
+#include <memory>
 #include <string>
 
 #include <brillo/message_loops/message_loop.h>
 #include <libsnapshot/snapshot.h>
+#include <libsnapshot/snapshot_stats.h>
 
 #include "update_engine/common/action.h"
 #include "update_engine/common/boot_control_interface.h"
@@ -69,6 +72,7 @@
   bool running_{false};
   bool cancel_failed_{false};
   unsigned int last_percentage_{0};
+  android::snapshot::SnapshotMergeStats* merge_stats_;
 
   void StartActionInternal();
   void ScheduleWaitBootCompleted();
@@ -78,6 +82,7 @@
   void ScheduleWaitForMerge();
   void WaitForMergeOrSchedule();
   void InitiateMergeAndWait();
+  void ReportMergeStats();
 
   // Callbacks to ProcessUpdateState.
   bool OnMergePercentageUpdate();