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++

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

#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