|
- #pragma once
-
- #include <QComboBox>
- #include <QDateTime>
- #include <QDir>
- #include <QFile>
- #include <QFileDialog>
- #include <QHostAddress>
- #include <QMutex>
- #include <QMutexLocker>
- #include <QPushButton>
- #include <QRegExp>
- #include <QStandardItemModel>
- #include <QWidget>
- #include <QtXml>
- #include "ConfigInfo.h"
- #include "Singleton.h"
- #include "tinyxml2.h"
- #include "ui_FrameConfig.h"
-
- #include "AnalogProcess.h"
- #include "DigitalProcess.h"
- #include "IProcess.h"
- #include "NetDataRecv.h"
- #include "ValidProcess.h"
- #include "VideoProcess.h"
-
- #include "AnalogAfterProc.h"
- #include "DigitalAfterProc.h"
- #include "IAfterProc.h"
- #include "ValidAfterProc.h"
- #include "VideoAfterProc.h"
-
- class FrameConfig : public QWidget
- {
- Q_OBJECT
- public:
- FrameConfig(QWidget* parent = nullptr);
- ~FrameConfig();
-
- private:
- Ui::FrameConfigClass ui;
- Singleton* m_pSingleton;
- QStringList m_configFilesList; // 配置文件
- QString m_strExePath;
- QString m_strDataPath;
- std::map<QString, ConfigInfo*> m_mapStrConfigInfo;
- QString m_strModelType;
- QMutex m_mutex;
- QStandardItemModel* m_pStatusInfoModel;
- int m_iNetworkType;
- Network m_network;
- QString strFileDir;
- std::map<unsigned int, VideoAfterProc*> m_mapUIntAfterProc;
- std::map<unsigned int, IProcess*> m_mapUIntProcess;
- ValidProcess* m_pValidProcess;
- NetDataRecv* m_pNetDataRecv;
- unsigned int m_uiDataProcFinished;
- unsigned int m_uiDataProcNum;
-
- bool m_bOfflineParse; // 是否正在进行离线解析
- bool m_bRealParse; // 是否正在进行实时解析
- unsigned int m_uiParseStatus; // 0:无任务解析,1:离线解析,2:在线解析
- private:
- void initModelType();
- void initNetworkType();
- void initStatusInfo();
- void startAfterProc(QByteArray byteArray);
- void stopAfterProc();
- void startProcess();
- void stopProcess();
- void createDataPath(unsigned int status);
- private slots:
- void loadConfigFiles();
- void selectModelType();
- void selectNetworkType();
- void startOfflineParse();
- void startRealParse();
- bool readConfigFile(QString strdir, QString strfile, QString strname);
- void channelDeal(Frame* frame, Param* param, QString channel);
- void formulaDeal(Param* param);
- // void dataChannelDeal(Frame* frame,Param* param, QString strTemp);
- void validDataExtract(QByteArray byteArray);
- void dataProcFinished();
- public slots:
- void displayStatusInfo(bool isSucess, QString statusInfo);
- signals:
- void switchModelType(QString modeltype);
- void parseStatus(unsigned status);
- };
|