| 
									
										
										
										
											2024-09-12 16:23:44 +08:00
										 |  |  |  | #ifndef GLOBALPARAMETERS_H | 
					
						
							|  |  |  |  | #define GLOBALPARAMETERS_H
 | 
					
						
							|  |  |  |  | #pragma execution_character_set("utf-8")
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | #include <QStringList>
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | #include "singleton.h"
 | 
					
						
							| 
									
										
										
										
											2024-11-08 16:11:31 +08:00
										 |  |  |  | #include "hv_tcpclient.h"
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | #define DEVICE_SERVER_PORT (44242)
 | 
					
						
							| 
									
										
										
										
											2024-09-12 16:23:44 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | class QAbstractTableModel; | 
					
						
							|  |  |  |  | class QTableView; | 
					
						
							|  |  |  |  | class MyTableModel; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | //采集设备参数所处的状态
 | 
					
						
							|  |  |  |  | typedef enum _tagSignalStatus | 
					
						
							|  |  |  |  | { | 
					
						
							|  |  |  |  |     STATUS_NORMAL   = 0, | 
					
						
							|  |  |  |  |     STATUS_WARN     = 1, | 
					
						
							|  |  |  |  |     STATUS_ERROR    = 2, | 
					
						
							|  |  |  |  |     STATUS_INFO     = 3, | 
					
						
							| 
									
										
										
										
											2024-10-17 20:25:43 +08:00
										 |  |  |  | } SignalStatus; | 
					
						
							| 
									
										
										
										
											2024-09-12 16:23:44 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | typedef struct _ModelItem | 
					
						
							|  |  |  |  | { | 
					
						
							|  |  |  |  |     SignalStatus            status; | 
					
						
							|  |  |  |  |     std::string             ParameterName; | 
					
						
							|  |  |  |  |     std::string             value; | 
					
						
							|  |  |  |  |     std::string             unit; | 
					
						
							|  |  |  |  |     std::string             sampleTime; | 
					
						
							| 
									
										
										
										
											2024-10-17 20:25:43 +08:00
										 |  |  |  | } ModelItem; | 
					
						
							| 
									
										
										
										
											2024-09-12 16:23:44 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | typedef QList<ModelItem> TableData; | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-10-17 20:25:43 +08:00
										 |  |  |  | //用来处理串口各种参数的ComboBox的Model
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | //设置奇偶检验
 | 
					
						
							|  |  |  |  | #define EMS_PARITY_NONE 0
 | 
					
						
							|  |  |  |  | #define EMS_PARITY_ODD 1
 | 
					
						
							|  |  |  |  | #define EMS_PARITY_EVEN 2
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | typedef std::pair<int,QString>      ParityItemData; | 
					
						
							|  |  |  |  | typedef std::vector<ParityItemData>  vecParityItemData; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | //设置数据位
 | 
					
						
							|  |  |  |  | #define EMS_DATA_8_BITS 8
 | 
					
						
							|  |  |  |  | #define EMS_DATA_7_BITS 7
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | typedef std::pair<int,QString>      DataBitsItemData; | 
					
						
							|  |  |  |  | typedef std::vector<DataBitsItemData>  vecDataBitsItemData; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | //设置停止位
 | 
					
						
							|  |  |  |  | #define EMS_1_STOP_BITS 1
 | 
					
						
							|  |  |  |  | #define EMS_2_STOP_BITS 2
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | typedef std::pair<int,QString>      StopBitsItemData; | 
					
						
							|  |  |  |  | typedef std::vector<StopBitsItemData>  vecStopBitsItemData; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | //设置串口模式
 | 
					
						
							|  |  |  |  | #define EMS_RTU_MODE 1
 | 
					
						
							|  |  |  |  | #define EMS_ASCII_MODE 2
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | typedef std::pair<int,QString>      PortModeItemData; | 
					
						
							|  |  |  |  | typedef std::vector<PortModeItemData>  vecPortModeItemData; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | //设置串口类型
 | 
					
						
							|  |  |  |  | #define EMS_SERIALPORT_TYPE 1
 | 
					
						
							|  |  |  |  | #define EMS_CANPORT_TYPE    2
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | typedef std::pair<int,QString>      PortTypeItemData; | 
					
						
							|  |  |  |  | typedef std::vector<PortTypeItemData>  vecPortTypeItemData; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | //设置串口类型
 | 
					
						
							|  |  |  |  | #define EMS_BAUND_2400 2400
 | 
					
						
							|  |  |  |  | #define EMS_BAUND_4800 4800
 | 
					
						
							|  |  |  |  | #define EMS_BAUND_9600 9600
 | 
					
						
							|  |  |  |  | #define EMS_BAUND_19200 19200
 | 
					
						
							|  |  |  |  | #define EMS_BAUND_38400 38400
 | 
					
						
							|  |  |  |  | #define EMS_BAUND_57600 57600
 | 
					
						
							|  |  |  |  | #define EMS_BAUND_115200 115200
 | 
					
						
							|  |  |  |  | #define EMS_BAUND_128000 128000
 | 
					
						
							|  |  |  |  | #define EMS_BAUND_153600 153600
 | 
					
						
							|  |  |  |  | #define EMS_BAUND_230400 230400
 | 
					
						
							|  |  |  |  | #define EMS_BAUND_460800 460800
 | 
					
						
							|  |  |  |  | #define EMS_BAUND_921600 921600
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | typedef std::pair<int,QString>      BaundItemData; | 
					
						
							|  |  |  |  | typedef std::vector<BaundItemData>  vecBaundItemData; | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-09-12 16:23:44 +08:00
										 |  |  |  | class CWaitorCursor | 
					
						
							|  |  |  |  | { | 
					
						
							|  |  |  |  | public: | 
					
						
							|  |  |  |  |     CWaitorCursor(); | 
					
						
							|  |  |  |  |     ~CWaitorCursor(); | 
					
						
							|  |  |  |  | }; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | //全局变量
 | 
					
						
							|  |  |  |  | class AppData:public Singleton<AppData> | 
					
						
							|  |  |  |  | { | 
					
						
							|  |  |  |  | public: | 
					
						
							|  |  |  |  |     AppData(token); | 
					
						
							|  |  |  |  |     ~AppData(); | 
					
						
							|  |  |  |  |     AppData(const AppData &other) = delete; | 
					
						
							|  |  |  |  |     AppData& operator=(const AppData &other) = delete; | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-11-13 17:05:57 +08:00
										 |  |  |  |     bool readConfiguration(QString iniFile); | 
					
						
							| 
									
										
										
										
											2024-09-12 16:23:44 +08:00
										 |  |  |  | public: | 
					
						
							|  |  |  |  |     //数据表格的表头
 | 
					
						
							|  |  |  |  |     QStringList lstDataTableHeaderText; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     //定时刷新间隔
 | 
					
						
							|  |  |  |  |     int nTimeOut; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     //目标机器IP
 | 
					
						
							|  |  |  |  |     QString qsDestinationIp; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     //最后的错误信息
 | 
					
						
							|  |  |  |  |     QString qsLastErrorString; | 
					
						
							| 
									
										
										
										
											2024-11-13 17:05:57 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  |     //串口数量
 | 
					
						
							|  |  |  |  |     int SerialPortCount; | 
					
						
							|  |  |  |  |     //串口字符串前缀
 | 
					
						
							|  |  |  |  |     QString SerialPortPrefix; | 
					
						
							| 
									
										
										
										
											2024-09-12 16:23:44 +08:00
										 |  |  |  | }; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | //全局通用类
 | 
					
						
							|  |  |  |  | class AppCommon:public Singleton<AppCommon> | 
					
						
							|  |  |  |  | { | 
					
						
							|  |  |  |  | public: | 
					
						
							|  |  |  |  |     AppCommon(token); | 
					
						
							|  |  |  |  |     ~AppCommon(); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     AppCommon(const AppCommon&)=delete; | 
					
						
							|  |  |  |  |     AppCommon& operator =(const AppCommon&)= delete; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | public: | 
					
						
							|  |  |  |  |     void InitializeTableView(MyTableModel* model,QTableView* tableView); | 
					
						
							|  |  |  |  | }; | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-11-11 15:28:31 +08:00
										 |  |  |  | typedef std::function<void(const hv::SocketChannelPtr&, hv::Buffer*)> onMessageCallbackFunc; | 
					
						
							| 
									
										
										
										
											2024-11-08 16:11:31 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | class AppTcpClient:public Singleton<AppTcpClient> | 
					
						
							|  |  |  |  | { | 
					
						
							|  |  |  |  | public: | 
					
						
							|  |  |  |  |     AppTcpClient(token); | 
					
						
							|  |  |  |  |     ~AppTcpClient(); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     AppTcpClient(const AppTcpClient&)=delete; | 
					
						
							|  |  |  |  |     AppTcpClient& operator =(const AppTcpClient&)= delete; | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-11-11 15:28:31 +08:00
										 |  |  |  |     int Initialize(QString remote_host,int remote_port=DEVICE_SERVER_PORT); | 
					
						
							|  |  |  |  |     void resetOnMessageCallbackFunction(onMessageCallbackFunc& func); | 
					
						
							| 
									
										
										
										
											2024-11-08 16:11:31 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | public: | 
					
						
							|  |  |  |  |     hv::TcpClient* m_tcpclient; | 
					
						
							|  |  |  |  |     int m_connfd; | 
					
						
							|  |  |  |  | }; | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-09-12 16:23:44 +08:00
										 |  |  |  | #endif // GLOBALPARAMETERS_H
 |