1 #pragma once 2 3 #include <memory> 4 #include <string> 5 6 #include <sdbusplus/bus.hpp> 7 8 #include "interfaces.hpp" 9 10 11 /* 12 * This ReadInterface will actively reach out over dbus upon calling read to 13 * get the value from whomever owns the associated dbus path. 14 */ 15 class DbusActiveRead: public ReadInterface 16 { 17 public: 18 DbusActiveRead(sdbusplus::bus::bus& bus, 19 const std::string& path, 20 const std::string& service) 21 : ReadInterface(), 22 _bus(bus), 23 _path(path), 24 _service(service) 25 { } 26 27 ReadReturn read(void) override; 28 29 private: 30 sdbusplus::bus::bus& _bus; 31 const std::string _path; 32 const std::string _service; // the sensor service. 33 }; 34