QGIS API Documentation 3.99.0-Master (d270888f95f)
Loading...
Searching...
No Matches
qgsprocessingparameters.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsprocessingparameters.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 QGSPROCESSINGPARAMETERS_H
19#define QGSPROCESSINGPARAMETERS_H
20
21#include <limits>
22
23#include "qgis.h"
24#include "qgis_core.h"
27#include "qgsprocessing.h"
28#include "qgsprocessingutils.h"
29#include "qgsproperty.h"
31
32#include <QColor>
33#include <QMap>
34#include <QString>
35
36using namespace Qt::StringLiterals;
37
40class QgsRasterLayer;
41class QgsMeshLayer;
42class QgsVectorLayer;
43class QgsFeatureSink;
48class QgsPrintLayout;
49class QgsLayoutItem;
52
60
62{
63 public:
64
90
116
121
126
133 long long featureLimit = -1;
134
141
148
157
164 QVariant toVariant() const;
165
172 bool loadVariant( const QVariantMap &map );
173
174 // TODO c++20 - replace with = default
176 {
177 return source == other.source
179 && featureLimit == other.featureLimit
181 && flags == other.flags
182 && geometryCheck == other.geometryCheck;
183 }
184
186 {
187 return !( *this == other );
188 }
189
191 operator QVariant() const
192 {
193 return QVariant::fromValue( *this );
194 }
195
196};
197
199
200
207
209{
210 public:
211
221 QgsProcessingRasterLayerDefinition( const QString &source = QString(), const double referenceScale = 0, const int dpi = 96 )
222 : source( QgsProperty::fromValue( source ) )
224 , dpi( dpi )
225 {}
226
236 QgsProcessingRasterLayerDefinition( const QgsProperty &source, const double referenceScale = 0, const int dpi = 96 )
237 : source( source )
239 , dpi( dpi )
240 {}
241
246
250 double referenceScale = 0;
251
255 int dpi = 96;
256
262 QVariant toVariant() const;
263
269 bool loadVariant( const QVariantMap &map );
270
271 // TODO c++20 - replace with = default
273 {
274 return source == other.source
276 && dpi == other.dpi;
277 }
278
280 {
281 return !( *this == other );
282 }
283
285 operator QVariant() const
286 {
287 return QVariant::fromValue( *this );
288 }
289
290};
291
293
294
301
303{
304 public:
305
312 : sink( QgsProperty::fromValue( sink ) )
314 {}
315
325
330
337
342
349 QVariantMap createOptions;
350
357 bool useRemapping() const { return mUseRemapping; }
358
366 QgsRemappingSinkDefinition remappingDefinition() const { return mRemappingDefinition; }
367
378 void setRemappingDefinition( const QgsRemappingSinkDefinition &definition );
379
386 QString format() const { return mFormat; }
387
395 void setFormat( const QString &format ) { mFormat = format; }
396
403 QVariant toVariant() const;
404
411 bool loadVariant( const QVariantMap &map );
412
414 operator QVariant() const
415 {
416 return QVariant::fromValue( *this );
417 }
418
419 // TODO c++20 - replace with = default
420 bool operator==( const QgsProcessingOutputLayerDefinition &other ) const;
421 bool operator!=( const QgsProcessingOutputLayerDefinition &other ) const;
422
423 private:
424
425 bool mUseRemapping = false;
427 QString mFormat;
428
429};
430
432
433
434
435
436//
437// Parameter definitions
438//
439
440
450
452{
453
454#ifdef SIP_RUN
455 % TypeHeaderCode
462 % End
464 if ( sipCpp->type() == QgsProcessingParameterBoolean::typeName() )
465 sipType = sipType_QgsProcessingParameterBoolean;
466 else if ( sipCpp->type() == QgsProcessingParameterCrs::typeName() )
467 sipType = sipType_QgsProcessingParameterCrs;
468 else if ( sipCpp->type() == QgsProcessingParameterMapLayer::typeName() )
469 sipType = sipType_QgsProcessingParameterMapLayer;
470 else if ( sipCpp->type() == QgsProcessingParameterExtent::typeName() )
471 sipType = sipType_QgsProcessingParameterExtent;
472 else if ( sipCpp->type() == QgsProcessingParameterPoint::typeName() )
473 sipType = sipType_QgsProcessingParameterPoint;
474 else if ( sipCpp->type() == QgsProcessingParameterGeometry::typeName() )
475 sipType = sipType_QgsProcessingParameterGeometry;
476 else if ( sipCpp->type() == QgsProcessingParameterFile::typeName() )
477 sipType = sipType_QgsProcessingParameterFile;
478 else if ( sipCpp->type() == QgsProcessingParameterMatrix::typeName() )
479 sipType = sipType_QgsProcessingParameterMatrix;
480 else if ( sipCpp->type() == QgsProcessingParameterMultipleLayers::typeName() )
481 sipType = sipType_QgsProcessingParameterMultipleLayers;
482 else if ( sipCpp->type() == QgsProcessingParameterNumber::typeName() )
483 sipType = sipType_QgsProcessingParameterNumber;
484 else if ( sipCpp->type() == QgsProcessingParameterDistance::typeName() )
485 sipType = sipType_QgsProcessingParameterDistance;
486 else if ( sipCpp->type() == QgsProcessingParameterArea::typeName() )
487 sipType = sipType_QgsProcessingParameterArea;
488 else if ( sipCpp->type() == QgsProcessingParameterVolume::typeName() )
489 sipType = sipType_QgsProcessingParameterVolume;
490 else if ( sipCpp->type() == QgsProcessingParameterDuration::typeName() )
491 sipType = sipType_QgsProcessingParameterDuration;
492 else if ( sipCpp->type() == QgsProcessingParameterScale::typeName() )
493 sipType = sipType_QgsProcessingParameterScale;
494 else if ( sipCpp->type() == QgsProcessingParameterRange::typeName() )
495 sipType = sipType_QgsProcessingParameterRange;
496 else if ( sipCpp->type() == QgsProcessingParameterRasterLayer::typeName() )
497 sipType = sipType_QgsProcessingParameterRasterLayer;
498 else if ( sipCpp->type() == QgsProcessingParameterMeshLayer::typeName() )
499 sipType = sipType_QgsProcessingParameterMeshLayer;
500 else if ( sipCpp->type() == QgsProcessingParameterEnum::typeName() )
501 sipType = sipType_QgsProcessingParameterEnum;
502 else if ( sipCpp->type() == QgsProcessingParameterString::typeName() )
503 sipType = sipType_QgsProcessingParameterString;
504 else if ( sipCpp->type() == QgsProcessingParameterExpression::typeName() )
505 sipType = sipType_QgsProcessingParameterExpression;
506 else if ( sipCpp->type() == QgsProcessingParameterAuthConfig::typeName() )
507 sipType = sipType_QgsProcessingParameterAuthConfig;
508 else if ( sipCpp->type() == QgsProcessingParameterVectorLayer::typeName() )
509 sipType = sipType_QgsProcessingParameterVectorLayer;
510 else if ( sipCpp->type() == QgsProcessingParameterField::typeName() )
511 sipType = sipType_QgsProcessingParameterField;
512 else if ( sipCpp->type() == QgsProcessingParameterFeatureSource::typeName() )
513 sipType = sipType_QgsProcessingParameterFeatureSource;
514 else if ( sipCpp->type() == QgsProcessingParameterFeatureSink::typeName() )
515 sipType = sipType_QgsProcessingParameterFeatureSink;
516 else if ( sipCpp->type() == QgsProcessingParameterVectorDestination::typeName() )
517 sipType = sipType_QgsProcessingParameterVectorDestination;
518 else if ( sipCpp->type() == QgsProcessingParameterRasterDestination::typeName() )
519 sipType = sipType_QgsProcessingParameterRasterDestination;
520 else if ( sipCpp->type() == QgsProcessingParameterPointCloudDestination::typeName() )
521 sipType = sipType_QgsProcessingParameterPointCloudDestination;
522 else if ( sipCpp->type() == QgsProcessingParameterFileDestination::typeName() )
523 sipType = sipType_QgsProcessingParameterFileDestination;
524 else if ( sipCpp->type() == QgsProcessingParameterFolderDestination::typeName() )
525 sipType = sipType_QgsProcessingParameterFolderDestination;
526 else if ( sipCpp->type() == QgsProcessingParameterBand::typeName() )
527 sipType = sipType_QgsProcessingParameterBand;
528 else if ( sipCpp->type() == QgsProcessingParameterLayout::typeName() )
529 sipType = sipType_QgsProcessingParameterLayout;
530 else if ( sipCpp->type() == QgsProcessingParameterLayoutItem::typeName() )
531 sipType = sipType_QgsProcessingParameterLayoutItem;
532 else if ( sipCpp->type() == QgsProcessingParameterColor::typeName() )
533 sipType = sipType_QgsProcessingParameterColor;
534 else if ( sipCpp->type() == QgsProcessingParameterCoordinateOperation::typeName() )
535 sipType = sipType_QgsProcessingParameterCoordinateOperation;
536 else if ( sipCpp->type() == QgsProcessingParameterMapTheme::typeName() )
537 sipType = sipType_QgsProcessingParameterMapTheme;
538 else if ( sipCpp->type() == QgsProcessingParameterDateTime::typeName() )
539 sipType = sipType_QgsProcessingParameterDateTime;
540 else if ( sipCpp->type() == QgsProcessingParameterProviderConnection::typeName() )
541 sipType = sipType_QgsProcessingParameterProviderConnection;
542 else if ( sipCpp->type() == QgsProcessingParameterDatabaseSchema::typeName() )
543 sipType = sipType_QgsProcessingParameterDatabaseSchema;
544 else if ( sipCpp->type() == QgsProcessingParameterDatabaseTable::typeName() )
545 sipType = sipType_QgsProcessingParameterDatabaseTable;
546 else if ( sipCpp->type() == QgsProcessingParameterFieldMapping::typeName() )
547 sipType = sipType_QgsProcessingParameterFieldMapping;
548 else if ( sipCpp->type() == QgsProcessingParameterTinInputLayers::typeName() )
549 sipType = sipType_QgsProcessingParameterTinInputLayers;
550 else if ( sipCpp->type() == QgsProcessingParameterVectorTileWriterLayers::typeName() )
551 sipType = sipType_QgsProcessingParameterVectorTileWriterLayers;
552 else if ( sipCpp->type() == QgsProcessingParameterDxfLayers::typeName() )
553 sipType = sipType_QgsProcessingParameterDxfLayers;
554 else if ( sipCpp->type() == QgsProcessingParameterMeshDatasetGroups::typeName() )
555 sipType = sipType_QgsProcessingParameterMeshDatasetGroups;
556 else if ( sipCpp->type() == QgsProcessingParameterMeshDatasetTime::typeName() )
557 sipType = sipType_QgsProcessingParameterMeshDatasetTime;
558 else if ( sipCpp->type() == QgsProcessingParameterPointCloudLayer::typeName() )
559 sipType = sipType_QgsProcessingParameterPointCloudLayer;
560 else if ( sipCpp->type() == QgsProcessingParameterAnnotationLayer::typeName() )
561 sipType = sipType_QgsProcessingParameterAnnotationLayer;
562 else if ( sipCpp->type() == QgsProcessingParameterPointCloudAttribute::typeName() )
563 sipType = sipType_QgsProcessingParameterPointCloudAttribute;
564 else if ( sipCpp->type() == QgsProcessingParameterVectorTileDestination::typeName() )
565 sipType = sipType_QgsProcessingParameterVectorTileDestination;
566 else
567 sipType = nullptr;
568 SIP_END
569#endif
570
571 public:
572
576 QgsProcessingParameterDefinition( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
577 bool optional = false, const QString &help = QString() );
578
580
588 virtual QColor modelColor() const;
589
596 virtual QString userFriendlyString( const QVariant &value ) const;
597
602
606 virtual QString type() const = 0;
607
613 virtual bool isDestination() const { return false; }
614
620 QString name() const { return mName; }
621
627 void setName( const QString &name ) { mName = name; }
628
634 QString description() const { return mDescription; }
635
642
652 QString help() const { return mHelp; }
653
663 void setHelp( const QString &help ) { mHelp = help; }
664
671 QVariant defaultValue() const { return mDefault; }
672
679 void setDefaultValue( const QVariant &value ) { mDefault = value; }
680
693 QVariant guiDefaultValueOverride() const;
694
710 void setGuiDefaultValueOverride( const QVariant &value ) { mGuiDefault = value; }
711
720 QVariant defaultValueForGui() const;
721
727
733
741 virtual bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const;
742
750 virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
751
763 virtual QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const;
764
778 virtual QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const;
779
793 virtual QStringList valueAsStringList( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const;
794
800 virtual QString valueAsPythonComment( const QVariant &value, QgsProcessingContext &context ) const;
801
806 virtual QString asScriptCode() const;
807
818
824 virtual QVariantMap toVariantMap() const;
825
831 virtual bool fromVariantMap( const QVariantMap &map );
832
839 SIP_SKIP QVariantMap metadata() const { return mMetadata; }
840
846 QVariantMap &metadata() { return mMetadata; }
847
853 void setMetadata( const QVariantMap &metadata ) { mMetadata = metadata; }
854
859 virtual QStringList dependsOnOtherParameters() const { return QStringList(); }
860
867
873 QgsProcessingProvider *provider() const;
874
879 virtual QString toolTip() const;
880
888 bool isDynamic() const { return mIsDynamic; }
889
897 void setIsDynamic( bool dynamic ) { mIsDynamic = dynamic; }
898
906
914
927
940
955
973 void setAdditionalExpressionContextVariables( const QStringList &variables ) { mAdditionalExpressionVariables = variables; }
974
975#ifndef SIP_RUN
976
984 enum class ValueAsStringFlag : int
985 {
986 AllowMapLayerValues = 1 << 0,
987 };
989#endif
990
991 protected:
992
993#ifndef SIP_RUN
994
1001 QString valueAsStringPrivate( const QVariant &value, QgsProcessingContext &context, bool &ok, ValueAsStringFlags flags ) const;
1002
1009 QVariant valueAsJsonObjectPrivate( const QVariant &value, QgsProcessingContext &context, ValueAsStringFlags flags ) const;
1010#endif
1011
1018 QVariant defaultGuiValueFromSetting() const;
1019
1021 QString mName;
1022
1025
1027 QString mHelp;
1028
1030 QVariant mDefault;
1031
1033 QVariant mGuiDefault;
1034
1037
1039 QVariantMap mMetadata;
1040
1043
1045 bool mIsDynamic = false;
1046
1049
1052
1055
1056 // To allow access to mAlgorithm. We don't want a public setter for this!
1058
1059};
1060
1061#ifndef SIP_RUN
1063#endif
1064
1066typedef QList< const QgsProcessingParameterDefinition * > QgsProcessingParameterDefinitions;
1067
1084
1086{
1087
1088 public:
1089
1094 static bool isDynamic( const QVariantMap &parameters, const QString &name );
1095
1099 static QString parameterAsString( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1100
1105 static QString parameterAsString( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1106
1110 static QString parameterAsExpression( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1111
1116 static QString parameterAsExpression( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1117
1121 static double parameterAsDouble( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1122
1127 static double parameterAsDouble( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1128
1132 static int parameterAsInt( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1133
1138 static int parameterAsInt( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1139
1144 static QList<int> parameterAsInts( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1145
1150 static QList<int> parameterAsInts( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1151
1160 static QDateTime parameterAsDateTime( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1161
1170 static QDateTime parameterAsDateTime( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1171
1180 static QDate parameterAsDate( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1181
1190 static QDate parameterAsDate( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1191
1200 static QTime parameterAsTime( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1201
1210 static QTime parameterAsTime( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1211
1215 static int parameterAsEnum( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1216
1221 static int parameterAsEnum( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1222
1226 static QList<int> parameterAsEnums( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1227
1232 static QList<int> parameterAsEnums( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1233
1238 static QString parameterAsEnumString( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1239
1244 static QString parameterAsEnumString( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1245
1250 static QStringList parameterAsEnumStrings( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1251
1256 static QStringList parameterAsEnumStrings( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1257
1261 static bool parameterAsBool( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1262
1268 static bool parameterAsBoolean( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1269
1274 static bool parameterAsBool( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1275
1280 static bool parameterAsBoolean( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1281
1299 static QgsFeatureSink *parameterAsSink( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters,
1300 const QgsFields &fields, Qgis::WkbType geometryType, const QgsCoordinateReferenceSystem &crs,
1301 QgsProcessingContext &context, QString &destinationIdentifier SIP_OUT, QgsFeatureSink::SinkFlags sinkFlags = QgsFeatureSink::SinkFlags(), const QVariantMap &createOptions = QVariantMap(), const QStringList &datasourceOptions = QStringList(), const QStringList &layerOptions = QStringList() ) SIP_FACTORY;
1302
1322 static QgsFeatureSink *parameterAsSink( const QgsProcessingParameterDefinition *definition, const QVariant &value,
1323 const QgsFields &fields, Qgis::WkbType geometryType, const QgsCoordinateReferenceSystem &crs,
1324 QgsProcessingContext &context, QString &destinationIdentifier SIP_OUT, QgsFeatureSink::SinkFlags sinkFlags = QgsFeatureSink::SinkFlags(), const QVariantMap &createOptions = QVariantMap(), const QStringList &datasourceOptions = QStringList(), const QStringList &layerOptions = QStringList() ) SIP_THROW( QgsProcessingException ) SIP_FACTORY;
1325
1334 static QgsProcessingFeatureSource *parameterAsSource( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context ) SIP_FACTORY;
1335
1346 static QgsProcessingFeatureSource *parameterAsSource( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context ) SIP_FACTORY;
1347
1363 static QString parameterAsCompatibleSourceLayerPath( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters,
1364 QgsProcessingContext &context, const QStringList &compatibleFormats, const QString &preferredFormat = QString( "shp" ), QgsProcessingFeedback *feedback = nullptr );
1365
1395 static QString parameterAsCompatibleSourceLayerPathAndLayerName( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters,
1396 QgsProcessingContext &context, const QStringList &compatibleFormats, const QString &preferredFormat = QString( "shp" ), QgsProcessingFeedback *feedback = nullptr, QString *layerName SIP_OUT = nullptr );
1397
1406
1417
1425 static QgsRasterLayer *parameterAsRasterLayer( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1426
1436 static QgsRasterLayer *parameterAsRasterLayer( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1437
1441 static QString parameterAsOutputLayer( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1442
1451 static QString parameterAsOutputLayer( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context, bool testOnly = false );
1452
1460 static QString parameterAsOutputFormat( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1461
1465 static QString parameterAsFileOutput( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1466
1471 static QString parameterAsFileOutput( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1472
1480 static QgsVectorLayer *parameterAsVectorLayer( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1481
1491 static QgsVectorLayer *parameterAsVectorLayer( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1492
1502 static QgsMeshLayer *parameterAsMeshLayer( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1503
1513 static QgsMeshLayer *parameterAsMeshLayer( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1514
1518 static QgsCoordinateReferenceSystem parameterAsCrs( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1519
1524 static QgsCoordinateReferenceSystem parameterAsCrs( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1525
1535 static QgsRectangle parameterAsExtent( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context,
1537
1549 static QgsRectangle parameterAsExtent( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context,
1551
1563 static QgsGeometry parameterAsExtentGeometry( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context,
1565
1571 static QgsCoordinateReferenceSystem parameterAsExtentCrs( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1572
1578 static QgsCoordinateReferenceSystem parameterAsExtentCrs( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1579
1580
1588 static QgsPointXY parameterAsPoint( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context,
1590
1599 static QgsPointXY parameterAsPoint( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context,
1601
1607 static QgsCoordinateReferenceSystem parameterAsPointCrs( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1608
1615 static QgsCoordinateReferenceSystem parameterAsPointCrs( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1616
1622 static QgsGeometry parameterAsGeometry( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, const QgsCoordinateReferenceSystem &crs = QgsCoordinateReferenceSystem() );
1623
1630
1637 static QgsCoordinateReferenceSystem parameterAsGeometryCrs( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1638
1645 static QgsCoordinateReferenceSystem parameterAsGeometryCrs( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1646
1650 static QString parameterAsFile( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1651
1656 static QString parameterAsFile( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1657
1662 static QVariantList parameterAsMatrix( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1663
1669 static QVariantList parameterAsMatrix( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1670
1675 static QList< QgsMapLayer *> parameterAsLayerList( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, QgsProcessing::LayerOptionsFlags flags = QgsProcessing::LayerOptionsFlags() );
1676
1682 static QList< QgsMapLayer *> parameterAsLayerList( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context, QgsProcessing::LayerOptionsFlags flags = QgsProcessing::LayerOptionsFlags() );
1683
1689 static QStringList parameterAsFileList( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1690
1696 static QStringList parameterAsFileList( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1697
1701 static QList<double> parameterAsRange( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1702
1707 static QList<double> parameterAsRange( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1708
1714 Q_DECL_DEPRECATED static QStringList parameterAsFields( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context ) SIP_DEPRECATED;
1715
1722 Q_DECL_DEPRECATED static QStringList parameterAsFields( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context ) SIP_DEPRECATED;
1723
1729 static QStringList parameterAsStrings( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1730
1736 static QStringList parameterAsStrings( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1737
1746 static QgsPrintLayout *parameterAsLayout( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1747
1756 static QgsPrintLayout *parameterAsLayout( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1757
1766 static QgsLayoutItem *parameterAsLayoutItem( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, QgsPrintLayout *layout );
1767
1776 static QgsLayoutItem *parameterAsLayoutItem( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context, QgsPrintLayout *layout );
1777
1783 static QColor parameterAsColor( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1784
1790 static QColor parameterAsColor( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1791
1797 static QString parameterAsConnectionName( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1798
1804 static QString parameterAsConnectionName( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1805
1811 static QString parameterAsSchema( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1812
1818 static QString parameterAsSchema( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1819
1825 static QString parameterAsDatabaseTableName( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1826
1832 static QString parameterAsDatabaseTableName( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1833
1845
1857
1871 static QgsAnnotationLayer *parameterAsAnnotationLayer( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1872
1886 static QgsAnnotationLayer *parameterAsAnnotationLayer( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1887
1894
1898 static QString descriptionFromName( const QString &name );
1899
1906
1907 private:
1908
1909 static bool parseScriptCodeParameterOptions( const QString &code, bool &isOptional, QString &name, QString &type, QString &definition );
1910};
1911
1912
1913
1920{
1921 public:
1922
1926 QgsProcessingParameterBoolean( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
1927 bool optional = false );
1928
1932 static QString typeName() { return u"boolean"_s; }
1933 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
1934 QString type() const override { return typeName(); }
1935 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
1936 QString asScriptCode() const override;
1937
1941 static QgsProcessingParameterBoolean *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
1942};
1943
1950{
1951 public:
1952
1956 QgsProcessingParameterCrs( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
1957 bool optional = false );
1958
1959 QString userFriendlyString( const QVariant &value ) const override;
1960
1964 static QString typeName() { return u"crs"_s; }
1965 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
1966 QString type() const override { return typeName(); }
1967 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
1968 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
1969 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
1970 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
1971
1975 static QgsProcessingParameterCrs *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
1976
1977};
1978
1985{
1986 public:
1987
1991 QgsProcessingParameterExtent( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
1992 bool optional = false );
1993
1997 static QString typeName() { return u"extent"_s; }
1998 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
1999 QString type() const override { return typeName(); }
2000 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2001 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
2002 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
2003 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
2004
2008 static QgsProcessingParameterExtent *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
2009
2010 private:
2011
2017 static bool variantIsValidStringForExtent( const QVariant &value );
2018
2019};
2020
2021
2028{
2029 public:
2030
2034 QgsProcessingParameterPoint( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
2035 bool optional = false );
2036
2040 static QString typeName() { return u"point"_s; }
2041 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2042 QString type() const override { return typeName(); }
2043 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2044 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
2045
2049 static QgsProcessingParameterPoint *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
2050
2051};
2052
2060{
2061 public:
2062
2070 QgsProcessingParameterGeometry( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false, const QList< int > &geometryTypes = QList< int >(), bool allowMultipart = true );
2071
2075 static QString typeName() { return u"geometry"_s; }
2076 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2077 QString type() const override { return typeName(); }
2078 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2079 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
2080 QString asScriptCode() const override;
2082 QVariantMap toVariantMap() const override;
2083 bool fromVariantMap( const QVariantMap &map ) override;
2084
2089 QList<int> geometryTypes() const { return mGeomTypes; }
2090
2095 void setGeometryTypes( const QList<int> &geometryTypes ) { mGeomTypes = geometryTypes; }
2096
2101 bool allowMultipart() const { return mAllowMultipart; }
2102
2107 void setAllowMultipart( bool allowMultipart ) { mAllowMultipart = allowMultipart; }
2108
2109 QString userFriendlyString( const QVariant &value ) const override;
2110
2114 static QgsProcessingParameterGeometry *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
2115
2116 private:
2117
2118 QList<int> mGeomTypes;
2119 bool mAllowMultipart;
2120
2121};
2122
2129{
2130 public:
2131
2139 QgsProcessingParameterFile( const QString &name, const QString &description = QString(), Qgis::ProcessingFileParameterBehavior behavior = Qgis::ProcessingFileParameterBehavior::File, const QString &extension = QString(), const QVariant &defaultValue = QVariant(),
2140 bool optional = false, const QString &fileFilter = QString() );
2141
2145 static QString typeName() { return u"file"_s; }
2146 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2147 QString type() const override { return typeName(); }
2148 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2149 QString asScriptCode() const override;
2151 QString createFileFilter() const override;
2152
2158
2164
2172 QString extension() const { return mExtension; }
2173
2183 void setExtension( const QString &extension );
2184
2191 QString fileFilter() const;
2192
2202 void setFileFilter( const QString &filter );
2203
2204 QVariantMap toVariantMap() const override;
2205 bool fromVariantMap( const QVariantMap &map ) override;
2206
2210 static QgsProcessingParameterFile *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition, Qgis::ProcessingFileParameterBehavior behavior = Qgis::ProcessingFileParameterBehavior::File ) SIP_FACTORY;
2211
2212 private:
2213
2215 QString mExtension;
2216 QString mFileFilter;
2217};
2218
2225{
2226 public:
2227
2231 QgsProcessingParameterMatrix( const QString &name, const QString &description = QString(), int numberRows = 3,
2232 bool hasFixedNumberRows = false, const QStringList &headers = QStringList(),
2233 const QVariant &defaultValue = QVariant(),
2234 bool optional = false );
2235
2239 static QString typeName() { return u"matrix"_s; }
2240
2241 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2242 QString type() const override { return typeName(); }
2243 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2244 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
2246
2251 QStringList headers() const;
2252
2257 void setHeaders( const QStringList &headers );
2258
2265 int numberRows() const;
2266
2273 void setNumberRows( int rows );
2274
2280 bool hasFixedNumberRows() const;
2281
2287 void setHasFixedNumberRows( bool hasFixedNumberRows );
2288
2289 QVariantMap toVariantMap() const override;
2290 bool fromVariantMap( const QVariantMap &map ) override;
2291
2295 static QgsProcessingParameterMatrix *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
2296
2297 private:
2298
2299 QStringList mHeaders;
2300 int mNumberRows = 3;
2301 bool mFixedNumberRows = false;
2302
2303};
2304
2311{
2312 public:
2313
2318 const QVariant &defaultValue = QVariant(),
2319 bool optional = false );
2320
2324 static QString typeName() { return u"multilayer"_s; }
2325 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2326 QString type() const override { return typeName(); }
2327 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2328 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
2329 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
2330 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
2331 QString asScriptCode() const override;
2333 QString createFileFilter() const override;
2334
2339 Qgis::ProcessingSourceType layerType() const;
2340
2345 void setLayerType( Qgis::ProcessingSourceType type );
2346
2352 int minimumNumberInputs() const;
2353
2359 void setMinimumNumberInputs( int minimum );
2360
2361 QVariantMap toVariantMap() const override;
2362 bool fromVariantMap( const QVariantMap &map ) override;
2363
2367 static QgsProcessingParameterMultipleLayers *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
2368
2369 private:
2370
2372 int mMinimumNumberInputs = 0;
2373
2374};
2375
2394{
2395 public:
2396
2400 explicit QgsProcessingParameterNumber( const QString &name, const QString &description = QString(),
2402 const QVariant &defaultValue = QVariant(),
2403 bool optional = false,
2404 double minValue = std::numeric_limits<double>::lowest() + 1,
2405 double maxValue = std::numeric_limits<double>::max()
2406 );
2407
2411 static QString typeName() { return u"number"_s; }
2412
2413 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2414 QString type() const override { return typeName(); }
2415 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2416 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
2417 QString toolTip() const override;
2419
2424 double minimum() const;
2425
2430 void setMinimum( double minimum );
2431
2436 double maximum() const;
2437
2442 void setMaximum( double maximum );
2443
2448 Qgis::ProcessingNumberParameterType dataType() const;
2449
2454 void setDataType( Qgis::ProcessingNumberParameterType type );
2455
2456 QVariantMap toVariantMap() const override;
2457 bool fromVariantMap( const QVariantMap &map ) override;
2458
2462 static QgsProcessingParameterNumber *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
2463
2464 private:
2465
2466 double mMin = std::numeric_limits<double>::lowest() + 1;
2467 double mMax = std::numeric_limits<double>::max();
2469};
2470
2493{
2494 public:
2495
2499 explicit QgsProcessingParameterDistance( const QString &name, const QString &description = QString(),
2500 const QVariant &defaultValue = QVariant(),
2501 const QString &parentParameterName = QString(),
2502 bool optional = false,
2503 double minValue = std::numeric_limits<double>::lowest() + 1,
2504 double maxValue = std::numeric_limits<double>::max() );
2505
2509 static QString typeName() { return u"distance"_s; } // cppcheck-suppress duplInheritedMember
2510
2511 QString userFriendlyString( const QVariant &value ) const override;
2512
2513 QgsProcessingParameterDistance *clone() const override SIP_FACTORY;
2514
2515 QString type() const override;
2516 QStringList dependsOnOtherParameters() const override;
2517 QString asPythonString( QgsProcessing::PythonOutputType outputType = QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
2518
2523 QString parentParameterName() const;
2524
2529 void setParentParameterName( const QString &parentParameterName );
2530
2537 Qgis::DistanceUnit defaultUnit() const { return mDefaultUnit; }
2538
2545 void setDefaultUnit( Qgis::DistanceUnit unit ) { mDefaultUnit = unit; }
2546
2547 QVariantMap toVariantMap() const override;
2548 bool fromVariantMap( const QVariantMap &map ) override;
2549
2550 private:
2551
2552 QString mParentParameterName;
2554
2555};
2556
2557
2580{
2581 public:
2582
2586 explicit QgsProcessingParameterArea( const QString &name, const QString &description = QString(),
2587 const QVariant &defaultValue = QVariant(),
2588 const QString &parentParameterName = QString(),
2589 bool optional = false,
2590 double minValue = 0,
2591 double maxValue = std::numeric_limits<double>::max() );
2592
2596 static QString typeName() { return u"area"_s; } // cppcheck-suppress duplInheritedMember
2597
2598 QgsProcessingParameterArea *clone() const override SIP_FACTORY;
2599
2600 QString type() const override;
2601 QStringList dependsOnOtherParameters() const override;
2602 QString asPythonString( QgsProcessing::PythonOutputType outputType = QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
2603
2608 QString parentParameterName() const;
2609
2614 void setParentParameterName( const QString &parentParameterName );
2615
2621 Qgis::AreaUnit defaultUnit() const { return mDefaultUnit; }
2622
2628 void setDefaultUnit( Qgis::AreaUnit unit ) { mDefaultUnit = unit; }
2629
2630 QVariantMap toVariantMap() const override;
2631 bool fromVariantMap( const QVariantMap &map ) override;
2632 QString userFriendlyString( const QVariant &value ) const override;
2633
2634 private:
2635
2636 QString mParentParameterName;
2638
2639};
2640
2641
2664{
2665 public:
2666
2670 explicit QgsProcessingParameterVolume( const QString &name, const QString &description = QString(),
2671 const QVariant &defaultValue = QVariant(),
2672 const QString &parentParameterName = QString(),
2673 bool optional = false,
2674 double minValue = 0,
2675 double maxValue = std::numeric_limits<double>::max() );
2676
2680 static QString typeName() { return u"volume"_s; } // cppcheck-suppress duplInheritedMember
2681
2682 QgsProcessingParameterVolume *clone() const override SIP_FACTORY;
2683
2684 QString type() const override;
2685 QStringList dependsOnOtherParameters() const override;
2686 QString asPythonString( QgsProcessing::PythonOutputType outputType = QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
2687
2692 QString parentParameterName() const;
2693
2698 void setParentParameterName( const QString &parentParameterName );
2699
2705 Qgis::VolumeUnit defaultUnit() const { return mDefaultUnit; }
2706
2712 void setDefaultUnit( Qgis::VolumeUnit unit ) { mDefaultUnit = unit; }
2713
2714 QVariantMap toVariantMap() const override;
2715 bool fromVariantMap( const QVariantMap &map ) override;
2716 QString userFriendlyString( const QVariant &value ) const override;
2717
2718 private:
2719
2720 QString mParentParameterName;
2722
2723};
2724
2725
2735{
2736 public:
2737
2741 explicit QgsProcessingParameterDuration( const QString &name, const QString &description = QString(),
2742 const QVariant &defaultValue = QVariant(),
2743 bool optional = false,
2744 double minValue = std::numeric_limits<double>::lowest() + 1,
2745 double maxValue = std::numeric_limits<double>::max() );
2746
2750 static QString typeName() { return u"duration"_s; } // cppcheck-suppress duplInheritedMember
2751
2752 QgsProcessingParameterDuration *clone() const override SIP_FACTORY;
2753
2754 QString type() const override;
2755 QString asPythonString( QgsProcessing::PythonOutputType outputType = QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
2756
2762 Qgis::TemporalUnit defaultUnit() const { return mDefaultUnit; }
2763
2769 void setDefaultUnit( Qgis::TemporalUnit unit ) { mDefaultUnit = unit; }
2770
2771 QVariantMap toVariantMap() const override;
2772 bool fromVariantMap( const QVariantMap &map ) override;
2773 QString userFriendlyString( const QVariant &value ) const override;
2774
2775 private:
2776
2778
2779};
2780
2792{
2793 public:
2794
2798 explicit QgsProcessingParameterScale( const QString &name, const QString &description = QString(),
2799 const QVariant &defaultValue = QVariant(),
2800 bool optional = false );
2801
2805 static QString typeName() { return u"scale"_s; } // cppcheck-suppress duplInheritedMember
2806
2807 QgsProcessingParameterScale *clone() const override SIP_FACTORY;
2808
2809 QString type() const override;
2810 QString asPythonString( QgsProcessing::PythonOutputType outputType = QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
2811
2815 static QgsProcessingParameterScale *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY; // cppcheck-suppress duplInheritedMember
2816
2817};
2818
2825{
2826 public:
2827
2831 QgsProcessingParameterRange( const QString &name, const QString &description = QString(),
2833 const QVariant &defaultValue = QVariant(),
2834 bool optional = false );
2835
2839 static QString typeName() { return u"range"_s; }
2840
2841 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2842 QString type() const override { return typeName(); }
2843 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2844 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
2846
2851 Qgis::ProcessingNumberParameterType dataType() const;
2852
2857 void setDataType( Qgis::ProcessingNumberParameterType dataType );
2858
2859 QVariantMap toVariantMap() const override;
2860 bool fromVariantMap( const QVariantMap &map ) override;
2861
2865 static QgsProcessingParameterRange *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
2866
2867 private:
2868
2870};
2871
2878{
2879 public:
2880
2884 QgsProcessingParameterRasterLayer( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
2885 bool optional = false );
2886
2890 static QString typeName() { return u"raster"_s; }
2891 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2892 QString type() const override { return typeName(); }
2893 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2894 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
2895 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
2896 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
2897 QString createFileFilter() const override;
2898
2902 static QgsProcessingParameterRasterLayer *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
2903
2910 void setParameterCapabilities( Qgis::RasterProcessingParameterCapabilities capabilities );
2911
2916 Qgis::RasterProcessingParameterCapabilities parameterCapabilities() const;
2917
2918 private:
2920};
2921
2940{
2941 public:
2942
2946 QgsProcessingParameterEnum( const QString &name, const QString &description = QString(), const QStringList &options = QStringList(),
2947 bool allowMultiple = false,
2948 const QVariant &defaultValue = QVariant(),
2949 bool optional = false,
2950 bool usesStaticStrings = false );
2951
2952 QString userFriendlyString( const QVariant &value ) const override;
2953
2957 static QString typeName() { return u"enum"_s; }
2958 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2959 QString type() const override { return typeName(); }
2960 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2961 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
2962 QString valueAsPythonComment( const QVariant &value, QgsProcessingContext &context ) const override;
2963 QString asScriptCode() const override;
2965
2970 QStringList options() const;
2971
2976 void setOptions( const QStringList &options );
2977
2982 bool allowMultiple() const;
2983
2988 void setAllowMultiple( bool allowMultiple );
2989
2996 bool usesStaticStrings() const;
2997
3004 void setUsesStaticStrings( bool usesStaticStrings );
3005
3006 QVariantMap toVariantMap() const override;
3007 bool fromVariantMap( const QVariantMap &map ) override;
3008
3012 static QgsProcessingParameterEnum *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3013
3014 private:
3015
3016 QStringList mOptions;
3017 bool mAllowMultiple = false;
3018 bool mUsesStaticStrings = false;
3019};
3020
3048{
3049 public:
3050
3054 QgsProcessingParameterString( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
3055 bool multiLine = false,
3056 bool optional = false );
3057
3061 static QString typeName() { return u"string"_s; }
3062 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3063 QString type() const override { return typeName(); }
3064 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3065 QString asScriptCode() const override;
3067
3072 bool multiLine() const;
3073
3078 void setMultiLine( bool multiLine );
3079
3080 QVariantMap toVariantMap() const override;
3081 bool fromVariantMap( const QVariantMap &map ) override;
3082
3086 static QgsProcessingParameterString *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3087
3088 private:
3089
3090 bool mMultiLine = false;
3091
3092};
3093
3094
3108{
3109 public:
3110
3114 QgsProcessingParameterAuthConfig( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
3115 bool optional = false );
3116
3120 static QString typeName() { return u"authcfg"_s; }
3121 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3122 QString type() const override { return typeName(); }
3123 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3124 QString asScriptCode() const override;
3125
3129 static QgsProcessingParameterAuthConfig *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3130
3131};
3132
3139{
3140 public:
3141
3145 QgsProcessingParameterExpression( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
3146 const QString &parentLayerParameterName = QString(),
3147 bool optional = false, Qgis::ExpressionType type = Qgis::ExpressionType::Qgis );
3148
3152 static QString typeName() { return u"expression"_s; }
3153 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3154 QString type() const override { return typeName(); }
3155 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3156 QStringList dependsOnOtherParameters() const override;
3158
3163 QString parentLayerParameterName() const;
3164
3169 void setParentLayerParameterName( const QString &parentLayerParameterName );
3170
3177 Qgis::ExpressionType expressionType() const;
3178
3185 void setExpressionType( Qgis::ExpressionType type );
3186
3187 QVariantMap toVariantMap() const override;
3188 bool fromVariantMap( const QVariantMap &map ) override;
3189
3193 static QgsProcessingParameterExpression *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3194
3195 private:
3196
3197 QString mParentLayerParameterName;
3199};
3200
3201
3208{
3209 public:
3210
3214 QgsProcessingParameterLimitedDataTypes( const QList< int > &types = QList< int >() );
3215
3220 QList< int > dataTypes() const;
3221
3226 void setDataTypes( const QList< int > &types );
3227
3228 protected:
3229
3231 QList< int > mDataTypes;
3232};
3233
3242{
3243 public:
3244
3249 const QString &description = QString(),
3250 const QList< int > &types = QList< int >(),
3251 const QVariant &defaultValue = QVariant(),
3252 bool optional = false );
3253
3257 static QString typeName() { return u"vector"_s; }
3258 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3259 QString type() const override { return typeName(); }
3260 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3261 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3262 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
3263 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
3265 QString createFileFilter() const override;
3266
3267 QVariantMap toVariantMap() const override;
3268 bool fromVariantMap( const QVariantMap &map ) override;
3269
3273 static QgsProcessingParameterVectorLayer *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3274
3275};
3276
3284{
3285 public:
3286
3290 QgsProcessingParameterMeshLayer( const QString &name,
3291 const QString &description = QString(),
3292 const QVariant &defaultValue = QVariant(),
3293 bool optional = false );
3294
3298 static QString typeName() { return u"mesh"_s; }
3299 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3300 QString type() const override { return typeName(); }
3301 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3302 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3303 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
3304 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
3305 QString createFileFilter() const override;
3306
3310 static QgsProcessingParameterMeshLayer *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3311};
3312
3319{
3320 public:
3321
3325 QgsProcessingParameterMapLayer( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
3326 bool optional = false,
3327 const QList< int > &types = QList< int >() );
3328
3332 static QString typeName() { return u"layer"_s; }
3333 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3334 QString type() const override { return typeName(); }
3335 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3336 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3337 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
3338 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
3339 QString asScriptCode() const override;
3341 QString createFileFilter() const override;
3342
3343 QVariantMap toVariantMap() const override;
3344 bool fromVariantMap( const QVariantMap &map ) override;
3345
3349 static QgsProcessingParameterMapLayer *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3350
3351};
3352
3359{
3360 public:
3361
3365 QgsProcessingParameterField( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
3366 const QString &parentLayerParameterName = QString(),
3368 bool allowMultiple = false,
3369 bool optional = false,
3370 bool defaultToAllFields = false );
3371
3375 static QString typeName() { return u"field"_s; }
3376 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3377 QString type() const override { return typeName(); }
3378 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3379 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3380 QString asScriptCode() const override;
3382 QStringList dependsOnOtherParameters() const override;
3383
3388 QString parentLayerParameterName() const;
3389
3394 void setParentLayerParameterName( const QString &parentLayerParameterName );
3395
3401
3406 void setDataType( Qgis::ProcessingFieldParameterDataType type );
3407
3412 bool allowMultiple() const;
3413
3418 void setAllowMultiple( bool allowMultiple );
3419
3429 bool defaultToAllFields() const;
3430
3440 void setDefaultToAllFields( bool enabled );
3441
3442 QVariantMap toVariantMap() const override;
3443 bool fromVariantMap( const QVariantMap &map ) override;
3444
3448 static QgsProcessingParameterField *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3449
3450 private:
3451
3452 QString mParentLayerParameterName;
3454 bool mAllowMultiple = false;
3455 bool mDefaultToAllFields = false;
3456
3457};
3458
3459
3466{
3467 public:
3468
3472 QgsProcessingParameterFeatureSource( const QString &name, const QString &description = QString(),
3473 const QList< int > &types = QList< int >(),
3474 const QVariant &defaultValue = QVariant(), bool optional = false );
3475
3479 static QString typeName() { return u"source"_s; }
3480 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3481 QString type() const override { return typeName(); }
3482 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3483 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3484 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
3485 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
3486 QString asScriptCode() const override;
3488 QString createFileFilter() const override;
3489
3490 QVariantMap toVariantMap() const override;
3491 bool fromVariantMap( const QVariantMap &map ) override;
3492
3496 static QgsProcessingParameterFeatureSource *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3497
3498};
3499
3507{
3508 public:
3509
3516 QgsProcessingDestinationParameter( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
3517 bool optional = false, bool createByDefault = true );
3518
3519 bool isDestination() const override { return true; }
3520 QVariantMap toVariantMap() const override;
3521 bool fromVariantMap( const QVariantMap &map ) override;
3523 QString createFileFilter() const override;
3524
3530
3536 bool supportsNonFileBasedOutput() const { return mSupportsNonFileBasedOutputs; }
3537
3544
3549 virtual QString defaultFileExtension() const = 0;
3550
3556 virtual QString generateTemporaryDestination( const QgsProcessingContext *context = nullptr ) const;
3557
3572 virtual bool isSupportedOutputValue( const QVariant &value, QgsProcessingContext &context, QString &error SIP_OUT ) const;
3573
3579 bool createByDefault() const;
3580
3587
3588 protected:
3589
3598 QgsProcessingProvider *originalProvider() const { return mOriginalProvider; }
3599
3600 private:
3601
3609 QgsProcessingProvider *mOriginalProvider = nullptr;
3610
3611 bool mSupportsNonFileBasedOutputs = true;
3612 bool mCreateByDefault = true;
3613
3615 friend class TestQgsProcessing;
3617};
3618
3619
3628{
3629 public:
3630
3637 QgsProcessingParameterFeatureSink( const QString &name, const QString &description = QString(), Qgis::ProcessingSourceType type = Qgis::ProcessingSourceType::VectorAnyGeometry, const QVariant &defaultValue = QVariant(),
3638 bool optional = false, bool createByDefault = true, bool supportsAppend = false );
3639
3643 static QString typeName() { return u"sink"_s; }
3644 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3645 QString type() const override { return typeName(); }
3646 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3647 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3648 QString asScriptCode() const override;
3649 QgsProcessingOutputDefinition *toOutputDefinition() const override SIP_FACTORY;
3650 QString defaultFileExtension() const override;
3651 QString asPythonString( QgsProcessing::PythonOutputType outputType = QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
3652 QString createFileFilter() const override;
3653
3659 virtual QStringList supportedOutputVectorLayerExtensions() const;
3660
3665 Qgis::ProcessingSourceType dataType() const;
3666
3671 bool hasGeometry() const;
3672
3677 void setDataType( Qgis::ProcessingSourceType type );
3678
3687 bool supportsAppend() const;
3688
3697 void setSupportsAppend( bool supportsAppend );
3698
3699 QVariantMap toVariantMap() const override;
3700 bool fromVariantMap( const QVariantMap &map ) override;
3701 QString generateTemporaryDestination( const QgsProcessingContext *context = nullptr ) const override;
3702
3706 static QgsProcessingParameterFeatureSink *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3707
3708 private:
3709
3710 Qgis::ProcessingSourceType mDataType = Qgis::ProcessingSourceType::VectorAnyGeometry;
3711 bool mSupportsAppend = false;
3712};
3713
3714
3725{
3726 public:
3727
3735 bool optional = false, bool createByDefault = true );
3736
3740 static QString typeName() { return u"vectorDestination"_s; }
3741 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3742 QString type() const override { return typeName(); }
3743 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3744 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3745 QString asScriptCode() const override;
3746 QgsProcessingOutputDefinition *toOutputDefinition() const override SIP_FACTORY;
3747 QString defaultFileExtension() const override;
3748 QString asPythonString( QgsProcessing::PythonOutputType outputType = QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
3749 QString createFileFilter() const override;
3750
3756 virtual QStringList supportedOutputVectorLayerExtensions() const;
3757
3762 Qgis::ProcessingSourceType dataType() const;
3763
3768 bool hasGeometry() const;
3769
3774 void setDataType( Qgis::ProcessingSourceType type );
3775
3776 QVariantMap toVariantMap() const override;
3777 bool fromVariantMap( const QVariantMap &map ) override;
3778
3782 static QgsProcessingParameterVectorDestination *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3783
3784
3785 private:
3786
3787 Qgis::ProcessingSourceType mDataType = Qgis::ProcessingSourceType::VectorAnyGeometry;
3788};
3789
3797{
3798 public:
3799
3806 QgsProcessingParameterRasterDestination( const QString &name, const QString &description = QString(),
3807 const QVariant &defaultValue = QVariant(),
3808 bool optional = false,
3809 bool createByDefault = true );
3810
3814 static QString typeName() { return u"rasterDestination"_s; }
3815 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3816 QString type() const override { return typeName(); }
3817 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3818 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3819 QgsProcessingOutputDefinition *toOutputDefinition() const override SIP_FACTORY;
3820 QString defaultFileExtension() const override;
3821
3828 QString defaultFileFormat() const;
3829
3830 QString createFileFilter() const override;
3831
3838 Q_DECL_DEPRECATED virtual QStringList supportedOutputRasterLayerExtensions() const SIP_DEPRECATED;
3839
3845 virtual QList<QPair<QString, QString>> supportedOutputRasterLayerFormatAndExtensions() const;
3846
3850 static QgsProcessingParameterRasterDestination *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3851};
3852
3874{
3875 public:
3876
3883 QgsProcessingParameterFileDestination( const QString &name, const QString &description = QString(),
3884 const QString &fileFilter = QString(),
3885 const QVariant &defaultValue = QVariant(),
3886 bool optional = false,
3887 bool createByDefault = true );
3888
3892 static QString typeName() { return u"fileDestination"_s; }
3893 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3894 QString type() const override { return typeName(); }
3895 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3896 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3897 QgsProcessingOutputDefinition *toOutputDefinition() const override SIP_FACTORY;
3898 QString defaultFileExtension() const override;
3899 QString asPythonString( QgsProcessing::PythonOutputType outputType = QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
3900 QString createFileFilter() const override;
3901
3906 QString fileFilter() const;
3907
3912 void setFileFilter( const QString &filter );
3913
3914 QVariantMap toVariantMap() const override;
3915 bool fromVariantMap( const QVariantMap &map ) override;
3916
3920 static QgsProcessingParameterFileDestination *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3921
3922
3923 private:
3924
3925 QString mFileFilter;
3926};
3927
3935{
3936 public:
3937
3941 QgsProcessingParameterFolderDestination( const QString &name, const QString &description = QString(),
3942 const QVariant &defaultValue = QVariant(),
3943 bool optional = false,
3944 bool createByDefault = true );
3945
3949 static QString typeName() { return u"folderDestination"_s; }
3950 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3951 QString type() const override { return typeName(); }
3952 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3953 QgsProcessingOutputDefinition *toOutputDefinition() const override SIP_FACTORY;
3954 QString defaultFileExtension() const override;
3955
3959 static QgsProcessingParameterFolderDestination *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3960
3961};
3962
3969{
3970 public:
3971
3975 QgsProcessingParameterBand( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
3976 const QString &parentLayerParameterName = QString(),
3977 bool optional = false,
3978 bool allowMultiple = false );
3979
3983 static QString typeName() { return u"band"_s; }
3984 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3985 QString type() const override { return typeName(); }
3986 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3987 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3988 QString asScriptCode() const override;
3989 QStringList dependsOnOtherParameters() const override;
3991
3996 QString parentLayerParameterName() const;
3997
4002 void setParentLayerParameterName( const QString &parentLayerParameterName );
4003
4004 QVariantMap toVariantMap() const override;
4005 bool fromVariantMap( const QVariantMap &map ) override;
4006
4010 static QgsProcessingParameterBand *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4011
4017 bool allowMultiple() const;
4018
4024 void setAllowMultiple( bool allowMultiple );
4025
4026 private:
4027
4028 QString mParentLayerParameterName;
4029 bool mAllowMultiple = false;
4030};
4031
4044{
4045 public:
4046
4050 QgsProcessingParameterLayout( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
4051 bool optional = false );
4052
4056 static QString typeName() { return u"layout"_s; }
4057 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4058 QString type() const override { return typeName(); }
4059 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4060 QString asScriptCode() const override;
4062
4066 static QgsProcessingParameterLayout *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4067
4068};
4069
4082{
4083 public:
4084
4088 QgsProcessingParameterLayoutItem( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
4089 const QString &parentLayoutParameterName = QString(),
4090 int itemType = -1,
4091 bool optional = false );
4092
4096 static QString typeName() { return u"layoutitem"_s; }
4097 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4098 QString type() const override { return typeName(); }
4099 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4100 QString asScriptCode() const override;
4102 QVariantMap toVariantMap() const override;
4103 bool fromVariantMap( const QVariantMap &map ) override;
4104 QStringList dependsOnOtherParameters() const override;
4105
4109 static QgsProcessingParameterLayoutItem *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4110
4115 QString parentLayoutParameterName() const;
4116
4121 void setParentLayoutParameterName( const QString &name );
4122
4130 int itemType() const;
4131
4139 void setItemType( int type );
4140
4141 private:
4142 QString mParentLayoutParameterName;
4143 int mItemType = -1;
4144};
4145
4156{
4157 public:
4158
4164 QgsProcessingParameterColor( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
4165 bool opacityEnabled = true,
4166 bool optional = false );
4167
4171 static QString typeName() { return u"color"_s; }
4172
4173 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4174 QString type() const override { return typeName(); }
4175 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4176 QString asScriptCode() const override;
4178 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4179 QVariantMap toVariantMap() const override;
4180 bool fromVariantMap( const QVariantMap &map ) override;
4181
4188 bool opacityEnabled() const;
4189
4197 void setOpacityEnabled( bool enabled );
4198
4202 static QgsProcessingParameterColor *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4203
4204 private:
4205
4206 bool mAllowOpacity = true;
4207
4208};
4209
4210
4223{
4224 public:
4225
4229 QgsProcessingParameterCoordinateOperation( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
4230 const QString &sourceCrsParameterName = QString(), const QString &destinationCrsParameterName = QString(),
4231 const QVariant &staticSourceCrs = QVariant(), const QVariant &staticDestinationCrs = QVariant(),
4232 bool optional = false );
4233
4237 static QString typeName() { return u"coordinateoperation"_s; }
4238 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4239 QString type() const override { return typeName(); }
4240 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4241 QString asScriptCode() const override;
4243 QStringList dependsOnOtherParameters() const override;
4244
4245 QVariantMap toVariantMap() const override;
4246 bool fromVariantMap( const QVariantMap &map ) override;
4247
4251 static QgsProcessingParameterCoordinateOperation *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4252
4258 QString sourceCrsParameterName() const { return mSourceParameterName; }
4259
4265 void setSourceCrsParameterName( const QString &name ) { mSourceParameterName = name; }
4266
4272 QString destinationCrsParameterName() const { return mDestParameterName; }
4273
4279 void setDestinationCrsParameterName( const QString &name ) { mDestParameterName = name; }
4280
4286 QVariant sourceCrs() const { return mSourceCrs; }
4287
4293 void setSourceCrs( const QVariant &crs ) { mSourceCrs = crs; }
4294
4300 QVariant destinationCrs() const { return mDestCrs; }
4301
4307 void setDestinationCrs( const QVariant &crs ) { mDestCrs = crs; }
4308
4309 private:
4310 QString valueAsPythonStringPrivate( const QVariant &value, QgsProcessingContext &context, bool allowNonStringValues ) const ;
4311
4312 QString mSourceParameterName;
4313 QString mDestParameterName;
4314 QVariant mSourceCrs;
4315 QVariant mDestCrs;
4316
4317};
4318
4319
4330{
4331 public:
4332
4336 QgsProcessingParameterMapTheme( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
4337 bool optional = false );
4338
4342 static QString typeName() { return u"maptheme"_s; }
4343 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4344 QString type() const override { return typeName(); }
4345 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4346 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4347 QString asScriptCode() const override;
4349 QVariantMap toVariantMap() const override;
4350 bool fromVariantMap( const QVariantMap &map ) override;
4351
4355 static QgsProcessingParameterMapTheme *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4356
4357 private:
4358
4359};
4360
4361
4373{
4374 public:
4375
4379 explicit QgsProcessingParameterDateTime( const QString &name, const QString &description = QString(),
4381 const QVariant &defaultValue = QVariant(),
4382 bool optional = false,
4383 const QDateTime &minValue = QDateTime(),
4384 const QDateTime &maxValue = QDateTime()
4385 );
4386
4390 static QString typeName() { return u"datetime"_s; }
4391 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4392 QString type() const override { return typeName(); }
4393 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4394 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4395 QString toolTip() const override;
4397
4405 QDateTime minimum() const;
4406
4418 void setMinimum( const QDateTime &minimum );
4419
4427 QDateTime maximum() const;
4428
4440 void setMaximum( const QDateTime &maximum );
4441
4447
4452 void setDataType( Qgis::ProcessingDateTimeParameterDataType type );
4453
4454 QVariantMap toVariantMap() const override;
4455 bool fromVariantMap( const QVariantMap &map ) override;
4456 QString userFriendlyString( const QVariant &value ) const override;
4457
4461 static QgsProcessingParameterDateTime *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4462
4463 private:
4464
4465 QDateTime mMin;
4466 QDateTime mMax;
4468};
4469
4470
4482{
4483 public:
4484
4491 QgsProcessingParameterProviderConnection( const QString &name, const QString &description, const QString &provider, const QVariant &defaultValue = QVariant(),
4492 bool optional = false );
4493
4497 static QString typeName() { return u"providerconnection"_s; }
4498 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4499 QString type() const override { return typeName(); }
4500 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4501 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4502 QString asScriptCode() const override;
4504 QVariantMap toVariantMap() const override;
4505 bool fromVariantMap( const QVariantMap &map ) override;
4506
4511 QString providerId() const { return mProviderId; }
4512
4517 void setProviderId( const QString &provider ) { mProviderId = provider; }
4518
4522 static QgsProcessingParameterProviderConnection *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4523
4524 private:
4525
4526 QString mProviderId;
4527};
4528
4529
4541{
4542 public:
4543
4552 QgsProcessingParameterDatabaseSchema( const QString &name, const QString &description, const QString &connectionParameterName = QString(), const QVariant &defaultValue = QVariant(),
4553 bool optional = false );
4554
4558 static QString typeName() { return u"databaseschema"_s; }
4559 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4560 QString type() const override { return typeName(); }
4561 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4562 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4563 QString asScriptCode() const override;
4565 QVariantMap toVariantMap() const override;
4566 bool fromVariantMap( const QVariantMap &map ) override;
4567 QStringList dependsOnOtherParameters() const override;
4568
4573 QString parentConnectionParameterName() const;
4574
4579 void setParentConnectionParameterName( const QString &name );
4580
4584 static QgsProcessingParameterDatabaseSchema *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4585
4586 private:
4587
4588 QString mParentConnectionParameterName;
4589};
4590
4591
4605{
4606 public:
4607
4617 QgsProcessingParameterDatabaseTable( const QString &name, const QString &description,
4618 const QString &connectionParameterName = QString(),
4619 const QString &schemaParameterName = QString(),
4620 const QVariant &defaultValue = QVariant(),
4621 bool optional = false,
4622 bool allowNewTableNames = false );
4623
4627 static QString typeName() { return u"databasetable"_s; }
4628 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4629 QString type() const override { return typeName(); }
4630 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4631 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4632 QString asScriptCode() const override;
4634 QVariantMap toVariantMap() const override;
4635 bool fromVariantMap( const QVariantMap &map ) override;
4636 QStringList dependsOnOtherParameters() const override;
4637
4642 QString parentConnectionParameterName() const;
4643
4648 void setParentConnectionParameterName( const QString &name );
4649
4654 QString parentSchemaParameterName() const;
4655
4660 void setParentSchemaParameterName( const QString &name );
4661
4665 static QgsProcessingParameterDatabaseTable *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4666
4673 bool allowNewTableNames() const;
4674
4681 void setAllowNewTableNames( bool allowed );
4682
4683 private:
4684
4685 QString mParentConnectionParameterName;
4686 QString mParentSchemaParameterName;
4687 bool mAllowNewTableNames = false;
4688};
4689
4690
4698{
4699 public:
4700
4704 QgsProcessingParameterPointCloudLayer( const QString &name, const QString &description = QString(),
4705 const QVariant &defaultValue = QVariant(), bool optional = false );
4706
4710 static QString typeName() { return u"pointcloud"_s; }
4711 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4712 QString type() const override { return typeName(); }
4713 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4714 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4715 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
4716 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
4717 QString createFileFilter() const override;
4718
4722 static QgsProcessingParameterPointCloudLayer *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4723};
4724
4725
4733{
4734 public:
4735
4739 QgsProcessingParameterAnnotationLayer( const QString &name, const QString &description = QString(),
4740 const QVariant &defaultValue = QVariant(), bool optional = false );
4741
4745 static QString typeName() { return u"annotation"_s; }
4746 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4747 QString type() const override { return typeName(); }
4748 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4749 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4750 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
4751 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
4752
4756 static QgsProcessingParameterAnnotationLayer *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4757};
4758
4767{
4768 public:
4769
4776 QgsProcessingParameterPointCloudDestination( const QString &name, const QString &description = QString(),
4777 const QVariant &defaultValue = QVariant(),
4778 bool optional = false,
4779 bool createByDefault = true );
4780
4784 static QString typeName() { return u"pointCloudDestination"_s; }
4785 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4786 QString type() const override { return typeName(); }
4787 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4788 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4789 QgsProcessingOutputDefinition *toOutputDefinition() const override SIP_FACTORY;
4790 QString defaultFileExtension() const override;
4791 QString createFileFilter() const override;
4792
4797 virtual QStringList supportedOutputPointCloudLayerExtensions() const;
4798
4802 static QgsProcessingParameterPointCloudDestination *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4803};
4804
4812{
4813 public:
4814
4818 QgsProcessingParameterPointCloudAttribute( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(),
4819 const QString &parentLayerParameterName = QString(),
4820 bool allowMultiple = false,
4821 bool optional = false,
4822 bool defaultToAllAttributes = false );
4823
4827 static QString typeName() { return u"attribute"_s; }
4828 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4829 QString type() const override { return typeName(); }
4830 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4831 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4832 QString asScriptCode() const override;
4834 QStringList dependsOnOtherParameters() const override;
4835
4840 QString parentLayerParameterName() const;
4841
4846 void setParentLayerParameterName( const QString &parentLayerParameterName );
4847
4852 bool allowMultiple() const;
4853
4858 void setAllowMultiple( bool allowMultiple );
4859
4868 bool defaultToAllAttributes() const;
4869
4878 void setDefaultToAllAttributes( bool enabled );
4879
4880 QVariantMap toVariantMap() const override;
4881 bool fromVariantMap( const QVariantMap &map ) override;
4882
4886 static QgsProcessingParameterPointCloudAttribute *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4887
4888 private:
4889
4890 QString mParentLayerParameterName;
4891 bool mAllowMultiple = false;
4892 bool mDefaultToAllAttributes = false;
4893};
4894
4903{
4904 public:
4905
4912 QgsProcessingParameterVectorTileDestination( const QString &name, const QString &description = QString(),
4913 const QVariant &defaultValue = QVariant(),
4914 bool optional = false,
4915 bool createByDefault = true );
4916
4920 static QString typeName() { return u"vectorTileDestination"_s; }
4921 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4922 QString type() const override { return typeName(); }
4923 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4924 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4925 QgsProcessingOutputDefinition *toOutputDefinition() const override SIP_FACTORY;
4926 QString defaultFileExtension() const override;
4927 QString createFileFilter() const override;
4928
4933 virtual QStringList supportedOutputVectorTileLayerExtensions() const;
4934
4938 static QgsProcessingParameterVectorTileDestination *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4939};
4940
4941// clazy:excludeall=qstring-allocations
4942
4943#endif // QGSPROCESSINGPARAMETERS_H
4944
4945
Provides global constants and enumerations for use throughout the application.
Definition qgis.h:59
ProcessingSourceType
Processing data source types.
Definition qgis.h:3590
@ VectorAnyGeometry
Any vector layer with geometry.
Definition qgis.h:3592
ProcessingFileParameterBehavior
Flags which dictate the behavior of QgsProcessingParameterFile.
Definition qgis.h:3847
@ File
Parameter is a single file.
Definition qgis.h:3848
ExpressionType
Expression types.
Definition qgis.h:5808
@ Qgis
Native QGIS expression.
Definition qgis.h:5809
DistanceUnit
Units of distance.
Definition qgis.h:5085
@ Unknown
Unknown distance unit.
Definition qgis.h:5135
QFlags< RasterProcessingParameterCapability > RasterProcessingParameterCapabilities
Raster layer processing parameter capabilities.
Definition qgis.h:6399
ProcessingFieldParameterDataType
Processing field parameter data types.
Definition qgis.h:3875
AreaUnit
Units of area.
Definition qgis.h:5162
@ Unknown
Unknown areal unit.
Definition qgis.h:5175
TemporalUnit
Temporal units.
Definition qgis.h:5231
@ Milliseconds
Milliseconds.
Definition qgis.h:5232
QFlags< ProcessingParameterFlag > ProcessingParameterFlags
Flags which dictate the behavior of Processing parameters.
Definition qgis.h:3836
VolumeUnit
Units of volume.
Definition qgis.h:5187
@ Unknown
Unknown volume unit.
Definition qgis.h:5198
InvalidGeometryCheck
Methods for handling of features with invalid geometries.
Definition qgis.h:2296
@ AbortOnInvalid
Close iterator on encountering any features with invalid geometry. This requires a slow geometry vali...
Definition qgis.h:2299
QFlags< ProcessingFeatureSourceDefinitionFlag > ProcessingFeatureSourceDefinitionFlags
Flags which control behavior for a Processing feature source.
Definition qgis.h:3758
WkbType
The WKB type describes the number of dimensions a geometry has.
Definition qgis.h:280
ProcessingDateTimeParameterDataType
Processing date time parameter data types.
Definition qgis.h:3893
ProcessingNumberParameterType
Processing numeric parameter data types.
Definition qgis.h:3861
Represents a map layer containing a set of georeferenced annotations, e.g.
Represents a coordinate reference system (CRS).
An interface for objects which accept features via addFeature(s) methods.
QFlags< SinkFlag > SinkFlags
Container of fields for a vector layer.
Definition qgsfields.h:46
Abstract interface for classes which generate a file filter string.
A geometry is the spatial representation of a feature.
Base class for graphical items within a QgsLayout.
Base class for all map layer types.
Definition qgsmaplayer.h:83
Represents a mesh layer supporting display of data on structured or unstructured meshes.
Represents a map layer supporting display of point clouds.
Represents a 2D point.
Definition qgspointxy.h:62
Print layout, a QgsLayout subclass for static or atlas-based layouts.
Abstract base class for processing algorithms.
Contains information about the context in which a processing algorithm is executed.
virtual QString defaultFileExtension() const =0
Returns the default file extension for destination file paths associated with this parameter.
void setCreateByDefault(bool createByDefault)
Sets whether the destination should be created by default.
bool supportsNonFileBasedOutput() const
Returns true if the destination parameter supports non filed-based outputs, such as memory layers or ...
bool isDestination() const override
Returns true if this parameter represents a file or layer destination, e.g.
bool createByDefault() const
Returns true if the destination should be created by default.
virtual bool isSupportedOutputValue(const QVariant &value, QgsProcessingContext &context, QString &error) const
Tests whether a value is a supported value for this parameter.
virtual QString generateTemporaryDestination(const QgsProcessingContext *context=nullptr) const
Generates a temporary destination value for this parameter.
virtual QgsProcessingOutputDefinition * toOutputDefinition() const =0
Returns a new QgsProcessingOutputDefinition corresponding to the definition of the destination parame...
QgsProcessingProvider * originalProvider() const
Original (source) provider which this parameter has been derived from.
void setSupportsNonFileBasedOutput(bool supportsNonFileBasedOutput)
Sets whether the destination parameter supports non filed-based outputs, such as memory layers or dir...
QgsProcessingDestinationParameter(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false, bool createByDefault=true)
Constructor for QgsProcessingDestinationParameter.
Custom exception class for processing related exceptions.
Encapsulates settings relating to a feature source input to a processing algorithm.
bool loadVariant(const QVariantMap &map)
Loads this source definition from a QVariantMap, wrapped in a QVariant.
bool operator!=(const QgsProcessingFeatureSourceDefinition &other) const
bool selectedFeaturesOnly
true if only selected features in the source should be used by algorithms.
bool operator==(const QgsProcessingFeatureSourceDefinition &other) const
Qgis::InvalidGeometryCheck geometryCheck
Geometry check method to apply to this source.
QgsProcessingFeatureSourceDefinition(const QgsProperty &source, bool selectedFeaturesOnly=false, long long featureLimit=-1, Qgis::ProcessingFeatureSourceDefinitionFlags flags=Qgis::ProcessingFeatureSourceDefinitionFlags(), Qgis::InvalidGeometryCheck geometryCheck=Qgis::InvalidGeometryCheck::AbortOnInvalid, const QString &filterExpression=QString())
Constructor for QgsProcessingFeatureSourceDefinition, accepting a QgsProperty source.
QgsProcessingFeatureSourceDefinition(const QString &source=QString(), bool selectedFeaturesOnly=false, long long featureLimit=-1, Qgis::ProcessingFeatureSourceDefinitionFlags flags=Qgis::ProcessingFeatureSourceDefinitionFlags(), Qgis::InvalidGeometryCheck geometryCheck=Qgis::InvalidGeometryCheck::AbortOnInvalid, const QString &filterExpression=QString())
Constructor for QgsProcessingFeatureSourceDefinition, accepting a static string source.
Qgis::ProcessingFeatureSourceDefinitionFlags flags
Flags which dictate source behavior.
long long featureLimit
If set to a value > 0, places a limit on the maximum number of features which will be read from the s...
QVariant toVariant() const
Saves this source definition to a QVariantMap, wrapped in a QVariant.
QString filterExpression
Optional expression filter to use for filtering features which will be read from the source.
QgsFeatureSource subclass which proxies methods to an underlying QgsFeatureSource,...
Base class for providing feedback from a processing algorithm.
Base class for the definition of processing outputs.
Encapsulates settings relating to a feature sink or output raster layer for a processing algorithm.
QString format() const
Returns the format (if set).
QgsProject * destinationProject
Destination project.
QgsProcessingOutputLayerDefinition(const QgsProperty &sink, QgsProject *destinationProject=nullptr)
Constructor for QgsProcessingOutputLayerDefinition, accepting a QgsProperty sink/layer.
QgsProperty sink
Sink/layer definition.
bool useRemapping() const
Returns true if the output uses a remapping definition.
QgsProcessingOutputLayerDefinition(const QString &sink=QString(), QgsProject *destinationProject=nullptr)
Constructor for QgsProcessingOutputLayerDefinition, accepting a static sink/layer string.
void setFormat(const QString &format)
Sets the format of the output dataset.
QgsRemappingSinkDefinition remappingDefinition() const
Returns the output remapping definition, if useRemapping() is true.
QString destinationName
Name to use for sink if it's to be loaded into a destination project.
QVariantMap createOptions
Map of optional sink/layer creation options, which are passed to the underlying provider when creatin...
An annotation layer parameter for processing algorithms.
QgsProcessingParameterAnnotationLayer(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterAnnotationLayer.
QString type() const override
Unique parameter type name.
static QString typeName()
Returns the type name for the parameter class.
A double numeric parameter for area values.
void setDefaultUnit(Qgis::AreaUnit unit)
Sets the default area unit for the parameter.
QString parentParameterName() const
Returns the name of the parent parameter, or an empty string if this is not set.
Qgis::AreaUnit defaultUnit() const
Returns the default area unit for the parameter.
QgsProcessingParameterArea(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), const QString &parentParameterName=QString(), bool optional=false, double minValue=0, double maxValue=std::numeric_limits< double >::max())
Constructor for QgsProcessingParameterArea.
static QString typeName()
Returns the type name for the parameter class.
A string parameter for authentication configuration ID values.
QString type() const override
Unique parameter type name.
QgsProcessingParameterAuthConfig(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterAuthConfig.
static QString typeName()
Returns the type name for the parameter class.
A raster band parameter for Processing algorithms.
QString type() const override
Unique parameter type name.
QString parentLayerParameterName() const
Returns the name of the parent layer parameter, or an empty string if this is not set.
QgsProcessingParameterBand(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), const QString &parentLayerParameterName=QString(), bool optional=false, bool allowMultiple=false)
Constructor for QgsProcessingParameterBand.
static QString typeName()
Returns the type name for the parameter class.
bool allowMultiple() const
Returns whether multiple band selections are permitted.
A boolean parameter for processing algorithms.
QString type() const override
Unique parameter type name.
static QString typeName()
Returns the type name for the parameter class.
QgsProcessingParameterBoolean(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterBoolean.
A color parameter for processing algorithms.
bool opacityEnabled() const
Returns true if the parameter allows opacity control.
QgsProcessingParameterColor(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool opacityEnabled=true, bool optional=false)
Constructor for QgsProcessingParameterColor.
static QString typeName()
Returns the type name for the parameter class.
QString type() const override
Unique parameter type name.
A coordinate operation parameter for processing algorithms.
static QString typeName()
Returns the type name for the parameter class.
QString type() const override
Unique parameter type name.
QVariant sourceCrs() const
Returns the static source CRS, or an invalid value if this is not set.
QString destinationCrsParameterName() const
Returns the name of the destination CRS parameter, or an empty string if this is not set.
void setDestinationCrsParameterName(const QString &name)
Sets the name of the destination CRS parameter.
void setSourceCrs(const QVariant &crs)
Sets the static source crs.
QVariant destinationCrs() const
Returns the static destination CRS, or an invalid value if this is not set.
QgsProcessingParameterCoordinateOperation(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), const QString &sourceCrsParameterName=QString(), const QString &destinationCrsParameterName=QString(), const QVariant &staticSourceCrs=QVariant(), const QVariant &staticDestinationCrs=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterCoordinateOperation.
void setDestinationCrs(const QVariant &crs)
Sets the static destination crs.
void setSourceCrsParameterName(const QString &name)
Sets the name of the source CRS parameter.
QString sourceCrsParameterName() const
Returns the name of the source CRS parameter, or an empty string if this is not set.
A coordinate reference system parameter for processing algorithms.
QgsProcessingParameterCrs(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterCrs.
QString userFriendlyString(const QVariant &value) const override
Returns a user-friendly string representation of the provided parameter value.
QString type() const override
Unique parameter type name.
static QString typeName()
Returns the type name for the parameter class.
A database schema parameter for processing algorithms, allowing users to select from existing schemas...
QString type() const override
Unique parameter type name.
static QString typeName()
Returns the type name for the parameter class.
QgsProcessingParameterDatabaseSchema(const QString &name, const QString &description, const QString &connectionParameterName=QString(), const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterDatabaseSchema.
A database table name parameter for processing algorithms.
QgsProcessingParameterDatabaseTable(const QString &name, const QString &description, const QString &connectionParameterName=QString(), const QString &schemaParameterName=QString(), const QVariant &defaultValue=QVariant(), bool optional=false, bool allowNewTableNames=false)
Constructor for QgsProcessingParameterDatabaseTable.
static QString typeName()
Returns the type name for the parameter class.
QString type() const override
Unique parameter type name.
bool allowNewTableNames() const
Returns true if the parameter allows users to enter names for a new (non-existing) tables.
A datetime (or pure date or time) parameter for processing algorithms.
QString type() const override
Unique parameter type name.
static QString typeName()
Returns the type name for the parameter class.
QgsProcessingParameterDateTime(const QString &name, const QString &description=QString(), Qgis::ProcessingDateTimeParameterDataType type=Qgis::ProcessingDateTimeParameterDataType::DateTime, const QVariant &defaultValue=QVariant(), bool optional=false, const QDateTime &minValue=QDateTime(), const QDateTime &maxValue=QDateTime())
Constructor for QgsProcessingParameterDateTime.
Base class for the definition of processing parameters.
QgsProcessingAlgorithm * mAlgorithm
Pointer to algorithm which owns this parameter.
QVariant defaultValue() const
Returns the default value for the parameter.
void setDefaultValue(const QVariant &value)
Sets the default value for the parameter.
QString valueAsStringPrivate(const QVariant &value, QgsProcessingContext &context, bool &ok, ValueAsStringFlags flags) const
Internal method for evaluating values as string.
QStringList additionalExpressionContextVariables() const
Returns a list of additional expression context variables which are available for use when evaluating...
QStringList mAdditionalExpressionVariables
Additional expression context variables exposed for use by this parameter.
QString help() const
Returns the help for the parameter.
Qgis::ProcessingParameterFlags mFlags
Parameter flags.
virtual QString userFriendlyString(const QVariant &value) const
Returns a user-friendly string representation of the provided parameter value.
QFlags< ValueAsStringFlag > ValueAsStringFlags
void setMetadata(const QVariantMap &metadata)
Sets the parameter's freeform metadata.
void setFlags(Qgis::ProcessingParameterFlags flags)
Sets the flags associated with the parameter.
QgsProcessingProvider * provider() const
Returns a pointer to the provider for the algorithm which owns this parameter.
ValueAsStringFlag
Flags for passing to the valueAsStringPrivate() method.
void setGuiDefaultValueOverride(const QVariant &value)
Sets the default value to use for the parameter in GUI widgets.
bool mIsDynamic
True for dynamic parameters, which can have data-defined (QgsProperty) based values.
QVariantMap metadata() const
Returns the parameter's freeform metadata.
QString description() const
Returns the description for the parameter.
QgsProcessingParameterDefinition(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false, const QString &help=QString())
Constructor for QgsProcessingParameterDefinition.
QString mDynamicLayerParameterName
Linked vector layer parameter name for dynamic properties.
virtual bool isDestination() const
Returns true if this parameter represents a file or layer destination, e.g.
void setDescription(const QString &description)
Sets the description for the parameter.
void setDynamicLayerParameterName(const QString &name)
Sets the name for the parameter for a layer linked to a dynamic parameter, or an empty string if this...
QString dynamicLayerParameterName() const
Returns the name of the parameter for a layer linked to a dynamic parameter, or an empty string if th...
void setAdditionalExpressionContextVariables(const QStringList &variables)
Sets a list of additional expression context variables which are available for use when evaluating th...
QVariantMap mMetadata
Freeform metadata for parameter. Mostly used by widget wrappers to customize their appearance and beh...
void setName(const QString &name)
Sets the name of the parameter.
QString mDescription
Parameter description.
virtual QgsProcessingParameterDefinition * clone() const =0
Creates a clone of the parameter definition.
virtual QString type() const =0
Unique parameter type name.
void setDynamicPropertyDefinition(const QgsPropertyDefinition &definition)
Sets the property definition for dynamic properties.
void setHelp(const QString &help)
Sets the help for the parameter.
QString name() const
Returns the name of the parameter.
QVariant mDefault
Default value for parameter.
virtual QStringList dependsOnOtherParameters() const
Returns a list of other parameter names on which this parameter is dependent (e.g.
void setIsDynamic(bool dynamic)
Sets whether the parameter is dynamic, and can support data-defined values (i.e.
Qgis::ProcessingParameterFlags flags() const
Returns any flags associated with the parameter.
QVariant mGuiDefault
Default value for parameter in GUI.
QgsPropertyDefinition mPropertyDefinition
Data defined property definition.
QVariant defaultGuiValueFromSetting() const
Default gui value for an algorithm parameter from settings.
bool isDynamic() const
Returns true if the parameter supports is dynamic, and can support data-defined values (i....
virtual ~QgsProcessingParameterDefinition()=default
QVariantMap & metadata()
Returns the parameter's freeform metadata.
QVariant valueAsJsonObjectPrivate(const QVariant &value, QgsProcessingContext &context, ValueAsStringFlags flags) const
Internal method for evaluating values as JSON objects.
virtual QColor modelColor() const
Returns the color to use for the parameter in model designer windows.
QgsPropertyDefinition dynamicPropertyDefinition() const
Returns the property definition for dynamic properties.
A double numeric parameter for distance values.
static QString typeName()
Returns the type name for the parameter class.
void setDefaultUnit(Qgis::DistanceUnit unit)
Sets the default distance unit for the parameter.
QString parentParameterName() const
Returns the name of the parent parameter, or an empty string if this is not set.
Qgis::DistanceUnit defaultUnit() const
Returns the default distance unit for the parameter.
QgsProcessingParameterDistance(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), const QString &parentParameterName=QString(), bool optional=false, double minValue=std::numeric_limits< double >::lowest()+1, double maxValue=std::numeric_limits< double >::max())
Constructor for QgsProcessingParameterDistance.
A double numeric parameter for duration values.
void setDefaultUnit(Qgis::TemporalUnit unit)
Sets the default duration unit for the parameter.
Qgis::TemporalUnit defaultUnit() const
Returns the default duration unit for the parameter.
static QString typeName()
Returns the type name for the parameter class.
QgsProcessingParameterDuration(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false, double minValue=std::numeric_limits< double >::lowest()+1, double maxValue=std::numeric_limits< double >::max())
Constructor for QgsProcessingParameterDuration.
static QString typeName()
Returns the type name for the parameter class.
An enum based parameter for processing algorithms, allowing for selection from predefined values.
QString userFriendlyString(const QVariant &value) const override
Returns a user-friendly string representation of the provided parameter value.
bool allowMultiple() const
Returns true if the parameter allows multiple selected values.
QStringList options() const
Returns the list of acceptable options for the parameter.
QgsProcessingParameterEnum(const QString &name, const QString &description=QString(), const QStringList &options=QStringList(), bool allowMultiple=false, const QVariant &defaultValue=QVariant(), bool optional=false, bool usesStaticStrings=false)
Constructor for QgsProcessingParameterEnum.
QString type() const override
Unique parameter type name.
bool usesStaticStrings() const
Returns true if the parameter uses static (non-translated) string values for its enumeration choice l...
static QString typeName()
Returns the type name for the parameter class.
An expression parameter for processing algorithms.
QgsProcessingParameterExpression(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), const QString &parentLayerParameterName=QString(), bool optional=false, Qgis::ExpressionType type=Qgis::ExpressionType::Qgis)
Constructor for QgsProcessingParameterExpression.
QString parentLayerParameterName() const
Returns the name of the parent layer parameter, or an empty string if this is not set.
QString type() const override
Unique parameter type name.
static QString typeName()
Returns the type name for the parameter class.
A rectangular map extent parameter for processing algorithms.
QgsProcessingParameterExtent(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterExtent.
static QString typeName()
Returns the type name for the parameter class.
QString type() const override
Unique parameter type name.
A feature sink output for processing algorithms.
QgsProcessingParameterFeatureSink(const QString &name, const QString &description=QString(), Qgis::ProcessingSourceType type=Qgis::ProcessingSourceType::VectorAnyGeometry, const QVariant &defaultValue=QVariant(), bool optional=false, bool createByDefault=true, bool supportsAppend=false)
Constructor for QgsProcessingParameterFeatureSink.
QString type() const override
Unique parameter type name.
bool supportsAppend() const
Returns true if the sink supports appending features to an existing table.
static QString typeName()
Returns the type name for the parameter class.
An input feature source (such as vector layers) parameter for processing algorithms.
QgsProcessingParameterFeatureSource(const QString &name, const QString &description=QString(), const QList< int > &types=QList< int >(), const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterFeatureSource.
static QString typeName()
Returns the type name for the parameter class.
QString type() const override
Unique parameter type name.
static QString typeName()
Returns the type name for the parameter class.
A vector layer or feature source field parameter for processing algorithms.
QString parentLayerParameterName() const
Returns the name of the parent layer parameter, or an empty string if this is not set.
bool allowMultiple() const
Returns whether multiple field selections are permitted.
QString type() const override
Unique parameter type name.
bool defaultToAllFields() const
Returns whether a parameter which allows multiple selections (see allowMultiple()) should automatical...
static QString typeName()
Returns the type name for the parameter class.
QgsProcessingParameterField(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), const QString &parentLayerParameterName=QString(), Qgis::ProcessingFieldParameterDataType type=Qgis::ProcessingFieldParameterDataType::Any, bool allowMultiple=false, bool optional=false, bool defaultToAllFields=false)
Constructor for QgsProcessingParameterField.
A generic file based destination parameter, for specifying the destination path for a file (non-map l...
QgsProcessingParameterFileDestination(const QString &name, const QString &description=QString(), const QString &fileFilter=QString(), const QVariant &defaultValue=QVariant(), bool optional=false, bool createByDefault=true)
Constructor for QgsProcessingParameterFileDestination.
QString type() const override
Unique parameter type name.
static QString typeName()
Returns the type name for the parameter class.
QString fileFilter() const
Returns the file filter string for file destinations compatible with this parameter.
An input file or folder parameter for processing algorithms.
QString extension() const
Returns any specified file extension for the parameter.
static QString typeName()
Returns the type name for the parameter class.
QgsProcessingParameterFile(const QString &name, const QString &description=QString(), Qgis::ProcessingFileParameterBehavior behavior=Qgis::ProcessingFileParameterBehavior::File, const QString &extension=QString(), const QVariant &defaultValue=QVariant(), bool optional=false, const QString &fileFilter=QString())
Constructor for QgsProcessingParameterFile.
void setBehavior(Qgis::ProcessingFileParameterBehavior behavior)
Sets the parameter behavior (e.g.
QString type() const override
Unique parameter type name.
QString fileFilter() const
Returns the file filter string for file destinations compatible with this parameter.
Qgis::ProcessingFileParameterBehavior behavior() const
Returns the parameter behavior (e.g.
A folder destination parameter, for specifying the destination path for a folder created by the algor...
QString type() const override
Unique parameter type name.
static QString typeName()
Returns the type name for the parameter class.
QgsProcessingParameterFolderDestination(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false, bool createByDefault=true)
Constructor for QgsProcessingParameterFolderDestination.
A geometry parameter for processing algorithms.
void setGeometryTypes(const QList< int > &geometryTypes)
Sets the allowed geometryTypes, as a list of Qgis::GeometryType values.
QString type() const override
Unique parameter type name.
bool allowMultipart() const
Returns the parameter allow multipart geometries.
QgsProcessingParameterGeometry(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false, const QList< int > &geometryTypes=QList< int >(), bool allowMultipart=true)
Constructor for QgsProcessingParameterGeometry.
QList< int > geometryTypes() const
Returns the parameter allowed geometries, as a list of Qgis::GeometryType values.
void setAllowMultipart(bool allowMultipart)
Sets the allow multipart geometries.
static QString typeName()
Returns the type name for the parameter class.
A print layout item parameter, allowing users to select a particular item from a print layout.
QString type() const override
Unique parameter type name.
QgsProcessingParameterLayoutItem(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), const QString &parentLayoutParameterName=QString(), int itemType=-1, bool optional=false)
Constructor for QgsProcessingParameterLayoutItem.
QString parentLayoutParameterName() const
Returns the name of the parent layout parameter, or an empty string if this is not set.
static QString typeName()
Returns the type name for the parameter class.
int itemType() const
Returns the acceptable item type, or -1 if any item type is allowed.
A print layout parameter, allowing users to select a print layout.
QgsProcessingParameterLayout(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterLayout.
static QString typeName()
Returns the type name for the parameter class.
QString type() const override
Unique parameter type name.
void setDataTypes(const QList< int > &types)
Sets the geometry types for sources acceptable by the parameter.
QgsProcessingParameterLimitedDataTypes(const QList< int > &types=QList< int >())
Constructor for QgsProcessingParameterLimitedDataTypes, with a list of acceptable data types.
QList< int > mDataTypes
List of acceptable data types for the parameter.
QList< int > dataTypes() const
Returns the geometry types for sources acceptable by the parameter.
A map layer parameter for processing algorithms.
QString type() const override
Unique parameter type name.
QgsProcessingParameterMapLayer(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false, const QList< int > &types=QList< int >())
Constructor for QgsProcessingParameterMapLayer.
static QString typeName()
Returns the type name for the parameter class.
A map theme parameter for processing algorithms, allowing users to select an existing map theme from ...
QString type() const override
Unique parameter type name.
static QString typeName()
Returns the type name for the parameter class.
QgsProcessingParameterMapTheme(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterMapTheme.
A table (matrix) parameter for processing algorithms.
QStringList headers() const
Returns a list of column headers (if set).
int numberRows() const
Returns the fixed number of rows in the table.
static QString typeName()
Returns the type name for the parameter class.
QgsProcessingParameterMatrix(const QString &name, const QString &description=QString(), int numberRows=3, bool hasFixedNumberRows=false, const QStringList &headers=QStringList(), const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterMatrix.
QString type() const override
Unique parameter type name.
bool hasFixedNumberRows() const
Returns whether the table has a fixed number of rows.
static QString typeName()
Returns the type name for the parameter class.
static QString typeName()
Returns the type name for the parameter class.
A mesh layer parameter for processing algorithms.
QgsProcessingParameterMeshLayer(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterMeshLayer.
QString type() const override
Unique parameter type name.
static QString typeName()
Returns the type name for the parameter class.
A parameter for processing algorithms which accepts multiple map layers.
Qgis::ProcessingSourceType layerType() const
Returns the layer type for layers acceptable by the parameter.
static QString typeName()
Returns the type name for the parameter class.
QgsProcessingParameterMultipleLayers(const QString &name, const QString &description=QString(), Qgis::ProcessingSourceType layerType=Qgis::ProcessingSourceType::VectorAnyGeometry, const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterMultipleLayers.
QString type() const override
Unique parameter type name.
A numeric parameter for processing algorithms.
QString type() const override
Unique parameter type name.
static QString typeName()
Returns the type name for the parameter class.
QgsProcessingParameterNumber(const QString &name, const QString &description=QString(), Qgis::ProcessingNumberParameterType type=Qgis::ProcessingNumberParameterType::Integer, const QVariant &defaultValue=QVariant(), bool optional=false, double minValue=std::numeric_limits< double >::lowest()+1, double maxValue=std::numeric_limits< double >::max())
Constructor for QgsProcessingParameterNumber.
A point cloud layer attribute parameter for Processing algorithms.
QgsProcessingParameterPointCloudAttribute(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), const QString &parentLayerParameterName=QString(), bool allowMultiple=false, bool optional=false, bool defaultToAllAttributes=false)
Constructor for QgsProcessingParameterField.
QString type() const override
Unique parameter type name.
QString parentLayerParameterName() const
Returns the name of the parent layer parameter, or an empty string if this is not set.
static QString typeName()
Returns the type name for the parameter class.
bool allowMultiple() const
Returns whether multiple field selections are permitted.
bool defaultToAllAttributes() const
Returns whether a parameter which allows multiple selections (see allowMultiple()) should automatical...
A point cloud layer destination parameter, for specifying the destination path for a point cloud laye...
QString type() const override
Unique parameter type name.
static QString typeName()
Returns the type name for the parameter class.
QgsProcessingParameterPointCloudDestination(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false, bool createByDefault=true)
Constructor for QgsProcessingParameterPointCloudDestination.
A point cloud layer parameter for processing algorithms.
QString type() const override
Unique parameter type name.
static QString typeName()
Returns the type name for the parameter class.
QgsProcessingParameterPointCloudLayer(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterPointCloudLayer.
A point parameter for processing algorithms.
QString type() const override
Unique parameter type name.
QgsProcessingParameterPoint(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterPoint.
static QString typeName()
Returns the type name for the parameter class.
A data provider connection parameter for processing algorithms, allowing users to select from availab...
QString type() const override
Unique parameter type name.
QgsProcessingParameterProviderConnection(const QString &name, const QString &description, const QString &provider, const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterProviderConnection, for the specified provider type.
static QString typeName()
Returns the type name for the parameter class.
void setProviderId(const QString &provider)
Sets the ID of the provider associated with the connections.
QString providerId() const
Returns the ID of the provider associated with the connections.
A numeric range parameter for processing algorithms.
static QString typeName()
Returns the type name for the parameter class.
QgsProcessingParameterRange(const QString &name, const QString &description=QString(), Qgis::ProcessingNumberParameterType type=Qgis::ProcessingNumberParameterType::Integer, const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterRange.
QString type() const override
Unique parameter type name.
A raster layer destination parameter, for specifying the destination path for a raster layer created ...
QString type() const override
Unique parameter type name.
QgsProcessingParameterRasterDestination(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false, bool createByDefault=true)
Constructor for QgsProcessingParameterRasterDestination.
static QString typeName()
Returns the type name for the parameter class.
A raster layer parameter for processing algorithms.
QString type() const override
Unique parameter type name.
static QString typeName()
Returns the type name for the parameter class.
QgsProcessingParameterRasterLayer(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterRasterLayer.
A double numeric parameter for map scale values.
static QString typeName()
Returns the type name for the parameter class.
QgsProcessingParameterScale(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterScale.
A string parameter for processing algorithms.
static QString typeName()
Returns the type name for the parameter class.
QString type() const override
Unique parameter type name.
bool multiLine() const
Returns true if the parameter allows multiline strings.
QgsProcessingParameterString(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool multiLine=false, bool optional=false)
Constructor for QgsProcessingParameterString.
static QString typeName()
Returns the type name for the parameter class.
A vector layer destination parameter, for specifying the destination path for a vector layer created ...
QgsProcessingParameterVectorDestination(const QString &name, const QString &description=QString(), Qgis::ProcessingSourceType type=Qgis::ProcessingSourceType::VectorAnyGeometry, const QVariant &defaultValue=QVariant(), bool optional=false, bool createByDefault=true)
Constructor for QgsProcessingParameterVectorDestination.
QString type() const override
Unique parameter type name.
static QString typeName()
Returns the type name for the parameter class.
A vector layer (with or without geometry) parameter for processing algorithms.
QString type() const override
Unique parameter type name.
QgsProcessingParameterVectorLayer(const QString &name, const QString &description=QString(), const QList< int > &types=QList< int >(), const QVariant &defaultValue=QVariant(), bool optional=false)
Constructor for QgsProcessingParameterVectorLayer.
static QString typeName()
Returns the type name for the parameter class.
A vector tile layer destination parameter, for specifying the destination path for a vector tile laye...
QgsProcessingParameterVectorTileDestination(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false, bool createByDefault=true)
Constructor for QgsProcessingParameterVectorTileDestination.
static QString typeName()
Returns the type name for the parameter class.
QString type() const override
Unique parameter type name.
static QString typeName()
Returns the type name for the parameter class.
A double numeric parameter for volume values.
static QString typeName()
Returns the type name for the parameter class.
QgsProcessingParameterVolume(const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), const QString &parentParameterName=QString(), bool optional=false, double minValue=0, double maxValue=std::numeric_limits< double >::max())
Constructor for QgsProcessingParameterVolume.
Qgis::VolumeUnit defaultUnit() const
Returns the default volume unit for the parameter.
void setDefaultUnit(Qgis::VolumeUnit unit)
Sets the default volume unit for the parameter.
QString parentParameterName() const
Returns the name of the parent parameter, or an empty string if this is not set.
A collection of utilities for working with parameters when running a processing algorithm.
static QString descriptionFromName(const QString &name)
Creates an autogenerated parameter description from a parameter name.
static int parameterAsEnum(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context)
Evaluates the parameter with matching definition to a enum value.
static double parameterAsDouble(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context)
Evaluates the parameter with matching definition to a static double value.
static QgsPointXY parameterAsPoint(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, const QgsCoordinateReferenceSystem &crs=QgsCoordinateReferenceSystem())
Evaluates the parameter with matching definition to a point.
static QString parameterAsOutputLayer(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Evaluates the parameter with matching definition to a output layer destination.
static QgsFeatureSink * parameterAsSink(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsFields &fields, Qgis::WkbType geometryType, const QgsCoordinateReferenceSystem &crs, QgsProcessingContext &context, QString &destinationIdentifier, QgsFeatureSink::SinkFlags sinkFlags=QgsFeatureSink::SinkFlags(), const QVariantMap &createOptions=QVariantMap(), const QStringList &datasourceOptions=QStringList(), const QStringList &layerOptions=QStringList())
Evaluates the parameter with matching definition to a feature sink.
static QgsPrintLayout * parameterAsLayout(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Evaluates the parameter with matching definition to a print layout.
static QList< QgsMapLayer * > parameterAsLayerList(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, QgsProcessing::LayerOptionsFlags flags=QgsProcessing::LayerOptionsFlags())
Evaluates the parameter with matching definition to a list of map layers.
static QTime parameterAsTime(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context)
Evaluates the parameter with matching definition to a static time value.
static QgsProcessingParameterDefinition * parameterFromVariantMap(const QVariantMap &map)
Creates a new QgsProcessingParameterDefinition using the configuration from a supplied variant map.
static QgsRectangle parameterAsExtent(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, const QgsCoordinateReferenceSystem &crs=QgsCoordinateReferenceSystem())
Evaluates the parameter with matching definition to a rectangular extent.
static QgsCoordinateReferenceSystem parameterAsGeometryCrs(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Returns the coordinate reference system associated with a geometry parameter value.
static QgsAnnotationLayer * parameterAsAnnotationLayer(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Evaluates the parameter with matching definition to an annotation layer.
static QString parameterAsEnumString(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context)
Evaluates the parameter with matching definition to a static enum string.
static QList< double > parameterAsRange(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Evaluates the parameter with matching definition to a range of values.
static QStringList parameterAsStrings(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Evaluates the parameter with matching definition to a list of strings (e.g.
static QList< int > parameterAsInts(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context)
Evaluates the parameter with matching definition to a list of integer values.
static QString parameterAsConnectionName(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context)
Evaluates the parameter with matching definition to a connection name string.
static QgsProcessingFeatureSource * parameterAsSource(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Evaluates the parameter with matching definition to a feature source.
static QString parameterAsFileOutput(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Evaluates the parameter with matching definition to a file based output destination.
static bool parameterAsBoolean(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context)
Evaluates the parameter with matching definition to a static boolean value.
static QgsPointCloudLayer * parameterAsPointCloudLayer(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, QgsProcessing::LayerOptionsFlags flags=QgsProcessing::LayerOptionsFlags())
Evaluates the parameter with matching definition to a point cloud layer.
static QgsCoordinateReferenceSystem parameterAsPointCrs(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Returns the coordinate reference system associated with an point parameter value.
static QgsLayoutItem * parameterAsLayoutItem(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, QgsPrintLayout *layout)
Evaluates the parameter with matching definition to a print layout item, taken from the specified lay...
static bool parameterAsBool(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context)
Evaluates the parameter with matching definition to a static boolean value.
static QString parameterAsCompatibleSourceLayerPathAndLayerName(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, const QStringList &compatibleFormats, const QString &preferredFormat=QString("shp"), QgsProcessingFeedback *feedback=nullptr, QString *layerName=nullptr)
Evaluates the parameter with matching definition to a source vector layer file path and layer name of...
static QgsMeshLayer * parameterAsMeshLayer(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Evaluates the parameter with matching definition and value to a mesh layer.
static QString parameterAsCompatibleSourceLayerPath(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, const QStringList &compatibleFormats, const QString &preferredFormat=QString("shp"), QgsProcessingFeedback *feedback=nullptr)
Evaluates the parameter with matching definition to a source vector layer file path of compatible for...
static QgsProcessingParameterDefinition * parameterFromScriptCode(const QString &code)
Creates a new QgsProcessingParameterDefinition using the configuration from a supplied script code st...
static QColor parameterAsColor(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Returns the color associated with an point parameter value, or an invalid color if the parameter was ...
static QgsVectorLayer * parameterAsVectorLayer(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Evaluates the parameter with matching definition to a vector layer.
static QString parameterAsOutputFormat(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Evaluates the parameter with matching definition to a output format.
static int parameterAsInt(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context)
Evaluates the parameter with matching definition to a static integer value.
static QString parameterAsDatabaseTableName(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context)
Evaluates the parameter with matching definition to a database table name.
static QString parameterAsSchema(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context)
Evaluates the parameter with matching definition to a database schema name.
static QgsGeometry parameterAsGeometry(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, const QgsCoordinateReferenceSystem &crs=QgsCoordinateReferenceSystem())
Evaluates the parameter with matching definition to a geometry.
static QgsMapLayer * parameterAsLayer(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, QgsProcessingUtils::LayerHint layerHint=QgsProcessingUtils::LayerHint::UnknownType, QgsProcessing::LayerOptionsFlags flags=QgsProcessing::LayerOptionsFlags())
Evaluates the parameter with matching definition to a map layer.
static QString parameterAsExpression(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context)
Evaluates the parameter with matching definition to an expression.
static QString parameterAsString(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context)
Evaluates the parameter with matching definition to a static string value.
static QgsRasterLayer * parameterAsRasterLayer(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Evaluates the parameter with matching definition to a raster layer.
static QList< int > parameterAsEnums(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context)
Evaluates the parameter with matching definition to list of enum values.
static QStringList parameterAsEnumStrings(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context)
Evaluates the parameter with matching definition to list of static enum strings.
static QgsGeometry parameterAsExtentGeometry(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, const QgsCoordinateReferenceSystem &crs=QgsCoordinateReferenceSystem())
Evaluates the parameter with matching definition to a rectangular extent, and returns a geometry cove...
static QStringList parameterAsFileList(const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context)
Evaluates the parameter with matching definition to a list of files (for QgsProcessingParameterMultip...
static bool isDynamic(const QVariantMap &parameters, const QString &name)
Returns true if the parameter with matching name is a dynamic parameter, and must be evaluated once f...
static Q_DECL_DEPRECATED QStringList parameterAsFields(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Evaluates the parameter with matching definition to a list of fields.
static QgsCoordinateReferenceSystem parameterAsExtentCrs(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Returns the coordinate reference system associated with an extent parameter value.
static QDateTime parameterAsDateTime(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context)
Evaluates the parameter with matching definition to a static datetime value.
static QString parameterAsFile(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Evaluates the parameter with matching definition to a file/folder name.
static QDate parameterAsDate(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context)
Evaluates the parameter with matching definition to a static date value.
static QVariantList parameterAsMatrix(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Evaluates the parameter with matching definition to a matrix/table of values.
static QgsCoordinateReferenceSystem parameterAsCrs(const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context)
Evaluates the parameter with matching definition to a coordinate reference system.
Abstract base class for processing providers.
Encapsulates settings relating to a raster layer input to a processing algorithm.
double referenceScale
If set to a value > 0, sets a scale at which a raster (e.g., a WMS) should be requested or rendered.
int dpi
Indicates the resolution of the raster source (e.g., a WMS server).
bool operator==(const QgsProcessingRasterLayerDefinition &other) const
bool loadVariant(const QVariantMap &map)
Loads this raster layer definition from a QVariantMap, wrapped in a QVariant.
QgsProcessingRasterLayerDefinition(const QString &source=QString(), const double referenceScale=0, const int dpi=96)
Constructor for QgsProcessingRasterLayerDefinition, accepting a static string source.
QVariant toVariant() const
Saves this raster layer definition to a QVariantMap, wrapped in a QVariant.
QgsProcessingRasterLayerDefinition(const QgsProperty &source, const double referenceScale=0, const int dpi=96)
Constructor for QgsProcessingRasterLayerDefinition, accepting a QgsProperty source.
bool operator!=(const QgsProcessingRasterLayerDefinition &other) const
LayerHint
Layer type hints.
Contains enumerations and other constants for use in processing algorithms and parameters.
QFlags< LayerOptionsFlag > LayerOptionsFlags
PythonOutputType
Available Python output types.
@ PythonQgsProcessingAlgorithmSubclass
Full Python QgsProcessingAlgorithm subclass.
Encapsulates a QGIS project, including sets of map layers and their styles, layouts,...
Definition qgsproject.h:112
Definition for a property.
Definition qgsproperty.h:47
A store for object properties.
Represents a raster layer.
A rectangle specified with double values.
Defines the parameters used to remap features when creating a QgsRemappingProxyFeatureSink.
Represents a vector layer which manages a vector based dataset.
As part of the API refactoring and improvements which landed in the Processing API was substantially reworked from the x version This was done in order to allow much of the underlying Processing framework to be ported into allowing algorithms to be written in pure substantial changes are required in order to port existing x Processing algorithms for QGIS x The most significant changes are outlined not GeoAlgorithm For algorithms which operate on features one by consider subclassing the QgsProcessingFeatureBasedAlgorithm class This class allows much of the boilerplate code for looping over features from a vector layer to be bypassed and instead requires implementation of a processFeature method Ensure that your algorithm(or algorithm 's parent class) implements the new pure virtual createInstance(self) call
#define SIP_CONVERT_TO_SUBCLASS_CODE(code)
Definition qgis_sip.h:199
#define SIP_DEPRECATED
Definition qgis_sip.h:114
#define SIP_SKIP
Definition qgis_sip.h:134
#define SIP_OUT
Definition qgis_sip.h:58
#define SIP_FACTORY
Definition qgis_sip.h:84
#define SIP_THROW(name,...)
Definition qgis_sip.h:211
#define SIP_END
Definition qgis_sip.h:216
Q_DECLARE_METATYPE(QgsDatabaseQueryLogEntry)
bool operator==(const QgsFeatureIterator &fi1, const QgsFeatureIterator &fi2)
bool operator!=(const QgsFeatureIterator &fi1, const QgsFeatureIterator &fi2)
QList< const QgsProcessingParameterDefinition * > QgsProcessingParameterDefinitions
List of processing parameters.
Q_DECLARE_OPERATORS_FOR_FLAGS(QgsProjectionSelectionWidget::CrsOptions)