shark::blas::vector_unary< E, F > Class Template Reference

Class implementing vector transformation expressions. More...

#include <shark/LinAlg/BLAS/vector_expression.hpp>

+ Inheritance diagram for shark::blas::vector_unary< E, F >:

Public Types

typedef value_type const_reference
 
typedef value_type reference
 
typedef value_type const * const_pointer
 
typedef value_type const * pointer
 
typedef E::const_index_pointer const_index_pointer
 
typedef index_pointer< E >::type index_pointer
 
typedef unknown_storage_tag storage_category
 
typedef E::evaluation_category evaluation_category
 
typedef transform_iterator< typename E::const_iterator, functor_type > const_iterator
 
typedef const_iterator iterator
 

Public Member Functions

 vector_unary (vector_expression< E > const &e, F const &functor)
 
size_type size () const
 
expression_closure_type const & expression () const
 
template<class VecX >
void assign_to (vector_expression< VecX > &x, scalar_type alpha=scalar_type(1)) const
 
template<class VecX >
void plus_assign_to (vector_expression< VecX > &x, scalar_type alpha=scalar_type(1)) const
 
template<class VecX >
void minus_assign_to (vector_expression< VecX > &x, scalar_type alpha=scalar_type(1)) const
 
const_reference operator() (index_type i) const
 
const_reference operator[] (index_type i) const
 
const_iterator begin () const
 
const_iterator end () const
 
- Public Member Functions inherited from shark::blas::vector_expression< vector_unary< E, F > >
const expression_type & operator() () const
 
expression_type & operator() ()
 

Detailed Description

template<class E, class F>
class shark::blas::vector_unary< E, F >

Class implementing vector transformation expressions.

transforms a vector Expression e of type E using a Function f of type F as an elementwise transformation f(e(i)) This transformation needs f to be constant, meaning that applying f(x), f(y), f(z) yields the same results independent of the order of application. Also F must provide a type F::result_type indicating the result type of the functor.

Definition at line 226 of file vector_expression.hpp.

Member Typedef Documentation

template<class E , class F >
typedef E::const_index_pointer shark::blas::vector_unary< E, F >::const_index_pointer

Definition at line 242 of file vector_expression.hpp.

template<class E , class F >
typedef transform_iterator<typename E::const_iterator,functor_type> shark::blas::vector_unary< E, F >::const_iterator

Definition at line 302 of file vector_expression.hpp.

template<class E , class F >
typedef value_type const* shark::blas::vector_unary< E, F >::const_pointer

Definition at line 238 of file vector_expression.hpp.

template<class E , class F >
typedef value_type shark::blas::vector_unary< E, F >::const_reference

Definition at line 236 of file vector_expression.hpp.

template<class E , class F >
typedef E::evaluation_category shark::blas::vector_unary< E, F >::evaluation_category

Definition at line 248 of file vector_expression.hpp.

template<class E , class F >
typedef index_pointer<E>::type shark::blas::vector_unary< E, F >::index_pointer

Definition at line 243 of file vector_expression.hpp.

template<class E , class F >
typedef const_iterator shark::blas::vector_unary< E, F >::iterator

Definition at line 303 of file vector_expression.hpp.

template<class E , class F >
typedef value_type const* shark::blas::vector_unary< E, F >::pointer

Definition at line 239 of file vector_expression.hpp.

template<class E , class F >
typedef value_type shark::blas::vector_unary< E, F >::reference

Definition at line 237 of file vector_expression.hpp.

template<class E , class F >
typedef unknown_storage_tag shark::blas::vector_unary< E, F >::storage_category

Definition at line 247 of file vector_expression.hpp.

Constructor & Destructor Documentation

template<class E , class F >
shark::blas::vector_unary< E, F >::vector_unary ( vector_expression< E > const &  e,
F const &  functor 
)
inline

Definition at line 252 of file vector_expression.hpp.

Member Function Documentation

template<class E , class F >
template<class VecX >
void shark::blas::vector_unary< E, F >::assign_to ( vector_expression< VecX > &  x,
scalar_type  alpha = scalar_type(1) 
) const
inline
template<class E , class F >
const_iterator shark::blas::vector_unary< E, F >::begin ( ) const
inline

Definition at line 306 of file vector_expression.hpp.

Referenced by shark::blas::vector_unary< E, F >::assign_to().

template<class E , class F >
const_iterator shark::blas::vector_unary< E, F >::end ( ) const
inline

Definition at line 309 of file vector_expression.hpp.

Referenced by shark::blas::vector_unary< E, F >::assign_to().

template<class E , class F >
expression_closure_type const& shark::blas::vector_unary< E, F >::expression ( ) const
inline

Definition at line 261 of file vector_expression.hpp.

template<class E , class F >
template<class VecX >
void shark::blas::vector_unary< E, F >::minus_assign_to ( vector_expression< VecX > &  x,
scalar_type  alpha = scalar_type(1) 
) const
inline
template<class E , class F >
const_reference shark::blas::vector_unary< E, F >::operator() ( index_type  i) const
inline

Definition at line 294 of file vector_expression.hpp.

template<class E , class F >
const_reference shark::blas::vector_unary< E, F >::operator[] ( index_type  i) const
inline

Definition at line 298 of file vector_expression.hpp.

template<class E , class F >
template<class VecX >
void shark::blas::vector_unary< E, F >::plus_assign_to ( vector_expression< VecX > &  x,
scalar_type  alpha = scalar_type(1) 
) const
inline
template<class E , class F >
size_type shark::blas::vector_unary< E, F >::size ( ) const
inline

The documentation for this class was generated from the following file: