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