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