File indexing completed on 2026-09-17 09:20:15
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _Expr_UnaryMinus_HeaderFile
0018 #define _Expr_UnaryMinus_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_Type.hxx>
0022
0023 #include <Expr_UnaryExpression.hxx>
0024 #include <Standard_Integer.hxx>
0025 #include <NCollection_Array1.hxx>
0026 class Expr_GeneralExpression;
0027 class Expr_NamedUnknown;
0028 class TCollection_AsciiString;
0029
0030 class Expr_UnaryMinus : public Expr_UnaryExpression
0031 {
0032
0033 public:
0034
0035 Standard_EXPORT Expr_UnaryMinus(const occ::handle<Expr_GeneralExpression>& exp);
0036
0037
0038
0039 Standard_EXPORT occ::handle<Expr_GeneralExpression> ShallowSimplified() const override;
0040
0041
0042 Standard_EXPORT occ::handle<Expr_GeneralExpression> Copy() const override;
0043
0044
0045
0046
0047 Standard_EXPORT bool IsIdentical(const occ::handle<Expr_GeneralExpression>& Other) const override;
0048
0049 Standard_EXPORT bool IsLinear() const override;
0050
0051
0052 Standard_EXPORT occ::handle<Expr_GeneralExpression> Derivative(
0053 const occ::handle<Expr_NamedUnknown>& X) const override;
0054
0055
0056
0057 Standard_EXPORT occ::handle<Expr_GeneralExpression> NDerivative(
0058 const occ::handle<Expr_NamedUnknown>& X,
0059 const int N) const override;
0060
0061
0062
0063
0064
0065 Standard_EXPORT double Evaluate(const NCollection_Array1<occ::handle<Expr_NamedUnknown>>& vars,
0066 const NCollection_Array1<double>& vals) const override;
0067
0068
0069 Standard_EXPORT TCollection_AsciiString String() const override;
0070
0071 DEFINE_STANDARD_RTTIEXT(Expr_UnaryMinus, Expr_UnaryExpression)
0072 };
0073
0074 #endif