QGIS API Documentation 4.3.0-Master (7c7bd4d7018)
Loading...
Searching...
No Matches
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
32#include "qgsalgorithmaspect.h"
40#include "qgsalgorithmbuffer.h"
68#include "qgsalgorithmclimb.h"
69#include "qgsalgorithmclip.h"
94#include "qgsalgorithmdrape.h"
103#include "qgsalgorithmexplode.h"
125#include "qgsalgorithmextrude.h"
131#include "qgsalgorithmfilter.h"
146#include "qgsalgorithmforceccw.h"
147#include "qgsalgorithmforcecw.h"
148#include "qgsalgorithmforcerhr.h"
153#include "qgsalgorithmheatmap.h"
154#include "qgsruntimeprofiler.h"
155
156#include <QString>
157
158#include "moc_qgsnativealgorithms.cpp"
159
160using namespace Qt::StringLiterals;
161
162#if QT_CONFIG( process )
164#endif
165#include "qgsalgorithmgrid.h"
204#include "qgsalgorithmpackage.h"
243#include "qgsalgorithmrelief.h"
255#include "qgsalgorithmrotate.h"
260#include "qgsalgorithmsavelog.h"
276#include "qgsalgorithmsimplify.h"
278#include "qgsalgorithmslope.h"
279#include "qgsalgorithmsmooth.h"
292#include "qgsalgorithmswapxy.h"
297#include "qgsalgorithmtransect.h"
302#include "qgsalgorithmunion.h"
313#include "qgsalgorithmxyztiles.h"
323#include "qgsstylealgorithms.h"
324
326
328 : QgsProcessingProvider( parent )
329{}
330
331QIcon QgsNativeAlgorithms::icon() const
332{
333 return QgsApplication::getThemeIcon( u"/providerQgis.svg"_s );
334}
335
337{
338 return QgsApplication::iconPath( u"providerQgis.svg"_s );
339}
340
341QString QgsNativeAlgorithms::id() const
342{
343 return u"native"_s;
344}
345
346QString QgsNativeAlgorithms::helpId() const
347{
348 return u"qgis"_s;
349}
350
351QString QgsNativeAlgorithms::name() const
352{
353 return tr( "QGIS (native c++)" );
354}
355
357{
358 return true;
359}
360
362{
364}
365
367{
368 const QgsScopedRuntimeProfile profile( QObject::tr( "QGIS native provider" ) );
369 addAlgorithm( new QgsAddHistoryMetadataAlgorithm() );
370 addAlgorithm( new QgsAddIncrementalFieldAlgorithm() );
371 addAlgorithm( new QgsAddTableFieldAlgorithm() );
372 addAlgorithm( new QgsAddXYFieldsAlgorithm() );
373 addAlgorithm( new QgsAddUniqueValueIndexAlgorithm() );
374 addAlgorithm( new QgsAffineTransformationAlgorithm() );
375 addAlgorithm( new QgsAggregateAlgorithm() );
376 addAlgorithm( new QgsAlignRastersAlgorithm() );
377 addAlgorithm( new QgsAlignSingleRasterAlgorithm() );
378 addAlgorithm( new QgsAngleToNearestAlgorithm() );
379 addAlgorithm( new QgsApplyLayerMetadataAlgorithm() );
380 addAlgorithm( new QgsApplyLayerStyleAlgorithm() );
381 addAlgorithm( new QgsApproximateMedialAxisAlgorithm() );
382 addAlgorithm( new QgsArrayTranslatedFeaturesAlgorithm() );
383 addAlgorithm( new QgsAspectAlgorithm() );
384 addAlgorithm( new QgsAssignProjectionAlgorithm() );
385 addAlgorithm( new QgsAttributeIndexAlgorithm() );
386 addAlgorithm( new QgsB3DMToGltfAlgorithm() );
387 addAlgorithm( new QgsBasicStatisticsAlgorithm() );
388 addAlgorithm( new QgsBatchNominatimGeocodeAlgorithm() );
389 addAlgorithm( new QgsBookmarksToLayerAlgorithm() );
390 addAlgorithm( new QgsBoundaryAlgorithm() );
391 addAlgorithm( new QgsBoundingBoxAlgorithm() );
392 addAlgorithm( new QgsBufferAlgorithm() );
393 addAlgorithm( new QgsCalculateExpressionAlgorithm() );
394 addAlgorithm( new QgsCalculateVectorOverlapsAlgorithm() );
395 addAlgorithm( new QgsCategorizeUsingStyleAlgorithm() );
396 addAlgorithm( new QgsCellStatisticsAlgorithm() );
397 addAlgorithm( new QgsCellStatisticsPercentileAlgorithm() );
398 addAlgorithm( new QgsCellStatisticsPercentRankFromRasterAlgorithm() );
399 addAlgorithm( new QgsCellStatisticsPercentRankFromValueAlgorithm() );
400 addAlgorithm( new QgsCentroidAlgorithm() );
401 addAlgorithm( new QgsCheckValidityAlgorithm() );
402 addAlgorithm( new QgsGeometryCheckSegmentLengthAlgorithm() );
403 addAlgorithm( new QgsGeometryCheckAngleAlgorithm() );
404 addAlgorithm( new QgsGeometryCheckAreaAlgorithm() );
405 addAlgorithm( new QgsGeometryCheckHoleAlgorithm() );
406 addAlgorithm( new QgsGeometryCheckMissingVertexAlgorithm() );
407 addAlgorithm( new QgsGeometryCheckLineIntersectionAlgorithm() );
408 addAlgorithm( new QgsGeometryCheckLineLayerIntersectionAlgorithm() );
409 addAlgorithm( new QgsGeometryCheckPointCoveredByLineAlgorithm() );
410 addAlgorithm( new QgsGeometryCheckPointInPolygonAlgorithm() );
411 addAlgorithm( new QgsGeometryCheckGapAlgorithm() );
412 addAlgorithm( new QgsGeometryCheckSliverPolygonAlgorithm() );
413 addAlgorithm( new QgsGeometryCheckSelfContactAlgorithm() );
414 addAlgorithm( new QgsGeometryCheckOverlapAlgorithm() );
415 addAlgorithm( new QgsGeometryCheckFollowBoundariesAlgorithm() );
416 addAlgorithm( new QgsGeometryCheckDuplicateNodesAlgorithm() );
417 addAlgorithm( new QgsGeometryCheckDangleAlgorithm() );
418 addAlgorithm( new QgsGeometryCheckDuplicateAlgorithm() );
419 addAlgorithm( new QgsGeometryCheckSelfIntersectionAlgorithm() );
420 addAlgorithm( new QgsGeometryCheckMultipartAlgorithm() );
421 addAlgorithm( new QgsGeometryCheckDegeneratePolygonAlgorithm() );
422 addAlgorithm( new QgsGeometryCheckContainedAlgorithm() );
423 addAlgorithm( new QgsClimbAlgorithm() );
424 addAlgorithm( new QgsClipAlgorithm() );
425 addAlgorithm( new QgsCollectAlgorithm() );
426 addAlgorithm( new QgsCombineStylesAlgorithm() );
427 addAlgorithm( new QgsConcaveHullAlgorithm() );
428 addAlgorithm( new QgsConcaveHullByFeatureAlgorithm() );
429 addAlgorithm( new QgsConcaveHullOfPolygonsAlgorithm() );
430 addAlgorithm( new QgsConditionalBranchAlgorithm() );
431 addAlgorithm( new QgsConstantRasterAlgorithm() );
432 addAlgorithm( new QgsConvertToCurvesAlgorithm() );
433 addAlgorithm( new QgsConvertGeometryTypeAlgorithm() );
434 addAlgorithm( new QgsConvexHullAlgorithm() );
435 addAlgorithm( new QgsCopyLayerMetadataAlgorithm() );
436 addAlgorithm( new QgsCoverageSimplifyAlgorithm() );
437 addAlgorithm( new QgsCoverageUnionAlgorithm() );
438 addAlgorithm( new QgsCoverageValidateAlgorithm() );
439 addAlgorithm( new QgsCreateDirectoryAlgorithm() );
440 addAlgorithm( new QgsDbscanClusteringAlgorithm() );
441 addAlgorithm( new QgsDefineProjectionAlgorithm() );
442 addAlgorithm( new QgsDelaunayTriangulationAlgorithm() );
443 addAlgorithm( new QgsDeleteDuplicateGeometriesAlgorithm() );
444 addAlgorithm( new QgsDetectVectorChangesAlgorithm() );
445 addAlgorithm( new QgsDifferenceAlgorithm() );
446 addAlgorithm( new QgsDissolveAlgorithm() );
447 addAlgorithm( new QgsDistanceMatrixAlgorithm() );
448 addAlgorithm( new QgsDownloadVectorTilesAlgorithm() );
449 addAlgorithm( new QgsDrapeToMAlgorithm() );
450 addAlgorithm( new QgsDrapeToZAlgorithm() );
451 addAlgorithm( new QgsDropTableFieldsAlgorithm() );
452 addAlgorithm( new QgsDropGeometryAlgorithm() );
453 addAlgorithm( new QgsDropMZValuesAlgorithm() );
454 addAlgorithm( new QgsDxfExportAlgorithm() );
455 addAlgorithm( new QgsExtrudeAlgorithm() );
456 addAlgorithm( new QgsExecuteAndLoadPostgisQueryAlgorithm() );
457 addAlgorithm( new QgsExecutePostgisQueryAlgorithm() );
458 addAlgorithm( new QgsExecuteRegisteredSpatialiteQueryAlgorithm() );
459 addAlgorithm( new QgsExecuteSpatialiteQueryAlgorithm() );
460 addAlgorithm( new QgsExplodeAlgorithm() );
461 addAlgorithm( new QgsExplodeHstoreAlgorithm() );
462 addAlgorithm( new QgsExportGeometryAttributesAlgorithm() );
463 addAlgorithm( new QgsExportLayersInformationAlgorithm() );
464 addAlgorithm( new QgsExportLayerMetadataAlgorithm() );
465 addAlgorithm( new QgsExportMeshVerticesAlgorithm() );
466 addAlgorithm( new QgsExportMeshFacesAlgorithm() );
467 addAlgorithm( new QgsExportMeshEdgesAlgorithm() );
468 addAlgorithm( new QgsExportMeshOnGridAlgorithm() );
469 addAlgorithm( new QgsExportToPostgresqlAlgorithm() );
470 addAlgorithm( new QgsExportToRegisteredSpatialiteAlgorithm() );
471 addAlgorithm( new QgsExportToSpatialiteAlgorithm() );
472 addAlgorithm( new QgsExportToSpreadsheetAlgorithm() );
473 addAlgorithm( new QgsExtendLinesAlgorithm() );
474 addAlgorithm( new QgsExtentFromLayerAlgorithm() );
475 addAlgorithm( new QgsExtentToLayerAlgorithm() );
476 addAlgorithm( new QgsExtractBinaryFieldAlgorithm() );
477 addAlgorithm( new QgsExtractByAttributeAlgorithm() );
478 addAlgorithm( new QgsExtractByExpressionAlgorithm() );
479 addAlgorithm( new QgsExtractByExtentAlgorithm() );
480 addAlgorithm( new QgsExtractByLocationAlgorithm() );
481 addAlgorithm( new QgsExtractLabelsAlgorithm() );
482 addAlgorithm( new QgsExtractMValuesAlgorithm() );
483 addAlgorithm( new QgsExtractNetworkEndpointsAlgorithm() );
484 addAlgorithm( new QgsExtractVerticesAlgorithm() );
485 addAlgorithm( new QgsExtractSpecificVerticesAlgorithm() );
486 addAlgorithm( new QgsExtractWithinDistanceAlgorithm() );
487 addAlgorithm( new QgsExtractZValuesAlgorithm() );
488 addAlgorithm( new QgsFieldCalculatorAlgorithm() );
489 addAlgorithm( new QgsFileDownloaderAlgorithm() );
490 addAlgorithm( new QgsFileUploaderAlgorithm() );
491 addAlgorithm( new QgsFillNoDataAlgorithm() );
492 addAlgorithm( new QgsFillSinksWangLiuAlgorithm() );
493 addAlgorithm( new QgsFilterAlgorithm() );
494 addAlgorithm( new QgsFilterByGeometryAlgorithm() );
495 addAlgorithm( new QgsFilterByLayerTypeAlgorithm() );
496 addAlgorithm( new QgsFilterVerticesByM() );
497 addAlgorithm( new QgsFilterVerticesByZ() );
498 addAlgorithm( new QgsFindProjectionAlgorithm() );
499 addAlgorithm( new QgsFixGeometriesAlgorithm() );
500 addAlgorithm( new QgsFlattenRelationshipsAlgorithm() );
501 addAlgorithm( new QgsForceCCWAlgorithm() );
502 addAlgorithm( new QgsForceCWAlgorithm() );
503 addAlgorithm( new QgsForceRHRAlgorithm() );
504 addAlgorithm( new QgsFuzzifyRasterLinearMembershipAlgorithm() );
505 addAlgorithm( new QgsFuzzifyRasterPowerMembershipAlgorithm() );
506 addAlgorithm( new QgsFuzzifyRasterLargeMembershipAlgorithm() );
507 addAlgorithm( new QgsFuzzifyRasterSmallMembershipAlgorithm() );
508 addAlgorithm( new QgsFuzzifyRasterGaussianMembershipAlgorithm() );
509 addAlgorithm( new QgsFuzzifyRasterNearMembershipAlgorithm() );
510 addAlgorithm( new QgsGenerateElevationProfileAlgorithm() );
511 addAlgorithm( new QgsGeometryByExpressionAlgorithm() );
512 addAlgorithm( new QgsGltfToVectorFeaturesAlgorithm() );
513#if QT_CONFIG( process )
514 addAlgorithm( new QgsConvertGpxFeatureTypeAlgorithm() );
515 addAlgorithm( new QgsConvertGpsDataAlgorithm() );
516 addAlgorithm( new QgsDownloadGpsDataAlgorithm() );
517 addAlgorithm( new QgsUploadGpsDataAlgorithm() );
518#endif
519 addAlgorithm( new QgsGridAlgorithm() );
520 addAlgorithm( new QgsHeatmapAlgorithm() );
521 addAlgorithm( new QgsHillshadeAlgorithm() );
522 addAlgorithm( new QgsHubDistanceAlgorithm() );
523 addAlgorithm( new QgsHypsometricCurvesAlgorithm() );
524 addAlgorithm( new QgsImportPhotosAlgorithm() );
525 addAlgorithm( new QgsInterpolatePointAlgorithm() );
526 addAlgorithm( new QgsIntersectionAlgorithm() );
527 addAlgorithm( new QgsJoinByAttributeAlgorithm() );
528 addAlgorithm( new QgsJoinByLocationAlgorithm() );
529 addAlgorithm( new QgsJoinByLocationSummaryAlgorithm() );
530 addAlgorithm( new QgsJoinByNearestAlgorithm() );
531 addAlgorithm( new QgsJoinWithLinesAlgorithm() );
532 addAlgorithm( new QgsKeepNBiggestPartsAlgorithm() );
533 addAlgorithm( new QgsKMeansClusteringAlgorithm() );
534 addAlgorithm( new QgsLayerToBookmarksAlgorithm() );
535 addAlgorithm( new QgsLayoutMapExtentToLayerAlgorithm() );
536 addAlgorithm( new QgsLayoutAtlasToImageAlgorithm() );
537 addAlgorithm( new QgsLayoutAtlasToPdfAlgorithm() );
538 addAlgorithm( new QgsLayoutAtlasToMultiplePdfAlgorithm() );
539 addAlgorithm( new QgsLayoutToImageAlgorithm() );
540 addAlgorithm( new QgsLayoutToPdfAlgorithm() );
541 addAlgorithm( new QgsLineDensityAlgorithm() );
542 addAlgorithm( new QgsLineIntersectionAlgorithm() );
543 addAlgorithm( new QgsLineSubstringAlgorithm() );
544 addAlgorithm( new QgsLoadLayerAlgorithm() );
545 addAlgorithm( new QgsMeanCoordinatesAlgorithm() );
546 addAlgorithm( new QgsMergeLinesAlgorithm() );
547 addAlgorithm( new QgsMergeVectorAlgorithm() );
548 addAlgorithm( new QgsMeshRasterizeAlgorithm );
549 addAlgorithm( new QgsMeshContoursAlgorithm() );
550 addAlgorithm( new QgsMeshExportCrossSection() );
551 addAlgorithm( new QgsMeshExportTimeSeries() );
552 addAlgorithm( new QgsMeshSurfaceToPolygonAlgorithm() );
553 addAlgorithm( new QgsMinimumBoundingGeometryAlgorithm() );
554 addAlgorithm( new QgsMinimumEnclosingCircleAlgorithm() );
555 addAlgorithm( new QgsMultiDifferenceAlgorithm() );
556 addAlgorithm( new QgsMultiIntersectionAlgorithm() );
557 addAlgorithm( new QgsMultipartToSinglepartAlgorithm() );
558 addAlgorithm( new QgsMultiRingConstantBufferAlgorithm() );
559 addAlgorithm( new QgsMultiUnionAlgorithm() );
560 addAlgorithm( new QgsNearestNeighbourAnalysisAlgorithm() );
561 addAlgorithm( new QgsOffsetLinesAlgorithm() );
562 addAlgorithm( new QgsOrderByExpressionAlgorithm() );
563 addAlgorithm( new QgsOrientedMinimumBoundingBoxAlgorithm() );
564 addAlgorithm( new QgsOrthogonalizeAlgorithm() );
565 addAlgorithm( new QgsPackageAlgorithm() );
566 addAlgorithm( new QgsPixelCentroidsFromPolygonsAlgorithm() );
567 addAlgorithm( new QgsCreateArrayOffsetLinesAlgorithm() );
568 addAlgorithm( new QgsPointsInPolygonAlgorithm() );
569 addAlgorithm( new QgsPointOnSurfaceAlgorithm() );
570 addAlgorithm( new QgsPointToLayerAlgorithm() );
571 addAlgorithm( new QgsPointsAlongGeometryAlgorithm() );
572 addAlgorithm( new QgsPointsLayerFromTableAlgorithm() );
573 addAlgorithm( new QgsPointsToPathsAlgorithm() );
574 addAlgorithm( new QgsPoleOfInaccessibilityAlgorithm() );
575 addAlgorithm( new QgsPolygonizeAlgorithm() );
576 addAlgorithm( new QgsProjectPointCartesianAlgorithm() );
577 addAlgorithm( new QgsPromoteToMultipartAlgorithm() );
578 addAlgorithm( new QgsRaiseExceptionAlgorithm() );
579 addAlgorithm( new QgsRaiseWarningAlgorithm() );
580 addAlgorithm( new QgsRaiseMessageAlgorithm() );
581 addAlgorithm( new QgsRandomBinomialRasterAlgorithm() );
582 addAlgorithm( new QgsRandomExponentialRasterAlgorithm() );
583 addAlgorithm( new QgsRandomExtractAlgorithm() );
584 addAlgorithm( new QgsRandomExtractWithinSubsetsAlgorithm() );
585 addAlgorithm( new QgsRandomGammaRasterAlgorithm() );
586 addAlgorithm( new QgsRandomGeometricRasterAlgorithm() );
587 addAlgorithm( new QgsRandomNegativeBinomialRasterAlgorithm() );
588 addAlgorithm( new QgsRandomNormalRasterAlgorithm() );
589 addAlgorithm( new QgsRandomPointsExtentAlgorithm() );
590 addAlgorithm( new QgsRandomPointsInPolygonsAlgorithm() );
591 addAlgorithm( new QgsRandomPointsOnLinesAlgorithm() );
592 addAlgorithm( new QgsRandomPoissonRasterAlgorithm() );
593 addAlgorithm( new QgsRandomSelectionAlgorithm() );
594 addAlgorithm( new QgsRandomSelectionWithinSubsetsAlgorithm() );
595 addAlgorithm( new QgsRandomUniformRasterAlgorithm() );
596 addAlgorithm( new QgsRasterCalculatorAlgorithm() );
597 addAlgorithm( new QgsRasterCalculatorModelerAlgorithm() );
598 addAlgorithm( new QgsRasterDtmSlopeBasedFilterAlgorithm() );
599 addAlgorithm( new QgsRasterFeaturePreservingSmoothingAlgorithm() );
600 addAlgorithm( new QgsRasterFrequencyByEqualOperatorAlgorithm() );
601 addAlgorithm( new QgsRasterFrequencyByGreaterThanOperatorAlgorithm() );
602 addAlgorithm( new QgsRasterFrequencyByLessThanOperatorAlgorithm() );
603 addAlgorithm( new QgsRasterGaussianBlurAlgorithm() );
604 addAlgorithm( new QgsRasterLayerPropertiesAlgorithm() );
605 addAlgorithm( new QgsRasterLayerUniqueValuesReportAlgorithm() );
606 addAlgorithm( new QgsRasterLayerZonalStatsAlgorithm() );
607 addAlgorithm( new QgsRasterLogicalAndAlgorithm() );
608 addAlgorithm( new QgsRasterLogicalOrAlgorithm() );
609 addAlgorithm( new QgsRasterMinMaxAlgorithm() );
610 addAlgorithm( new QgsRasterizeAlgorithm() );
611 addAlgorithm( new QgsRasterPixelsToPointsAlgorithm() );
612 addAlgorithm( new QgsRasterPixelsToPolygonsAlgorithm() );
613 addAlgorithm( new QgsRasterRankAlgorithm() );
614 addAlgorithm( new QgsRasterSamplingAlgorithm() );
615 addAlgorithm( new QgsRasterStackHighestPositionAlgorithm() );
616 addAlgorithm( new QgsRasterStackLowestPositionAlgorithm() );
617 addAlgorithm( new QgsRasterStatisticsAlgorithm() );
618 addAlgorithm( new QgsRasterSurfaceVolumeAlgorithm() );
619 addAlgorithm( new QgsAlgorithmRemoveDuplicateVertices() );
620 addAlgorithm( new QgsReclassifyByLayerAlgorithm() );
621 addAlgorithm( new QgsReclassifyByTableAlgorithm() );
622 addAlgorithm( new QgsRectanglesOvalsDiamondsAlgorithm() );
623 addAlgorithm( new QgsRefactorFieldsAlgorithm() );
624 addAlgorithm( new QgsReliefAlgorithm() );
625 addAlgorithm( new QgsRemoveDuplicatesByAttributeAlgorithm() );
626 addAlgorithm( new QgsRemoveHolesAlgorithm() );
627 addAlgorithm( new QgsRemoveNullGeometryAlgorithm() );
628 addAlgorithm( new QgsRemovePartsByAreaAlgorithm() );
629 addAlgorithm( new QgsRemovePartsByLengthAlgorithm() );
630 addAlgorithm( new QgsRenameLayerAlgorithm() );
631 addAlgorithm( new QgsRenameTableFieldAlgorithm() );
632 addAlgorithm( new QgsRepairShapefileAlgorithm() );
633 addAlgorithm( new QgsRescaleRasterAlgorithm() );
634 addAlgorithm( new QgsRetainTableFieldsAlgorithm() );
635 addAlgorithm( new QgsReverseLineDirectionAlgorithm() );
636 addAlgorithm( new QgsRotateFeaturesAlgorithm() );
637 addAlgorithm( new QgsRoundnessAlgorithm() );
638 addAlgorithm( new QgsRoundRasterValuesAlgorithm() );
639 addAlgorithm( new QgsRuggednessAlgorithm() );
640 addAlgorithm( new QgsSaveFeaturesAlgorithm() );
641 addAlgorithm( new QgsSaveLogToFileAlgorithm() );
642 addAlgorithm( new QgsSaveSelectedFeatures() );
643 addAlgorithm( new QgsSegmentizeByMaximumAngleAlgorithm() );
644 addAlgorithm( new QgsSegmentizeByMaximumDistanceAlgorithm() );
645 addAlgorithm( new QgsSelectByAttributeAlgorithm() );
646 addAlgorithm( new QgsSelectByExpressionAlgorithm() );
647 addAlgorithm( new QgsSelectByLocationAlgorithm() );
648 addAlgorithm( new QgsSelectWithinDistanceAlgorithm() );
649 addAlgorithm( new QgsServiceAreaFromLayerAlgorithm() );
650 addAlgorithm( new QgsServiceAreaFromPointAlgorithm() );
651 addAlgorithm( new QgsSetLayerEncodingAlgorithm() );
652 addAlgorithm( new QgsSetMetadataFieldsAlgorithm() );
653 addAlgorithm( new QgsSetMValueAlgorithm() );
654 addAlgorithm( new QgsSetProjectVariableAlgorithm() );
655 addAlgorithm( new QgsSetZValueAlgorithm() );
656 addAlgorithm( new QgsShapefileEncodingInfoAlgorithm() );
657 addAlgorithm( new QgsShortestLineAlgorithm() );
658 addAlgorithm( new QgsShortestPathLayerToPointAlgorithm() );
659 addAlgorithm( new QgsShortestPathPointToLayerAlgorithm() );
660 addAlgorithm( new QgsShortestPathPointToPointAlgorithm() );
661 addAlgorithm( new QgsSimplifyAlgorithm() );
662 addAlgorithm( new QgsSingleSidedBufferAlgorithm() );
663 addAlgorithm( new QgsSlopeAlgorithm() );
664 addAlgorithm( new QgsSmoothAlgorithm() );
665 addAlgorithm( new QgsSnapGeometriesAlgorithm() );
666 addAlgorithm( new QgsSnapToGridAlgorithm() );
667 addAlgorithm( new QgsSpatialIndexAlgorithm() );
668 addAlgorithm( new QgsSplitFeaturesByAttributeCharacterAlgorithm() );
669 addAlgorithm( new QgsSplitGeometryAtAntimeridianAlgorithm() );
670 addAlgorithm( new QgsSplitLinesByLengthAlgorithm() );
671 addAlgorithm( new QgsSplitVectorLayerAlgorithm() );
672 addAlgorithm( new QgsSplitWithLinesAlgorithm() );
673 addAlgorithm( new QgsStDbscanClusteringAlgorithm() );
674 addAlgorithm( new QgsStringConcatenationAlgorithm() );
675 addAlgorithm( new QgsStyleFromProjectAlgorithm() );
676 addAlgorithm( new QgsSubdivideAlgorithm() );
677 addAlgorithm( new QgsSumLineLengthAlgorithm() );
678 addAlgorithm( new QgsSwapXYAlgorithm() );
679 addAlgorithm( new QgsSymmetricalDifferenceAlgorithm() );
680 addAlgorithm( new QgsTaperedBufferAlgorithm() );
681 addAlgorithm( new QgsTinMeshCreationAlgorithm() );
682 addAlgorithm( new QgsTotalCurvatureAlgorithm() );
683 addAlgorithm( new QgsTransectAlgorithm() );
684 addAlgorithm( new QgsTransectFixedDistanceAlgorithm() );
685 addAlgorithm( new QgsTransferAnnotationsFromMainAlgorithm() );
686 addAlgorithm( new QgsTransformAlgorithm() );
687 addAlgorithm( new QgsTranslateAlgorithm() );
688 addAlgorithm( new QgsTruncateTableAlgorithm() );
689 addAlgorithm( new QgsUnionAlgorithm() );
690 addAlgorithm( new QgsUniqueValuesAlgorithm() );
691 addAlgorithm( new QgsUpdateLayerMetadataAlgorithm() );
692 addAlgorithm( new QgsValidateNetworkAlgorithm() );
693 addAlgorithm( new QgsOpenUrlAlgorithm() );
694 addAlgorithm( new QgsHttpRequestAlgorithm() );
695 addAlgorithm( new QgsVariableWidthBufferByMAlgorithm() );
696 addAlgorithm( new QgsVirtualRasterCalculatorAlgorithm() );
697 addAlgorithm( new QgsVirtualRasterCalculatorModelerAlgorithm() );
698 addAlgorithm( new QgsVoronoiPolygonsAlgorithm() );
699 addAlgorithm( new QgsWedgeBuffersAlgorithm() );
700 addAlgorithm( new QgsWriteVectorTilesXyzAlgorithm() );
701 addAlgorithm( new QgsWriteVectorTilesMbtilesAlgorithm() );
702 addAlgorithm( new QgsXyzTilesDirectoryAlgorithm() );
703 addAlgorithm( new QgsXyzTilesMbtilesAlgorithm() );
704 addAlgorithm( new QgsZonalHistogramAlgorithm() );
705 addAlgorithm( new QgsZonalMinimumMaximumPointAlgorithm() );
706 addAlgorithm( new QgsZonalStatisticsAlgorithm() );
707 addAlgorithm( new QgsZonalStatisticsFeatureBasedAlgorithm() );
708 addAlgorithm( new QgsPolygonsToLinesAlgorithm() );
709 addAlgorithm( new QgsDensifyGeometriesByIntervalAlgorithm() );
710 addAlgorithm( new QgsDensifyGeometriesByCountAlgorithm() );
711 addAlgorithm( new QgsFixGeometryOverlapAlgorithm() );
712 addAlgorithm( new QgsFixGeometryDeleteFeaturesAlgorithm() );
713 addAlgorithm( new QgsFixGeometryAngleAlgorithm() );
714 addAlgorithm( new QgsFixGeometryDuplicateNodesAlgorithm() );
715 addAlgorithm( new QgsFixGeometryMultipartAlgorithm() );
716 addAlgorithm( new QgsFixGeometrySelfIntersectionAlgorithm() );
717 addAlgorithm( new QgsFixGeometryGapAlgorithm() );
718 addAlgorithm( new QgsFixGeometryAreaAlgorithm() );
719 addAlgorithm( new QgsFixGeometryHoleAlgorithm() );
720 addAlgorithm( new QgsFixGeometryMissingVertexAlgorithm() );
721}
722
@ CompatibleWithVirtualRaster
The processing provider's algorithms can work with QGIS virtualraster data provider.
Definition qgis.h:3743
QFlags< ProcessingProviderFlag > ProcessingProviderFlags
Flags indicating how and when an processing provider operates and should be exposed to users.
Definition qgis.h:3754
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.