26 #ifndef __TERRALIB_RP_INTERNAL_CLASSIFIERSTRATEGY_H 
   27 #define __TERRALIB_RP_INTERNAL_CLASSIFIERSTRATEGY_H 
   30 #include "../raster/Raster.h" 
   31 #include "../raster/BandProperty.h" 
   74         void setInputRaster( const 
te::rst::Raster& raster );
 
   80         void setInputRasterBands( const  std::vector<
unsigned int>& rasterBands );
 
   87         std::unique_ptr< 
te::rst::Raster > releaseOutputRaster();
 
   94         void setInputPolygons( const std::vector<
te::gm::Polygon*>& polygonsPtrs );
 
  100         void enableProgressInterface( const 
bool& enable );
 
  106         void enableRasterCache( const 
bool& enable );
 
  112         void enableMultiThread( const 
bool& enable );
 
  118         void getMetaData( std::map< std::
string, std::
string >& metadata ) const;
 
  124         void enableOutputPalette( const 
bool enabled );
 
  130         void setUserOutputPalette( std::vector< 
te::rst::BandProperty::ColorEntry >& userPalette );
 
  137         const std::
string& getErrorMessage() const;
 
  144         te::rst::Raster const * m_inputRasterPtr;
 
  149         bool m_progressInterfaceEnabled;
 
  154         bool m_enableRasterCache;
 
  159         bool m_enableMultiThread;
 
  164         bool m_createRasterPalette;
 
  169         std::unique_ptr< 
te::rst::Raster > m_outputRasterPtr;
 
  174         std::vector<
unsigned int> m_inputRasterBands;
 
  179         std::vector<
te::gm::Polygon*> const * m_inputPolygonsPtr;
 
  184         std::map< std::
string, std::
string > m_metaData;
 
  189         std::vector< 
te::rst::BandProperty::ColorEntry > m_userOutputPalette;
 
  201         bool createOutputRaster( const std::vector< 
int >& bandsDataTypes,
 
  202           const std::vector< 
double >& noDataValues );
 
  209         bool setOutputRasterPalette( const 
unsigned int size );
 
  216         void setErrorMessage( const std::
string& newErrorMessage );
 
  221         virtual 
void reset();
 
  228         std::
string m_errorMessage;
 
  250 #endif  // __TERRALIB_RP_INTERNAL_CLASSIFIERSTRATEGY_H