Warning, file /include/opencascade/CPnts_MyRootFunction.hxx was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _CPnts_MyRootFunction_HeaderFile
0018 #define _CPnts_MyRootFunction_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022 #include <Standard_Handle.hxx>
0023
0024 #include <CPnts_MyGaussFunction.hxx>
0025 #include <Standard_Real.hxx>
0026 #include <math_FunctionWithDerivative.hxx>
0027 #include <CPnts_RealFunction.hxx>
0028
0029
0030
0031
0032 class CPnts_MyRootFunction : public math_FunctionWithDerivative
0033 {
0034 public:
0035 DEFINE_STANDARD_ALLOC
0036
0037 CPnts_MyRootFunction();
0038
0039
0040
0041 Standard_EXPORT void Init(const CPnts_RealFunction& F, void* const D, const int Order);
0042
0043
0044 Standard_EXPORT void Init(const double X0, const double L);
0045
0046
0047
0048 Standard_EXPORT void Init(const double X0, const double L, const double Tol);
0049
0050
0051 Standard_EXPORT bool Value(const double X, double& F) override;
0052
0053
0054 Standard_EXPORT bool Derivative(const double X, double& Df) override;
0055
0056 Standard_EXPORT bool Values(const double X, double& F, double& Df) override;
0057
0058 private:
0059 CPnts_MyGaussFunction myFunction;
0060 double myX0;
0061 double myL;
0062 int myOrder;
0063 double myTol;
0064 };
0065
0066 #include <CPnts_MyRootFunction.lxx>
0067
0068 #endif