36int QgisEvent = QEvent::User + 1;
43#define QHASH_FOR_CLASS_ENUM(T) \
44 inline uint qHash(const T &t, uint seed) { \
45 return ::qHash(static_cast<typename std::underlying_type<T>::type>(t), seed); \
43#define QHASH_FOR_CLASS_ENUM(T) \ …
56 Q_CLASSINFO(
"RegisterEnumClassesUnscoped",
"false" )
65 static QString version();
72 static int versionInt();
79 static QString releaseName();
89 static QString devVersion();
101 ClearStorage = 1 << 0,
103 ReadConfiguration = 1 << 1,
104 UpdateConfiguration = 1 << 2,
105 DeleteConfiguration = 1 << 3,
106 CreateConfiguration = 1 << 4,
108 ReadCertificateIdentity = 1 << 5,
109 UpdateCertificateIdentity = 1 << 6,
110 DeleteCertificateIdentity = 1 << 7,
111 CreateCertificateIdentity = 1 << 8,
113 ReadSslCertificateCustomConfig = 1 << 9,
114 UpdateSslCertificateCustomConfig = 1 << 10,
115 DeleteSslCertificateCustomConfig = 1 << 11,
116 CreateSslCertificateCustomConfig = 1 << 12,
118 ReadCertificateAuthority = 1 << 13,
119 UpdateCertificateAuthority = 1 << 14,
120 DeleteCertificateAuthority = 1 << 15,
121 CreateCertificateAuthority = 1 << 16,
123 ReadCertificateTrustPolicy = 1 << 17,
124 UpdateCertificateTrustPolicy = 1 << 18,
125 DeleteCertificateTrustPolicy = 1 << 19,
126 CreateCertificateTrustPolicy = 1 << 20,
128 ReadMasterPassword = 1 << 21,
129 UpdateMasterPassword = 1 << 22,
130 DeleteMasterPassword = 1 << 23,
131 CreateMasterPassword = 1 << 24,
133 ReadSetting = 1 << 25,
134 UpdateSetting = 1 << 26,
135 DeleteSetting = 1 << 27,
136 CreateSetting = 1 << 28,
139 Q_ENUM( AuthConfigurationStorageCapability )
161 Q_ENUM( MessageLevel )
194 HasGeometry = PointLayer | LineLayer | PolygonLayer,
195 VectorLayer = NoGeometry | HasGeometry,
199 VectorTileLayer = 256,
200 PointCloudLayer = 512,
201 AnnotationLayer = 1024,
202 TiledSceneLayer = 2048,
203 All = RasterLayer | VectorLayer | PluginLayer | MeshLayer | VectorTileLayer | PointCloudLayer | AnnotationLayer | TiledSceneLayer,
204 SpatialLayer = RasterLayer | HasGeometry | PluginLayer | MeshLayer | VectorTileLayer | PointCloudLayer | AnnotationLayer | TiledSceneLayer
216 IgnoreMissingStyleErrors = 1 << 0,
218 Q_ENUM( LoadStyleFlag )
265 GeometryCollection = 7,
271 PolyhedralSurface = 15,
279 MultiLineStringZ = 1005,
280 MultiPolygonZ = 1006,
281 GeometryCollectionZ = 1007,
282 CircularStringZ = 1008,
283 CompoundCurveZ = 1009,
284 CurvePolygonZ = 1010,
286 MultiSurfaceZ = 1012,
287 PolyhedralSurfaceZ = 1015,
294 MultiLineStringM = 2005,
295 MultiPolygonM = 2006,
296 GeometryCollectionM = 2007,
297 CircularStringM = 2008,
298 CompoundCurveM = 2009,
299 CurvePolygonM = 2010,
301 MultiSurfaceM = 2012,
302 PolyhedralSurfaceM = 2015,
308 MultiLineStringZM = 3005,
309 MultiPolygonZM = 3006,
310 GeometryCollectionZM = 3007,
311 CircularStringZM = 3008,
312 CompoundCurveZM = 3009,
313 CurvePolygonZM = 3010,
315 MultiSurfaceZM = 3012,
316 PolyhedralSurfaceZM = 3015,
319 Point25D = 0x80000001,
344 Q_ENUM( GeometryType )
366 ARGB32_Premultiplied = 13
382 Q_ENUM( CaptureTechnique )
393 Q_ENUM( VectorLayerTypeFlag )
410 Q_ENUM( PythonEmbeddedMode )
419 ExpressionFunction = 1,
421 Q_ENUM( PythonEmbeddedType )
433 SkipFeatureCount = 1 << 1,
435 SkipGetExtent = 1 << 3,
436 SkipFullScan = 1 << 4,
437 ForceReadOnly = 1 << 5,
438 SkipCredentialsRequest = 1 << 6,
439 ParallelThreadLoading = 1 << 7,
441 Q_ENUM( DataProviderReadFlag )
466 DeleteFeatures = 1 << 1,
467 ChangeAttributeValues = 1 << 2,
468 AddAttributes = 1 << 3,
469 DeleteAttributes = 1 << 4,
470 CreateSpatialIndex = 1 << 6,
472 ChangeGeometries = 1 << 8,
473 SelectEncoding = 1 << 13,
474 CreateAttributeIndex = 1 << 12,
475 SimplifyGeometries = 1 << 14,
476 SimplifyGeometriesWithTopologicalValidation = 1 << 15,
477 TransactionSupport = 1 << 16,
478 CircularGeometries = 1 << 17,
479 ChangeFeatures = 1 << 18,
480 RenameAttributes = 1 << 19,
481 FastTruncate = 1 << 20,
482 ReadLayerMetadata = 1 << 21,
483 WriteLayerMetadata = 1 << 22,
484 CancelSupport = 1 << 23,
485 CreateRenderer = 1 << 24,
486 CreateLabeling = 1 << 25,
487 ReloadData = 1 << 26,
488 FeatureSymbology = 1 << 27,
489 EditingCapabilities = AddFeatures | DeleteFeatures | ChangeAttributeValues | ChangeGeometries | AddAttributes | DeleteAttributes | RenameAttributes,
491 Q_ENUM( VectorProviderCapability )
513 Q_ENUM( FeatureCountState )
527 Q_ENUM( SpatialIndexPresence )
542 NoFeaturesAvailable = 0,
544 FeaturesMaybeAvailable
546 Q_ENUM( FeatureAvailability )
556 EditComment = 1 << 1,
559 Q_ENUM( VectorDataProviderAttributeEditCapability )
592 Q_ENUM( ScaleMethod )
611 Q_ENUM( SettingsType )
623 Q_ENUM( SettingsTreeNodeType )
631 NamedListSelectedItemSetting = 1 << 0,
634 Q_ENUM( SettingsTreeNodeOption )
652 Q_ENUM( PropertyType )
665 Q_ENUM( SldExportOption )
676 NoVendorExtension = 0,
677 GeoServerVendorExtension = 1 << 1,
678 DeegreeVendorExtension = 1 << 2,
680 Q_ENUM( SldExportVendorExtension )
689 SaveFormerValue = 1 << 1,
690 SaveEnumFlagAsInt = 1 << 2,
692 Q_ENUM( SettingsOption )
704 AdvancedConfiguration = 3,
706 Q_ENUM( SnappingMode )
722 Q_ENUM( SnappingType )
734 DynamicRotation = 1 << 1,
735 IsSymbolLayerSubSymbol = 1 << 2,
736 ForceVectorRendering = 1 << 3,
737 ExcludeSymbolBuffers = 1 << 4,
739 Q_ENUM( SymbolRenderHint )
754 Q_ENUM( SymbolRotationMode )
769 Q_ENUM( HorizontalAnchorPoint )
784 Q_ENUM( VerticalAnchorPoint )
793 AffectsLabeling = 1 << 0,
795 Q_ENUM( FeatureRendererFlag )
812 RendererShouldUseSymbolLevels = 1 << 0,
813 AffectsLabeling = 1 << 1,
827 FlagIncludeCrosshairsForMarkerSymbols = 1 << 0,
829 Q_ENUM( SymbolPreviewFlag )
845 DisableFeatureClipping = 1 << 0,
846 CanCalculateMaskGeometryPerFeature = 1 << 1,
847 AffectsLabeling = 1 << 2,
849 Q_ENUM( SymbolLayerFlag )
865 DisableSelectionRecoloring = 1 << 0,
867 Q_ENUM( SymbolLayerUserFlag )
894 Q_ENUM( BrowserItemType )
907 Q_ENUM( BrowserItemState )
923 ItemRepresentsFile = 1 << 6,
924 RefreshChildrenWhenItemIsRefreshed = 1 << 7,
927 Q_ENUM( BrowserItemCapability )
947 Q_ENUM( DataItemProviderCapability )
981 Q_ENUM( BrowserLayerType )
994 Q_ENUM( BrowserDirectoryMonitoring )
1008 Q_ENUM( HttpMethod )
1030 Q_ENUM( VectorExportResult )
1038 FieldAliases = 1 << 0,
1039 FieldComments = 1 << 2,
1041 Q_ENUM( VectorFileWriterCapability )
1056 SubsetStringFilter = 1 << 1,
1057 GeometryColumn = 1 << 2,
1058 PrimaryKeys = 1 << 3,
1059 UnstableFeatureIds = 1 << 4
1061 Q_ENUM( SqlLayerDefinitionCapability )
1083 Q_ENUM( SqlKeywordCategory )
1111 Q_ENUM( ActionStart )
1120 FollowEngineSetting,
1123 Q_ENUM( UnplacedLabelVisibility )
1133 AllowOverlapIfRequired,
1134 AllowOverlapAtNoCost,
1136 Q_ENUM( LabelOverlapHandling )
1146 PreferPositionOrdering,
1148 Q_ENUM( LabelPrioritization )
1165 OrderedPositionsAroundPoint,
1169 Q_ENUM( LabelPlacement )
1190 BottomSlightlyRight,
1194 Q_ENUM( LabelPredefinedPointPosition )
1209 Q_ENUM( LabelOffsetType )
1230 Q_ENUM( LabelQuadrantPosition )
1245 Q_ENUM( LabelLinePlacementFlag )
1265 AllowPlacementOutsideOfPolygon = 1 << 0,
1266 AllowPlacementInsideOfPolygon = 1 << 1,
1268 Q_ENUM( LabelPolygonPlacementFlag )
1292 Q_ENUM( UpsideDownLabelHandling )
1309 Q_ENUM( LabelMultiLineAlignment )
1327 Q_ENUM( FileFilterType )
1336 RemoveCredentials = 1 << 0,
1337 RedactCredentials = 1 << 1,
1339 Q_ENUM( UriCleaningFlag )
1357 ResolveGeometryType = 1 << 1,
1358 CountFeatures = 1 << 2,
1359 IncludeSystemTables = 1 << 3,
1373 SystemTable = 1 << 0,
1393 Q_ENUM( ShaderInterpolationMethod )
1408 Q_ENUM( ShaderClassificationMethod )
1426 Q_ENUM( RasterPipeInterfaceRole )
1437 Q_ENUM( RasterResamplingStage )
1457 Q_ENUM( RasterResamplingMethod )
1466 InternalLayerOpacityHandling = 1 << 0,
1467 UseNoDataForOutOfRangePixels = 1 << 1,
1487 UsesMultipleBands = 1 << 0,
1489 Q_ENUM( RasterRendererCapability )
1513 Q_ENUM( RasterRangeLimit )
1528 Q_ENUM( RasterRangeExtent )
1542 Q_ENUM( RasterRangeAccuracy )
1571 Q_ENUM( RasterAttributeTableFieldUsage )
1583 Q_ENUM( RasterAttributeTableType )
1596 Q_ENUM( RasterExportType )
1607 SourceProviderError = 1,
1609 CreateDatasourceError = 3,
1614 Q_ENUM( RasterFileWriterResult )
1625 TooManyVerticesInFace,
1631 Q_ENUM( MeshEditingErrorType )
1643 Q_ENUM( FilePathType )
1653 AskExcludingRasterBands,
1657 Q_ENUM( SublayerPromptMode )
1674 Q_ENUM( FieldOrigin )
1686 NotSearchable = 1 << 1,
1687 HideFromWms = 1 << 2,
1688 HideFromWfs = 1 << 3,
1690 Q_ENUM( FieldConfigurationFlag )
1709 GeometryCrs = 0x1000,
1710 GeometryWkbType = 0x1001,
1711 CustomProperty = 0x100000,
1713 Q_ENUM( FieldMetadataProperty )
1726 Q_ENUM( SelectionRenderingMode )
1738 RemoveFromSelection,
1740 Q_ENUM( SelectBehavior )
1752 Q_ENUM( SelectGeometryRelationship )
1761 SingleFeatureSelection = 1 << 0,
1762 ToggleSelection = 1 << 1,
1785 FetchFeatureFailed = 3,
1788 Q_ENUM( VectorEditResult )
1797 SemiTransparentCircle,
1801 Q_ENUM( VertexMarkerType )
1815 Q_ENUM( ContentStatus )
1829 Q_ENUM( GpsConnectionType )
1842 Q_ENUM( DeviceConnectionStatus )
1897 Q_ENUM( GpsQualityIndicator )
1922 GroundSpeed = 1 << 2,
1924 TotalTrackLength = 1 << 4,
1925 TrackDistanceFromStart = 1 << 5,
1929 HorizontalAccuracy = 1 << 9,
1930 VerticalAccuracy = 1 << 10,
1931 HvAccuracy = 1 << 11,
1932 SatellitesUsed = 1 << 12,
1933 Timestamp = 1 << 13,
1934 TrackStartTime = 1 << 14,
1935 TrackEndTime = 1 << 15,
1936 TrackDistanceSinceLastPoint = 1 << 16,
1937 TrackTimeSinceLastPoint = 1 << 17,
1938 GeoidalSeparation = 1 << 18,
1939 EllipsoidAltitude = 1 << 19,
1977 QuoteFilePaths = 1 << 0,
1995 Q_ENUM( GpsFeatureType )
2007 NothingHappened = 1000,
2008 InvalidBaseGeometry,
2009 InvalidInputGeometryType,
2011 SelectionIsGreaterThanOne,
2012 GeometryEngineError,
2015 AddPartSelectedGeometryNotFound,
2016 AddPartNotMultiGeometry,
2020 AddRingCrossesExistingRings,
2021 AddRingNotInExistingFeature,
2023 SplitCannotSplitPoint,
2024 GeometryTypeHasChanged,
2026 Q_ENUM( GeometryOperationResult )
2051 Q_ENUM( GeometryValidationEngine )
2063 Q_ENUM( BufferSide )
2076 Q_ENUM( EndCapStyle )
2098 RejectOnInvalidSubGeometry = 1 << 0,
2099 SkipEmptyInteriorRings = 1 << 1,
2101 Q_ENUM( GeosCreationFlag )
2122 Q_ENUM( CoverageValidityResult )
2134 Q_ENUM( MakeValidMethod )
2147 SubsetOfAttributes = 2,
2149 IgnoreStaticNodesDuringExpressionCompilation = 8,
2150 EmbeddedSymbols = 16,
2152 Q_ENUM( FeatureRequestFlag )
2178 Q_ENUM( FeatureRequestFilterType )
2193 Q_ENUM( InvalidGeometryCheck )
2206 Q_ENUM( SpatialFilterType )
2215 IncludeMetadataFile = 1 << 0,
2216 IncludeStyleFile = 1 << 1,
2230 UsersCannotToggleEditing = 1 << 0,
2231 IsBasemapLayer = 1 << 1,
2232 Is3DBasemapLayer = 1 << 2,
2250 Q_ENUM( AutoRefreshMode )
2259 IsBasemapSource = 1 << 1,
2260 FastExtent2D = 1 << 2,
2261 FastExtent3D = 1 << 3,
2262 Is3DBasemapSource = 1 << 4,
2344 Q_ENUM( CrsAxisDirection )
2357 Q_ENUM( CoordinateOrder )
2372 Q_ENUM( CrsIdentifierType )
2393 Q_ENUM( CrsWktVariant )
2415 ScaleDependentBoundingBox = 1 << 0,
2416 SupportsReferenceScale = 1 << 1,
2417 SupportsCallouts = 1 << 2,
2435 Q_ENUM( AnnotationPlacementMode )
2444 FlagNoCreationTools = 1 << 0,
2461 Q_ENUM( AnnotationItemNodeType )
2474 Q_ENUM( AnnotationItemEditOperationResult )
2490 Q_ENUM( TemporalNavigationMode )
2505 Q_ENUM( AnimationState )
2522 Q_ENUM( PlaybackOperation )
2538 Q_ENUM( VectorTemporalMode )
2547 IncludeBeginExcludeEnd = 0,
2548 IncludeBeginIncludeEnd,
2550 Q_ENUM( VectorTemporalLimitMode )
2561 StoresFeatureDateTimeStartAndEndInSeparateFields
SIP_MONKEYPATCH_COMPAT_NAME( ProviderStoresFeatureDateTimeStartAndEndInSeparateFields ),
2563 Q_ENUM( VectorDataProviderTemporalMode )
2575 FixedRangePerBand = 3,
2576 RepresentsTemporalValues = 4,
2579 Q_ENUM( RasterTemporalMode )
2588 MatchUsingWholeRange,
2589 MatchExactUsingStartOfRange,
2590 MatchExactUsingEndOfRange,
2591 FindClosestMatchToStartOfRange,
2592 FindClosestMatchToEndOfRange
2594 Q_ENUM( TemporalIntervalMatchMethod )
2603 RequestedTimesMustExactlyMatchAllAvailableTemporalRanges = 1 << 0,
2605 Q_ENUM( RasterTemporalCapabilityFlag )
2625 Q_ENUM( TransformDirection )
2634 BallparkTransformsAreAppropriate = 1 << 0,
2635 IgnoreImpossibleTransformations = 1 << 1,
2637 Q_ENUM( CoordinateTransformationFlag )
2658 Q_ENUM( RasterizedRenderingPolicy )
2667 Antialiasing = 0x01,
2668 DrawEditingInfo = 0x02,
2669 ForceVectorOutput = 0x04,
2670 UseAdvancedEffects = 0x08,
2671 DrawLabeling = 0x10,
2672 UseRenderingOptimization = 0x20,
2673 DrawSelection = 0x40,
2674 DrawSymbolBounds = 0x80,
2675 RenderMapTile = 0x100,
2676 RenderPartialOutput = 0x200,
2677 RenderPreviewJob = 0x400,
2678 RenderBlocking = 0x800,
2679 LosslessImageRendering = 0x1000,
2680 Render3DMap = 0x2000,
2681 HighQualityImageTransforms = 0x4000,
2682 SkipSymbolRendering = 0x8000,
2683 ForceRasterMasks = 0x10000,
2684 RecordProfile = 0x20000,
2685 AlwaysUseGlobalMasks = 0x40000,
2699 DrawEditingInfo = 0x01,
2700 ForceVectorOutput = 0x02,
2701 UseAdvancedEffects = 0x04,
2702 UseRenderingOptimization = 0x08,
2703 DrawSelection = 0x10,
2704 DrawSymbolBounds = 0x20,
2705 RenderMapTile = 0x40,
2706 Antialiasing = 0x80,
2707 RenderPartialOutput = 0x100,
2708 RenderPreviewJob = 0x200,
2709 RenderBlocking = 0x400,
2710 RenderSymbolPreview = 0x800,
2711 LosslessImageRendering = 0x1000,
2712 ApplyScalingWorkaroundForTextRendering = 0x2000,
2713 Render3DMap = 0x4000,
2714 ApplyClipAfterReprojection = 0x8000,
2715 RenderingSubSymbol = 0x10000,
2716 HighQualityImageTransforms = 0x20000,
2717 SkipSymbolRendering = 0x40000,
2718 RecordProfile = 0x80000,
2719 AlwaysUseGlobalMasks = 0x100000,
2720 DisableSymbolClippingToExtent = 0x200000,
2721 RenderLayerTree = 0x400000
2735 RenderPartialOutputs = 1 << 0,
2736 RenderPartialOutputOverPreviousCachedImage = 1 << 1,
2737 AffectsLabeling = 1 << 2,
2739 Q_ENUM( MapLayerRendererFlag )
2756 RequiresRasterization = 1 << 0,
2758 Q_ENUM( PaintEffectFlag )
2781 Q_ENUM( TextRenderFormat )
2792 UseAllLabels = 1 << 1,
2793 UsePartialCandidates = 1 << 2,
2795 RenderOutlineLabels = 1 << 3,
2796 DrawLabelRectOnly = 1 << 4,
2797 DrawCandidates = 1 << 5,
2798 DrawUnplacedLabels = 1 << 6,
2799 CollectUnplacedLabels = 1 << 7,
2800 DrawLabelMetrics = 1 << 8,
2802 Q_ENUM( LabelingFlag )
2826 Q_ENUM( LabelPlacementEngineVersion )
2841 Q_ENUM( TextOrientation )
2855 RectangleCapHeightBased,
2856 RectangleAscentBased,
2858 Q_ENUM( TextLayoutMode )
2871 Background = 1 << 2,
2874 Q_ENUM( TextComponent )
2898 Q_ENUM( TextHorizontalAlignment )
2916 Q_ENUM( TextVerticalAlignment )
2932 Q_ENUM( TextCharacterVerticalAlignment )
2946 SnappedToGridGlobal = 3,
2948 Q_ENUM( VectorSimplificationAlgorithm )
2959 NoSimplification = 0,
2960 GeometrySimplification = 1,
2961 AntialiasingSimplification = 2,
2962 FullSimplification = 3,
2964 Q_ENUM( VectorRenderingSimplificationFlag )
2988 Q_ENUM( RenderSubcomponentProperty )
2999 Q_ENUM( VertexType )
3015 EquilateralTriangle,
3048 Q_ENUM( MarkerShape )
3061 LastVertex = 1 << 2,
3062 FirstVertex = 1 << 3,
3063 CentralPoint = 1 << 4,
3064 CurvePoint = 1 << 5,
3065 SegmentCenter = 1 << 6,
3066 InnerVertices = 1 << 7,
3068 Q_ENUM( MarkerLinePlacement )
3079 IntervalCartesian2D = 1 << 0,
3084 Q_ENUM( LinearReferencingPlacement )
3093 CartesianDistance2D,
3097 Q_ENUM( LinearReferencingLabelSource )
3111 Q_ENUM( GradientColorSource )
3126 Q_ENUM( GradientType )
3140 Q_ENUM( SymbolCoordinateReference )
3156 Q_ENUM( GradientSpread )
3170 Q_ENUM( PointCountMethod )
3184 Q_ENUM( MarkerClipMode )
3197 Q_ENUM( LineClipMode )
3212 Q_ENUM( DashPatternLineEndingRule )
3221 ScaleBothDashAndGap,
3225 Q_ENUM( DashPatternSizeAdjustment )
3239 Q_ENUM( GraduatedMethod )
3254 Q_ENUM( PlotAxisSuffixPlacement )
3280 Q_ENUM( TilePixelRatio )
3296 ForceFirstLetterToCapital = 4,
3299 UpperCamelCase = 1005,
3300 AllSmallCaps = 1006,
3302 Q_ENUM( Capitalization )
3313 Q_ENUM( TextRendererFlag )
3340 Q_ENUM( AngularDirection )
3353 Q_ENUM( RendererUsage )
3362 ShowMainAnnotationLayer = 1 << 0,
3364 Q_ENUM( MapCanvasFlag )
3381 Sync3DTo2D = 1 << 0,
3382 Sync2DTo3D = 1 << 1,
3384 Q_ENUM( ViewSyncModeFlag )
3395 WhenOutsideVisibleExtent,
3398 Q_ENUM( MapRecenteringMode )
3407 LocalProfile = 1 << 0,
3410 Q_ENUM( HistoryProviderBackend )
3424 Q_ENUM( QueryStorageBackend )
3449 Q_ENUM( ProcessingSourceType )
3499 SecurityRisk = 1 << 15,
3521 RegeneratesPrimaryKey = 1 << 0,
3522 RegeneratesPrimaryKeyInSomeScenarios = 1 << 1,
3524 Q_ENUM( ProcessingAlgorithmDocumentationFlag )
3547 Q_ENUM( ProcessingPropertyAvailability )
3562 Q_ENUM( ProcessingLogLevel )
3577 Q_ENUM( ProcessingMode )
3591 Q_ENUM( ProcessingFeatureSourceDefinitionFlag )
3614 Q_ENUM( ProcessingFeatureSourceFlag )
3640 Q_ENUM( ProcessingParameterTypeFlag )
3669 Q_ENUM( ProcessingParameterFlag )
3693 Q_ENUM( ProcessingFileParameterBehavior )
3707 Q_ENUM( ProcessingNumberParameterType )
3725 Q_ENUM( ProcessingFieldParameterDataType )
3740 Q_ENUM( ProcessingDateTimeParameterDataType )
3756 Q_ENUM( ProcessingModelChildParameterSource )
3769 Q_ENUM( ProcessingModelChildAlgorithmExecutionStatus )
3784 Q_ENUM( ProcessingTinInputLayerType )
3796 Q_ENUM( CrsDefinitionFormat )
3813 Q_ENUM( FieldDomainSplitPolicy )
3834 Q_ENUM( FieldDomainMergePolicy )
3849 Q_ENUM( FieldDuplicatePolicy )
3862 Q_ENUM( FieldDomainType )
3872 AutomaticGroups = 1,
3875 Q_ENUM( TransactionMode )
3888 Q_ENUM( AltitudeClamping )
3900 Q_ENUM( AltitudeBinding )
3910 IncludeLowerExcludeUpper,
3911 ExcludeLowerIncludeUpper,
3914 Q_ENUM( RangeLimits )
3923 FixedElevationRange = 0,
3924 RepresentsElevationSurface = 1,
3925 FixedRangePerBand = 2,
3926 DynamicRangePerBand = 3,
3928 Q_ENUM( RasterElevationMode )
3937 FixedElevationRange = 0,
3939 FixedRangePerGroup = 2,
3941 Q_ENUM( MeshElevationMode )
3954 Q_ENUM( BetweenLineConstraint )
3967 Q_ENUM( LineExtensionSide )
3984 Q_ENUM( CadConstraintType )
3994 EvaluateDefaultValuesOnProviderSide = 1 << 0,
3995 TrustStoredLayerStatistics = 1 << 1,
3996 RememberLayerEditStatusBetweenSessions = 1 << 2,
3997 RememberAttributeTableWindowsBetweenSessions = 1 << 3,
3999 Q_ENUM( ProjectFlag )
4010 ShowContextMenu = 1 << 0,
4012 Q_ENUM( PlotToolFlag )
4036 Q_ENUM( Point3DShape )
4048 Q_ENUM( LightSourceType )
4061 Q_ENUM( NavigationMode )
4086 Q_ENUM( VerticalAxisInversion )
4120 RespectsMaximumErrorMapUnit = 1 << 0,
4121 RespectsDistanceRange = 1 << 1,
4122 RespectsElevationRange = 1 << 2,
4124 Q_ENUM( ProfileGeneratorFlag )
4137 DistanceVsElevationTable,
4151 Q_ENUM( PointCloudSymbol )
4164 Q_ENUM( PointCloudDrawOrder )
4176 AvoidIntersectionsCurrentLayer,
4177 AvoidIntersectionsLayers,
4179 Q_ENUM( AvoidIntersectionsMode )
4193 Q_ENUM( ProjectFileFormat )
4209 DontLoadProjectStyles = 1 << 5,
4210 ForceReadOnlyLayers = 1 << 6,
4211 DontUpgradeAnnotations = 1 << 7,
4213 Q_ENUM( ProjectReadFlag )
4235 ProjectStyles = 1 << 0,
4237 Q_ENUM( ProjectCapability )
4262 Q_ENUM( MapBoxGlStyleSourceType )
4281 Q_ENUM( ArcGisRestServiceType )
4295 Q_ENUM( RelationshipType )
4309 Q_ENUM( RelationshipStrength )
4323 Q_ENUM( RelationshipCardinality )
4332 MultipleFieldKeys = 1 << 0,
4333 ForwardPathLabel = 1 << 1,
4334 BackwardPathLabel = 1 << 2,
4336 Q_ENUM( RelationshipCapability )
4357 Q_ENUM( CoordinateDisplayType )
4370 Q_ENUM( SettingsOrigin )
4391 Q_ENUM( ScriptLanguage )
4403 CheckSyntax = 1 << 1,
4404 ToggleComment = 1 << 2,
4406 Q_ENUM( ScriptLanguageCapability )
4423 AboveInsertionPoint,
4425 OptimalInInsertionGroup,
4427 Q_ENUM( LayerTreeInsertionMethod )
4436 SkipVisibilityCheck = 1 << 0,
4438 Q_ENUM( LayerTreeFilterFlag )
4466 Q_ENUM( LegendComponent )
4477 ShowRuleDetails = 1 << 0,
4479 Q_ENUM( LegendJsonRenderFlag )
4496 Q_ENUM( ActionType )
4508 SingleFeature = 1 << 1,
4509 MultipleFeatures = 1 << 2,
4510 AllActions = Layer | SingleFeature | MultipleFeatures
4512 Q_ENUM( MapLayerActionTarget )
4533 EnabledOnlyWhenEditable = 1 << 1,
4534 EnableOnlyWhenHasGeometry = 1 << 2,
4536 Q_ENUM( MapLayerActionFlag )
4566 Q_ENUM( AttributeActionType )
4580 Q_ENUM( MetadataDateType )
4611 ContinuousPalette = 17,
4634 Q_ENUM( RasterColorInterpretation )
4650 Q_ENUM( RasterLayerType )
4663 SingleBandPseudoColor,
4665 PalettedSingleBandGray,
4666 PalettedSingleBandPseudoColor,
4667 PalettedMultiBandColor,
4668 MultiBandSingleBandGray,
4669 MultiBandSingleBandPseudoColor,
4673 Q_ENUM( RasterDrawingStyle )
4688 Q_ENUM( RasterPyramidFormat )
4703 Q_ENUM( RasterBuildPyramidOption )
4720 Q_ENUM( RasterIdentifyFormat )
4739 BuildPyramids = 1 << 4,
4741 IdentifyValue = 1 << 6,
4742 IdentifyText = 1 << 7,
4743 IdentifyHtml = 1 << 8,
4744 IdentifyFeature = 1 << 9,
4747 Q_ENUM( RasterInterfaceCapability )
4768 NoProviderCapabilities = 0,
4769 ReadLayerMetadata = 1 << 1,
4770 WriteLayerMetadata = 1 << 2,
4771 ProviderHintBenefitsFromResampling = 1 << 3,
4772 ProviderHintCanPerformProviderResampling = 1 << 4,
4773 ReloadData = 1 << 5,
4774 DpiDependentData = 1 << 6,
4775 NativeRasterAttributeTable = 1 << 7,
4776 BuildPyramids = 1 << 8,
4778 Q_ENUM( RasterProviderCapability )
4800 Q_ENUM( ElevationMapCombineMethod )
4853 Q_ENUM( SystemOfMeasurement )
4867 Q_ENUM( MapToolUnit )
4905 ChainsInternational,
4906 ChainsBritishBenoit1895A,
4907 ChainsBritishBenoit1895B,
4908 ChainsBritishSears1922Truncated,
4909 ChainsBritishSears1922,
4914 FeetBritishBenoit1895A,
4915 FeetBritishBenoit1895B,
4916 FeetBritishSears1922Truncated,
4917 FeetBritishSears1922,
4926 LinksBritishBenoit1895A,
4927 LinksBritishBenoit1895B,
4928 LinksBritishSears1922Truncated,
4929 LinksBritishSears1922,
4932 YardsBritishBenoit1895A,
4933 YardsBritishBenoit1895B,
4934 YardsBritishSears1922Truncated,
4935 YardsBritishSears1922,
4946 Q_ENUM( DistanceUnit )
4961 Q_ENUM( DistanceUnitType )
5009 Q_ENUM( VolumeUnit )
5054 Q_ENUM( TemporalUnit )
5074 Q_ENUM( RenderUnit )
5094 Q_ENUM( LayoutUnit )
5108 Q_ENUM( LayoutUnitType )
5132 Q_ENUM( LayoutRenderFlag )
5157 Q_ENUM( PictureFormat )
5172 Q_ENUM( ScaleCalculationMethod )
5187 Q_ENUM( ScaleBarAlignment )
5201 Q_ENUM( ScaleBarSegmentSizeMode )
5215 Q_ENUM( ScaleBarDistanceLabelVerticalPlacement )
5229 Q_ENUM( ScaleBarDistanceLabelHorizontalPlacement )
5262 Q_ENUM( PostgresRelKind )
5271 SetFieldComment = 1 << 0,
5272 SetFieldAlias = 1 << 1,
5273 SetTableComment = 1 << 2,
5275 Q_ENUM( DatabaseProviderConnectionCapability2 )
5286 SetGeometryColumnName = 1 << 0,
5287 SetPrimaryKeyName = 1 << 1,
5289 Q_ENUM( DatabaseProviderTableImportCapability )
5300 SaveToDatabase = 1 << 1,
5301 LoadFromDatabase = 1 << 2,
5302 DeleteFromDatabase = 1 << 3
5319 Q_ENUM( UserProfileSelectionPolicy )
5340 Q_ENUM( AttributeEditorType )
5353 Q_ENUM( AttributeEditorContainerType )
5368 Q_ENUM( AttributeFormLayout )
5383 Q_ENUM( AttributeFormSuppression )
5399 Q_ENUM( AttributeFormPythonInitCodeSource )
5412 Q_ENUM( ExpressionType )
5427 Q_ENUM( FeatureSymbologyExport )
5436 AlwaysUseTileMatrixSetFromProvider = 1 << 1,
5438 Q_ENUM( VectorTileProviderFlag )
5454 ReadLayerMetadata = 1 << 1,
5456 Q_ENUM( VectorTileProviderCapability )
5475 AvailableNoChildren,
5476 UseLowerZoomLevelTile,
5478 Q_ENUM( TileAvailability )
5487 ReadLayerMetadata = 1 << 1,
5489 Q_ENUM( TiledSceneProviderCapability )
5510 Q_ENUM( TiledSceneBoundingVolumeType )
5525 Q_ENUM( TileRefinementProcess )
5538 Q_ENUM( TileChildrenAvailability )
5547 NoHierarchyFetch = 1 << 0,
5549 Q_ENUM( TiledSceneRequestFlag )
5566 RequiresTextures = 1 << 0,
5567 ForceRasterRender = 1 << 1,
5568 RendersTriangles = 1 << 2,
5569 RendersLines = 1 << 3,
5571 Q_ENUM( TiledSceneRendererFlag )
5588 RA_NearestNeighbour = 0,
5601 Q_ENUM( GdalResampleAlgorithm )
5617 Q_ENUM( VsiHandlerType )
5641 MinimumPoint = 1 << 12,
5642 MaximumPoint = 1 << 13,
5643 All = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
5644 AllNumeric = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
5645 Default = Count | Sum | Mean,
5647 Q_ENUM( ZonalStatistic )
5669 FailedToCreateField = 8,
5672 Q_ENUM( ZonalStatisticResult )
5698 StringMinimumLength,
5699 StringMaximumLength,
5703 StringConcatenateUnique
5715 CountMissing = 1 << 15,
5720 StDevSample = 1 << 5,
5727 FirstQuartile = 1 << 12,
5728 ThirdQuartile = 1 << 13,
5729 InterQuartileRange = 1 << 14,
5732 All = Count | CountMissing | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | FirstQuartile | ThirdQuartile | InterQuartileRange | First | Last
5757 All = Count | CountDistinct | CountMissing | Min | Max | Range,
5759 Q_ENUM( DateTimeStatistic )
5786 All = Count | CountDistinct | CountMissing | Min | Max | MinimumLength | MaximumLength | MeanLength | Minority | Majority,
5788 Q_ENUM( StringStatistic )
5812 SumOfSquares = 1 << 6,
5813 All = Min | Max | Range | Sum | Mean | StdDev | SumOfSquares
5815 Q_ENUM( RasterBandStatistic )
5843 Q_ENUM( SensorThingsEntity )
5855 Q_ENUM( ColorModel )
5869 Q_ENUM( DocumentationApi )
5878 DeveloperToolsPanel,
5881 Q_ENUM( DocumentationBrowser )
5902 Q_ENUM( MouseHandlesAction )
5913 Q_ENUM( MeshRangeLimit )
5926 Q_ENUM( MeshRangeExtent )
5939 Q_ENUM( PointCloudAccessType )
5949 RenderOverviewAndExtents
5951 Q_ENUM( PointCloudZoomOutRenderBehavior )
5964 Q_ENUM( SegmentCalculationMethod )
5977 Q_ENUM( StacObjectType )
5982 static const
double DEFAULT_SEARCH_RADIUS_MM;
5985 static const
float DEFAULT_MAPTOPIXEL_THRESHOLD;
5992 static const QColor DEFAULT_HIGHLIGHT_COLOR;
5997 static const
double DEFAULT_HIGHLIGHT_BUFFER_MM;
6002 static const
double DEFAULT_HIGHLIGHT_MIN_WIDTH_MM;
6011 Q_DECL_DEPRECATED static const
double SCALE_PRECISION;
6017 static const
double DEFAULT_Z_COORDINATE;
6024 static const
double DEFAULT_M_COORDINATE;
6030 static const
double UI_SCALE_FACTOR;
6035 static const
double DEFAULT_SNAP_TOLERANCE;
6045 static const
int USER_CRS_START_ID;
6048 static const
double DEFAULT_POINT_SIZE;
6051 static const
double DEFAULT_LINE_WIDTH;
6054 static const
double DEFAULT_SEGMENT_EPSILON;
6060 SIP_SKIP static const
int MAXIMUM_LAYER_PREVIEW_TIME_MS;
6067 static QString defaultProjectScales();
6074 static
int geosVersionInt();
6081 static
int geosVersionMajor();
6088 static
int geosVersionMinor();
6095 static
int geosVersionPatch();
6102 static QString geosVersion();
6109 static QString geoNone()
6111 return QStringLiteral(
"NONE" );
6109 static QString geoNone() {
…}
6121 return QStringLiteral(
"EPSG:4326" );
6130 return QStringLiteral(
6131 R
"""(GEOGCRS["WGS 84",DATUM["World Geodetic System 1984",ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],CS[ellipsoidal,2],AXIS["geodetic latitude (Lat)",north,ORDER[1],ANGLEUNIT["degree",0.0174532925199433]],AXIS["geodetic longitude (Lon)",east,ORDER[2],ANGLEUNIT["degree",0.0174532925199433]],USAGE[SCOPE["unknown"],AREA["World"],BBOX[-90,-180,90,180]],ID["EPSG",4326]] )"""
6141 return QStringLiteral(
"+proj=longlat +datum=WGS84 +no_defs" );
6239#define cast_to_fptr(f) f
6260 , mPreviousState( object->blockSignals( true ) )
6265 mObject->blockSignals( mPreviousState );
6273 Object *mObject =
nullptr;
6274 bool mPreviousState;
6297CORE_EXPORT uint
qHash(
const QVariant &variant );
6311 const double roundFactor = std::pow( 10, -
precision );
6312 str = QString::number(
static_cast< long long >( std::round( a / roundFactor ) * roundFactor ) );
6316 str = QString::number( a,
'f',
precision );
6317 if ( str.contains( QLatin1Char(
'.' ) ) )
6320 int idx = str.length() - 1;
6321 while ( str.at( idx ) ==
'0' && idx > 1 )
6325 if ( idx < str.length() - 1 )
6326 str.truncate( str.at( idx ) ==
'.' ? idx : idx + 1 );
6332 str = QString::number( a,
'f',
precision );
6336 if ( str == QLatin1String(
"-0" ) )
6338 return QLatin1String(
"0" );
6351 const bool aIsNan = std::isnan( a );
6352 const bool bIsNan = std::isnan( b );
6353 if ( aIsNan || bIsNan )
6354 return aIsNan && bIsNan;
6369inline bool qgsNumberNear( T a, T b, T epsilon = std::numeric_limits<T>::epsilon() * 4 )
6371 const bool aIsNan = std::isnan( a );
6372 const bool bIsNan = std::isnan( b );
6373 if ( aIsNan || bIsNan )
6374 return aIsNan && bIsNan;
6376 const T diff = a - b;
6377 return diff >= -epsilon && diff <= epsilon;
6369inline bool qgsNumberNear( T a, T b, T epsilon = std::numeric_limits<T>::epsilon() * 4 ) {
…}
6387inline bool qgsDoubleNear(
double a,
double b,
double epsilon = 4 * std::numeric_limits<double>::epsilon() )
6389 return qgsNumberNear<double>( a, b, epsilon );
6387inline bool qgsDoubleNear(
double a,
double b,
double epsilon = 4 * std::numeric_limits<double>::epsilon() ) {
…}
6398inline bool qgsFloatNear(
float a,
float b,
float epsilon = 4 * FLT_EPSILON )
6400 return qgsNumberNear<float>( a, b, epsilon );
6398inline bool qgsFloatNear(
float a,
float b,
float epsilon = 4 * FLT_EPSILON ) {
…}
6406 const bool aIsNan = std::isnan( a );
6407 const bool bIsNan = std::isnan( b );
6408 if ( aIsNan || bIsNan )
6409 return aIsNan && bIsNan;
6417 const double ar = std::frexp( a, &aexp );
6418 const double br = std::frexp( b, &bexp );
6420 return aexp == bexp &&
6421 std::round( ar * std::pow( 10.0, significantDigits ) ) == std::round( br * std::pow( 10.0, significantDigits ) );
6430 const double m = ( number < 0.0 ) ? -1.0 : 1.0;
6431 const double scaleFactor = std::pow( 10.0, places );
6432 return ( std::round( number * m * scaleFactor ) / scaleFactor ) * m;
6443template<
class Key,
class Value>
6447 for (
auto it = map.constBegin(); it != map.constEnd(); it++ )
6448 result += QString(
"%1%2" ).arg( it.key() ).arg( separator );
6450 result.chop( separator.size() );
6460template<
class Key,
class Value>
6464 for (
auto it = map.constBegin(); it != map.constEnd(); it++ )
6465 result += QString(
"%1%2" ).arg( it.value() ).arg( separator );
6467 result.chop( separator.size() );
6478QString
qgsSetJoin(
const QSet<T> &set,
const QString &separator )
6481 for (
auto it = set.constBegin(); it != set.constEnd(); it++ )
6482 result += QString(
"%1%2" ).arg( *it ).arg( separator );
6484 result.chop( separator.size() );
6514 template<
typename To,
typename From>
inline To down_cast( From *f )
6517 ( std::is_base_of<From,
6518 typename std::remove_pointer<To>::type>::value ),
6519 "target type not derived from source type" );
6520 Q_ASSERT( f ==
nullptr ||
dynamic_cast<To
>( f ) !=
nullptr );
6521 return static_cast<To
>( f );
6525 QSet<T> listToSet(
const QList<T> &list )
6527 return QSet<T>( list.begin(), list.end() );
6531 QList<T> setToList(
const QSet<T> &set )
6533 return QList<T>( set.begin(), set.end() );
6546 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6547 Q_ASSERT( metaEnum.isValid() );
6549 for (
int idx = 0; idx < metaEnum.keyCount(); ++idx )
6551 enumList.append(
static_cast<T
>( metaEnum.value( idx ) ) );
6563 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6564 Q_ASSERT( metaEnum.isValid() );
6565 QMap<T, QString> enumMap;
6566 for (
int idx = 0; idx < metaEnum.keyCount(); ++idx )
6568 enumMap.insert(
static_cast<T
>( metaEnum.value( idx ) ), QString( metaEnum.key( idx ) ) );
6580 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6581 Q_ASSERT( metaEnum.isValid() );
6582 const char *key = metaEnum.valueToKey(
static_cast<int>( value ) );
6585 *returnOk = key ? true :
false;
6587 return QString::fromUtf8( key );
6597template<
class T> T
qgsEnumKeyToValue(
const QString &key,
const T &defaultValue,
bool tryValueAsKey =
true,
bool *returnOk =
nullptr )
SIP_SKIP
6599 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6600 Q_ASSERT( metaEnum.isValid() );
6602 T v =
static_cast<T
>( metaEnum.keyToValue( key.toUtf8().data(), &ok ) );
6614 if ( tryValueAsKey )
6616 bool canConvert =
false;
6617 const int intValue = key.toInt( &canConvert );
6618 if ( canConvert && metaEnum.valueToKey( intValue ) )
6624 return static_cast<T
>( intValue );
6628 return defaultValue;
6597template<
class T> T
qgsEnumKeyToValue(
const QString &key,
const T &defaultValue,
bool tryValueAsKey =
true,
bool *returnOk =
nullptr )
SIP_SKIP {
…}
6638 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6639 Q_ASSERT( metaEnum.isValid() );
6640 int intValue =
static_cast<int>( value );
6641 const QByteArray ba = metaEnum.valueToKeys( intValue );
6644 const int intValueCheck = metaEnum.keysToValue( ba );
6645 bool ok = intValue == intValueCheck;
6648 return ok ? QString::fromUtf8( ba ) : QString();
6658template<
class T> T
qgsFlagKeysToValue(
const QString &keys,
const T &defaultValue,
bool tryValueAsKey =
true,
bool *returnOk =
nullptr )
SIP_SKIP
6660 if ( keys.isEmpty() )
6666 return defaultValue;
6668 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6669 Q_ASSERT( metaEnum.isValid() );
6671 T v =
static_cast<T
>( metaEnum.keysToValue( keys.toUtf8().constData(), &ok ) );
6683 if ( tryValueAsKey )
6685 bool canConvert =
false;
6686 const int intValue = keys.toInt( &canConvert );
6689 const QByteArray keyArray = metaEnum.valueToKeys( intValue );
6690 const int intValueCheck = metaEnum.keysToValue( keyArray );
6691 if ( !keyArray.isEmpty() && intValue == intValueCheck )
6697 return T( intValue );
6702 return defaultValue;
6774CORE_EXPORT
bool qgsVariantEqual(
const QVariant &lhs,
const QVariant &rhs );
6786#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
6794inline bool operator> (
const QVariant &v1,
const QVariant &v2 )
6794inline bool operator> (
const QVariant &v1,
const QVariant &v2 ) {
…}
6808inline bool operator< (
const QVariant &v1,
const QVariant &v2 )
6808inline bool operator< (
const QVariant &v1,
const QVariant &v2 ) {
…}
6815#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
6820template<> CORE_EXPORT
bool qMapLessThanKey<QVariantList>(
const QVariantList &key1,
const QVariantList &key2 )
SIP_SKIP;
6847class ScopedIntIncrementor
6851 ScopedIntIncrementor(
int *variable )
6852 : mVariable( variable )
6857 ScopedIntIncrementor(
const ScopedIntIncrementor &other ) =
delete;
6858 ScopedIntIncrementor &operator=(
const ScopedIntIncrementor &other ) =
delete;
6865 mVariable =
nullptr;
6868 ~ScopedIntIncrementor()
6874 int *mVariable =
nullptr;
6914#if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) || defined(__clang__)
6916#define Q_NOWARN_DEPRECATED_PUSH \
6917 _Pragma("GCC diagnostic push") \
6918 _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"");
6919#define Q_NOWARN_DEPRECATED_POP \
6920 _Pragma("GCC diagnostic pop");
6921#define Q_NOWARN_UNREACHABLE_PUSH
6922#define Q_NOWARN_UNREACHABLE_POP
6924#elif defined(_MSC_VER)
6926#define Q_NOWARN_DEPRECATED_PUSH \
6927 __pragma(warning(push)) \
6928 __pragma(warning(disable:4996))
6929#define Q_NOWARN_DEPRECATED_POP \
6930 __pragma(warning(pop))
6931#define Q_NOWARN_UNREACHABLE_PUSH \
6932 __pragma(warning(push)) \
6933 __pragma(warning(disable:4702))
6934#define Q_NOWARN_UNREACHABLE_POP \
6935 __pragma(warning(pop))
6939#define Q_NOWARN_DEPRECATED_PUSH
6940#define Q_NOWARN_DEPRECATED_POP
6941#define Q_NOWARN_UNREACHABLE_PUSH
6942#define Q_NOWARN_UNREACHABLE_POP
6949# define QGISEXTERN extern "C" __declspec( dllexport )
6951# if defined(__GNUC__) || defined(__clang__)
6952# define QGISEXTERN extern "C" __attribute__ ((visibility ("default")))
6954# define QGISEXTERN extern "C"
6961#if __cplusplus >= 201703L
6962#define NODISCARD [[nodiscard]]
6963#elif defined(__clang__)
6964#define NODISCARD [[nodiscard]]
6965#elif defined(_MSC_VER)
6967#elif defined(__has_cpp_attribute)
6968#if __has_cpp_attribute(nodiscard)
6969#define NODISCARD [[nodiscard]]
6970#elif __has_cpp_attribute(gnu::warn_unused_result)
6971#define NODISCARD [[gnu::warn_unused_result]]
6973#define NODISCARD Q_REQUIRED_RESULT
6976#define NODISCARD Q_REQUIRED_RESULT
6979#if __cplusplus >= 201703L
6980#define MAYBE_UNUSED [[maybe_unused]]
6981#elif defined(__clang__)
6982#define MAYBE_UNUSED [[maybe_unused]]
6983#elif defined(_MSC_VER)
6985#elif defined(__has_cpp_attribute)
6986#if __has_cpp_attribute(gnu::unused)
6987#define MAYBE_UNUSED [[gnu::unused]]
7001#define BUILTIN_UNREACHABLE \
7003#elif defined(__GNUC__) && !defined(__clang__)
7014#define BUILTIN_UNREACHABLE \
7015 __builtin_unreachable();
7017#define BUILTIN_UNREACHABLE
Provides global constants and enumerations for use throughout the application.
DistanceUnitType
Types of distance units.
GnssConstellation
GNSS constellation.
SettingsOption
Settings options.
ProfileGeneratorFlag
Flags that control the way the QgsAbstractProfileGenerator operate.
ProcessingSourceType
Processing data source types.
GpsQualityIndicator
GPS signal quality indicator.
DataItemProviderCapability
Capabilities for data item providers.
ProcessingFileParameterBehavior
Flags which dictate the behavior of QgsProcessingParameterFile.
RasterizedRenderingPolicy
Policies controlling when rasterisation of content during renders is permitted.
QFlags< MapLayerRendererFlag > MapLayerRendererFlags
Flags which control how map layer renderers behave.
ProjectReadFlag
Flags which control project read behavior.
QFlags< DatabaseProviderTableImportCapability > DatabaseProviderTableImportCapabilities
QFlags< BabelCommandFlag > BabelCommandFlags
Babel command flags.
MapToolUnit
Type of unit of tolerance value from settings.
PlotAxisSuffixPlacement
Placement options for suffixes in the labels for axis of plots.
ProcessingModelChildAlgorithmExecutionStatus
Reflects the status of a child algorithm in a Processing model.
QFlags< GpsInformationComponent > GpsInformationComponents
GPS information component.
ScaleBarDistanceLabelHorizontalPlacement
Scale bar distance label horizontal placement.
PointCloudSymbol
Rendering symbols for point cloud points.
SymbolRotationMode
Modes for handling how symbol and text entity rotation is handled when maps are rotated.
GeometryValidityFlag
Geometry validity check flags.
QFlags< RasterProviderCapability > RasterProviderCapabilities
Raster data provider capabilities.
ExpressionType
Expression types.
MapLayerActionFlag
Map layer action flags.
ScaleBarDistanceLabelVerticalPlacement
Scale bar distance label vertical placement.
MapLayerProperty
Generic map layer properties.
VectorProviderCapability
Vector data provider capabilities.
BufferSide
Side of line to buffer.
RasterResamplingStage
Stage at which raster resampling occurs.
QFlags< MapLayerActionTarget > MapLayerActionTargets
Map layer action targets.
VectorTileProviderCapability
Enumeration with capabilities that vector tile data providers might implement.
AltitudeClamping
Altitude clamping.
VectorTileProviderFlag
Flags for vector tile data providers.
VectorTemporalMode
Vector layer temporal feature modes.
SublayerFlag
Flags which reflect the properties of sublayers in a dataset.
QFlags< ProjectCapability > ProjectCapabilities
Flags which control project capabilities.
LabelLinePlacementFlag
Line placement flags, which control how candidates are generated for a linear feature.
QFlags< UriCleaningFlag > UriCleaningFlags
Flags for cleaning layer URIs.
CoordinateDisplayType
Formats for displaying coordinates.
ProcessingParameterTypeFlag
Flags which dictate the behavior of Processing parameter types.
QFlags< VectorRenderingSimplificationFlag > VectorRenderingSimplificationFlags
Simplification flags for vector feature rendering.
DashPatternSizeAdjustment
Dash pattern size adjustment options.
GpsFixStatus
GPS fix status.
AnnotationItemNodeType
Annotation item node types.
static const char * QGIS_DEV_VERSION
The development version.
VectorFileWriterCapability
Capabilities supported by a QgsVectorFileWriter object.
QFlags< MapSettingsFlag > MapSettingsFlags
Map settings flags.
CrsIdentifierType
Available identifier string types for representing coordinate reference systems.
QFlags< RasterRendererFlag > RasterRendererFlags
Flags which control behavior of raster renderers.
AngularDirection
Angular directions.
ContentStatus
Status for fetched or stored content.
QFlags< SelectionFlag > SelectionFlags
Flags which control feature selection behavior.
SnappingType
SnappingTypeFlag defines on what object the snapping is performed.
LayoutUnit
Layout measurement units.
RelationshipStrength
Relationship strength.
Q_ENUM(GnssConstellation)
PaintEffectFlag
Flags which control how paint effects behave.
MarkerLinePlacement
Defines how/where the symbols should be placed on a line.
QFlags< ProjectReadFlag > ProjectReadFlags
Project load flags.
LegendComponent
Component of legends which can be styled.
Point3DShape
3D point shape types.
GeometryOperationResult
Success or failure of a geometry operation.
QFlags< StringStatistic > StringStatistics
Statistics to be calculated for string values.
BrowserItemState
Browser item states.
AttributeEditorContainerType
Attribute editor container types.
QFlags< TiledSceneProviderCapability > TiledSceneProviderCapabilities
Tiled scene data provider capabilities.
FeatureRequestFilterType
Types of feature request filters.
MarkerClipMode
Marker clipping modes.
GpsNavigationStatus
GPS navigation status.
AnnotationItemFlag
Flags for annotation items.
RenderSubcomponentProperty
Rendering subcomponent properties.
ProcessingTinInputLayerType
Defines the type of input layer for a Processing TIN input.
QFlags< DataProviderFlag > DataProviderFlags
Data provider flags.
Statistic
Available generic statistics.
SymbolRenderHint
Flags controlling behavior of symbols during rendering.
AngleUnit
Units of angles.
CaptureTechnique
Capture technique.
SpatialIndexPresence
Enumeration of spatial index presence states.
BrowserItemCapability
Browser item capabilities.
AttributeFormSuppression
Available form types for layout of the attribute form editor.
QFlags< AuthConfigurationStorageCapability > AuthConfigurationStorageCapabilities
Authentication configuration storage capabilities.
QFlags< LayerTreeFilterFlag > LayerTreeFilterFlags
Layer tree filter flags.
LayerTreeInsertionMethod
Layer tree insertion methods.
RasterProviderCapability
Raster data provider capabilities.
DatabaseProviderTableImportCapability
Represents capabilities of a database provider connection when importing table data.
LineClipMode
Line clipping modes.
VectorRenderingSimplificationFlag
Simplification flags for vector feature rendering.
QFlags< GeometryValidityFlag > GeometryValidityFlags
Geometry validity flags.
BrowserDirectoryMonitoring
Browser directory item monitoring switches.
VsiHandlerType
GDAL VSI handler types.
SettingsTreeNodeType
Type of tree node.
TilePixelRatio
DpiMode enum.
DatabaseProviderConnectionCapability2
The Capability enum represents the extended operations supported by the connection.
QFlags< PaintEffectFlag > PaintEffectFlags
Flags which control how paint effects behave.
LabelOffsetType
Behavior modifier for label offset and distance, only applies in some label placement modes.
QFlags< ProfileGeneratorFlag > ProfileGeneratorFlags
LabelPrioritization
Label prioritization.
GradientColorSource
Gradient color sources.
FileFilterType
Type of file filters.
LabelPlacement
Placement modes which determine how label candidates are generated for a feature.
RasterLayerType
Raster layer types.
QFlags< VectorLayerTypeFlag > VectorLayerTypeFlags
Vector layer type flags.
ScaleBarAlignment
Scalebar alignment.
RasterPyramidFormat
Raster pyramid formats.
ProcessingMode
Types of modes which Processing widgets can be created for.
VectorExportResult
Vector layer export result codes.
DistanceUnit
Units of distance.
RasterTemporalCapabilityFlag
Flags for raster layer temporal capabilities.
SymbolLayerFlag
Flags controlling behavior of symbol layers.
MeshRangeLimit
Describes the limits used to compute mesh ranges (min/max values).
GradientSpread
Gradient spread options, which control how gradients are rendered outside of their start and end poin...
QFlags< AnnotationItemGuiFlag > AnnotationItemGuiFlags
Annotation item GUI flags.
LabelPolygonPlacementFlag
Polygon placement flags, which control how candidates are generated for a polygon feature.
RasterRangeLimit
Describes the limits used to compute raster ranges (min/max values).
ScaleMethod
Scale methods.
SldExportOption
SLD export options.
VectorSimplificationAlgorithm
Simplification algorithms for vector features.
FilePathType
File path types.
CadConstraintType
Advanced digitizing constraint type.
AttributeFormPythonInitCodeSource
The Python init code source for attribute forms.
PointCountMethod
Methods which define the number of points randomly filling a polygon.
SldExportVendorExtension
SLD export vendor extensions, allow the use of vendor extensions when exporting to SLD.
MapCanvasFlag
Flags controlling behavior of map canvases.
LayerTreeFilterFlag
Layer tree filter flags.
AttributeFormLayout
Available form types for layout of the attribute form editor.
FeatureRequestFlag
Flags for controlling feature requests.
VertexType
Types of vertex.
ShaderInterpolationMethod
Color ramp shader interpolation methods.
DataProviderFlag
Generic data provider flags.
Q_ENUM(GpsNavigationStatus)
GdalResampleAlgorithm
Resampling algorithm to be used (equivalent to GDAL's enum GDALResampleAlg)
RasterResamplingMethod
Resampling method for raster provider-level resampling.
GeometryValidationEngine
Available engines for validating geometries.
TransactionMode
Transaction mode.
Q_ENUM(ScaleToTileZoomLevelMethod)
QFlags< FeatureRendererFlag > FeatureRendererFlags
Flags controlling behavior of vector feature renderers.
ElevationMapCombineMethod
Methods used to select the elevation when two elevation maps are combined.
RasterDrawingStyle
Raster drawing styles.
GeosCreationFlag
Flags which control geos geometry creation behavior.
MeshRangeExtent
Describes the extent used to compute mesh ranges (min/max values).
GpsInformationComponent
GPS information component.
ViewSyncModeFlag
Synchronization of 2D map canvas and 3D view.
ProcessingProviderFlag
Flags indicating how and when an processing provider operates and should be exposed to users.
FileOperationFlag
File operation flags.
QFlags< DataItemProviderCapability > DataItemProviderCapabilities
Capabilities for data item providers.
ProjectCapability
Flags which control project capabilities.
QFlags< BabelFormatCapability > BabelFormatCapabilities
Babel GPS format capabilities.
QFlags< SymbolLayerFlag > SymbolLayerFlags
Symbol layer flags.
QFlags< RasterInterfaceCapability > RasterInterfaceCapabilities
Raster interface capabilities.
Q_ENUM(VectorProfileType)
AttributeActionType
Attribute action types.
TemporalNavigationMode
Temporal navigation modes.
ProcessingFieldParameterDataType
Processing field parameter data types.
StringStatistic
Available string statistics.
FieldDomainMergePolicy
Merge policy for field domains.
ZonalStatistic
Statistics to be calculated during a zonal statistics operation.
MessageLevel
Level for messages This will be used both for message log and message bar in application.
SqlKeywordCategory
SqlKeywordCategory enum represents the categories of the SQL keywords used by the SQL query editor.
QFlags< SnappingType > SnappingTypes
Snapping types.
static Q_DECL_DEPRECATED QString geoWkt()
WKT string that represents a geographic coord system.
GraduatedMethod
Methods for modifying symbols by range in a graduated symbol renderer.
QFlags< LabelLinePlacementFlag > LabelLinePlacementFlags
Line placement flags, which control how candidates are generated for a linear feature.
TiledSceneBoundingVolumeType
Tiled scene bounding volume types.
TextLayoutMode
Text layout modes.
PropertyType
Property types.
QFlags< RenderContextFlag > RenderContextFlags
Render context flags.
LayerFilter
Filter for layers.
Q_ENUM(ProviderStyleStorageCapability)
QFlags< SublayerFlag > SublayerFlags
Sublayer flags.
RasterRendererFlag
Flags which control behavior of raster renderers.
PythonEmbeddedMode
Authorisation to run Python Embedded in projects.
CrsType
Coordinate reference system types.
QFlags< GeosCreationFlag > GeosCreationFlags
Geos geometry creation behavior flags.
SensorThingsEntity
OGC SensorThings API entity types.
MeshEditingErrorType
Type of error that can occur during mesh frame editing.
FieldDomainSplitPolicy
Split policy for field domains.
ArcGisRestServiceType
Available ArcGIS REST service types.
UriCleaningFlag
Flags for cleaning layer URIs.
RasterFileWriterResult
Raster file export results.
AnnotationItemEditOperationResult
Results from an edit operation on an annotation item.
ProcessingPropertyAvailability
Property availability, used for QgsProcessingAlgorithm::VectorProperties in order to determine if pro...
MapRecenteringMode
Modes for recentering map canvases.
RasterRangeAccuracy
Describes the accuracy used to compute raster ranges (min/max values).
ActionStart
Enum to determine when an operation would begin.
PlaybackOperation
Media playback operations.
QFlags< SymbolLayerUserFlag > SymbolLayerUserFlags
Symbol layer user flags.
QFlags< TextRendererFlag > TextRendererFlags
QueryStorageBackend
Stored query storage backends.
ProviderStyleStorageCapability
The StorageCapability enum represents the style storage operations supported by the provider.
AvoidIntersectionsMode
Flags which control how intersections of pre-existing feature are handled when digitizing new feature...
MarkerShape
Marker shapes.
StacObjectType
Available types of stac objects.
LegendJsonRenderFlag
Legend JSON export flags.
BlendMode
Blending modes defining the available composition modes that can be used when painting.
RasterElevationMode
Raster layer elevation modes.
Capitalization
String capitalization options.
TemporalIntervalMatchMethod
Method to use when resolving a temporal range to a data provider layer or band.
PictureFormat
Picture formats.
QFlags< LabelPolygonPlacementFlag > LabelPolygonPlacementFlags
Polygon placement flags, which control how candidates are generated for a polygon feature.
LabelQuadrantPosition
Label quadrant positions.
QFlags< PlotToolFlag > PlotToolFlags
ScaleToTileZoomLevelMethod
Available methods for converting map scales to tile zoom levels.
SublayerQueryFlag
Flags which control how data providers will scan for sublayers in a dataset.
QFlags< VectorFileWriterCapability > VectorFileWriterCapabilities
Capabilities supported by a QgsVectorFileWriter object.
TextOrientation
Text orientations.
TemporalUnit
Temporal units.
QFlags< RasterRendererCapability > RasterRendererCapabilities
Raster renderer capabilities.
QFlags< SymbolPreviewFlag > SymbolPreviewFlags
Symbol preview flags.
UnplacedLabelVisibility
Unplaced label visibility.
CrsDefinitionFormat
CRS definition formats.
SpatialFilterType
Feature request spatial filter types.
VerticalAnchorPoint
Marker symbol vertical anchor points.
QFlags< LayoutRenderFlag > LayoutRenderFlags
Flags for controlling how a layout is rendered.
QFlags< ProcessingParameterTypeFlag > ProcessingParameterTypeFlags
Flags which dictate the behavior of Processing parameter types.
TileAvailability
Possible availability states for a tile within a tile matrix.
ProjectFlag
Flags which control the behavior of QgsProjects.
FeatureRendererFlag
Flags controlling behavior of vector feature renderers.
static Q_DECL_DEPRECATED QString geoProj4()
PROJ4 string that represents a geographic coord system.
BrowserItemType
Browser item types.
QFlags< FeatureRequestFlag > FeatureRequestFlags
Flags for controlling feature requests.
SettingsType
Types of settings entries.
QFlags< SettingsOption > SettingsOptions
RasterTemporalMode
Raster layer temporal modes.
RasterAttributeTableType
The RasterAttributeTableType enum represents the type of RAT.
LabelingFlag
Various flags that affect drawing and placement of labels.
GeometryType
The geometry types are used to group Qgis::WkbType in a coarse way.
RelationshipType
Relationship types.
ScriptLanguageCapability
Script language capabilities.
RasterInterfaceCapability
Raster interface capabilities.
JoinStyle
Join styles for buffers.
PointCloudDrawOrder
Pointcloud rendering order for 2d views.
QFlags< RasterBandStatistic > RasterBandStatistics
Statistics to be calculated for raster bands.
ProcessingAlgorithmDocumentationFlag
Flags describing algorithm behavior for documentation purposes.
TextCharacterVerticalAlignment
Text vertical alignment for characters.
FieldDuplicatePolicy
Duplicate policy for fields.
UserProfileSelectionPolicy
User profile selection policy.
QFlags< FileOperationFlag > FileOperationFlags
File operation flags.
Q_ENUM(ProfileExportType)
BrowserLayerType
Browser item layer types.
QFlags< ProcessingAlgorithmFlag > ProcessingAlgorithmFlags
Flags indicating how and when an algorithm operates and should be exposed to users.
AltitudeBinding
Altitude binding.
QFlags< DataProviderReadFlag > DataProviderReadFlags
Flags which control data provider construction.
Q_ENUM(ProcessingProviderFlag)
TiledSceneRendererFlag
Flags which control how tiled scene 2D renderers behave.
MapLayerActionTarget
Map layer action targets.
ShaderClassificationMethod
Color ramp shader classification methods.
ZonalStatisticResult
Zonal statistics result codes.
ScriptLanguage
Scripting languages.
QFlags< BrowserItemCapability > BrowserItemCapabilities
Browser item capabilities.
FeatureAvailability
Possible return value for QgsFeatureSource::hasFeatures() to determine if a source is empty.
TiledSceneProviderCapability
Tiled scene data provider capabilities.
LabelMultiLineAlignment
Text alignment for multi-line labels.
RasterBandStatistic
Available raster band statistics.
QFlags< VectorTileProviderCapability > VectorTileProviderCapabilities
Vector tile data provider capabilities.
AuthConfigurationStorageCapability
Authentication configuration storage capabilities.
PythonEmbeddedType
Type of Python Embedded in projects.
QFlags< ZonalStatistic > ZonalStatistics
Statistics to be calculated during a zonal statistics operation.
VectorDataProviderTemporalMode
Vector data provider temporal handling modes.
TextRenderFormat
Options for rendering text.
DocumentationBrowser
Documentation API browser.
DataType
Raster data types.
Q_ENUM(ProfileSurfaceSymbology)
QFlags< ViewSyncModeFlag > ViewSyncModeFlags
QFlags< SublayerQueryFlag > SublayerQueryFlags
Sublayer query flags.
SystemOfMeasurement
Systems of unit measurement.
RasterAttributeTableFieldUsage
The RasterAttributeTableFieldUsage enum represents the usage of a Raster Attribute Table field.
VerticalAxisInversion
Vertical axis inversion options for 3D views.
QFlags< CoordinateTransformationFlag > CoordinateTransformationFlags
Coordinate transformation flags.
RelationshipCapability
Relationship capabilities.
RasterBuildPyramidOption
Raster pyramid building options.
QFlags< VectorProviderCapability > VectorProviderCapabilities
Vector data provider capabilities.
NavigationMode
The navigation mode used by 3D cameras.
LinearReferencingPlacement
Defines how/where the labels should be placed in a linear referencing symbol layer.
TileChildrenAvailability
Possible availability states for a tile's children.
PointCloudZoomOutRenderBehavior
Point cloud zoom out options.
LayerType
Types of layers that can be added to a map.
QFlags< AnnotationItemFlag > AnnotationItemFlags
Annotation item flags.
LinearReferencingLabelSource
Defines what quantity to use for the labels shown in a linear referencing symbol layer.
RasterRangeExtent
Describes the extent used to compute raster ranges (min/max values).
QFlags< Statistic > Statistics
Statistics to be calculated for generic values.
PlotToolFlag
Flags that control the way the QgsPlotTools operate.
RenderUnit
Rendering size units.
static QString geographicCrsAuthId()
Geographic coordinate system auth:id string for a default geographic CRS (EPSG:4326).
CoordinateOrder
Order of coordinates.
SelectionFlag
Flags which control feature selection behavior.
QFlags< SettingsTreeNodeOption > SettingsTreeNodeOptions
EndCapStyle
End cap styles for buffers.
ScaleCalculationMethod
Scale calculation logic.
QFlags< TiledSceneRequestFlag > TiledSceneRequestFlags
Flags which control how tiled scene requests behave.
QFlags< MapLayerActionFlag > MapLayerActionFlags
Map layer action flags.
QFlags< MapLayerProperty > MapLayerProperties
Map layer properties.
QFlags< LoadStyleFlag > LoadStyleFlags
Flags for loading layer styles.
BabelCommandFlag
Babel command flags, which control how commands and arguments are generated for executing GPSBabel pr...
QFlags< LabelingFlag > LabelingFlags
Flags that affect drawing and placement of labels.
FieldDomainType
Types of field domain.
MapLayerRendererFlag
Flags which control how map layer renderers behave.
RenderContextFlag
Flags which affect rendering operations.
RasterPipeInterfaceRole
Raster pipe interface roles.
CoverageValidityResult
Coverage validity results.
DataProviderReadFlag
Flags which control data provider construction.
ScaleBarSegmentSizeMode
Modes for setting size for scale bar segments.
Aggregate
Available aggregates to calculate.
SymbolPreviewFlag
Flags for controlling how symbol preview images are generated.
AnnotationItemGuiFlag
Flags for controlling how an annotation item behaves in the GUI.
MapBoxGlStyleSourceType
Available MapBox GL style source types.
LayoutUnitType
Types of layout units.
VectorDataProviderAttributeEditCapability
Attribute editing capabilities which may be supported by vector data providers.
DashPatternLineEndingRule
Dash pattern line ending rules.
FieldMetadataProperty
Standard field metadata values.
TiledSceneRequestFlag
Flags which control how tiled scene requests behave.
RasterRendererCapability
Raster renderer capabilities.
VertexMarkerType
Editing vertex markers, used for showing vertices during a edit operation.
HistoryProviderBackend
History provider backends.
RasterExportType
Raster file export types.
SublayerPromptMode
Specifies how to handle layer sources with multiple sublayers.
TextVerticalAlignment
Text vertical alignment.
RelationshipCardinality
Relationship cardinality.
GradientType
Gradient types.
QFlags< ScriptLanguageCapability > ScriptLanguageCapabilities
Script language capabilities.
VectorProfileType
Types of elevation profiles to generate for vector sources.
GpsFeatureType
GPS feature types.
VectorLayerTypeFlag
Vector layer type flags.
MakeValidMethod
Algorithms to use when repairing invalid geometries.
RangeLimits
Describes how the limits of a range are handled.
QFlags< ProjectFlag > ProjectFlags
VectorTemporalLimitMode
Mode for the handling of the limits of the filtering timeframe for vector features.
QFlags< ProcessingParameterFlag > ProcessingParameterFlags
Flags which dictate the behavior of Processing parameters.
SqlLayerDefinitionCapability
SqlLayerDefinitionCapability enum lists the arguments supported by the provider when creating SQL que...
VectorEditResult
Specifies the result of a vector layer edit operation.
QFlags< VectorDataProviderAttributeEditCapability > VectorDataProviderAttributeEditCapabilities
Attribute editing capabilities which may be supported by vector data providers.
QFlags< ProcessingAlgorithmDocumentationFlag > ProcessingAlgorithmDocumentationFlags
Flags describing algorithm behavior for documentation purposes.
QFlags< RelationshipCapability > RelationshipCapabilities
Relationship capabilities.
QFlags< SymbolRenderHint > SymbolRenderHints
Symbol render hints.
VolumeUnit
Units of volume.
AttributeEditorType
Attribute editor types.
QFlags< LegendJsonRenderFlag > LegendJsonRenderFlags
QFlags< ProviderStyleStorageCapability > ProviderStyleStorageCapabilities
SymbolLayerUserFlag
User-specified flags controlling behavior of symbol layers.
InvalidGeometryCheck
Methods for handling of features with invalid geometries.
QFlags< SymbolFlag > SymbolFlags
Symbol flags.
QFlags< ProcessingFeatureSourceDefinitionFlag > ProcessingFeatureSourceDefinitionFlags
Flags which control behavior for a Processing feature source.
PointCloudAccessType
The access type of the data, local is for local files and remote for remote files (over HTTP).
ProfileExportType
Types of export for elevation profiles.
MeshElevationMode
Mesh layer elevation modes.
ProjectFileFormat
Flags which control project read behavior.
SnappingMode
SnappingMode defines on which layer the snapping is performed.
RasterColorInterpretation
Raster color interpretation.
ProfileSurfaceSymbology
Surface symbology type for elevation profile plots.
LabelPlacementEngineVersion
Labeling placement engine version.
Q_ENUM(ProcessingAlgorithmFlag)
ColorModel
Color model types.
RendererUsage
Usage of the renderer.
SettingsTreeNodeOption
Options for named list nodes.
BabelFormatCapability
Babel GPS format capabilities.
PostgresRelKind
Postgres database relkind options.
SegmentCalculationMethod
brief Method used to calculate the number of segments for circle approximation
GpsConnectionType
GPS connection types.
Q_ENUM(InputControllerType)
QFlags< DatabaseProviderConnectionCapability2 > DatabaseProviderConnectionCapabilities2
MouseHandlesAction
Action to be performed by the mouse handles.
ProcessingFeatureSourceDefinitionFlag
Flags which control behavior for a Processing feature source.
QFlags< TextComponent > TextComponents
Text components.
LoadStyleFlag
Flags for loading layer styles.
BetweenLineConstraint
Between line constraints which can be enabled.
QFlags< VectorTileProviderFlag > VectorTileProviderFlags
Vector tile data provider flags.
MetadataDateType
Date types for metadata.
QFlags< RasterTemporalCapabilityFlag > RasterTemporalCapabilityFlags
Flags for raster layer temporal capabilities.
ProcessingFeatureSourceFlag
Flags which control how QgsProcessingFeatureSource fetches features.
RasterIdentifyFormat
Raster identify formats.
TextHorizontalAlignment
Text horizontal alignment.
SymbolFlag
Flags controlling behavior of symbols.
LineExtensionSide
Designates whether the line extension constraint is currently soft locked with the previous or next v...
HttpMethod
Different methods of HTTP requests.
WkbType
The WKB type describes the number of dimensions a geometry has.
QFlags< SldExportOption > SldExportOptions
SymbolCoordinateReference
Symbol coordinate reference modes.
QFlags< ProcessingProviderFlag > ProcessingProviderFlags
Flags indicating how and when an processing provider operates and should be exposed to users.
TileRefinementProcess
Tiled scene tile refinement processes.
QFlags< DateTimeStatistic > DateTimeStatistics
Statistics to be calculated for date/time values.
SelectionRenderingMode
Specifies how a selection should be rendered.
InputControllerType
Input controller types.
TextRendererFlag
Flags which control the behavior of rendering text.
SelectGeometryRelationship
Geometry relationship test to apply for selecting features.
CrsAxisDirection
Coordinate reference system axis directions.
ProcessingModelChildParameterSource
Processing model child parameter sources.
QFlags< MarkerLinePlacement > MarkerLinePlacements
QFlags< MapCanvasFlag > MapCanvasFlags
Flags controlling behavior of map canvases.
CrsWktVariant
Coordinate reference system WKT formatting variants.
QFlags< TiledSceneRendererFlag > TiledSceneRendererFlags
Flags which control how tiled scene 2D renderers behave.
DocumentationApi
Documentation API.
AutoRefreshMode
Map layer automatic refresh modes.
AnnotationPlacementMode
Annotation item placement modes.
ProcessingAlgorithmFlag
Flags indicating how and when an algorithm operates and should be exposed to users.
SceneMode
The 3D scene mode used in 3D map views.
FieldConfigurationFlag
Configuration flags for fields These flags are meant to be user-configurable and are not describing a...
SettingsOrigin
The setting origin describes where a setting is stored.
HorizontalAnchorPoint
Marker symbol horizontal anchor points.
ProcessingParameterFlag
Flags which dictate the behavior of Processing parameters.
LabelOverlapHandling
Label overlap handling.
FeatureSymbologyExport
Options for exporting features considering their symbology.
QFlags< LayerFilter > LayerFilters
ProcessingDateTimeParameterDataType
Processing date time parameter data types.
CoordinateTransformationFlag
Flags which adjust the coordinate transformations behave.
TextComponent
Text components.
DateTimeStatistic
Available date/time statistics.
AnimationState
Animation states.
TransformDirection
Indicates the direction (forward or inverse) of a transform.
LightSourceType
Light source types for 3D scenes.
QFlags< ProcessingFeatureSourceFlag > ProcessingFeatureSourceFlags
Flags which control how QgsProcessingFeatureSource fetches features.
QFlags< HistoryProviderBackend > HistoryProviderBackends
LabelPredefinedPointPosition
Positions for labels when using the Qgis::LabelPlacement::OrderedPositionsAroundPoint placement mode.
QFlags< FieldConfigurationFlag > FieldConfigurationFlags
Configuration flags for fields These flags are meant to be user-configurable and are not describing a...
UpsideDownLabelHandling
Handling techniques for upside down labels.
DeviceConnectionStatus
GPS connection status.
ProcessingNumberParameterType
Processing numeric parameter data types.
MapSettingsFlag
Flags which adjust the way maps are rendered.
QFlags< SqlLayerDefinitionCapability > SqlLayerDefinitionCapabilities
SQL layer definition capabilities.
ProcessingLogLevel
Logging level for algorithms to use when pushing feedback messages.
SelectBehavior
Specifies how a selection should be applied.
LayoutRenderFlag
Flags for controlling how a layout is rendered.
Utility class that encapsulates an action based on vector attributes.
Utility class for calculating aggregates for a field (or expression) over the features from a vector ...
Utility functions for working with ArcGIS REST services.
An abstract base class for any elements of a drag and drop form.
A ramp shader will color a raster pixel based on a list of values ranges in a ramp.
Represents a coordinate reference system (CRS).
Abstract base class for curved geometry type.
Base class for all items in the model.
Abstract base class for spatial data provider implementations.
Calculator for summary statistics and aggregates for a list of datetimes.
Wraps a request for features to a vector layer (or directly its vector data provider).
An interface for objects which provide features via a getFeatures method.
Container of fields for a vector layer.
A geometry is the spatial representation of a feature.
A fill symbol layer which draws a smooth color gradient over a polygon.
A vector feature renderer which uses numeric attributes to classify features into different ranges.
Stores global configuration for labeling engine.
Contains constants and enums relating to labeling.
A browser item that represents a layer that can be opened with one of the providers.
A layout item subclass that displays SVG files or raster format images (jpg, png, ....
Stores information relating to the current rendering settings for a layout.
Contains detailed styling information relating to how a layout legend should be rendered.
A proxy model which provides an easy to use model to display the list of layers in widgets.
Base class for all map layer types.
Contains configuration for rendering maps.
Abstract base class for marker symbol layers.
Registry for temporary fetched files.
Contains miscellaneous painting utility functions.
Contains settings for how a map layer will be labeled.
Abstract base class for 2d point cloud renderers.
Abstract base class for processing algorithms.
Contains information about the context in which a processing algorithm is executed.
Encapsulates settings relating to a feature source input to a processing algorithm.
QgsFeatureSource subclass which proxies methods to an underlying QgsFeatureSource,...
A datetime (or pure date or time) parameter for processing algorithms.
Base class for the definition of processing parameters.
A vector layer or feature source field parameter for processing algorithms.
An input file or folder parameter for processing algorithms.
A numeric parameter for processing algorithms.
Makes metadata of processing parameters available.
Abstract base class for processing providers.
Contains enumerations and other constants for use in processing algorithms and parameters.
Encapsulates a QGIS project, including sets of map layers and their styles, layouts,...
A store for object properties.
A fill symbol layer which places markers at random locations within polygons.
The RasterBandStats struct is a container for statistics about a single raster band.
Implementation of data provider temporal properties for QgsRasterDataProviders.
Base class for raster data providers.
The raster file writer which allows you to save a raster to a new file.
Base class for processing filters like renderers, reprojector, resampler etc.
Implementation of map layer temporal properties for raster layers.
Represents a raster layer.
Describes the origin of minimum and maximum values in a raster.
Contains a pipeline of raster interfaces for sequential raster processing.
Represents a relationship between two vector layers.
Contains information about the context of a rendering operation.
Stores the appearance and layout settings for scalebar drawing with QgsScaleBarRenderer.
Represents a settings entry and provides methods for reading and writing settings values.
RAII signal blocking class.
Object * operator->()
Returns pointer to blocked QObject.
QgsSignalBlocker(Object *object)
Constructor for QgsSignalBlocker.
Abstract base class for simple marker symbol layers.
Stores configuration of snapping settings for the project.
Calculator for summary statistics for a list of doubles.
Calculator for summary statistics and aggregates for a list of strings.
Utility functions for working with strings.
Contains utility functions for working with symbols and symbol layers.
Abstract base class for all rendered symbols.
Base class for templated line symbols, e.g.
Implements a temporal controller based on a frame by frame navigation and animation.
Container for all settings relating to text rendering.
Handles rendering text using rich formatting options, including drop shadows, buffers and background ...
Provides calculations for tolerance values in map units.
Helper functions for various unit types.
Implementation of data provider temporal properties for QgsVectorDataProviders.
Base class for vector data providers.
A convenience class for writing vector layers to disk based formats (e.g.
A convenience class for exporting vector layers to a destination data provider.
Implementation of map layer temporal properties for vector layers.
Represents a vector layer which manages a vector based dataset.
Contains settings for simplifying geometries fetched from a vector layer.
Handles storage of information regarding WKB types and their properties.
FeatureCountState
Enumeration of feature count states.
@ Points
Point based rendering, requires point data.
As part of the API refactoring and improvements which landed in QGIS
Q_DECL_DEPRECATED const long GEOCRS_ID
Numeric ID for the EPSG:4326 geographic coordinate system in QGIS internal srs database.
Q_DECL_DEPRECATED CORE_EXPORT QString qgsVsiPrefix(const QString &path)
Returns a the vsi prefix which corresponds to a file path, or an empty string if the path is not asso...
CORE_EXPORT uint qHash(const QVariant &variant)
Hash for QVariant.
bool operator>(const QVariant &v1, const QVariant &v2)
Compares two QVariant values and returns whether the first is greater than the second.
CORE_EXPORT bool qgsVariantEqual(const QVariant &lhs, const QVariant &rhs)
Compares two QVariant values and returns whether they are equal, two NULL values are always treated a...
Q_DECL_DEPRECATED const long GEOSRID
Numeric ID for the EPSG:4326 geographic coordinate system.
T qgsEnumKeyToValue(const QString &key, const T &defaultValue, bool tryValueAsKey=true, bool *returnOk=nullptr)
Returns the value corresponding to the given key of an enum.
QString qgsDoubleToString(double a, int precision=17)
Returns a string representation of a double.
QString qgsMapJoinValues(const QMap< Key, Value > &map, const QString &separator)
Joins all the map values into a single string with each element separated by the given separator.
QString qgsEnumValueToKey(const T &value, bool *returnOk=nullptr)
Returns the value for the given key of an enum.
QString qgsFlagValueToKeys(const T &value, bool *returnOk=nullptr)
Returns the value for the given keys of a flag.
QString qgsMapJoinKeys(const QMap< Key, Value > &map, const QString &separator)
Joins all the map keys into a single string with each element separated by the given separator.
T qgsFlagKeysToValue(const QString &keys, const T &defaultValue, bool tryValueAsKey=true, bool *returnOk=nullptr)
Returns the value corresponding to the given keys of a flag.
CORE_EXPORT bool qgsVariantGreaterThan(const QVariant &lhs, const QVariant &rhs)
Compares two QVariant values and returns whether the first is greater than the second.
unsigned long long qgssize
Qgssize is used instead of size_t, because size_t is stdlib type, unknown by SIP, and it would be har...
const QMap< T, QString > qgsEnumMap()
Returns a map of all enum entries.
bool qgsFloatNear(float a, float b, float epsilon=4 *FLT_EPSILON)
Compare two floats (but allow some difference)
CORE_EXPORT int qgsVariantCompare(const QVariant &lhs, const QVariant &rhs)
Compares two QVariant values.
QString qgsSetJoin(const QSet< T > &set, const QString &separator)
Joins all the set values into a single string with each element separated by the given separator.
CORE_EXPORT double qgsPermissiveToDouble(QString string, bool &ok)
Converts a string to a double in a permissive way, e.g., allowing for incorrect numbers of digits bet...
const QList< T > qgsEnumList()
Returns a list all enum entries.
double qgsRound(double number, int places)
Returns a double number, rounded (as close as possible) to the specified number of places.
bool qgsDoubleNear(double a, double b, double epsilon=4 *std::numeric_limits< double >::epsilon())
Compare two doubles (but allow some difference)
bool qgsNanCompatibleEquals(double a, double b)
Compare two doubles, treating nan values as equal.
QgsSignalBlocker< Object > whileBlocking(Object *object)
Temporarily blocks signals from a QObject while calling a single method from the object.
void CORE_EXPORT * qgsMalloc(size_t size)
Allocates size bytes and returns a pointer to the allocated memory.
QMap< QString, QString > QgsStringMap
Q_DECL_DEPRECATED const long GEO_EPSG_CRS_ID
Numeric ID for the EPSG:4326 geographic coordinate system.
bool qgsDoubleNearSig(double a, double b, int significantDigits=10)
Compare two doubles using specified number of significant digits.
void CORE_EXPORT qgsFree(void *ptr)
Frees the memory space pointed to by ptr.
bool qgsNumberNear(T a, T b, T epsilon=std::numeric_limits< T >::epsilon() *4)
Compare two numbers of type T (but allow some difference)
CORE_EXPORT qlonglong qgsPermissiveToLongLong(QString string, bool &ok)
Converts a string to an qlonglong in a permissive way, e.g., allowing for incorrect numbers of digits...
CORE_EXPORT int qgsPermissiveToInt(QString string, bool &ok)
Converts a string to an integer in a permissive way, e.g., allowing for incorrect numbers of digits b...
CORE_EXPORT bool qgsVariantLessThan(const QVariant &lhs, const QVariant &rhs)
Compares two QVariant values and returns whether the first is less than the second.
#define QHASH_FOR_CLASS_ENUM(T)
bool operator<(const QVariant &v1, const QVariant &v2)
Compares two QVariant values and returns whether the first is less than the second.
#define SIP_ENUM_BASETYPE(type)
#define SIP_MONKEYPATCH_SCOPEENUM_UNNEST(OUTSIDE_CLASS, FORMERNAME)
#define SIP_MONKEYPATCH_FLAGS_UNNEST(OUTSIDE_CLASS, FORMERNAME)
#define SIP_MONKEYPATCH_SCOPEENUM
#define SIP_MONKEYPATCH_COMPAT_NAME(FORMERNAME)
Q_DECLARE_METATYPE(QgsDatabaseQueryLogEntry)
Q_DECLARE_OPERATORS_FOR_FLAGS(QgsTextRendererUtils::CurvedTextFlags)
Utility class for identifying a unique vertex within a geometry.