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...

356 lines
14 KiB
C

/*****************************************************************//**
*
* @file FITKOCCHDF5AdaptorOperGeometrySolid.h
* @brief HDF5 Adaptor OperGeometrySolid
* @author fulipeng (flipengqd@yeah.net)
* @date 2024-09-09
*
*********************************************************************/
#ifndef __FITKOCCHDF5ADAPTOROPERGEOMETRYSOLID_H__
#define __FITKOCCHDF5ADAPTOROPERGEOMETRYSOLID_H__
#include "FITKGeoOCCIOHDF5API.h"
#include "FITKOCCHDF5AdaptorBasicGeometrySolid.h"
#include "FITK_Kernel/FITKCore/FITKCoreMacros.h"
#include "FITK_Kernel/FITKAdaptor/FITKIOAdaptorFactory.h"
ForwardDeclarNS(Core, FITKAbstractDataObject);
ForwardDeclarNS(Interface, FITKAbsGeoModelOperImprintSolid);
ForwardDeclarNS(Interface, FITKAbsGeoModelChamferSolid);
ForwardDeclarNS(Interface, FITKAbsGeoModelFilletSolid);
ForwardDeclarNS(Interface, FITKAbsGeoModelDefeatureSolid);
ForwardDeclarNS(Interface, FITKAbsGeoModelRemoveChamferSolid);
ForwardDeclarNS(Interface, FITKAbsGeoModelRemoveFilletSolid);
ForwardDeclarNS(Interface, FITKAbsGeoModelFillHoleSolid);
ForwardDeclarNS(H5, H5File);
ForwardDeclarNS(H5, Group);
ForwardDeclarNS(H5, H5Object);
ForwardDeclarNS(H5, DataType);
namespace IO
{
/**
* @brief HDF5 Adaptor Oper Geometry Solid
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
class FITKGEOOCCIOHDF5API FITKOCCHDF5AdaptorOperGeometrySolid : public FITKOCCHDF5AdaptorBasicGeometrySolid
{
public:
/**
* @brief Construct a new FITKOCCHDF5AdaptorOperGeometrySolid object
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-09
*/
explicit FITKOCCHDF5AdaptorOperGeometrySolid() = default;
virtual ~FITKOCCHDF5AdaptorOperGeometrySolid() = default;
/**
* @brief
* @return
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
QString getAdaptorClass() override;
/**
* @brief
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool adaptR() override;
/**
* @brief
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool adaptW() override;
protected:
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool readOperGeometrySolid(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool writeOperGeometrySolid(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool readOperGeometrySolidChamfer(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool writeOperGeometrySolidChamfer(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool readOperGeometrySolidFillet(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool writeOperGeometrySolidFillet(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool readOperGeometrySolidRemoveChamfer(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool writeOperGeometrySolidRemoveChamfer(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool readOperGeometrySolidRemoveFillet(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool writeOperGeometrySolidRemoveFillet(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool readOperGeometrySolidDefeature(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool writeOperGeometrySolidDefeature(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool readOperGeometrySolidFillHole(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool writeOperGeometrySolidFillHole(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool readOperGeometrySolidBase(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool writeOperGeometrySolidBase(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool readOperGeometrySolidClosedSurface(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool writeOperGeometrySolidClosedSurface(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool readOperGeometrySolidExtrude(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool writeOperGeometrySolidExtrude(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool readOperGeometrySolidRevol(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool writeOperGeometrySolidRevol(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool readOperGeometrySolidSweep(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool writeOperGeometrySolidSweep(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool readOperGeometrySolidMultiSection(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
/**
* @brief
* @param comm
* @param h5Group
* @return true false
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-09-10
*/
bool writeOperGeometrySolidMultiSection(Interface::FITKAbsGeoCommand* comm, H5::Group& h5Group);
};
Register2FITKIOAdaptorFactory(HDF5, Interface::FITKAbsGeoModelBox, FITKOCCHDF5AdaptorOperGeometrySolid, 1)
Register2FITKIOAdaptorFactory(HDF5, Interface::FITKAbsGeoModelSphere, FITKOCCHDF5AdaptorOperGeometrySolid, 2)
Register2FITKIOAdaptorFactory(HDF5, Interface::FITKAbsGeoModelCylinder, FITKOCCHDF5AdaptorOperGeometrySolid, 3)
Register2FITKIOAdaptorFactory(HDF5, Interface::FITKAbsGeoModelChamferSolid, FITKOCCHDF5AdaptorOperGeometrySolid, 4)
Register2FITKIOAdaptorFactory(HDF5, Interface::FITKAbsGeoModelFilletSolid, FITKOCCHDF5AdaptorOperGeometrySolid, 5)
Register2FITKIOAdaptorFactory(HDF5, Interface::FITKAbsGeoModelDefeatureSolid, FITKOCCHDF5AdaptorOperGeometrySolid, 6)
Register2FITKIOAdaptorFactory(HDF5, Interface::FITKAbsGeoModelRemoveChamferSolid, FITKOCCHDF5AdaptorOperGeometrySolid, 7)
Register2FITKIOAdaptorFactory(HDF5, Interface::FITKAbsGeoModelRemoveFilletSolid, FITKOCCHDF5AdaptorOperGeometrySolid, 8)
Register2FITKIOAdaptorFactory(HDF5, Interface::FITKAbsGeoModelFillHoleSolid, FITKOCCHDF5AdaptorOperGeometrySolid, 9)
Register2FITKIOAdaptorFactory(HDF5, Interface::FITKAbsGeoModelClosedSurfaceSolid, FITKOCCHDF5AdaptorOperGeometrySolid, 10)
Register2FITKIOAdaptorFactory(HDF5, Interface::FITKAbsGeoModelExtrudeSolid, FITKOCCHDF5AdaptorOperGeometrySolid, 11)
Register2FITKIOAdaptorFactory(HDF5, Interface::FITKAbsGeoModelRevolSolid, FITKOCCHDF5AdaptorOperGeometrySolid, 12)
Register2FITKIOAdaptorFactory(HDF5, Interface::FITKAbsGeoModelSweepSolid, FITKOCCHDF5AdaptorOperGeometrySolid, 13)
Register2FITKIOAdaptorFactory(HDF5, Interface::FITKAbsGeoModelMultiSectionSolid, FITKOCCHDF5AdaptorOperGeometrySolid, 14)
}
#endif