17f9d41ddSJagpal Singh Gill #pragma once 27f9d41ddSJagpal Singh Gill 37f9d41ddSJagpal Singh Gill #include "base_port.hpp" 47f9d41ddSJagpal Singh Gill 57f9d41ddSJagpal Singh Gill #include <sdbusplus/async.hpp> 67f9d41ddSJagpal Singh Gill 77f9d41ddSJagpal Singh Gill namespace phosphor::modbus::rtu::port 87f9d41ddSJagpal Singh Gill { 97f9d41ddSJagpal Singh Gill 107f9d41ddSJagpal Singh Gill namespace config 117f9d41ddSJagpal Singh Gill { 127f9d41ddSJagpal Singh Gill 137f9d41ddSJagpal Singh Gill struct PortFactoryConfig; 147f9d41ddSJagpal Singh Gill 157f9d41ddSJagpal Singh Gill } // namespace config 167f9d41ddSJagpal Singh Gill 177f9d41ddSJagpal Singh Gill class USBPort : public BasePort 187f9d41ddSJagpal Singh Gill { 197f9d41ddSJagpal Singh Gill public: 207f9d41ddSJagpal Singh Gill explicit USBPort(sdbusplus::async::context& ctx, 21*b62e3dfeSJagpal Singh Gill const config::PortFactoryConfig& config); 227f9d41ddSJagpal Singh Gill 237f9d41ddSJagpal Singh Gill static auto getConfig(sdbusplus::async::context& ctx, 247f9d41ddSJagpal Singh Gill const sdbusplus::message::object_path& objectPath) 25*b62e3dfeSJagpal Singh Gill -> sdbusplus::async::task<std::unique_ptr<config::PortFactoryConfig>>; 267f9d41ddSJagpal Singh Gill }; 277f9d41ddSJagpal Singh Gill 287f9d41ddSJagpal Singh Gill } // namespace phosphor::modbus::rtu::port 29