#pragma once #include "host-bmc/host_pdr_handler.hpp" #include #include #include namespace pldm { namespace dbus_api { using HostIntf = sdbusplus::server::object_t< sdbusplus::xyz::openbmc_project::Condition::server::HostFirmware>; class Host : public HostIntf { public: Host() = delete; Host(const Host&) = delete; Host& operator=(const Host&) = delete; Host(Host&&) = delete; Host& operator=(Host&&) = delete; virtual ~Host() = default; Host(sdbusplus::bus_t& bus, const std::string& path) : HostIntf(bus, path.c_str()) {}; /** @brief Override reads to CurrentFirmwareCondition */ FirmwareCondition currentFirmwareCondition() const override; /** @brief Store shared pointer to host PDR instance */ void setHostPdrObj(std::shared_ptr obj) { hostPdrObj = obj; } private: std::shared_ptr hostPdrObj; }; } // namespace dbus_api } // namespace pldm