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.
AppFlow/CFDStruct/CFDStructDataManager/CFDStructDataSolverComputin...

89 lines
3.8 KiB
C++

#include "CFDStructDataSolverTimeModeManager.h"
#include "CUIProperty/CUIConfig.h"
#include "CFDStructMain/CFDStructDefine.h"
#include "CFDStructSigsCenter.h"
#include "CUIProperty/CUISigsCenter.h"
#include <QVariant>
#include "CFDStructDataSolverComputingControlManager.h"
CFDStructDataSolverComputingControlManager::CFDStructDataSolverComputingControlManager(QObject *parent) : CFDStructDataManagerBase(parent)
{
m_uiConfig = nullptr;
connect(m_cuiSigsCenter, &CUISigsCenter::sig_cuiPropertyChanged, this, [=](int semaphore)
{ emit CFDStructSigsCenter::getInstance() -> sig_solverTimeModeDataChanged(); });
}
CFDStructDataSolverComputingControlManager::~CFDStructDataSolverComputingControlManager()
{
// CFDStructDataManagerBase::~CFDStructDataManagerBase();
}
CUIConfig *CFDStructDataSolverComputingControlManager::getParamUIConfig()
{
if (m_uiConfig != nullptr)
{
delete m_uiConfig;
m_uiConfig = nullptr;
}
// m_uiConfig->printConfig();
m_uiConfig = this->genUIConfig();
return m_uiConfig;
}
CUIConfig *CFDStructDataSolverComputingControlManager::genUIConfig()
{
return new CUIConfig(
{
{"type", "Widget"},
},
{
new CUIConfig({
{"type", "GroupBox"}, // 自动保存
{"name", tr("Auto Save")},
},
{
new CUIConfig({
{"type", "LineEdit"}, // 数据保存频率
{"name", tr("Data retention frequency")},
{"value_type", CUI_DATA_TYPE::CUI_DATA_TYPE_INT},
{"value_origin", QVA_GLOBAL(&m_DataSaveFrequency)},
}),
// TODO数据文件保存
}),
new CUIConfig({
{"type", "GroupBox"}, // 并行控制
{"name", tr("Parallel control")},
},
{
new CUIConfig({
{"type", "CheckBox"}, // 并行
{"name", tr("parallel")},
}),
new CUIConfig({
{"type", "ComboBox"}, // MPI库
{"name", tr("MPI library")},
},
{
new CUIConfig({
{"type", "Item"},
{"name", tr("Microsoft MPI")},
}),
}),
new CUIConfig({
{"type", "LineEdit"}, // 数值计算核数
{"name", tr("Numerical Computation Cores")},
{"value_type", CUI_DATA_TYPE::CUI_DATA_TYPE_INT},
{"value_origin", QVA_GLOBAL(&m_NumericalComputationCores)},
}),
new CUIConfig({
{"type", "LineEdit"}, // 网格组装核数
{"name", tr("Mesh Assembly Cores")},
{"value_type", CUI_DATA_TYPE::CUI_DATA_TYPE_INT},
{"value_origin", QVA_GLOBAL(&m_MeshAssemblyCores)},
}),
}),
});
return nullptr;
}