1*dd2c6fdcSAndrew Geissler #pragma once 2*dd2c6fdcSAndrew Geissler 3*dd2c6fdcSAndrew Geissler #include <sdbusplus/bus.hpp> 4*dd2c6fdcSAndrew Geissler #include <xyz/openbmc_project/Control/Host/server.hpp> 5*dd2c6fdcSAndrew Geissler 6*dd2c6fdcSAndrew Geissler namespace phosphor 7*dd2c6fdcSAndrew Geissler { 8*dd2c6fdcSAndrew Geissler namespace host 9*dd2c6fdcSAndrew Geissler { 10*dd2c6fdcSAndrew Geissler 11*dd2c6fdcSAndrew Geissler /** @class Host 12*dd2c6fdcSAndrew Geissler * @brief OpenBMC control host interface implementation. 13*dd2c6fdcSAndrew Geissler * @details A concrete implementation for xyz.openbmc_project.Control.Host 14*dd2c6fdcSAndrew Geissler * DBus API. 15*dd2c6fdcSAndrew Geissler */ 16*dd2c6fdcSAndrew Geissler class Host : public sdbusplus::server::object::object< 17*dd2c6fdcSAndrew Geissler sdbusplus::xyz::openbmc_project::Control::server::Host> 18*dd2c6fdcSAndrew Geissler { 19*dd2c6fdcSAndrew Geissler public: 20*dd2c6fdcSAndrew Geissler /** @brief Constructs Host Control Interface 21*dd2c6fdcSAndrew Geissler * 22*dd2c6fdcSAndrew Geissler * @param[in] bus - The Dbus bus object 23*dd2c6fdcSAndrew Geissler * @param[in] objPath - The Dbus object path 24*dd2c6fdcSAndrew Geissler */ 25*dd2c6fdcSAndrew Geissler Host(sdbusplus::bus::bus& bus, 26*dd2c6fdcSAndrew Geissler const char* objPath) : 27*dd2c6fdcSAndrew Geissler sdbusplus::server::object::object< 28*dd2c6fdcSAndrew Geissler sdbusplus::xyz::openbmc_project::Control::server::Host>( 29*dd2c6fdcSAndrew Geissler bus, objPath) 30*dd2c6fdcSAndrew Geissler {} 31*dd2c6fdcSAndrew Geissler }; 32*dd2c6fdcSAndrew Geissler 33*dd2c6fdcSAndrew Geissler } // namespace host 34*dd2c6fdcSAndrew Geissler } // namespace phosphor 35