OCCT3D OCCT 8.0.1
OCCT documentation

Search guides and API reference

Enter at least two characters.

    Open CASCADE Technology Reference Manual 8.0.1
    Expr_NamedExpression Class Reference

    Describe an expression used by its name (as constants or variables). A single reference is made to a NamedExpression in every Expression (i.e. a NamedExpression is shared). More...

    #include <Expr_NamedExpression.hxx>

    Inheritance diagram for Expr_NamedExpression:

    Public Member Functions

    const TCollection_AsciiStringGetName () const
    void SetName (const TCollection_AsciiString &namename)
    bool IsShareable () const override
     Tests if <me> can be shared by one or more expressions or must be copied. This method redefines to a True value the GeneralExpression method.
    bool IsIdentical (const occ::handle< Expr_GeneralExpression > &Other) const override
     Tests if <me> and <Other> define the same expression. This method does not include any simplification before testing.
    TCollection_AsciiString String () const override
     returns a string representing <me> in a readable way.
    Public Member Functions inherited from Expr_GeneralExpression
    virtual int NbSubExpressions () const =0
     Returns the number of sub-expressions contained in <me> ( >= 0).
    virtual const occ::handle< Expr_GeneralExpression > & SubExpression (const int I) const =0
     Returns the -th sub-expression of <me> raises OutOfRange if > NbSubExpressions(me).
    virtual occ::handle< Expr_GeneralExpressionSimplified () const =0
     Returns a GeneralExpression after replacement of NamedUnknowns by an associated expression and after values computation.
    virtual occ::handle< Expr_GeneralExpressionShallowSimplified () const =0
     Returns a GeneralExpression after a simplification of the arguments of <me>.
    virtual occ::handle< Expr_GeneralExpressionCopy () const =0
     Returns a copy of <me> having the same unknowns and functions.
    virtual bool ContainsUnknowns () const =0
     Tests if <me> contains NamedUnknowns.
    virtual bool Contains (const occ::handle< Expr_GeneralExpression > &exp) const =0
     Tests if <exp> is contained in <me>.
    virtual bool IsLinear () const =0
     Tests if <me> is linear on every NamedUnknown it contains.
    virtual occ::handle< Expr_GeneralExpressionDerivative (const occ::handle< Expr_NamedUnknown > &X) const =0
     Returns the derivative on <X> unknown of <me>.
    virtual occ::handle< Expr_GeneralExpressionNDerivative (const occ::handle< Expr_NamedUnknown > &X, const int N) const
     Returns the <N>-th derivative on <X> unknown of <me>. Raise OutOfRange if N <= 0.
    virtual void Replace (const occ::handle< Expr_NamedUnknown > &var, const occ::handle< Expr_GeneralExpression > &with)=0
     Replaces all occurrences of with copies of <with> in <me>. Copies of <with> are made with the Copy() method. Raises InvalidOperand if <with> contains <me>.
    virtual double Evaluate (const NCollection_Array1< occ::handle< Expr_NamedUnknown > > &vars, const NCollection_Array1< double > &vals) const =0
     Returns the value of <me> (as a Real) by replacement of <vars> by <vals>. Raises NotEvaluable if <me> contains NamedUnknown not in <vars> or NumericError if result cannot be computed.
    double EvaluateNumeric () const
     Returns the value of <me> (as a Real) by replacement of <vars> by <vals>. Raises NotEvaluable if <me> contains NamedUnknown not in <vars> or NumericError if result cannot be computed.
    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 ()=default
     Destructor must be virtual.
    virtual const opencascade::handle< Standard_Type > & DynamicType () const
     Returns a type descriptor about this object.
    bool IsInstance (const opencascade::handle< Standard_Type > &theType) const
     Returns a true value if this is an instance of Type.
    bool IsInstance (const char *const theTypeName) const
     Returns a true value if this is an instance of TypeName.
    bool 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.
    bool IsKind (const char *const 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.
    int GetRefCount () const noexcept
     Get the reference counter of this object.
    void IncrementRefCounter () noexcept
     Increments the reference counter of this object. Uses relaxed memory ordering since incrementing only requires atomicity, not synchronization with other memory operations.
    int DecrementRefCounter () noexcept
     Decrements the reference counter of this object; returns the decremented value. Uses release ordering for the decrement to ensure all writes to the object are visible before the count reaches zero. An acquire fence is added only when the count reaches zero, ensuring proper synchronization before deletion. This is more efficient than using acq_rel for every decrement.
    virtual void Delete () const
     Memory deallocator for transient classes.

    Additional Inherited Members

    typedef void base_type
     Returns a type descriptor about this object.
    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.

    Detailed Description

    Describe an expression used by its name (as constants or variables). A single reference is made to a NamedExpression in every Expression (i.e. a NamedExpression is shared).

    Member Function Documentation

    ◆ GetName()

    const TCollection_AsciiString & Expr_NamedExpression::GetName ( ) const

    ◆ IsIdentical()

    bool Expr_NamedExpression::IsIdentical ( const occ::handle< Expr_GeneralExpression > & Other) const
    overridevirtual

    Tests if <me> and <Other> define the same expression. This method does not include any simplification before testing.

    Implements Expr_GeneralExpression.

    ◆ IsShareable()

    bool Expr_NamedExpression::IsShareable ( ) const
    overridevirtual

    Tests if <me> can be shared by one or more expressions or must be copied. This method redefines to a True value the GeneralExpression method.

    Reimplemented from Expr_GeneralExpression.

    ◆ SetName()

    void Expr_NamedExpression::SetName ( const TCollection_AsciiString & name)

    ◆ String()

    TCollection_AsciiString Expr_NamedExpression::String ( ) const
    overridevirtual

    returns a string representing <me> in a readable way.

    Implements Expr_GeneralExpression.


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