/********************************************************************** * @file FITKFlowOFHDF5AdaptorRegionMesh.h * @brief hdf5区域网格读写接口 * @author liuzhonghua (liuzhonghuaszch@163.com) * @date 2024-09-10 *********************************************************************/ #ifndef __FITKFLOWOFHDF5ADAPTORREGIONMESH_R_H__ #define __FITKFLOWOFHDF5ADAPTORREGIONMESH_R_H__ #include "FITKFlowOFIOHDF5API.h" #include "FITKFlowOFHDF5AbstractAdaptor.h" #include "FITK_Kernel/FITKCore/FITKCoreMacros.h" #include "FITK_Kernel/FITKAdaptor/FITKIOAdaptorFactory.h" //前置声明 ForwardDeclarNS(Interface, FITKAbstractRegionMeshSize) namespace IO { /** * @brief HDF5 Geometry 读写适配器 * @author fulipeng (fulipengqd@yeah.net) * @date 2024-05-30 */ class FITKFLOWOFIOHDF5API FITKFlowOFHDF5AdaptorRegionMesh : public FITKFlowOFHDF5AbstractAdaptor { public: explicit FITKFlowOFHDF5AdaptorRegionMesh() = default; ~FITKFlowOFHDF5AdaptorRegionMesh() = default; /** * @brief 获取适配器数据类型名 * @return 适配器数据类型名 * @author fulipeng (fulipengqd@yeah.net) * @date 2024-05-30 */ QString getAdaptorClass() override; /** * @brief 适配器读取 * @return 状态 true成功, false失败 * @author fulipeng (fulipengqd@yeah.net) * @date 2024-05-30 */ bool adaptR() override; /** * @brief 适配器写出 * @return 状态 true成功, false失败 * @author fulipeng (fulipengqd@yeah.net) * @date 2024-05-30 */ bool adaptW() override; private: bool regionGeometryW(H5::Group& h5Group); bool regionGeometryR(H5::Group& h5Group); bool regionBoxW(H5::Group& h5Group); bool regionBoxR(H5::Group& h5Group); bool regionCylinderW(H5::Group& h5Group); bool regionCylinderR(H5::Group& h5Group); bool regionSphereW(H5::Group& h5Group); bool regionSphereR(H5::Group& h5Group); private: /** * @brief 几何数据对象 * @author liuzhonghua (liuzhonghuaszch@163.com) * @date 2024-09-09 */ Interface::FITKAbstractRegionMeshSize* _regionMeshData{}; }; Register2FITKIOAdaptorFactory(HDF5, Interface::FITKAbstractRegionMeshSize, FITKFlowOFHDF5AdaptorRegionMesh) } #endif // !1