Orfeo Toolbox  4.0
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput > Class Template Referenceabstract

base class for R, G And NIR based Index Implement operators for UnaryFunctorImageFilter templated with a VectorImage and BinaryFunctorImageFilter templated with single images. Subclasses should NOT overload operators, they must re-implement the Evaluate() method. More...

#include <otbVegetationIndicesFunctor.h>

+ Inheritance diagram for otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >:

Public Types

typedef
itk::VariableLengthVector
< TInput1 > 
InputVectorType
 

Public Member Functions

 RAndGAndNIRIndexBase ()
 Constructor. More...
 
virtual ~RAndGAndNIRIndexBase ()
 Desctructor. More...
 
unsigned int GetGreenIndex () const
 Get Green Index. More...
 
unsigned int GetIndex (BandName::BandName band) const
 
virtual std::string GetName () const =0
 
unsigned int GetNIRIndex () const
 Get NIR Index. More...
 
unsigned int GetRedIndex () const
 Get Red Index. More...
 
bool operator!= (const RAndGAndNIRIndexBase &) const
 
TOutput operator() (const InputVectorType &inputVector)
 
TOutput operator() (const TInput1 &r, const TInput2 &g, const TInput2 &nir)
 
bool operator== (const RAndGAndNIRIndexBase &other) const
 
void SetGreenIndex (unsigned int channel)
 Set Green Index. More...
 
void SetIndex (BandName::BandName band, unsigned int channel)
 
void SetNIRIndex (unsigned int channel)
 Set NIR Index. More...
 
void SetRedIndex (unsigned int channel)
 Set Red Index. More...
 

Protected Member Functions

virtual TOutput Evaluate (const TInput1 &r, const TInput2 &g, const TInput3 &nir) const =0
 

Protected Attributes

double m_EpsilonToBeConsideredAsZero
 

Private Attributes

unsigned int m_GreenIndex
 
unsigned int m_NIRIndex
 
unsigned int m_RedIndex
 

Detailed Description

template<class TInput1, class TInput2, class TInput3, class TOutput>
class otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >

base class for R, G And NIR based Index Implement operators for UnaryFunctorImageFilter templated with a VectorImage and BinaryFunctorImageFilter templated with single images. Subclasses should NOT overload operators, they must re-implement the Evaluate() method.

Definition at line 276 of file otbVegetationIndicesFunctor.h.

Member Typedef Documentation

template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
typedef itk::VariableLengthVector<TInput1> otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::InputVectorType

Vector pixel type used to support both vector images and multiple input images

Definition at line 281 of file otbVegetationIndicesFunctor.h.

Constructor & Destructor Documentation

template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::RAndGAndNIRIndexBase ( )
inline

Constructor.

Definition at line 308 of file otbVegetationIndicesFunctor.h.

template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
virtual otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::~RAndGAndNIRIndexBase ( )
inlinevirtual

Desctructor.

Definition at line 310 of file otbVegetationIndicesFunctor.h.

Member Function Documentation

template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
virtual TOutput otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::Evaluate ( const TInput1 &  r,
const TInput2 &  g,
const TInput3 &  nir 
) const
protectedpure virtual
template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
unsigned int otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::GetGreenIndex ( ) const
inline
template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
unsigned int otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::GetIndex ( BandName::BandName  band) const
inline
template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
virtual std::string otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::GetName ( ) const
pure virtual

Return the index name

Implemented in otb::Functor::AVI< TInput1, TInput2, TInput3, TOutput >.

template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
unsigned int otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::GetNIRIndex ( ) const
inline
template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
unsigned int otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::GetRedIndex ( ) const
inline
template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
bool otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::operator!= ( const RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput > &  ) const
inline

Definition at line 284 of file otbVegetationIndicesFunctor.h.

template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
TOutput otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::operator() ( const InputVectorType inputVector)
inline
template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
TOutput otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::operator() ( const TInput1 &  r,
const TInput2 &  g,
const TInput2 &  nir 
)
inline
template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
bool otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::operator== ( const RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput > &  other) const
inline

Definition at line 289 of file otbVegetationIndicesFunctor.h.

template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
void otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::SetGreenIndex ( unsigned int  channel)
inline
template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
void otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::SetIndex ( BandName::BandName  band,
unsigned int  channel 
)
inline
template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
void otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::SetNIRIndex ( unsigned int  channel)
inline
template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
void otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::SetRedIndex ( unsigned int  channel)
inline

Member Data Documentation

template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
double otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::m_EpsilonToBeConsideredAsZero
protected
template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
unsigned int otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::m_GreenIndex
private
template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
unsigned int otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::m_NIRIndex
private
template<class TInput1 , class TInput2 , class TInput3 , class TOutput >
unsigned int otb::Functor::RAndGAndNIRIndexBase< TInput1, TInput2, TInput3, TOutput >::m_RedIndex
private

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

Generated at Sat Mar 8 2014 19:08:32 for Orfeo Toolbox with doxygen 1.8.3.1