18#ifndef QGSPROCESSINGPARAMETERS_H
19#define QGSPROCESSINGPARAMETERS_H
78 , selectedFeaturesOnly( selectedFeaturesOnly )
79 , featureLimit( featureLimit )
80 , filterExpression( filterExpression )
82 , geometryCheck( geometryCheck )
104 , selectedFeaturesOnly( selectedFeaturesOnly )
105 , featureLimit( featureLimit )
106 , filterExpression( filterExpression )
108 , geometryCheck( geometryCheck )
127 long long featureLimit = -1;
158 QVariant toVariant()
const;
166 bool loadVariant(
const QVariantMap &map );
171 return source == other.
source
175 && flags == other.
flags
181 return !( *
this == other );
185 operator QVariant()
const
187 return QVariant::fromValue( *
this );
185 operator QVariant()
const {
…}
213 , destinationProject( destinationProject )
223 , destinationProject( destinationProject )
286 QVariant toVariant()
const;
294 bool loadVariant(
const QVariantMap &map );
297 operator QVariant()
const
299 return QVariant::fromValue( *
this );
297 operator QVariant()
const {
…}
308 bool mUseRemapping =
false;
347 sipType = sipType_QgsProcessingParameterBoolean;
349 sipType = sipType_QgsProcessingParameterCrs;
351 sipType = sipType_QgsProcessingParameterMapLayer;
353 sipType = sipType_QgsProcessingParameterExtent;
355 sipType = sipType_QgsProcessingParameterPoint;
357 sipType = sipType_QgsProcessingParameterGeometry;
359 sipType = sipType_QgsProcessingParameterFile;
361 sipType = sipType_QgsProcessingParameterMatrix;
363 sipType = sipType_QgsProcessingParameterMultipleLayers;
365 sipType = sipType_QgsProcessingParameterNumber;
367 sipType = sipType_QgsProcessingParameterDistance;
369 sipType = sipType_QgsProcessingParameterArea;
371 sipType = sipType_QgsProcessingParameterVolume;
373 sipType = sipType_QgsProcessingParameterDuration;
375 sipType = sipType_QgsProcessingParameterScale;
377 sipType = sipType_QgsProcessingParameterRange;
379 sipType = sipType_QgsProcessingParameterRasterLayer;
381 sipType = sipType_QgsProcessingParameterMeshLayer;
383 sipType = sipType_QgsProcessingParameterEnum;
385 sipType = sipType_QgsProcessingParameterString;
387 sipType = sipType_QgsProcessingParameterExpression;
389 sipType = sipType_QgsProcessingParameterAuthConfig;
391 sipType = sipType_QgsProcessingParameterVectorLayer;
393 sipType = sipType_QgsProcessingParameterField;
395 sipType = sipType_QgsProcessingParameterFeatureSource;
397 sipType = sipType_QgsProcessingParameterFeatureSink;
399 sipType = sipType_QgsProcessingParameterVectorDestination;
401 sipType = sipType_QgsProcessingParameterRasterDestination;
403 sipType = sipType_QgsProcessingParameterPointCloudDestination;
405 sipType = sipType_QgsProcessingParameterFileDestination;
407 sipType = sipType_QgsProcessingParameterFolderDestination;
409 sipType = sipType_QgsProcessingParameterBand;
411 sipType = sipType_QgsProcessingParameterLayout;
413 sipType = sipType_QgsProcessingParameterLayoutItem;
415 sipType = sipType_QgsProcessingParameterColor;
417 sipType = sipType_QgsProcessingParameterCoordinateOperation;
419 sipType = sipType_QgsProcessingParameterMapTheme;
421 sipType = sipType_QgsProcessingParameterDateTime;
423 sipType = sipType_QgsProcessingParameterProviderConnection;
425 sipType = sipType_QgsProcessingParameterDatabaseSchema;
427 sipType = sipType_QgsProcessingParameterDatabaseTable;
429 sipType = sipType_QgsProcessingParameterFieldMapping;
431 sipType = sipType_QgsProcessingParameterTinInputLayers;
433 sipType = sipType_QgsProcessingParameterVectorTileWriterLayers;
435 sipType = sipType_QgsProcessingParameterDxfLayers;
437 sipType = sipType_QgsProcessingParameterMeshDatasetGroups;
439 sipType = sipType_QgsProcessingParameterMeshDatasetTime;
441 sipType = sipType_QgsProcessingParameterPointCloudLayer;
443 sipType = sipType_QgsProcessingParameterAnnotationLayer;
445 sipType = sipType_QgsProcessingParameterPointCloudAttribute;
447 sipType = sipType_QgsProcessingParameterVectorTileDestination;
459 bool optional =
false,
const QString &help = QString() );
471 virtual QString
type()
const = 0;
485 QString
name()
const {
return mName; }
492 void setName(
const QString &name ) { mName = name; }
506 void setDescription(
const QString &description ) { mDescription = description; }
517 QString
help()
const {
return mHelp; }
528 void setHelp(
const QString &help ) { mHelp = help; }
558 QVariant guiDefaultValueOverride()
const;
585 QVariant defaultValueForGui()
const;
606 virtual bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const;
615 virtual QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const;
628 virtual QVariant valueAsJsonObject(
const QVariant &value,
QgsProcessingContext &context )
const;
665 virtual QString valueAsPythonComment(
const QVariant &value,
QgsProcessingContext &context )
const;
671 virtual QString asScriptCode()
const;
689 virtual QVariantMap toVariantMap()
const;
696 virtual bool fromVariantMap(
const QVariantMap &map );
718 void setMetadata(
const QVariantMap &metadata ) { mMetadata = metadata; }
744 virtual QString toolTip()
const;
851 AllowMapLayerValues = 1 << 0,
883 QVariant defaultGuiValueFromSetting()
const;
910 bool mIsDynamic =
false;
959 static bool isDynamic(
const QVariantMap ¶meters,
const QString &name );
1754 static QString descriptionFromName(
const QString &name );
1765 static bool parseScriptCodeParameterOptions(
const QString &code,
bool &isOptional, QString &name, QString &type, QString &definition );
1783 bool optional =
false );
1788 static QString
typeName() {
return QStringLiteral(
"boolean" ); }
1791 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
1792 QString asScriptCode()
const override;
1812 QgsProcessingParameterCrs(
const QString &name,
const QString &description = QString(),
const QVariant &defaultValue = QVariant(),
1813 bool optional =
false );
1818 static QString
typeName() {
return QStringLiteral(
"crs" ); }
1821 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
1822 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
1824 QVariant valueAsJsonObject(
const QVariant &value,
QgsProcessingContext &context )
const override;
1846 bool optional =
false );
1851 static QString
typeName() {
return QStringLiteral(
"extent" ); }
1854 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
1855 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
1857 QVariant valueAsJsonObject(
const QVariant &value,
QgsProcessingContext &context )
const override;
1871 static bool variantIsValidStringForExtent(
const QVariant &value );
1888 QgsProcessingParameterPoint(
const QString &name,
const QString &description = QString(),
const QVariant &defaultValue = QVariant(),
1889 bool optional =
false );
1894 static QString
typeName() {
return QStringLiteral(
"point" ); }
1897 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
1898 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
1924 QgsProcessingParameterGeometry(
const QString &name,
const QString &description = QString(),
const QVariant &defaultValue = QVariant(),
bool optional =
false,
const QList< int > &geometryTypes = QList< int >(),
bool allowMultipart =
true );
1929 static QString
typeName() {
return QStringLiteral(
"geometry" ); }
1932 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
1933 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
1934 QString asScriptCode()
const override;
1936 QVariantMap toVariantMap()
const override;
1937 bool fromVariantMap(
const QVariantMap &map )
override;
1972 QList<int> mGeomTypes;
1973 bool mAllowMultipart;
1994 bool optional =
false,
const QString &fileFilter = QString() );
1999 static QString
typeName() {
return QStringLiteral(
"file" ); }
2002 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
2003 QString asScriptCode()
const override;
2005 QString createFileFilter()
const override;
2037 void setExtension(
const QString &extension );
2045 QString fileFilter()
const;
2056 void setFileFilter(
const QString &filter );
2058 QVariantMap toVariantMap()
const override;
2059 bool fromVariantMap(
const QVariantMap &map )
override;
2070 QString mFileFilter;
2086 bool hasFixedNumberRows =
false,
const QStringList &headers = QStringList(),
2087 const QVariant &defaultValue = QVariant(),
2088 bool optional =
false );
2093 static QString
typeName() {
return QStringLiteral(
"matrix" ); }
2096 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
2097 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
2104 QStringList headers()
const;
2110 void setHeaders(
const QStringList &headers );
2118 int numberRows()
const;
2126 void setNumberRows(
int rows );
2133 bool hasFixedNumberRows()
const;
2140 void setHasFixedNumberRows(
bool hasFixedNumberRows );
2142 QVariantMap toVariantMap()
const override;
2143 bool fromVariantMap(
const QVariantMap &map )
override;
2152 QStringList mHeaders;
2153 int mNumberRows = 3;
2154 bool mFixedNumberRows =
false;
2171 const QVariant &defaultValue = QVariant(),
2172 bool optional =
false );
2177 static QString
typeName() {
return QStringLiteral(
"multilayer" ); }
2180 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
2181 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
2183 QVariant valueAsJsonObject(
const QVariant &value,
QgsProcessingContext &context )
const override;
2184 QString asScriptCode()
const override;
2186 QString createFileFilter()
const override;
2205 int minimumNumberInputs()
const;
2212 void setMinimumNumberInputs(
int minimum );
2214 QVariantMap toVariantMap()
const override;
2215 bool fromVariantMap(
const QVariantMap &map )
override;
2225 int mMinimumNumberInputs = 0;
2255 const QVariant &defaultValue = QVariant(),
2256 bool optional =
false,
2257 double minValue = std::numeric_limits<double>::lowest() + 1,
2258 double maxValue = std::numeric_limits<double>::max()
2264 static QString
typeName() {
return QStringLiteral(
"number" ); }
2267 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
2268 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
2269 QString toolTip()
const override;
2276 double minimum()
const;
2282 void setMinimum(
double minimum );
2288 double maximum()
const;
2294 void setMaximum(
double maximum );
2308 QVariantMap toVariantMap()
const override;
2309 bool fromVariantMap(
const QVariantMap &map )
override;
2318 double mMin = std::numeric_limits<double>::lowest() + 1;
2319 double mMax = std::numeric_limits<double>::max();
2352 const QVariant &defaultValue = QVariant(),
2353 const QString &parentParameterName = QString(),
2354 bool optional =
false,
2355 double minValue = std::numeric_limits<double>::lowest() + 1,
2356 double maxValue = std::numeric_limits<double>::max() );
2361 static QString
typeName() {
return QStringLiteral(
"distance" ); }
2365 QString type() const override;
2366 QStringList dependsOnOtherParameters() const override;
2367 QString asPythonString(
QgsProcessing::PythonOutputType outputType =
QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
2373 QString parentParameterName() const;
2379 void setParentParameterName( const QString &parentParameterName );
2387 Qgis::DistanceUnit defaultUnit()
const {
return mDefaultUnit; }
2397 QVariantMap toVariantMap()
const override;
2398 bool fromVariantMap(
const QVariantMap &map )
override;
2402 QString mParentParameterName;
2437 const QVariant &defaultValue = QVariant(),
2438 const QString &parentParameterName = QString(),
2439 bool optional =
false,
2440 double minValue = 0,
2441 double maxValue = std::numeric_limits<double>::max() );
2446 static QString
typeName() {
return QStringLiteral(
"area" ); }
2450 QString type() const override;
2451 QStringList dependsOnOtherParameters() const override;
2452 QString asPythonString(
QgsProcessing::PythonOutputType outputType =
QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
2458 QString parentParameterName() const;
2464 void setParentParameterName( const QString &parentParameterName );
2471 Qgis::AreaUnit defaultUnit()
const {
return mDefaultUnit; }
2480 QVariantMap toVariantMap()
const override;
2481 bool fromVariantMap(
const QVariantMap &map )
override;
2485 QString mParentParameterName;
2520 const QVariant &defaultValue = QVariant(),
2521 const QString &parentParameterName = QString(),
2522 bool optional =
false,
2523 double minValue = 0,
2524 double maxValue = std::numeric_limits<double>::max() );
2529 static QString
typeName() {
return QStringLiteral(
"volume" ); }
2533 QString type() const override;
2534 QStringList dependsOnOtherParameters() const override;
2535 QString asPythonString(
QgsProcessing::PythonOutputType outputType =
QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
2541 QString parentParameterName() const;
2547 void setParentParameterName( const QString &parentParameterName );
2554 Qgis::VolumeUnit defaultUnit()
const {
return mDefaultUnit; }
2563 QVariantMap toVariantMap()
const override;
2564 bool fromVariantMap(
const QVariantMap &map )
override;
2568 QString mParentParameterName;
2590 const QVariant &defaultValue = QVariant(),
2591 bool optional =
false,
2592 double minValue = std::numeric_limits<double>::lowest() + 1,
2593 double maxValue = std::numeric_limits<double>::max() );
2598 static QString
typeName() {
return QStringLiteral(
"duration" ); }
2602 QString type() const override;
2603 QString asPythonString(
QgsProcessing::PythonOutputType outputType =
QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
2610 Qgis::TemporalUnit defaultUnit()
const {
return mDefaultUnit; }
2619 QVariantMap toVariantMap()
const override;
2620 bool fromVariantMap(
const QVariantMap &map )
override;
2646 const QVariant &defaultValue = QVariant(),
2647 bool optional =
false );
2652 static QString
typeName() {
return QStringLiteral(
"scale" ); }
2656 QString type() const override;
2657 QString asPythonString(
QgsProcessing::PythonOutputType outputType =
QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
2680 const QVariant &defaultValue = QVariant(),
2681 bool optional =
false );
2686 static QString
typeName() {
return QStringLiteral(
"range" ); }
2689 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
2690 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
2705 QVariantMap toVariantMap()
const override;
2706 bool fromVariantMap(
const QVariantMap &map )
override;
2731 bool optional =
false );
2736 static QString
typeName() {
return QStringLiteral(
"raster" ); }
2739 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
2740 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
2742 QVariant valueAsJsonObject(
const QVariant &value,
QgsProcessingContext &context )
const override;
2743 QString createFileFilter()
const override;
2776 QgsProcessingParameterEnum(
const QString &name,
const QString &description = QString(),
const QStringList &options = QStringList(),
2777 bool allowMultiple =
false,
2778 const QVariant &defaultValue = QVariant(),
2779 bool optional =
false,
2780 bool usesStaticStrings =
false );
2785 static QString
typeName() {
return QStringLiteral(
"enum" ); }
2788 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
2789 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
2790 QString valueAsPythonComment(
const QVariant &value,
QgsProcessingContext &context )
const override;
2791 QString asScriptCode()
const override;
2798 QStringList options()
const;
2804 void setOptions(
const QStringList &options );
2810 bool allowMultiple()
const;
2816 void setAllowMultiple(
bool allowMultiple );
2824 bool usesStaticStrings()
const;
2832 void setUsesStaticStrings(
bool usesStaticStrings );
2834 QVariantMap toVariantMap()
const override;
2835 bool fromVariantMap(
const QVariantMap &map )
override;
2844 QStringList mOptions;
2845 bool mAllowMultiple =
false;
2846 bool mUsesStaticStrings =
false;
2883 bool multiLine =
false,
2884 bool optional =
false );
2889 static QString
typeName() {
return QStringLiteral(
"string" ); }
2892 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
2893 QString asScriptCode()
const override;
2900 bool multiLine()
const;
2906 void setMultiLine(
bool multiLine );
2908 QVariantMap toVariantMap()
const override;
2909 bool fromVariantMap(
const QVariantMap &map )
override;
2918 bool mMultiLine =
false;
2943 bool optional =
false );
2948 static QString
typeName() {
return QStringLiteral(
"authcfg" ); }
2951 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
2952 QString asScriptCode()
const override;
2974 const QString &parentLayerParameterName = QString(),
2980 static QString
typeName() {
return QStringLiteral(
"expression" ); }
2983 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
2984 QStringList dependsOnOtherParameters()
const override;
2991 QString parentLayerParameterName()
const;
2997 void setParentLayerParameterName(
const QString &parentLayerParameterName );
3015 QVariantMap toVariantMap()
const override;
3016 bool fromVariantMap(
const QVariantMap &map )
override;
3025 QString mParentLayerParameterName;
3048 QList< int > dataTypes()
const;
3054 void setDataTypes(
const QList< int > &types );
3077 const QString &description = QString(),
3078 const QList< int > &types = QList< int >(),
3079 const QVariant &defaultValue = QVariant(),
3080 bool optional =
false );
3085 static QString
typeName() {
return QStringLiteral(
"vector" ); }
3088 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
3089 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
3091 QVariant valueAsJsonObject(
const QVariant &value,
QgsProcessingContext &context )
const override;
3093 QString createFileFilter()
const override;
3095 QVariantMap toVariantMap()
const override;
3096 bool fromVariantMap(
const QVariantMap &map )
override;
3119 const QString &description = QString(),
3120 const QVariant &defaultValue = QVariant(),
3121 bool optional =
false );
3126 static QString
typeName() {
return QStringLiteral(
"mesh" ); }
3129 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
3130 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
3132 QVariant valueAsJsonObject(
const QVariant &value,
QgsProcessingContext &context )
const override;
3133 QString createFileFilter()
const override;
3154 bool optional =
false,
3155 const QList< int > &types = QList< int >() );
3160 static QString
typeName() {
return QStringLiteral(
"layer" ); }
3163 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
3164 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
3166 QVariant valueAsJsonObject(
const QVariant &value,
QgsProcessingContext &context )
const override;
3167 QString asScriptCode()
const override;
3169 QString createFileFilter()
const override;
3171 QVariantMap toVariantMap()
const override;
3172 bool fromVariantMap(
const QVariantMap &map )
override;
3193 QgsProcessingParameterField(
const QString &name,
const QString &description = QString(),
const QVariant &defaultValue = QVariant(),
3194 const QString &parentLayerParameterName = QString(),
3196 bool allowMultiple =
false,
3197 bool optional =
false,
3198 bool defaultToAllFields =
false );
3203 static QString
typeName() {
return QStringLiteral(
"field" ); }
3206 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
3207 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
3208 QString asScriptCode()
const override;
3210 QStringList dependsOnOtherParameters()
const override;
3216 QString parentLayerParameterName()
const;
3222 void setParentLayerParameterName(
const QString &parentLayerParameterName );
3240 bool allowMultiple()
const;
3246 void setAllowMultiple(
bool allowMultiple );
3257 bool defaultToAllFields()
const;
3268 void setDefaultToAllFields(
bool enabled );
3270 QVariantMap toVariantMap()
const override;
3271 bool fromVariantMap(
const QVariantMap &map )
override;
3280 QString mParentLayerParameterName;
3282 bool mAllowMultiple =
false;
3283 bool mDefaultToAllFields =
false;
3301 const QList< int > &types = QList< int >(),
3302 const QVariant &defaultValue = QVariant(),
bool optional =
false );
3307 static QString
typeName() {
return QStringLiteral(
"source" ); }
3310 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
3311 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
3313 QVariant valueAsJsonObject(
const QVariant &value,
QgsProcessingContext &context )
const override;
3314 QString asScriptCode()
const override;
3316 QString createFileFilter()
const override;
3318 QVariantMap toVariantMap()
const override;
3319 bool fromVariantMap(
const QVariantMap &map )
override;
3345 bool optional =
false,
bool createByDefault =
true );
3348 QVariantMap toVariantMap()
const override;
3349 bool fromVariantMap(
const QVariantMap &map )
override;
3351 QString createFileFilter()
const override;
3384 virtual QString generateTemporaryDestination(
const QgsProcessingContext *context =
nullptr )
const;
3407 bool createByDefault()
const;
3414 void setCreateByDefault(
bool createByDefault );
3439 bool mSupportsNonFileBasedOutputs =
true;
3440 bool mCreateByDefault =
true;
3442 friend class QgsProcessingModelAlgorithm;
3443 friend class TestQgsProcessing;
3444 friend class TestQgsProcessingModelAlgorithm;
3466 bool optional =
false,
bool createByDefault =
true,
bool supportsAppend =
false );
3471 static QString
typeName() {
return QStringLiteral(
"sink" ); }
3474 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
3475 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
3476 QString asScriptCode()
const override;
3478 QString defaultFileExtension() const override;
3479 QString asPythonString(
QgsProcessing::PythonOutputType outputType =
QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
3480 QString createFileFilter() const override;
3487 virtual QStringList supportedOutputVectorLayerExtensions() const;
3493 Qgis::ProcessingSourceType dataType() const;
3499 bool hasGeometry() const;
3505 void setDataType(
Qgis::ProcessingSourceType type );
3515 bool supportsAppend() const;
3525 void setSupportsAppend(
bool supportsAppend );
3527 QVariantMap toVariantMap() const override;
3528 bool fromVariantMap( const QVariantMap &map ) override;
3529 QString generateTemporaryDestination( const
QgsProcessingContext *context =
nullptr ) const override;
3538 Qgis::ProcessingSourceType mDataType =
Qgis::ProcessingSourceType::VectorAnyGeometry;
3539 bool mSupportsAppend = false;
3563 bool optional =
false,
bool createByDefault =
true );
3568 static QString
typeName() {
return QStringLiteral(
"vectorDestination" ); }
3571 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
3572 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
3573 QString asScriptCode()
const override;
3575 QString defaultFileExtension() const override;
3576 QString asPythonString(
QgsProcessing::PythonOutputType outputType =
QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
3577 QString createFileFilter() const override;
3584 virtual QStringList supportedOutputVectorLayerExtensions() const;
3590 Qgis::ProcessingSourceType dataType() const;
3596 bool hasGeometry() const;
3602 void setDataType(
Qgis::ProcessingSourceType type );
3604 QVariantMap toVariantMap() const override;
3605 bool fromVariantMap( const QVariantMap &map ) override;
3615 Qgis::ProcessingSourceType mDataType =
Qgis::ProcessingSourceType::VectorAnyGeometry;
3635 const QVariant &defaultValue = QVariant(),
3636 bool optional =
false,
3637 bool createByDefault =
true );
3642 static QString
typeName() {
return QStringLiteral(
"rasterDestination" ); }
3645 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
3646 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
3648 QString defaultFileExtension() const override;
3649 QString createFileFilter() const override;
3656 virtual QStringList supportedOutputRasterLayerExtensions() const;
3695 const QString &fileFilter = QString(),
3696 const QVariant &defaultValue = QVariant(),
3697 bool optional =
false,
3698 bool createByDefault =
true );
3703 static QString
typeName() {
return QStringLiteral(
"fileDestination" ); }
3706 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
3707 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
3709 QString defaultFileExtension() const override;
3710 QString asPythonString(
QgsProcessing::PythonOutputType outputType =
QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass ) const override;
3711 QString createFileFilter() const override;
3717 QString fileFilter() const;
3723 void setFileFilter( const QString &filter );
3725 QVariantMap toVariantMap() const override;
3726 bool fromVariantMap( const QVariantMap &map ) override;
3736 QString mFileFilter;
3753 const QVariant &defaultValue = QVariant(),
3754 bool optional =
false,
3755 bool createByDefault =
true );
3760 static QString
typeName() {
return QStringLiteral(
"folderDestination" ); }
3763 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
3765 QString defaultFileExtension() const override;
3786 QgsProcessingParameterBand(
const QString &name,
const QString &description = QString(),
const QVariant &defaultValue = QVariant(),
3787 const QString &parentLayerParameterName = QString(),
3788 bool optional =
false,
3789 bool allowMultiple =
false );
3794 static QString
typeName() {
return QStringLiteral(
"band" ); }
3797 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
3798 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
3799 QString asScriptCode()
const override;
3800 QStringList dependsOnOtherParameters()
const override;
3807 QString parentLayerParameterName()
const;
3813 void setParentLayerParameterName(
const QString &parentLayerParameterName );
3815 QVariantMap toVariantMap()
const override;
3816 bool fromVariantMap(
const QVariantMap &map )
override;
3828 bool allowMultiple()
const;
3835 void setAllowMultiple(
bool allowMultiple );
3839 QString mParentLayerParameterName;
3840 bool mAllowMultiple =
false;
3862 bool optional =
false );
3867 static QString
typeName() {
return QStringLiteral(
"layout" ); }
3870 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
3871 QString asScriptCode()
const override;
3900 const QString &parentLayoutParameterName = QString(),
3902 bool optional =
false );
3907 static QString
typeName() {
return QStringLiteral(
"layoutitem" ); }
3910 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
3911 QString asScriptCode()
const override;
3913 QVariantMap toVariantMap()
const override;
3914 bool fromVariantMap(
const QVariantMap &map )
override;
3915 QStringList dependsOnOtherParameters()
const override;
3926 QString parentLayoutParameterName()
const;
3932 void setParentLayoutParameterName(
const QString &name );
3941 int itemType()
const;
3950 void setItemType(
int type );
3953 QString mParentLayoutParameterName;
3975 QgsProcessingParameterColor(
const QString &name,
const QString &description = QString(),
const QVariant &defaultValue = QVariant(),
3976 bool opacityEnabled =
true,
3977 bool optional =
false );
3982 static QString
typeName() {
return QStringLiteral(
"color" ); }
3985 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
3986 QString asScriptCode()
const override;
3988 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
3989 QVariantMap toVariantMap()
const override;
3990 bool fromVariantMap(
const QVariantMap &map )
override;
3998 bool opacityEnabled()
const;
4007 void setOpacityEnabled(
bool enabled );
4016 bool mAllowOpacity =
true;
4040 const QString &sourceCrsParameterName = QString(),
const QString &destinationCrsParameterName = QString(),
4041 const QVariant &staticSourceCrs = QVariant(),
const QVariant &staticDestinationCrs = QVariant(),
4042 bool optional =
false );
4047 static QString
typeName() {
return QStringLiteral(
"coordinateoperation" ); }
4050 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
4051 QString asScriptCode()
const override;
4053 QStringList dependsOnOtherParameters()
const override;
4055 QVariantMap toVariantMap()
const override;
4056 bool fromVariantMap(
const QVariantMap &map )
override;
4120 QString valueAsPythonStringPrivate(
const QVariant &value,
QgsProcessingContext &context,
bool allowNonStringValues )
const ;
4122 QString mSourceParameterName;
4123 QString mDestParameterName;
4124 QVariant mSourceCrs;
4147 bool optional =
false );
4152 static QString
typeName() {
return QStringLiteral(
"maptheme" ); }
4155 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
4156 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
4157 QString asScriptCode()
const override;
4159 QVariantMap toVariantMap()
const override;
4160 bool fromVariantMap(
const QVariantMap &map )
override;
4191 const QVariant &defaultValue = QVariant(),
4192 bool optional =
false,
4193 const QDateTime &minValue = QDateTime(),
4194 const QDateTime &maxValue = QDateTime()
4200 static QString
typeName() {
return QStringLiteral(
"datetime" ); }
4203 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
4204 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
4205 QString toolTip()
const override;
4215 QDateTime minimum()
const;
4228 void setMinimum(
const QDateTime &minimum );
4237 QDateTime maximum()
const;
4250 void setMaximum(
const QDateTime &maximum );
4264 QVariantMap toVariantMap()
const override;
4265 bool fromVariantMap(
const QVariantMap &map )
override;
4301 bool optional =
false );
4306 static QString
typeName() {
return QStringLiteral(
"providerconnection" ); }
4309 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
4310 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
4311 QString asScriptCode()
const override;
4313 QVariantMap toVariantMap()
const override;
4314 bool fromVariantMap(
const QVariantMap &map )
override;
4335 QString mProviderId;
4361 QgsProcessingParameterDatabaseSchema(
const QString &name,
const QString &description,
const QString &connectionParameterName = QString(),
const QVariant &defaultValue = QVariant(),
4362 bool optional =
false );
4367 static QString
typeName() {
return QStringLiteral(
"databaseschema" ); }
4370 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
4371 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
4372 QString asScriptCode()
const override;
4374 QVariantMap toVariantMap()
const override;
4375 bool fromVariantMap(
const QVariantMap &map )
override;
4376 QStringList dependsOnOtherParameters()
const override;
4382 QString parentConnectionParameterName()
const;
4388 void setParentConnectionParameterName(
const QString &name );
4397 QString mParentConnectionParameterName;
4427 const QString &connectionParameterName = QString(),
4428 const QString &schemaParameterName = QString(),
4429 const QVariant &defaultValue = QVariant(),
4430 bool optional =
false,
4431 bool allowNewTableNames =
false );
4436 static QString
typeName() {
return QStringLiteral(
"databasetable" ); }
4439 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
4440 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
4441 QString asScriptCode()
const override;
4443 QVariantMap toVariantMap()
const override;
4444 bool fromVariantMap(
const QVariantMap &map )
override;
4445 QStringList dependsOnOtherParameters()
const override;
4451 QString parentConnectionParameterName()
const;
4457 void setParentConnectionParameterName(
const QString &name );
4463 QString parentSchemaParameterName()
const;
4469 void setParentSchemaParameterName(
const QString &name );
4482 bool allowNewTableNames()
const;
4490 void setAllowNewTableNames(
bool allowed );
4494 QString mParentConnectionParameterName;
4495 QString mParentSchemaParameterName;
4496 bool mAllowNewTableNames =
false;
4514 const QVariant &defaultValue = QVariant(),
bool optional =
false );
4519 static QString
typeName() {
return QStringLiteral(
"pointcloud" ); }
4522 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
4523 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
4525 QVariant valueAsJsonObject(
const QVariant &value,
QgsProcessingContext &context )
const override;
4526 QString createFileFilter()
const override;
4549 const QVariant &defaultValue = QVariant(),
bool optional =
false );
4554 static QString
typeName() {
return QStringLiteral(
"annotation" ); }
4557 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
4558 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
4560 QVariant valueAsJsonObject(
const QVariant &value,
QgsProcessingContext &context )
const override;
4586 const QVariant &defaultValue = QVariant(),
4587 bool optional =
false,
4588 bool createByDefault =
true );
4593 static QString
typeName() {
return QStringLiteral(
"pointCloudDestination" ); }
4596 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
4597 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
4599 QString defaultFileExtension() const override;
4600 QString createFileFilter() const override;
4606 virtual QStringList supportedOutputPointCloudLayerExtensions() const;
4628 const QString &parentLayerParameterName = QString(),
4629 bool allowMultiple =
false,
4630 bool optional =
false,
4631 bool defaultToAllAttributes =
false );
4636 static QString
typeName() {
return QStringLiteral(
"attribute" ); }
4639 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
4640 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
4641 QString asScriptCode()
const override;
4643 QStringList dependsOnOtherParameters()
const override;
4649 QString parentLayerParameterName()
const;
4655 void setParentLayerParameterName(
const QString &parentLayerParameterName );
4661 bool allowMultiple()
const;
4667 void setAllowMultiple(
bool allowMultiple );
4677 bool defaultToAllAttributes()
const;
4687 void setDefaultToAllAttributes(
bool enabled );
4689 QVariantMap toVariantMap()
const override;
4690 bool fromVariantMap(
const QVariantMap &map )
override;
4699 QString mParentLayerParameterName;
4700 bool mAllowMultiple =
false;
4701 bool mDefaultToAllAttributes =
false;
4722 const QVariant &defaultValue = QVariant(),
4723 bool optional =
false,
4724 bool createByDefault =
true );
4729 static QString
typeName() {
return QStringLiteral(
"vectorTileDestination" ); }
4732 bool checkValueIsAcceptable(
const QVariant &input,
QgsProcessingContext *context =
nullptr )
const override;
4733 QString valueAsPythonString(
const QVariant &value,
QgsProcessingContext &context )
const override;
4735 QString defaultFileExtension() const override;
4736 QString createFileFilter() const override;
4742 virtual QStringList supportedOutputVectorTileLayerExtensions() const;
Provides global constants and enumerations for use throughout the application.
ProcessingSourceType
Processing data source types.
@ VectorAnyGeometry
Any vector layer with geometry.
ProcessingFileParameterBehavior
Flags which dictate the behavior of QgsProcessingParameterFile.
@ File
Parameter is a single file.
ExpressionType
Expression types.
@ Qgis
Native QGIS expression.
DistanceUnit
Units of distance.
@ Unknown
Unknown distance unit.
ProcessingFieldParameterDataType
Processing field parameter data types.
@ Unknown
Unknown areal unit.
TemporalUnit
Temporal units.
@ Milliseconds
Milliseconds.
QFlags< ProcessingParameterFlag > ProcessingParameterFlags
Flags which dictate the behavior of Processing parameters.
VolumeUnit
Units of volume.
@ Unknown
Unknown volume unit.
InvalidGeometryCheck
Methods for handling of features with invalid geometries.
@ AbortOnInvalid
Close iterator on encountering any features with invalid geometry. This requires a slow geometry vali...
QFlags< ProcessingFeatureSourceDefinitionFlag > ProcessingFeatureSourceDefinitionFlags
Flags which control behavior for a Processing feature source.
WkbType
The WKB type describes the number of dimensions a geometry has.
ProcessingDateTimeParameterDataType
Processing date time parameter data types.
@ DateTime
Datetime values.
ProcessingNumberParameterType
Processing numeric parameter data types.
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.
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.
Represents a mesh layer supporting display of data on structured or unstructured meshes.
Represents a map layer supporting display of point clouds.
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.
Base class for all parameter definitions which represent file or layer destinations,...
virtual QString defaultFileExtension() const =0
Returns the default file extension for destination file paths associated with this parameter.
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.
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...
Custom exception class for processing related exceptions.
Encapsulates settings relating to a feature source input to a processing algorithm.
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
QgsProperty source
Source definition.
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...
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.
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.
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.
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.
static QString typeName()
Returns the type name for the parameter class.
A string parameter for authentication configuration ID values.
static QString typeName()
Returns the type name for the parameter class.
A raster band parameter for Processing algorithms.
static QString typeName()
Returns the type name for the parameter class.
A boolean parameter for processing algorithms.
static QString typeName()
Returns the type name for the parameter class.
A color parameter for processing algorithms.
static QString typeName()
Returns the type name for the parameter class.
A coordinate operation parameter for processing algorithms.
static QString typeName()
Returns the type name for the parameter class.
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.
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.
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...
static QString typeName()
Returns the type name for the parameter class.
A database table name parameter for processing algorithms.
static QString typeName()
Returns the type name for the parameter class.
A datetime (or pure date or time) parameter for processing algorithms.
static QString typeName()
Returns the type name for the parameter class.
Base class for the definition of processing parameters.
QString mHelp
Parameter help.
QVariant defaultValue() const
Returns the default value for the parameter.
void setDefaultValue(const QVariant &value)
Sets the default value for the parameter.
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.
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.
ValueAsStringFlag
Flags for passing to the valueAsStringPrivate() method.
QString mName
Parameter name.
void setGuiDefaultValueOverride(const QVariant &value)
Sets the default value to use for the parameter in GUI widgets.
QVariantMap metadata() const
Returns the parameter's freeform metadata.
QString description() const
Returns the description for the parameter.
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.
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.
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.
A double numeric parameter for duration values.
void setDefaultUnit(Qgis::TemporalUnit unit)
Sets the default duration unit for the parameter.
static QString typeName()
Returns the type name for the parameter class.
static QString typeName()
Returns the type name for the parameter class.
An enum based parameter for processing algorithms, allowing for selection from predefined values.
static QString typeName()
Returns the type name for the parameter class.
An expression parameter for processing algorithms.
static QString typeName()
Returns the type name for the parameter class.
A rectangular map extent parameter for processing algorithms.
static QString typeName()
Returns the type name for the parameter class.
A feature sink output for processing algorithms.
static QString typeName()
Returns the type name for the parameter class.
An input feature source (such as vector layers) parameter for processing algorithms.
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 or feature source field parameter for processing algorithms.
static QString typeName()
Returns the type name for the parameter class.
A generic file based destination parameter, for specifying the destination path for a file (non-map l...
static QString typeName()
Returns the type name for the parameter class.
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.
void setBehavior(Qgis::ProcessingFileParameterBehavior behavior)
Sets the parameter behavior (e.g.
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...
static QString typeName()
Returns the type name for the parameter class.
A geometry parameter for processing algorithms.
void setGeometryTypes(const QList< int > &geometryTypes)
Sets the allowed geometryTypes, as a list of Qgis::GeometryType values.
bool allowMultipart() const
Returns the parameter allow multipart geometries.
QList< int > geometryTypes() const
Returns the parameter allowed geometries, as a list of Qgis::GeometryType values.
void setAllowMultipart(bool allowMultipart)
Sets the allow multipart geometries.
static QString typeName()
Returns the type name for the parameter class.
A print layout item parameter, allowing users to select a particular item from a print layout.
static QString typeName()
Returns the type name for the parameter class.
A print layout parameter, allowing users to select a print layout.
static QString typeName()
Returns the type name for the parameter class.
Can be inherited by parameters which require limits to their acceptable data types.
QList< int > mDataTypes
List of acceptable data types for the parameter.
A map layer parameter for processing algorithms.
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 ...
static QString typeName()
Returns the type name for the parameter class.
A table (matrix) parameter for processing algorithms.
static QString typeName()
Returns the type name for the parameter class.
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.
static QString typeName()
Returns the type name for the parameter class.
A parameter for processing algorithms which accepts multiple map layers.
static QString typeName()
Returns the type name for the parameter class.
A numeric parameter for processing algorithms.
static QString typeName()
Returns the type name for the parameter class.
A point cloud layer attribute parameter for Processing algorithms.
static QString typeName()
Returns the type name for the parameter class.
A point cloud layer destination parameter, for specifying the destination path for a point cloud laye...
static QString typeName()
Returns the type name for the parameter class.
A point cloud layer parameter for processing algorithms.
static QString typeName()
Returns the type name for the parameter class.
A point parameter for processing algorithms.
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...
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.
A raster layer destination parameter, for specifying the destination path for a raster layer created ...
static QString typeName()
Returns the type name for the parameter class.
A raster layer parameter for processing algorithms.
static QString typeName()
Returns the type name for the parameter class.
A double numeric parameter for map scale values.
static QString typeName()
Returns the type name for the parameter class.
A string parameter for processing algorithms.
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 ...
static QString typeName()
Returns the type name for the parameter class.
A vector layer (with or without geometry) parameter for processing algorithms.
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...
static QString typeName()
Returns the type name for the parameter class.
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.
void setDefaultUnit(Qgis::VolumeUnit unit)
Sets the default volume unit for the parameter.
A collection of utilities for working with parameters when running a processing algorithm.
Abstract base class for processing providers.
LayerHint
Layer type hints.
@ UnknownType
Unknown layer type.
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 for a property.
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)
#define SIP_THROW(name,...)
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(QgsTextRendererUtils::CurvedTextFlags)
const QgsCoordinateReferenceSystem & crs