#ifndef MAINWINDOW_H #define MAINWINDOW_H #include #include #include #include namespace Ui { class MainWindow; } class MainWindow : public QMainWindow { Q_OBJECT public: explicit MainWindow(QWidget *parent = 0); ~MainWindow(); private: //打开设备线程池 bool m_bThreadRunning; QThreadPool m_varThreadPool_StartDevice; QFuture m_futureThreadRun_StartDevice; protected: //线程池函数 typedef void (MainWindow::*ThreadRunFunPtr)(); static void ThreadEntry(void* pOwner, ThreadRunFunPtr pRunFun); void ThreadFunStartParse(); private slots: void on_pushButtonCal_clicked(); void on_pushButtonCal2_clicked(); void timerUpdate(); void on_pushButtonCal3_clicked(); void on_pushButtonUse_clicked(); void on_pushButtonOpen_clicked(); void on_pushButtonUpdate_clicked(); private: Ui::MainWindow *ui; unsigned int calculate_CRC32 (void *pStart, unsigned int uSize, unsigned int iCrc = 0xffffffff); int HexToDec(char *src); ulong m_lTemp; uint m_uCRCValue; uint m_iValueCrc; uint m_uiPara; bool m_bRun; bool m_bRun3; // ulong m_ulFileSize; QByteArray m_arrayFile; QString m_strFileName; char *m_pcDataBuff; bool m_bValue; ulong m_lFileSize; }; #endif // MAINWINDOW_H