xref: /openbmc/phosphor-bmc-code-mgmt/i2c-vr/i2cvr_software_manager.hpp (revision 7e446a407a579ec72f48009008ad2f83c01c2262)
1*7e446a40SChristopher Meis #pragma once
2*7e446a40SChristopher Meis 
3*7e446a40SChristopher Meis #include "common/include/software_manager.hpp"
4*7e446a40SChristopher Meis 
5*7e446a40SChristopher Meis #include <sdbusplus/async/context.hpp>
6*7e446a40SChristopher Meis 
7*7e446a40SChristopher Meis namespace ManagerInf = phosphor::software::manager;
8*7e446a40SChristopher Meis namespace SDBusAsync = sdbusplus::async;
9*7e446a40SChristopher Meis 
10*7e446a40SChristopher Meis class I2CVRSoftwareManager : public ManagerInf::SoftwareManager
11*7e446a40SChristopher Meis {
12*7e446a40SChristopher Meis   public:
13*7e446a40SChristopher Meis     I2CVRSoftwareManager(SDBusAsync::context& ctx);
14*7e446a40SChristopher Meis 
15*7e446a40SChristopher Meis     SDBusAsync::task<bool> initDevice(const std::string& service,
16*7e446a40SChristopher Meis                                       const std::string& path,
17*7e446a40SChristopher Meis                                       SoftwareConfig& config) final;
18*7e446a40SChristopher Meis 
19*7e446a40SChristopher Meis     void start();
20*7e446a40SChristopher Meis };
21