Open CASCADE Technology 7.8.2.dev
Expr_NamedFunction Class Reference

#include <Expr_NamedFunction.hxx>

Inheritance diagram for Expr_NamedFunction:

Public Member Functions

 Expr_NamedFunction (const TCollection_AsciiString &name, const Handle< Expr_GeneralExpression > &exp, const Expr_Array1OfNamedUnknown &vars)
 Creates a function of given variables <vars> with name <name> defined by the expression <exp>.
 
void SetName (const TCollection_AsciiString &newname)
 Sets the name <newname> to <me>.
 
TCollection_AsciiString GetName () const
 Returns the name assigned to <me>
 
Standard_Integer NbOfVariables () const override
 Returns the number of variables of <me>.
 
Handle< Expr_NamedUnknownVariable (const Standard_Integer index) const override
 Returns the variable denoted by <index> in <me>. Raises OutOfRange if <index> is greater than NbOfVariables of <me>, or less than or equal to zero.
 
Standard_Real Evaluate (const Expr_Array1OfNamedUnknown &vars, const TColStd_Array1OfReal &values) const override
 Computes the value of <me> with the given variables. Raises DimensionMismatch if Length(vars) is different from Length(values).
 
Handle< Expr_GeneralFunctionCopy () const override
 Returns a copy of <me> with the same form.
 
Handle< Expr_GeneralFunctionDerivative (const Handle< Expr_NamedUnknown > &var) const override
 Returns Derivative of <me> for variable .
 
Handle< Expr_GeneralFunctionDerivative (const Handle< Expr_NamedUnknown > &var, const Standard_Integer deg) const override
 Returns Derivative of <me> for variable with degree <deg>.
 
Standard_Boolean IsIdentical (const Handle< Expr_GeneralFunction > &func) const override
 Tests if <me> and <func> are similar functions (same name and same used expression).
 
Standard_Boolean IsLinearOnVariable (const Standard_Integer index) const override
 Tests if <me> is linear on variable on range <index>
 
TCollection_AsciiString GetStringName () const override
 
Handle< Expr_GeneralExpressionExpression () const
 Returns equivalent expression of <me>.
 
void SetExpression (const Handle< Expr_GeneralExpression > &exp)
 Modifies expression of <me>. Warning: Beware of derivatives. See FunctionDerivative.
 
- Public Member Functions inherited from Expr_GeneralFunction
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor.
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing.
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter.
 
virtual ~Standard_Transient ()
 Destructor must be virtual.
 
virtual const opencascade::handle< Standard_Type > & DynamicType () const
 Returns a type descriptor about this object.
 
Standard_Boolean IsInstance (const opencascade::handle< Standard_Type > &theType) const
 Returns a true value if this is an instance of Type.
 
Standard_Boolean IsInstance (const Standard_CString theTypeName) const
 Returns a true value if this is an instance of TypeName.
 
Standard_Boolean IsKind (const opencascade::handle< Standard_Type > &theType) const
 Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
 
Standard_Boolean IsKind (const Standard_CString theTypeName) const
 Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
 
Standard_TransientThis () const
 Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero.
 
Standard_Integer GetRefCount () const noexcept
 Get the reference counter of this object.
 
void IncrementRefCounter () noexcept
 Increments the reference counter of this object.
 
Standard_Integer DecrementRefCounter () noexcept
 Decrements the reference counter of this object; returns the decremented value.
 
virtual void Delete () const
 Memory deallocator for transient classes.
 

Additional Inherited Members

- Public Types inherited from Standard_Transient
typedef void base_type
 Returns a type descriptor about this object.
 
- Static Public Member Functions inherited from Standard_Transient
static constexpr const char * get_type_name ()
 Returns a type descriptor about this object.
 
static const opencascade::handle< Standard_Type > & get_type_descriptor ()
 Returns type descriptor of Standard_Transient class.
 

Constructor & Destructor Documentation

◆ Expr_NamedFunction()

Expr_NamedFunction::Expr_NamedFunction ( const TCollection_AsciiString & name,
const Handle< Expr_GeneralExpression > & exp,
const Expr_Array1OfNamedUnknown & vars )

Creates a function of given variables <vars> with name <name> defined by the expression <exp>.

Member Function Documentation

◆ Copy()

Handle< Expr_GeneralFunction > Expr_NamedFunction::Copy ( ) const
overridevirtual

Returns a copy of <me> with the same form.

Implements Expr_GeneralFunction.

◆ Derivative() [1/2]

Handle< Expr_GeneralFunction > Expr_NamedFunction::Derivative ( const Handle< Expr_NamedUnknown > & var) const
overridevirtual

Returns Derivative of <me> for variable .

Implements Expr_GeneralFunction.

◆ Derivative() [2/2]

Handle< Expr_GeneralFunction > Expr_NamedFunction::Derivative ( const Handle< Expr_NamedUnknown > & var,
const Standard_Integer deg ) const
overridevirtual

Returns Derivative of <me> for variable with degree <deg>.

Implements Expr_GeneralFunction.

◆ Evaluate()

Standard_Real Expr_NamedFunction::Evaluate ( const Expr_Array1OfNamedUnknown & vars,
const TColStd_Array1OfReal & values ) const
overridevirtual

Computes the value of <me> with the given variables. Raises DimensionMismatch if Length(vars) is different from Length(values).

Implements Expr_GeneralFunction.

◆ Expression()

Handle< Expr_GeneralExpression > Expr_NamedFunction::Expression ( ) const

Returns equivalent expression of <me>.

◆ GetName()

TCollection_AsciiString Expr_NamedFunction::GetName ( ) const

Returns the name assigned to <me>

◆ GetStringName()

TCollection_AsciiString Expr_NamedFunction::GetStringName ( ) const
overridevirtual

Implements Expr_GeneralFunction.

◆ IsIdentical()

Standard_Boolean Expr_NamedFunction::IsIdentical ( const Handle< Expr_GeneralFunction > & func) const
overridevirtual

Tests if <me> and <func> are similar functions (same name and same used expression).

Implements Expr_GeneralFunction.

◆ IsLinearOnVariable()

Standard_Boolean Expr_NamedFunction::IsLinearOnVariable ( const Standard_Integer index) const
overridevirtual

Tests if <me> is linear on variable on range <index>

Implements Expr_GeneralFunction.

◆ NbOfVariables()

Standard_Integer Expr_NamedFunction::NbOfVariables ( ) const
overridevirtual

Returns the number of variables of <me>.

Implements Expr_GeneralFunction.

◆ SetExpression()

void Expr_NamedFunction::SetExpression ( const Handle< Expr_GeneralExpression > & exp)

Modifies expression of <me>. Warning: Beware of derivatives. See FunctionDerivative.

◆ SetName()

void Expr_NamedFunction::SetName ( const TCollection_AsciiString & newname)

Sets the name <newname> to <me>.

◆ Variable()

Handle< Expr_NamedUnknown > Expr_NamedFunction::Variable ( const Standard_Integer index) const
overridevirtual

Returns the variable denoted by <index> in <me>. Raises OutOfRange if <index> is greater than NbOfVariables of <me>, or less than or equal to zero.

Implements Expr_GeneralFunction.


The documentation for this class was generated from the following file: