![]() |
CLA3P v0.3.1
Compact Linear Algebra Parallel Portable Package
|
The virtual expression base class. More...

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. | |
The virtual expression base class.
|
inlinevirtual |
Evaluates the expression.
Evaluates the expression and stores the result in a new object.
|
pure virtual |
Evaluates the expression on a return object.
Clears existing data in dest, reallocates and evaluates the expression.
Implemented in cla3p::VirtualConjugate< T_Result >, cla3p::VirtualMinus< T_Result, T_Left, T_Right >, cla3p::VirtualObject< T_Result >, cla3p::VirtualOuter< T_Result, T_Virtual >, cla3p::VirtualPlus< T_Result, T_Left, T_Right >, cla3p::VirtualProduct< T_Result, T_Left, T_Right >, cla3p::VirtualScale< T_Result, T_Virtual >, and cla3p::VirtualTranspose< T_Result >.
|
pure virtual |
Evaluates the expression on a return object.
Evaluates the expression on the pre-allocated & compatible dest.
Implemented in cla3p::VirtualConjugate< T_Result >, cla3p::VirtualMinus< T_Result, T_Left, T_Right >, cla3p::VirtualObject< T_Result >, cla3p::VirtualOuter< T_Result, T_Virtual >, cla3p::VirtualPlus< T_Result, T_Left, T_Right >, cla3p::VirtualProduct< T_Result, T_Left, T_Right >, cla3p::VirtualScale< T_Result, T_Virtual >, and cla3p::VirtualTranspose< T_Result >.
|
pure virtual |
Adds the expression on a return object.
Adds the scaled expression result to the pre-allocated & compatible dest.
Implemented in cla3p::VirtualConjugate< T_Result >, cla3p::VirtualMinus< T_Result, T_Left, T_Right >, cla3p::VirtualObject< T_Result >, cla3p::VirtualOuter< T_Result, T_Virtual >, cla3p::VirtualPlus< T_Result, T_Left, T_Right >, cla3p::VirtualProduct< T_Result, T_Left, T_Right >, cla3p::VirtualScale< T_Result, T_Virtual >, and cla3p::VirtualTranspose< T_Result >.