Alexander Hansen | 0ab32b3 | 2025-06-27 14:50:33 +0200 | [diff] [blame] | 1 | #pragma once |
| 2 | |
| 3 | #include <sdbusplus/asio/connection.hpp> |
| 4 | #include <sdbusplus/bus/match.hpp> |
| 5 | |
| 6 | namespace power |
| 7 | { |
| 8 | |
Alexander Hansen | 0ab32b3 | 2025-06-27 14:50:33 +0200 | [diff] [blame] | 9 | class PowerStatusMonitor |
| 10 | { |
| 11 | public: |
Alexander Hansen | e164627 | 2025-07-25 11:47:17 +0200 | [diff] [blame] | 12 | explicit PowerStatusMonitor(sdbusplus::asio::connection& conn); |
| 13 | |
| 14 | bool isPowerOn() const; |
Alexander Hansen | 0ab32b3 | 2025-06-27 14:50:33 +0200 | [diff] [blame] | 15 | |
| 16 | private: |
Alexander Hansen | 0a4bb2a | 2025-07-25 11:34:48 +0200 | [diff] [blame] | 17 | void handlePowerMatch(sdbusplus::message_t& message); |
Alexander Hansen | e164627 | 2025-07-25 11:47:17 +0200 | [diff] [blame] | 18 | void getInitialPowerStatus(sdbusplus::asio::connection& conn); |
Alexander Hansen | 0a4bb2a | 2025-07-25 11:34:48 +0200 | [diff] [blame] | 19 | |
Alexander Hansen | 0ab32b3 | 2025-06-27 14:50:33 +0200 | [diff] [blame] | 20 | bool powerStatusOn = false; |
Alexander Hansen | e164627 | 2025-07-25 11:47:17 +0200 | [diff] [blame] | 21 | sdbusplus::bus::match_t powerMatch; |
Alexander Hansen | 0ab32b3 | 2025-06-27 14:50:33 +0200 | [diff] [blame] | 22 | }; |
| 23 | |
| 24 | } // namespace power |