1*7f9d41ddSJagpal Singh Gill #pragma once 2*7f9d41ddSJagpal Singh Gill 3*7f9d41ddSJagpal Singh Gill #include "base_port.hpp" 4*7f9d41ddSJagpal Singh Gill 5*7f9d41ddSJagpal Singh Gill #include <sdbusplus/async.hpp> 6*7f9d41ddSJagpal Singh Gill 7*7f9d41ddSJagpal Singh Gill namespace phosphor::modbus::rtu::port 8*7f9d41ddSJagpal Singh Gill { 9*7f9d41ddSJagpal Singh Gill 10*7f9d41ddSJagpal Singh Gill namespace config 11*7f9d41ddSJagpal Singh Gill { 12*7f9d41ddSJagpal Singh Gill 13*7f9d41ddSJagpal Singh Gill struct PortFactoryConfig; 14*7f9d41ddSJagpal Singh Gill 15*7f9d41ddSJagpal Singh Gill } // namespace config 16*7f9d41ddSJagpal Singh Gill 17*7f9d41ddSJagpal Singh Gill class USBPort : public BasePort 18*7f9d41ddSJagpal Singh Gill { 19*7f9d41ddSJagpal Singh Gill public: 20*7f9d41ddSJagpal Singh Gill explicit USBPort(sdbusplus::async::context& ctx, 21*7f9d41ddSJagpal Singh Gill config::PortFactoryConfig& config); 22*7f9d41ddSJagpal Singh Gill 23*7f9d41ddSJagpal Singh Gill static auto getConfig(sdbusplus::async::context& ctx, 24*7f9d41ddSJagpal Singh Gill const sdbusplus::message::object_path& objectPath) 25*7f9d41ddSJagpal Singh Gill -> sdbusplus::async::task<std::optional<config::PortFactoryConfig>>; 26*7f9d41ddSJagpal Singh Gill }; 27*7f9d41ddSJagpal Singh Gill 28*7f9d41ddSJagpal Singh Gill } // namespace phosphor::modbus::rtu::port 29