Zone function to set requested speed base

The requested speed base is the speed value to base calculations for a
new target speed of increases or decreases from.

Change-Id: Iea413baa9c24c3240ddaf179b9faa259566f7e08
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
diff --git a/control/zone.hpp b/control/zone.hpp
index bc21b9f..1696bda 100644
--- a/control/zone.hpp
+++ b/control/zone.hpp
@@ -214,6 +214,17 @@
         void setFloor(uint64_t speed);
 
         /**
+         * @brief Set the requested speed base to be used as the speed to
+         * base a new requested speed target from
+         *
+         * @param[in] speedBase - Base speed value to use
+         */
+        inline void setRequestSpeedBase(uint64_t speedBase)
+        {
+            _requestSpeedBase = speedBase;
+        };
+
+        /**
          * @brief Calculate the requested target speed from the given delta
          * and increase the fan speeds, not going above the ceiling.
          *
@@ -313,6 +324,11 @@
         uint64_t _decSpeedDelta = 0;
 
         /**
+         * Requested speed base
+         */
+        uint64_t _requestSpeedBase = 0;
+
+        /**
          * Speed increase delay in seconds
          */
         std::chrono::seconds _incDelay;