25 #ifndef __TERRALIB_RP_INTERNAL_CONTRAST_H 
   26 #define __TERRALIB_RP_INTERNAL_CONTRAST_H 
   73               HistogramEqualizationContrastT = 2, 
 
   74               SetMeanAndStdContrastT = 3, 
 
  100             void reset() throw( te::rp::Exception );
 
  106             AbstractParameters* clone() const;
 
  139             void reset() throw( te::rp::Exception );
 
  145             AbstractParameters* clone() const;
 
  153         bool execute( AlgorithmOutputParameters& outputParams ) throw( te::rp::Exception );
 
  156         void reset() throw( te::rp::Exception );
 
  161         bool isInitialized() const;
 
  168         typedef 
void (
Contrast::*RemapFuncPtrT)( const 
double& inValue, 
 
  174         bool m_isInitialized; 
 
  180         bool execLinearContrast();
 
  186         bool execHistogramEqualizationContrast();
 
  192         bool execSetMeanAndStdContrast();
 
  202         bool remapBandLevels( const te::rst::Band& inRasterBand,
 
  203           te::rst::Band& outRasterBand, RemapFuncPtrT remapFuncPtr,
 
  204           const 
bool enableProgress );
 
  207         double m_offSetGainRemap_offset;
 
  208         double m_offSetGainRemap_gain;
 
  217         inline 
void offSetGainRemap( const 
double& inValue, 
double& outValue )
 
  219           outValue = ( inValue + m_offSetGainRemap_offset ) * m_offSetGainRemap_gain;
 
std::vector< unsigned int > m_outRasterBands
Bands to be processed from the output raster. 
 
te::rst::Raster * m_outRasterPtr
A pointer to a valid initiated raster instance where the result must be written, leave NULL to create...
 
Raster Processing algorithm base interface class. 
 
Contrast output parameters. 
 
std::vector< unsigned int > m_inRasterBands
Bands to be processed from the input raster. 
 
std::vector< double > m_lCMaxInput
The contrast maximum input greyscale value of each band. 
 
std::map< std::string, std::string > m_createdOutRasterInfo
The necessary information to create the raster (as described in te::raster::RasterFactory), leave empty if the result must be written to the raster pointed m_outRasterPtr. 
 
Raster Processing algorithm base interface. 
 
std::string m_createdOutRasterDSType
Output raster data source type (as described in te::raster::RasterFactory ), leave empty if the resul...
 
te::rst::Raster const * m_inRasterPtr
Input raster. 
 
std::vector< double > m_lCMinInput
The contrast minimum input greyscale value of each band. 
 
ContrastType m_type
The contrast type to be applied. 
 
bool m_enableProgress
Enable/Disable the progress interface (default:false). 
 
Contrast input parameters. 
 
std::auto_ptr< te::rst::Raster > m_createdOutRasterPtr
A pointer to the created output raster instance, or an empty pointer empty if the result must be writ...
 
std::vector< double > m_hECMaxInput
The contrast maximum input greyscale value of each band. 
 
Raster Processing algorithm output parameters base interface. 
 
An abstract class for raster data strucutures. 
 
std::vector< double > m_sMASCMeanInput
The mean greyscale to be applied in each band. 
 
std::vector< double > m_sMASCStdInput
The standard deviation to be applied in each band. 
 
#define TERPEXPORT
You can use this macro in order to export/import classes and functions from this module. 
 
Raster Processing algorithm input parameters base interface.