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