yat  0.14.5pre
Public Types | Public Member Functions | List of all members
theplu::yat::normalizer::ColumnNormalizer< T > Class Template Reference

Using a functor T to normalize each column. More...

#include <yat/normalizer/ColumnNormalizer.h>

Public Types

typedef T normalizer_type
 

Public Member Functions

 ColumnNormalizer (void)
 Default constructor.
 
 ColumnNormalizer (T norm)
 Constructor taking a functor norm.
 
template<class Container2D1 , class Container2D2 >
void operator() (const Container2D1 &matrix, Container2D2 &result) const
 

Detailed Description

template<class T>
class theplu::yat::normalizer::ColumnNormalizer< T >

Using a functor T to normalize each column.

If the underlying normalizer_type allows normalization "in place", i.e., it allows input range and result range to be the same range, then it is safe to have same container for input as output.

In the case of views and lookups it is more complicated. The assignment is done sequentially, so if the input container and result container have the same underlying data, the normalization is typically not safe.

Since
New in yat 0.5
See Also
RowNormalizer

Member Typedef Documentation

template<class T >
typedef T theplu::yat::normalizer::ColumnNormalizer< T >::normalizer_type

functor used to normalize each column

Member Function Documentation

template<class T >
template<class Container2D1 , class Container2D2 >
void theplu::yat::normalizer::ColumnNormalizer< T >::operator() ( const Container2D1 &  matrix,
Container2D2 &  result 
) const
inline

Each column in matrix is normalized using class T, and assigned to corresponding column in result.

Template argument Container2D1 should be a class modelling the concept Container2D. The template argument Container2D2 should be a class modelling the concept Mutable Container2D.

Note
result must have same dimensions as matrix.

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

Generated on Tue Sep 26 2017 02:33:29 for yat by  doxygen 1.8.5