#ifndef MAINWINDOW_H #define MAINWINDOW_H #include #include #include #include #include #include "modulecomm.h" #include "gpsimu.pb.h" QT_BEGIN_NAMESPACE namespace Ui { class MainWindow; } QT_END_NAMESPACE class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(QWidget *parent = nullptr); ~MainWindow(); private slots: void on_actionNewCollection_triggered(); void onTimer(); void on_actionCompleteColllection_triggered(); private: void UpdateGPS(const char * strdata,const unsigned int nSize,const unsigned int index,const QDateTime * dt,const char * strmemname); void AddNewData(std::shared_ptr xgpsimu_prt,const double fheadingdiff = 0.0, const double fdis = 0.0); private: Ui::MainWindow *ui; bool mbProc = false; std::shared_ptr mgpsimu_ptr; std::shared_ptr mgpsimuold_ptr; bool mbUpdate = false; QMutex mMutex; QFile mFile; int mnIndex = 0; double mdistotal = 0; void * mpagpsmsg; }; #endif // MAINWINDOW_H