15#ifndef QGSRASTERITERATOR_H
16#define QGSRASTERITERATOR_H
136 bool readNextRasterPart(
int bandNumber,
137 int &nCols,
int &nRows,
139 int &topLeftCol,
int &topLeftRow );
158 bool readNextRasterPart(
int bandNumber,
159 int &nCols,
int &nRows,
160 std::unique_ptr< QgsRasterBlock > &block,
161 int &topLeftCol,
int &topLeftRow,
163 int *tileColumns =
nullptr,
int *tileRows =
nullptr,
int *tileTopLeftColumn =
nullptr,
int *tileTopLeftRow =
nullptr )
SIP_SKIP;
168 void stopRasterRead(
int bandNumber );
235 double progress(
int bandNumber )
const;
238 static const int DEFAULT_MAXIMUM_TILE_WIDTH = 2000;
241 static const int DEFAULT_MAXIMUM_TILE_HEIGHT = 2000;
245 struct RasterPartInfo
254 QMap<int, RasterPartInfo> mRasterPartInfos;
258 int mTileOverlapPixels = 0;
259 int mMaximumTileWidth;
260 int mMaximumTileHeight;
261 int mSnapToPixelFactor = 1;
263 int mNumberBlocksWidth = 0;
264 int mNumberBlocksHeight = 0;
267 void removePartInfo(
int bandNumber );
268 bool readNextRasterPartInternal(
int bandNumber,
int &nCols,
int &nRows, std::unique_ptr<QgsRasterBlock> *block,
int &topLeftCol,
int &topLeftRow,
QgsRectangle *blockExtent,
int &tileColumns,
int &tileRows,
int &tileTopLeftColumn,
int &tileTopLeftRow );
Perform transforms between map coordinates and device coordinates.
Feedback object tailored for raster block reading.
Base class for processing filters like renderers, reprojector, resampler etc.
Iterator for sequentially processing raster cells.
int snapToPixelFactor() const
Returns the current "snap to pixel" factor in pixels.
void setSnapToPixelFactor(int factor)
Sets the "snap to pixel" factor in pixels.
qgssize blockCount() const
Returns the total number of blocks required to iterate over the input raster.
int maximumTileWidth() const
Returns the maximum tile width returned during iteration.
void setMaximumTileWidth(int w)
Sets the maximum tile width returned during iteration.
int blockCountWidth() const
Returns the total number of blocks which cover the width of the input raster.
int blockCountHeight() const
Returns the total number of blocks which cover the height of the input raster.
int maximumTileHeight() const
Returns the minimum tile width returned during iteration.
void setMaximumTileHeight(int h)
Sets the minimum tile height returned during iteration.
Implements approximate projection support for optimised raster transformation.
A rectangle specified with double values.
unsigned long long qgssize
Qgssize is used instead of size_t, because size_t is stdlib type, unknown by SIP, and it would be har...
This class provides details of the viewable area that a raster will be rendered into.