theplu::yat::normalizer::ColumnNormalizer< T > Class Template Reference

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

#include <yat/normalizer/ColumnNormalizer.h>

List of all members.

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

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 Jan 18 02:21:18 2011 for yat by  doxygen 1.5.5