#ifndef GDDCDLG_H #define GDDCDLG_H #include #include #include #include #include #include #include #include #include #include #include "cffmpeg_decode.h" #include "Src/GDDC/gddcSet.h" #include #include #include #define cmdLength 44 namespace Ui { class GDDCdlg; } class GDDCdlg : public QWidget { Q_OBJECT public: explicit GDDCdlg(QWidget *parent = nullptr); ~GDDCdlg(); private: Ui::GDDCdlg *ui; QTimer *GDDCControlTimer; protected: void resizeEvent(QResizeEvent *event); public: void initWindow(); //初始化窗口 void initParam(); //初始化参数 void initSignalSlot(); //初始化信号与槽 void resizeUI(); //重新设置布局 public: QByteArray m_DCcmdBuffer;//存储吊舱控制指令 std::byte TJDCCmdBuffer[10]; void UpdateDataTJDC(); void clearTJDCCmdBuffer(); int sendTimes;//计划发送次数 void sendCurDate(std::byte *,int);//发送当前数据:内容,发送次数 //socket对象 QUdpSocket *udpSocket; // QString RemoteIP; //目标IP // QHostAddress RemoteAddr; //目标地址 // quint16 RemotePort; //目标port QString localIP; //本地IP QHostAddress localAddr; //本地地址 quint16 localPort; //本地port GDDCSet *m_DlgGDDCSet; //光电吊舱设置对话框 //bool eventFilter(QObject *,QEvent *); //事件过滤器 void mousePressEvent(QMouseEvent *event); //事件过滤器 void mouseMoveEvent(QMouseEvent *event); //事件过滤器 QStandardItemModel *m_tableModel; void startConnectURL1(); void stopConnectURL1(); void startConnectURL2(); void stopConnectURL2(); void startConnectSerialCtrl(); void stopConnectSerialCtrl(); void startConnectUDPCtrl(); void stopConnectUDPCtrl(); void startConnectTCPCtrl(); void stopConnectTCPCtrl(); /*数据校验 * 数据 * 数据长度 * 校验方式 1亦或,2和校验 */ bool checkdata(QByteArray,int,int); public: bool pointSelectionTracking = false; //选点跟踪 bool param_pushButton_3_9; int paramDigitalZoom;//电子放大参数 bool paramIsFrame; //是否是框架/陀螺校准 bool detectionAreaSetting;//检测区域设置 bool Is_openVideo = false;//视频是否已打开,默认未打开 std::vector connectFlag; // 0,视频流1;1,视频流2;2,串口通信,3网口通信 bool isCmdAreaShow = true;//控制区域是否显示 public slots: void GDDCControlTimeOut(); void startConnect(int); //开始连接 void stopConnect(int); //停止连接 void UDPMessageReceive(); //udp数据接收 public: typedef union { float float_value; UINT8 uint8[4]; }packet_uint32_to_float; float m_uint32_to_float(UINT8 value4, UINT8 value3, UINT8 value2, UINT8 value1) { packet_uint32_to_float packet; UINT8 buf[4]; memset(buf,0x00,sizeof(buf)); buf[0] = (UINT8)((value1) & 0xFF); buf[1] = (UINT8)((value2) & 0xFF); buf[2] = (UINT8)((value3) & 0xFF); buf[3] = (UINT8)((value4) & 0xFF); UINT32 uint32 = ((buf[0]<<24) & 0XFFFFFFFF) + ((buf[1]<<16) & 0XFFFFFF) + ((buf[2]<<8) & 0XFFFF) + buf[3]; for(UINT8 i = 0; i < 4; i++) { packet.uint8[i] = (UINT8)(uint32>>(i*8)); } //print("modbus_uint32_to_float uint32=%d, value1=%d; value2=%d; float_value = %f;",uint32,value1,value2,packet.float_value); return packet.float_value; } private slots: /*系统控制*/ void on_pushButton_11_pressed(); void on_pushButton_11_released(); void on_pushButton_1_1_pressed(); void on_pushButton_1_1_released(); void on_pushButton_1_2_pressed(); void on_pushButton_1_2_released(); void on_pushButton_1_3_pressed(); void on_pushButton_1_3_released(); void on_pushButton_1_4_pressed(); void on_pushButton_1_4_released(); /*载荷公用*/ void on_pushButton_2_1_pressed(); void on_pushButton_2_1_released(); void on_pushButton_2_2_pressed(); void on_pushButton_2_2_released(); void on_pushButton_2_3_pressed(); void on_pushButton_2_3_released(); void on_pushButton_2_4_pressed(); void on_pushButton_2_4_released(); void on_pushButton_2_5_pressed(); void on_pushButton_2_5_released(); void on_pushButton_2_6_pressed(); void on_pushButton_2_6_released(); void on_pushButton_2_7_pressed(); void on_pushButton_2_7_released(); void on_pushButton_2_8_pressed(); void on_pushButton_2_8_released(); void on_pushButton_2_9_pressed(); void on_pushButton_2_9_released(); void on_pushButton_2_10_pressed(); void on_pushButton_2_10_released(); void on_pushButton_2_11_pressed(); void on_pushButton_2_11_released(); void on_pushButton_2_12_pressed(); void on_pushButton_2_12_released(); /*可见光*/ void on_pushButton_3_1_pressed(); void on_pushButton_3_1_released(); void on_pushButton_3_2_pressed(); void on_pushButton_3_2_released(); void on_pushButton_3_3_pressed(); void on_pushButton_3_3_released(); void on_pushButton_3_4_pressed(); void on_pushButton_3_4_released(); void on_pushButton_3_5_pressed(); void on_pushButton_3_5_released(); void on_pushButton_3_6_pressed(); void on_pushButton_3_6_released(); void on_pushButton_3_7_pressed(); void on_pushButton_3_7_released(); void on_pushButton_3_8_pressed(); void on_pushButton_3_8_released(); void on_pushButton_3_9_pressed(); void on_pushButton_3_9_released(); void on_pushButton_3_10_pressed(); void on_pushButton_3_10_released(); void on_pushButton_3_11_pressed(); void on_pushButton_3_11_released(); void on_pushButton_3_12_pressed(); void on_pushButton_3_12_released(); void on_pushButton_3_13_pressed(); void on_pushButton_3_13_released(); void on_pushButton_3_14_pressed(); void on_pushButton_3_14_released(); void on_pushButton_3_15_pressed(); void on_pushButton_3_15_released(); void on_pushButton_3_16_pressed(); void on_pushButton_3_16_released(); // void on_pushButton_3_17_pressed(); // void on_pushButton_3_17_released(); void on_pushButton_3_18_pressed(); void on_pushButton_3_18_released(); void on_pushButton_3_19_pressed(); void on_pushButton_3_19_released(); void on_pushButton_3_20_pressed(); void on_pushButton_3_20_released(); // void on_pushButton_3_21_pressed(); // void on_pushButton_3_21_released(); void on_pushButton_3_22_pressed(); void on_pushButton_3_22_released(); void on_pushButton_3_23_pressed(); void on_pushButton_3_23_released(); void on_pushButton_3_24_pressed(); void on_pushButton_3_24_released(); void on_pushButton_3_25_pressed(); void on_pushButton_3_25_released(); /*红外*/ void on_pushButton_4_1_pressed(); void on_pushButton_4_1_released(); void on_pushButton_4_2_pressed(); void on_pushButton_4_2_released(); void on_pushButton_4_3_pressed(); void on_pushButton_4_3_released(); void on_pushButton_4_4_pressed(); void on_pushButton_4_4_released(); void on_pushButton_4_5_pressed(); void on_pushButton_4_5_released(); void on_pushButton_4_6_pressed(); void on_pushButton_4_6_released(); void on_pushButton_4_7_pressed(); void on_pushButton_4_7_released(); void on_pushButton_4_8_pressed(); void on_pushButton_4_8_released(); void on_pushButton_4_9_pressed(); void on_pushButton_4_9_released(); void on_pushButton_4_10_pressed(); void on_pushButton_4_10_released(); void on_pushButton_4_11_pressed(); void on_pushButton_4_11_released(); void on_pushButton_4_12_pressed(); void on_pushButton_4_12_released(); void on_pushButton_4_13_pressed(); void on_pushButton_4_13_released(); void on_pushButton_4_14_pressed(); void on_pushButton_4_14_released(); void on_pushButton_4_15_pressed(); void on_pushButton_4_15_released(); void on_pushButton_4_16_pressed(); void on_pushButton_4_16_released(); void on_pushButton_4_17_pressed(); void on_pushButton_4_17_released(); void on_pushButton_4_18_pressed(); void on_pushButton_4_18_released(); /*云台控制*/ void on_pushButton_5_1_pressed(); void on_pushButton_5_1_released(); void on_pushButton_5_2_pressed(); void on_pushButton_5_2_released(); void on_pushButton_5_3_pressed(); void on_pushButton_5_3_released(); void on_pushButton_5_4_pressed(); void on_pushButton_5_4_released(); void on_pushButton_5_5_pressed(); void on_pushButton_5_5_released(); void on_pushButton_5_6_pressed(); void on_pushButton_5_6_released(); void on_pushButton_5_7_pressed(); void on_pushButton_5_7_released(); void on_pushButton_5_8_pressed(); void on_pushButton_5_8_released(); void on_pushButton_5_9_pressed(); void on_pushButton_5_9_released(); // void on_pushButton_5_10_pressed(); // void on_pushButton_5_10_released(); void on_pushButton_5_11_pressed(); void on_pushButton_5_11_released(); void on_pushButton_5_12_pressed(); void on_pushButton_5_12_released(); void on_pushButton_5_13_pressed(); void on_pushButton_5_13_released(); void on_pushButton_5_14_pressed(); void on_pushButton_5_14_released(); void on_pushButton_5_15_pressed(); void on_pushButton_5_15_released(); void on_radioButton_5_1_clicked(); void on_radioButton_5_2_clicked(); /*AI检测*/ void on_pushButton_6_1_pressed(); void on_pushButton_6_1_released(); void on_pushButton_6_2_pressed(); void on_pushButton_6_2_released(); void on_pushButton_6_3_pressed(); void on_pushButton_6_3_released(); void on_pushButton_6_4_pressed(); void on_pushButton_6_4_released(); void on_pushButton_6_5_pressed(); void on_pushButton_6_5_released(); void on_pushButton_6_6_pressed(); void on_pushButton_6_6_released(); void on_pushButton_6_7_pressed(); void on_pushButton_6_7_released(); void on_pushButton_6_8_clicked(); void on_pushButtonSet_clicked(); void on_pushButShowCmdArea_clicked(); }; #endif // GDDCDLG_H