CLA3P v0.3.1
Compact Linear Algebra Parallel Portable Package
Loading...
Searching...
No Matches
cla3p::VirtualExpression< T_Result, T_Virtual > Class Template Referenceabstract

The virtual expression base class. More...

Inheritance diagram for cla3p::VirtualExpression< T_Result, T_Virtual >:

Public Member Functions

virtual T_Result evaluate () const
 Evaluates the expression.
virtual void evaluateOnNew (T_Result &dest) const =0
 Evaluates the expression on a return object.
virtual void evaluateOnExisting (T_Result &dest) const =0
 Evaluates the expression on a return object.
virtual void accumulateOnExisting (T_Result &dest, T_Scalar coeff) const =0
 Adds the expression on a return object.

Detailed Description

template<typename T_Result, typename T_Virtual>
class cla3p::VirtualExpression< T_Result, T_Virtual >

The virtual expression base class.

Member Function Documentation

◆ evaluate()

template<typename T_Result, typename T_Virtual>
virtual T_Result cla3p::VirtualExpression< T_Result, T_Virtual >::evaluate ( ) const
inlinevirtual

Evaluates the expression.

Evaluates the expression and stores the result in a new object.

◆ evaluateOnNew()

template<typename T_Result, typename T_Virtual>
virtual void cla3p::VirtualExpression< T_Result, T_Virtual >::evaluateOnNew ( T_Result & dest) const
pure virtual

◆ evaluateOnExisting()

template<typename T_Result, typename T_Virtual>
virtual void cla3p::VirtualExpression< T_Result, T_Virtual >::evaluateOnExisting ( T_Result & dest) const
pure virtual

◆ accumulateOnExisting()

template<typename T_Result, typename T_Virtual>
virtual void cla3p::VirtualExpression< T_Result, T_Virtual >::accumulateOnExisting ( T_Result & dest,
T_Scalar coeff ) const
pure virtual