lhtranmitterswitch.h 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201
  1. #ifndef LHTRANSMITTERSWITCH_H
  2. #define LHTRANSMITTERSWITCH_H
  3. #include <QtCore/qglobal.h>
  4. #include <QWidget>
  5. #if defined(LHTRANSMITTERSWITCH_LIBRARY)
  6. # define LHTRANSMITTERSWITCH_EXPORT Q_DECL_EXPORT
  7. #else
  8. # define LHTRANSMITTERSWITCH_EXPORT Q_DECL_IMPORT
  9. #endif
  10. struct InitData;
  11. struct ExecPlanInfo;
  12. struct OnePlanItemInfo;
  13. struct ExecPlanConfig;
  14. /* 回调函数 */
  15. using trackCallBack = void(*)(int actionID, QString strMemo);
  16. extern "C"
  17. {
  18. //------------------------------------------------------------------------
  19. //函 数: DoInit()
  20. //
  21. //说 明:初始化dll
  22. //
  23. //参 数:
  24. // pData: 初始化数据
  25. //返 回 值:0:成功; 其他:失败(详见返回码定义)
  26. //------------------------------------------------------------------------
  27. int LHTRANSMITTERSWITCH_EXPORT DoInit(const InitData* pData);
  28. //------------------------------------------------------------------------
  29. //函 数: DoCreateWindow(int skintype, QWidget* parent)
  30. //
  31. //说 明: 创建窗口
  32. //
  33. //参 数: skintype:皮肤类型 0 白色风格 1 黑色风格
  34. // parent 父窗口指针(父窗口隐藏子窗口也会隐藏,这里是必填)
  35. //
  36. //返 回 值:0:成功; 其他:失败(详见返回码定义)
  37. //------------------------------------------------------------------------
  38. int LHTRANSMITTERSWITCH_EXPORT DoCreateWindow(int skintype, QWidget* parent);
  39. //------------------------------------------------------------------------
  40. //函 数: DoShowWindow(int skintype, int serviceid, bool showWindow)
  41. //
  42. //说 明: 设置窗口显示状态、加载配置信息
  43. //
  44. //参 数: skintype 皮肤类型
  45. // serviceid: 服务id唯一标识,如果小于0界面显示默认值,大于0获取对应的配置数据
  46. // showWindow: true 显示 false 隐藏
  47. //
  48. //返 回 值:0:成功; 其他:失败(详见返回码定义)
  49. //------------------------------------------------------------------------
  50. int LHTRANSMITTERSWITCH_EXPORT DoShowWindow(int skintype, bool showWindow);
  51. //------------------------------------------------------------------------
  52. //函 数: DoGetExecPlanFromEQM
  53. //
  54. //说 明: 从EQM数据库中获取计划数据
  55. //
  56. //参 数: 无
  57. //
  58. //返 回 值:0:成功; 其他:失败(详见返回码定义)
  59. //------------------------------------------------------------------------
  60. int LHTRANSMITTERSWITCH_EXPORT DoGetExecPlanFromEQM();
  61. //------------------------------------------------------------------------
  62. //函 数: DoSaveExecPlanToEQM
  63. //
  64. //说 明: 保存计划到EQM数据库中
  65. //
  66. //参 数: 无
  67. //
  68. //返 回 值:0:成功; 其他:失败(详见返回码定义)
  69. //------------------------------------------------------------------------
  70. int LHTRANSMITTERSWITCH_EXPORT DoSaveExecPlanToEQM();
  71. //------------------------------------------------------------------------
  72. //函 数: DoRelease()
  73. //
  74. //说 明: 释放资源
  75. //
  76. //参 数: void
  77. //
  78. //返 回 值:0:成功; 其他:失败(详见返回码定义)
  79. //------------------------------------------------------------------------
  80. int LHTRANSMITTERSWITCH_EXPORT DoRelease();
  81. //------------------------------------------------------------------------
  82. //函 数: DoSetCallBack()
  83. //
  84. //说 明: 释放资源
  85. //
  86. //参 数: trackCallBack 函数指针
  87. //
  88. //返 回 值:0:成功; 其他:失败(详见返回码定义)
  89. //------------------------------------------------------------------------
  90. int LHTRANSMITTERSWITCH_EXPORT DoSetCallBack(trackCallBack cb);
  91. //------------------------------------------------------------------------
  92. //函 数: DoSetCallBack()
  93. //
  94. //说 明: 释放资源
  95. //
  96. //参 数: trackCallBack 函数指针
  97. //
  98. //返 回 值:0:成功; 其他:失败(详见返回码定义)
  99. //------------------------------------------------------------------------
  100. int LHTRANSMITTERSWITCH_EXPORT DoSetUserPermission(int USerPermission);
  101. /*===========================================================================
  102. * 扩展函数
  103. *===========================================================================*/
  104. /**
  105. * @brief 初始化动态库
  106. *
  107. * @return int
  108. */
  109. int LHTRANSMITTERSWITCH_EXPORT DoInitLibrary();
  110. /**
  111. * @brief 创建一个窗口,不设置WebAPI信息
  112. *
  113. * @param skintype
  114. * @return int
  115. */
  116. int LHTRANSMITTERSWITCH_EXPORT DoCreateOneWindow(int skintype, QWidget* parent);
  117. /**
  118. * @brief 设置WebAPI相关数据
  119. *
  120. * @param pData
  121. * @return int
  122. */
  123. int LHTRANSMITTERSWITCH_EXPORT DoSetWebAPIInfo(InitData* pData);
  124. /**
  125. * @brief 设置频率ID,在ESM8C上位机中只有一个频率
  126. *
  127. * @param frequencyID 正数是频率ID,-1是获取所有频率的信息
  128. * @return int
  129. */
  130. int LHTRANSMITTERSWITCH_EXPORT DoSetChannelInfo(ExecPlanInfo* info, bool useOnlineDB);
  131. /**
  132. * @brief 设置一页的卡片数量
  133. *
  134. * @param horNum 水平方向的卡片数量
  135. * @param verNum 垂直方向的卡片数量
  136. * @return int
  137. */
  138. int LHTRANSMITTERSWITCH_EXPORT DoSetOnePageCardNum(int horNum, int verNum);
  139. /**
  140. * @brief 获取一个频率的计划数据,只应用于本地数据库,下载到下位机用
  141. *
  142. * @param listPlan
  143. * @param channelID
  144. * @return int
  145. */
  146. int LHTRANSMITTERSWITCH_EXPORT DoGetPlanData(QList<OnePlanItemInfo>* listPlan, ExecPlanConfig* config, int channelID = 0);
  147. /**
  148. * @brief 设置一个频率的计划数据,只应用于本地数据库,从下位机读取到的数据
  149. *
  150. * @param listPlan
  151. * @param config
  152. * @param channelID
  153. * @return int
  154. */
  155. int LHTRANSMITTERSWITCH_EXPORT DoSetPlanData(QList<OnePlanItemInfo>& listPlan, ExecPlanConfig& config, int channelID = 0);
  156. /**
  157. * @brief 清空所有信息
  158. *
  159. * @return int
  160. */
  161. int LHTRANSMITTERSWITCH_EXPORT DoClearAll();
  162. }
  163. #endif // LHTRANSMITTERSWITCH_H