xref: /openbmc/entity-manager/src/entity_manager/power_status_monitor.hpp (revision 8c99fcf58a42ebe730487688130a446d4b793740)
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     bool powerStatusOn = false;
18     std::unique_ptr<sdbusplus::bus::match_t> powerMatch = nullptr;
19 };
20 
21 } // namespace power
22