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 bool isPowerOn(); 13 void setupPowerMatch( 14 const std::shared_ptr<sdbusplus::asio::connection>& conn); 15 16 private: 17 void handlePowerMatch(sdbusplus::message_t& message); 18 19 bool powerStatusOn = false; 20 std::unique_ptr<sdbusplus::bus::match_t> powerMatch = nullptr; 21 }; 22 23 } // namespace power 24