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