lhtransmitterswitchapi.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #ifndef LHTRANSMITTERSWITCHAPI_H
  2. #define LHTRANSMITTERSWITCHAPI_H
  3. #include <QString>
  4. #include <QWidget>
  5. struct InitData
  6. {
  7. QString url;
  8. QString serverID;
  9. QString serverKey;
  10. };
  11. class LHTransmitterSwitchAPI
  12. {
  13. using pInit = int(*)(const InitData*);
  14. using pCreateWindow = int(*)(int, QWidget*);
  15. using pShowWindow = int(*)(int, bool);
  16. using pGetExecPlanFromEQM = int(*)();
  17. using pSaveExecPlanToEQM = int(*)();
  18. using pRelease = int(*)();
  19. public:
  20. LHTransmitterSwitchAPI();
  21. ~LHTransmitterSwitchAPI();
  22. /* 加载动态库 */
  23. bool loadLibrary();
  24. int DoInit(const InitData* pData);
  25. int DoCreateWindow(int skintype, QWidget* parent);
  26. int DoShowWindow(int skintype, bool showWindow);
  27. int DoGetExecPlanFromEQM();
  28. int DoSaveExecPlanToEQM();
  29. int DoRelease();
  30. private:
  31. pInit m_pInit = nullptr;
  32. pCreateWindow m_pCreateWindow = nullptr;
  33. pShowWindow m_pShowWindow = nullptr;
  34. pGetExecPlanFromEQM m_pGetExecPlanFromEQM = nullptr;
  35. pSaveExecPlanToEQM m_pSaveExecPlanToEQM = nullptr;
  36. pRelease m_pRelease = nullptr;
  37. };
  38. #endif /* LHTRANSMITTERSWITCHAPI_H */