18 #ifndef QGSALGORITHMRASTERSTACKPOSITION_H 
   19 #define QGSALGORITHMRASTERSTACKPOSITION_H 
   34     QgsRasterStackPositionAlgorithmBase() = 
default;
 
   35     void initAlgorithm( 
const QVariantMap &configuration = QVariantMap() ) 
override;
 
   36     QString 
group() 
const override;
 
   37     QString 
groupId() 
const override;
 
   42     virtual int findPosition( std::vector< std::unique_ptr< QgsRasterBlock > > &rasterBlockStack, 
int &row, 
int &col, 
bool &noDataInRasterBlockStack ) = 0;
 
   43     double mNoDataValue = -9999;
 
   46     std::vector< QgsRasterAnalysisUtils::RasterLogicInput > mInputs;
 
   52     double mRasterUnitsPerPixelX;
 
   53     double mRasterUnitsPerPixelY;
 
   56 class QgsRasterStackLowestPositionAlgorithm : 
public QgsRasterStackPositionAlgorithmBase
 
   59     QgsRasterStackLowestPositionAlgorithm() = 
default;
 
   60     QString name() 
const override;
 
   61     QString displayName() 
const override;
 
   62     QStringList tags() 
const override;
 
   63     QString shortHelpString() 
const override;
 
   64     QgsRasterStackLowestPositionAlgorithm *createInstance() const override 
SIP_FACTORY;
 
   67     int findPosition( std::vector< std::
unique_ptr< 
QgsRasterBlock > > &rasterBlockStack, 
int &row, 
int &col, 
bool &noDataInRasterBlockStack ) override;
 
   70 class QgsRasterStackHighestPositionAlgorithm : public QgsRasterStackPositionAlgorithmBase
 
   73     QgsRasterStackHighestPositionAlgorithm() = 
default;
 
   74     QString name() 
const override;
 
   75     QString displayName() 
const override;
 
   76     QStringList tags() 
const override;
 
   77     QString shortHelpString() 
const override;
 
   78     QgsRasterStackHighestPositionAlgorithm *createInstance() const override 
SIP_FACTORY;
 
   81     int findPosition( std::vector< std::
unique_ptr< 
QgsRasterBlock > > &rasterBlockStack, 
int &row, 
int &col, 
bool &noDataInRasterBlockStack ) override;
 
   86 #endif // QGSALGORITHMRASTERSTACKPOSITION_H