Add Timer support to TachSensor

Add a Timer object to the TachSensor class

Change-Id: I419b5712de9e8e94f2a08de84d13170e44c33c7a
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
diff --git a/monitor/fan.cpp b/monitor/fan.cpp
index 852d2ba..7d657a0 100644
--- a/monitor/fan.cpp
+++ b/monitor/fan.cpp
@@ -44,10 +44,9 @@
                                          *this,
                                          std::get<sensorNameField>(s),
                                          std::get<hasTargetField>(s),
-                                         std::get<timeoutField>(def)));
-
+                                         std::get<timeoutField>(def),
+                                         events));
     }
-
 }
 
 
@@ -123,6 +122,16 @@
 }
 
 
+void Fan::timerExpired(TachSensor& sensor)
+{
+    sensor.setFunctional(false);
+
+    //If the fan is currently functional, but too many
+    //contained sensors are now nonfunctional, update
+    //the whole fan nonfunctional.
+    //TODO
+}
+
 }
 }
 }