xref: /openbmc/phosphor-modbus/rtu/port/usb_port.hpp (revision 7f9d41ddfad8c74d51fa1cf4a591b7f085254396)
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                      config::PortFactoryConfig& config);
22 
23     static auto getConfig(sdbusplus::async::context& ctx,
24                           const sdbusplus::message::object_path& objectPath)
25         -> sdbusplus::async::task<std::optional<config::PortFactoryConfig>>;
26 };
27 
28 } // namespace phosphor::modbus::rtu::port
29