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.
53 lines
2.1 KiB
C++
53 lines
2.1 KiB
C++
/**
|
|
* @file ComponentFactory.cpp
|
|
* @brief 组件工厂
|
|
* @author YanZhiHui (chanyuantiandao@126.com)
|
|
* @date 2024-04-19
|
|
*/
|
|
#include "ComponentFactory.h"
|
|
#include "FITK_Kernel/FITKAppFramework/FITKAppFramework.h"
|
|
#include "FITK_Kernel/FITKAppFramework/FITKGlobalData.h"
|
|
#include "FITK_Component/FITKCompMessageWidget/FITKConsoleComponent.h"
|
|
#include "FITK_Component/FITKRenderWindowVTK/FITKGraph3DWindowInterface.h"
|
|
#include "FITK_Component/FITKGeoCompOCC/FITKGeoCompOCCInterface.h"
|
|
#include "FITK_Component/FITKMeshGenOF/FITKMeshGenOFInterface.h"
|
|
#include "FITK_Interface/FITKInterfaceFlowOF/FITKFlowPhysicsHandlerFactory.h"
|
|
#include "FITK_Component/FITKFlowOFIOHDF5/FITKFlowOFIOHDF5Interface.h"
|
|
#include "FITK_Component/FITKOFDictWriter/FITKOFDictWriterIO.h"
|
|
#include "FITK_Component/FITKOFMeshIO/FITKOFMeshReader.h"
|
|
#include "OperatorsModel/OpersModelInterface.h"
|
|
#include "OperatorsGUI/OpersGUIInterface.h"
|
|
#include "PreWindowInitializer.h"
|
|
|
|
QList<AppFrame::FITKComponentInterface *> ComponentFactory::createComponents()
|
|
{
|
|
// 自定义组件列表
|
|
QList<AppFrame::FITKComponentInterface *> componentList;
|
|
// 消息窗口组件
|
|
componentList << new Comp::ConsoleComponent(FITKAPP->getGlobalData()->getMainWindow());
|
|
// 3D图形窗口组件
|
|
auto compVTKrender = new Comp::FITKGraph3DWindowInterface;
|
|
componentList << compVTKrender;
|
|
//occ 建模
|
|
componentList << new OCC::FITKGeoCompOCCInterface;
|
|
//OF网格划分
|
|
componentList << new OF::FITKMeshGenOFInterface;
|
|
// 模型数据控制器组件
|
|
componentList << new OperModel::OpersModelInterface;
|
|
// 界面控制器组件
|
|
componentList << new GUIOper::OperatorsGUIInterface;
|
|
// 字典文件写出组件
|
|
componentList << new IO::FITKOFDictWriterIO;
|
|
// OpenFOAM网格读取组件
|
|
componentList << new IO::FITKOFMeshReader;
|
|
// 物理场数据工厂组件
|
|
componentList << new Interface::FITKFlowPhysicsHandlerFactory;
|
|
// hdf5接口组件
|
|
componentList << new IO::FITKFlowOFIOHDF5Interface;
|
|
|
|
// VTK窗口初始化器
|
|
compVTKrender->addInitializer(1, new PreWindowInitializer);
|
|
|
|
return componentList;
|
|
}
|