blob: b3a51a5082d4ead73d7d22a7aa2cc13301962eab [file] [log] [blame]
Jagpal Singh Gille92aba42025-10-16 00:00:13 -07001#pragma once
2
3#include "base_device.hpp"
4
5#include <unordered_set>
6
7namespace phosphor::modbus::rtu::device
8{
9
10namespace config
11{
12
13struct DeviceFactoryConfig;
14
15} // namespace config
16
17class ReservoirPumpUnit : public BaseDevice
18{
19 public:
20 explicit ReservoirPumpUnit(sdbusplus::async::context& ctx,
21 const config::Config& config,
Jagpal Singh Gill71848052025-10-16 00:28:58 -070022 PortIntf& serialPort, EventIntf::Events& events);
Jagpal Singh Gille92aba42025-10-16 00:00:13 -070023
24 static auto getInterfaces() -> std::unordered_set<std::string>;
25
26 static auto getConfig(sdbusplus::async::context& ctx,
27 const sdbusplus::message::object_path& objectPath,
28 const std::string& interfaceName)
29 -> sdbusplus::async::task<std::optional<config::DeviceFactoryConfig>>;
30};
31
32} // namespace phosphor::modbus::rtu::device