1 #pragma once 2 3 #include <sdbusplus/asio/connection.hpp> 4 #include <sdbusplus/bus/match.hpp> 5 6 namespace power 7 { 8 9 class PowerStatusMonitor 10 { 11 public: 12 explicit PowerStatusMonitor(sdbusplus::asio::connection& conn); 13 14 bool isPowerOn() const; 15 16 private: 17 void handlePowerMatch(sdbusplus::message_t& message); 18 void getInitialPowerStatus(sdbusplus::asio::connection& conn); 19 20 bool powerStatusOn = false; 21 sdbusplus::bus::match_t powerMatch; 22 }; 23 24 } // namespace power 25