QGIS API Documentation 3.43.0-Master (3ee7834ace6)
qgsgridfilewriter.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsgridfilewriter.h
3 --------------------
4 begin : March 10, 2008
5 copyright : (C) 2008 by Marco Hugentobler
6 email : marco dot hugentobler at karto dot baug dot ethz dot ch
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 QGSGRIDFILEWRITER_H
19#define QGSGRIDFILEWRITER_H
20
21#include "qgsrectangle.h"
22#include <QString>
23#include <QTextStream>
24#include "qgis_analysis.h"
25
26class QgsInterpolator;
27class QgsFeedback;
28
29//todo: extend such that writing to other file types is possible
30
35class ANALYSIS_EXPORT QgsGridFileWriter
36{
37 public:
45 QgsGridFileWriter( QgsInterpolator *interpolator, const QString &outputPath, const QgsRectangle &extent, int nCols, int nRows );
46
54 int writeFile( QgsFeedback *feedback = nullptr );
55
62 void setCreateOptions( const QStringList &list ) { mCreateOptions = list; }
63
70 QStringList createOptions() const { return mCreateOptions; }
71
78 void setNoDataValue( double noDataValue ) { mNoDataValue = noDataValue; }
79
86 double noDataValue() const { return mNoDataValue; }
87
88 private:
89 QgsGridFileWriter() = delete;
90
91 QgsInterpolator *mInterpolator = nullptr;
92 QString mOutputFilePath;
93 QgsRectangle mInterpolationExtent;
94 int mNumColumns = 0;
95 int mNumRows = 0;
96
97 double mCellSizeX = 0;
98 double mCellSizeY = 0;
99
100 QStringList mCreateOptions;
101 double mNoDataValue = -9999.0;
102};
103
104#endif
Base class for feedback objects to be used for cancellation of something running in a worker thread.
Definition qgsfeedback.h:44
A class that does interpolation to a grid and writes the results to an ascii grid.
void setNoDataValue(double noDataValue)
Set no data value for output file.
double noDataValue() const
Returns no data value used for output file.
QStringList createOptions() const
Returns the list of data source creation options which will be used when creating the output raster f...
void setCreateOptions(const QStringList &list)
Sets a list of data source creation options to use when creating the output raster file.
Interface class for interpolations.
A rectangle specified with double values.