![]() |
Chemical Data Processing Library C++ API - Version 1.4.0
|
Expression-template node interpreting a binary combination of two vector expressions as a matrix (e.g. outer product), via the per-cell functor F invoked with both expressions and the cell coordinates. More...
#include <MatrixExpression.hpp>
Inheritance diagram for CDPL::Math::VectorMatrixBinary< E1, E2, F >:Public Types | |
| typedef F::ResultType | ValueType |
| The element value type of the expression (the functor's result type). More... | |
| typedef const ValueType | ConstReference |
| Constant reference type to an element value. More... | |
| typedef const ValueType | Reference |
Mutable reference type (degrades to const for expression-template results). More... | |
| typedef const SelfType | ConstClosureType |
| Constant closure type used when this expression appears inside another expression. More... | |
| typedef SelfType | ClosureType |
| Closure type used when this expression appears inside another expression. More... | |
| typedef CommonType< typename E1::SizeType, typename E2::SizeType >::Type | SizeType |
| The common size type of the two wrapped vector expressions. More... | |
| typedef CommonType< typename E1::DifferenceType, typename E2::DifferenceType >::Type | DifferenceType |
| The common signed difference type of the two wrapped vector expressions. More... | |
Public Types inherited from CDPL::Math::MatrixExpression< VectorMatrixBinary< E1, E2, F > > | |
| typedef VectorMatrixBinary< E1, E2, F > | ExpressionType |
| The derived matrix expression type. More... | |
Public Types inherited from CDPL::Math::Expression< E > | |
| typedef E | ExpressionType |
| The derived expression type (made available to expression-template machinery). More... | |
Public Member Functions | |
| VectorMatrixBinary (const Expression1Type &e1, const Expression2Type &e2) | |
| Constructs the expression-template node wrapping e1 and e2. More... | |
| SizeType | getSize1 () const |
| Returns the first wrapped vector expression's size (number of rows of the resulting matrix view). More... | |
| SizeType | getSize2 () const |
| Returns the second wrapped vector expression's size (number of columns of the resulting matrix view). More... | |
| ConstReference | operator() (SizeType i, SizeType j) const |
| Applies the binary functor to e1(i) and e2(j) to produce the matrix element at (i, j). More... | |
Public Member Functions inherited from CDPL::Math::MatrixExpression< VectorMatrixBinary< E1, E2, F > > | |
| const ExpressionType & | operator() () const |
Returns a const reference to the derived matrix expression. More... | |
| ExpressionType & | operator() () |
| Returns a reference to the derived matrix expression. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from CDPL::Math::MatrixExpression< VectorMatrixBinary< E1, E2, F > > | |
| MatrixExpression () | |
| ~MatrixExpression () | |
Protected Member Functions inherited from CDPL::Math::Expression< E > | |
| Expression () | |
| ~Expression () | |
Expression-template node interpreting a binary combination of two vector expressions as a matrix (e.g. outer product), via the per-cell functor F invoked with both expressions and the cell coordinates.
| E1 | The first vector expression type. |
| E2 | The second vector expression type. |
| F | The per-cell functor type. |
| typedef F::ResultType CDPL::Math::VectorMatrixBinary< E1, E2, F >::ValueType |
The element value type of the expression (the functor's result type).
| typedef const ValueType CDPL::Math::VectorMatrixBinary< E1, E2, F >::ConstReference |
Constant reference type to an element value.
| typedef const ValueType CDPL::Math::VectorMatrixBinary< E1, E2, F >::Reference |
Mutable reference type (degrades to const for expression-template results).
| typedef const SelfType CDPL::Math::VectorMatrixBinary< E1, E2, F >::ConstClosureType |
Constant closure type used when this expression appears inside another expression.
| typedef SelfType CDPL::Math::VectorMatrixBinary< E1, E2, F >::ClosureType |
Closure type used when this expression appears inside another expression.
| typedef CommonType<typename E1::SizeType, typename E2::SizeType>::Type CDPL::Math::VectorMatrixBinary< E1, E2, F >::SizeType |
The common size type of the two wrapped vector expressions.
| typedef CommonType<typename E1::DifferenceType, typename E2::DifferenceType>::Type CDPL::Math::VectorMatrixBinary< E1, E2, F >::DifferenceType |
The common signed difference type of the two wrapped vector expressions.
|
inline |
Constructs the expression-template node wrapping e1 and e2.
| e1 | The first vector expression (row source). |
| e2 | The second vector expression (column source). |
|
inline |
Returns the first wrapped vector expression's size (number of rows of the resulting matrix view).
|
inline |
Returns the second wrapped vector expression's size (number of columns of the resulting matrix view).
|
inline |
Applies the binary functor to e1(i) and e2(j) to produce the matrix element at (i, j).
| i | The zero-based row index. |
| j | The zero-based column index. |