Jet  v1.3.3
Classes | Namespaces | Typedefs | Functions
vector_expression.h File Reference
#include <jet/functors.h>
#include "detail/vector_expression-inl.h"

Go to the source code of this file.

Classes

class  jet::VectorExpression< T, E >
 Base class for vector expression. More...
 
class  jet::VectorUnaryOp< T, E, Op >
 Vector expression for unary operation. More...
 
class  jet::VectorBinaryOp< T, E1, E2, Op >
 Vector expression for binary operation. More...
 
class  jet::VectorScalarBinaryOp< T, E, Op >
 Vector expression for matrix-scalar binary operation. More...
 

Namespaces

 jet
 

Typedefs

template<typename T , typename E , typename U >
using jet::VectorTypeCast = VectorUnaryOp< T, E, TypeCast< U, T > >
 Matrix expression for type casting. More...
 
template<typename T , typename E1 , typename E2 >
using jet::VectorAdd = VectorBinaryOp< T, E1, E2, std::plus< T > >
 Vector-vector addition expression. More...
 
template<typename T , typename E >
using jet::VectorScalarAdd = VectorScalarBinaryOp< T, E, std::plus< T > >
 Vector-scalar addition expression. More...
 
template<typename T , typename E1 , typename E2 >
using jet::VectorSub = VectorBinaryOp< T, E1, E2, std::minus< T > >
 Vector-vector addition expression. More...
 
template<typename T , typename E >
using jet::VectorScalarSub = VectorScalarBinaryOp< T, E, std::minus< T > >
 Vector-scalar subtraction expression. More...
 
template<typename T , typename E >
using jet::VectorScalarRSub = VectorScalarBinaryOp< T, E, RMinus< T > >
 Scalar-vector subtraction expression. More...
 
template<typename T , typename E1 , typename E2 >
using jet::VectorMul = VectorBinaryOp< T, E1, E2, std::multiplies< T > >
 Element-wise vector-vector multiplication expression. More...
 
template<typename T , typename E >
using jet::VectorScalarMul = VectorScalarBinaryOp< T, E, std::multiplies< T > >
 Vector-scalar multiplication expression. More...
 
template<typename T , typename E1 , typename E2 >
using jet::VectorDiv = VectorBinaryOp< T, E1, E2, std::divides< T > >
 Element-wise vector-vector division expression. More...
 
template<typename T , typename E >
using jet::VectorScalarDiv = VectorScalarBinaryOp< T, E, std::divides< T > >
 Vector-scalar division expression. More...
 
template<typename T , typename E >
using jet::VectorScalarRDiv = VectorScalarBinaryOp< T, E, RDivides< T > >
 Scalar-vector division expression. More...
 

Functions

template<typename T , typename E >
VectorScalarAdd< T, E > jet::operator+ (const T &a, const VectorExpression< T, E > &b)
 Scalar-vector addition operation. More...
 
template<typename T , typename E >
VectorScalarAdd< T, E > jet::operator+ (const VectorExpression< T, E > &a, const T &b)
 Vector-scalar addition operation. More...
 
template<typename T , typename E1 , typename E2 >
VectorAdd< T, E1, E2 > jet::operator+ (const VectorExpression< T, E1 > &a, const VectorExpression< T, E2 > &b)
 Vector-vector addition operation. More...
 
template<typename T , typename E >
VectorScalarRSub< T, E > jet::operator- (const T &a, const VectorExpression< T, E > &b)
 Scalar-vector subtraction operation. More...
 
template<typename T , typename E >
VectorScalarSub< T, E > jet::operator- (const VectorExpression< T, E > &a, const T &b)
 Scalar-vector addition operation. More...
 
template<typename T , typename E1 , typename E2 >
VectorSub< T, E1, E2 > jet::operator- (const VectorExpression< T, E1 > &a, const VectorExpression< T, E2 > &b)
 Vector-vector addition operation. More...
 
template<typename T , typename E >
VectorScalarMul< T, E > jet::operator* (const T &a, const VectorExpression< T, E > &b)
 Scalar-vector multiplication operation. More...
 
template<typename T , typename E >
VectorScalarMul< T, E > jet::operator* (const VectorExpression< T, E > &a, const T &b)
 Vector-scalar multiplication operation. More...
 
template<typename T , typename E1 , typename E2 >
VectorMul< T, E1, E2 > jet::operator* (const VectorExpression< T, E1 > &a, const VectorExpression< T, E2 > &b)
 Element-wise vector-vector multiplication operation. More...
 
template<typename T , typename E >
VectorScalarRDiv< T, E > jet::operator/ (const T &a, const VectorExpression< T, E > &b)
 Scalar-vector division operation. More...
 
template<typename T , typename E >
VectorScalarDiv< T, E > jet::operator/ (const VectorExpression< T, E > &a, const T &b)
 Vector-scalar division operation. More...
 
template<typename T , typename E1 , typename E2 >
VectorDiv< T, E1, E2 > jet::operator/ (const VectorExpression< T, E1 > &a, const VectorExpression< T, E2 > &b)
 Element-wise vector-vector division operation. More...