DianLi/LandslideAssess/LandslideAssess.h
2023-03-13 16:16:25 +08:00

85 lines
1.6 KiB
C++
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#pragma once
#include <QtWidgets/QDialog>
#include "ui_LandslideAssess.h"
#include <QProcess>
#include <QThread>
#include <QFile>
#include <QIcon>
#include <QDebug>
#include <QMessageBox>
#include <QFileDialog>
#include <QStringList>
#include "SrsMainPluginInterFace.h"
class WorkObject :public QObject
{
Q_OBJECT
public:
void on_cancel();
signals:
void progress(int value);
public slots:
void runAssessWork(QString model, QString PRE, QString label, QString index, QString result);
void writeAssessTxt();
private:
QProcess* mProcess = nullptr;
QString assess_txt_path;
};
class LandslideAssess : public SrsMainInterface
{
Q_OBJECT
Q_INTERFACES(SrsMainInterface)
Q_PLUGIN_METADATA(IID MainInterface_iid)
public:
LandslideAssess();
virtual QString PannelName() override;
virtual QString CategoryName() override;
virtual QString EnglishName() override;
virtual QString ChineseName() override;
virtual QString Information() override;
virtual QString IconPath() override;
virtual QWidget* CenterWidget() override;
void startWorkThread();
//读json文件获取历史存储的路径
void ReadConfigHistoryPaths(QString strPath);
//保存本次打开的路径到json文件
void WriteConfigPaths(QString strPath);
signals:
void startPreAssessment(QString model, QString prefile, QString label, QString index, QString result);
public slots:
void readAndStart();
void pbCancel();
void choosePredictPath();
void chooseLabelPath();
void chooseAssessFile();
void chooseModelFile();
void chooseResultPath();
private:
Ui::LandslideAssessClass ui;
QDialog* myWidget = nullptr;
WorkObject* mWorker = nullptr;
QThread* mWorkThread = nullptr;
};