DataEngine.h 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. #pragma once
  2. #include "../RedisAgent/RedisAgent.h"
  3. #include "../TDAgent/TDAgent.h"
  4. #include "../MQTTAgent/MQTTAgent.h"
  5. #include "BaseModule.h"
  6. #include "DeviceController.h"
  7. #include <QtCore/QObject>
  8. #include <list>
  9. // 模块加载
  10. class DataEngine : public QObject,public DataConsumer
  11. {
  12. Q_OBJECT
  13. public:
  14. DataEngine();
  15. private:
  16. RedisAgent* m_pRedis; // 读取配置
  17. TDAgent* m_pTDengine; // 订阅发布
  18. MQTTAgent* m_pMqtt; // 订阅发布
  19. std::map<std::string,
  20. std::list<DeviceController*>> m_mpDevControler; // 订阅列表
  21. public slots:
  22. void sltSubData_td(const std::string, const std::string);
  23. void sltSubData_mqtt(const std::string, const std::string);
  24. private:
  25. void startup_DataAlarm(DeviceInfo di);
  26. void startup_CommAlarm(DeviceInfo di);
  27. void startup_AlarmMgr(DeviceInfo di);
  28. public:
  29. virtual void OnData(std::string name,QVariant val);
  30. void Startup();
  31. };