timer: Remove in favor of sdeventplus/timer

Lets use the new standard event loop timer utility that comes with
sdeventplus instead of the one copied from other projects.

Change-Id: Ie7c8f462f2c0e2e05ce14da58b30a1f91acbf75d
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/mainloop.hpp b/mainloop.hpp
index 87f6ed0..dbf86fb 100644
--- a/mainloop.hpp
+++ b/mainloop.hpp
@@ -5,14 +5,15 @@
 #include "sensor.hpp"
 #include "sensorset.hpp"
 #include "sysfs.hpp"
-#include "timer.hpp"
 #include "types.hpp"
 
 #include <any>
 #include <memory>
 #include <optional>
 #include <sdbusplus/server.hpp>
+#include <sdeventplus/clock.hpp>
 #include <sdeventplus/event.hpp>
+#include <sdeventplus/utility/timer.hpp>
 #include <string>
 #include <vector>
 
@@ -31,8 +32,8 @@
     MainLoop() = delete;
     MainLoop(const MainLoop&) = delete;
     MainLoop& operator=(const MainLoop&) = delete;
-    MainLoop(MainLoop&&) = default;
-    MainLoop& operator=(MainLoop&&) = default;
+    MainLoop(MainLoop&&) = delete;
+    MainLoop& operator=(MainLoop&&) = delete;
     ~MainLoop() = default;
 
     /** @brief Constructor
@@ -98,10 +99,10 @@
     uint64_t _interval = default_interval;
     /** @brief Hwmon sysfs access. */
     hwmonio::HwmonIO ioAccess;
-    /** @brief Timer */
-    std::unique_ptr<phosphor::hwmon::Timer> timer;
     /** @brief the Event Loop structure */
     sdeventplus::Event event;
+    /** @brief Read Timer */
+    sdeventplus::utility::Timer<sdeventplus::ClockId::Monotonic> timer;
     /** @brief Store the specifications of sensor objects */
     std::map<SensorSet::key_type, std::unique_ptr<sensor::Sensor>>
         sensorObjects;