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); \
56 Q_CLASSINFO(
"RegisterEnumClassesUnscoped",
"false" )
65 static QString version();
72 static int versionInt();
79 static QString releaseName();
89 static QString devVersion();
106 Q_ENUM( MessageLevel )
139 HasGeometry = PointLayer | LineLayer | PolygonLayer,
140 VectorLayer = NoGeometry | HasGeometry,
144 VectorTileLayer = 256,
145 PointCloudLayer = 512,
146 AnnotationLayer = 1024,
147 TiledSceneLayer = 2048,
148 All = RasterLayer | VectorLayer | PluginLayer | MeshLayer | VectorTileLayer | PointCloudLayer | AnnotationLayer | TiledSceneLayer,
149 SpatialLayer = RasterLayer | HasGeometry | PluginLayer | MeshLayer | VectorTileLayer | PointCloudLayer | AnnotationLayer | TiledSceneLayer
161 IgnoreMissingStyleErrors = 1 << 0,
163 Q_ENUM( LoadStyleFlag )
210 GeometryCollection = 7,
222 MultiLineStringZ = 1005,
223 MultiPolygonZ = 1006,
224 GeometryCollectionZ = 1007,
225 CircularStringZ = 1008,
226 CompoundCurveZ = 1009,
227 CurvePolygonZ = 1010,
229 MultiSurfaceZ = 1012,
235 MultiLineStringM = 2005,
236 MultiPolygonM = 2006,
237 GeometryCollectionM = 2007,
238 CircularStringM = 2008,
239 CompoundCurveM = 2009,
240 CurvePolygonM = 2010,
242 MultiSurfaceM = 2012,
247 MultiLineStringZM = 3005,
248 MultiPolygonZM = 3006,
249 GeometryCollectionZM = 3007,
250 CircularStringZM = 3008,
251 CompoundCurveZM = 3009,
252 CurvePolygonZM = 3010,
254 MultiSurfaceZM = 3012,
256 Point25D = 0x80000001,
281 Q_ENUM( GeometryType )
303 ARGB32_Premultiplied = 13
319 Q_ENUM( CaptureTechnique )
330 Q_ENUM( VectorLayerTypeFlag )
347 Q_ENUM( PythonMacroMode )
359 SkipFeatureCount = 1 << 1,
361 SkipGetExtent = 1 << 3,
362 SkipFullScan = 1 << 4,
363 ForceReadOnly = 1 << 5,
364 SkipCredentialsRequest = 1 << 6,
365 ParallelThreadLoading = 1 << 7,
367 Q_ENUM( DataProviderReadFlag )
392 DeleteFeatures = 1 << 1,
393 ChangeAttributeValues = 1 << 2,
394 AddAttributes = 1 << 3,
395 DeleteAttributes = 1 << 4,
396 CreateSpatialIndex = 1 << 6,
398 ChangeGeometries = 1 << 8,
399 SelectEncoding = 1 << 13,
400 CreateAttributeIndex = 1 << 12,
401 SimplifyGeometries = 1 << 14,
402 SimplifyGeometriesWithTopologicalValidation = 1 << 15,
403 TransactionSupport = 1 << 16,
404 CircularGeometries = 1 << 17,
405 ChangeFeatures = 1 << 18,
406 RenameAttributes = 1 << 19,
407 FastTruncate = 1 << 20,
408 ReadLayerMetadata = 1 << 21,
409 WriteLayerMetadata = 1 << 22,
410 CancelSupport = 1 << 23,
411 CreateRenderer = 1 << 24,
412 CreateLabeling = 1 << 25,
413 ReloadData = 1 << 26,
414 FeatureSymbology = 1 << 27,
415 EditingCapabilities = AddFeatures | DeleteFeatures | ChangeAttributeValues | ChangeGeometries | AddAttributes | DeleteAttributes | RenameAttributes,
417 Q_ENUM( VectorProviderCapability )
439 Q_ENUM( FeatureCountState )
453 Q_ENUM( SpatialIndexPresence )
468 NoFeaturesAvailable = 0,
470 FeaturesMaybeAvailable
472 Q_ENUM( FeatureAvailability )
482 EditComment = 1 << 1,
485 Q_ENUM( VectorDataProviderAttributeEditCapability )
518 Q_ENUM( ScaleMethod )
537 Q_ENUM( SettingsType )
549 Q_ENUM( SettingsTreeNodeType )
557 NamedListSelectedItemSetting = 1 << 0,
560 Q_ENUM( SettingsTreeNodeOption )
578 Q_ENUM( PropertyType )
591 Q_ENUM( SldExportOption )
602 NoVendorExtension = 0,
603 GeoServerVendorExtension = 1 << 1,
604 DeegreeVendorExtension = 1 << 2,
606 Q_ENUM( SldExportVendorExtension )
615 SaveFormerValue = 1 << 1,
616 SaveEnumFlagAsInt = 1 << 2,
618 Q_ENUM( SettingsOption )
630 AdvancedConfiguration = 3,
632 Q_ENUM( SnappingMode )
648 Q_ENUM( SnappingType )
660 DynamicRotation = 1 << 1,
661 IsSymbolLayerSubSymbol = 1 << 2,
663 Q_ENUM( SymbolRenderHint )
678 Q_ENUM( SymbolRotationMode )
687 RendererShouldUseSymbolLevels = 1 << 0,
701 FlagIncludeCrosshairsForMarkerSymbols = 1 << 0,
703 Q_ENUM( SymbolPreviewFlag )
719 DisableFeatureClipping = 1 << 0,
720 CanCalculateMaskGeometryPerFeature = 1 << 1,
722 Q_ENUM( SymbolLayerFlag )
738 DisableSelectionRecoloring = 1 << 0,
740 Q_ENUM( SymbolLayerUserFlag )
767 Q_ENUM( BrowserItemType )
780 Q_ENUM( BrowserItemState )
796 ItemRepresentsFile = 1 << 6,
797 RefreshChildrenWhenItemIsRefreshed = 1 << 7,
800 Q_ENUM( BrowserItemCapability )
820 Q_ENUM( DataItemProviderCapability )
854 Q_ENUM( BrowserLayerType )
867 Q_ENUM( BrowserDirectoryMonitoring )
900 Q_ENUM( VectorExportResult )
908 FieldAliases = 1 << 0,
909 FieldComments = 1 << 2,
911 Q_ENUM( VectorFileWriterCapability )
926 SubsetStringFilter = 1 << 1,
927 GeometryColumn = 1 << 2,
928 PrimaryKeys = 1 << 3,
929 UnstableFeatureIds = 1 << 4
931 Q_ENUM( SqlLayerDefinitionCapability )
953 Q_ENUM( SqlKeywordCategory )
981 Q_ENUM( ActionStart )
993 Q_ENUM( UnplacedLabelVisibility )
1003 AllowOverlapIfRequired,
1004 AllowOverlapAtNoCost,
1006 Q_ENUM( LabelOverlapHandling )
1016 PreferPositionOrdering,
1018 Q_ENUM( LabelPrioritization )
1035 OrderedPositionsAroundPoint,
1039 Q_ENUM( LabelPlacement )
1060 BottomSlightlyRight,
1064 Q_ENUM( LabelPredefinedPointPosition )
1079 Q_ENUM( LabelOffsetType )
1100 Q_ENUM( LabelQuadrantPosition )
1115 Q_ENUM( LabelLinePlacementFlag )
1135 AllowPlacementOutsideOfPolygon = 1 << 0,
1136 AllowPlacementInsideOfPolygon = 1 << 1,
1138 Q_ENUM( LabelPolygonPlacementFlag )
1162 Q_ENUM( UpsideDownLabelHandling )
1179 Q_ENUM( LabelMultiLineAlignment )
1197 Q_ENUM( FileFilterType )
1207 ResolveGeometryType = 1 << 1,
1208 CountFeatures = 1 << 2,
1209 IncludeSystemTables = 1 << 3,
1223 SystemTable = 1 << 0,
1243 Q_ENUM( ShaderInterpolationMethod )
1258 Q_ENUM( ShaderClassificationMethod )
1276 Q_ENUM( RasterPipeInterfaceRole )
1289 Q_ENUM( RasterResamplingStage )
1298 InternalLayerOpacityHandling = 1 << 0,
1299 UseNoDataForOutOfRangePixels = 1 << 1,
1319 UsesMultipleBands = 1 << 0,
1321 Q_ENUM( RasterRendererCapability )
1358 Q_ENUM( RasterAttributeTableFieldUsage )
1370 Q_ENUM( RasterAttributeTableType )
1383 Q_ENUM( RasterExportType )
1394 SourceProviderError = 1,
1396 CreateDatasourceError = 3,
1401 Q_ENUM( RasterFileWriterResult )
1412 TooManyVerticesInFace,
1418 Q_ENUM( MeshEditingErrorType )
1430 Q_ENUM( FilePathType )
1440 AskExcludingRasterBands,
1444 Q_ENUM( SublayerPromptMode )
1461 Q_ENUM( FieldOrigin )
1473 NotSearchable = 1 << 1,
1474 HideFromWms = 1 << 2,
1475 HideFromWfs = 1 << 3,
1477 Q_ENUM( FieldConfigurationFlag )
1496 GeometryCrs = 0x1000,
1497 GeometryWkbType = 0x1001,
1498 CustomProperty = 0x100000,
1500 Q_ENUM( FieldMetadataProperty )
1513 Q_ENUM( SelectionRenderingMode )
1525 RemoveFromSelection,
1527 Q_ENUM( SelectBehavior )
1539 Q_ENUM( SelectGeometryRelationship )
1548 SingleFeatureSelection = 1 << 0,
1549 ToggleSelection = 1 << 1,
1572 FetchFeatureFailed = 3,
1575 Q_ENUM( VectorEditResult )
1584 SemiTransparentCircle,
1588 Q_ENUM( VertexMarkerType )
1602 Q_ENUM( ContentStatus )
1616 Q_ENUM( GpsConnectionType )
1629 Q_ENUM( DeviceConnectionStatus )
1684 Q_ENUM( GpsQualityIndicator )
1709 GroundSpeed = 1 << 2,
1711 TotalTrackLength = 1 << 4,
1712 TrackDistanceFromStart = 1 << 5,
1716 HorizontalAccuracy = 1 << 9,
1717 VerticalAccuracy = 1 << 10,
1718 HvAccuracy = 1 << 11,
1719 SatellitesUsed = 1 << 12,
1720 Timestamp = 1 << 13,
1721 TrackStartTime = 1 << 14,
1722 TrackEndTime = 1 << 15,
1723 TrackDistanceSinceLastPoint = 1 << 16,
1724 TrackTimeSinceLastPoint = 1 << 17,
1725 GeoidalSeparation = 1 << 18,
1726 EllipsoidAltitude = 1 << 19,
1764 QuoteFilePaths = 1 << 0,
1782 Q_ENUM( GpsFeatureType )
1794 NothingHappened = 1000,
1795 InvalidBaseGeometry,
1796 InvalidInputGeometryType,
1798 SelectionIsGreaterThanOne,
1799 GeometryEngineError,
1802 AddPartSelectedGeometryNotFound,
1803 AddPartNotMultiGeometry,
1807 AddRingCrossesExistingRings,
1808 AddRingNotInExistingFeature,
1810 SplitCannotSplitPoint,
1811 GeometryTypeHasChanged,
1813 Q_ENUM( GeometryOperationResult )
1838 Q_ENUM( GeometryValidationEngine )
1850 Q_ENUM( BufferSide )
1863 Q_ENUM( EndCapStyle )
1889 Q_ENUM( CoverageValidityResult )
1901 Q_ENUM( MakeValidMethod )
1914 SubsetOfAttributes = 2,
1916 IgnoreStaticNodesDuringExpressionCompilation = 8,
1917 EmbeddedSymbols = 16,
1919 Q_ENUM( FeatureRequestFlag )
1945 Q_ENUM( FeatureRequestFilterType )
1960 Q_ENUM( InvalidGeometryCheck )
1973 Q_ENUM( SpatialFilterType )
1982 IncludeMetadataFile = 1 << 0,
1983 IncludeStyleFile = 1 << 1,
1997 UsersCannotToggleEditing = 1 << 0,
1998 IsBasemapLayer = 1 << 1,
2016 Q_ENUM( AutoRefreshMode )
2025 IsBasemapSource = 1 << 1,
2026 FastExtent2D = 1 << 2,
2027 FastExtent3D = 1 << 3,
2109 Q_ENUM( CrsAxisDirection )
2122 Q_ENUM( CoordinateOrder )
2137 Q_ENUM( CrsIdentifierType )
2158 Q_ENUM( CrsWktVariant )
2180 ScaleDependentBoundingBox = 1 << 0,
2194 FlagNoCreationTools = 1 << 0,
2210 Q_ENUM( AnnotationItemNodeType )
2223 Q_ENUM( AnnotationItemEditOperationResult )
2239 Q_ENUM( TemporalNavigationMode )
2254 Q_ENUM( AnimationState )
2271 Q_ENUM( PlaybackOperation )
2287 Q_ENUM( VectorTemporalMode )
2296 IncludeBeginExcludeEnd = 0,
2297 IncludeBeginIncludeEnd,
2299 Q_ENUM( VectorTemporalLimitMode )
2310 StoresFeatureDateTimeStartAndEndInSeparateFields
SIP_MONKEYPATCH_COMPAT_NAME( ProviderStoresFeatureDateTimeStartAndEndInSeparateFields ),
2312 Q_ENUM( VectorDataProviderTemporalMode )
2324 FixedRangePerBand = 3,
2325 RepresentsTemporalValues = 4,
2327 Q_ENUM( RasterTemporalMode )
2336 MatchUsingWholeRange,
2337 MatchExactUsingStartOfRange,
2338 MatchExactUsingEndOfRange,
2339 FindClosestMatchToStartOfRange,
2340 FindClosestMatchToEndOfRange
2342 Q_ENUM( TemporalIntervalMatchMethod )
2351 RequestedTimesMustExactlyMatchAllAvailableTemporalRanges = 1 << 0,
2353 Q_ENUM( RasterTemporalCapabilityFlag )
2373 Q_ENUM( TransformDirection )
2382 BallparkTransformsAreAppropriate = 1 << 0,
2383 IgnoreImpossibleTransformations = 1 << 1,
2385 Q_ENUM( CoordinateTransformationFlag )
2402 Antialiasing = 0x01,
2403 DrawEditingInfo = 0x02,
2404 ForceVectorOutput = 0x04,
2405 UseAdvancedEffects = 0x08,
2406 DrawLabeling = 0x10,
2407 UseRenderingOptimization = 0x20,
2408 DrawSelection = 0x40,
2409 DrawSymbolBounds = 0x80,
2410 RenderMapTile = 0x100,
2411 RenderPartialOutput = 0x200,
2412 RenderPreviewJob = 0x400,
2413 RenderBlocking = 0x800,
2414 LosslessImageRendering = 0x1000,
2415 Render3DMap = 0x2000,
2416 HighQualityImageTransforms = 0x4000,
2417 SkipSymbolRendering = 0x8000,
2418 ForceRasterMasks = 0x10000,
2419 RecordProfile = 0x20000,
2420 AlwaysUseGlobalMasks = 0x40000,
2434 DrawEditingInfo = 0x01,
2435 ForceVectorOutput = 0x02,
2436 UseAdvancedEffects = 0x04,
2437 UseRenderingOptimization = 0x08,
2438 DrawSelection = 0x10,
2439 DrawSymbolBounds = 0x20,
2440 RenderMapTile = 0x40,
2441 Antialiasing = 0x80,
2442 RenderPartialOutput = 0x100,
2443 RenderPreviewJob = 0x200,
2444 RenderBlocking = 0x400,
2445 RenderSymbolPreview = 0x800,
2446 LosslessImageRendering = 0x1000,
2447 ApplyScalingWorkaroundForTextRendering = 0x2000,
2448 Render3DMap = 0x4000,
2449 ApplyClipAfterReprojection = 0x8000,
2450 RenderingSubSymbol = 0x10000,
2451 HighQualityImageTransforms = 0x20000,
2452 SkipSymbolRendering = 0x40000,
2453 RecordProfile = 0x80000,
2454 AlwaysUseGlobalMasks = 0x100000,
2468 RenderPartialOutputs = 1 << 0,
2469 RenderPartialOutputOverPreviousCachedImage = 1 << 1,
2471 Q_ENUM( MapLayerRendererFlag )
2493 Q_ENUM( TextRenderFormat )
2504 UseAllLabels = 1 << 1,
2505 UsePartialCandidates = 1 << 2,
2507 RenderOutlineLabels = 1 << 3,
2508 DrawLabelRectOnly = 1 << 4,
2509 DrawCandidates = 1 << 5,
2510 DrawUnplacedLabels = 1 << 6,
2511 CollectUnplacedLabels = 1 << 7,
2512 DrawLabelMetrics = 1 << 8,
2514 Q_ENUM( LabelingFlag )
2538 Q_ENUM( LabelPlacementEngineVersion )
2553 Q_ENUM( TextOrientation )
2567 RectangleCapHeightBased,
2568 RectangleAscentBased,
2570 Q_ENUM( TextLayoutMode )
2586 Q_ENUM( TextComponent )
2602 Q_ENUM( TextHorizontalAlignment )
2620 Q_ENUM( TextVerticalAlignment )
2636 Q_ENUM( TextCharacterVerticalAlignment )
2650 SnappedToGridGlobal = 3,
2652 Q_ENUM( VectorSimplificationAlgorithm )
2663 NoSimplification = 0,
2664 GeometrySimplification = 1,
2665 AntialiasingSimplification = 2,
2666 FullSimplification = 3,
2668 Q_ENUM( VectorRenderingSimplificationFlag )
2692 Q_ENUM( RenderSubcomponentProperty )
2703 Q_ENUM( VertexType )
2719 EquilateralTriangle,
2752 Q_ENUM( MarkerShape )
2765 LastVertex = 1 << 2,
2766 FirstVertex = 1 << 3,
2767 CentralPoint = 1 << 4,
2768 CurvePoint = 1 << 5,
2769 SegmentCenter = 1 << 6,
2770 InnerVertices = 1 << 7,
2772 Q_ENUM( MarkerLinePlacement )
2788 Q_ENUM( GradientColorSource )
2803 Q_ENUM( GradientType )
2817 Q_ENUM( SymbolCoordinateReference )
2833 Q_ENUM( GradientSpread )
2847 Q_ENUM( PointCountMethod )
2861 Q_ENUM( MarkerClipMode )
2874 Q_ENUM( LineClipMode )
2889 Q_ENUM( DashPatternLineEndingRule )
2898 ScaleBothDashAndGap,
2902 Q_ENUM( DashPatternSizeAdjustment )
2916 Q_ENUM( GraduatedMethod )
2931 Q_ENUM( PlotAxisSuffixPlacement )
2957 Q_ENUM( TilePixelRatio )
2973 ForceFirstLetterToCapital = 4,
2976 UpperCamelCase = 1005,
2977 AllSmallCaps = 1006,
2979 Q_ENUM( Capitalization )
2990 Q_ENUM( TextRendererFlag )
3017 Q_ENUM( AngularDirection )
3030 Q_ENUM( RendererUsage )
3039 Sync3DTo2D = 1 << 0,
3040 Sync2DTo3D = 1 << 1,
3042 Q_ENUM( ViewSyncModeFlag )
3053 WhenOutsideVisibleExtent,
3056 Q_ENUM( MapRecenteringMode )
3065 LocalProfile = 1 << 0,
3068 Q_ENUM( HistoryProviderBackend )
3095 Q_ENUM( ProcessingSourceType )
3166 RegeneratesPrimaryKey = 1 << 0,
3167 RegeneratesPrimaryKeyInSomeScenarios = 1 << 1,
3169 Q_ENUM( ProcessingAlgorithmDocumentationFlag )
3192 Q_ENUM( ProcessingPropertyAvailability )
3207 Q_ENUM( ProcessingLogLevel )
3221 Q_ENUM( ProcessingFeatureSourceDefinitionFlag )
3244 Q_ENUM( ProcessingFeatureSourceFlag )
3270 Q_ENUM( ProcessingParameterTypeFlag )
3299 Q_ENUM( ProcessingParameterFlag )
3323 Q_ENUM( ProcessingFileParameterBehavior )
3337 Q_ENUM( ProcessingNumberParameterType )
3355 Q_ENUM( ProcessingFieldParameterDataType )
3370 Q_ENUM( ProcessingDateTimeParameterDataType )
3386 Q_ENUM( ProcessingModelChildParameterSource )
3399 Q_ENUM( ProcessingModelChildAlgorithmExecutionStatus )
3414 Q_ENUM( ProcessingTinInputLayerType )
3426 Q_ENUM( CrsDefinitionFormat )
3443 Q_ENUM( FieldDomainSplitPolicy )
3459 Q_ENUM( FieldDomainMergePolicy )
3474 Q_ENUM( FieldDuplicatePolicy )
3487 Q_ENUM( FieldDomainType )
3497 AutomaticGroups = 1,
3500 Q_ENUM( TransactionMode )
3513 Q_ENUM( AltitudeClamping )
3525 Q_ENUM( AltitudeBinding )
3535 IncludeLowerExcludeUpper,
3536 ExcludeLowerIncludeUpper,
3539 Q_ENUM( RangeLimits )
3548 FixedElevationRange = 0,
3549 RepresentsElevationSurface = 1,
3550 FixedRangePerBand = 2,
3551 DynamicRangePerBand = 3,
3553 Q_ENUM( RasterElevationMode )
3562 FixedElevationRange = 0,
3564 FixedRangePerGroup = 2,
3566 Q_ENUM( MeshElevationMode )
3579 Q_ENUM( BetweenLineConstraint )
3592 Q_ENUM( LineExtensionSide )
3609 Q_ENUM( CadConstraintType )
3619 EvaluateDefaultValuesOnProviderSide = 1 << 0,
3620 TrustStoredLayerStatistics = 1 << 1,
3621 RememberLayerEditStatusBetweenSessions = 1 << 2,
3622 RememberAttributeTableWindowsBetweenSessions = 1 << 3,
3624 Q_ENUM( ProjectFlag )
3635 ShowContextMenu = 1 << 0,
3637 Q_ENUM( PlotToolFlag )
3661 Q_ENUM( Point3DShape )
3673 Q_ENUM( LightSourceType )
3685 Q_ENUM( NavigationMode )
3698 Q_ENUM( VerticalAxisInversion )
3732 RespectsMaximumErrorMapUnit = 1 << 0,
3733 RespectsDistanceRange = 1 << 1,
3734 RespectsElevationRange = 1 << 2,
3736 Q_ENUM( ProfileGeneratorFlag )
3749 DistanceVsElevationTable,
3763 Q_ENUM( PointCloudSymbol )
3776 Q_ENUM( PointCloudDrawOrder )
3788 AvoidIntersectionsCurrentLayer,
3789 AvoidIntersectionsLayers,
3791 Q_ENUM( AvoidIntersectionsMode )
3805 Q_ENUM( ProjectFileFormat )
3821 DontLoadProjectStyles = 1 << 5,
3822 ForceReadOnlyLayers = 1 << 6,
3824 Q_ENUM( ProjectReadFlag )
3846 ProjectStyles = 1 << 0,
3848 Q_ENUM( ProjectCapability )
3873 Q_ENUM( MapBoxGlStyleSourceType )
3892 Q_ENUM( ArcGisRestServiceType )
3906 Q_ENUM( RelationshipType )
3920 Q_ENUM( RelationshipStrength )
3934 Q_ENUM( RelationshipCardinality )
3943 MultipleFieldKeys = 1 << 0,
3944 ForwardPathLabel = 1 << 1,
3945 BackwardPathLabel = 1 << 2,
3947 Q_ENUM( RelationshipCapability )
3968 Q_ENUM( CoordinateDisplayType )
3981 Q_ENUM( SettingsOrigin )
4002 Q_ENUM( ScriptLanguage )
4014 CheckSyntax = 1 << 1,
4015 ToggleComment = 1 << 2,
4017 Q_ENUM( ScriptLanguageCapability )
4034 AboveInsertionPoint,
4036 OptimalInInsertionGroup,
4038 Q_ENUM( LayerTreeInsertionMethod )
4047 SkipVisibilityCheck = 1 << 0,
4049 Q_ENUM( LayerTreeFilterFlag )
4069 ShowRuleDetails = 1 << 0,
4071 Q_ENUM( LegendJsonRenderFlag )
4088 Q_ENUM( ActionType )
4100 SingleFeature = 1 << 1,
4101 MultipleFeatures = 1 << 2,
4102 AllActions = Layer | SingleFeature | MultipleFeatures
4104 Q_ENUM( MapLayerActionTarget )
4125 EnabledOnlyWhenEditable = 1 << 1,
4127 Q_ENUM( MapLayerActionFlag )
4157 Q_ENUM( AttributeActionType )
4171 Q_ENUM( MetadataDateType )
4201 ContinuousPalette = 17
4203 Q_ENUM( RasterColorInterpretation )
4219 Q_ENUM( RasterLayerType )
4232 SingleBandPseudoColor,
4234 PalettedSingleBandGray,
4235 PalettedSingleBandPseudoColor,
4236 PalettedMultiBandColor,
4237 MultiBandSingleBandGray,
4238 MultiBandSingleBandPseudoColor,
4242 Q_ENUM( RasterDrawingStyle )
4257 Q_ENUM( RasterPyramidFormat )
4272 Q_ENUM( RasterBuildPyramidOption )
4289 Q_ENUM( RasterIdentifyFormat )
4308 BuildPyramids = 1 << 4,
4310 IdentifyValue = 1 << 6,
4311 IdentifyText = 1 << 7,
4312 IdentifyHtml = 1 << 8,
4313 IdentifyFeature = 1 << 9,
4316 Q_ENUM( RasterInterfaceCapability )
4337 NoProviderCapabilities = 0,
4338 ReadLayerMetadata = 1 << 1,
4339 WriteLayerMetadata = 1 << 2,
4340 ProviderHintBenefitsFromResampling = 1 << 3,
4341 ProviderHintCanPerformProviderResampling = 1 << 4,
4342 ReloadData = 1 << 5,
4343 DpiDependentData = 1 << 6,
4344 NativeRasterAttributeTable = 1 << 7,
4345 BuildPyramids = 1 << 8,
4347 Q_ENUM( RasterProviderCapability )
4369 Q_ENUM( ElevationMapCombineMethod )
4422 Q_ENUM( SystemOfMeasurement )
4436 Q_ENUM( MapToolUnit )
4476 Q_ENUM( DistanceUnit )
4491 Q_ENUM( DistanceUnitType )
4539 Q_ENUM( VolumeUnit )
4584 Q_ENUM( TemporalUnit )
4604 Q_ENUM( RenderUnit )
4624 Q_ENUM( LayoutUnit )
4638 Q_ENUM( LayoutUnitType )
4653 Q_ENUM( PictureFormat )
4668 Q_ENUM( ScaleBarAlignment )
4682 Q_ENUM( ScaleBarSegmentSizeMode )
4696 Q_ENUM( ScaleBarDistanceLabelVerticalPlacement )
4710 Q_ENUM( ScaleBarDistanceLabelHorizontalPlacement )
4743 Q_ENUM( PostgresRelKind )
4752 SetFieldComment = 1 << 0,
4753 SetFieldAlias = 1 << 1,
4755 Q_ENUM( DatabaseProviderConnectionCapability2 )
4766 SaveToDatabase = 1 << 1,
4767 LoadFromDatabase = 1 << 2,
4768 DeleteFromDatabase = 1 << 3
4785 Q_ENUM( UserProfileSelectionPolicy )
4806 Q_ENUM( AttributeEditorType )
4819 Q_ENUM( AttributeEditorContainerType )
4834 Q_ENUM( AttributeFormLayout )
4849 Q_ENUM( AttributeFormSuppression )
4865 Q_ENUM( AttributeFormPythonInitCodeSource )
4878 Q_ENUM( ExpressionType )
4893 Q_ENUM( FeatureSymbologyExport )
4902 AlwaysUseTileMatrixSetFromProvider = 1 << 1,
4904 Q_ENUM( VectorTileProviderFlag )
4920 ReadLayerMetadata = 1 << 1,
4922 Q_ENUM( VectorTileProviderCapability )
4941 AvailableNoChildren,
4942 UseLowerZoomLevelTile,
4944 Q_ENUM( TileAvailability )
4953 ReadLayerMetadata = 1 << 1,
4955 Q_ENUM( TiledSceneProviderCapability )
4976 Q_ENUM( TiledSceneBoundingVolumeType )
4991 Q_ENUM( TileRefinementProcess )
5004 Q_ENUM( TileChildrenAvailability )
5013 NoHierarchyFetch = 1 << 0,
5015 Q_ENUM( TiledSceneRequestFlag )
5032 RequiresTextures = 1 << 0,
5033 ForceRasterRender = 1 << 1,
5034 RendersTriangles = 1 << 2,
5035 RendersLines = 1 << 3,
5037 Q_ENUM( TiledSceneRendererFlag )
5054 RA_NearestNeighbour = 0,
5067 Q_ENUM( GdalResampleAlgorithm )
5083 Q_ENUM( VsiHandlerType )
5104 All = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
5105 Default = Count | Sum | Mean,
5107 Q_ENUM( ZonalStatistic )
5129 FailedToCreateField = 8,
5132 Q_ENUM( ZonalStatisticResult )
5158 StringMinimumLength,
5159 StringMaximumLength,
5163 StringConcatenateUnique
5175 CountMissing = 1 << 15,
5180 StDevSample = 1 << 5,
5187 FirstQuartile = 1 << 12,
5188 ThirdQuartile = 1 << 13,
5189 InterQuartileRange = 1 << 14,
5192 All = Count | CountMissing | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | FirstQuartile | ThirdQuartile | InterQuartileRange | First | Last
5217 All = Count | CountDistinct | CountMissing | Min | Max | Range,
5219 Q_ENUM( DateTimeStatistic )
5246 All = Count | CountDistinct | CountMissing | Min | Max | MinimumLength | MaximumLength | MeanLength | Minority | Majority,
5248 Q_ENUM( StringStatistic )
5272 SumOfSquares = 1 << 6,
5273 All = Min | Max | Range | Sum | Mean | StdDev | SumOfSquares
5275 Q_ENUM( RasterBandStatistic )
5303 Q_ENUM( SensorThingsEntity )
5315 Q_ENUM( ColorModel )
5320 static const
double DEFAULT_SEARCH_RADIUS_MM;
5323 static const
float DEFAULT_MAPTOPIXEL_THRESHOLD;
5330 static const QColor DEFAULT_HIGHLIGHT_COLOR;
5335 static const
double DEFAULT_HIGHLIGHT_BUFFER_MM;
5340 static const
double DEFAULT_HIGHLIGHT_MIN_WIDTH_MM;
5347 static const
double SCALE_PRECISION;
5353 static const
double DEFAULT_Z_COORDINATE;
5360 static const
double DEFAULT_M_COORDINATE;
5366 static const
double UI_SCALE_FACTOR;
5371 static const
double DEFAULT_SNAP_TOLERANCE;
5383 static QString defaultProjectScales();
5390 static
int geosVersionInt();
5397 static
int geosVersionMajor();
5404 static
int geosVersionMinor();
5411 static
int geosVersionPatch();
5418 static QString geosVersion();
5504#define cast_to_fptr(f) f
5525 , mPreviousState( object->blockSignals( true ) )
5530 mObject->blockSignals( mPreviousState );
5538 Object *mObject =
nullptr;
5539 bool mPreviousState;
5562CORE_EXPORT uint
qHash(
const QVariant &variant );
5576 const double roundFactor = std::pow( 10, -
precision );
5577 str = QString::number(
static_cast< long long >( std::round( a / roundFactor ) * roundFactor ) );
5582 if (
str.contains( QLatin1Char(
'.' ) ) )
5585 int idx =
str.length() - 1;
5586 while (
str.at( idx ) ==
'0' && idx > 1 )
5590 if ( idx <
str.length() - 1 )
5591 str.truncate(
str.at( idx ) ==
'.' ? idx : idx + 1 );
5601 if (
str == QLatin1String(
"-0" ) )
5603 return QLatin1String(
"0" );
5616 const bool aIsNan = std::isnan( a );
5617 const bool bIsNan = std::isnan( b );
5618 if ( aIsNan || bIsNan )
5619 return aIsNan && bIsNan;
5634inline bool qgsNumberNear( T a, T b, T epsilon = std::numeric_limits<T>::epsilon() * 4 )
5636 const bool aIsNan = std::isnan( a );
5637 const bool bIsNan = std::isnan( b );
5638 if ( aIsNan || bIsNan )
5639 return aIsNan && bIsNan;
5641 const T diff = a - b;
5642 return diff >= -epsilon && diff <= epsilon;
5652inline bool qgsDoubleNear(
double a,
double b,
double epsilon = 4 * std::numeric_limits<double>::epsilon() )
5654 return qgsNumberNear<double>( a, b, epsilon );
5663inline bool qgsFloatNear(
float a,
float b,
float epsilon = 4 * FLT_EPSILON )
5665 return qgsNumberNear<float>( a, b, epsilon );
5671 const bool aIsNan = std::isnan( a );
5672 const bool bIsNan = std::isnan( b );
5673 if ( aIsNan || bIsNan )
5674 return aIsNan && bIsNan;
5682 const double ar = std::frexp( a, &aexp );
5683 const double br = std::frexp( b, &bexp );
5685 return aexp == bexp &&
5686 std::round( ar * std::pow( 10.0, significantDigits ) ) == std::round( br * std::pow( 10.0, significantDigits ) );
5695 const double m = ( number < 0.0 ) ? -1.0 : 1.0;
5696 const double scaleFactor = std::pow( 10.0, places );
5697 return ( std::round( number * m * scaleFactor ) / scaleFactor ) * m;
5708template<
class Key,
class Value>
5712 for (
auto it = map.constBegin(); it != map.constEnd(); it++ )
5713 result += QString(
"%1%2" ).arg( it.key() ).arg( separator );
5715 result.chop( separator.size() );
5725template<
class Key,
class Value>
5729 for (
auto it = map.constBegin(); it != map.constEnd(); it++ )
5730 result += QString(
"%1%2" ).arg( it.value() ).arg( separator );
5732 result.chop( separator.size() );
5743QString
qgsSetJoin(
const QSet<T> &set,
const QString &separator )
5746 for (
auto it = set.constBegin(); it != set.constEnd(); it++ )
5747 result += QString(
"%1%2" ).arg( *it ).arg( separator );
5749 result.chop( separator.size() );
5779 template<
typename To,
typename From>
inline To down_cast( From *f )
5782 ( std::is_base_of<From,
5783 typename std::remove_pointer<To>::type>::value ),
5784 "target type not derived from source type" );
5785 Q_ASSERT( f ==
nullptr ||
dynamic_cast<To
>( f ) !=
nullptr );
5786 return static_cast<To
>( f );
5790 QSet<T> listToSet(
const QList<T> &list )
5792 return QSet<T>( list.begin(), list.end() );
5796 QList<T> setToList(
const QSet<T> &set )
5798 return QList<T>( set.begin(), set.end() );
5811 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
5812 Q_ASSERT( metaEnum.isValid() );
5814 for (
int idx = 0; idx < metaEnum.keyCount(); ++idx )
5816 enumList.append(
static_cast<T
>( metaEnum.value( idx ) ) );
5828 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
5829 Q_ASSERT( metaEnum.isValid() );
5830 QMap<T, QString> enumMap;
5831 for (
int idx = 0; idx < metaEnum.keyCount(); ++idx )
5833 enumMap.insert(
static_cast<T
>( metaEnum.value( idx ) ), QString( metaEnum.key( idx ) ) );
5845 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
5846 Q_ASSERT( metaEnum.isValid() );
5847 const char *key = metaEnum.valueToKey(
static_cast<int>( value ) );
5850 *returnOk = key ? true :
false;
5852 return QString::fromUtf8( key );
5862template<
class T> T
qgsEnumKeyToValue(
const QString &key,
const T &defaultValue,
bool tryValueAsKey =
true,
bool *returnOk =
nullptr )
SIP_SKIP
5864 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
5865 Q_ASSERT( metaEnum.isValid() );
5867 T v =
static_cast<T
>( metaEnum.keyToValue( key.toUtf8().data(), &ok ) );
5879 if ( tryValueAsKey )
5881 bool canConvert =
false;
5882 const int intValue = key.toInt( &canConvert );
5883 if ( canConvert && metaEnum.valueToKey( intValue ) )
5889 return static_cast<T
>( intValue );
5893 return defaultValue;
5903 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
5904 Q_ASSERT( metaEnum.isValid() );
5905 int intValue =
static_cast<int>( value );
5906 const QByteArray ba = metaEnum.valueToKeys( intValue );
5909 const int intValueCheck = metaEnum.keysToValue( ba );
5910 bool ok = intValue == intValueCheck;
5913 return ok ? QString::fromUtf8( ba ) : QString();
5923template<
class T> T
qgsFlagKeysToValue(
const QString &keys,
const T &defaultValue,
bool tryValueAsKey =
true,
bool *returnOk =
nullptr )
SIP_SKIP
5925 if ( keys.isEmpty() )
5931 return defaultValue;
5933 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
5934 Q_ASSERT( metaEnum.isValid() );
5936 T v =
static_cast<T
>( metaEnum.keysToValue( keys.toUtf8().constData(), &ok ) );
5948 if ( tryValueAsKey )
5950 bool canConvert =
false;
5951 const int intValue = keys.toInt( &canConvert );
5954 const QByteArray keys = metaEnum.valueToKeys( intValue );
5955 const int intValueCheck = metaEnum.keysToValue( keys );
5956 if ( intValue == intValueCheck )
5962 return T( intValue );
5967 return defaultValue;
6021CORE_EXPORT
bool qgsVariantEqual(
const QVariant &lhs,
const QVariant &rhs );
6031#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
6039inline bool operator> (
const QVariant &v1,
const QVariant &v2 )
6053inline bool operator< (
const QVariant &v1,
const QVariant &v2 )
6060#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
6065template<> CORE_EXPORT
bool qMapLessThanKey<QVariantList>(
const QVariantList &key1,
const QVariantList &key2 )
SIP_SKIP;
6068CORE_EXPORT QString
qgsVsiPrefix(
const QString &path );
6086#define CONSTLATIN1STRING inline const QLatin1String
6088#define CONSTLATIN1STRING constexpr QLatin1String
6092class ScopedIntIncrementor
6096 ScopedIntIncrementor(
int *variable )
6097 : mVariable( variable )
6102 ScopedIntIncrementor(
const ScopedIntIncrementor &other ) =
delete;
6103 ScopedIntIncrementor &operator=(
const ScopedIntIncrementor &other ) =
delete;
6110 mVariable =
nullptr;
6113 ~ScopedIntIncrementor()
6119 int *mVariable =
nullptr;
6129 return QLatin1String(
6130 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]] )"""
6137 return QLatin1String(
"+proj=longlat +datum=WGS84 +no_defs" );
6143 return QLatin1String(
"EPSG:4326" );
6149 return QLatin1String(
"NONE" );
6155const int PREVIEW_JOB_DELAY_MS = 250;
6158const int MAXIMUM_LAYER_PREVIEW_TIME_MS = 250;
6203#if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) || defined(__clang__)
6205#define Q_NOWARN_DEPRECATED_PUSH \
6206 _Pragma("GCC diagnostic push") \
6207 _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"");
6208#define Q_NOWARN_DEPRECATED_POP \
6209 _Pragma("GCC diagnostic pop");
6210#define Q_NOWARN_UNREACHABLE_PUSH
6211#define Q_NOWARN_UNREACHABLE_POP
6213#elif defined(_MSC_VER)
6215#define Q_NOWARN_DEPRECATED_PUSH \
6216 __pragma(warning(push)) \
6217 __pragma(warning(disable:4996))
6218#define Q_NOWARN_DEPRECATED_POP \
6219 __pragma(warning(pop))
6220#define Q_NOWARN_UNREACHABLE_PUSH \
6221 __pragma(warning(push)) \
6222 __pragma(warning(disable:4702))
6223#define Q_NOWARN_UNREACHABLE_POP \
6224 __pragma(warning(pop))
6228#define Q_NOWARN_DEPRECATED_PUSH
6229#define Q_NOWARN_DEPRECATED_POP
6230#define Q_NOWARN_UNREACHABLE_PUSH
6231#define Q_NOWARN_UNREACHABLE_POP
6238# define QGISEXTERN extern "C" __declspec( dllexport )
6240# if defined(__GNUC__) || defined(__clang__)
6241# define QGISEXTERN extern "C" __attribute__ ((visibility ("default")))
6243# define QGISEXTERN extern "C"
6250#if __cplusplus >= 201703L
6251#define NODISCARD [[nodiscard]]
6252#elif defined(__clang__)
6253#define NODISCARD [[nodiscard]]
6254#elif defined(_MSC_VER)
6256#elif defined(__has_cpp_attribute)
6257#if __has_cpp_attribute(nodiscard)
6258#define NODISCARD [[nodiscard]]
6259#elif __has_cpp_attribute(gnu::warn_unused_result)
6260#define NODISCARD [[gnu::warn_unused_result]]
6262#define NODISCARD Q_REQUIRED_RESULT
6265#define NODISCARD Q_REQUIRED_RESULT
6268#if __cplusplus >= 201703L
6269#define MAYBE_UNUSED [[maybe_unused]]
6270#elif defined(__clang__)
6271#define MAYBE_UNUSED [[maybe_unused]]
6272#elif defined(_MSC_VER)
6274#elif defined(__has_cpp_attribute)
6275#if __has_cpp_attribute(gnu::unused)
6276#define MAYBE_UNUSED [[gnu::unused]]
6290#define BUILTIN_UNREACHABLE \
6292#elif defined(__GNUC__) && !defined(__clang__)
6303#define BUILTIN_UNREACHABLE \
6304 __builtin_unreachable();
6306#define BUILTIN_UNREACHABLE
6316QString CORE_EXPORT
geoWkt();
The Qgis class provides global constants 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.
QFlags< MapLayerRendererFlag > MapLayerRendererFlags
Flags which control how map layer renderers behave.
ProjectReadFlag
Flags which control project read behavior.
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.
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)
MarkerLinePlacement
Defines how/where the symbols should be placed on a line.
QFlags< ProjectReadFlag > ProjectReadFlags
Project load flags.
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< LayerTreeFilterFlag > LayerTreeFilterFlags
Layer tree filter flags.
LayerTreeInsertionMethod
Layer tree insertion methods.
RasterProviderCapability
Raster data provider capabilities.
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.
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.
VectorExportResult
Vector layer export result codes.
DistanceUnit
Units of distance.
RasterTemporalCapabilityFlag
Flags for raster layer temporal capabilities.
SymbolLayerFlag
Flags controlling behavior of symbol layers.
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.
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.
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)
GeometryValidationEngine
Available engines for validating geometries.
TransactionMode
Transaction mode.
Q_ENUM(ScaleToTileZoomLevelMethod)
ElevationMapCombineMethod
Methods used to select the elevation when two elevation maps are combined.
RasterDrawingStyle
Raster drawing styles.
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.
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.
CrsType
Coordinate reference system types.
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.
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.
ActionStart
Enum to determine when an operation would begin.
PlaybackOperation
Media playback operations.
QFlags< SymbolLayerUserFlag > SymbolLayerUserFlags
Symbol layer user flags.
QFlags< TextRendererFlag > TextRendererFlags
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.
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.
PythonMacroMode
Authorisation to run Python Macros.
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.
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.
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.
QFlags< ZonalStatistic > ZonalStatistics
Statistics to be calculated during a zonal statistics operation.
VectorDataProviderTemporalMode
Vector data provider temporal handling modes.
TextRenderFormat
Options for rendering text.
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.
TileChildrenAvailability
Possible availability states for a tile's children.
LayerType
Types of layers that can be added to a map.
QFlags< AnnotationItemFlag > AnnotationItemFlags
Annotation item flags.
QFlags< Statistic > Statistics
Statistics to be calculated for generic values.
PlotToolFlag
Flags that control the way the QgsPlotTools operate.
RenderUnit
Rendering size units.
CoordinateOrder
Order of coordinates.
SelectionFlag
Flags which control feature selection behavior.
QFlags< SettingsTreeNodeOption > SettingsTreeNodeOptions
EndCapStyle
End cap styles for buffers.
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.
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.
GpsConnectionType
GPS connection types.
Q_ENUM(InputControllerType)
QFlags< DatabaseProviderConnectionCapability2 > DatabaseProviderConnectionCapabilities2
ProcessingFeatureSourceDefinitionFlag
Flags which control behavior for a Processing feature source.
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
CrsWktVariant
Coordinate reference system WKT formatting variants.
QFlags< TiledSceneRendererFlag > TiledSceneRendererFlags
Flags which control how tiled scene 2D renderers behave.
AutoRefreshMode
Map layer automatic refresh modes.
ProcessingAlgorithmFlag
Flags indicating how and when an algorithm operates and should be exposed to users.
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.
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.
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.
This is 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.
This class 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.
This class 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.
Stores global configuration for labeling engine.
Contains constants and enums relating to labeling.
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, ....
The QgsMapLayerProxyModel class provides an easy to use model to display the list of layers in widget...
Base class for all map layer types.
The QgsMapSettings class contains configuration for rendering of the map.
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.
Contains a pipeline of raster interfaces for sequential raster processing.
Contains information about the context of a rendering operation.
The QgsScaleBarSettings class stores the appearance and layout settings for scalebar drawing with Qgs...
Represent 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.
This is a container for configuration of the snapping of 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.
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 ...
This is the class is providing tolerance value in map unit values.
Helper functions for various unit types.
Implementation of data provider temporal properties for QgsVectorDataProviders.
This is the 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 data sets.
This class contains information how to simplify 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
void * qgsMalloc(size_t size)
Allocates size bytes and returns a pointer to the allocated memory.
qlonglong qgsPermissiveToLongLong(QString string, bool &ok)
Converts a string to an qlonglong in a permissive way, e.g., allowing for incorrect numbers of digits...
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...
uint qHash(const QVariant &variant)
Hash for QVariant.
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...
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...
void qgsFree(void *ptr)
Frees the memory space pointed to by ptr.
QString qgsVsiPrefix(const QString &path)
bool qgsVariantLessThan(const QVariant &lhs, const QVariant &rhs)
Compares two QVariant values and returns whether the first is less than the second.
bool qgsVariantGreaterThan(const QVariant &lhs, const QVariant &rhs)
Compares two QVariant values and returns whether the first is greater than the second.
CONSTLATIN1STRING geoNone()
Constant that holds the string representation for "No ellips/No CRS".
const double DEFAULT_LINE_WIDTH
bool operator>(const QVariant &v1, const QVariant &v2)
Compares two QVariant values and returns whether the first is greater than the second.
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.
const long GEO_EPSG_CRS_ID
Magic number for a geographic coord sys in EpsgCrsId ID format.
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.
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)
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.
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)
CONSTLATIN1STRING geoProj4()
PROJ4 string that represents a geographic coord sys.
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.
const double DEFAULT_SEGMENT_EPSILON
Default snapping tolerance for segments.
QMap< QString, QString > QgsStringMap
#define CONSTLATIN1STRING
CONSTLATIN1STRING geoWkt()
Wkt string that represents a geographic coord sys.
bool qgsDoubleNearSig(double a, double b, int significantDigits=10)
Compare two doubles using specified number of significant digits.
const int USER_CRS_START_ID
Magick number that determines whether a projection crsid is a system (srs.db) or user (~/....
bool qgsNumberNear(T a, T b, T epsilon=std::numeric_limits< T >::epsilon() *4)
Compare two numbers of type T (but allow some difference)
const long GEOSRID
Magic number for a geographic coord sys in POSTGIS SRID.
#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.
CONSTLATIN1STRING geoEpsgCrsAuthId()
Geographic coord sys from EPSG authority.
const long GEOCRS_ID
Magic number for a geographic coord sys in QGIS srs.db tbl_srs.srs_id.
const double DEFAULT_POINT_SIZE
Magic number that determines the default point size for point symbols.
#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_OPERATORS_FOR_FLAGS(QgsTextRendererUtils::CurvedTextFlags)
Utility class for identifying a unique vertex within a geometry.