QGIS API Documentation 3.43.0-Master (c4a2e9c6d2f)
qgsnativealgorithms.cpp
Go to the documentation of this file.
1/***************************************************************************
2 qgsnativealgorithms.cpp
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#include "qgsnativealgorithms.h"
19#include "moc_qgsnativealgorithms.cpp"
20#include "qgsruntimeprofiler.h"
32#include "qgsalgorithmaspect.h"
40#include "qgsalgorithmbuffer.h"
77#include "qgsalgorithmclip.h"
98#include "qgsalgorithmdrape.h"
108#include "qgsalgorithmexplode.h"
129#include "qgsalgorithmfilter.h"
134#include "qgsalgorithmforcerhr.h"
139#if QT_CONFIG( process )
141#endif
142#include "qgsalgorithmgrid.h"
177#include "qgsalgorithmpackage.h"
222#include "qgsalgorithmrotate.h"
227#include "qgsalgorithmsavelog.h"
241#include "qgsalgorithmsimplify.h"
243#include "qgsalgorithmslope.h"
244#include "qgsalgorithmsmooth.h"
257#include "qgsalgorithmswapxy.h"
261#include "qgsalgorithmtransect.h"
265#include "qgsalgorithmunion.h"
274#include "qgsalgorithmxyztiles.h"
284#include "qgsstylealgorithms.h"
285
287
289 : QgsProcessingProvider( parent )
290{}
291
292QIcon QgsNativeAlgorithms::icon() const
293{
294 return QgsApplication::getThemeIcon( QStringLiteral( "/providerQgis.svg" ) );
295}
296
298{
299 return QgsApplication::iconPath( QStringLiteral( "providerQgis.svg" ) );
300}
301
302QString QgsNativeAlgorithms::id() const
303{
304 return QStringLiteral( "native" );
305}
306
307QString QgsNativeAlgorithms::helpId() const
308{
309 return QStringLiteral( "qgis" );
310}
311
312QString QgsNativeAlgorithms::name() const
313{
314 return tr( "QGIS (native c++)" );
315}
316
318{
319 return true;
320}
321
323{
325}
326
328{
329 const QgsScopedRuntimeProfile profile( QObject::tr( "QGIS native provider" ) );
330 addAlgorithm( new QgsAddHistoryMetadataAlgorithm() );
331 addAlgorithm( new QgsAddIncrementalFieldAlgorithm() );
332 addAlgorithm( new QgsAddTableFieldAlgorithm() );
333 addAlgorithm( new QgsAddXYFieldsAlgorithm() );
334 addAlgorithm( new QgsAddUniqueValueIndexAlgorithm() );
335 addAlgorithm( new QgsAffineTransformationAlgorithm() );
336 addAlgorithm( new QgsAggregateAlgorithm() );
337 addAlgorithm( new QgsAlignRastersAlgorithm() );
338 addAlgorithm( new QgsAlignSingleRasterAlgorithm() );
339 addAlgorithm( new QgsAngleToNearestAlgorithm() );
340 addAlgorithm( new QgsApplyLayerMetadataAlgorithm() );
341 addAlgorithm( new QgsApplyLayerStyleAlgorithm() );
342 addAlgorithm( new QgsArrayTranslatedFeaturesAlgorithm() );
343 addAlgorithm( new QgsAspectAlgorithm() );
344 addAlgorithm( new QgsAssignProjectionAlgorithm() );
345 addAlgorithm( new QgsAttributeIndexAlgorithm() );
346 addAlgorithm( new QgsB3DMToGltfAlgorithm() );
347 addAlgorithm( new QgsBasicStatisticsAlgorithm() );
348 addAlgorithm( new QgsBatchNominatimGeocodeAlgorithm() );
349 addAlgorithm( new QgsBookmarksToLayerAlgorithm() );
350 addAlgorithm( new QgsBoundaryAlgorithm() );
351 addAlgorithm( new QgsBoundingBoxAlgorithm() );
352 addAlgorithm( new QgsBufferAlgorithm() );
353 addAlgorithm( new QgsCalculateExpressionAlgorithm() );
354 addAlgorithm( new QgsCalculateVectorOverlapsAlgorithm() );
355 addAlgorithm( new QgsCategorizeUsingStyleAlgorithm() );
356 addAlgorithm( new QgsCellStatisticsAlgorithm() );
357 addAlgorithm( new QgsCellStatisticsPercentileAlgorithm() );
358 addAlgorithm( new QgsCellStatisticsPercentRankFromRasterAlgorithm() );
359 addAlgorithm( new QgsCellStatisticsPercentRankFromValueAlgorithm() );
360 addAlgorithm( new QgsCentroidAlgorithm() );
361 addAlgorithm( new QgsCheckValidityAlgorithm() );
362 addAlgorithm( new QgsGeometryCheckSegmentLengthAlgorithm() );
363 addAlgorithm( new QgsGeometryCheckAngleAlgorithm() );
364 addAlgorithm( new QgsGeometryCheckAreaAlgorithm() );
365 addAlgorithm( new QgsGeometryCheckHoleAlgorithm() );
366 addAlgorithm( new QgsGeometryCheckMissingVertexAlgorithm() );
367 addAlgorithm( new QgsGeometryCheckLineIntersectionAlgorithm() );
368 addAlgorithm( new QgsGeometryCheckLineLayerIntersectionAlgorithm() );
369 addAlgorithm( new QgsGeometryCheckPointCoveredByLineAlgorithm() );
370 addAlgorithm( new QgsGeometryCheckPointInPolygonAlgorithm() );
371 addAlgorithm( new QgsGeometryCheckGapAlgorithm() );
372 addAlgorithm( new QgsGeometryCheckSliverPolygonAlgorithm() );
373 addAlgorithm( new QgsGeometryCheckSelfContactAlgorithm() );
374 addAlgorithm( new QgsGeometryCheckOverlapAlgorithm() );
375 addAlgorithm( new QgsGeometryCheckFollowBoundariesAlgorithm() );
376 addAlgorithm( new QgsGeometryCheckDuplicateNodesAlgorithm() );
377 addAlgorithm( new QgsGeometryCheckDangleAlgorithm() );
378 addAlgorithm( new QgsGeometryCheckDuplicateAlgorithm() );
379 addAlgorithm( new QgsGeometryCheckSelfIntersectionAlgorithm() );
380 addAlgorithm( new QgsGeometryCheckMultipartAlgorithm() );
381 addAlgorithm( new QgsGeometryCheckDegeneratePolygonAlgorithm() );
382 addAlgorithm( new QgsGeometryCheckContainedAlgorithm() );
383 addAlgorithm( new QgsClipAlgorithm() );
384 addAlgorithm( new QgsCollectAlgorithm() );
385 addAlgorithm( new QgsCombineStylesAlgorithm() );
386 addAlgorithm( new QgsConcaveHullAlgorithm() );
387 addAlgorithm( new QgsConditionalBranchAlgorithm() );
388 addAlgorithm( new QgsConstantRasterAlgorithm() );
389 addAlgorithm( new QgsConvertToCurvesAlgorithm() );
390 addAlgorithm( new QgsConvexHullAlgorithm() );
391 addAlgorithm( new QgsCopyLayerMetadataAlgorithm() );
392 addAlgorithm( new QgsCoverageSimplifyAlgorithm() );
393 addAlgorithm( new QgsCoverageUnionAlgorithm() );
394 addAlgorithm( new QgsCoverageValidateAlgorithm() );
395 addAlgorithm( new QgsCreateDirectoryAlgorithm() );
396 addAlgorithm( new QgsDbscanClusteringAlgorithm() );
397 addAlgorithm( new QgsDefineProjectionAlgorithm() );
398 addAlgorithm( new QgsDelaunayTriangulationAlgorithm() );
399 addAlgorithm( new QgsDeleteDuplicateGeometriesAlgorithm() );
400 addAlgorithm( new QgsDetectVectorChangesAlgorithm() );
401 addAlgorithm( new QgsDifferenceAlgorithm() );
402 addAlgorithm( new QgsDissolveAlgorithm() );
403 addAlgorithm( new QgsDownloadVectorTilesAlgorithm() );
404 addAlgorithm( new QgsDrapeToMAlgorithm() );
405 addAlgorithm( new QgsDrapeToZAlgorithm() );
406 addAlgorithm( new QgsDropTableFieldsAlgorithm() );
407 addAlgorithm( new QgsDropGeometryAlgorithm() );
408 addAlgorithm( new QgsDropMZValuesAlgorithm() );
409 addAlgorithm( new QgsDxfExportAlgorithm() );
410 addAlgorithm( new QgsExecutePostgisQueryAlgorithm() );
411 addAlgorithm( new QgsExecuteRegisteredSpatialiteQueryAlgorithm() );
412 addAlgorithm( new QgsExecuteSpatialiteQueryAlgorithm() );
413 addAlgorithm( new QgsExplodeAlgorithm() );
414 addAlgorithm( new QgsExplodeHstoreAlgorithm() );
415 addAlgorithm( new QgsExportGeometryAttributesAlgorithm() );
416 addAlgorithm( new QgsExportLayersInformationAlgorithm() );
417 addAlgorithm( new QgsExportLayerMetadataAlgorithm() );
418 addAlgorithm( new QgsExportMeshVerticesAlgorithm );
419 addAlgorithm( new QgsExportMeshFacesAlgorithm );
420 addAlgorithm( new QgsExportMeshEdgesAlgorithm );
421 addAlgorithm( new QgsExportMeshOnGridAlgorithm );
422 addAlgorithm( new QgsExportToPostgresqlAlgorithm );
423 addAlgorithm( new QgsExportToSpreadsheetAlgorithm() );
424 addAlgorithm( new QgsExtendLinesAlgorithm() );
425 addAlgorithm( new QgsExtentFromLayerAlgorithm() );
426 addAlgorithm( new QgsExtentToLayerAlgorithm() );
427 addAlgorithm( new QgsExtractBinaryFieldAlgorithm() );
428 addAlgorithm( new QgsExtractByAttributeAlgorithm() );
429 addAlgorithm( new QgsExtractByExpressionAlgorithm() );
430 addAlgorithm( new QgsExtractByExtentAlgorithm() );
431 addAlgorithm( new QgsExtractByLocationAlgorithm() );
432 addAlgorithm( new QgsExtractLabelsAlgorithm() );
433 addAlgorithm( new QgsExtractMValuesAlgorithm() );
434 addAlgorithm( new QgsExtractVerticesAlgorithm() );
435 addAlgorithm( new QgsExtractSpecificVerticesAlgorithm() );
436 addAlgorithm( new QgsExtractWithinDistanceAlgorithm() );
437 addAlgorithm( new QgsExtractZValuesAlgorithm() );
438 addAlgorithm( new QgsFieldCalculatorAlgorithm() );
439 addAlgorithm( new QgsFileDownloaderAlgorithm() );
440 addAlgorithm( new QgsFillNoDataAlgorithm() );
441 addAlgorithm( new QgsFilterAlgorithm() );
442 addAlgorithm( new QgsFilterByGeometryAlgorithm() );
443 addAlgorithm( new QgsFilterByLayerTypeAlgorithm() );
444 addAlgorithm( new QgsFilterVerticesByM() );
445 addAlgorithm( new QgsFilterVerticesByZ() );
446 addAlgorithm( new QgsFixGeometriesAlgorithm() );
447 addAlgorithm( new QgsFlattenRelationshipsAlgorithm() );
448 addAlgorithm( new QgsForceRHRAlgorithm() );
449 addAlgorithm( new QgsFuzzifyRasterLinearMembershipAlgorithm() );
450 addAlgorithm( new QgsFuzzifyRasterPowerMembershipAlgorithm() );
451 addAlgorithm( new QgsFuzzifyRasterLargeMembershipAlgorithm() );
452 addAlgorithm( new QgsFuzzifyRasterSmallMembershipAlgorithm() );
453 addAlgorithm( new QgsFuzzifyRasterGaussianMembershipAlgorithm() );
454 addAlgorithm( new QgsFuzzifyRasterNearMembershipAlgorithm() );
455 addAlgorithm( new QgsGenerateElevationProfileAlgorithm() );
456 addAlgorithm( new QgsGeometryByExpressionAlgorithm() );
457 addAlgorithm( new QgsGltfToVectorFeaturesAlgorithm() );
458#if QT_CONFIG( process )
459 addAlgorithm( new QgsConvertGpxFeatureTypeAlgorithm() );
460 addAlgorithm( new QgsConvertGpsDataAlgorithm() );
461 addAlgorithm( new QgsDownloadGpsDataAlgorithm() );
462 addAlgorithm( new QgsUploadGpsDataAlgorithm() );
463#endif
464 addAlgorithm( new QgsGridAlgorithm() );
465 addAlgorithm( new QgsHillshadeAlgorithm() );
466 addAlgorithm( new QgsImportPhotosAlgorithm() );
467 addAlgorithm( new QgsInterpolatePointAlgorithm() );
468 addAlgorithm( new QgsIntersectionAlgorithm() );
469 addAlgorithm( new QgsJoinByAttributeAlgorithm() );
470 addAlgorithm( new QgsJoinByLocationAlgorithm() );
471 addAlgorithm( new QgsJoinByLocationSummaryAlgorithm() );
472 addAlgorithm( new QgsJoinByNearestAlgorithm() );
473 addAlgorithm( new QgsJoinWithLinesAlgorithm() );
474 addAlgorithm( new QgsKeepNBiggestPartsAlgorithm() );
475 addAlgorithm( new QgsKMeansClusteringAlgorithm() );
476 addAlgorithm( new QgsLayerToBookmarksAlgorithm() );
477 addAlgorithm( new QgsLayoutMapExtentToLayerAlgorithm() );
478 addAlgorithm( new QgsLayoutAtlasToImageAlgorithm() );
479 addAlgorithm( new QgsLayoutAtlasToPdfAlgorithm() );
480 addAlgorithm( new QgsLayoutAtlasToMultiplePdfAlgorithm() );
481 addAlgorithm( new QgsLayoutToImageAlgorithm() );
482 addAlgorithm( new QgsLayoutToPdfAlgorithm() );
483 addAlgorithm( new QgsLineDensityAlgorithm() );
484 addAlgorithm( new QgsLineIntersectionAlgorithm() );
485 addAlgorithm( new QgsLineSubstringAlgorithm() );
486 addAlgorithm( new QgsLoadLayerAlgorithm() );
487 addAlgorithm( new QgsMeanCoordinatesAlgorithm() );
488 addAlgorithm( new QgsMergeLinesAlgorithm() );
489 addAlgorithm( new QgsMergeVectorAlgorithm() );
490 addAlgorithm( new QgsMeshRasterizeAlgorithm );
491 addAlgorithm( new QgsMeshContoursAlgorithm );
492 addAlgorithm( new QgsMeshExportCrossSection );
493 addAlgorithm( new QgsMeshExportTimeSeries );
494 addAlgorithm( new QgsMeshSurfaceToPolygonAlgorithm() );
495 addAlgorithm( new QgsMinimumEnclosingCircleAlgorithm() );
496 addAlgorithm( new QgsMultiDifferenceAlgorithm() );
497 addAlgorithm( new QgsMultiIntersectionAlgorithm() );
498 addAlgorithm( new QgsMultipartToSinglepartAlgorithm() );
499 addAlgorithm( new QgsMultiRingConstantBufferAlgorithm() );
500 addAlgorithm( new QgsMultiUnionAlgorithm() );
501 addAlgorithm( new QgsNearestNeighbourAnalysisAlgorithm() );
502 addAlgorithm( new QgsOffsetLinesAlgorithm() );
503 addAlgorithm( new QgsOrderByExpressionAlgorithm() );
504 addAlgorithm( new QgsOrientedMinimumBoundingBoxAlgorithm() );
505 addAlgorithm( new QgsOrthogonalizeAlgorithm() );
506 addAlgorithm( new QgsPackageAlgorithm() );
507 addAlgorithm( new QgsPixelCentroidsFromPolygonsAlgorithm() );
508 addAlgorithm( new QgsCreateArrayOffsetLinesAlgorithm() );
509 addAlgorithm( new QgsPointsInPolygonAlgorithm() );
510 addAlgorithm( new QgsPointOnSurfaceAlgorithm() );
511 addAlgorithm( new QgsPointToLayerAlgorithm() );
512 addAlgorithm( new QgsPointsAlongGeometryAlgorithm() );
513 addAlgorithm( new QgsPointsLayerFromTableAlgorithm() );
514 addAlgorithm( new QgsPointsToPathsAlgorithm() );
515 addAlgorithm( new QgsPoleOfInaccessibilityAlgorithm() );
516 addAlgorithm( new QgsPolygonizeAlgorithm() );
517 addAlgorithm( new QgsProjectPointCartesianAlgorithm() );
518 addAlgorithm( new QgsPromoteToMultipartAlgorithm() );
519 addAlgorithm( new QgsRaiseExceptionAlgorithm() );
520 addAlgorithm( new QgsRaiseWarningAlgorithm() );
521 addAlgorithm( new QgsRaiseMessageAlgorithm() );
522 addAlgorithm( new QgsRandomBinomialRasterAlgorithm() );
523 addAlgorithm( new QgsRandomExponentialRasterAlgorithm() );
524 addAlgorithm( new QgsRandomExtractAlgorithm() );
525 addAlgorithm( new QgsRandomGammaRasterAlgorithm() );
526 addAlgorithm( new QgsRandomGeometricRasterAlgorithm() );
527 addAlgorithm( new QgsRandomNegativeBinomialRasterAlgorithm() );
528 addAlgorithm( new QgsRandomNormalRasterAlgorithm() );
529 addAlgorithm( new QgsRandomPointsExtentAlgorithm() );
530 addAlgorithm( new QgsRandomPointsInPolygonsAlgorithm() );
531 addAlgorithm( new QgsRandomPointsOnLinesAlgorithm() );
532 addAlgorithm( new QgsRandomPoissonRasterAlgorithm() );
533 addAlgorithm( new QgsRandomUniformRasterAlgorithm() );
534 addAlgorithm( new QgsRasterCalculatorAlgorithm() );
535 addAlgorithm( new QgsRasterCalculatorModelerAlgorithm() );
536 addAlgorithm( new QgsRasterDtmSlopeBasedFilterAlgorithm() );
537 addAlgorithm( new QgsRasterFrequencyByEqualOperatorAlgorithm() );
538 addAlgorithm( new QgsRasterFrequencyByGreaterThanOperatorAlgorithm() );
539 addAlgorithm( new QgsRasterFrequencyByLessThanOperatorAlgorithm() );
540 addAlgorithm( new QgsRasterLayerPropertiesAlgorithm() );
541 addAlgorithm( new QgsRasterLayerUniqueValuesReportAlgorithm() );
542 addAlgorithm( new QgsRasterLayerZonalStatsAlgorithm() );
543 addAlgorithm( new QgsRasterLogicalAndAlgorithm() );
544 addAlgorithm( new QgsRasterLogicalOrAlgorithm() );
545 addAlgorithm( new QgsRasterMinMaxAlgorithm() );
546 addAlgorithm( new QgsRasterizeAlgorithm() );
547 addAlgorithm( new QgsRasterPixelsToPointsAlgorithm() );
548 addAlgorithm( new QgsRasterPixelsToPolygonsAlgorithm() );
549 addAlgorithm( new QgsRasterRankAlgorithm() );
550 addAlgorithm( new QgsRasterSamplingAlgorithm() );
551 addAlgorithm( new QgsRasterStackHighestPositionAlgorithm() );
552 addAlgorithm( new QgsRasterStackLowestPositionAlgorithm() );
553 addAlgorithm( new QgsRasterStatisticsAlgorithm() );
554 addAlgorithm( new QgsRasterSurfaceVolumeAlgorithm() );
555 addAlgorithm( new QgsAlgorithmRemoveDuplicateVertices() );
556 addAlgorithm( new QgsReclassifyByLayerAlgorithm() );
557 addAlgorithm( new QgsReclassifyByTableAlgorithm() );
558 addAlgorithm( new QgsRectanglesOvalsDiamondsAlgorithm() );
559 addAlgorithm( new QgsRefactorFieldsAlgorithm() );
560 addAlgorithm( new QgsRemoveDuplicatesByAttributeAlgorithm() );
561 addAlgorithm( new QgsRemoveHolesAlgorithm() );
562 addAlgorithm( new QgsRemoveNullGeometryAlgorithm() );
563 addAlgorithm( new QgsRenameLayerAlgorithm() );
564 addAlgorithm( new QgsRenameTableFieldAlgorithm() );
565 addAlgorithm( new QgsRepairShapefileAlgorithm() );
566 addAlgorithm( new QgsRescaleRasterAlgorithm() );
567 addAlgorithm( new QgsRetainTableFieldsAlgorithm() );
568 addAlgorithm( new QgsReverseLineDirectionAlgorithm() );
569 addAlgorithm( new QgsRotateFeaturesAlgorithm() );
570 addAlgorithm( new QgsRoundnessAlgorithm() );
571 addAlgorithm( new QgsRoundRasterValuesAlgorithm() );
572 addAlgorithm( new QgsRuggednessAlgorithm() );
573 addAlgorithm( new QgsSaveFeaturesAlgorithm() );
574 addAlgorithm( new QgsSaveLogToFileAlgorithm() );
575 addAlgorithm( new QgsSaveSelectedFeatures() );
576 addAlgorithm( new QgsSegmentizeByMaximumAngleAlgorithm() );
577 addAlgorithm( new QgsSegmentizeByMaximumDistanceAlgorithm() );
578 addAlgorithm( new QgsSelectByLocationAlgorithm() );
579 addAlgorithm( new QgsSelectWithinDistanceAlgorithm() );
580 addAlgorithm( new QgsServiceAreaFromLayerAlgorithm() );
581 addAlgorithm( new QgsServiceAreaFromPointAlgorithm() );
582 addAlgorithm( new QgsSetLayerEncodingAlgorithm() );
583 addAlgorithm( new QgsSetMetadataFieldsAlgorithm() );
584 addAlgorithm( new QgsSetMValueAlgorithm() );
585 addAlgorithm( new QgsSetProjectVariableAlgorithm() );
586 addAlgorithm( new QgsSetZValueAlgorithm() );
587 addAlgorithm( new QgsShapefileEncodingInfoAlgorithm() );
588 addAlgorithm( new QgsShortestLineAlgorithm() );
589 addAlgorithm( new QgsShortestPathLayerToPointAlgorithm() );
590 addAlgorithm( new QgsShortestPathPointToLayerAlgorithm() );
591 addAlgorithm( new QgsShortestPathPointToPointAlgorithm() );
592 addAlgorithm( new QgsSimplifyAlgorithm() );
593 addAlgorithm( new QgsSingleSidedBufferAlgorithm() );
594 addAlgorithm( new QgsSlopeAlgorithm() );
595 addAlgorithm( new QgsSmoothAlgorithm() );
596 addAlgorithm( new QgsSnapGeometriesAlgorithm() );
597 addAlgorithm( new QgsSnapToGridAlgorithm() );
598 addAlgorithm( new QgsSpatialIndexAlgorithm() );
599 addAlgorithm( new QgsSplitFeaturesByAttributeCharacterAlgorithm() );
600 addAlgorithm( new QgsSplitGeometryAtAntimeridianAlgorithm() );
601 addAlgorithm( new QgsSplitLinesByLengthAlgorithm() );
602 addAlgorithm( new QgsSplitVectorLayerAlgorithm() );
603 addAlgorithm( new QgsSplitWithLinesAlgorithm() );
604 addAlgorithm( new QgsStDbscanClusteringAlgorithm() );
605 addAlgorithm( new QgsStringConcatenationAlgorithm() );
606 addAlgorithm( new QgsStyleFromProjectAlgorithm() );
607 addAlgorithm( new QgsSubdivideAlgorithm() );
608 addAlgorithm( new QgsSumLineLengthAlgorithm() );
609 addAlgorithm( new QgsSwapXYAlgorithm() );
610 addAlgorithm( new QgsSymmetricalDifferenceAlgorithm() );
611 addAlgorithm( new QgsTaperedBufferAlgorithm() );
612 addAlgorithm( new QgsTinMeshCreationAlgorithm() );
613 addAlgorithm( new QgsTransectAlgorithm() );
614 addAlgorithm( new QgsTransferAnnotationsFromMainAlgorithm() );
615 addAlgorithm( new QgsTransformAlgorithm() );
616 addAlgorithm( new QgsTranslateAlgorithm() );
617 addAlgorithm( new QgsTruncateTableAlgorithm() );
618 addAlgorithm( new QgsUnionAlgorithm() );
619 addAlgorithm( new QgsUpdateLayerMetadataAlgorithm() );
620 addAlgorithm( new QgsOpenUrlAlgorithm() );
621 addAlgorithm( new QgsHttpRequestAlgorithm() );
622 addAlgorithm( new QgsVariableWidthBufferByMAlgorithm() );
623 addAlgorithm( new QgsVirtualRasterCalculatorAlgorithm() );
624 addAlgorithm( new QgsVirtualRasterCalculatorModelerAlgorithm() );
625 addAlgorithm( new QgsVoronoiPolygonsAlgorithm() );
626 addAlgorithm( new QgsWedgeBuffersAlgorithm() );
627 addAlgorithm( new QgsWriteVectorTilesXyzAlgorithm() );
628 addAlgorithm( new QgsWriteVectorTilesMbtilesAlgorithm() );
629 addAlgorithm( new QgsXyzTilesDirectoryAlgorithm() );
630 addAlgorithm( new QgsXyzTilesMbtilesAlgorithm() );
631 addAlgorithm( new QgsZonalHistogramAlgorithm() );
632 addAlgorithm( new QgsZonalMinimumMaximumPointAlgorithm() );
633 addAlgorithm( new QgsZonalStatisticsAlgorithm() );
634 addAlgorithm( new QgsZonalStatisticsFeatureBasedAlgorithm() );
635 addAlgorithm( new QgsPolygonsToLinesAlgorithm() );
636 addAlgorithm( new QgsDensifyGeometriesByIntervalAlgorithm() );
637 addAlgorithm( new QgsDensifyGeometriesByCountAlgorithm() );
638 addAlgorithm( new QgsFixGeometryOverlapAlgorithm() );
639 addAlgorithm( new QgsFixGeometryDeleteFeaturesAlgorithm() );
640 addAlgorithm( new QgsFixGeometryAngleAlgorithm() );
641 addAlgorithm( new QgsFixGeometryDuplicateNodesAlgorithm() );
642 addAlgorithm( new QgsFixGeometryMultipartAlgorithm() );
643 addAlgorithm( new QgsFixGeometrySelfIntersectionAlgorithm() );
644 addAlgorithm( new QgsFixGeometryGapAlgorithm() );
645 addAlgorithm( new QgsFixGeometryAreaAlgorithm() );
646 addAlgorithm( new QgsFixGeometryHoleAlgorithm() );
647 addAlgorithm( new QgsFixGeometryMissingVertexAlgorithm() );
648}
649
@ CompatibleWithVirtualRaster
The processing provider's algorithms can work with QGIS virtualraster data provider.
QFlags< ProcessingProviderFlag > ProcessingProviderFlags
Flags indicating how and when an processing provider operates and should be exposed to users.
Definition qgis.h:3438
static QIcon getThemeIcon(const QString &name, const QColor &fillColor=QColor(), const QColor &strokeColor=QColor())
Helper to get a theme icon.
static QString iconPath(const QString &iconFile)
Returns path to the desired icon file.
void loadAlgorithms() override
Loads all algorithms belonging to this provider.
QString helpId() const override
Returns the provider help id string, used for creating QgsHelp urls for algorithms belong to this pro...
QString id() const override
Returns the unique provider id, used for identifying the provider.
bool supportsNonFileBasedOutput() const override
Returns true if the provider supports non-file based outputs (such as memory layers or direct databas...
QString svgIconPath() const override
Returns a path to an SVG version of the provider's icon.
QString name() const override
Returns the provider name, which is used to describe the provider within the GUI.
QIcon icon() const override
Returns an icon for the provider.
QgsNativeAlgorithms(QObject *parent=nullptr)
Constructor for QgsNativeAlgorithms.
Qgis::ProcessingProviderFlags flags() const override
Returns the flags indicating how and when the provider operates and should be exposed to users.
Abstract base class for processing providers.
bool addAlgorithm(QgsProcessingAlgorithm *algorithm)
Adds an algorithm to the provider.
Scoped object for logging of the runtime for a single operation or group of operations.