#ifndef NMCALCULATIONDLLPEBISOLVERTASK_H #define NMCALCULATIONDLLPEBISOLVERTASK_H #include #include #include #include #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