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/FITK_Component/FITKGeoOCCIOHDF5/FITKOCCHDF5AdaptorOperGeome...

301 lines
11 KiB
C

/*****************************************************************//**
*
* @file FITKOCCHDF5AdaptorOperGeometryCurve.h
* @brief HDF5 Adaptor OperGeometryCurve
* @author fulipeng (flipengqd@yeah.net)
* @date 2024-09-11
*
*********************************************************************/
#ifndef __FITKOCCHDF5ADAPTOROPERGEOMETRYCURVE_H__
#define __FITKOCCHDF5ADAPTOROPERGEOMETRYCURVE_H__
#include "FITKGeoOCCIOHDF5API.h"
#include "FITKOCCHDF5AdaptorBasicGeometryCurve.h"
#include "FITK_Kernel/FITKCore/FITKCoreMacros.h"
#include "FITK_Kernel/FITKAdaptor/FITKIOAdaptorFactory.h"
#include "FITK_Interface/FITKInterfaceIO/FITKAbstractHDF5Writer.h"
#include "FITK_Interface/FITKInterfaceGeoIOHDF5/FITKAbstractHDF5Adaptor.h"
ForwardDeclarNS(Core, FITKAbstractDataObject);
ForwardDeclarNS(Interface, FITKAbsGeoCommand);
ForwardDeclarNS(Interface, FITKAbsGeoModelCurve);
ForwardDeclarNS(Interface, FITKAbsGeoModelOperLine);
ForwardDeclarNS(H5, H5File);
ForwardDeclarNS(H5, Group);
ForwardDeclarNS(H5, H5Object);
ForwardDeclarNS(H5, DataType);
namespace IO
{
/**
* @brief HDF5 Adaptor Oper Geometry Curve
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
class FITKGEOOCCIOHDF5API FITKOCCHDF5AdaptorOperGeometryCurve : public FITKOCCHDF5AdaptorBasicGeometryCurve
{
public:
/**
* @brief Construct a new FITKOCCHDF5AdaptorOperGeometryCurve object
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
explicit FITKOCCHDF5AdaptorOperGeometryCurve() = default;
virtual ~FITKOCCHDF5AdaptorOperGeometryCurve() = default;
/**
* @brief
* @return
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
QString getAdaptorClass() override;
/**
* @brief
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool adaptR() override;
/**
* @brief
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool adaptW() override;
protected:
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool readOperGeometryCurve(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool writeOperGeometryCurve(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool readOperGeometryTrimmedCurve(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool writeOperGeometryTrimmedCurve(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool readOperGeometryOffsetCurve(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool writeOperGeometryOffsetCurve(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool readOperGeometryCurveProjectionOnSurface(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool writeOperGeometryCurveProjectionOnSurface(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool readOperGeometrySurfaceIntersectionSurface(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool writeOperGeometrySurfaceIntersectionSurface(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool readOperGeometryBridgeCurve(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool writeOperGeometryBridgeCurve(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool readOperGeometrySurfaceEdge(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool writeOperGeometrySurfaceEdge(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool readOperGeometryOperLineBase(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool writeOperGeometryOperLineBase(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool readOperGeometryMergeOperLine(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool writeOperGeometryMergeOperLine(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool readOperGeometryMiddleOperLine(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool writeOperGeometryMiddleOperLine(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool readOperGeometryAngleOperLine(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief 线
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-11
*/
bool writeOperGeometryAngleOperLine(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
};
Register2FITKIOAdaptorFactory(HDF5, Interface::FITKAbsGeoModelCurve, FITKOCCHDF5AdaptorOperGeometryCurve, 1)
Register2FITKIOAdaptorFactory(HDF5, Interface::FITKAbsGeoModelOperLine, FITKOCCHDF5AdaptorOperGeometryCurve, 2)
}
#endif