OTB  6.7.0
Orfeo Toolbox
Public Member Functions | Private Attributes | List of all members
otb::Functor::AffineFunctor< TInput, TOutput, TScale > Class Template Reference

#include <otbAffineFunctor.h>

+ Collaboration diagram for otb::Functor::AffineFunctor< TInput, TOutput, TScale >:

Public Member Functions

 AffineFunctor ()
 
TScale GetA ()
 
TOutput GetB ()
 
bool operator!= (const AffineFunctor &other) const
 
TOutput operator() (const TInput &x) const
 
bool operator== (const AffineFunctor &other) const
 
void SetA (TScale value)
 
void SetB (TOutput value)
 
virtual ~AffineFunctor ()
 

Private Attributes

TScale m_A
 
TOutput m_B
 

Detailed Description

template<class TInput, class TOutput, class TScale = double>
class otb::Functor::AffineFunctor< TInput, TOutput, TScale >

This functor performs a linear transform of its input.

\[ output = a*input + b \]

Coefficient a is a scalar, its type is templated (default is double). Coefficient b has the same type as output type. Standard casting is applied between input and output type.

TInput and TOutput type are supposed to be scalar types.

Definition at line 43 of file otbAffineFunctor.h.

Constructor & Destructor Documentation

template<class TInput , class TOutput , class TScale = double>
otb::Functor::AffineFunctor< TInput, TOutput, TScale >::AffineFunctor ( )
inline

Constructor.

Definition at line 47 of file otbAffineFunctor.h.

template<class TInput , class TOutput , class TScale = double>
virtual otb::Functor::AffineFunctor< TInput, TOutput, TScale >::~AffineFunctor ( )
inlinevirtual

Constructor.

Definition at line 51 of file otbAffineFunctor.h.

Member Function Documentation

template<class TInput , class TOutput , class TScale = double>
TScale otb::Functor::AffineFunctor< TInput, TOutput, TScale >::GetA ( )
inline
template<class TInput , class TOutput , class TScale = double>
TOutput otb::Functor::AffineFunctor< TInput, TOutput, TScale >::GetB ( )
inline
template<class TInput , class TOutput , class TScale = double>
bool otb::Functor::AffineFunctor< TInput, TOutput, TScale >::operator!= ( const AffineFunctor< TInput, TOutput, TScale > &  other) const
inline
template<class TInput , class TOutput , class TScale = double>
TOutput otb::Functor::AffineFunctor< TInput, TOutput, TScale >::operator() ( const TInput &  x) const
inline
template<class TInput , class TOutput , class TScale = double>
bool otb::Functor::AffineFunctor< TInput, TOutput, TScale >::operator== ( const AffineFunctor< TInput, TOutput, TScale > &  other) const
inline
template<class TInput , class TOutput , class TScale = double>
void otb::Functor::AffineFunctor< TInput, TOutput, TScale >::SetA ( TScale  value)
inline

Accessors.

Definition at line 54 of file otbAffineFunctor.h.

References otb::Functor::AffineFunctor< TInput, TOutput, TScale >::m_A.

template<class TInput , class TOutput , class TScale = double>
void otb::Functor::AffineFunctor< TInput, TOutput, TScale >::SetB ( TOutput  value)
inline

Member Data Documentation

template<class TInput , class TOutput , class TScale = double>
TScale otb::Functor::AffineFunctor< TInput, TOutput, TScale >::m_A
private
template<class TInput , class TOutput , class TScale = double>
TOutput otb::Functor::AffineFunctor< TInput, TOutput, TScale >::m_B
private

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