QGIS API Documentation 3.43.0-Master (32433f7016e)
qgsrasterfilewritertask.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsrasterfilewritertask.h
3 -------------------------
4 begin : April 2017
5 copyright : (C) 2017 by Nyall Dawson
6 email : nyall dot dawson at gmail dot com
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17
18#ifndef QGSRASTERFILEWRITERTASK_H
19#define QGSRASTERFILEWRITERTASK_H
20
21#include "qgis_core.h"
22#include "qgstaskmanager.h"
23#include "qgsrasterfilewriter.h"
25#include "qgsrasterinterface.h"
26
27class QgsRasterPipe;
28
40class CORE_EXPORT QgsRasterFileWriterTask : public QgsTask
41{
42 Q_OBJECT
43
44 public:
45
53 Q_DECL_DEPRECATED QgsRasterFileWriterTask( const QgsRasterFileWriter &writer, QgsRasterPipe *pipe SIP_TRANSFER,
54 int columns, int rows,
55 const QgsRectangle &outputExtent,
57
58
67 int columns, int rows,
68 const QgsRectangle &outputExtent,
70 const QgsCoordinateTransformContext &transformContext
71 );
72
74
75 void cancel() override;
76
77 signals:
78
83 void writeComplete( const QString &outputUrl );
84
90 void errorOccurred( int error );
91
98 void errorOccurred( int error, const QString &errorMessage );
99
100 protected:
101
102 bool run() override;
103 void finished( bool result ) override;
104
105 private:
106
107 QgsRasterFileWriter mWriter;
108 int mRows = 0;
109 int mColumns = 0;
110 QgsRectangle mExtent;
112 std::unique_ptr< QgsRasterPipe > mPipe;
113
114 QString mDestFileName;
115
116 std::unique_ptr< QgsRasterBlockFeedback > mFeedback;
117
119
120 QgsCoordinateTransformContext mTransformContext;
121};
122
123#endif //QGSRASTERFILEWRITERTASK_H
RasterFileWriterResult
Raster file export results.
Definition qgis.h:1605
@ Success
Successful export.
Represents a coordinate reference system (CRS).
Contains information about the context in which a coordinate transform is executed.
QgsTask task which performs a QgsRasterFileWriter layer saving operation as a background task.
~QgsRasterFileWriterTask() override
void writeComplete(const QString &outputUrl)
Emitted when writing the layer is successfully completed.
void errorOccurred(int error, const QString &errorMessage)
Emitted when an error occurs which prevented the file being written (or if the task is canceled).
void errorOccurred(int error)
Emitted when an error occurs which prevented the file being written (or if the task is canceled).
The raster file writer which allows you to save a raster to a new file.
Contains a pipeline of raster interfaces for sequential raster processing.
A rectangle specified with double values.
Abstract base class for long running background tasks.
virtual void finished(bool result)
If the task is managed by a QgsTaskManager, this will be called after the task has finished (whether ...
virtual bool run()=0
Performs the task's operation.
virtual void cancel()
Notifies the task that it should terminate.
#define SIP_DEPRECATED
Definition qgis_sip.h:106
#define SIP_TRANSFER
Definition qgis_sip.h:36
const QgsCoordinateReferenceSystem & crs