vigra_ext::LUTFunctor< VTIn, LUT > Struct Template Reference

functor to apply a LUT to gray and color images. More...

#include <lut.h>

Inheritance diagram for vigra_ext::LUTFunctor< VTIn, LUT >:

Inheritance graph
[legend]
List of all members.

Public Types

typedef vigra_ext::ValueTypeTraits<
VTIn >::value_type 
VT1
typedef LUT::value_type lut_type
 the functor's first argument type

Public Member Functions

 LUTFunctor ()
 the functor's result type
 LUTFunctor (LUT &lut)
 create a LUT functor.
lut_type applyLutInteger (VT1 v) const
lut_type applyLutFloat (double v) const
vigra::RGBValue< lut_typeapplyVector (vigra::RGBValue< VT1 > v, vigra::VigraFalseType) const
vigra::RGBValue< lut_typeapplyVector (vigra::RGBValue< VT1 > v, vigra::VigraTrueType) const
lut_type applyScalar (VT1 v, vigra::VigraFalseType) const
lut_type applyScalar (VT1 v, vigra::VigraTrueType) const
lut_type apply (VT1 v, vigra::VigraTrueType) const
vigra::RGBValue< lut_typeapply (vigra::RGBValue< VT1 > v, vigra::VigraFalseType) const
template<class T>
vigra::NumericTraits< T
>::RealPromote 
operator() (T v) const

Public Attributes

LUT m_lut

Detailed Description

template<class VTIn, class LUT>
struct vigra_ext::LUTFunctor< VTIn, LUT >

functor to apply a LUT to gray and color images.

This is a safe, and iterpolatating table lookup.

if the argument has a higher bit count than lut.size(), interpolation will take place.

This is slower, because there is a size check at runtime, which might be placed in a template parameter.

floating point values between 0..1 are mapped to min and max of the lookup table.

Definition at line 118 of file lut.h.


Member Typedef Documentation

template<class VTIn, class LUT>
typedef LUT::value_type vigra_ext::LUTFunctor< VTIn, LUT >::lut_type
 

the functor's first argument type

Definition at line 126 of file lut.h.

template<class VTIn, class LUT>
typedef vigra_ext::ValueTypeTraits<VTIn>::value_type vigra_ext::LUTFunctor< VTIn, LUT >::VT1
 

Definition at line 120 of file lut.h.


Constructor & Destructor Documentation

template<class VTIn, class LUT>
vigra_ext::LUTFunctor< VTIn, LUT >::LUTFunctor  )  [inline]
 

the functor's result type

Definition at line 132 of file lut.h.

template<class VTIn, class LUT>
vigra_ext::LUTFunctor< VTIn, LUT >::LUTFunctor LUT &  lut  )  [inline]
 

create a LUT functor.

Definition at line 138 of file lut.h.


Member Function Documentation

template<class VTIn, class LUT>
vigra::RGBValue<lut_type> vigra_ext::LUTFunctor< VTIn, LUT >::apply vigra::RGBValue< VT1 v,
vigra::VigraFalseType 
const [inline]
 

Definition at line 226 of file lut.h.

template<class VTIn, class LUT>
lut_type vigra_ext::LUTFunctor< VTIn, LUT >::apply VT1  v,
vigra::VigraTrueType 
const [inline]
 

Definition at line 220 of file lut.h.

template<class VTIn, class LUT>
lut_type vigra_ext::LUTFunctor< VTIn, LUT >::applyLutFloat double  v  )  const [inline]
 

Definition at line 170 of file lut.h.

template<class VTIn, class LUT>
lut_type vigra_ext::LUTFunctor< VTIn, LUT >::applyLutInteger VT1  v  )  const [inline]
 

Definition at line 149 of file lut.h.

template<class VTIn, class LUT>
lut_type vigra_ext::LUTFunctor< VTIn, LUT >::applyScalar VT1  v,
vigra::VigraTrueType 
const [inline]
 

Definition at line 215 of file lut.h.

template<class VTIn, class LUT>
lut_type vigra_ext::LUTFunctor< VTIn, LUT >::applyScalar VT1  v,
vigra::VigraFalseType 
const [inline]
 

Definition at line 209 of file lut.h.

template<class VTIn, class LUT>
vigra::RGBValue<lut_type> vigra_ext::LUTFunctor< VTIn, LUT >::applyVector vigra::RGBValue< VT1 v,
vigra::VigraTrueType 
const [inline]
 

Definition at line 198 of file lut.h.

template<class VTIn, class LUT>
vigra::RGBValue<lut_type> vigra_ext::LUTFunctor< VTIn, LUT >::applyVector vigra::RGBValue< VT1 v,
vigra::VigraFalseType 
const [inline]
 

Definition at line 188 of file lut.h.

template<class VTIn, class LUT>
template<class T>
vigra::NumericTraits<T>::RealPromote vigra_ext::LUTFunctor< VTIn, LUT >::operator() v  )  const [inline]
 

Definition at line 233 of file lut.h.


Member Data Documentation

template<class VTIn, class LUT>
LUT vigra_ext::LUTFunctor< VTIn, LUT >::m_lut
 

Definition at line 239 of file lut.h.


The documentation for this struct was generated from the following file:
Generated on Fri Aug 22 01:26:03 2014 for Hugintrunk by  doxygen 1.3.9.1