QGIS API Documentation 4.3.0-Master (0cfde48c85b)
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:
95
127
132
137
144 long long featureLimit = -1;
145
152
159
168
175 QVariant toVariant() const;
176
183 bool loadVariant( const QVariantMap &map );
184
185 // TODO c++20 - replace with = default
187 {
188 return source == other.source
190 && featureLimit == other.featureLimit
192 && flags == other.flags
193 && geometryCheck == other.geometryCheck;
194 }
195
196 bool operator!=( const QgsProcessingFeatureSourceDefinition &other ) const { return !( *this == other ); }
197
199 operator QVariant() const { return QVariant::fromValue( *this ); }
200};
201
203
204
211
213{
214 public:
224 QgsProcessingRasterLayerDefinition( const QString &source = QString(), const double referenceScale = 0, const int dpi = 96 )
225 : source( QgsProperty::fromValue( source ) )
227 , dpi( dpi )
228 {}
229
239 QgsProcessingRasterLayerDefinition( const QgsProperty &source, const double referenceScale = 0, const int dpi = 96 )
240 : source( source )
242 , dpi( dpi )
243 {}
244
249
253 double referenceScale = 0;
254
258 int dpi = 96;
259
265 QVariant toVariant() const;
266
272 bool loadVariant( const QVariantMap &map );
273
274 // TODO c++20 - replace with = default
275 bool operator==( const QgsProcessingRasterLayerDefinition &other ) const { return source == other.source && referenceScale == other.referenceScale && dpi == other.dpi; }
276
277 bool operator!=( const QgsProcessingRasterLayerDefinition &other ) const { return !( *this == other ); }
278
280 operator QVariant() const { return QVariant::fromValue( *this ); }
281};
282
284
285
292
294{
295 public:
302 : sink( QgsProperty::fromValue( sink ) )
304 {}
305
315
320
327
332
339 QVariantMap createOptions;
340
347 bool useRemapping() const { return mUseRemapping; }
348
356 QgsRemappingSinkDefinition remappingDefinition() const { return mRemappingDefinition; }
357
368 void setRemappingDefinition( const QgsRemappingSinkDefinition &definition );
369
376 QString format() const { return mFormat; }
377
385 void setFormat( const QString &format ) { mFormat = format; }
386
393 QVariant toVariant() const;
394
401 bool loadVariant( const QVariantMap &map );
402
404 operator QVariant() const { return QVariant::fromValue( *this ); }
405
406 // TODO c++20 - replace with = default
407 bool operator==( const QgsProcessingOutputLayerDefinition &other ) const;
408 bool operator!=( const QgsProcessingOutputLayerDefinition &other ) const;
409
410 private:
411 bool mUseRemapping = false;
413 QString mFormat;
414};
415
417
418
419//
420// Parameter definitions
421//
422
423
433
435{
436#ifdef SIP_RUN
437 // clang-format off
438 % TypeHeaderCode
447 % End
449 if ( sipCpp->type() == QgsProcessingParameterBoolean::typeName() )
450 sipType = sipType_QgsProcessingParameterBoolean;
451 else if ( sipCpp->type() == QgsProcessingParameterCrs::typeName() )
452 sipType = sipType_QgsProcessingParameterCrs;
453 else if ( sipCpp->type() == QgsProcessingParameterMapLayer::typeName() )
454 sipType = sipType_QgsProcessingParameterMapLayer;
455 else if ( sipCpp->type() == QgsProcessingParameterExtent::typeName() )
456 sipType = sipType_QgsProcessingParameterExtent;
457 else if ( sipCpp->type() == QgsProcessingParameterPoint::typeName() )
458 sipType = sipType_QgsProcessingParameterPoint;
459 else if ( sipCpp->type() == QgsProcessingParameterGeometry::typeName() )
460 sipType = sipType_QgsProcessingParameterGeometry;
461 else if ( sipCpp->type() == QgsProcessingParameterFile::typeName() )
462 sipType = sipType_QgsProcessingParameterFile;
463 else if ( sipCpp->type() == QgsProcessingParameterMatrix::typeName() )
464 sipType = sipType_QgsProcessingParameterMatrix;
465 else if ( sipCpp->type() == QgsProcessingParameterMultipleLayers::typeName() )
466 sipType = sipType_QgsProcessingParameterMultipleLayers;
467 else if ( sipCpp->type() == QgsProcessingParameterNumber::typeName() )
468 sipType = sipType_QgsProcessingParameterNumber;
469 else if ( sipCpp->type() == QgsProcessingParameterDistance::typeName() )
470 sipType = sipType_QgsProcessingParameterDistance;
471 else if ( sipCpp->type() == QgsProcessingParameterArea::typeName() )
472 sipType = sipType_QgsProcessingParameterArea;
473 else if ( sipCpp->type() == QgsProcessingParameterVolume::typeName() )
474 sipType = sipType_QgsProcessingParameterVolume;
475 else if ( sipCpp->type() == QgsProcessingParameterDuration::typeName() )
476 sipType = sipType_QgsProcessingParameterDuration;
477 else if ( sipCpp->type() == QgsProcessingParameterScale::typeName() )
478 sipType = sipType_QgsProcessingParameterScale;
479 else if ( sipCpp->type() == QgsProcessingParameterRange::typeName() )
480 sipType = sipType_QgsProcessingParameterRange;
481 else if ( sipCpp->type() == QgsProcessingParameterRasterLayer::typeName() )
482 sipType = sipType_QgsProcessingParameterRasterLayer;
483 else if ( sipCpp->type() == QgsProcessingParameterMeshLayer::typeName() )
484 sipType = sipType_QgsProcessingParameterMeshLayer;
485 else if ( sipCpp->type() == QgsProcessingParameterEnum::typeName() )
486 sipType = sipType_QgsProcessingParameterEnum;
487 else if ( sipCpp->type() == QgsProcessingParameterString::typeName() )
488 sipType = sipType_QgsProcessingParameterString;
489 else if ( sipCpp->type() == QgsProcessingParameterExpression::typeName() )
490 sipType = sipType_QgsProcessingParameterExpression;
491 else if ( sipCpp->type() == QgsProcessingParameterAuthConfig::typeName() )
492 sipType = sipType_QgsProcessingParameterAuthConfig;
493 else if ( sipCpp->type() == QgsProcessingParameterVectorLayer::typeName() )
494 sipType = sipType_QgsProcessingParameterVectorLayer;
495 else if ( sipCpp->type() == QgsProcessingParameterField::typeName() )
496 sipType = sipType_QgsProcessingParameterField;
497 else if ( sipCpp->type() == QgsProcessingParameterFeatureSource::typeName() )
498 sipType = sipType_QgsProcessingParameterFeatureSource;
499 else if ( sipCpp->type() == QgsProcessingParameterFeatureSink::typeName() )
500 sipType = sipType_QgsProcessingParameterFeatureSink;
501 else if ( sipCpp->type() == QgsProcessingParameterVectorDestination::typeName() )
502 sipType = sipType_QgsProcessingParameterVectorDestination;
503 else if ( sipCpp->type() == QgsProcessingParameterRasterDestination::typeName() )
504 sipType = sipType_QgsProcessingParameterRasterDestination;
505 else if ( sipCpp->type() == QgsProcessingParameterPointCloudDestination::typeName() )
506 sipType = sipType_QgsProcessingParameterPointCloudDestination;
507 else if ( sipCpp->type() == QgsProcessingParameterFileDestination::typeName() )
508 sipType = sipType_QgsProcessingParameterFileDestination;
509 else if ( sipCpp->type() == QgsProcessingParameterFolderDestination::typeName() )
510 sipType = sipType_QgsProcessingParameterFolderDestination;
511 else if ( sipCpp->type() == QgsProcessingParameterBand::typeName() )
512 sipType = sipType_QgsProcessingParameterBand;
513 else if ( sipCpp->type() == QgsProcessingParameterLayout::typeName() )
514 sipType = sipType_QgsProcessingParameterLayout;
515 else if ( sipCpp->type() == QgsProcessingParameterLayoutItem::typeName() )
516 sipType = sipType_QgsProcessingParameterLayoutItem;
517 else if ( sipCpp->type() == QgsProcessingParameterColor::typeName() )
518 sipType = sipType_QgsProcessingParameterColor;
519 else if ( sipCpp->type() == QgsProcessingParameterCoordinateOperation::typeName() )
520 sipType = sipType_QgsProcessingParameterCoordinateOperation;
521 else if ( sipCpp->type() == QgsProcessingParameterMapTheme::typeName() )
522 sipType = sipType_QgsProcessingParameterMapTheme;
523 else if ( sipCpp->type() == QgsProcessingParameterDateTime::typeName() )
524 sipType = sipType_QgsProcessingParameterDateTime;
525 else if ( sipCpp->type() == QgsProcessingParameterProviderConnection::typeName() )
526 sipType = sipType_QgsProcessingParameterProviderConnection;
527 else if ( sipCpp->type() == QgsProcessingParameterDatabaseSchema::typeName() )
528 sipType = sipType_QgsProcessingParameterDatabaseSchema;
529 else if ( sipCpp->type() == QgsProcessingParameterDatabaseTable::typeName() )
530 sipType = sipType_QgsProcessingParameterDatabaseTable;
531 else if ( sipCpp->type() == QgsProcessingParameterFieldMapping::typeName() )
532 sipType = sipType_QgsProcessingParameterFieldMapping;
533 else if ( sipCpp->type() == QgsProcessingParameterTinInputLayers::typeName() )
534 sipType = sipType_QgsProcessingParameterTinInputLayers;
535 else if ( sipCpp->type() == QgsProcessingParameterVectorTileWriterLayers::typeName() )
536 sipType = sipType_QgsProcessingParameterVectorTileWriterLayers;
537 else if ( sipCpp->type() == QgsProcessingParameterDxfLayers::typeName() )
538 sipType = sipType_QgsProcessingParameterDxfLayers;
539 else if ( sipCpp->type() == QgsProcessingParameterMeshDatasetGroups::typeName() )
540 sipType = sipType_QgsProcessingParameterMeshDatasetGroups;
541 else if ( sipCpp->type() == QgsProcessingParameterMeshDatasetTime::typeName() )
542 sipType = sipType_QgsProcessingParameterMeshDatasetTime;
543 else if ( sipCpp->type() == QgsProcessingParameterPointCloudLayer::typeName() )
544 sipType = sipType_QgsProcessingParameterPointCloudLayer;
545 else if ( sipCpp->type() == QgsProcessingParameterAnnotationLayer::typeName() )
546 sipType = sipType_QgsProcessingParameterAnnotationLayer;
547 else if ( sipCpp->type() == QgsProcessingParameterPointCloudAttribute::typeName() )
548 sipType = sipType_QgsProcessingParameterPointCloudAttribute;
549 else if ( sipCpp->type() == QgsProcessingParameterVectorTileDestination::typeName() )
550 sipType = sipType_QgsProcessingParameterVectorTileDestination;
551 else if ( sipCpp->type() == QgsProcessingParameterInterpolationPixelSize::typeName() )
552 sipType = sipType_QgsProcessingParameterInterpolationPixelSize;
553 else if ( sipCpp->type() == QgsProcessingParameterTileExtentMaxZoomList::typeName() )
554 sipType = sipType_QgsProcessingParameterTileExtentMaxZoomList;
555 else
556 sipType = nullptr;
557 SIP_END
558// clang-format on
559#endif
560
561 public:
562
566 QgsProcessingParameterDefinition( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false, const QString &help = QString() );
567
569
577 virtual QColor modelColor() const;
578
585 virtual QString userFriendlyString( const QVariant &value ) const;
586
591
595 virtual QString type() const = 0;
596
602 virtual bool isDestination() const { return false; }
603
609 QString name() const { return mName; }
610
616 void setName( const QString &name ) { mName = name; }
617
623 QString description() const { return mDescription; }
624
631
641 QString help() const { return mHelp; }
642
652 void setHelp( const QString &help ) { mHelp = help; }
653
660 QVariant defaultValue() const { return mDefault; }
661
668 void setDefaultValue( const QVariant &value ) { mDefault = value; }
669
682 QVariant guiDefaultValueOverride() const;
683
699 void setGuiDefaultValueOverride( const QVariant &value ) { mGuiDefault = value; }
700
709 QVariant defaultValueForGui() const;
710
716
722
730 virtual bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const;
731
739 virtual QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const;
740
752 virtual QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const;
753
767 virtual QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const;
768
782 virtual QStringList valueAsStringList( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const;
783
789 virtual QString valueAsPythonComment( const QVariant &value, QgsProcessingContext &context ) const;
790
795 virtual QString asScriptCode() const;
796
807
813 virtual QVariantMap toVariantMap() const;
814
820 virtual bool fromVariantMap( const QVariantMap &map );
821
828 SIP_SKIP QVariantMap metadata() const { return mMetadata; }
829
835 QVariantMap &metadata() { return mMetadata; }
836
842 void setMetadata( const QVariantMap &metadata ) { mMetadata = metadata; }
843
848 virtual QStringList dependsOnOtherParameters() const { return QStringList(); }
849
856
862 QgsProcessingProvider *provider() const;
863
868 virtual QString toolTip() const;
869
877 bool isDynamic() const { return mIsDynamic; }
878
886 void setIsDynamic( bool dynamic ) { mIsDynamic = dynamic; }
887
895
903
916
929
944
962 void setAdditionalExpressionContextVariables( const QStringList &variables ) { mAdditionalExpressionVariables = variables; }
963
964#ifndef SIP_RUN
965
973 enum class ValueAsStringFlag : int
974 {
975 AllowMapLayerValues = 1 << 0,
976 };
978#endif
979
980 protected:
981#ifndef SIP_RUN
982
989 QString valueAsStringPrivate( const QVariant &value, QgsProcessingContext &context, bool &ok, ValueAsStringFlags flags ) const;
990
997 QVariant valueAsJsonObjectPrivate( const QVariant &value, QgsProcessingContext &context, ValueAsStringFlags flags ) const;
998#endif
999
1006 QVariant defaultGuiValueFromSetting() const;
1007
1009 QString mName;
1010
1013
1015 QString mHelp;
1016
1018 QVariant mDefault;
1019
1021 QVariant mGuiDefault;
1022
1025
1027 QVariantMap mMetadata;
1028
1031
1033 bool mIsDynamic = false;
1034
1037
1040
1043
1044 // To allow access to mAlgorithm. We don't want a public setter for this!
1046};
1047
1048#ifndef SIP_RUN
1050#endif
1051
1053typedef QList< const QgsProcessingParameterDefinition * > QgsProcessingParameterDefinitions;
1054
1071
1073{
1074 public:
1079 static bool isDynamic( const QVariantMap &parameters, const QString &name );
1080
1084 static QString parameterAsString( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1085
1090 static QString parameterAsString( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1091
1095 static QString parameterAsExpression( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1096
1101 static QString parameterAsExpression( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1102
1106 static double parameterAsDouble( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1107
1112 static double parameterAsDouble( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1113
1117 static int parameterAsInt( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1118
1123 static int parameterAsInt( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1124
1129 static QList<int> parameterAsInts( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1130
1135 static QList<int> parameterAsInts( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1136
1145 static QDateTime parameterAsDateTime( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1146
1155 static QDateTime parameterAsDateTime( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1156
1165 static QDate parameterAsDate( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1166
1175 static QDate parameterAsDate( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1176
1185 static QTime parameterAsTime( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1186
1195 static QTime parameterAsTime( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1196
1200 static int parameterAsEnum( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1201
1206 static int parameterAsEnum( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1207
1211 static QList<int> parameterAsEnums( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1212
1217 static QList<int> parameterAsEnums( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1218
1223 static QString parameterAsEnumString( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1224
1229 static QString parameterAsEnumString( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1230
1235 static QStringList parameterAsEnumStrings( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1236
1241 static QStringList parameterAsEnumStrings( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1242
1246 static bool parameterAsBool( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1247
1253 static bool parameterAsBoolean( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1254
1259 static bool parameterAsBool( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1260
1265 static bool parameterAsBoolean( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1266
1285 const QgsProcessingParameterDefinition *definition,
1286 const QVariantMap &parameters,
1287 const QgsFields &fields,
1288 Qgis::WkbType geometryType,
1290 QgsProcessingContext &context,
1291 QString &destinationIdentifier SIP_OUT,
1293 const QVariantMap &createOptions = QVariantMap(),
1294 const QStringList &datasourceOptions = QStringList(),
1295 const QStringList &layerOptions = QStringList()
1296 ) SIP_FACTORY;
1297
1318 const QgsProcessingParameterDefinition *definition,
1319 const QVariant &value,
1320 const QgsFields &fields,
1321 Qgis::WkbType geometryType,
1323 QgsProcessingContext &context,
1324 QString &destinationIdentifier SIP_OUT,
1326 const QVariantMap &createOptions = QVariantMap(),
1327 const QStringList &datasourceOptions = QStringList(),
1328 const QStringList &layerOptions = QStringList()
1330
1339 static QgsProcessingFeatureSource *parameterAsSource( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context ) SIP_FACTORY;
1340
1351 static QgsProcessingFeatureSource *parameterAsSource( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context ) SIP_FACTORY;
1352
1369 const QgsProcessingParameterDefinition *definition,
1370 const QVariantMap &parameters,
1371 QgsProcessingContext &context,
1372 const QStringList &compatibleFormats,
1373 const QString &preferredFormat = QString( "shp" ),
1374 QgsProcessingFeedback *feedback = nullptr
1375 );
1376
1407 const QgsProcessingParameterDefinition *definition,
1408 const QVariantMap &parameters,
1409 QgsProcessingContext &context,
1410 const QStringList &compatibleFormats,
1411 const QString &preferredFormat = QString( "shp" ),
1412 QgsProcessingFeedback *feedback = nullptr,
1413 QString *layerName SIP_OUT = nullptr
1414 );
1415
1424 const QgsProcessingParameterDefinition *definition,
1425 const QVariantMap &parameters,
1426 QgsProcessingContext &context,
1429 );
1430
1441 const QgsProcessingParameterDefinition *definition,
1442 const QVariant &value,
1443 QgsProcessingContext &context,
1446 );
1447
1455 static QgsRasterLayer *parameterAsRasterLayer( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1456
1466 static QgsRasterLayer *parameterAsRasterLayer( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1467
1471 static QString parameterAsOutputLayer( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1472
1481 static QString parameterAsOutputLayer( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context, bool testOnly = false );
1482
1490 static QString parameterAsOutputFormat( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1491
1495 static QString parameterAsFileOutput( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1496
1501 static QString parameterAsFileOutput( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1502
1510 static QgsVectorLayer *parameterAsVectorLayer( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1511
1521 static QgsVectorLayer *parameterAsVectorLayer( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1522
1532 static QgsMeshLayer *parameterAsMeshLayer( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1533
1543 static QgsMeshLayer *parameterAsMeshLayer( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1544
1548 static QgsCoordinateReferenceSystem parameterAsCrs( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1549
1554 static QgsCoordinateReferenceSystem parameterAsCrs( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1555
1566 const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, const QgsCoordinateReferenceSystem &crs = QgsCoordinateReferenceSystem()
1567 );
1568
1581 const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context, const QgsCoordinateReferenceSystem &crs = QgsCoordinateReferenceSystem()
1582 );
1583
1596 const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, const QgsCoordinateReferenceSystem &crs = QgsCoordinateReferenceSystem()
1597 );
1598
1604 static QgsCoordinateReferenceSystem parameterAsExtentCrs( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1605
1611 static QgsCoordinateReferenceSystem parameterAsExtentCrs( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1612
1613
1622 const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, const QgsCoordinateReferenceSystem &crs = QgsCoordinateReferenceSystem()
1623 );
1624
1634 const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context, const QgsCoordinateReferenceSystem &crs = QgsCoordinateReferenceSystem()
1635 );
1636
1642 static QgsCoordinateReferenceSystem parameterAsPointCrs( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1643
1650 static QgsCoordinateReferenceSystem parameterAsPointCrs( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1651
1658 const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, const QgsCoordinateReferenceSystem &crs = QgsCoordinateReferenceSystem()
1659 );
1660
1667 const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context, const QgsCoordinateReferenceSystem &crs = QgsCoordinateReferenceSystem()
1668 );
1669
1676 static QgsCoordinateReferenceSystem parameterAsGeometryCrs( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1677
1684 static QgsCoordinateReferenceSystem parameterAsGeometryCrs( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1685
1689 static QString parameterAsFile( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1690
1695 static QString parameterAsFile( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1696
1701 static QVariantList parameterAsMatrix( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1702
1708 static QVariantList parameterAsMatrix( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1709
1714 static QList< QgsMapLayer *> parameterAsLayerList(
1715 const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, QgsProcessing::LayerOptionsFlags flags = QgsProcessing::LayerOptionsFlags()
1716 );
1717
1723 static QList< QgsMapLayer *> parameterAsLayerList(
1725 );
1726
1732 static QStringList parameterAsFileList( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1733
1739 static QStringList parameterAsFileList( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1740
1744 static QList<double> parameterAsRange( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1745
1750 static QList<double> parameterAsRange( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1751
1757 Q_DECL_DEPRECATED static QStringList parameterAsFields( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context ) SIP_DEPRECATED;
1758
1765 Q_DECL_DEPRECATED static QStringList parameterAsFields( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context ) SIP_DEPRECATED;
1766
1772 static QStringList parameterAsStrings( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1773
1779 static QStringList parameterAsStrings( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1780
1789 static QgsPrintLayout *parameterAsLayout( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1790
1799 static QgsPrintLayout *parameterAsLayout( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1800
1809 static QgsLayoutItem *parameterAsLayoutItem( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, QgsPrintLayout *layout );
1810
1819 static QgsLayoutItem *parameterAsLayoutItem( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context, QgsPrintLayout *layout );
1820
1826 static QColor parameterAsColor( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1827
1833 static QColor parameterAsColor( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1834
1840 static QString parameterAsConnectionName( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1841
1847 static QString parameterAsConnectionName( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1848
1854 static QString parameterAsSchema( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1855
1861 static QString parameterAsSchema( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1862
1868 static QString parameterAsDatabaseTableName( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, const QgsProcessingContext &context );
1869
1875 static QString parameterAsDatabaseTableName( const QgsProcessingParameterDefinition *definition, const QVariant &value, const QgsProcessingContext &context );
1876
1888 const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context, QgsProcessing::LayerOptionsFlags flags = QgsProcessing::LayerOptionsFlags()
1889 );
1890
1903 );
1904
1918 static QgsAnnotationLayer *parameterAsAnnotationLayer( const QgsProcessingParameterDefinition *definition, const QVariantMap &parameters, QgsProcessingContext &context );
1919
1933 static QgsAnnotationLayer *parameterAsAnnotationLayer( const QgsProcessingParameterDefinition *definition, const QVariant &value, QgsProcessingContext &context );
1934
1941
1945 static QString descriptionFromName( const QString &name );
1946
1953
1954 private:
1955 static bool parseScriptCodeParameterOptions( const QString &code, bool &isOptional, QString &name, QString &type, QString &definition );
1956};
1957
1958
1965{
1966 public:
1970 QgsProcessingParameterBoolean( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false );
1971
1975 static QString typeName() { return u"boolean"_s; }
1976 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
1977 QString type() const override { return typeName(); }
1978 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
1979 QString asScriptCode() const override;
1980
1984 static QgsProcessingParameterBoolean *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
1985};
1986
1993{
1994 public:
1998 QgsProcessingParameterCrs( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false );
1999
2000 QString userFriendlyString( const QVariant &value ) const override;
2001
2005 static QString typeName() { return u"crs"_s; }
2006 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2007 QString type() const override { return typeName(); }
2008 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2009 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
2010 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
2011 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
2012
2016 static QgsProcessingParameterCrs *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
2017};
2018
2025{
2026 public:
2030 QgsProcessingParameterExtent( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false );
2031
2035 static QString typeName() { return u"extent"_s; }
2036 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2037 QString type() const override { return typeName(); }
2038 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2039 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
2040 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
2041 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
2042
2046 static QgsProcessingParameterExtent *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
2047
2048 private:
2054 static bool variantIsValidStringForExtent( const QVariant &value );
2055};
2056
2057
2064{
2065 public:
2069 QgsProcessingParameterPoint( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false );
2070
2074 static QString typeName() { return u"point"_s; }
2075 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2076 QString type() const override { return typeName(); }
2077 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2078 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
2079
2083 static QgsProcessingParameterPoint *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
2084};
2085
2093{
2094 public:
2103 const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false, const QList< int > &geometryTypes = QList< int >(), bool allowMultipart = true
2104 );
2105
2109 static QString typeName() { return u"geometry"_s; }
2110 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2111 QString type() const override { return typeName(); }
2112 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2113 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
2114 QString asScriptCode() const override;
2116 QVariantMap toVariantMap() const override;
2117 bool fromVariantMap( const QVariantMap &map ) override;
2118
2123 QList<int> geometryTypes() const { return mGeomTypes; }
2124
2129 void setGeometryTypes( const QList<int> &geometryTypes ) { mGeomTypes = geometryTypes; }
2130
2135 bool allowMultipart() const { return mAllowMultipart; }
2136
2141 void setAllowMultipart( bool allowMultipart ) { mAllowMultipart = allowMultipart; }
2142
2143 QString userFriendlyString( const QVariant &value ) const override;
2144
2148 static QgsProcessingParameterGeometry *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
2149
2150 private:
2151 QList<int> mGeomTypes;
2152 bool mAllowMultipart;
2153};
2154
2161{
2162 public:
2171 const QString &name,
2172 const QString &description = QString(),
2174 const QString &extension = QString(),
2175 const QVariant &defaultValue = QVariant(),
2176 bool optional = false,
2177 const QString &fileFilter = QString()
2178 );
2179
2183 static QString typeName() { return u"file"_s; }
2184 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2185 QString type() const override { return typeName(); }
2186 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2187 QString asScriptCode() const override;
2189 QString createFileFilter() const override;
2190
2196
2202
2210 QString extension() const { return mExtension; }
2211
2221 void setExtension( const QString &extension );
2222
2229 QString fileFilter() const;
2230
2240 void setFileFilter( const QString &filter );
2241
2242 QVariantMap toVariantMap() const override;
2243 bool fromVariantMap( const QVariantMap &map ) override;
2244
2248 static QgsProcessingParameterFile *fromScriptCode(
2249 const QString &name, const QString &description, bool isOptional, const QString &definition, Qgis::ProcessingFileParameterBehavior behavior = Qgis::ProcessingFileParameterBehavior::File
2250 ) SIP_FACTORY;
2251
2252 private:
2254 QString mExtension;
2255 QString mFileFilter;
2256};
2257
2264{
2265 public:
2270 const QString &name,
2271 const QString &description = QString(),
2272 int numberRows = 3,
2273 bool hasFixedNumberRows = false,
2274 const QStringList &headers = QStringList(),
2275 const QVariant &defaultValue = QVariant(),
2276 bool optional = false
2277 );
2278
2282 static QString typeName() { return u"matrix"_s; }
2283
2284 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2285 QString type() const override { return typeName(); }
2286 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2287 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
2289
2294 QStringList headers() const;
2295
2300 void setHeaders( const QStringList &headers );
2301
2308 int numberRows() const;
2309
2316 void setNumberRows( int rows );
2317
2323 bool hasFixedNumberRows() const;
2324
2330 void setHasFixedNumberRows( bool hasFixedNumberRows );
2331
2332 QVariantMap toVariantMap() const override;
2333 bool fromVariantMap( const QVariantMap &map ) override;
2334
2338 static QgsProcessingParameterMatrix *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
2339
2340 private:
2341 QStringList mHeaders;
2342 int mNumberRows = 3;
2343 bool mFixedNumberRows = false;
2344};
2345
2352{
2353 public:
2358 const QString &name,
2359 const QString &description = QString(),
2361 const QVariant &defaultValue = QVariant(),
2362 bool optional = false
2363 );
2364
2368 static QString typeName() { return u"multilayer"_s; }
2369 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2370 QString type() const override { return typeName(); }
2371 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2372 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
2373 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
2374 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
2375 QString asScriptCode() const override;
2377 QString createFileFilter() const override;
2378
2383 Qgis::ProcessingSourceType layerType() const;
2384
2389 void setLayerType( Qgis::ProcessingSourceType type );
2390
2396 int minimumNumberInputs() const;
2397
2403 void setMinimumNumberInputs( int minimum );
2404
2405 QVariantMap toVariantMap() const override;
2406 bool fromVariantMap( const QVariantMap &map ) override;
2407
2411 static QgsProcessingParameterMultipleLayers *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
2412
2413 private:
2415 int mMinimumNumberInputs = 0;
2416};
2417
2436{
2437 public:
2442 const QString &name,
2443 const QString &description = QString(),
2445 const QVariant &defaultValue = QVariant(),
2446 bool optional = false,
2447 double minValue = std::numeric_limits<double>::lowest() + 1,
2448 double maxValue = std::numeric_limits<double>::max()
2449 );
2450
2454 static QString typeName() { return u"number"_s; }
2455
2456 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2457 QString type() const override { return typeName(); }
2458 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2459 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
2460 QString toolTip() const override;
2462
2467 double minimum() const;
2468
2473 void setMinimum( double minimum );
2474
2479 double maximum() const;
2480
2485 void setMaximum( double maximum );
2486
2491 Qgis::ProcessingNumberParameterType dataType() const;
2492
2497 void setDataType( Qgis::ProcessingNumberParameterType type );
2498
2499 QVariantMap toVariantMap() const override;
2500 bool fromVariantMap( const QVariantMap &map ) override;
2501
2505 static QgsProcessingParameterNumber *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
2506
2507 private:
2508 double mMin = std::numeric_limits<double>::lowest() + 1;
2509 double mMax = std::numeric_limits<double>::max();
2511};
2512
2535{
2536 public:
2541 const QString &name,
2542 const QString &description = QString(),
2543 const QVariant &defaultValue = QVariant(),
2544 const QString &parentParameterName = QString(),
2545 bool optional = false,
2546 double minValue = std::numeric_limits<double>::lowest() + 1,
2547 double maxValue = std::numeric_limits<double>::max()
2548 );
2549
2553 static QString typeName() { return u"distance"_s; } // cppcheck-suppress duplInheritedMember
2554
2555 QString userFriendlyString( const QVariant &value ) const override;
2556
2557 QgsProcessingParameterDistance *clone() const override SIP_FACTORY;
2558
2559 QString type() const override;
2560 QStringList dependsOnOtherParameters() const override;
2561 QString asPythonString( QgsProcessing::PythonOutputType outputType = QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
2562
2567 QString parentParameterName() const;
2568
2573 void setParentParameterName( const QString &parentParameterName );
2574
2581 Qgis::DistanceUnit defaultUnit() const { return mDefaultUnit; }
2582
2589 void setDefaultUnit( Qgis::DistanceUnit unit ) { mDefaultUnit = unit; }
2590
2591 QVariantMap toVariantMap() const override;
2592 bool fromVariantMap( const QVariantMap &map ) override;
2593
2594 private:
2595 QString mParentParameterName;
2597};
2598
2599
2622{
2623 public:
2628 const QString &name,
2629 const QString &description = QString(),
2630 const QVariant &defaultValue = QVariant(),
2631 const QString &parentParameterName = QString(),
2632 bool optional = false,
2633 double minValue = 0,
2634 double maxValue = std::numeric_limits<double>::max()
2635 );
2636
2640 static QString typeName() { return u"area"_s; } // cppcheck-suppress duplInheritedMember
2641
2642 QgsProcessingParameterArea *clone() const override SIP_FACTORY;
2643
2644 QString type() const override;
2645 QStringList dependsOnOtherParameters() const override;
2646 QString asPythonString( QgsProcessing::PythonOutputType outputType = QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
2647
2652 QString parentParameterName() const;
2653
2658 void setParentParameterName( const QString &parentParameterName );
2659
2665 Qgis::AreaUnit defaultUnit() const { return mDefaultUnit; }
2666
2672 void setDefaultUnit( Qgis::AreaUnit unit ) { mDefaultUnit = unit; }
2673
2674 QVariantMap toVariantMap() const override;
2675 bool fromVariantMap( const QVariantMap &map ) override;
2676 QString userFriendlyString( const QVariant &value ) const override;
2677
2678 private:
2679 QString mParentParameterName;
2681};
2682
2683
2706{
2707 public:
2712 const QString &name,
2713 const QString &description = QString(),
2714 const QVariant &defaultValue = QVariant(),
2715 const QString &parentParameterName = QString(),
2716 bool optional = false,
2717 double minValue = 0,
2718 double maxValue = std::numeric_limits<double>::max()
2719 );
2720
2724 static QString typeName() { return u"volume"_s; } // cppcheck-suppress duplInheritedMember
2725
2726 QgsProcessingParameterVolume *clone() const override SIP_FACTORY;
2727
2728 QString type() const override;
2729 QStringList dependsOnOtherParameters() const override;
2730 QString asPythonString( QgsProcessing::PythonOutputType outputType = QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
2731
2736 QString parentParameterName() const;
2737
2742 void setParentParameterName( const QString &parentParameterName );
2743
2749 Qgis::VolumeUnit defaultUnit() const { return mDefaultUnit; }
2750
2756 void setDefaultUnit( Qgis::VolumeUnit unit ) { mDefaultUnit = unit; }
2757
2758 QVariantMap toVariantMap() const override;
2759 bool fromVariantMap( const QVariantMap &map ) override;
2760 QString userFriendlyString( const QVariant &value ) const override;
2761
2762 private:
2763 QString mParentParameterName;
2765};
2766
2767
2777{
2778 public:
2783 const QString &name,
2784 const QString &description = QString(),
2785 const QVariant &defaultValue = QVariant(),
2786 bool optional = false,
2787 double minValue = std::numeric_limits<double>::lowest() + 1,
2788 double maxValue = std::numeric_limits<double>::max()
2789 );
2790
2794 static QString typeName() { return u"duration"_s; } // cppcheck-suppress duplInheritedMember
2795
2796 QgsProcessingParameterDuration *clone() const override SIP_FACTORY;
2797
2798 QString type() const override;
2799 QString asPythonString( QgsProcessing::PythonOutputType outputType = QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
2800
2806 Qgis::TemporalUnit defaultUnit() const { return mDefaultUnit; }
2807
2813 void setDefaultUnit( Qgis::TemporalUnit unit ) { mDefaultUnit = unit; }
2814
2815 QVariantMap toVariantMap() const override;
2816 bool fromVariantMap( const QVariantMap &map ) override;
2817 QString userFriendlyString( const QVariant &value ) const override;
2818
2819 private:
2821};
2822
2834{
2835 public:
2839 explicit QgsProcessingParameterScale( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false );
2840
2844 static QString typeName() { return u"scale"_s; } // cppcheck-suppress duplInheritedMember
2845
2846 QgsProcessingParameterScale *clone() const override SIP_FACTORY;
2847
2848 QString type() const override;
2849 QString asPythonString( QgsProcessing::PythonOutputType outputType = QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
2850
2854 static QgsProcessingParameterScale *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY; // cppcheck-suppress duplInheritedMember
2855};
2856
2863{
2864 public:
2869 const QString &name,
2870 const QString &description = QString(),
2872 const QVariant &defaultValue = QVariant(),
2873 bool optional = false
2874 );
2875
2879 static QString typeName() { return u"range"_s; }
2880
2881 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2882 QString type() const override { return typeName(); }
2883 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2884 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
2886
2891 Qgis::ProcessingNumberParameterType dataType() const;
2892
2897 void setDataType( Qgis::ProcessingNumberParameterType dataType );
2898
2899 QVariantMap toVariantMap() const override;
2900 bool fromVariantMap( const QVariantMap &map ) override;
2901
2905 static QgsProcessingParameterRange *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
2906
2907 private:
2909};
2910
2917{
2918 public:
2922 QgsProcessingParameterRasterLayer( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false );
2923
2927 static QString typeName() { return u"raster"_s; }
2928 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2929 QString type() const override { return typeName(); }
2930 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
2931 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
2932 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
2933 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
2934 QString createFileFilter() const override;
2935
2939 static QgsProcessingParameterRasterLayer *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
2940
2947 void setParameterCapabilities( Qgis::RasterProcessingParameterCapabilities capabilities );
2948
2953 Qgis::RasterProcessingParameterCapabilities parameterCapabilities() const;
2954
2955 private:
2957};
2958
2977{
2978 public:
2983 const QString &name,
2984 const QString &description = QString(),
2985 const QStringList &options = QStringList(),
2986 bool allowMultiple = false,
2987 const QVariant &defaultValue = QVariant(),
2988 bool optional = false,
2989 bool usesStaticStrings = false
2990 );
2991
2992 QString userFriendlyString( const QVariant &value ) const override;
2993
2997 static QString typeName() { return u"enum"_s; }
2998 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
2999 QString type() const override { return typeName(); }
3000 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3001 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3002 QString valueAsPythonComment( const QVariant &value, QgsProcessingContext &context ) const override;
3003 QString asScriptCode() const override;
3005
3010 QStringList options() const;
3011
3016 void setOptions( const QStringList &options );
3017
3022 bool allowMultiple() const;
3023
3028 void setAllowMultiple( bool allowMultiple );
3029
3036 bool usesStaticStrings() const;
3037
3044 void setUsesStaticStrings( bool usesStaticStrings );
3045
3046 QVariantMap toVariantMap() const override;
3047 bool fromVariantMap( const QVariantMap &map ) override;
3048
3052 static QgsProcessingParameterEnum *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3053
3054 private:
3055 QStringList mOptions;
3056 bool mAllowMultiple = false;
3057 bool mUsesStaticStrings = false;
3058};
3059
3087{
3088 public:
3092 QgsProcessingParameterString( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool multiLine = false, bool optional = false );
3093
3097 static QString typeName() { return u"string"_s; }
3098 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3099 QString type() const override { return typeName(); }
3100 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3101 QString asScriptCode() const override;
3103
3108 bool multiLine() const;
3109
3114 void setMultiLine( bool multiLine );
3115
3116 QVariantMap toVariantMap() const override;
3117 bool fromVariantMap( const QVariantMap &map ) override;
3118
3122 static QgsProcessingParameterString *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3123
3124 private:
3125 bool mMultiLine = false;
3126};
3127
3128
3142{
3143 public:
3147 QgsProcessingParameterAuthConfig( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false );
3148
3152 static QString typeName() { return u"authcfg"_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 QString asScriptCode() const override;
3157
3161 static QgsProcessingParameterAuthConfig *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3162};
3163
3170{
3171 public:
3176 const QString &name,
3177 const QString &description = QString(),
3178 const QVariant &defaultValue = QVariant(),
3179 const QString &parentLayerParameterName = QString(),
3180 bool optional = false,
3182 );
3183
3187 static QString typeName() { return u"expression"_s; }
3188 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3189 QString type() const override { return typeName(); }
3190 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3191 QStringList dependsOnOtherParameters() const override;
3193
3198 QString parentLayerParameterName() const;
3199
3204 void setParentLayerParameterName( const QString &parentLayerParameterName );
3205
3212 Qgis::ExpressionType expressionType() const;
3213
3220 void setExpressionType( Qgis::ExpressionType type );
3221
3222 QVariantMap toVariantMap() const override;
3223 bool fromVariantMap( const QVariantMap &map ) override;
3224
3228 static QgsProcessingParameterExpression *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3229
3230 private:
3231 QString mParentLayerParameterName;
3233};
3234
3235
3242{
3243 public:
3247 QgsProcessingParameterLimitedDataTypes( const QList< int > &types = QList< int >() );
3248
3253 QList< int > dataTypes() const;
3254
3259 void setDataTypes( const QList< int > &types );
3260
3261 protected:
3263 QList< int > mDataTypes;
3264};
3265
3274{
3275 public:
3280 const QString &name, const QString &description = QString(), const QList< int > &types = QList< int >(), const QVariant &defaultValue = QVariant(), bool optional = false
3281 );
3282
3286 static QString typeName() { return u"vector"_s; }
3287 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3288 QString type() const override { return typeName(); }
3289 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3290 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3291 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
3292 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
3294 QString createFileFilter() const override;
3295
3296 QVariantMap toVariantMap() const override;
3297 bool fromVariantMap( const QVariantMap &map ) override;
3298
3302 static QgsProcessingParameterVectorLayer *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3303};
3304
3312{
3313 public:
3317 QgsProcessingParameterMeshLayer( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false );
3318
3322 static QString typeName() { return u"mesh"_s; }
3323 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3324 QString type() const override { return typeName(); }
3325 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3326 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3327 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
3328 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
3329 QString createFileFilter() const override;
3330
3334 static QgsProcessingParameterMeshLayer *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3335};
3336
3343{
3344 public:
3349 const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false, const QList< int > &types = QList< int >()
3350 );
3351
3355 static QString typeName() { return u"layer"_s; }
3356 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3357 QString type() const override { return typeName(); }
3358 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3359 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3360 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
3361 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
3362 QString asScriptCode() const override;
3364 QString createFileFilter() const override;
3365
3366 QVariantMap toVariantMap() const override;
3367 bool fromVariantMap( const QVariantMap &map ) override;
3368
3372 static QgsProcessingParameterMapLayer *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3373};
3374
3381{
3382 public:
3387 const QString &name,
3388 const QString &description = QString(),
3389 const QVariant &defaultValue = QVariant(),
3390 const QString &parentLayerParameterName = QString(),
3392 bool allowMultiple = false,
3393 bool optional = false,
3394 bool defaultToAllFields = false
3395 );
3396
3400 static QString typeName() { return u"field"_s; }
3401 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3402 QString type() const override { return typeName(); }
3403 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3404 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3405 QString asScriptCode() const override;
3407 QStringList dependsOnOtherParameters() const override;
3408
3413 QString parentLayerParameterName() const;
3414
3419 void setParentLayerParameterName( const QString &parentLayerParameterName );
3420
3426
3431 void setDataType( Qgis::ProcessingFieldParameterDataType type );
3432
3437 bool allowMultiple() const;
3438
3443 void setAllowMultiple( bool allowMultiple );
3444
3454 bool defaultToAllFields() const;
3455
3465 void setDefaultToAllFields( bool enabled );
3466
3467 QVariantMap toVariantMap() const override;
3468 bool fromVariantMap( const QVariantMap &map ) override;
3469
3473 static QgsProcessingParameterField *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3474
3475 private:
3476 QString mParentLayerParameterName;
3478 bool mAllowMultiple = false;
3479 bool mDefaultToAllFields = false;
3480};
3481
3482
3489{
3490 public:
3495 const QString &name, const QString &description = QString(), const QList< int > &types = QList< int >(), const QVariant &defaultValue = QVariant(), bool optional = false
3496 );
3497
3501 static QString typeName() { return u"source"_s; }
3502 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3503 QString type() const override { return typeName(); }
3504 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3505 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3506 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
3507 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
3508 QString asScriptCode() const override;
3510 QString createFileFilter() const override;
3511
3512 QVariantMap toVariantMap() const override;
3513 bool fromVariantMap( const QVariantMap &map ) override;
3514
3518 static QgsProcessingParameterFeatureSource *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3519};
3520
3528{
3529 public:
3536 QgsProcessingDestinationParameter( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false, bool createByDefault = true );
3537
3538 bool isDestination() const override { return true; }
3539 QVariantMap toVariantMap() const override;
3540 bool fromVariantMap( const QVariantMap &map ) override;
3542 QString createFileFilter() const override;
3543
3549
3555 bool supportsNonFileBasedOutput() const { return mSupportsNonFileBasedOutputs; }
3556
3563
3568 virtual QString defaultFileExtension() const = 0;
3569
3575 virtual QString generateTemporaryDestination( const QgsProcessingContext *context = nullptr ) const;
3576
3591 virtual bool isSupportedOutputValue( const QVariant &value, QgsProcessingContext &context, QString &error SIP_OUT ) const;
3592
3598 bool createByDefault() const;
3599
3606
3607 protected:
3616 QgsProcessingProvider *originalProvider() const { return mOriginalProvider; }
3617
3618 private:
3626 QgsProcessingProvider *mOriginalProvider = nullptr;
3627
3628 bool mSupportsNonFileBasedOutputs = true;
3629 bool mCreateByDefault = true;
3630
3632 friend class TestQgsProcessing;
3634};
3635
3636
3645{
3646 public:
3654 const QString &name,
3655 const QString &description = QString(),
3657 const QVariant &defaultValue = QVariant(),
3658 bool optional = false,
3659 bool createByDefault = true,
3660 bool supportsAppend = false
3661 );
3662
3666 static QString typeName() { return u"sink"_s; }
3667 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3668 QString type() const override { return typeName(); }
3669 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3670 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3671 QString asScriptCode() const override;
3672 QgsProcessingOutputDefinition *toOutputDefinition() const override SIP_FACTORY;
3673 QString defaultFileExtension() const override;
3674 QString asPythonString( QgsProcessing::PythonOutputType outputType = QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
3675 QString createFileFilter() const override;
3676
3682 virtual QStringList supportedOutputVectorLayerExtensions() const;
3683
3688 Qgis::ProcessingSourceType dataType() const;
3689
3694 bool hasGeometry() const;
3695
3700 void setDataType( Qgis::ProcessingSourceType type );
3701
3710 bool supportsAppend() const;
3711
3720 void setSupportsAppend( bool supportsAppend );
3721
3722 QVariantMap toVariantMap() const override;
3723 bool fromVariantMap( const QVariantMap &map ) override;
3724 QString generateTemporaryDestination( const QgsProcessingContext *context = nullptr ) const override;
3725
3729 static QgsProcessingParameterFeatureSink *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3730
3731 private:
3732 Qgis::ProcessingSourceType mDataType = Qgis::ProcessingSourceType::VectorAnyGeometry;
3733 bool mSupportsAppend = false;
3734};
3735
3736
3747{
3748 public:
3756 const QString &name,
3757 const QString &description = QString(),
3759 const QVariant &defaultValue = QVariant(),
3760 bool optional = false,
3761 bool createByDefault = true
3762 );
3763
3767 static QString typeName() { return u"vectorDestination"_s; }
3768 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3769 QString type() const override { return typeName(); }
3770 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3771 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3772 QString asScriptCode() const override;
3773 QgsProcessingOutputDefinition *toOutputDefinition() const override SIP_FACTORY;
3774 QString defaultFileExtension() const override;
3775 QString asPythonString( QgsProcessing::PythonOutputType outputType = QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
3776 QString createFileFilter() const override;
3777
3783 virtual QStringList supportedOutputVectorLayerExtensions() const;
3784
3789 Qgis::ProcessingSourceType dataType() const;
3790
3795 bool hasGeometry() const;
3796
3801 void setDataType( Qgis::ProcessingSourceType type );
3802
3803 QVariantMap toVariantMap() const override;
3804 bool fromVariantMap( const QVariantMap &map ) override;
3805
3809 static QgsProcessingParameterVectorDestination *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3810
3811
3812 private:
3813 Qgis::ProcessingSourceType mDataType = Qgis::ProcessingSourceType::VectorAnyGeometry;
3814};
3815
3823{
3824 public:
3831 QgsProcessingParameterRasterDestination( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false, bool createByDefault = true );
3832
3836 static QString typeName() { return u"rasterDestination"_s; }
3837 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3838 QString type() const override { return typeName(); }
3839 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3840 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3841 QgsProcessingOutputDefinition *toOutputDefinition() const override SIP_FACTORY;
3842 QString defaultFileExtension() const override;
3843
3850 QString defaultFileFormat() const;
3851
3852 QString createFileFilter() const override;
3853
3860 Q_DECL_DEPRECATED virtual QStringList supportedOutputRasterLayerExtensions() const SIP_DEPRECATED;
3861
3867 virtual QList<QPair<QString, QString>> supportedOutputRasterLayerFormatAndExtensions() const;
3868
3872 static QgsProcessingParameterRasterDestination *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3873};
3874
3896{
3897 public:
3905 const QString &name, const QString &description = QString(), const QString &fileFilter = QString(), const QVariant &defaultValue = QVariant(), bool optional = false, bool createByDefault = true
3906 );
3907
3911 static QString typeName() { return u"fileDestination"_s; }
3912 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3913 QString type() const override { return typeName(); }
3914 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3915 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3916 QgsProcessingOutputDefinition *toOutputDefinition() const override SIP_FACTORY;
3917 QString defaultFileExtension() const override;
3918 QString asPythonString( QgsProcessing::PythonOutputType outputType = QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
3919 QString createFileFilter() const override;
3920
3925 QString fileFilter() const;
3926
3931 void setFileFilter( const QString &filter );
3932
3933 QVariantMap toVariantMap() const override;
3934 bool fromVariantMap( const QVariantMap &map ) override;
3935
3939 static QgsProcessingParameterFileDestination *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3940
3941
3942 private:
3943 QString mFileFilter;
3944};
3945
3953{
3954 public:
3958 QgsProcessingParameterFolderDestination( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false, bool createByDefault = true );
3959
3963 static QString typeName() { return u"folderDestination"_s; }
3964 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3965 QString type() const override { return typeName(); }
3966 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3967 QgsProcessingOutputDefinition *toOutputDefinition() const override SIP_FACTORY;
3968 QString defaultFileExtension() const override;
3969
3973 static QgsProcessingParameterFolderDestination *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
3974};
3975
3982{
3983 public:
3988 const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), const QString &parentLayerParameterName = QString(), bool optional = false, bool allowMultiple = false
3989 );
3990
3994 static QString typeName() { return u"band"_s; }
3995 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
3996 QString type() const override { return typeName(); }
3997 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
3998 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
3999 QString asScriptCode() const override;
4000 QStringList dependsOnOtherParameters() const override;
4002
4007 QString parentLayerParameterName() const;
4008
4013 void setParentLayerParameterName( const QString &parentLayerParameterName );
4014
4015 QVariantMap toVariantMap() const override;
4016 bool fromVariantMap( const QVariantMap &map ) override;
4017
4021 static QgsProcessingParameterBand *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4022
4028 bool allowMultiple() const;
4029
4035 void setAllowMultiple( bool allowMultiple );
4036
4037 private:
4038 QString mParentLayerParameterName;
4039 bool mAllowMultiple = false;
4040};
4041
4054{
4055 public:
4059 QgsProcessingParameterLayout( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false );
4060
4064 static QString typeName() { return u"layout"_s; }
4065 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4066 QString type() const override { return typeName(); }
4067 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4068 QString asScriptCode() const override;
4070
4074 static QgsProcessingParameterLayout *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4075};
4076
4089{
4090 public:
4095 const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), const QString &parentLayoutParameterName = QString(), int itemType = -1, bool optional = false
4096 );
4097
4101 static QString typeName() { return u"layoutitem"_s; }
4102 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4103 QString type() const override { return typeName(); }
4104 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4105 QString asScriptCode() const override;
4107 QVariantMap toVariantMap() const override;
4108 bool fromVariantMap( const QVariantMap &map ) override;
4109 QStringList dependsOnOtherParameters() const override;
4110
4114 static QgsProcessingParameterLayoutItem *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4115
4120 QString parentLayoutParameterName() const;
4121
4126 void setParentLayoutParameterName( const QString &name );
4127
4135 int itemType() const;
4136
4144 void setItemType( int type );
4145
4146 private:
4147 QString mParentLayoutParameterName;
4148 int mItemType = -1;
4149};
4150
4161{
4162 public:
4168 QgsProcessingParameterColor( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool opacityEnabled = true, bool optional = false );
4169
4173 static QString typeName() { return u"color"_s; }
4174
4175 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4176 QString type() const override { return typeName(); }
4177 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4178 QString asScriptCode() const override;
4180 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4181 QVariantMap toVariantMap() const override;
4182 bool fromVariantMap( const QVariantMap &map ) override;
4183
4190 bool opacityEnabled() const;
4191
4199 void setOpacityEnabled( bool enabled );
4200
4204 static QgsProcessingParameterColor *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4205
4206 private:
4207 bool mAllowOpacity = true;
4208};
4209
4210
4223{
4224 public:
4229 const QString &name,
4230 const QString &description = QString(),
4231 const QVariant &defaultValue = QVariant(),
4232 const QString &sourceCrsParameterName = QString(),
4233 const QString &destinationCrsParameterName = QString(),
4234 const QVariant &staticSourceCrs = QVariant(),
4235 const QVariant &staticDestinationCrs = QVariant(),
4236 bool optional = false
4237 );
4238
4242 static QString typeName() { return u"coordinateoperation"_s; }
4243 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4244 QString type() const override { return typeName(); }
4245 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4246 QString asScriptCode() const override;
4248 QStringList dependsOnOtherParameters() const override;
4249
4250 QVariantMap toVariantMap() const override;
4251 bool fromVariantMap( const QVariantMap &map ) override;
4252
4256 static QgsProcessingParameterCoordinateOperation *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4257
4263 QString sourceCrsParameterName() const { return mSourceParameterName; }
4264
4270 void setSourceCrsParameterName( const QString &name ) { mSourceParameterName = name; }
4271
4277 QString destinationCrsParameterName() const { return mDestParameterName; }
4278
4284 void setDestinationCrsParameterName( const QString &name ) { mDestParameterName = name; }
4285
4291 QVariant sourceCrs() const { return mSourceCrs; }
4292
4298 void setSourceCrs( const QVariant &crs ) { mSourceCrs = crs; }
4299
4305 QVariant destinationCrs() const { return mDestCrs; }
4306
4312 void setDestinationCrs( const QVariant &crs ) { mDestCrs = crs; }
4313
4314 private:
4315 QString valueAsPythonStringPrivate( const QVariant &value, QgsProcessingContext &context, bool allowNonStringValues ) const;
4316
4317 QString mSourceParameterName;
4318 QString mDestParameterName;
4319 QVariant mSourceCrs;
4320 QVariant mDestCrs;
4321};
4322
4323
4334{
4335 public:
4339 QgsProcessingParameterMapTheme( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false );
4340
4344 static QString typeName() { return u"maptheme"_s; }
4345 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4346 QString type() const override { return typeName(); }
4347 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4348 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4349 QString asScriptCode() const override;
4351 QVariantMap toVariantMap() const override;
4352 bool fromVariantMap( const QVariantMap &map ) override;
4353
4357 static QgsProcessingParameterMapTheme *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4358
4359 private:
4360};
4361
4362
4374{
4375 public:
4380 const QString &name,
4381 const QString &description = QString(),
4383 const QVariant &defaultValue = QVariant(),
4384 bool optional = false,
4385 const QDateTime &minValue = QDateTime(),
4386 const QDateTime &maxValue = QDateTime()
4387 );
4388
4392 static QString typeName() { return u"datetime"_s; }
4393 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4394 QString type() const override { return typeName(); }
4395 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4396 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4397 QString toolTip() const override;
4399
4407 QDateTime minimum() const;
4408
4420 void setMinimum( const QDateTime &minimum );
4421
4429 QDateTime maximum() const;
4430
4442 void setMaximum( const QDateTime &maximum );
4443
4449
4454 void setDataType( Qgis::ProcessingDateTimeParameterDataType type );
4455
4456 QVariantMap toVariantMap() const override;
4457 bool fromVariantMap( const QVariantMap &map ) override;
4458 QString userFriendlyString( const QVariant &value ) const override;
4459
4463 static QgsProcessingParameterDateTime *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4464
4465 private:
4466 QDateTime mMin;
4467 QDateTime mMax;
4469};
4470
4471
4483{
4484 public:
4491 QgsProcessingParameterProviderConnection( const QString &name, const QString &description, const QString &provider, const QVariant &defaultValue = QVariant(), bool optional = false );
4492
4496 static QString typeName() { return u"providerconnection"_s; }
4497 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4498 QString type() const override { return typeName(); }
4499 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4500 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4501 QString asScriptCode() const override;
4503 QVariantMap toVariantMap() const override;
4504 bool fromVariantMap( const QVariantMap &map ) override;
4505
4510 QString providerId() const { return mProviderId; }
4511
4516 void setProviderId( const QString &provider ) { mProviderId = provider; }
4517
4521 static QgsProcessingParameterProviderConnection *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4522
4523 private:
4524 QString mProviderId;
4525};
4526
4527
4539{
4540 public:
4550 const QString &name, const QString &description, const QString &connectionParameterName = QString(), const QVariant &defaultValue = QVariant(), bool optional = false
4551 );
4552
4556 static QString typeName() { return u"databaseschema"_s; }
4557 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4558 QString type() const override { return typeName(); }
4559 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4560 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4561 QString asScriptCode() const override;
4563 QVariantMap toVariantMap() const override;
4564 bool fromVariantMap( const QVariantMap &map ) override;
4565 QStringList dependsOnOtherParameters() const override;
4566
4571 QString parentConnectionParameterName() const;
4572
4577 void setParentConnectionParameterName( const QString &name );
4578
4582 static QgsProcessingParameterDatabaseSchema *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4583
4584 private:
4585 QString mParentConnectionParameterName;
4586};
4587
4588
4602{
4603 public:
4614 const QString &name,
4615 const QString &description,
4616 const QString &connectionParameterName = QString(),
4617 const QString &schemaParameterName = QString(),
4618 const QVariant &defaultValue = QVariant(),
4619 bool optional = false,
4620 bool allowNewTableNames = false
4621 );
4622
4626 static QString typeName() { return u"databasetable"_s; }
4627 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4628 QString type() const override { return typeName(); }
4629 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4630 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4631 QString asScriptCode() const override;
4633 QVariantMap toVariantMap() const override;
4634 bool fromVariantMap( const QVariantMap &map ) override;
4635 QStringList dependsOnOtherParameters() const override;
4636
4641 QString parentConnectionParameterName() const;
4642
4647 void setParentConnectionParameterName( const QString &name );
4648
4653 QString parentSchemaParameterName() const;
4654
4659 void setParentSchemaParameterName( const QString &name );
4660
4664 static QgsProcessingParameterDatabaseTable *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4665
4672 bool allowNewTableNames() const;
4673
4680 void setAllowNewTableNames( bool allowed );
4681
4682 private:
4683 QString mParentConnectionParameterName;
4684 QString mParentSchemaParameterName;
4685 bool mAllowNewTableNames = false;
4686};
4687
4688
4696{
4697 public:
4701 QgsProcessingParameterPointCloudLayer( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false );
4702
4706 static QString typeName() { return u"pointcloud"_s; }
4707 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4708 QString type() const override { return typeName(); }
4709 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4710 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4711 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
4712 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
4713 QString createFileFilter() const override;
4714
4718 static QgsProcessingParameterPointCloudLayer *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4719};
4720
4721
4729{
4730 public:
4734 QgsProcessingParameterAnnotationLayer( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false );
4735
4739 static QString typeName() { return u"annotation"_s; }
4740 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4741 QString type() const override { return typeName(); }
4742 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4743 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4744 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
4745 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
4746
4750 static QgsProcessingParameterAnnotationLayer *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4751};
4752
4761{
4762 public:
4769 QgsProcessingParameterPointCloudDestination( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false, bool createByDefault = true );
4770
4774 static QString typeName() { return u"pointCloudDestination"_s; }
4775 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4776 QString type() const override { return typeName(); }
4777 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4778 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4779 QgsProcessingOutputDefinition *toOutputDefinition() const override SIP_FACTORY;
4780 QString defaultFileExtension() const override;
4781 QString createFileFilter() const override;
4782
4787 virtual QStringList supportedOutputPointCloudLayerExtensions() const;
4788
4792 static QgsProcessingParameterPointCloudDestination *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4793};
4794
4802{
4803 public:
4808 const QString &name,
4809 const QString &description = QString(),
4810 const QVariant &defaultValue = QVariant(),
4811 const QString &parentLayerParameterName = QString(),
4812 bool allowMultiple = false,
4813 bool optional = false,
4814 bool defaultToAllAttributes = false
4815 );
4816
4820 static QString typeName() { return u"attribute"_s; }
4821 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4822 QString type() const override { return typeName(); }
4823 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4824 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4825 QString asScriptCode() const override;
4827 QStringList dependsOnOtherParameters() const override;
4828
4833 QString parentLayerParameterName() const;
4834
4839 void setParentLayerParameterName( const QString &parentLayerParameterName );
4840
4845 bool allowMultiple() const;
4846
4851 void setAllowMultiple( bool allowMultiple );
4852
4861 bool defaultToAllAttributes() const;
4862
4871 void setDefaultToAllAttributes( bool enabled );
4872
4873 QVariantMap toVariantMap() const override;
4874 bool fromVariantMap( const QVariantMap &map ) override;
4875
4879 static QgsProcessingParameterPointCloudAttribute *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4880
4881 private:
4882 QString mParentLayerParameterName;
4883 bool mAllowMultiple = false;
4884 bool mDefaultToAllAttributes = false;
4885};
4886
4895{
4896 public:
4903 QgsProcessingParameterVectorTileDestination( const QString &name, const QString &description = QString(), const QVariant &defaultValue = QVariant(), bool optional = false, bool createByDefault = true );
4904
4908 static QString typeName() { return u"vectorTileDestination"_s; }
4909 QgsProcessingParameterDefinition *clone() const override SIP_FACTORY;
4910 QString type() const override { return typeName(); }
4911 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
4912 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
4913 QgsProcessingOutputDefinition *toOutputDefinition() const override SIP_FACTORY;
4914 QString defaultFileExtension() const override;
4915 QString createFileFilter() const override;
4916
4921 virtual QStringList supportedOutputVectorTileLayerExtensions() const;
4922
4926 static QgsProcessingParameterVectorTileDestination *fromScriptCode( const QString &name, const QString &description, bool isOptional, const QString &definition ) SIP_FACTORY;
4927};
4928
4929// clazy:excludeall=qstring-allocations
4930
4931#endif // QGSPROCESSINGPARAMETERS_H
Provides global constants and enumerations for use throughout the application.
Definition qgis.h:62
ProcessingSourceType
Processing data source types.
Definition qgis.h:3769
@ VectorAnyGeometry
Any vector layer with geometry.
Definition qgis.h:3771
ProcessingFileParameterBehavior
Flags which dictate the behavior of QgsProcessingParameterFile.
Definition qgis.h:4051
@ File
Parameter is a single file.
Definition qgis.h:4052
ExpressionType
Expression types.
Definition qgis.h:6362
@ Qgis
Native QGIS expression.
Definition qgis.h:6363
DistanceUnit
Units of distance.
Definition qgis.h:5568
@ Unknown
Unknown distance unit.
Definition qgis.h:5618
QFlags< RasterProcessingParameterCapability > RasterProcessingParameterCapabilities
Raster layer processing parameter capabilities.
Definition qgis.h:7030
ProcessingFieldParameterDataType
Processing field parameter data types.
Definition qgis.h:4079
AreaUnit
Units of area.
Definition qgis.h:5645
@ Unknown
Unknown areal unit.
Definition qgis.h:5658
TemporalUnit
Temporal units.
Definition qgis.h:5734
@ Milliseconds
Milliseconds.
Definition qgis.h:5735
QFlags< ProcessingParameterFlag > ProcessingParameterFlags
Flags which dictate the behavior of Processing parameters.
Definition qgis.h:4040
VolumeUnit
Units of volume.
Definition qgis.h:5670
@ Unknown
Unknown volume unit.
Definition qgis.h:5681
InvalidGeometryCheck
Methods for handling of features with invalid geometries.
Definition qgis.h:2423
@ AbortOnInvalid
Close iterator on encountering any features with invalid geometry. This requires a slow geometry vali...
Definition qgis.h:2426
QFlags< ProcessingFeatureSourceDefinitionFlag > ProcessingFeatureSourceDefinitionFlags
Flags which control behavior for a Processing feature source.
Definition qgis.h:3962
WkbType
The WKB type describes the number of dimensions a geometry has.
Definition qgis.h:314
ProcessingDateTimeParameterDataType
Processing date time parameter data types.
Definition qgis.h:4097
ProcessingNumberParameterType
Processing numeric parameter data types.
Definition qgis.h:4065
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:45
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.
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.
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:114
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:203
#define SIP_DEPRECATED
Definition qgis_sip.h:113
#define SIP_SKIP
Definition qgis_sip.h:138
#define SIP_OUT
Definition qgis_sip.h:57
#define SIP_FACTORY
Definition qgis_sip.h:83
#define SIP_THROW(name,...)
Definition qgis_sip.h:215
#define SIP_END
Definition qgis_sip.h:220
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)