diff --git a/monitor/fan.hpp b/monitor/fan.hpp
index 5e3802e..45d1586 100644
--- a/monitor/fan.hpp
+++ b/monitor/fan.hpp
@@ -178,6 +178,13 @@
      */
     void process(TachSensor& sensor);
 
+    /**
+     * @brief The function that runs when the power state changes
+     *
+     * @param[in] powerStateOn - If power is now on or not
+     */
+    void powerStateChanged(bool powerStateOn);
+
   private:
     /**
      * @brief Returns true if the sensor input is not within
@@ -215,6 +222,15 @@
     void presenceChanged(sdbusplus::message::message& msg);
 
     /**
+     * @brief Called when there is an interfacesAdded signal on the
+     *        fan D-Bus path so the code can look for the 'Present'
+     *        property value.
+     *
+     * @param[in] msg - The message from the interfacesAdded signal
+     */
+    void presenceIfaceAdded(sdbusplus::message::message& msg);
+
+    /**
      * @brief the dbus object
      */
     sdbusplus::bus::bus& _bus;
@@ -289,6 +305,12 @@
     sdbusplus::bus::match::match _presenceMatch;
 
     /**
+     * @brief The match object for the interfacesAdded signal
+     *        for the interface that has the Present property.
+     */
+    sdbusplus::bus::match::match _presenceIfaceAddedMatch;
+
+    /**
      * @brief The current presence state
      */
     bool _present = false;
