1*c538727dSKevin Tung #pragma once 2*c538727dSKevin Tung 3*c538727dSKevin Tung #include "common/include/software_manager.hpp" 4*c538727dSKevin Tung 5*c538727dSKevin Tung namespace ManagerInf = phosphor::software::manager; 6*c538727dSKevin Tung 7*c538727dSKevin Tung const std::string configTypeTPM = "TPM"; 8*c538727dSKevin Tung 9*c538727dSKevin Tung class TPMSoftwareManager : public ManagerInf::SoftwareManager 10*c538727dSKevin Tung { 11*c538727dSKevin Tung public: TPMSoftwareManager(sdbusplus::async::context & ctx)12*c538727dSKevin Tung TPMSoftwareManager(sdbusplus::async::context& ctx) : 13*c538727dSKevin Tung SoftwareManager(ctx, configTypeTPM) 14*c538727dSKevin Tung {} 15*c538727dSKevin Tung 16*c538727dSKevin Tung void start(); 17*c538727dSKevin Tung 18*c538727dSKevin Tung sdbusplus::async::task<bool> initDevice(const std::string& service, 19*c538727dSKevin Tung const std::string& path, 20*c538727dSKevin Tung SoftwareConfig& config) final; 21*c538727dSKevin Tung }; 22