File indexing completed on 2026-06-06 08:36:24
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #ifndef _IMeshTools_ModelAlgo_HeaderFile
0017 #define _IMeshTools_ModelAlgo_HeaderFile
0018
0019 #include <Standard_Transient.hxx>
0020 #include <Message_ProgressRange.hxx>
0021
0022 class IMeshData_Model;
0023 struct IMeshTools_Parameters;
0024
0025
0026 class IMeshTools_ModelAlgo : public Standard_Transient
0027 {
0028 public:
0029
0030 virtual ~IMeshTools_ModelAlgo() {}
0031
0032
0033 Standard_Boolean Perform(const Handle(IMeshData_Model)& theModel,
0034 const IMeshTools_Parameters& theParameters,
0035 const Message_ProgressRange& theRange)
0036 {
0037 try
0038 {
0039 OCC_CATCH_SIGNALS
0040
0041 return performInternal(theModel, theParameters, theRange);
0042 }
0043 catch (Standard_Failure const&)
0044 {
0045 return Standard_False;
0046 }
0047 }
0048
0049 DEFINE_STANDARD_RTTIEXT(IMeshTools_ModelAlgo, Standard_Transient)
0050
0051 protected:
0052
0053 IMeshTools_ModelAlgo() {}
0054
0055
0056 Standard_EXPORT virtual Standard_Boolean performInternal(
0057 const Handle(IMeshData_Model)& theModel,
0058 const IMeshTools_Parameters& theParameters,
0059 const Message_ProgressRange& theRange) = 0;
0060 };
0061
0062 #endif