1 #pragma once 2 3 #include "DomoticzHardware.h" 4 5 class CPVOutputInput : public CDomoticzHardwareBase 6 { 7 public: 8 CPVOutputInput(const int ID, const std::string &SID, const std::string &Key); 9 ~CPVOutputInput(void); 10 bool WriteToHardware(const char *pdata, const unsigned char length) override; 11 private: 12 void Init(); 13 bool StartHardware() override; 14 bool StopHardware() override; 15 void Do_Work(); 16 void GetMeterDetails(); 17 private: 18 std::string m_SID; 19 std::string m_KEY; 20 std::shared_ptr<std::thread> m_thread; 21 bool m_bHadConsumption = false; 22 }; 23 24