1 #pragma once 2 3 #include "ASyncSerial.h" 4 #include "KMTronicBase.h" 5 6 class KMTronic433 : public AsyncSerial, public KMTronicBase 7 { 8 public: 9 KMTronic433(const int ID, const std::string& devname); 10 ~KMTronic433(); 11 private: 12 bool StartHardware() override; 13 bool StopHardware() override; 14 15 void GetRelayStates(); 16 int m_iQueryState; 17 bool m_bHaveReceived; 18 19 std::shared_ptr<std::thread> m_thread; 20 int m_retrycntr; 21 void Do_Work(); 22 bool OpenSerialDevice(); 23 24 /** 25 * Read callback, stores data in the buffer 26 */ 27 void readCallback(const char *data, size_t len); 28 bool WriteInt(const unsigned char *data, const size_t len, const bool bWaitForReturn) override; 29 }; 30 31