26 #ifndef __TERRALIB_RP_INTERNAL_MIXTUREMODELLINEARSTRATEGY_H 
   27 #define __TERRALIB_RP_INTERNAL_MIXTUREMODELLINEARSTRATEGY_H 
   39 #include <boost/numeric/ublas/matrix.hpp> 
   92             te::common::AbstractParameters* clone() const;
 
  105         bool execute(const 
te::rst::Raster& inputRaster, const std::vector<
unsigned int>& inputRasterBands,
 
  106                      const std::vector<std::
string>& inputSensorBands, const std::map<std::
string, std::vector<
double> >& components,
 
  107                      std::vector<
te::rst::Raster*>& outputRaster, const 
bool normalize, const 
bool enableProgressInterface) throw(
te::rp::
Exception);
 
  110         bool getTransformMatrix(
boost::numeric::ublas::matrix<
double>& matrix) const;
 
  113         bool setTransformMatrix(
boost::numeric::ublas::matrix<
double>& matrix) ;
 
  116         bool generateTransformMatrix( 
 
  117           const std::vector<
unsigned int>& inputRasterBands, 
 
  118           const std::vector<std::
string>& inputSensorBands,
 
  119           const std::map<std::
string, std::vector<
double> >& components );
 
  122         bool getMinMax(std::vector<
double>&, std::vector<
double>&) const;
 
  123         bool getMinMaxError(std::vector<
double>&, std::vector<
double>&) const;               
 
  127         bool m_isInitialized;                                             
 
  129         boost::numeric::ublas::matrix<
double> m_AMatrix;           
 
  130         std::vector<
double> m_min;                                    
 
  131         std::vector<
double> m_max;                                    
 
  132         std::vector<
double> m_minerror;                                    
 
  133         std::vector<
double> m_maxerror;                                    
 
  136           const 
te::rst::Raster& inputRaster, 
 
  137           const std::vector<
unsigned int>& inputRasterBands,
 
  138           const std::vector<std::
string>& inputSensorBands, 
 
  139           const std::map<std::
string, std::vector<
double> >& components,
 
  140            std::vector<
te::rst::Raster*>& outputRaster, const 
bool normalize, const 
bool enableProgressInterface) throw(
te::rp::
Exception);        
 
  143           const 
te::rst::Raster& inputRaster, 
 
  144           const std::vector<
unsigned int>& inputRasterBands,
 
  145           const std::vector<std::
string>& inputSensorBands, 
 
  146           const std::map<std::
string, std::vector<
double> >& components,
 
  147            std::vector<
te::rst::Raster*>& outputRaster, const 
bool normalize, const 
bool enableProgressInterface) throw(
te::rp::
Exception);                   
 
  173 #endif // __TERRALIB_RP_INTERNAL_MIXTUREMODELLINEARSTRATEGY_H