Trans2Mqtt.h 805 B

123456789101112131415161718192021222324252627282930
  1. #ifndef Trans2mqtt_H
  2. #define Trans2mqtt_H
  3. #include "Trans2mqtt_global.h"
  4. #include "Client.h"
  5. #include "MQTTClient.h"
  6. #include <QJsonObject>
  7. class TRANS2MQTT_EXPORT Trans2Mqtt:public Client
  8. {
  9. public:
  10. Trans2Mqtt();
  11. ~Trans2Mqtt();
  12. virtual void Run(const ConsumerInfo& ci);
  13. virtual void OnData(const QString& user, const QString& key, const QVariant& val);
  14. virtual void setLoader(QLibrary*);
  15. private:
  16. virtual void run();
  17. MQTTClient* mqtt = nullptr;
  18. std::list<std::string>dataItems;
  19. std::unordered_multimap<std::string, std::string>topicsMap;
  20. std::unordered_map<std::string, QJsonObject>dataMap;
  21. };
  22. extern "C" {//一定要添加上
  23. TRANS2MQTT_EXPORT Client* instance();
  24. TRANS2MQTT_EXPORT void destroy(Client*);
  25. }
  26. #endif // Trans2mqtt_H