You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nmWTAI-Platform/Include/nmNum/nmCalculation/nmCalculationDllPebiSolverT...

46 lines
1.3 KiB
C

#ifndef NMCALCULATIONDLLPEBISOLVERTASK_H
#define NMCALCULATIONDLLPEBISOLVERTASK_H
#include <QThread>
#include <iostream>
#include <vector>
#include <Windows.h>
#include "nmCalculationDefine.h"
#include "nmCalculation_global.h"
#include "pch.h"
// 主窗口现在直接创建DLL求解线程任务因此类需要导出供nmSubWnd模块跨DLL使用。
class NMCALCULATION_EXPORT nmCalculationDllPebiSolverTask : public QThread {
Q_OBJECT
public:
nmCalculationDllPebiSolverTask(QString sPostprocessingDir,
QObject *parent = nullptr);
~nmCalculationDllPebiSolverTask();
void run();
private:
bool execute();
// 执行PEBI求解流程。
bool execPebiMode();
// 将PEBI求解结果保存回数据对象。
bool savePebiModeResult(HX_NWTM_MODEL_OUTPUT& p1);
void logHX_NWTM_MODEL_INPUT_Simplified(const HX_NWTM_MODEL_INPUT& p0);
bool saveHX_NWTM_MODEL_INPUT_ToTxt(const HX_NWTM_MODEL_INPUT& p0, const QString& filePath);
private:
QString m_sPostprocessingDir;
private slots:
//void slotTaskUpdateProgress();
signals:
void sig_calculateDone(bool isSuccessed);
//void sigTaskProgressUpdated(int progress);
//void sigResSolverProgressUpdated(int progress);
};
#endif // NMCALCULATIONDLLPEBISOLVERTASK_H