![]() |
Chemical Data Processing Library C++ API - Version 1.4.0
|
Expression-template node combining two vector expressions E1 and E2 element-wise via the binary functor F. More...
#include <VectorExpression.hpp>
Inheritance diagram for CDPL::Math::VectorBinary1< 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 expressions. More... | |
| typedef CommonType< typename E1::DifferenceType, typename E2::DifferenceType >::Type | DifferenceType |
| The common signed difference type of the two wrapped expressions. More... | |
Public Types inherited from CDPL::Math::VectorExpression< VectorBinary1< E1, E2, F > > | |
| typedef VectorBinary1< E1, E2, F > | ExpressionType |
| The derived vector 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 | |
| VectorBinary1 (const Expression1Type &e1, const Expression2Type &e2) | |
| Constructs the expression-template node wrapping e1 and e2. More... | |
| SizeType | getSize () const |
| Returns the element count after verifying that both wrapped expressions agree on it. More... | |
| ConstReference | operator() (SizeType i) const |
| Applies the binary functor element-wise at index i of the two wrapped expressions and returns the result. More... | |
| ConstReference | operator[] (SizeType i) const |
| Alias for operator() — applies the binary functor element-wise at index i. More... | |
Public Member Functions inherited from CDPL::Math::VectorExpression< VectorBinary1< E1, E2, F > > | |
| const ExpressionType & | operator() () const |
Returns a const reference to the derived vector expression. More... | |
| ExpressionType & | operator() () |
| Returns a reference to the derived vector expression. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from CDPL::Math::VectorExpression< VectorBinary1< E1, E2, F > > | |
| VectorExpression () | |
| ~VectorExpression () | |
Protected Member Functions inherited from CDPL::Math::Expression< E > | |
| Expression () | |
| ~Expression () | |
Expression-template node combining two vector expressions E1 and E2 element-wise via the binary functor F.
| E1 | The first wrapped vector expression type. |
| E2 | The second wrapped vector expression type. |
| F | The binary functor type. |
| typedef F::ResultType CDPL::Math::VectorBinary1< E1, E2, F >::ValueType |
The element value type of the expression (the functor's result type).
| typedef const ValueType CDPL::Math::VectorBinary1< E1, E2, F >::ConstReference |
Constant reference type to an element value.
| typedef const ValueType CDPL::Math::VectorBinary1< E1, E2, F >::Reference |
Mutable reference type (degrades to const for expression-template results).
| typedef const SelfType CDPL::Math::VectorBinary1< E1, E2, F >::ConstClosureType |
Constant closure type used when this expression appears inside another expression.
| typedef SelfType CDPL::Math::VectorBinary1< 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::VectorBinary1< E1, E2, F >::SizeType |
The common size type of the two wrapped expressions.
| typedef CommonType<typename E1::DifferenceType, typename E2::DifferenceType>::Type CDPL::Math::VectorBinary1< E1, E2, F >::DifferenceType |
The common signed difference type of the two wrapped expressions.
|
inline |
Constructs the expression-template node wrapping e1 and e2.
| e1 | The first vector expression. |
| e2 | The second vector expression. |
|
inline |
Returns the element count after verifying that both wrapped expressions agree on it.
| Base::SizeError | if the two wrapped expressions report different sizes. |
|
inline |
Applies the binary functor element-wise at index i of the two wrapped expressions and returns the result.
| i | The zero-based element index. |
|
inline |
Alias for operator() — applies the binary functor element-wise at index i.
| i | The zero-based element index. |