18 #ifndef QGSNINECELLFILTER_H 
   19 #define QGSNINECELLFILTER_H 
   23 #include "qgis_analysis.h" 
   25 #include "qgsconfig.h" 
   41     QgsNineCellFilter( 
const QString &inputFile, 
const QString &outputFile, 
const QString &outputFormat );
 
   49     int processRaster( 
QgsFeedback *feedback = 
nullptr );
 
   56     double zFactor()
 const { 
return mZFactor; }
 
   83                                          float *x12, 
float *x22, 
float *x32,
 
   84                                          float *x13, 
float *x23, 
float *x33 ) = 0;
 
   97     GDALDriverH openOutputDriver();
 
  110     int processRasterCPU( 
QgsFeedback *feedback = 
nullptr );
 
  120     int processRasterGPU( 
const QString &source, 
QgsFeedback *feedback = 
nullptr );
 
  127     virtual void addExtraRasterParams( std::vector<float> ¶ms )
 
  132     virtual const QString openClProgramBaseName()
 const 
  145     double mCellSizeX = -1.0;
 
  146     double mCellSizeY = -1.0;
 
  148     float mInputNodataValue = -1.0;
 
  150     float mOutputNodataValue = -1.0;
 
  152     double mZFactor = 1.0;
 
Base class for feedback objects to be used for cancellation of something running in a worker thread.
 
Base class for raster analysis methods that work with a 3x3 cell filter and calculate the value of ea...
 
virtual float processNineCellWindow(float *x11, float *x21, float *x31, float *x12, float *x22, float *x32, float *x13, float *x23, float *x33)=0
Calculates output value from nine input values.
 
virtual ~QgsNineCellFilter()=default
 
void setCellSizeX(double size)
 
void setOutputNodataValue(double value)
 
void setInputNodataValue(double value)
 
void setZFactor(double factor)
 
void setCellSizeY(double size)
 
double inputNodataValue() const
 
double outputNodataValue() const
 
std::unique_ptr< std::remove_pointer< GDALDatasetH >::type, GDALDatasetCloser > dataset_unique_ptr
Scoped GDAL dataset.