QGIS API Documentation 3.99.0-Master (7d2ca374f2d)
Loading...
Searching...
No Matches
qgis.h
Go to the documentation of this file.
1/***************************************************************************
2 qgis.h - QGIS namespace
3 -------------------
4 begin : Sat Jun 30 2002
5 copyright : (C) 2002 by Gary E.Sherman
6 email : sherman at mrcc.com
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17
18#ifndef QGIS_H
19#define QGIS_H
20
21
22#include <cfloat>
23#include <cmath>
24#include <memory>
25
26#include "qgis_core.h"
27#include "qgis_sip.h"
28
29#include <QMetaEnum>
30#include <QString>
31#include <QTimeZone>
32
33using namespace Qt::StringLiterals;
34
35#ifdef SIP_RUN
36% ModuleHeaderCode
37#include <qgis.h>
38% End
39
40% ModuleCode
41int QgisEvent = QEvent::User + 1;
42% End
43#endif
44
45#ifndef SIP_RUN
46// qHash implementation for scoped enum type
47// https://gitlab.com/frostasm/programming-knowledge-base/-/snippets/20120
48#define QHASH_FOR_CLASS_ENUM(T) \
49 inline uint qHash(const T &t, uint seed) { \
50 return ::qHash(static_cast<typename std::underlying_type<T>::type>(t), seed); \
51 }
52#endif
53
58class CORE_EXPORT Qgis
59{
60 Q_GADGET
61 Q_CLASSINFO( "RegisterEnumClassesUnscoped", "false" )
62
63 public:
64
70 static QString version();
71
77 static int versionInt();
78
84 static QString releaseName();
85
87 static const char *QGIS_DEV_VERSION;
88
94 static QString devVersion();
95
96 // Enumerations
97 //
98
105 {
106 ClearStorage = 1 << 0,
107
108 ReadConfiguration = 1 << 1,
109 UpdateConfiguration = 1 << 2,
110 DeleteConfiguration = 1 << 3,
111 CreateConfiguration = 1 << 4,
112
113 ReadCertificateIdentity = 1 << 5,
114 UpdateCertificateIdentity = 1 << 6,
115 DeleteCertificateIdentity = 1 << 7,
116 CreateCertificateIdentity = 1 << 8,
117
118 ReadSslCertificateCustomConfig = 1 << 9,
119 UpdateSslCertificateCustomConfig = 1 << 10,
120 DeleteSslCertificateCustomConfig = 1 << 11,
121 CreateSslCertificateCustomConfig = 1 << 12,
122
123 ReadCertificateAuthority = 1 << 13,
124 UpdateCertificateAuthority = 1 << 14,
125 DeleteCertificateAuthority = 1 << 15,
126 CreateCertificateAuthority = 1 << 16,
127
128 ReadCertificateTrustPolicy = 1 << 17,
129 UpdateCertificateTrustPolicy = 1 << 18,
130 DeleteCertificateTrustPolicy = 1 << 19,
131 CreateCertificateTrustPolicy = 1 << 20,
132
133 ReadMasterPassword = 1 << 21,
134 UpdateMasterPassword = 1 << 22,
135 DeleteMasterPassword = 1 << 23,
136 CreateMasterPassword = 1 << 24,
137
138 ReadSetting = 1 << 25,
139 UpdateSetting = 1 << 26,
140 DeleteSetting = 1 << 27,
141 CreateSetting = 1 << 28,
142
143 };
144 Q_ENUM( AuthConfigurationStorageCapability )
145
146
152
158 {
159 Info = 0,
164 };
165 Q_ENUM( MessageLevel )
166
167
173 {
174 PlainText SIP_MONKEYPATCH_COMPAT_NAME( MessageText ),
175 Html SIP_MONKEYPATCH_COMPAT_NAME( MessageHtml ),
176 };
177 Q_ENUM( StringFormat )
178
179
184 enum class NetworkRequestFlag : int SIP_ENUM_BASETYPE( IntFlag )
185 {
186 DisableMessageLogging = 1 << 0,
187 };
188 Q_ENUM( NetworkRequestFlag )
189
190
196 Q_FLAG( NetworkRequestFlags )
197
204 {
205 Vector SIP_MONKEYPATCH_COMPAT_NAME( VectorLayer ),
206 Raster SIP_MONKEYPATCH_COMPAT_NAME( RasterLayer ),
207 Plugin SIP_MONKEYPATCH_COMPAT_NAME( PluginLayer ),
208 Mesh SIP_MONKEYPATCH_COMPAT_NAME( MeshLayer ),
209 VectorTile SIP_MONKEYPATCH_COMPAT_NAME( VectorTileLayer ),
210 Annotation SIP_MONKEYPATCH_COMPAT_NAME( AnnotationLayer ),
211 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( PointCloudLayer ),
212 Group SIP_MONKEYPATCH_COMPAT_NAME( GroupLayer ),
213 TiledScene,
214 };
215 Q_ENUM( LayerType )
216
217
223 {
224 RasterLayer = 1,
225 NoGeometry = 2,
226 PointLayer = 4,
227 LineLayer = 8,
228 PolygonLayer = 16,
229 HasGeometry = PointLayer | LineLayer | PolygonLayer,
230 VectorLayer = NoGeometry | HasGeometry,
231 PluginLayer = 32,
232 WritableLayer = 64,
233 MeshLayer = 128,
234 VectorTileLayer = 256,
235 PointCloudLayer = 512,
236 AnnotationLayer = 1024,
237 TiledSceneLayer = 2048,
238 All = RasterLayer | VectorLayer | PluginLayer | MeshLayer | VectorTileLayer | PointCloudLayer | AnnotationLayer | TiledSceneLayer,
239 SpatialLayer = RasterLayer | HasGeometry | PluginLayer | MeshLayer | VectorTileLayer | PointCloudLayer | AnnotationLayer | TiledSceneLayer
240 };
241 Q_DECLARE_FLAGS( LayerFilters, LayerFilter )
242 Q_FLAG( LayerFilters )
243
244
249 enum class LoadStyleFlag : int SIP_ENUM_BASETYPE( IntFlag )
250 {
251 IgnoreMissingStyleErrors = 1 << 0,
252 };
253 Q_ENUM( LoadStyleFlag )
254
255
260 Q_DECLARE_FLAGS( LoadStyleFlags, LoadStyleFlag )
261 Q_FLAG( LoadStyleFlags )
262
291 {
292 Unknown = 0,
293 Point = 1,
294 LineString = 2,
295 Polygon = 3,
296 Triangle = 17,
297 MultiPoint = 4,
298 MultiLineString = 5,
299 MultiPolygon = 6,
300 GeometryCollection = 7,
301 CircularString = 8,
302 CompoundCurve = 9,
303 CurvePolygon = 10,
304 MultiCurve = 11,
305 MultiSurface = 12,
306 PolyhedralSurface = 15,
307 TIN = 16,
308 NurbsCurve = 21,
309 NoGeometry = 100,
310 PointZ = 1001,
311 LineStringZ = 1002,
312 PolygonZ = 1003,
313 TriangleZ = 1017,
314 MultiPointZ = 1004,
315 MultiLineStringZ = 1005,
316 MultiPolygonZ = 1006,
317 GeometryCollectionZ = 1007,
318 CircularStringZ = 1008,
319 CompoundCurveZ = 1009,
320 CurvePolygonZ = 1010,
321 MultiCurveZ = 1011,
322 MultiSurfaceZ = 1012,
323 PolyhedralSurfaceZ = 1015,
324 TINZ = 1016,
325 NurbsCurveZ = 1021,
326 PointM = 2001,
327 LineStringM = 2002,
328 PolygonM = 2003,
329 TriangleM = 2017,
330 MultiPointM = 2004,
331 MultiLineStringM = 2005,
332 MultiPolygonM = 2006,
333 GeometryCollectionM = 2007,
334 CircularStringM = 2008,
335 CompoundCurveM = 2009,
336 CurvePolygonM = 2010,
337 MultiCurveM = 2011,
338 MultiSurfaceM = 2012,
339 PolyhedralSurfaceM = 2015,
340 TINM = 2016,
341 NurbsCurveM = 2021,
342 PointZM = 3001,
343 LineStringZM = 3002,
344 PolygonZM = 3003,
345 MultiPointZM = 3004,
346 MultiLineStringZM = 3005,
347 MultiPolygonZM = 3006,
348 GeometryCollectionZM = 3007,
349 CircularStringZM = 3008,
350 CompoundCurveZM = 3009,
351 CurvePolygonZM = 3010,
352 MultiCurveZM = 3011,
353 MultiSurfaceZM = 3012,
354 PolyhedralSurfaceZM = 3015,
355 TINZM = 3016,
356 TriangleZM = 3017,
357 NurbsCurveZM = 3021,
358 Point25D = 0x80000001,
359 LineString25D,
360 Polygon25D,
361 MultiPoint25D,
362 MultiLineString25D,
363 MultiPolygon25D
364 };
365 Q_ENUM( WkbType )
366
367
376 {
377 Point SIP_MONKEYPATCH_COMPAT_NAME( PointGeometry ),
378 Line SIP_MONKEYPATCH_COMPAT_NAME( LineGeometry ),
379 Polygon SIP_MONKEYPATCH_COMPAT_NAME( PolygonGeometry ),
380 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownGeometry ),
381 Null SIP_MONKEYPATCH_COMPAT_NAME( NullGeometry ),
382 };
383 Q_ENUM( GeometryType )
384
385
390 {
391 UnknownDataType = 0,
392 Byte = 1,
393 Int8 = 14,
394 UInt16 = 2,
395 Int16 = 3,
396 UInt32 = 4,
397 Int32 = 5,
398 Float32 = 6,
399 Float64 = 7,
400 CInt16 = 8,
401 CInt32 = 9,
402 CFloat32 = 10,
403 CFloat64 = 11,
404 ARGB32 = 12,
405 ARGB32_Premultiplied = 13
406 };
407 Q_ENUM( DataType )
408
409
414 enum class CaptureTechnique : int
415 {
416 StraightSegments,
417 CircularString,
418 Streaming,
419 Shape,
420 PolyBezier,
421 NurbsCurve,
422 };
423 Q_ENUM( CaptureTechnique )
424
425
426
431 enum class VectorLayerTypeFlag : int SIP_ENUM_BASETYPE( IntFlag )
432 {
433 SqlQuery = 1 << 0
434 };
435 Q_ENUM( VectorLayerTypeFlag )
438 Q_FLAG( VectorLayerTypeFlags )
439
444 enum class EmbeddedScriptMode SIP_MONKEYPATCH_SCOPEENUM_UNNEST( Qgis, PythonMacroMode ) : int
445 {
446 Never = 0,
447 Ask = 1,
448 SessionOnly = 2,
449 Always = 3,
450 NotForThisSession = 4,
451 NeverAsk = 5,
452 };
453 Q_ENUM( EmbeddedScriptMode )
454
455
459 enum class EmbeddedScriptType : int
460 {
461 Macro = 0,
462 ExpressionFunction = 1,
463 Action = 2,
464 FormInitCode = 3,
465 };
466 Q_ENUM( EmbeddedScriptType )
467
468
472 enum class ProjectTrustStatus : int
473 {
474 Undetermined = 0,
475 Trusted = 1,
476 Untrusted = 2,
477 };
478 Q_ENUM( ProjectTrustStatus )
479
480
488 {
489 TrustDataSource SIP_MONKEYPATCH_COMPAT_NAME( FlagTrustDataSource ) = 1 << 0,
490 SkipFeatureCount = 1 << 1,
491 LoadDefaultStyle SIP_MONKEYPATCH_COMPAT_NAME( FlagLoadDefaultStyle ) = 1 << 2,
492 SkipGetExtent = 1 << 3,
493 SkipFullScan = 1 << 4,
494 ForceReadOnly = 1 << 5,
495 SkipCredentialsRequest = 1 << 6,
496 ParallelThreadLoading = 1 << 7,
497 };
498 Q_ENUM( DataProviderReadFlag )
499
500
508 Q_FLAG( DataProviderReadFlags )
509
510 // TODO QGIS 5 -- remove NoCapabilities and rely on VectorProviderCapabilities() instead
511
520 {
521 NoCapabilities = 0,
522 AddFeatures = 1,
523 DeleteFeatures = 1 << 1,
524 ChangeAttributeValues = 1 << 2,
525 AddAttributes = 1 << 3,
526 DeleteAttributes = 1 << 4,
527 CreateSpatialIndex = 1 << 6,
528 SelectAtId = 1 << 7,
529 ChangeGeometries = 1 << 8,
530 SelectEncoding = 1 << 13,
531 CreateAttributeIndex = 1 << 12,
532 SimplifyGeometries = 1 << 14,
533 SimplifyGeometriesWithTopologicalValidation = 1 << 15,
534 TransactionSupport = 1 << 16,
535 CircularGeometries = 1 << 17,
536 ChangeFeatures = 1 << 18,
537 RenameAttributes = 1 << 19,
538 FastTruncate = 1 << 20,
539 ReadLayerMetadata = 1 << 21,
540 WriteLayerMetadata = 1 << 22,
541 CancelSupport = 1 << 23,
542 CreateRenderer = 1 << 24,
543 CreateLabeling = 1 << 25,
544 ReloadData = 1 << 26,
545 FeatureSymbology = 1 << 27,
546 EditingCapabilities = AddFeatures | DeleteFeatures | ChangeAttributeValues | ChangeGeometries | AddAttributes | DeleteAttributes | RenameAttributes,
547 };
548 Q_ENUM( VectorProviderCapability )
549
550
559
566 {
567 Uncounted = -2,
568 UnknownCount = -1,
569 };
570 Q_ENUM( FeatureCountState )
571
572
579 {
580 Unknown SIP_MONKEYPATCH_COMPAT_NAME( SpatialIndexUnknown ) = 0,
581 NotPresent SIP_MONKEYPATCH_COMPAT_NAME( SpatialIndexNotPresent ) = 1,
582 Present SIP_MONKEYPATCH_COMPAT_NAME( SpatialIndexPresent ) = 2,
583 };
584 Q_ENUM( SpatialIndexPresence )
585
586
598 {
599 NoFeaturesAvailable = 0,
600 FeaturesAvailable,
601 FeaturesMaybeAvailable
602 };
603 Q_ENUM( FeatureAvailability )
604
605
611 {
612 EditAlias = 1 << 0,
613 EditComment = 1 << 1,
614 };
615
616 Q_ENUM( VectorDataProviderAttributeEditCapability )
617
618
625
631 {
632 Marker,
633 Line,
634 Fill,
635 Hybrid
636 };
637 Q_ENUM( SymbolType )
638
639
645 {
646 ScaleArea,
647 ScaleDiameter
648 };
649 Q_ENUM( ScaleMethod )
650
651
656 {
657 Custom,
658 Variant,
659 String,
660 StringList,
661 VariantMap,
662 Bool,
663 Integer,
664 Double,
665 EnumFlag,
666 Color
667 };
668 Q_ENUM( SettingsType )
669
670
675 {
676 Root,
677 Standard,
678 NamedList,
679 };
680 Q_ENUM( SettingsTreeNodeType )
681
682
686 enum class SettingsTreeNodeOption : int SIP_ENUM_BASETYPE( IntFlag )
687 {
688 NamedListSelectedItemSetting = 1 << 0,
689 };
690
691 Q_ENUM( SettingsTreeNodeOption )
694
703 {
704 Invalid SIP_MONKEYPATCH_COMPAT_NAME( InvalidProperty ),
705 Static SIP_MONKEYPATCH_COMPAT_NAME( StaticProperty ),
706 Field SIP_MONKEYPATCH_COMPAT_NAME( FieldBasedProperty ),
707 Expression SIP_MONKEYPATCH_COMPAT_NAME( ExpressionBasedProperty ),
708 };
709 Q_ENUM( PropertyType )
710
711
716 enum class SldExportOption : int SIP_ENUM_BASETYPE( IntFlag )
717 {
718 NoOptions = 0,
719 Svg = 1 << 0,
720 Png = 1 << 1,
721 };
722 Q_ENUM( SldExportOption )
724 Q_FLAG( SldExportOptions )
725
731 enum class SldExportVendorExtension : int SIP_ENUM_BASETYPE( IntFlag )
732 {
733 NoVendorExtension = 0,
734 GeoServerVendorExtension = 1 << 1,
735 DeegreeVendorExtension = 1 << 2,
736 };
737 Q_ENUM( SldExportVendorExtension )
738
739
740
744 enum class SettingsOption : int SIP_ENUM_BASETYPE( IntFlag )
745 {
746 SaveFormerValue = 1 << 1,
747 SaveEnumFlagAsInt = 1 << 2,
748 };
749 Q_ENUM( SettingsOption )
750 Q_DECLARE_FLAGS( SettingsOptions, SettingsOption )
751 Q_FLAG( SettingsOptions )
752
758 {
759 ActiveLayer = 1,
760 AllLayers = 2,
761 AdvancedConfiguration = 3,
762 };
763 Q_ENUM( SnappingMode )
764
765
770 {
771 NoSnap SIP_MONKEYPATCH_COMPAT_NAME( NoSnapFlag ) = 0,
772 Vertex SIP_MONKEYPATCH_COMPAT_NAME( VertexFlag ) = 1 << 0,
773 Segment SIP_MONKEYPATCH_COMPAT_NAME( SegmentFlag ) = 1 << 1,
774 Area SIP_MONKEYPATCH_COMPAT_NAME( AreaFlag ) = 1 << 2,
775 Centroid SIP_MONKEYPATCH_COMPAT_NAME( CentroidFlag ) = 1 << 3,
776 MiddleOfSegment SIP_MONKEYPATCH_COMPAT_NAME( MiddleOfSegmentFlag ) = 1 << 4,
777 LineEndpoint SIP_MONKEYPATCH_COMPAT_NAME( LineEndpointFlag ) = 1 << 5,
778 };
779 Q_ENUM( SnappingType )
782 Q_FLAG( SnappingTypes )
783
790 {
791 DynamicRotation = 1 << 1,
792 IsSymbolLayerSubSymbol = 1 << 2,
793 ForceVectorRendering = 1 << 3,
794 ExcludeSymbolBuffers = 1 << 4,
795 };
796 Q_ENUM( SymbolRenderHint )
799 Q_FLAG( SymbolRenderHints )
800
806 enum class SymbolRotationMode : int
807 {
808 RespectMapRotation,
809 IgnoreMapRotation,
810 };
811 Q_ENUM( SymbolRotationMode )
812
813
814
826 Q_ENUM( HorizontalAnchorPoint )
827
828
841 Q_ENUM( VerticalAnchorPoint )
842
843
848 enum class FeatureRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
849 {
850 AffectsLabeling = 1 << 0,
851 };
852 Q_ENUM( FeatureRendererFlag )
853
854
860 Q_FLAG( FeatureRendererFlags )
861
867 enum class SymbolFlag : int SIP_ENUM_BASETYPE( IntFlag )
868 {
869 RendererShouldUseSymbolLevels = 1 << 0,
870 AffectsLabeling = 1 << 1,
871 };
872 Q_ENUM( SymbolFlag )
874 Q_DECLARE_FLAGS( SymbolFlags, SymbolFlag )
875 Q_FLAG( SymbolFlags )
876
883 {
884 FlagIncludeCrosshairsForMarkerSymbols = 1 << 0,
885 };
886 Q_ENUM( SymbolPreviewFlag )
889 Q_FLAG( SymbolPreviewFlags )
890
900 enum class SymbolLayerFlag : int SIP_ENUM_BASETYPE( IntFlag )
901 {
902 DisableFeatureClipping = 1 << 0,
903 CanCalculateMaskGeometryPerFeature = 1 << 1,
904 AffectsLabeling = 1 << 2,
905 };
906 Q_ENUM( SymbolLayerFlag )
909 Q_FLAG( SymbolLayerFlags )
910
920 enum class SymbolLayerUserFlag : int SIP_ENUM_BASETYPE( IntFlag )
921 {
922 DisableSelectionRecoloring = 1 << 0,
923 };
924 Q_ENUM( SymbolLayerUserFlag )
925
926
932 Q_FLAG( SymbolLayerUserFlags )
933
940 {
941 Collection,
942 Directory,
943 Layer,
944 Error,
945 Favorites,
946 Project,
947 Custom,
948 Fields,
949 Field,
950 };
951 Q_ENUM( BrowserItemType )
952
953
959 {
960 NotPopulated,
961 Populating,
962 Populated,
963 };
964 Q_ENUM( BrowserItemState )
965
966
972 {
973 NoCapabilities = 0,
974 SetCrs = 1 << 0,
975 Fertile = 1 << 1,
976 Fast = 1 << 2,
977 Collapse = 1 << 3,
978 Rename = 1 << 4,
979 Delete = 1 << 5,
980 ItemRepresentsFile = 1 << 6,
981 RefreshChildrenWhenItemIsRefreshed = 1 << 7,
982 ReadOnly = 1 << 8,
983 };
984 Q_ENUM( BrowserItemCapability )
988
997 {
998 NoCapabilities SIP_MONKEYPATCH_COMPAT_NAME( NoDataCapabilities ) = 0,
999 Files SIP_MONKEYPATCH_COMPAT_NAME( File ) = 1,
1000 Directories SIP_MONKEYPATCH_COMPAT_NAME( Dir ) = 1 << 1,
1001 Databases SIP_MONKEYPATCH_COMPAT_NAME( Database ) = 1 << 2,
1002 NetworkSources SIP_MONKEYPATCH_COMPAT_NAME( Net ) = 1 << 3,
1003 };
1004 Q_ENUM( DataItemProviderCapability )
1005
1006
1015
1022 {
1023 NoType,
1024 Vector,
1025 Raster,
1026 Point,
1027 Line,
1028 Polygon,
1029 TableLayer,
1030 Database,
1031 Table,
1032 Plugin,
1033 Mesh,
1034 VectorTile,
1035 PointCloud,
1036 TiledScene,
1037 };
1038 Q_ENUM( BrowserLayerType )
1039
1040
1046 {
1047 Default,
1048 NeverMonitor,
1049 AlwaysMonitor,
1050 };
1051 Q_ENUM( BrowserDirectoryMonitoring )
1052
1053
1057 enum class HttpMethod : int
1058 {
1059 Get = 0,
1060 Post = 1,
1061 Head,
1062 Put,
1063 Delete,
1064 };
1065 Q_ENUM( HttpMethod )
1066
1067
1073 {
1075 ErrorCreatingDataSource SIP_MONKEYPATCH_COMPAT_NAME( ErrCreateDataSource ),
1076 ErrorCreatingLayer SIP_MONKEYPATCH_COMPAT_NAME( ErrCreateLayer ),
1077 ErrorAttributeTypeUnsupported SIP_MONKEYPATCH_COMPAT_NAME( ErrAttributeTypeUnsupported ),
1078 ErrorAttributeCreationFailed SIP_MONKEYPATCH_COMPAT_NAME( ErrAttributeCreationFailed ),
1079 ErrorProjectingFeatures SIP_MONKEYPATCH_COMPAT_NAME( ErrProjection ),
1080 ErrorFeatureWriteFailed SIP_MONKEYPATCH_COMPAT_NAME( ErrFeatureWriteFailed ),
1081 ErrorInvalidLayer SIP_MONKEYPATCH_COMPAT_NAME( ErrInvalidLayer ),
1082 ErrorInvalidProvider SIP_MONKEYPATCH_COMPAT_NAME( ErrInvalidProvider ),
1083 ErrorProviderUnsupportedFeature SIP_MONKEYPATCH_COMPAT_NAME( ErrProviderUnsupportedFeature ),
1084 ErrorConnectionFailed SIP_MONKEYPATCH_COMPAT_NAME( ErrConnectionFailed ),
1085 UserCanceled SIP_MONKEYPATCH_COMPAT_NAME( ErrUserCanceled ),
1086 };
1087 Q_ENUM( VectorExportResult )
1088
1089
1094 {
1095 FieldAliases = 1 << 0,
1096 FieldComments = 1 << 2,
1097 };
1098 Q_ENUM( VectorFileWriterCapability )
1099
1100
1106
1112 {
1113 SubsetStringFilter = 1 << 1,
1114 GeometryColumn = 1 << 2,
1115 PrimaryKeys = 1 << 3,
1116 UnstableFeatureIds = 1 << 4
1117 };
1118 Q_ENUM( SqlLayerDefinitionCapability )
1122
1128 enum class SqlKeywordCategory : int
1129 {
1130 Keyword,
1131 Constant,
1132 Function,
1133 Geospatial,
1134 Operator,
1135 Math,
1137 String,
1138 Identifier
1139 };
1140 Q_ENUM( SqlKeywordCategory )
1141
1142
1146 enum class DriveType : int
1147 {
1148 Unknown,
1149 Invalid,
1150 Removable,
1151 Fixed,
1152 Remote,
1153 CdRom,
1154 RamDisk,
1155 Cloud,
1156 };
1157 Q_ENUM( DriveType )
1158
1159
1164 {
1165 Deferred SIP_MONKEYPATCH_COMPAT_NAME( DownloadLater ),
1166 Immediate SIP_MONKEYPATCH_COMPAT_NAME( DownloadImmediately ),
1167 };
1168 Q_ENUM( ActionStart )
1169
1170
1176 {
1177 FollowEngineSetting,
1178 NeverShow,
1179 };
1180 Q_ENUM( UnplacedLabelVisibility )
1181
1182
1187 enum class LabelOverlapHandling : int
1188 {
1189 PreventOverlap,
1190 AllowOverlapIfRequired,
1191 AllowOverlapAtNoCost,
1192 };
1193 Q_ENUM( LabelOverlapHandling )
1194
1195
1201 {
1202 TreatWhitespaceAsCollision,
1203 IgnoreWhitespaceCollisions,
1204 };
1205 Q_ENUM( LabelWhitespaceCollisionHandling )
1206
1207
1212 enum class LabelPrioritization : int
1213 {
1214 PreferCloser,
1215 PreferPositionOrdering,
1216 };
1217 Q_ENUM( LabelPrioritization )
1218
1219
1227 {
1228 AroundPoint,
1229 OverPoint,
1230 Line,
1231 Curved,
1232 Horizontal,
1233 Free,
1234 OrderedPositionsAroundPoint,
1235 PerimeterCurved,
1236 OutsidePolygons,
1237 };
1238 Q_ENUM( LabelPlacement )
1239
1240
1245 enum class CurvedLabelMode : int
1246 {
1247 Default,
1248 PlaceCharactersAtVertices,
1249 StretchCharacterSpacingToFitLine,
1250 StretchWordSpacingToFitLine,
1251 };
1252 Q_ENUM( CurvedLabelMode )
1253
1254
1262 {
1263 TopLeft,
1264 TopSlightlyLeft,
1265 TopMiddle,
1266 TopSlightlyRight,
1267 TopRight,
1268 MiddleLeft,
1269 MiddleRight,
1270 BottomLeft,
1271 BottomSlightlyLeft,
1272 BottomMiddle,
1273 BottomSlightlyRight,
1274 BottomRight,
1275 OverPoint,
1276 };
1277 Q_ENUM( LabelPredefinedPointPosition )
1278
1279
1285 {
1286 LabelLargestPartOnly,
1287 LabelEveryPartWithEntireLabel,
1288 SplitLabelTextLinesOverParts,
1289 };
1290 Q_ENUM( MultiPartLabelingBehavior )
1291
1292
1301 {
1302 FromPoint,
1303 FromSymbolBounds,
1304 };
1305 Q_ENUM( LabelOffsetType )
1306
1307
1315 {
1316 AboveLeft SIP_MONKEYPATCH_COMPAT_NAME( QuadrantAboveLeft ),
1317 Above SIP_MONKEYPATCH_COMPAT_NAME( QuadrantAbove ),
1318 AboveRight SIP_MONKEYPATCH_COMPAT_NAME( QuadrantAboveRight ),
1320 Over SIP_MONKEYPATCH_COMPAT_NAME( QuadrantOver ),
1322 BelowLeft SIP_MONKEYPATCH_COMPAT_NAME( QuadrantBelowLeft ),
1323 Below SIP_MONKEYPATCH_COMPAT_NAME( QuadrantBelow ),
1324 BelowRight SIP_MONKEYPATCH_COMPAT_NAME( QuadrantBelowRight ),
1325 };
1326 Q_ENUM( LabelQuadrantPosition )
1327
1328
1335 {
1336 OnLine = 1,
1337 AboveLine = 2,
1338 BelowLine = 4,
1339 MapOrientation = 8,
1340 };
1341 Q_ENUM( LabelLinePlacementFlag )
1342
1343
1351 Q_FLAG( LabelLinePlacementFlags )
1352
1360 {
1361 AllowPlacementOutsideOfPolygon = 1 << 0,
1362 AllowPlacementInsideOfPolygon = 1 << 1,
1363 };
1364 Q_ENUM( LabelPolygonPlacementFlag )
1365
1366
1374
1383 {
1384 FlipUpsideDownLabels SIP_MONKEYPATCH_COMPAT_NAME( Upright ),
1385 AllowUpsideDownWhenRotationIsDefined SIP_MONKEYPATCH_COMPAT_NAME( ShowDefined ),
1386 AlwaysAllowUpsideDown SIP_MONKEYPATCH_COMPAT_NAME( ShowAll )
1387 };
1388 Q_ENUM( UpsideDownLabelHandling )
1389
1390
1398 {
1400 Center SIP_MONKEYPATCH_COMPAT_NAME( MultiCenter ),
1402 FollowPlacement SIP_MONKEYPATCH_COMPAT_NAME( MultiFollowPlacement ),
1403 Justify SIP_MONKEYPATCH_COMPAT_NAME( MultiJustify ),
1404 };
1405 Q_ENUM( LabelMultiLineAlignment )
1406
1407
1414 {
1415 Vector SIP_MONKEYPATCH_COMPAT_NAME( FilterVector ) = 1,
1416 Raster SIP_MONKEYPATCH_COMPAT_NAME( FilterRaster ),
1417 Mesh SIP_MONKEYPATCH_COMPAT_NAME( FilterMesh ),
1418 MeshDataset SIP_MONKEYPATCH_COMPAT_NAME( FilterMeshDataset ),
1419 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( FilterPointCloud ),
1420 VectorTile,
1421 TiledScene,
1422 };
1423 Q_ENUM( FileFilterType )
1424
1425
1430 enum class UriCleaningFlag : int SIP_ENUM_BASETYPE( IntFlag )
1431 {
1432 RemoveCredentials = 1 << 0,
1433 RedactCredentials = 1 << 1,
1434 };
1435 Q_ENUM( UriCleaningFlag )
1436
1437
1443 Q_FLAG( UriCleaningFlags )
1444
1450 enum class SourceHierarchyLevel : int
1451 {
1452 Connection,
1453 Group,
1454 Object,
1455 };
1456 Q_ENUM( SourceHierarchyLevel )
1457
1458
1463 enum class SublayerQueryFlag : int SIP_ENUM_BASETYPE( IntFlag )
1464 {
1465 FastScan = 1 << 0,
1466 ResolveGeometryType = 1 << 1,
1467 CountFeatures = 1 << 2,
1468 IncludeSystemTables = 1 << 3,
1469 OpenLayersToResolveDescriptions = 1 << 4,
1470 };
1471
1474 Q_FLAG( SublayerQueryFlags )
1475
1476
1481 enum class SublayerFlag : int SIP_ENUM_BASETYPE( IntFlag )
1482 {
1483 SystemTable = 1 << 0,
1484 };
1485
1486 Q_DECLARE_FLAGS( SublayerFlags, SublayerFlag )
1488 Q_FLAG( SublayerFlags )
1489
1490
1498 {
1499 Linear SIP_MONKEYPATCH_COMPAT_NAME( Interpolated ) = 0,
1500 Discrete = 1,
1501 Exact = 2,
1502 };
1503 Q_ENUM( ShaderInterpolationMethod )
1504
1505
1513 {
1514 Continuous = 1,
1515 EqualInterval = 2,
1516 Quantile = 3,
1517 };
1518 Q_ENUM( ShaderClassificationMethod )
1519
1520
1526 {
1527 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownRole ) = 0,
1528 Provider SIP_MONKEYPATCH_COMPAT_NAME( ProviderRole ) = 1,
1529 Renderer SIP_MONKEYPATCH_COMPAT_NAME( RendererRole ) = 2,
1530 Brightness SIP_MONKEYPATCH_COMPAT_NAME( BrightnessRole ) = 3,
1531 Resampler SIP_MONKEYPATCH_COMPAT_NAME( ResamplerRole ) = 4,
1532 Projector SIP_MONKEYPATCH_COMPAT_NAME( ProjectorRole ) = 5,
1533 Nuller SIP_MONKEYPATCH_COMPAT_NAME( NullerRole ) = 6,
1534 HueSaturation SIP_MONKEYPATCH_COMPAT_NAME( HueSaturationRole ) = 7,
1535 };
1536 Q_ENUM( RasterPipeInterfaceRole )
1537
1538
1543 {
1544 ResampleFilter,
1545 Provider,
1546 };
1547 Q_ENUM( RasterResamplingStage )
1548
1549
1557 {
1558 Nearest,
1559 Bilinear,
1560 Cubic,
1561 CubicSpline,
1562 Lanczos,
1563 Average,
1564 Mode,
1565 Gauss
1566 };
1567 Q_ENUM( RasterResamplingMethod )
1568
1569
1574 enum class RasterRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
1575 {
1576 InternalLayerOpacityHandling = 1 << 0,
1577 UseNoDataForOutOfRangePixels = 1 << 1,
1578 };
1579
1586
1588 Q_FLAG( RasterRendererFlags )
1589
1590
1596 {
1597 UsesMultipleBands = 1 << 0,
1598 };
1599 Q_ENUM( RasterRendererCapability )
1600
1601
1608
1617 {
1619 MinimumMaximum SIP_MONKEYPATCH_COMPAT_NAME( MinMax ),
1620 StdDev,
1621 CumulativeCut
1622 };
1623 Q_ENUM( RasterRangeLimit )
1624
1625
1633 {
1634 WholeRaster SIP_MONKEYPATCH_COMPAT_NAME( None_ ),
1635 FixedCanvas SIP_MONKEYPATCH_COMPAT_NAME( CurrentCanvas ),
1636 UpdatedCanvas,
1637 };
1638 Q_ENUM( RasterRangeExtent )
1639
1640
1648 {
1649 Exact,
1650 Estimated,
1651 };
1652 Q_ENUM( RasterRangeAccuracy )
1653
1654
1660 {
1661 Generic = 0,
1662 PixelCount = 1,
1663 Name = 2,
1664 Min = 3,
1665 Max = 4,
1666 MinMax = 5,
1667 Red = 6,
1668 Green = 7,
1669 Blue = 8,
1670 Alpha = 9,
1671 RedMin = 10,
1672 GreenMin = 11,
1673 BlueMin = 12,
1674 AlphaMin = 13,
1675 RedMax = 14,
1676 GreenMax = 15,
1677 BlueMax = 16,
1678 AlphaMax = 17,
1679 MaxCount
1680 };
1681 Q_ENUM( RasterAttributeTableFieldUsage )
1682
1683
1689 {
1690 Thematic = 0,
1691 Athematic = 1
1692 };
1693 Q_ENUM( RasterAttributeTableType )
1694
1695
1702 {
1703 Raw = 0,
1704 RenderedImage SIP_MONKEYPATCH_COMPAT_NAME( Image ) = 1
1705 };
1706 Q_ENUM( RasterExportType )
1707
1708
1715 {
1717 SourceProviderError = 1,
1718 DestinationProviderError SIP_MONKEYPATCH_COMPAT_NAME( DestProviderError ) = 2,
1719 CreateDatasourceError = 3,
1720 WriteError = 4,
1721 NoDataConflict = 5,
1722 Canceled SIP_MONKEYPATCH_COMPAT_NAME( WriteCanceled ) = 6,
1723 };
1724 Q_ENUM( RasterFileWriterResult )
1725
1726
1731 enum class MeshEditingErrorType : int
1732 {
1733 NoError,
1734 InvalidFace,
1735 TooManyVerticesInFace,
1736 FlatFace,
1737 UniqueSharedVertex,
1738 InvalidVertex,
1739 ManifoldFace,
1740 };
1741 Q_ENUM( MeshEditingErrorType )
1742
1743
1748 enum class FilePathType : int
1749 {
1750 Absolute,
1751 Relative,
1752 };
1753 Q_ENUM( FilePathType )
1754
1755
1760 enum class SublayerPromptMode : int
1761 {
1762 AlwaysAsk,
1763 AskExcludingRasterBands,
1764 NeverAskSkip,
1765 NeverAskLoadAll,
1766 };
1767 Q_ENUM( SublayerPromptMode )
1768
1769
1777 {
1778 Unknown SIP_MONKEYPATCH_COMPAT_NAME( OriginUnknown ),
1779 Provider SIP_MONKEYPATCH_COMPAT_NAME( OriginProvider ),
1780 Join SIP_MONKEYPATCH_COMPAT_NAME( OriginJoin ),
1781 Edit SIP_MONKEYPATCH_COMPAT_NAME( OriginEdit ),
1782 Expression SIP_MONKEYPATCH_COMPAT_NAME( OriginExpression )
1783 };
1784 Q_ENUM( FieldOrigin )
1785
1786
1793 enum class FieldConfigurationFlag : int SIP_ENUM_BASETYPE( IntFlag )
1794 {
1795 NoFlag = 0,
1796 NotSearchable = 1 << 1,
1797 HideFromWms = 1 << 2,
1798 HideFromWfs = 1 << 3,
1799 };
1800 Q_ENUM( FieldConfigurationFlag )
1801
1802
1810 Q_FLAG( FieldConfigurationFlags )
1811
1817 enum class FieldMetadataProperty : int
1818 {
1819 GeometryCrs = 0x1000,
1820 GeometryWkbType = 0x1001,
1821 CustomProperty = 0x100000,
1822 };
1823 Q_ENUM( FieldMetadataProperty )
1824
1825
1830 enum class SelectionRenderingMode : int
1831 {
1832 Default,
1833 CustomColor,
1834 CustomSymbol,
1835 };
1836 Q_ENUM( SelectionRenderingMode )
1837
1838
1844 {
1845 SetSelection,
1846 AddToSelection,
1847 IntersectSelection,
1848 RemoveFromSelection,
1849 };
1850 Q_ENUM( SelectBehavior )
1851
1852
1858 {
1859 Intersect,
1860 Within,
1861 };
1862 Q_ENUM( SelectGeometryRelationship )
1863
1864
1869 enum class SelectionFlag : int SIP_ENUM_BASETYPE( IntFlag )
1870 {
1871 SingleFeatureSelection = 1 << 0,
1872 ToggleSelection = 1 << 1,
1873 };
1874
1880 Q_DECLARE_FLAGS( SelectionFlags, SelectionFlag )
1881
1883 Q_FLAG( SelectionFlags )
1884
1885
1891 {
1893 EmptyGeometry = 1,
1894 EditFailed = 2,
1895 FetchFeatureFailed = 3,
1896 InvalidLayer = 4,
1897 };
1898 Q_ENUM( VectorEditResult )
1899
1900
1906 {
1907 SemiTransparentCircle,
1908 Cross,
1909 NoMarker,
1910 };
1911 Q_ENUM( VertexMarkerType )
1912
1913
1917 enum class ContentStatus : int
1918 {
1919 NotStarted,
1920 Running,
1921 Finished,
1922 Failed,
1923 Canceled,
1924 };
1925 Q_ENUM( ContentStatus )
1926
1927
1932 enum class GpsConnectionType : int
1933 {
1934 Automatic,
1935 Internal,
1936 Serial,
1937 Gpsd,
1938 };
1939 Q_ENUM( GpsConnectionType )
1940
1941
1946 enum class DeviceConnectionStatus SIP_MONKEYPATCH_SCOPEENUM_UNNEST( Qgis, GpsConnectionStatus ) : int
1947 {
1948 Disconnected,
1949 Connecting,
1950 Connected,
1951 };
1952 Q_ENUM( DeviceConnectionStatus )
1953
1954
1962 {
1963 NoData,
1964 NoFix,
1965 Fix2D,
1966 Fix3D
1967 };
1969
1970
1977 {
1978 Unknown,
1979 Gps,
1980 Glonass,
1981 Galileo,
1982 BeiDou,
1983 Qzss,
1984 Navic,
1985 Sbas,
1986 };
1988
1995 {
1996 Unknown = -1,
1997 Invalid,
1998 GPS,
1999 DGPS,
2000 PPS,
2001 RTK,
2002 FloatRTK,
2003 Estimated,
2004 Manual,
2005 Simulation,
2006 };
2007 Q_ENUM( GpsQualityIndicator )
2008
2009
2014 enum class GpsNavigationStatus : int
2015 {
2016 NotValid,
2017 Safe,
2018 Caution,
2019 Unsafe,
2020 };
2022
2028 enum class GpsInformationComponent : int SIP_ENUM_BASETYPE( IntFlag )
2029 {
2030 Location = 1 << 0,
2031 Altitude = 1 << 1,
2032 GroundSpeed = 1 << 2,
2033 Bearing = 1 << 3,
2034 TotalTrackLength = 1 << 4,
2035 TrackDistanceFromStart = 1 << 5,
2036 Pdop = 1 << 6,
2037 Hdop = 1 << 7,
2038 Vdop = 1 << 8,
2039 HorizontalAccuracy = 1 << 9,
2040 VerticalAccuracy = 1 << 10,
2041 HvAccuracy = 1 << 11,
2042 SatellitesUsed = 1 << 12,
2043 Timestamp = 1 << 13,
2044 TrackStartTime = 1 << 14,
2045 TrackEndTime = 1 << 15,
2046 TrackDistanceSinceLastPoint = 1 << 16,
2047 TrackTimeSinceLastPoint = 1 << 17,
2048 GeoidalSeparation = 1 << 18,
2049 EllipsoidAltitude = 1 << 19,
2050 };
2051
2059 Q_FLAG( GpsInformationComponents )
2060
2061
2066 enum class BabelFormatCapability : int SIP_ENUM_BASETYPE( IntFlag )
2067 {
2068 Import = 1 << 0,
2069 Export = 1 << 1,
2070 Waypoints = 1 << 2,
2071 Routes = 1 << 3,
2072 Tracks = 1 << 4,
2073 };
2074
2077 Q_FLAG( BabelFormatCapabilities )
2078
2079
2085 enum class BabelCommandFlag : int SIP_ENUM_BASETYPE( IntFlag )
2086 {
2087 QuoteFilePaths = 1 << 0,
2088 };
2089
2092 Q_FLAG( BabelCommandFlags )
2093
2094
2099 enum class GpsFeatureType : int
2100 {
2101 Waypoint,
2102 Route,
2103 Track,
2104 };
2105 Q_ENUM( GpsFeatureType )
2106
2107
2115 {
2117 NothingHappened = 1000,
2118 InvalidBaseGeometry,
2119 InvalidInputGeometryType,
2120 SelectionIsEmpty,
2121 SelectionIsGreaterThanOne,
2122 GeometryEngineError,
2123 LayerNotEditable,
2124 // Add part issues
2125 AddPartSelectedGeometryNotFound,
2126 AddPartNotMultiGeometry,
2127 // Add ring issues
2128 AddRingNotClosed,
2129 AddRingNotValid,
2130 AddRingCrossesExistingRings,
2131 AddRingNotInExistingFeature,
2132 // Split features
2133 SplitCannotSplitPoint,
2134 GeometryTypeHasChanged,
2135 };
2136 Q_ENUM( GeometryOperationResult )
2137
2138
2144 {
2145 AllowSelfTouchingHoles SIP_MONKEYPATCH_COMPAT_NAME( FlagAllowSelfTouchingHoles ) = 1 << 0,
2146 };
2147
2150 Q_FLAG( GeometryValidityFlags )
2151
2152
2157 {
2158 QgisInternal SIP_MONKEYPATCH_COMPAT_NAME( ValidatorQgisInternal ),
2159 Geos SIP_MONKEYPATCH_COMPAT_NAME( ValidatorGeos ),
2160 };
2161 Q_ENUM( GeometryValidationEngine )
2162
2163
2173 Q_ENUM( BufferSide )
2174
2175
2186 Q_ENUM( EndCapStyle )
2187
2188
2194 {
2195 Round SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleRound ) = 1,
2196 Miter SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleMiter ),
2197 Bevel SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleBevel ),
2198 };
2199 Q_ENUM( JoinStyle )
2200
2201
2206 enum class JoinStyle3D : int
2207 {
2208 Round = 1,
2209 Flat,
2210 CylindersAndSpheres,
2211 };
2212 Q_ENUM( JoinStyle3D )
2213
2214
2219 enum class GeosCreationFlag : int SIP_ENUM_BASETYPE( IntFlag )
2220 {
2221 RejectOnInvalidSubGeometry = 1 << 0,
2222 SkipEmptyInteriorRings = 1 << 1,
2223 };
2224 Q_ENUM( GeosCreationFlag )
2225
2226
2232 Q_FLAG( GeosCreationFlags )
2233
2239 enum class CoverageValidityResult : int
2240 {
2241 Invalid = 0,
2242 Valid = 1,
2243 Error = 2,
2244 };
2245 Q_ENUM( CoverageValidityResult )
2246
2247
2252 enum class MakeValidMethod : int
2253 {
2254 Linework = 0,
2255 Structure = 1,
2256 };
2257 Q_ENUM( MakeValidMethod )
2258
2259
2267 {
2268 NoFlags = 0,
2269 NoGeometry = 1,
2270 SubsetOfAttributes = 2,
2271 ExactIntersect = 4,
2272 IgnoreStaticNodesDuringExpressionCompilation = 8,
2273 EmbeddedSymbols = 16,
2274 };
2275 Q_ENUM( FeatureRequestFlag )
2276
2277
2285 Q_FLAG( FeatureRequestFlags )
2286
2295 {
2296 NoFilter SIP_MONKEYPATCH_COMPAT_NAME( FilterNone ),
2298 Expression SIP_MONKEYPATCH_COMPAT_NAME( FilterExpression ),
2300 };
2301 Q_ENUM( FeatureRequestFilterType )
2302
2303
2311 {
2312 NoCheck SIP_MONKEYPATCH_COMPAT_NAME( GeometryNoCheck ) = 0,
2313 SkipInvalid SIP_MONKEYPATCH_COMPAT_NAME( GeometrySkipInvalid ) = 1,
2314 AbortOnInvalid SIP_MONKEYPATCH_COMPAT_NAME( GeometryAbortOnInvalid ) = 2,
2315 };
2316 Q_ENUM( InvalidGeometryCheck )
2317
2318
2323 enum class SpatialFilterType : int
2324 {
2325 NoFilter,
2326 BoundingBox,
2327 DistanceWithin,
2328 };
2329 Q_ENUM( SpatialFilterType )
2330
2331
2336 enum class FileOperationFlag : int SIP_ENUM_BASETYPE( IntFlag )
2337 {
2338 IncludeMetadataFile = 1 << 0,
2339 IncludeStyleFile = 1 << 1,
2340 };
2341
2344 Q_FLAG( FileOperationFlags )
2345
2346
2351 enum class MapLayerProperty : int SIP_ENUM_BASETYPE( IntFlag )
2352 {
2353 UsersCannotToggleEditing = 1 << 0,
2354 IsBasemapLayer = 1 << 1,
2355 Is3DBasemapLayer = 1 << 2,
2356 };
2357
2360 Q_FLAG( MapLayerProperties )
2361
2362
2367 enum class AutoRefreshMode : int
2368 {
2369 Disabled = 0,
2370 ReloadData = 1,
2371 RedrawOnly = 2,
2372 };
2373 Q_ENUM( AutoRefreshMode )
2374
2375
2380 enum class DataProviderFlag : int SIP_ENUM_BASETYPE( IntFlag )
2381 {
2382 IsBasemapSource = 1 << 1,
2383 FastExtent2D = 1 << 2,
2384 FastExtent3D = 1 << 3,
2385 Is3DBasemapSource = 1 << 4,
2386 };
2387
2390 Q_FLAG( DataProviderFlags )
2391
2392
2399 enum class CrsType : int
2400 {
2401 Unknown,
2402 Geodetic,
2403 Geocentric,
2404 Geographic2d,
2405 Geographic3d,
2406 Vertical,
2407 Projected,
2408 Compound,
2409 Temporal,
2410 Engineering,
2411 Bound,
2412 Other,
2413 DerivedProjected,
2414 };
2415 Q_ENUM( CrsType )
2416
2417
2424 enum class CrsAxisDirection : int
2425 {
2426 North,
2427 NorthNorthEast,
2428 NorthEast,
2429 EastNorthEast,
2430 East,
2431 EastSouthEast,
2432 SouthEast,
2433 SouthSouthEast,
2434 South,
2435 SouthSouthWest,
2436 SouthWest,
2437 WestSouthWest,
2438 West,
2439 WestNorthWest,
2440 NorthWest,
2441 NorthNorthWest,
2442 GeocentricX,
2443 GeocentricY,
2444 GeocentricZ,
2447 Forward,
2448 Aft,
2449 Port,
2450 Starboard,
2451 Clockwise,
2452 CounterClockwise,
2453 ColumnPositive,
2454 ColumnNegative,
2455 RowPositive,
2456 RowNegative,
2457 DisplayRight,
2458 DisplayLeft,
2459 DisplayUp,
2460 DisplayDown,
2461 Future,
2462 Past,
2463 Towards,
2464 AwayFrom,
2465 Unspecified,
2466 };
2467 Q_ENUM( CrsAxisDirection )
2468
2469
2474 enum class CoordinateOrder : int
2475 {
2476 Default,
2477 XY,
2478 YX,
2479 };
2480 Q_ENUM( CoordinateOrder )
2481
2482
2490 {
2491 ShortString,
2492 MediumString,
2493 FullString,
2494 };
2495 Q_ENUM( CrsIdentifierType )
2496
2497
2505 {
2506 Wkt1Gdal SIP_MONKEYPATCH_COMPAT_NAME( WKT1_GDAL ),
2507 Wkt1Esri SIP_MONKEYPATCH_COMPAT_NAME( WKT1_ESRI ),
2508 Wkt2_2015 SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2015 ),
2509 Wkt2_2015Simplified SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2015_SIMPLIFIED ),
2510 Wkt2_2019 SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2019 ),
2511 Wkt2_2019Simplified SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2019_SIMPLIFIED ),
2512 Preferred SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED ) = Wkt2_2019,
2513 PreferredSimplified SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED_SIMPLIFIED ) = Wkt2_2019Simplified,
2514 PreferredGdal SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED_GDAL ) = Wkt2_2019,
2515 };
2516 Q_ENUM( CrsWktVariant )
2517
2518
2523 enum class Axis : int
2524 {
2525 X,
2526 Y,
2528 };
2529 Q_ENUM( Axis )
2530
2531
2536 enum class AnnotationItemFlag : int SIP_ENUM_BASETYPE( IntFlag )
2537 {
2538 ScaleDependentBoundingBox = 1 << 0,
2539 SupportsReferenceScale = 1 << 1,
2540 SupportsCallouts = 1 << 2,
2541 };
2542
2545 Q_FLAG( AnnotationItemFlags )
2546
2547
2553 {
2554 SpatialBounds = 0,
2555 FixedSize,
2556 RelativeToMapFrame,
2557 };
2558 Q_ENUM( AnnotationPlacementMode )
2559
2560
2565 enum class AnnotationItemGuiFlag : int SIP_ENUM_BASETYPE( IntFlag )
2566 {
2567 FlagNoCreationTools = 1 << 0,
2568 };
2569
2572 Q_FLAG( AnnotationItemGuiFlags )
2573
2574
2579 enum class AnnotationItemNodeType : int
2580 {
2581 VertexHandle,
2582 CalloutHandle,
2583 };
2584 Q_ENUM( AnnotationItemNodeType )
2585
2586
2592 {
2594 Invalid,
2595 ItemCleared,
2596 };
2597 Q_ENUM( AnnotationItemEditOperationResult )
2598
2599
2607 {
2608 Disabled SIP_MONKEYPATCH_COMPAT_NAME( NavigationOff ),
2609 Animated,
2610 FixedRange,
2611 Movie,
2612 };
2613 Q_ENUM( TemporalNavigationMode )
2614
2615
2628 Q_ENUM( AnimationState )
2629
2630
2635 enum class PlaybackOperation : int
2636 {
2637 SkipToStart,
2638 PreviousFrame,
2639 PlayReverse,
2640 Pause,
2641 PlayForward,
2642 NextFrame,
2643 SkipToEnd,
2644 };
2645 Q_ENUM( PlaybackOperation )
2646
2647
2653 {
2654 FixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ModeFixedTemporalRange ) = 0,
2655 FeatureDateTimeInstantFromField SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeInstantFromField ),
2656 FeatureDateTimeStartAndEndFromFields SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndEndFromFields ),
2657 FeatureDateTimeStartAndDurationFromFields SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndDurationFromFields ),
2658 FeatureDateTimeStartAndEndFromExpressions SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndEndFromExpressions ),
2659 RedrawLayerOnly SIP_MONKEYPATCH_COMPAT_NAME( ModeRedrawLayerOnly ),
2660 };
2661 Q_ENUM( VectorTemporalMode )
2662
2663
2669 {
2670 IncludeBeginExcludeEnd = 0,
2671 IncludeBeginIncludeEnd,
2672 };
2673 Q_ENUM( VectorTemporalLimitMode )
2674
2675
2681 {
2682 HasFixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ProviderHasFixedTemporalRange ) = 0,
2683 StoresFeatureDateTimeInstantInField SIP_MONKEYPATCH_COMPAT_NAME( ProviderStoresFeatureDateTimeInstantInField ),
2684 StoresFeatureDateTimeStartAndEndInSeparateFields SIP_MONKEYPATCH_COMPAT_NAME( ProviderStoresFeatureDateTimeStartAndEndInSeparateFields ),
2685 };
2686 Q_ENUM( VectorDataProviderTemporalMode )
2687
2688
2694 {
2695 FixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ModeFixedTemporalRange ) = 0,
2696 TemporalRangeFromDataProvider SIP_MONKEYPATCH_COMPAT_NAME( ModeTemporalRangeFromDataProvider ) = 1,
2697 RedrawLayerOnly SIP_MONKEYPATCH_COMPAT_NAME( ModeRedrawLayerOnly ) = 2,
2698 FixedRangePerBand = 3,
2699 RepresentsTemporalValues = 4,
2700 FixedDateTime = 5,
2701 };
2702 Q_ENUM( RasterTemporalMode )
2703
2704
2710 {
2711 MatchUsingWholeRange,
2712 MatchExactUsingStartOfRange,
2713 MatchExactUsingEndOfRange,
2714 FindClosestMatchToStartOfRange,
2715 FindClosestMatchToEndOfRange
2716 };
2717 Q_ENUM( TemporalIntervalMatchMethod )
2718
2719
2725 {
2726 RequestedTimesMustExactlyMatchAllAvailableTemporalRanges = 1 << 0,
2727 };
2728 Q_ENUM( RasterTemporalCapabilityFlag )
2729
2730
2737
2748 Q_ENUM( TransformDirection )
2749
2750
2756 {
2757 BallparkTransformsAreAppropriate = 1 << 0,
2758 IgnoreImpossibleTransformations = 1 << 1,
2759 };
2760 Q_ENUM( CoordinateTransformationFlag )
2761
2762
2769
2776 {
2777 Default,
2778 PreferVector,
2779 ForceVector,
2780 };
2781 Q_ENUM( RasterizedRenderingPolicy )
2782
2783
2789 {
2790 Antialiasing = 0x01,
2791 DrawEditingInfo = 0x02,
2792 ForceVectorOutput = 0x04,
2793 UseAdvancedEffects = 0x08,
2794 DrawLabeling = 0x10,
2795 UseRenderingOptimization = 0x20,
2796 DrawSelection = 0x40,
2797 DrawSymbolBounds = 0x80,
2798 RenderMapTile = 0x100,
2799 RenderPartialOutput = 0x200,
2800 RenderPreviewJob = 0x400,
2801 RenderBlocking = 0x800,
2802 LosslessImageRendering = 0x1000,
2803 Render3DMap = 0x2000,
2804 HighQualityImageTransforms = 0x4000,
2805 SkipSymbolRendering = 0x8000,
2806 ForceRasterMasks = 0x10000,
2807 RecordProfile = 0x20000,
2808 AlwaysUseGlobalMasks = 0x40000,
2809 };
2810
2813 Q_FLAG( MapSettingsFlags )
2814
2815
2821 {
2822 DrawEditingInfo = 0x01,
2823 ForceVectorOutput = 0x02,
2824 UseAdvancedEffects = 0x04,
2825 UseRenderingOptimization = 0x08,
2826 DrawSelection = 0x10,
2827 DrawSymbolBounds = 0x20,
2828 RenderMapTile = 0x40,
2829 Antialiasing = 0x80,
2830 RenderPartialOutput = 0x100,
2831 RenderPreviewJob = 0x200,
2832 RenderBlocking = 0x400,
2833 RenderSymbolPreview = 0x800,
2834 LosslessImageRendering = 0x1000,
2835 ApplyScalingWorkaroundForTextRendering = 0x2000,
2836 Render3DMap = 0x4000,
2837 ApplyClipAfterReprojection = 0x8000,
2838 RenderingSubSymbol = 0x10000,
2839 HighQualityImageTransforms = 0x20000,
2840 SkipSymbolRendering = 0x40000,
2841 RecordProfile = 0x80000,
2842 AlwaysUseGlobalMasks = 0x100000,
2843 DisableSymbolClippingToExtent = 0x200000,
2844 RenderLayerTree = 0x400000
2845 };
2846
2849 Q_FLAG( RenderContextFlags )
2850
2851
2856 enum class MapLayerRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
2857 {
2858 RenderPartialOutputs = 1 << 0,
2859 RenderPartialOutputOverPreviousCachedImage = 1 << 1,
2860 AffectsLabeling = 1 << 2,
2861 };
2862 Q_ENUM( MapLayerRendererFlag )
2863
2864
2870 Q_FLAG( MapLayerRendererFlags )
2871
2877 enum class PaintEffectFlag : int SIP_ENUM_BASETYPE( IntFlag )
2878 {
2879 RequiresRasterization = 1 << 0,
2880 };
2881 Q_ENUM( PaintEffectFlag )
2882
2883
2889 Q_FLAG( PaintEffectFlags )
2890
2891 // refs for below dox: https://github.com/qgis/QGIS/pull/1286#issuecomment-39806854
2892 // https://github.com/qgis/QGIS/pull/8573#issuecomment-445585826
2893
2899 {
2900 AlwaysOutlines SIP_MONKEYPATCH_COMPAT_NAME( TextFormatAlwaysOutlines ),
2901 AlwaysText SIP_MONKEYPATCH_COMPAT_NAME( TextFormatAlwaysText ),
2902 PreferText,
2903 };
2904 Q_ENUM( TextRenderFormat )
2905
2906
2914 {
2915 UseAllLabels = 1 << 1,
2916 UsePartialCandidates = 1 << 2,
2917 // TODO QGIS 5.0: remove
2918 RenderOutlineLabels = 1 << 3,
2919 DrawLabelRectOnly = 1 << 4,
2920 DrawCandidates = 1 << 5,
2921 DrawUnplacedLabels = 1 << 6,
2922 CollectUnplacedLabels = 1 << 7,
2923 DrawLabelMetrics = 1 << 8,
2924 };
2925 Q_ENUM( LabelingFlag )
2926
2927
2935 Q_FLAG( LabelingFlags )
2936
2945 {
2946 Version1 SIP_MONKEYPATCH_COMPAT_NAME( PlacementEngineVersion1 ),
2947 Version2 SIP_MONKEYPATCH_COMPAT_NAME( PlacementEngineVersion2 ),
2948 };
2949 Q_ENUM( LabelPlacementEngineVersion )
2950
2951
2959 {
2960 Horizontal SIP_MONKEYPATCH_COMPAT_NAME( HorizontalOrientation ),
2961 Vertical SIP_MONKEYPATCH_COMPAT_NAME( VerticalOrientation ),
2962 RotationBased SIP_MONKEYPATCH_COMPAT_NAME( RotationBasedOrientation ),
2963 };
2964 Q_ENUM( TextOrientation )
2965
2966
2974 {
2976 Point,
2978 RectangleCapHeightBased,
2979 RectangleAscentBased,
2980 };
2981 Q_ENUM( TextLayoutMode )
2982
2983
2991 {
2992 Text = 1 << 0,
2993 Buffer = 1 << 1,
2994 Background = 1 << 2,
2995 Shadow = 1 << 3,
2996 };
2997 Q_ENUM( TextComponent )
2998
2999
3004 Q_DECLARE_FLAGS( TextComponents, TextComponent )
3005 Q_FLAG( TextComponents )
3006
3021 Q_ENUM( TextHorizontalAlignment )
3022
3023
3034 {
3036 VerticalCenter SIP_MONKEYPATCH_COMPAT_NAME( AlignVCenter ),
3037 Bottom SIP_MONKEYPATCH_COMPAT_NAME( AlignBottom ),
3038 };
3039 Q_ENUM( TextVerticalAlignment )
3040
3041
3050 {
3051 Normal,
3052 SuperScript,
3053 SubScript,
3054 };
3055 Q_ENUM( TextCharacterVerticalAlignment )
3056
3057
3063 {
3064 TruncateStringWhenLineIsTooShort = 1 << 0,
3065 UseBaselinePlacement = 1 << 1,
3066 UprightCharactersOnly = 1 << 2,
3067 ExtendLineToFitText = 1 << 3,
3068 };
3069 Q_ENUM( CurvedTextFlag )
3070
3071
3077
3086 {
3087 Distance = 0,
3088 SnapToGrid = 1,
3089 Visvalingam = 2,
3090 SnappedToGridGlobal = 3,
3091 };
3092 Q_ENUM( VectorSimplificationAlgorithm )
3093
3094
3102 {
3103 NoSimplification = 0,
3104 GeometrySimplification = 1,
3105 AntialiasingSimplification = 2,
3106 FullSimplification = 3,
3107 };
3108 Q_ENUM( VectorRenderingSimplificationFlag )
3109
3110
3119
3126 {
3127 Generic,
3128 ShadowOffset,
3129 BlurSize,
3130 GlowSpread,
3131 };
3132 Q_ENUM( RenderSubcomponentProperty )
3133
3134
3140 {
3141 SymbolLayer,
3142 Label,
3143 };
3144 Q_ENUM( SelectiveMaskSourceType )
3145
3146
3151 {
3152 Segment SIP_MONKEYPATCH_COMPAT_NAME( SegmentVertex ) = 1,
3153 Curve SIP_MONKEYPATCH_COMPAT_NAME( CurveVertex ) = 2,
3154 ControlPoint SIP_MONKEYPATCH_COMPAT_NAME( ControlPointVertex ) = 3,
3155 };
3156 Q_ENUM( VertexType )
3157
3158
3166 {
3167 Square,
3168 Diamond,
3169 Pentagon,
3170 Hexagon,
3171 Triangle,
3172 EquilateralTriangle,
3173 Star,
3174 Arrow,
3175 Circle,
3176 Cross,
3177 CrossFill,
3178 Cross2,
3179 Line,
3180 ArrowHead,
3181 ArrowHeadFilled,
3182 SemiCircle,
3183 ThirdCircle,
3184 QuarterCircle,
3185 QuarterSquare,
3186 HalfSquare,
3187 DiagonalHalfSquare,
3188 RightHalfTriangle,
3189 LeftHalfTriangle,
3190 Octagon,
3191 SquareWithCorners,
3192 AsteriskFill,
3193 HalfArc,
3194 ThirdArc,
3195 QuarterArc,
3196 ParallelogramRight,
3197 ParallelogramLeft,
3198 Trapezoid,
3199 Shield,
3200 DiamondStar,
3201 Heart,
3202 Decagon,
3203 RoundedSquare,
3204 };
3205 Q_ENUM( MarkerShape )
3206
3207
3215 {
3216 Interval = 1 << 0,
3217 Vertex = 1 << 1,
3218 LastVertex = 1 << 2,
3219 FirstVertex = 1 << 3,
3220 CentralPoint = 1 << 4,
3221 CurvePoint = 1 << 5,
3222 SegmentCenter = 1 << 6,
3223 InnerVertices = 1 << 7,
3224 };
3225 Q_ENUM( MarkerLinePlacement )
3227 Q_FLAG( MarkerLinePlacements )
3228
3235 {
3236 IntervalCartesian2D = 1 << 0,
3237 IntervalZ = 1 << 1,
3238 IntervalM = 1 << 2,
3239 Vertex = 1 << 3,
3240 };
3241 Q_ENUM( LinearReferencingPlacement )
3242
3243
3249 {
3250 CartesianDistance2D,
3251 Z,
3252 M,
3253 };
3254 Q_ENUM( LinearReferencingLabelSource )
3255
3256
3264 {
3265 SimpleTwoColor,
3266 ColorRamp,
3267 };
3268 Q_ENUM( GradientColorSource )
3269
3270
3283 Q_ENUM( GradientType )
3284
3285
3293 {
3294 Feature,
3295 Viewport,
3296 };
3297 Q_ENUM( SymbolCoordinateReference )
3298
3299
3313 Q_ENUM( GradientSpread )
3314
3315
3323 {
3324 Absolute SIP_MONKEYPATCH_COMPAT_NAME( AbsoluteCount ),
3325 DensityBased SIP_MONKEYPATCH_COMPAT_NAME( DensityBasedCount ),
3326 };
3327 Q_ENUM( PointCountMethod )
3328
3329
3334 enum class MarkerClipMode : int
3335 {
3336 NoClipping,
3337 Shape,
3338 CentroidWithin,
3339 CompletelyWithin,
3340 };
3341 Q_ENUM( MarkerClipMode )
3342
3343
3348 enum class LineClipMode : int
3349 {
3350 ClipPainterOnly,
3351 ClipToIntersection,
3352 NoClipping,
3353 };
3354 Q_ENUM( LineClipMode )
3355
3356
3362 {
3363 NoRule,
3364 FullDash,
3365 HalfDash,
3366 FullGap,
3367 HalfGap,
3368 };
3369 Q_ENUM( DashPatternLineEndingRule )
3370
3371
3377 {
3378 ScaleBothDashAndGap,
3379 ScaleDashOnly,
3380 ScaleGapOnly,
3381 };
3382 Q_ENUM( DashPatternSizeAdjustment )
3383
3384
3396 Q_ENUM( GraduatedMethod )
3397
3398
3404 {
3405 NoLabels,
3406 EveryLabel,
3407 FirstLabel,
3408 LastLabel,
3409 FirstAndLastLabels,
3410 };
3411 Q_ENUM( PlotAxisSuffixPlacement )
3412
3413
3414
3419 enum class PlotAxisType
3420 {
3421 Interval,
3422 Categorical,
3423 };
3424 Q_ENUM( PlotAxisType )
3425
3426
3431 enum class PieChartLabelType : int
3432 {
3433 NoLabels,
3434 Categories,
3435 Values,
3436 };
3437 Q_ENUM( PieChartLabelType )
3438
3439
3443 enum class DpiMode
3444 {
3445 All = 7,
3446 Off = 0,
3447 QGIS = 1,
3448 UMN = 2,
3449 GeoServer = 4,
3450 };
3451 Q_ENUM( DpiMode )
3452
3453
3458 {
3459 Undefined = 0,
3460 StandardDpi = 1,
3461 HighDpi = 2,
3462 };
3463 Q_ENUM( TilePixelRatio )
3464
3465 // NOTE -- the hardcoded numbers here must match QFont::Capitalization!
3466
3467
3475 {
3476 MixedCase = 0,
3477 AllUppercase = 1,
3478 AllLowercase = 2,
3479 ForceFirstLetterToCapital = 4,
3480 SmallCaps = 5,
3481 TitleCase = 1004,
3482 UpperCamelCase = 1005,
3483 AllSmallCaps = 1006,
3484 };
3485 Q_ENUM( Capitalization )
3486
3487
3492 enum class TextRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
3493 {
3494 WrapLines = 1 << 0,
3495 };
3496 Q_ENUM( TextRendererFlag )
3498 Q_FLAG( TextRendererFlags )
3499
3506 {
3507 MapBox,
3508 Esri,
3509 };
3511
3518 {
3519 Clockwise,
3520 CounterClockwise,
3521 NoOrientation,
3522 };
3523 Q_ENUM( AngularDirection )
3524
3525
3530 enum class RendererUsage : int
3531 {
3532 View,
3533 Export,
3534 Unknown,
3535 };
3536 Q_ENUM( RendererUsage )
3537
3538
3543 enum class MapCanvasFlag : int SIP_ENUM_BASETYPE( IntFlag )
3544 {
3545 ShowMainAnnotationLayer = 1 << 0,
3546 };
3547 Q_ENUM( MapCanvasFlag )
3548
3549
3554 Q_DECLARE_FLAGS( MapCanvasFlags, MapCanvasFlag )
3555 Q_FLAG( MapCanvasFlags )
3556
3562 enum class ViewSyncModeFlag : int SIP_ENUM_BASETYPE( IntFlag )
3563 {
3564 Sync3DTo2D = 1 << 0,
3565 Sync2DTo3D = 1 << 1,
3566 };
3567 Q_ENUM( ViewSyncModeFlag )
3569
3576 {
3577 Always,
3578 WhenOutsideVisibleExtent,
3579 Never,
3580 };
3581 Q_ENUM( MapRecenteringMode )
3582
3583
3588 enum class HistoryProviderBackend : int SIP_ENUM_BASETYPE( IntFlag )
3589 {
3590 LocalProfile = 1 << 0,
3591// Project = 1 << 1, //!< QGIS Project (not yet implemented)
3592 };
3593 Q_ENUM( HistoryProviderBackend )
3595 Q_FLAG( HistoryProviderBackends )
3596
3602 enum class QueryStorageBackend : int
3603 {
3604 LocalProfile,
3605 CurrentProject,
3606 };
3607 Q_ENUM( QueryStorageBackend )
3608
3609
3617 {
3618 MapLayer SIP_MONKEYPATCH_COMPAT_NAME( TypeMapLayer ) = -2,
3619 VectorAnyGeometry SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorAnyGeometry ) = -1,
3620 VectorPoint SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorPoint ) = 0,
3621 VectorLine SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorLine ) = 1,
3622 VectorPolygon SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorPolygon ) = 2,
3623 Raster SIP_MONKEYPATCH_COMPAT_NAME( TypeRaster ) = 3,
3624 File SIP_MONKEYPATCH_COMPAT_NAME( TypeFile ) = 4,
3625 Vector SIP_MONKEYPATCH_COMPAT_NAME( TypeVector ) = 5,
3626 Mesh SIP_MONKEYPATCH_COMPAT_NAME( TypeMesh ) = 6,
3627 Plugin SIP_MONKEYPATCH_COMPAT_NAME( TypePlugin ) = 7,
3628 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( TypePointCloud ) = 8,
3629 Annotation SIP_MONKEYPATCH_COMPAT_NAME( TypeAnnotation ) = 9,
3630 VectorTile SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorTile ) = 10,
3631 TiledScene = 11
3632 };
3633 Q_ENUM( ProcessingSourceType )
3634
3635
3636
3644 {
3645 DeemphasiseSearchResults SIP_MONKEYPATCH_COMPAT_NAME( FlagDeemphasiseSearchResults ) = 1 << 1,
3646 CompatibleWithVirtualRaster SIP_MONKEYPATCH_COMPAT_NAME( FlagCompatibleWithVirtualRaster ) = 1 << 2,
3647 };
3649
3658 Q_FLAG( ProcessingProviderFlags )
3659
3660
3668 {
3669 HideFromToolbox SIP_MONKEYPATCH_COMPAT_NAME( FlagHideFromToolbox ) = 1 << 1,
3670 HideFromModeler SIP_MONKEYPATCH_COMPAT_NAME( FlagHideFromModeler ) = 1 << 2,
3671 SupportsBatch SIP_MONKEYPATCH_COMPAT_NAME( FlagSupportsBatch ) = 1 << 3,
3672 CanCancel SIP_MONKEYPATCH_COMPAT_NAME( FlagCanCancel ) = 1 << 4,
3673 RequiresMatchingCrs SIP_MONKEYPATCH_COMPAT_NAME( FlagRequiresMatchingCrs ) = 1 << 5,
3674 NoThreading SIP_MONKEYPATCH_COMPAT_NAME( FlagNoThreading ) = 1 << 6,
3675 DisplayNameIsLiteral SIP_MONKEYPATCH_COMPAT_NAME( FlagDisplayNameIsLiteral ) = 1 << 7,
3676 SupportsInPlaceEdits SIP_MONKEYPATCH_COMPAT_NAME( FlagSupportsInPlaceEdits ) = 1 << 8,
3677 KnownIssues SIP_MONKEYPATCH_COMPAT_NAME( FlagKnownIssues ) = 1 << 9,
3678 CustomException SIP_MONKEYPATCH_COMPAT_NAME( FlagCustomException ) = 1 << 10,
3679 PruneModelBranchesBasedOnAlgorithmResults SIP_MONKEYPATCH_COMPAT_NAME( FlagPruneModelBranchesBasedOnAlgorithmResults ) = 1 << 11,
3680 SkipGenericModelLogging SIP_MONKEYPATCH_COMPAT_NAME( FlagSkipGenericModelLogging ) = 1 << 12,
3681 NotAvailableInStandaloneTool SIP_MONKEYPATCH_COMPAT_NAME( FlagNotAvailableInStandaloneTool ) = 1 << 13,
3682 RequiresProject SIP_MONKEYPATCH_COMPAT_NAME( FlagRequiresProject ) = 1 << 14,
3683 SecurityRisk = 1 << 15,
3684 Deprecated SIP_MONKEYPATCH_COMPAT_NAME( FlagDeprecated ) = HideFromToolbox | HideFromModeler,
3685 };
3687
3696 Q_FLAG( ProcessingAlgorithmFlags )
3697
3698
3704 {
3705 RegeneratesPrimaryKey = 1 << 0,
3706 RegeneratesPrimaryKeyInSomeScenarios = 1 << 1,
3707 RespectsEllipsoid = 1 << 2,
3708 };
3709 Q_ENUM( ProcessingAlgorithmDocumentationFlag )
3710
3711
3718
3728 {
3729 NotAvailable,
3730 Available,
3731 };
3732 Q_ENUM( ProcessingPropertyAvailability )
3733
3734
3742 {
3743 DefaultLevel = 0,
3744 Verbose,
3745 ModelDebug,
3746 };
3747 Q_ENUM( ProcessingLogLevel )
3748
3749
3757 {
3758 Standard,
3759 Batch,
3760 Modeler,
3761 };
3762 Q_ENUM( ProcessingMode )
3763
3764
3772 {
3773 OverrideDefaultGeometryCheck SIP_MONKEYPATCH_COMPAT_NAME( FlagOverrideDefaultGeometryCheck ) = 1 << 0,
3774 CreateIndividualOutputPerInputFeature SIP_MONKEYPATCH_COMPAT_NAME( FlagCreateIndividualOutputPerInputFeature ) = 1 << 1,
3775 };
3776 Q_ENUM( ProcessingFeatureSourceDefinitionFlag )
3777
3778
3787
3796 {
3797 SkipGeometryValidityChecks SIP_MONKEYPATCH_COMPAT_NAME( FlagSkipGeometryValidityChecks ) = 1 << 1,
3798 };
3799 Q_ENUM( ProcessingFeatureSourceFlag )
3800
3801
3810
3822 {
3823 ExposeToModeler = 1
3824 };
3825 Q_ENUM( ProcessingParameterTypeFlag )
3826
3827
3839
3848 {
3849 Advanced SIP_MONKEYPATCH_COMPAT_NAME( FlagAdvanced ) = 1 << 1,
3850 Hidden SIP_MONKEYPATCH_COMPAT_NAME( FlagHidden ) = 1 << 2,
3851 Optional SIP_MONKEYPATCH_COMPAT_NAME( FlagOptional ) = 1 << 3,
3852 IsModelOutput SIP_MONKEYPATCH_COMPAT_NAME( FlagIsModelOutput ) = 1 << 4,
3853 };
3854 Q_ENUM( ProcessingParameterFlag )
3855
3856
3864 Q_FLAG( ProcessingParameterFlags )
3865
3878 Q_ENUM( ProcessingFileParameterBehavior )
3879
3880
3892 Q_ENUM( ProcessingNumberParameterType )
3893
3894
3902 {
3903 Any = -1,
3904 Numeric = 0,
3905 String = 1,
3906 DateTime = 2,
3907 Binary = 3,
3908 Boolean = 4,
3909 };
3910 Q_ENUM( ProcessingFieldParameterDataType )
3911
3912
3925 Q_ENUM( ProcessingDateTimeParameterDataType )
3926
3927
3933 {
3934 ModelParameter,
3935 ChildOutput,
3936 StaticValue,
3937 Expression,
3938 ExpressionText,
3939 ModelOutput,
3940 };
3941 Q_ENUM( ProcessingModelChildParameterSource )
3942
3943
3949 {
3950 NotExecuted,
3952 Failed,
3953 };
3954 Q_ENUM( ProcessingModelChildAlgorithmExecutionStatus )
3955
3956
3964 {
3965 Vertices,
3966 StructureLines,
3967 BreakLines
3968 };
3969 Q_ENUM( ProcessingTinInputLayerType )
3970
3971
3981 Q_ENUM( CrsDefinitionFormat )
3982
3983
3991 enum class FieldDomainSplitPolicy : int
3992 {
3993 DefaultValue,
3994 Duplicate,
3995 GeometryRatio,
3996 UnsetField,
3997 };
3998 Q_ENUM( FieldDomainSplitPolicy )
3999
4000
4008 enum class FieldDomainMergePolicy : int
4009 {
4010 DefaultValue,
4011 Sum,
4012 GeometryWeighted,
4013 UnsetField,
4014 LargestGeometry,
4015 MinimumValue,
4016 MaximumValue,
4017 SetToNull,
4018 };
4019 Q_ENUM( FieldDomainMergePolicy )
4020
4021
4028 enum class FieldDuplicatePolicy : int
4029 {
4030 DefaultValue,
4031 Duplicate,
4032 UnsetField,
4033 };
4034 Q_ENUM( FieldDuplicatePolicy )
4035
4036
4041 enum class FieldDomainType : int
4042 {
4043 Coded,
4044 Range,
4045 Glob,
4046 };
4047 Q_ENUM( FieldDomainType )
4048
4049
4054 enum class TransactionMode : int
4055 {
4056 Disabled = 0,
4057 AutomaticGroups = 1,
4058 BufferedGroups = 2,
4059 };
4060 Q_ENUM( TransactionMode )
4061
4062
4067 enum class AltitudeClamping : int
4068 {
4069 Absolute,
4070 Relative,
4071 Terrain,
4072 };
4073 Q_ENUM( AltitudeClamping )
4074
4075
4080 enum class AltitudeBinding : int
4081 {
4082 Vertex,
4083 Centroid,
4084 };
4085 Q_ENUM( AltitudeBinding )
4086
4087
4092 enum class RangeLimits : int
4093 {
4094 IncludeBoth = 0,
4095 IncludeLowerExcludeUpper,
4096 ExcludeLowerIncludeUpper,
4097 ExcludeBoth,
4098 };
4099 Q_ENUM( RangeLimits )
4100
4101
4106 enum class RasterElevationMode : int
4107 {
4108 FixedElevationRange = 0,
4109 RepresentsElevationSurface = 1,
4110 FixedRangePerBand = 2,
4111 DynamicRangePerBand = 3,
4112 };
4113 Q_ENUM( RasterElevationMode )
4114
4115
4120 enum class MeshElevationMode : int
4121 {
4122 FixedElevationRange = 0,
4123 FromVertices = 1,
4124 FixedRangePerGroup = 2,
4125 };
4126 Q_ENUM( MeshElevationMode )
4127
4128
4134 {
4135 NoConstraint,
4136 Perpendicular,
4137 Parallel
4138 };
4139 Q_ENUM( BetweenLineConstraint )
4140
4141
4146 enum class LineExtensionSide : int
4147 {
4148 BeforeVertex,
4149 AfterVertex,
4150 NoVertex,
4151 };
4152 Q_ENUM( LineExtensionSide )
4153
4154
4155
4159 enum class CadConstraintType : int
4160 {
4161 Generic,
4162 Angle,
4163 Distance,
4164 XCoordinate,
4165 YCoordinate,
4166 ZValue,
4167 MValue,
4168 };
4169 Q_ENUM( CadConstraintType )
4170
4171
4176 {
4177 Hidden,
4178 Cartesian,
4179 Ellipsoidal,
4180 };
4181 Q_ENUM( CadMeasurementDisplayType )
4182
4183
4188 enum class ProjectFlag : int SIP_ENUM_BASETYPE( IntFlag )
4189 {
4190 EvaluateDefaultValuesOnProviderSide = 1 << 0,
4191 TrustStoredLayerStatistics = 1 << 1,
4192 RememberLayerEditStatusBetweenSessions = 1 << 2,
4193 RememberAttributeTableWindowsBetweenSessions = 1 << 3,
4194 };
4195 Q_ENUM( ProjectFlag )
4196 Q_DECLARE_FLAGS( ProjectFlags, ProjectFlag )
4197 Q_FLAG( ProjectFlags )
4198
4204 enum class PlotToolFlag : int SIP_ENUM_BASETYPE( IntFlag )
4205 {
4206 ShowContextMenu = 1 << 0,
4207 };
4208 Q_ENUM( PlotToolFlag )
4209 Q_DECLARE_FLAGS( PlotToolFlags, PlotToolFlag )
4210 Q_FLAG( PlotToolFlags )
4211
4212
4220 enum class Point3DShape : int
4221 {
4222 Cylinder,
4223 Sphere,
4224 Cone,
4225 Cube,
4226 Torus,
4227 Plane,
4228 ExtrudedText,
4229 Model,
4230 Billboard,
4231 };
4232 Q_ENUM( Point3DShape )
4233
4234
4239 enum class LightSourceType : int
4240 {
4241 Point,
4242 Directional,
4243 };
4244 Q_ENUM( LightSourceType )
4245
4246
4251 enum class NavigationMode : int
4252 {
4253 TerrainBased,
4254 Walk,
4255 GlobeTerrainBased
4256 };
4257 Q_ENUM( NavigationMode )
4258
4259
4264 enum class SceneMode : int
4265 {
4266 Local,
4267 Globe
4268 };
4269 Q_ENUM( SceneMode )
4270
4271
4276 enum class VerticalAxisInversion : int
4277 {
4278 Never,
4279 WhenDragging,
4280 Always,
4281 };
4282 Q_ENUM( VerticalAxisInversion )
4283
4284
4290 {
4291 Line,
4292 FillBelow,
4293 FillAbove,
4294 };
4296
4302 enum class VectorProfileType : int
4303 {
4304 IndividualFeatures,
4305 ContinuousSurface,
4306 };
4308
4314 enum class PointCloudProfileType : int
4315 {
4316 IndividualPoints,
4317 TriangulatedSurface,
4318 };
4320
4326 enum class ProfileGeneratorFlag : int SIP_ENUM_BASETYPE( IntFlag )
4327 {
4328 RespectsMaximumErrorMapUnit = 1 << 0,
4329 RespectsDistanceRange = 1 << 1,
4330 RespectsElevationRange = 1 << 2,
4331 };
4332 Q_ENUM( ProfileGeneratorFlag )
4334 Q_FLAG( ProfileGeneratorFlags )
4335
4341 enum class ProfileExportType : int
4342 {
4343 Features3D,
4344 Profile2D,
4345 DistanceVsElevationTable,
4346 };
4348
4355 {
4356 Square,
4357 Circle,
4358 };
4359 Q_ENUM( PointCloudSymbol )
4360
4361
4367 {
4368 Default,
4369 BottomToTop,
4370 TopToBottom,
4371 };
4372 Q_ENUM( PointCloudDrawOrder )
4373
4374
4382 {
4383 AllowIntersections,
4384 AvoidIntersectionsCurrentLayer,
4385 AvoidIntersectionsLayers,
4386 };
4387 Q_ENUM( AvoidIntersectionsMode )
4388
4389
4397 {
4398 Qgz,
4399 Qgs,
4400 };
4401 Q_ENUM( ProjectFileFormat )
4402
4403
4411 {
4412 DontResolveLayers SIP_MONKEYPATCH_COMPAT_NAME( FlagDontResolveLayers ) = 1 << 0,
4413 DontLoadLayouts SIP_MONKEYPATCH_COMPAT_NAME( FlagDontLoadLayouts ) = 1 << 1,
4414 TrustLayerMetadata SIP_MONKEYPATCH_COMPAT_NAME( FlagTrustLayerMetadata ) = 1 << 2,
4415 DontStoreOriginalStyles SIP_MONKEYPATCH_COMPAT_NAME( FlagDontStoreOriginalStyles ) = 1 << 3,
4416 DontLoad3DViews SIP_MONKEYPATCH_COMPAT_NAME( FlagDontLoad3DViews ) = 1 << 4,
4417 DontLoadProjectStyles = 1 << 5,
4418 ForceReadOnlyLayers = 1 << 6,
4419 DontUpgradeAnnotations = 1 << 7,
4420 };
4421 Q_ENUM( ProjectReadFlag )
4422
4423
4431 Q_FLAG( ProjectReadFlags )
4432
4441 enum class ProjectCapability : int SIP_ENUM_BASETYPE( IntFlag )
4442 {
4443 ProjectStyles = 1 << 0,
4444 };
4445 Q_ENUM( ProjectCapability )
4446
4447
4453 Q_FLAG( ProjectCapabilities )
4454
4461 {
4462 Vector,
4463 Raster,
4464 RasterDem,
4465 GeoJson,
4466 Image,
4467 Video,
4468 Unknown,
4469 };
4470 Q_ENUM( MapBoxGlStyleSourceType )
4471
4472
4480 {
4481 FeatureServer SIP_MONKEYPATCH_COMPAT_NAME( FeatureService ),
4482 MapServer SIP_MONKEYPATCH_COMPAT_NAME( MapService ),
4483 ImageServer SIP_MONKEYPATCH_COMPAT_NAME( ImageService ),
4484 GlobeServer,
4485 GPServer,
4486 GeocodeServer,
4487 Unknown,
4488 SceneServer,
4489 };
4490 Q_ENUM( ArcGisRestServiceType )
4491
4492
4500 {
4501 Normal,
4502 Generated,
4503 };
4504 Q_ENUM( RelationshipType )
4505
4506
4514 {
4515 Association,
4516 Composition,
4517 };
4518 Q_ENUM( RelationshipStrength )
4519
4520
4526 {
4527 OneToOne,
4528 OneToMany,
4529 ManyToOne,
4530 ManyToMany,
4531 };
4532 Q_ENUM( RelationshipCardinality )
4533
4534
4539 enum class RelationshipCapability : int SIP_ENUM_BASETYPE( IntFlag )
4540 {
4541 MultipleFieldKeys = 1 << 0,
4542 ForwardPathLabel = 1 << 1,
4543 BackwardPathLabel = 1 << 2,
4544 };
4545 Q_ENUM( RelationshipCapability )
4546
4547
4553 Q_FLAG( RelationshipCapabilities )
4554
4560 enum class CoordinateDisplayType : int
4561 {
4562 MapCrs,
4563 MapGeographic,
4564 CustomCrs,
4565 };
4566 Q_ENUM( CoordinateDisplayType )
4567
4568
4573 enum class SettingsOrigin : int
4574 {
4575 Any,
4576 Global,
4577 Local,
4578 };
4579 Q_ENUM( SettingsOrigin )
4580
4581
4586 enum class ScriptLanguage : int
4587 {
4588 Css,
4589 QgisExpression,
4590 Html,
4591 JavaScript,
4592 Json,
4593 Python,
4594 R,
4595 Sql,
4596 Batch,
4597 Bash,
4598 Unknown,
4599 };
4600 Q_ENUM( ScriptLanguage )
4601
4602
4610 {
4611 Reformat = 1 << 0,
4612 CheckSyntax = 1 << 1,
4613 ToggleComment = 1 << 2,
4614 };
4615 Q_ENUM( ScriptLanguageCapability )
4616
4617
4624
4631 {
4632 AboveInsertionPoint,
4633 TopOfTree,
4634 OptimalInInsertionGroup,
4635 };
4636 Q_ENUM( LayerTreeInsertionMethod )
4637
4638
4643 enum class LayerTreeFilterFlag : int SIP_ENUM_BASETYPE( IntFlag )
4644 {
4645 SkipVisibilityCheck = 1 << 0,
4646 };
4647 Q_ENUM( LayerTreeFilterFlag )
4648
4649
4655 Q_FLAG( LayerTreeFilterFlags )
4656
4662 enum class MapLayerLegendFlag : int SIP_ENUM_BASETYPE( IntFlag )
4663 {
4664 ExcludeByDefault = 1 << 0,
4665 };
4666 Q_ENUM( MapLayerLegendFlag )
4667
4668
4674 Q_FLAG( MapLayerLegendFlags )
4675
4684 {
4685 Undefined,
4686 Hidden,
4687 Title,
4688 Group,
4689 Subgroup,
4690 Symbol,
4691 SymbolLabel,
4692 };
4693 // !!! WARNING: If adding new values to this enum, make sure you update QgsLegendSettings constructor accordingly!!
4694 Q_ENUM( LegendComponent )
4695
4696
4701 enum class LegendSyncMode : int
4702 {
4703 AllProjectLayers,
4704 VisibleLayers,
4705 Manual,
4706 };
4707 Q_ENUM( LegendSyncMode )
4708
4709
4716 enum class LegendJsonRenderFlag : int SIP_ENUM_BASETYPE( IntFlag )
4717 {
4718 ShowRuleDetails = 1 << 0,
4719 };
4720 Q_ENUM( LegendJsonRenderFlag )
4722 Q_FLAG( LegendJsonRenderFlags )
4723
4731 enum class ActionType : int
4732 {
4733 Invalid,
4734 MapLayerAction,
4735 AttributeAction
4736 };
4737 Q_ENUM( ActionType )
4738
4739
4746 enum class MapLayerActionTarget : int SIP_ENUM_BASETYPE( IntFlag )
4747 {
4748 Layer = 1 << 0,
4749 SingleFeature = 1 << 1,
4750 MultipleFeatures = 1 << 2,
4751 AllActions = Layer | SingleFeature | MultipleFeatures
4752 };
4753 Q_ENUM( MapLayerActionTarget )
4754
4755
4763 Q_FLAG( MapLayerActionTargets )
4764
4772 enum class MapLayerActionFlag : int SIP_ENUM_BASETYPE( IntFlag )
4773 {
4774 EnabledOnlyWhenEditable = 1 << 1,
4775 EnableOnlyWhenHasGeometry = 1 << 2,
4776 };
4777 Q_ENUM( MapLayerActionFlag )
4778
4779
4787 Q_FLAG( MapLayerActionFlags )
4788
4797 {
4798 Generic,
4799 GenericPython,
4800 Mac,
4801 Windows,
4802 Unix,
4803 OpenUrl,
4804 SubmitUrlEncoded,
4805 SubmitUrlMultipart,
4806 };
4807 Q_ENUM( AttributeActionType )
4808
4809
4815 {
4816 Created,
4817 Published,
4818 Revised,
4819 Superseded,
4820 };
4821 Q_ENUM( MetadataDateType )
4822
4823
4832
4834 {
4835 Undefined SIP_MONKEYPATCH_COMPAT_NAME( UndefinedColorInterpretation ) = 0,
4836 GrayIndex = 1,
4837 PaletteIndex = 2,
4838 RedBand = 3,
4839 GreenBand = 4,
4840 BlueBand = 5,
4841 AlphaBand = 6,
4842 HueBand = 7,
4843 SaturationBand = 8,
4844 LightnessBand = 9,
4845 CyanBand = 10,
4846 MagentaBand = 11,
4847 YellowBand = 12,
4848 BlackBand = 13,
4849 YCbCr_YBand = 14,
4850 YCbCr_CbBand = 15,
4851 YCbCr_CrBand = 16,
4852 ContinuousPalette = 17,
4853
4854 // Note: values between PanBand and SAR_P_Band match additions done in
4855 // GDAL 3.10, except that the numeric values of the constant don't match GDAL ones
4856
4857 PanBand = 18,
4858 CoastalBand = 19,
4859 RedEdgeBand = 20,
4860 NIRBand = 21,
4861 SWIRBand = 22,
4862 MWIRBand = 23,
4863 LWIRBand = 24,
4864 TIRBand = 25,
4865 OtherIRBand = 26,
4866 SAR_Ka_Band = 27,
4867 SAR_K_Band = 28,
4868 SAR_Ku_Band = 30,
4869 SAR_X_Band = 31,
4870 SAR_C_Band = 32,
4871 SAR_S_Band = 33,
4872 SAR_L_Band = 34,
4873 SAR_P_Band = 35,
4874 };
4875 Q_ENUM( RasterColorInterpretation )
4876
4877
4885 {
4886 GrayOrUndefined,
4887 Palette,
4888 MultiBand SIP_MONKEYPATCH_COMPAT_NAME( Multiband ),
4889 SingleBandColorData SIP_MONKEYPATCH_COMPAT_NAME( ColorLayer ),
4890 };
4891 Q_ENUM( RasterLayerType )
4892
4893
4901 {
4902 Undefined SIP_MONKEYPATCH_COMPAT_NAME( UndefinedDrawingStyle ),
4903 SingleBandGray,
4904 SingleBandPseudoColor,
4905 PalettedColor,
4906 PalettedSingleBandGray,
4907 PalettedSingleBandPseudoColor,
4908 PalettedMultiBandColor,
4909 MultiBandSingleBandGray,
4910 MultiBandSingleBandPseudoColor,
4911 MultiBandColor,
4912 SingleBandColorData SIP_MONKEYPATCH_COMPAT_NAME( SingleBandColorDataStyle ),
4913 };
4914 Q_ENUM( RasterDrawingStyle )
4915
4916
4923 enum class RasterPyramidFormat SIP_MONKEYPATCH_SCOPEENUM_UNNEST( QgsRaster, RasterPyramidsFormat ) : int
4924 {
4925 GeoTiff SIP_MONKEYPATCH_COMPAT_NAME( PyramidsGTiff ) = 0,
4926 Internal SIP_MONKEYPATCH_COMPAT_NAME( PyramidsInternal ) = 1,
4927 Erdas SIP_MONKEYPATCH_COMPAT_NAME( PyramidsErdas ) = 2
4928 };
4929 Q_ENUM( RasterPyramidFormat )
4930
4931
4939 {
4940 No SIP_MONKEYPATCH_COMPAT_NAME( PyramidsFlagNo ) = 0,
4941 Yes SIP_MONKEYPATCH_COMPAT_NAME( PyramidsFlagYes ) = 1,
4942 CopyExisting SIP_MONKEYPATCH_COMPAT_NAME( PyramidsCopyExisting ) = 2
4943 };
4944 Q_ENUM( RasterBuildPyramidOption )
4945
4946
4954 {
4955 Undefined SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatUndefined ) = 0,
4956 Value SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatValue ) = 1,
4957 Text SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatText ) = 1 << 1,
4958 Html SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatHtml ) = 1 << 2,
4959 Feature SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatFeature ) = 1 << 3,
4960 };
4961 Q_ENUM( RasterIdentifyFormat )
4962
4963 // TODO QGIS 5 -- remove NoCapabilities and rely on RasterInterfaceCapabilities() instead
4964 // remove deprecated members
4965 // Remove "Identify" member, and replace with combinations of IdentifyValue/IdentifyText/etc
4966
4967
4975 {
4976 NoCapabilities = 0,
4977 Size = 1 << 1,
4978 Create = 1 << 2,
4979 Remove = 1 << 3,
4980 BuildPyramids = 1 << 4,
4981 Identify = 1 << 5,
4982 IdentifyValue = 1 << 6,
4983 IdentifyText = 1 << 7,
4984 IdentifyHtml = 1 << 8,
4985 IdentifyFeature = 1 << 9,
4986 Prefetch = 1 << 10,
4987 };
4988 Q_ENUM( RasterInterfaceCapability )
4989
4990
4997
4998 // TODO QGIS 5 -- remove NoProviderCapabilities and rely on RasterProviderCapabilities() instead
4999
5008 {
5009 NoProviderCapabilities = 0,
5010 ReadLayerMetadata = 1 << 1,
5011 WriteLayerMetadata = 1 << 2,
5012 ProviderHintBenefitsFromResampling = 1 << 3,
5013 ProviderHintCanPerformProviderResampling = 1 << 4,
5014 ReloadData = 1 << 5,
5015 DpiDependentData = 1 << 6,
5016 NativeRasterAttributeTable = 1 << 7,
5017 BuildPyramids = 1 << 8,
5018 };
5019 Q_ENUM( RasterProviderCapability )
5020
5021
5030
5037 {
5038 HighestElevation,
5039 NewerElevation,
5040 };
5041 Q_ENUM( ElevationMapCombineMethod )
5042
5043
5052 {
5053 Normal SIP_MONKEYPATCH_COMPAT_NAME( BlendNormal ),
5054 Lighten SIP_MONKEYPATCH_COMPAT_NAME( BlendLighten ),
5055 Screen SIP_MONKEYPATCH_COMPAT_NAME( BlendScreen ),
5056 Dodge SIP_MONKEYPATCH_COMPAT_NAME( BlendDodge ),
5057 Addition SIP_MONKEYPATCH_COMPAT_NAME( BlendAddition ),
5058 Darken SIP_MONKEYPATCH_COMPAT_NAME( BlendDarken ),
5059 Multiply SIP_MONKEYPATCH_COMPAT_NAME( BlendMultiply ),
5061 Overlay SIP_MONKEYPATCH_COMPAT_NAME( BlendOverlay ),
5062 SoftLight SIP_MONKEYPATCH_COMPAT_NAME( BlendSoftLight ),
5063 HardLight SIP_MONKEYPATCH_COMPAT_NAME( BlendHardLight ),
5064 Difference SIP_MONKEYPATCH_COMPAT_NAME( BlendDifference ),
5065 Subtract SIP_MONKEYPATCH_COMPAT_NAME( BlendSubtract ),
5066 Source SIP_MONKEYPATCH_COMPAT_NAME( BlendSource ),
5067 DestinationOver SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationOver ),
5068 Clear SIP_MONKEYPATCH_COMPAT_NAME( BlendClear ),
5069 Destination SIP_MONKEYPATCH_COMPAT_NAME( BlendDestination ),
5070 SourceIn SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceIn ),
5071 DestinationIn SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationIn ),
5072 SourceOut SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceOut ),
5073 DestinationOut SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationOut ),
5074 SourceAtop SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceAtop ),
5075 DestinationAtop SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationAtop ),
5077 };
5078 Q_ENUM( BlendMode )
5079
5080
5088 {
5089 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownSystem ) = 0,
5090 Metric SIP_MONKEYPATCH_COMPAT_NAME( MetricSystem ),
5091 Imperial SIP_MONKEYPATCH_COMPAT_NAME( ImperialSystem ),
5092 USCS SIP_MONKEYPATCH_COMPAT_NAME( USCSSystem ),
5093 };
5094 Q_ENUM( SystemOfMeasurement )
5095
5096
5103 {
5104 Layer SIP_MONKEYPATCH_COMPAT_NAME( LayerUnits ),
5105 Pixels,
5106 Project SIP_MONKEYPATCH_COMPAT_NAME( ProjectUnits )
5107 };
5108 Q_ENUM( MapToolUnit )
5109
5110
5118 {
5119 Distance SIP_MONKEYPATCH_COMPAT_NAME( TypeDistance ) = 0,
5121 Volume SIP_MONKEYPATCH_COMPAT_NAME( TypeVolume ),
5122 Unknown SIP_MONKEYPATCH_COMPAT_NAME( TypeUnknown ),
5123 Temporal SIP_MONKEYPATCH_COMPAT_NAME( TypeTemporal ),
5124 };
5125 Q_ENUM( UnitType )
5126
5127
5135 {
5136 Meters SIP_MONKEYPATCH_COMPAT_NAME( DistanceMeters ),
5137 Kilometers SIP_MONKEYPATCH_COMPAT_NAME( DistanceKilometers ),
5138 Feet SIP_MONKEYPATCH_COMPAT_NAME( DistanceFeet ),
5139 NauticalMiles SIP_MONKEYPATCH_COMPAT_NAME( DistanceNauticalMiles ),
5140 Yards SIP_MONKEYPATCH_COMPAT_NAME( DistanceYards ),
5141 Miles SIP_MONKEYPATCH_COMPAT_NAME( DistanceMiles ),
5142 Degrees SIP_MONKEYPATCH_COMPAT_NAME( DistanceDegrees ),
5143 Centimeters SIP_MONKEYPATCH_COMPAT_NAME( DistanceCentimeters ),
5144 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( DistanceMillimeters ),
5145 Inches,
5146 ChainsInternational,
5147 ChainsBritishBenoit1895A,
5148 ChainsBritishBenoit1895B,
5149 ChainsBritishSears1922Truncated,
5150 ChainsBritishSears1922,
5151 ChainsClarkes,
5152 ChainsUSSurvey,
5153 FeetBritish1865,
5154 FeetBritish1936,
5155 FeetBritishBenoit1895A,
5156 FeetBritishBenoit1895B,
5157 FeetBritishSears1922Truncated,
5158 FeetBritishSears1922,
5159 FeetClarkes,
5160 FeetGoldCoast,
5161 FeetIndian,
5162 FeetIndian1937,
5163 FeetIndian1962,
5164 FeetIndian1975,
5165 FeetUSSurvey,
5166 LinksInternational,
5167 LinksBritishBenoit1895A,
5168 LinksBritishBenoit1895B,
5169 LinksBritishSears1922Truncated,
5170 LinksBritishSears1922,
5171 LinksClarkes,
5172 LinksUSSurvey,
5173 YardsBritishBenoit1895A,
5174 YardsBritishBenoit1895B,
5175 YardsBritishSears1922Truncated,
5176 YardsBritishSears1922,
5177 YardsClarkes,
5178 YardsIndian,
5179 YardsIndian1937,
5180 YardsIndian1962,
5181 YardsIndian1975,
5182 MilesUSSurvey,
5183 Fathoms,
5184 MetersGermanLegal,
5185 Unknown SIP_MONKEYPATCH_COMPAT_NAME( DistanceUnknownUnit ),
5186 };
5187 Q_ENUM( DistanceUnit )
5188
5189
5197 {
5198 Standard,
5199 Geographic,
5200 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownType ),
5201 };
5202 Q_ENUM( DistanceUnitType )
5203
5204
5212 {
5213 SquareMeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMeters ),
5214 SquareKilometers SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareKilometers ),
5215 SquareFeet SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareFeet ),
5216 SquareYards SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareYards ),
5217 SquareMiles SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMiles ),
5218 Hectares SIP_MONKEYPATCH_COMPAT_NAME( AreaHectares ),
5219 Acres SIP_MONKEYPATCH_COMPAT_NAME( AreaAcres ),
5220 SquareNauticalMiles SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareNauticalMiles ),
5221 SquareDegrees SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareDegrees ),
5222 SquareCentimeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareCentimeters ),
5223 SquareMillimeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMillimeters ),
5224 SquareInches,
5225 Unknown SIP_MONKEYPATCH_COMPAT_NAME( AreaUnknownUnit ),
5226 };
5227 Q_ENUM( AreaUnit )
5228
5229
5237 {
5238 CubicMeters SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicMeters ),
5239 CubicFeet SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicFeet ),
5240 CubicYards SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicYards ),
5241 Barrel SIP_MONKEYPATCH_COMPAT_NAME( VolumeBarrel ),
5242 CubicDecimeter SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicDecimeter ),
5243 Liters SIP_MONKEYPATCH_COMPAT_NAME( VolumeLiters ),
5244 GallonUS SIP_MONKEYPATCH_COMPAT_NAME( VolumeGallonUS ),
5245 CubicInch SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicInch ),
5246 CubicCentimeter SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicCentimeter ),
5247 CubicDegrees SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicDegrees ),
5248 Unknown SIP_MONKEYPATCH_COMPAT_NAME( VolumeUnknownUnit ),
5249 };
5250 Q_ENUM( VolumeUnit )
5251
5252
5260 {
5261 Degrees SIP_MONKEYPATCH_COMPAT_NAME( AngleDegrees ),
5262 Radians SIP_MONKEYPATCH_COMPAT_NAME( AngleRadians ),
5264 MinutesOfArc SIP_MONKEYPATCH_COMPAT_NAME( AngleMinutesOfArc ),
5265 SecondsOfArc SIP_MONKEYPATCH_COMPAT_NAME( AngleSecondsOfArc ),
5267 MilliradiansSI SIP_MONKEYPATCH_COMPAT_NAME( AngleMilliradiansSI ),
5268 MilNATO SIP_MONKEYPATCH_COMPAT_NAME( AngleMilNATO ),
5269 Unknown SIP_MONKEYPATCH_COMPAT_NAME( AngleUnknownUnit ),
5270 };
5271 Q_ENUM( AngleUnit )
5272
5273
5281 {
5282 Milliseconds SIP_MONKEYPATCH_COMPAT_NAME( TemporalMilliseconds ),
5283 Seconds SIP_MONKEYPATCH_COMPAT_NAME( TemporalSeconds ),
5284 Minutes SIP_MONKEYPATCH_COMPAT_NAME( TemporalMinutes ),
5285 Hours SIP_MONKEYPATCH_COMPAT_NAME( TemporalHours ),
5286 Days SIP_MONKEYPATCH_COMPAT_NAME( TemporalDays ),
5287 Weeks SIP_MONKEYPATCH_COMPAT_NAME( TemporalWeeks ),
5288 Months SIP_MONKEYPATCH_COMPAT_NAME( TemporalMonths ),
5289 Years SIP_MONKEYPATCH_COMPAT_NAME( TemporalYears ),
5290 Decades SIP_MONKEYPATCH_COMPAT_NAME( TemporalDecades ),
5291 Centuries SIP_MONKEYPATCH_COMPAT_NAME( TemporalCenturies ),
5292 IrregularStep SIP_MONKEYPATCH_COMPAT_NAME( TemporalIrregularStep ),
5293 Unknown SIP_MONKEYPATCH_COMPAT_NAME( TemporalUnknownUnit )
5294 };
5295 Q_ENUM( TemporalUnit )
5296
5297
5305 {
5306 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( RenderMillimeters ),
5307 MapUnits SIP_MONKEYPATCH_COMPAT_NAME( RenderMapUnits ),
5308 Pixels SIP_MONKEYPATCH_COMPAT_NAME( RenderPixels ),
5309 Percentage SIP_MONKEYPATCH_COMPAT_NAME( RenderPercentage ),
5311 Inches SIP_MONKEYPATCH_COMPAT_NAME( RenderInches ),
5312 Unknown SIP_MONKEYPATCH_COMPAT_NAME( RenderUnknownUnit ),
5313 MetersInMapUnits SIP_MONKEYPATCH_COMPAT_NAME( RenderMetersInMapUnits ),
5314 };
5315 Q_ENUM( RenderUnit )
5316
5317
5325 {
5326 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( LayoutMillimeters ),
5327 Centimeters SIP_MONKEYPATCH_COMPAT_NAME( LayoutCentimeters ),
5328 Meters SIP_MONKEYPATCH_COMPAT_NAME( LayoutMeters ),
5329 Inches SIP_MONKEYPATCH_COMPAT_NAME( LayoutInches ),
5330 Feet SIP_MONKEYPATCH_COMPAT_NAME( LayoutFeet ),
5332 Picas SIP_MONKEYPATCH_COMPAT_NAME( LayoutPicas ),
5333 Pixels SIP_MONKEYPATCH_COMPAT_NAME( LayoutPixels )
5334 };
5335 Q_ENUM( LayoutUnit )
5336
5337
5345 {
5346 PaperUnits SIP_MONKEYPATCH_COMPAT_NAME( LayoutPaperUnits ),
5347 ScreenUnits SIP_MONKEYPATCH_COMPAT_NAME( LayoutScreenUnits )
5348 };
5349 Q_ENUM( LayoutUnitType )
5350
5351
5359 {
5360 Debug SIP_MONKEYPATCH_COMPAT_NAME( FlagDebug ) = 1 << 1,
5361 OutlineOnly SIP_MONKEYPATCH_COMPAT_NAME( FlagOutlineOnly ) = 1 << 2,
5362 Antialiasing SIP_MONKEYPATCH_COMPAT_NAME( FlagAntialiasing ) = 1 << 3,
5363 UseAdvancedEffects SIP_MONKEYPATCH_COMPAT_NAME( FlagUseAdvancedEffects ) = 1 << 4,
5364 ForceVectorOutput SIP_MONKEYPATCH_COMPAT_NAME( FlagForceVectorOutput ) = 1 << 5,
5365 HideCoverageLayer SIP_MONKEYPATCH_COMPAT_NAME( FlagHideCoverageLayer ) = 1 << 6,
5366 DrawSelection SIP_MONKEYPATCH_COMPAT_NAME( FlagDrawSelection ) = 1 << 7,
5367 DisableTiledRasterLayerRenders SIP_MONKEYPATCH_COMPAT_NAME( FlagDisableTiledRasterLayerRenders ) = 1 << 8,
5368 RenderLabelsByMapLayer SIP_MONKEYPATCH_COMPAT_NAME( FlagRenderLabelsByMapLayer ) = 1 << 9,
5369 LosslessImageRendering SIP_MONKEYPATCH_COMPAT_NAME( FlagLosslessImageRendering ) = 1 << 10,
5370 SynchronousLegendGraphics SIP_MONKEYPATCH_COMPAT_NAME( FlagSynchronousLegendGraphics ) = 1 << 11,
5371 AlwaysUseGlobalMasks SIP_MONKEYPATCH_COMPAT_NAME( FlagAlwaysUseGlobalMasks ) = 1 << 12,
5372 LimitCoverageLayerRenderToCurrentFeature = 1 << 13,
5373 };
5374 Q_ENUM( LayoutRenderFlag )
5375
5376
5384 Q_FLAG( LayoutRenderFlags )
5385
5394 {
5395 SVG SIP_MONKEYPATCH_COMPAT_NAME( FormatSVG ) = 0,
5396 Raster SIP_MONKEYPATCH_COMPAT_NAME( FormatRaster ),
5397 Unknown SIP_MONKEYPATCH_COMPAT_NAME( FormatUnknown ),
5398 };
5399 Q_ENUM( PictureFormat )
5400
5401
5406 enum class ScaleCalculationMethod : int
5407 {
5408 HorizontalTop = 0,
5409 HorizontalMiddle,
5410 HorizontalBottom,
5411 HorizontalAverage,
5412 AtEquator,
5413 };
5414 Q_ENUM( ScaleCalculationMethod )
5415
5416
5429 Q_ENUM( ScaleBarAlignment )
5430
5431
5439 {
5440 Fixed SIP_MONKEYPATCH_COMPAT_NAME( SegmentSizeFixed ) = 0,
5441 FitWidth SIP_MONKEYPATCH_COMPAT_NAME( SegmentSizeFitWidth ) = 1
5442 };
5443 Q_ENUM( ScaleBarSegmentSizeMode )
5444
5445
5453 {
5454 AboveSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelAboveSegment ) = 0,
5455 BelowSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelBelowSegment ),
5456 };
5457 Q_ENUM( ScaleBarDistanceLabelVerticalPlacement )
5458
5459
5467 {
5468 CenteredEdge SIP_MONKEYPATCH_COMPAT_NAME( LabelCenteredEdge ) = 0,
5469 CenteredSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelCenteredSegment ),
5470 };
5471 Q_ENUM( ScaleBarDistanceLabelHorizontalPlacement )
5472
5473
5474
5482 {
5483 MapUnits SIP_MONKEYPATCH_COMPAT_NAME( MapUnit ),
5486 DynamicPageSizeBased,
5487 };
5488 Q_ENUM( MapGridUnit )
5489
5490
5498 {
5500 LineCrosses SIP_MONKEYPATCH_COMPAT_NAME( Cross ),
5501 Markers,
5502 FrameAndAnnotationsOnly SIP_MONKEYPATCH_COMPAT_NAME( FrameAnnotationsOnly )
5503 };
5504 Q_ENUM( MapGridStyle )
5505
5506
5514 {
5515 ShowAll = 0,
5516 LatitudeOnly,
5517 LongitudeOnly,
5518 HideAll
5519 };
5520 Q_ENUM( MapGridComponentVisibility )
5521
5522
5530 {
5531 InsideMapFrame = 0,
5532 OutsideMapFrame,
5533 };
5534 Q_ENUM( MapGridAnnotationPosition )
5535
5536
5544 {
5545 Horizontal = 0,
5546 Vertical,
5547 VerticalDescending,
5548 BoundaryDirection,
5549 AboveTick,
5550 OnTick,
5551 UnderTick,
5552 };
5553 Q_ENUM( MapGridAnnotationDirection )
5554
5555
5563 {
5564 Decimal = 0,
5565 DegreeMinute,
5566 DegreeMinuteSecond,
5567 DecimalWithSuffix,
5568 DegreeMinuteNoSuffix,
5569 DegreeMinutePadded,
5570 DegreeMinuteSecondNoSuffix,
5571 DegreeMinuteSecondPadded,
5572 CustomFormat
5573 };
5574 Q_ENUM( MapGridAnnotationFormat )
5575
5576
5590 Q_ENUM( MapGridBorderSide )
5591
5592
5600 {
5601 NoFrame = 0,
5602 Zebra,
5603 InteriorTicks,
5604 ExteriorTicks,
5605 InteriorExteriorTicks,
5606 LineBorder,
5607 LineBorderNautical,
5608 ZebraNautical,
5609 };
5610 Q_ENUM( MapGridFrameStyle )
5611
5612
5620 {
5621 OrthogonalTicks = 0,
5622 NormalizedTicks,
5623 };
5624 Q_ENUM( MapGridTickLengthMode )
5625
5626
5627
5635 {
5636 Left SIP_MONKEYPATCH_COMPAT_NAME( FrameLeft ) = 0x01,
5637 Right SIP_MONKEYPATCH_COMPAT_NAME( FrameRight ) = 0x02,
5638 Top SIP_MONKEYPATCH_COMPAT_NAME( FrameTop ) = 0x04,
5639 Bottom SIP_MONKEYPATCH_COMPAT_NAME( FrameBottom ) = 0x08
5640 };
5641 Q_ENUM( MapGridFrameSideFlag )
5642
5643
5651 Q_FLAG( MapGridFrameSideFlags )
5652
5661 {
5662 Longitude = 0,
5663 Latitude
5664 };
5665 Q_ENUM( MapGridAnnotationType )
5666
5667
5672 enum class InputControllerType : int
5673 {
5674 Map2D,
5675 Map3D
5676 };
5678
5685 {
5686 NotSet,
5687 Unknown,
5688 OrdinaryTable,
5689 Index,
5690 Sequence,
5691 View,
5692 MaterializedView,
5693 CompositeType,
5694 ToastTable,
5695 ForeignTable,
5696 PartitionedTable,
5697 };
5698 Q_ENUM( PostgresRelKind )
5699
5700
5706 {
5707 SetFieldComment = 1 << 0,
5708 SetFieldAlias = 1 << 1,
5709 SetTableComment = 1 << 2,
5710 EditFieldDomain = 1 << 3,
5711 DeleteFieldDomain = 1 << 4,
5712 };
5713 Q_ENUM( DatabaseProviderConnectionCapability2 )
5716
5723 {
5724 SetGeometryColumnName = 1 << 0,
5725 SetPrimaryKeyName = 1 << 1,
5726 };
5727 Q_ENUM( DatabaseProviderTableImportCapability )
5730
5737 {
5738 SaveToDatabase = 1 << 1,
5739 LoadFromDatabase = 1 << 2,
5740 DeleteFromDatabase = 1 << 3
5741 };
5745
5746
5752 {
5753 LastProfile,
5754 DefaultProfile,
5755 AskUser,
5756 };
5757 Q_ENUM( UserProfileSelectionPolicy )
5758
5759
5767 {
5768 Container SIP_MONKEYPATCH_COMPAT_NAME( AeTypeContainer ),
5769 Field SIP_MONKEYPATCH_COMPAT_NAME( AeTypeField ),
5770 Relation SIP_MONKEYPATCH_COMPAT_NAME( AeTypeRelation ),
5771 QmlElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeQmlElement ),
5772 HtmlElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeHtmlElement ),
5773 Action SIP_MONKEYPATCH_COMPAT_NAME( AeTypeAction ),
5774 TextElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeTextElement ),
5775 SpacerElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeSpacerElement ),
5776 Invalid SIP_MONKEYPATCH_COMPAT_NAME( AeTypeInvalid ),
5777 };
5778 Q_ENUM( AttributeEditorType )
5779
5780
5786 {
5787 GroupBox,
5788 Tab,
5789 Row,
5790 };
5791 Q_ENUM( AttributeEditorContainerType )
5792
5793
5801 {
5802 AutoGenerated SIP_MONKEYPATCH_COMPAT_NAME( GeneratedLayout ) = 0,
5803 DragAndDrop SIP_MONKEYPATCH_COMPAT_NAME( TabLayout ) = 1,
5804 UiFile SIP_MONKEYPATCH_COMPAT_NAME( UiFileLayout ) = 2
5805 };
5806 Q_ENUM( AttributeFormLayout )
5807
5808
5816 {
5817 Default SIP_MONKEYPATCH_COMPAT_NAME( SuppressDefault ) = 0,
5818 On SIP_MONKEYPATCH_COMPAT_NAME( SuppressOn ) = 1,
5819 Off SIP_MONKEYPATCH_COMPAT_NAME( SuppressOff ) = 2
5820 };
5821 Q_ENUM( AttributeFormSuppression )
5822
5823
5831 {
5832 NoSource SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceNone ) = 0,
5833 File SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceFile ) = 1,
5834 Dialog SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceDialog ) = 2,
5835 Environment SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceEnvironment ) = 3
5836 };
5837 Q_ENUM( AttributeFormPythonInitCodeSource )
5838
5839
5845 {
5846 NotAllowed = 0,
5847 AllowedDefaultOn = 1,
5848 AllowedDefaultOff = 2,
5849 };
5850 Q_ENUM( AttributeFormReuseLastValuePolicy )
5851
5852
5858 {
5860 PointCloud,
5861 RasterCalculator,
5862 };
5863 Q_ENUM( ExpressionType )
5864
5865
5873 {
5874 NoSymbology = 0,
5875 PerFeature SIP_MONKEYPATCH_COMPAT_NAME( FeatureSymbology ),
5876 PerSymbolLayer SIP_MONKEYPATCH_COMPAT_NAME( SymbolLayerSymbology )
5877 };
5878 Q_ENUM( FeatureSymbologyExport )
5879
5880
5885 enum class VectorTileProviderFlag : int SIP_ENUM_BASETYPE( IntFlag )
5886 {
5887 AlwaysUseTileMatrixSetFromProvider = 1 << 1,
5888 };
5889 Q_ENUM( VectorTileProviderFlag )
5890
5891
5897 Q_FLAG( VectorTileProviderFlags )
5898
5904 {
5905 ReadLayerMetadata = 1 << 1,
5906 };
5907 Q_ENUM( VectorTileProviderCapability )
5908
5909
5916
5923 {
5924 Available,
5925 NotAvailable,
5926 AvailableNoChildren,
5927 UseLowerZoomLevelTile,
5928 };
5929 Q_ENUM( TileAvailability )
5930
5931
5937 {
5938 ReadLayerMetadata = 1 << 1,
5939 };
5940 Q_ENUM( TiledSceneProviderCapability )
5941
5942
5949
5956 {
5957 Region,
5958 OrientedBox,
5959 Sphere,
5960 };
5961 Q_ENUM( TiledSceneBoundingVolumeType )
5962
5963
5972 {
5973 Replacement,
5974 Additive,
5975 };
5976 Q_ENUM( TileRefinementProcess )
5977
5978
5984 {
5985 NoChildren,
5986 Available,
5987 NeedFetching,
5988 };
5989 Q_ENUM( TileChildrenAvailability )
5990
5991
5996 enum class TiledSceneRequestFlag : int SIP_ENUM_BASETYPE( IntFlag )
5997 {
5998 NoHierarchyFetch = 1 << 0,
5999 };
6000 Q_ENUM( TiledSceneRequestFlag )
6001
6002
6008 Q_FLAG( TiledSceneRequestFlags )
6009
6015 enum class TiledSceneRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
6016 {
6017 RequiresTextures = 1 << 0,
6018 ForceRasterRender = 1 << 1,
6019 RendersTriangles = 1 << 2,
6020 RendersLines = 1 << 3,
6021 };
6022 Q_ENUM( TiledSceneRendererFlag )
6023
6024
6030 Q_FLAG( TiledSceneRendererFlags )
6031
6037 enum class GdalResampleAlgorithm : int
6038 {
6039 RA_NearestNeighbour = 0,
6040 RA_Bilinear = 1,
6041 RA_Cubic = 2,
6042 RA_CubicSpline = 3,
6043 RA_Lanczos = 4,
6044 RA_Average = 5,
6045 RA_Mode = 6,
6046 RA_Max = 8,
6047 RA_Min = 9,
6048 RA_Median = 10,
6049 RA_Q1 = 11,
6050 RA_Q3 = 12,
6051 };
6052 Q_ENUM( GdalResampleAlgorithm )
6053
6054
6059 enum class VsiHandlerType : int
6060 {
6061 Invalid,
6062 Archive,
6063 Network,
6064 Cloud,
6065 Memory,
6066 Other,
6067 };
6068 Q_ENUM( VsiHandlerType )
6069
6070 // TODO QGIS 5: make All include all values (we can't do this before 4.0, as we need to keep
6071 // compatibility with code which expects all these statistics to give numeric results)
6072
6073
6078 enum class ZonalStatistic : int SIP_ENUM_BASETYPE( IntFlag )
6079 {
6080 Count = 1 << 0,
6081 Sum = 1 << 1,
6082 Mean = 1 << 2,
6083 Median = 1 << 3,
6084 StDev = 1 << 4,
6085 Min = 1 << 5,
6086 Max = 1 << 6,
6087 Range = 1 << 7,
6088 Minority = 1 << 8,
6089 Majority = 1 << 9,
6090 Variety = 1 << 10,
6091 Variance = 1 << 11,
6092 MinimumPoint = 1 << 12,
6093 MaximumPoint = 1 << 13,
6094 All = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
6095 AllNumeric = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
6096 Default = Count | Sum | Mean,
6097 };
6098 Q_ENUM( ZonalStatistic )
6099
6100
6106 Q_FLAG( ZonalStatistics )
6107
6113 enum class ZonalStatisticResult : int
6114 {
6116 LayerTypeWrong = 1,
6117 LayerInvalid,
6118 RasterInvalid,
6119 RasterBandInvalid,
6120 FailedToCreateField = 8,
6121 Canceled = 9
6122 };
6123 Q_ENUM( ZonalStatisticResult )
6124
6125
6132 {
6133 Count,
6134 CountDistinct,
6135 CountMissing,
6136 Min,
6137 Max,
6138 Sum,
6139 Mean,
6140 Median,
6141 StDev,
6142 StDevSample,
6143 Range,
6144 Minority,
6145 Majority,
6146 FirstQuartile,
6147 ThirdQuartile,
6148 InterQuartileRange,
6149 StringMinimumLength,
6150 StringMaximumLength,
6151 StringConcatenate,
6152 GeometryCollect,
6153 ArrayAggregate,
6154 StringConcatenateUnique
6155 };
6156 Q_ENUM( Aggregate )
6157
6158
6164 {
6165 Count = 1 << 0,
6166 CountMissing = 1 << 15,
6167 Sum = 1 << 1,
6168 Mean = 1 << 2,
6169 Median = 1 << 3,
6170 StDev = 1 << 4,
6171 StDevSample = 1 << 5,
6172 Min = 1 << 6,
6173 Max = 1 << 7,
6174 Range = 1 << 8,
6175 Minority = 1 << 9,
6176 Majority = 1 << 10,
6177 Variety = 1 << 11,
6178 FirstQuartile = 1 << 12,
6179 ThirdQuartile = 1 << 13,
6180 InterQuartileRange = 1 << 14,
6181 First = 1 << 16,
6182 Last = 1 << 17,
6183 All = Count | CountMissing | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | FirstQuartile | ThirdQuartile | InterQuartileRange | First | Last
6184 };
6185 Q_ENUM( Statistic )
6186
6187
6193 Q_FLAG( Statistics )
6194
6201 {
6202 Count = 1,
6203 CountDistinct = 2,
6204 CountMissing = 4,
6205 Min = 8,
6206 Max = 16,
6207 Range = 32,
6208 All = Count | CountDistinct | CountMissing | Min | Max | Range,
6209 };
6210 Q_ENUM( DateTimeStatistic )
6211
6212
6218 Q_FLAG( DateTimeStatistics )
6219
6226 {
6227 Count = 1,
6228 CountDistinct = 2,
6229 CountMissing = 4,
6230 Min = 8,
6231 Max = 16,
6232 MinimumLength = 32,
6233 MaximumLength = 64,
6234 MeanLength = 128,
6235 Minority = 256,
6236 Majority = 512,
6237 All = Count | CountDistinct | CountMissing | Min | Max | MinimumLength | MaximumLength | MeanLength | Minority | Majority,
6238 };
6239 Q_ENUM( StringStatistic )
6240
6241
6247 Q_FLAG( StringStatistics )
6248
6255 {
6256 NoStatistic = 0,
6257 Min = 1,
6258 Max = 1 << 1,
6259 Range = 1 << 2,
6260 Sum = 1 << 3,
6261 Mean = 1 << 4,
6262 StdDev = 1 << 5,
6263 SumOfSquares = 1 << 6,
6264 All = Min | Max | Range | Sum | Mean | StdDev | SumOfSquares
6265 };
6266 Q_ENUM( RasterBandStatistic )
6267
6268
6274 Q_FLAG( RasterBandStatistics )
6275
6281 enum class SensorThingsEntity : int
6282 {
6283 Invalid,
6284 Thing,
6285 Location,
6286 HistoricalLocation,
6287 Datastream,
6288 Sensor,
6289 ObservedProperty,
6290 Observation,
6291 FeatureOfInterest,
6292 MultiDatastream,
6293 };
6294 Q_ENUM( SensorThingsEntity )
6295
6296
6301 enum class ColorModel : int
6302 {
6303 Rgb,
6304 Cmyk,
6305 };
6306 Q_ENUM( ColorModel )
6307
6308
6313 enum class DocumentationApi : int
6314 {
6315 PyQgis,
6316 PyQgisSearch,
6317 CppQgis,
6318 Qt,
6319 };
6320 Q_ENUM( DocumentationApi )
6321
6322
6327 enum class DocumentationBrowser : int
6328 {
6329 DeveloperToolsPanel,
6330 SystemWebBrowser,
6331 };
6332 Q_ENUM( DocumentationBrowser )
6333
6334
6339 enum class MouseHandlesAction : int
6340 {
6341 MoveItem,
6342 ResizeUp,
6343 ResizeDown,
6344 ResizeLeft,
6345 ResizeRight,
6346 ResizeLeftUp,
6347 ResizeRightUp,
6348 ResizeLeftDown,
6349 ResizeRightDown,
6350 RotateTopLeft,
6351 RotateTopRight,
6352 RotateBottomLeft,
6353 RotateBottomRight,
6354 SelectItem,
6355 NoAction
6356 };
6357 Q_ENUM( MouseHandlesAction )
6358
6359
6363 enum class MeshRangeLimit : int
6364 {
6365 NotSet,
6366 MinimumMaximum,
6367 };
6368 Q_ENUM( MeshRangeLimit )
6369
6370
6375 enum class MeshRangeExtent : int
6376 {
6377 WholeMesh,
6378 FixedCanvas,
6379 UpdatedCanvas,
6380 };
6381 Q_ENUM( MeshRangeExtent )
6382
6383
6389 enum class PointCloudAccessType : int
6390 {
6391 Local,
6392 Remote
6393 };
6394 Q_ENUM( PointCloudAccessType )
6395
6396
6401 {
6402 RenderExtents,
6403 RenderOverview,
6404 RenderOverviewAndExtents
6405 };
6406 Q_ENUM( PointCloudZoomOutRenderBehavior )
6407
6408
6413 {
6414 Standard = 0,
6415 Adaptive,
6416 AreaError,
6417 ConstantDensity
6418 };
6419 Q_ENUM( SegmentCalculationMethod )
6420
6421
6425 enum class StacObjectType : int
6426 {
6427 Unknown,
6428 Catalog,
6429 Collection,
6430 Item,
6431 };
6432 Q_ENUM( StacObjectType )
6433
6434
6439 {
6440 WmsScale = 1 << 0,
6441 WmsDpi = 1 << 1,
6442 };
6443 Q_ENUM( RasterProcessingParameterCapability )
6444
6445
6451
6457 {
6458 Status = Qt::UserRole + 1,
6459 Id,
6460 ElapsedTime,
6461 MaximumTime,
6462 Sort,
6463 };
6464 Q_ENUM( DevToolsNodeRole )
6465
6466
6471 enum class ExtrusionFace : int SIP_ENUM_BASETYPE( IntFlag )
6472 {
6473 NoFace = 0,
6474 Walls = 1 << 0,
6475 Roof = 1 << 1,
6476 Floor = 1 << 2
6477 };
6478 Q_ENUM( ExtrusionFace )
6479
6480
6484 Q_DECLARE_FLAGS( ExtrusionFaces, ExtrusionFace )
6485 Q_FLAG( ExtrusionFaces )
6486
6491 enum class TriangulationAlgorithm : int SIP_ENUM_BASETYPE( IntFlag )
6492 {
6493 ConstrainedDelaunay = 0,
6494 Earcut = 1 << 0
6495 };
6496 Q_ENUM( TriangulationAlgorithm )
6497
6498
6501 static const double DEFAULT_SEARCH_RADIUS_MM;
6502
6505
6511 static const QColor DEFAULT_HIGHLIGHT_COLOR;
6512
6516 static const double DEFAULT_HIGHLIGHT_BUFFER_MM;
6517
6522
6530 Q_DECL_DEPRECATED static const double SCALE_PRECISION;
6531
6536 static const double DEFAULT_Z_COORDINATE;
6537
6543 static const double DEFAULT_M_COORDINATE;
6544
6549 static const double UI_SCALE_FACTOR;
6550
6554 static const double DEFAULT_SNAP_TOLERANCE;
6555
6560
6564 static const int USER_CRS_START_ID;
6565
6567 static const double DEFAULT_POINT_SIZE;
6568
6570 static const double DEFAULT_LINE_WIDTH;
6571
6573 static const double DEFAULT_SEGMENT_EPSILON;
6574
6577
6580
6586 static QString defaultProjectScales();
6587
6593 static int geosVersionInt();
6594
6600 static int geosVersionMajor();
6601
6607 static int geosVersionMinor();
6608
6614 static int geosVersionPatch();
6615
6621 static QString geosVersion();
6622
6628 static bool hasSfcgal();
6629
6636 static int sfcgalVersionInt();
6637
6643 static bool hasGeographicLib();
6644
6651 static int geographicLibVersion();
6652
6658 Q_DECL_DEPRECATED static bool hasQtWebkit();
6659
6665 static QString geoNone()
6666 {
6667 return u"NONE"_s;
6668 }
6669
6675 static QString geographicCrsAuthId()
6676 {
6677 return u"EPSG:4326"_s;
6678 }
6679
6684 Q_DECL_DEPRECATED static QString geoWkt()
6685 {
6686 return QStringLiteral(
6687 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]] )"""
6688 );
6689 }
6690
6695 Q_DECL_DEPRECATED static QString geoProj4()
6696 {
6697 return u"+proj=longlat +datum=WGS84 +no_defs"_s;
6698 }
6699
6700};
6701
6704
6796Q_DECLARE_METATYPE( QTimeZone )
6797
6798// hack to workaround warnings when casting void pointers
6799// retrieved from QLibrary::resolve to function pointers.
6800// It's assumed that this works on all systems supporting
6801// QLibrary
6802#define cast_to_fptr(f) f
6803
6804
6812// based on Boojum's code from http://stackoverflow.com/questions/3556687/prevent-firing-signals-in-qt
6813template<class Object> class QgsSignalBlocker SIP_SKIP SIP_SKIP // clazy:exclude=rule-of-three
6814{
6815 public:
6816
6821 explicit QgsSignalBlocker( Object *object )
6822 : mObject( object )
6823 , mPreviousState( object->blockSignals( true ) )
6824 {}
6825
6827 {
6828 mObject->blockSignals( mPreviousState );
6829 }
6830
6832 Object *operator->() { return mObject; }
6833
6834 private:
6835
6836 Object *mObject = nullptr;
6837 bool mPreviousState;
6838
6839};
6840
6853// based on Boojum's code from http://stackoverflow.com/questions/3556687/prevent-firing-signals-in-qt
6854template<class Object> inline QgsSignalBlocker<Object> whileBlocking( Object *object ) SIP_SKIP SIP_SKIP
6855{
6856 return QgsSignalBlocker<Object>( object );
6857}
6858
6860CORE_EXPORT uint qHash( const QVariant &variant );
6861
6867inline QString qgsDoubleToString( double a, int precision = 17 )
6868{
6869 QString str;
6870 if ( precision )
6871 {
6872 if ( precision < 0 )
6873 {
6874 const double roundFactor = std::pow( 10, -precision );
6875 str = QString::number( static_cast< long long >( std::round( a / roundFactor ) * roundFactor ) );
6876 }
6877 else
6878 {
6879 str = QString::number( a, 'f', precision );
6880 if ( str.contains( '.'_L1 ) )
6881 {
6882 // remove ending 0s
6883 int idx = str.length() - 1;
6884 while ( str.at( idx ) == '0' && idx > 1 )
6885 {
6886 idx--;
6887 }
6888 if ( idx < str.length() - 1 )
6889 str.truncate( str.at( idx ) == '.' ? idx : idx + 1 );
6890 }
6891 }
6892 }
6893 else
6894 {
6895 str = QString::number( a, 'f', precision );
6896 }
6897 // avoid printing -0
6898 // see https://bugreports.qt.io/browse/QTBUG-71439
6899 if ( str == "-0"_L1 )
6900 {
6901 return "0"_L1;
6902 }
6903 return str;
6904}
6905
6912inline bool qgsNanCompatibleEquals( double a, double b )
6913{
6914 const bool aIsNan = std::isnan( a );
6915 const bool bIsNan = std::isnan( b );
6916 if ( aIsNan || bIsNan )
6917 return aIsNan && bIsNan;
6918
6919 return a == b;
6920}
6921
6922#ifndef SIP_RUN
6923
6931template<typename T>
6932inline bool qgsNumberNear( T a, T b, T epsilon = std::numeric_limits<T>::epsilon() * 4 )
6933{
6934 const bool aIsNan = std::isnan( a );
6935 const bool bIsNan = std::isnan( b );
6936 if ( aIsNan || bIsNan )
6937 return aIsNan && bIsNan;
6938
6939 const T diff = a - b;
6940 return diff >= -epsilon && diff <= epsilon;
6941}
6942#endif
6943
6950inline bool qgsDoubleNear( double a, double b, double epsilon = 4 * std::numeric_limits<double>::epsilon() )
6951{
6952 return qgsNumberNear<double>( a, b, epsilon );
6953}
6954
6961inline bool qgsFloatNear( float a, float b, float epsilon = 4 * FLT_EPSILON )
6962{
6963 return qgsNumberNear<float>( a, b, epsilon );
6964}
6965
6967inline bool qgsDoubleNearSig( double a, double b, int significantDigits = 10 )
6968{
6969 const bool aIsNan = std::isnan( a );
6970 const bool bIsNan = std::isnan( b );
6971 if ( aIsNan || bIsNan )
6972 return aIsNan && bIsNan;
6973
6974 // The most simple would be to print numbers as %.xe and compare as strings
6975 // but that is probably too costly
6976 // Then the fastest would be to set some bits directly, but little/big endian
6977 // has to be considered (maybe TODO)
6978 // Is there a better way?
6979 int aexp, bexp;
6980 const double ar = std::frexp( a, &aexp );
6981 const double br = std::frexp( b, &bexp );
6982
6983 return aexp == bexp &&
6984 std::round( ar * std::pow( 10.0, significantDigits ) ) == std::round( br * std::pow( 10.0, significantDigits ) );
6985}
6986
6991inline double qgsRound( double number, int places )
6992{
6993 const double m = ( number < 0.0 ) ? -1.0 : 1.0;
6994 const double scaleFactor = std::pow( 10.0, places );
6995 return ( std::round( number * m * scaleFactor ) / scaleFactor ) * m;
6996}
6997
6998#ifndef SIP_RUN
6999
7006template<class Key, class Value>
7007QString qgsMapJoinKeys( const QMap<Key, Value> &map, const QString &separator )
7008{
7009 QString result;
7010 for ( auto it = map.constBegin(); it != map.constEnd(); it++ )
7011 result += QString( "%1%2" ).arg( it.key() ).arg( separator );
7012
7013 result.chop( separator.size() );
7014 return result;
7015}
7016
7023template<class Key, class Value>
7024QString qgsMapJoinValues( const QMap<Key, Value> &map, const QString &separator )
7025{
7026 QString result;
7027 for ( auto it = map.constBegin(); it != map.constEnd(); it++ )
7028 result += QString( "%1%2" ).arg( it.value() ).arg( separator );
7029
7030 result.chop( separator.size() );
7031 return result;
7032}
7033
7040template<class T>
7041QString qgsSetJoin( const QSet<T> &set, const QString &separator )
7042{
7043 QString result;
7044 for ( auto it = set.constBegin(); it != set.constEnd(); it++ )
7045 result += QString( "%1%2" ).arg( *it ).arg( separator );
7046
7047 result.chop( separator.size() );
7048 return result;
7049}
7050
7052
7062namespace qgis
7063{
7064
7077 template<typename To, typename From> inline To down_cast( From *f )
7078 {
7079 static_assert(
7080 ( std::is_base_of<From,
7081 typename std::remove_pointer<To>::type>::value ),
7082 "target type not derived from source type" );
7083 Q_ASSERT( f == nullptr || dynamic_cast<To>( f ) != nullptr );
7084 return static_cast<To>( f );
7085 }
7086
7087 template<class T>
7088 QSet<T> listToSet( const QList<T> &list )
7089 {
7090 return QSet<T>( list.begin(), list.end() );
7091 }
7092
7093 template<class T>
7094 QList<T> setToList( const QSet<T> &set )
7095 {
7096 return QList<T>( set.begin(), set.end() );
7097 }
7098}
7099
7101#endif
7102
7107template<class T> const QList<T> qgsEnumList() SIP_SKIP
7108{
7109 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7110 Q_ASSERT( metaEnum.isValid() );
7111 QList<T> enumList;
7112 for ( int idx = 0; idx < metaEnum.keyCount(); ++idx )
7113 {
7114 enumList.append( static_cast<T>( metaEnum.value( idx ) ) );
7115 }
7116 return enumList;
7117}
7118
7124template<class T> const QMap<T, QString> qgsEnumMap() SIP_SKIP
7125{
7126 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7127 Q_ASSERT( metaEnum.isValid() );
7128 QMap<T, QString> enumMap;
7129 for ( int idx = 0; idx < metaEnum.keyCount(); ++idx )
7130 {
7131 enumMap.insert( static_cast<T>( metaEnum.value( idx ) ), QString( metaEnum.key( idx ) ) );
7132 }
7133 return enumMap;
7134}
7135
7141template<class T> QString qgsEnumValueToKey( const T &value, bool *returnOk = nullptr ) SIP_SKIP
7142{
7143 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7144 Q_ASSERT( metaEnum.isValid() );
7145 const char *key = metaEnum.valueToKey( static_cast<int>( value ) );
7146 if ( returnOk )
7147 {
7148 *returnOk = key ? true : false;
7149 }
7150 return QString::fromUtf8( key );
7151}
7152
7160template<class T> T qgsEnumKeyToValue( const QString &key, const T &defaultValue, bool tryValueAsKey = true, bool *returnOk = nullptr ) SIP_SKIP
7161{
7162 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7163 Q_ASSERT( metaEnum.isValid() );
7164 bool ok = false;
7165 T v = static_cast<T>( metaEnum.keyToValue( key.toUtf8().data(), &ok ) );
7166 if ( returnOk )
7167 {
7168 *returnOk = ok;
7169 }
7170 if ( ok )
7171 {
7172 return v;
7173 }
7174 else
7175 {
7176 // if conversion has failed, try with conversion from int value
7177 if ( tryValueAsKey )
7178 {
7179 bool canConvert = false;
7180 const int intValue = key.toInt( &canConvert );
7181 if ( canConvert && metaEnum.valueToKey( intValue ) )
7182 {
7183 if ( returnOk )
7184 {
7185 *returnOk = true;
7186 }
7187 return static_cast<T>( intValue );
7188 }
7189 }
7190 }
7191 return defaultValue;
7192}
7193
7199template<class T> QString qgsFlagValueToKeys( const T &value, bool *returnOk = nullptr ) SIP_SKIP
7200{
7201 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7202 Q_ASSERT( metaEnum.isValid() );
7203 int intValue = static_cast<int>( value );
7204 const QByteArray ba = metaEnum.valueToKeys( intValue );
7205 // check that the int value does correspond to a flag
7206 // see https://stackoverflow.com/a/68495949/1548052
7207 const int intValueCheck = metaEnum.keysToValue( ba );
7208 bool ok = intValue == intValueCheck;
7209 if ( returnOk )
7210 *returnOk = ok;
7211 return ok ? QString::fromUtf8( ba ) : QString();
7212}
7213
7221template<class T> T qgsFlagKeysToValue( const QString &keys, const T &defaultValue, bool tryValueAsKey = true, bool *returnOk = nullptr ) SIP_SKIP
7222{
7223 if ( keys.isEmpty() )
7224 {
7225 if ( returnOk )
7226 {
7227 *returnOk = false;
7228 }
7229 return defaultValue;
7230 }
7231 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7232 Q_ASSERT( metaEnum.isValid() );
7233 bool ok = false;
7234 T v = static_cast<T>( metaEnum.keysToValue( keys.toUtf8().constData(), &ok ) );
7235 if ( returnOk )
7236 {
7237 *returnOk = ok;
7238 }
7239 if ( ok )
7240 {
7241 return v;
7242 }
7243 else
7244 {
7245 // if conversion has failed, try with conversion from int value
7246 if ( tryValueAsKey )
7247 {
7248 bool canConvert = false;
7249 const int intValue = keys.toInt( &canConvert );
7250 if ( canConvert )
7251 {
7252 const QByteArray keyArray = metaEnum.valueToKeys( intValue );
7253 const int intValueCheck = metaEnum.keysToValue( keyArray );
7254 if ( !keyArray.isEmpty() && intValue == intValueCheck )
7255 {
7256 if ( returnOk )
7257 {
7258 *returnOk = true;
7259 }
7260 return T( intValue );
7261 }
7262 }
7263 }
7264 }
7265 return defaultValue;
7266}
7267
7268
7277CORE_EXPORT double qgsPermissiveToDouble( QString string, bool &ok );
7278
7287CORE_EXPORT int qgsPermissiveToInt( QString string, bool &ok );
7288
7298CORE_EXPORT qlonglong qgsPermissiveToLongLong( QString string, bool &ok );
7299
7319CORE_EXPORT int qgsVariantCompare( const QVariant &lhs, const QVariant &rhs, bool strictTypeCheck = false );
7320
7331CORE_EXPORT bool qgsVariantLessThan( const QVariant &lhs, const QVariant &rhs );
7332
7341CORE_EXPORT bool qgsVariantEqual( const QVariant &lhs, const QVariant &rhs );
7342
7351CORE_EXPORT bool qgsVariantGreaterThan( const QVariant &lhs, const QVariant &rhs );
7352
7364inline bool operator> ( const QVariant &v1, const QVariant &v2 )
7365{
7366 return qgsVariantCompare( v1, v2, true ) > 0;
7367}
7368
7380inline bool operator< ( const QVariant &v1, const QVariant &v2 )
7381{
7382 return qgsVariantCompare( v1, v2, true ) < 0;
7383}
7384
7391Q_DECL_DEPRECATED CORE_EXPORT QString qgsVsiPrefix( const QString &path ) SIP_DEPRECATED;
7392
7398void CORE_EXPORT *qgsMalloc( size_t size ) SIP_SKIP;
7399
7404void CORE_EXPORT qgsFree( void *ptr ) SIP_SKIP;
7405
7406#ifndef SIP_RUN
7407
7409class ScopedIntIncrementor
7410{
7411 public:
7412
7413 ScopedIntIncrementor( int *variable )
7414 : mVariable( variable )
7415 {
7416 ( *mVariable )++;
7417 }
7418
7419 ScopedIntIncrementor( const ScopedIntIncrementor &other ) = delete;
7420 ScopedIntIncrementor &operator=( const ScopedIntIncrementor &other ) = delete;
7421
7422 void release()
7423 {
7424 if ( mVariable )
7425 ( *mVariable )--;
7426
7427 mVariable = nullptr;
7428 }
7429
7430 ~ScopedIntIncrementor()
7431 {
7432 release();
7433 }
7434
7435 private:
7436 int *mVariable = nullptr;
7437};
7439
7440#endif
7441
7447Q_DECL_DEPRECATED const long GEOSRID = 4326;
7448
7454Q_DECL_DEPRECATED const long GEOCRS_ID = 3452;
7455
7461Q_DECL_DEPRECATED const long GEO_EPSG_CRS_ID = 4326;
7462
7463typedef QMap<QString, QString> QgsStringMap SIP_SKIP;
7464
7473typedef unsigned long long qgssize;
7474
7475#ifndef SIP_RUN
7476#if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) || defined(__clang__)
7477
7478#define Q_NOWARN_DEPRECATED_PUSH \
7479 _Pragma("GCC diagnostic push") \
7480 _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"");
7481#define Q_NOWARN_DEPRECATED_POP \
7482 _Pragma("GCC diagnostic pop");
7483#define Q_NOWARN_UNREACHABLE_PUSH
7484#define Q_NOWARN_UNREACHABLE_POP
7485
7486#elif defined(_MSC_VER)
7487
7488#define Q_NOWARN_DEPRECATED_PUSH \
7489 __pragma(warning(push)) \
7490 __pragma(warning(disable:4996))
7491#define Q_NOWARN_DEPRECATED_POP \
7492 __pragma(warning(pop))
7493#define Q_NOWARN_UNREACHABLE_PUSH \
7494 __pragma(warning(push)) \
7495 __pragma(warning(disable:4702))
7496#define Q_NOWARN_UNREACHABLE_POP \
7497 __pragma(warning(pop))
7498#else
7499
7500#define Q_NOWARN_DEPRECATED_PUSH
7501#define Q_NOWARN_DEPRECATED_POP
7502#define Q_NOWARN_UNREACHABLE_PUSH
7503#define Q_NOWARN_UNREACHABLE_POP
7504
7505#endif
7506#endif
7507
7508#ifndef QGISEXTERN
7509#ifdef Q_OS_WIN
7510# define QGISEXTERN extern "C" __declspec( dllexport )
7511#else
7512# if defined(__GNUC__) || defined(__clang__)
7513# define QGISEXTERN extern "C" __attribute__ ((visibility ("default")))
7514# else
7515# define QGISEXTERN extern "C"
7516# endif
7517#endif
7518#endif
7519#endif
7520
7521#ifndef SIP_RUN
7522#ifdef _MSC_VER
7523#define BUILTIN_UNREACHABLE \
7524 __assume(false);
7525#elif defined(__GNUC__) && !defined(__clang__)
7526// Workaround a GCC bug where a -Wreturn-type warning is emitted in constructs
7527// like:
7528// switch( mVariableThatCanOnlyBeXorY )
7529// {
7530// case X:
7531// return "foo";
7532// case Y:
7533// return "foo";
7534// }
7535// See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87951
7536#define BUILTIN_UNREACHABLE \
7537 __builtin_unreachable();
7538#else
7539#define BUILTIN_UNREACHABLE
7540#endif
7541#endif // SIP_RUN
Provides global constants and enumerations for use throughout the application.
Definition qgis.h:59
MapGridTickLengthMode
Map grid tick length mode (useful for rotated grids).
Definition qgis.h:5620
DistanceUnitType
Types of distance units.
Definition qgis.h:5197
PieChartLabelType
Pie chart label types.
Definition qgis.h:3432
GnssConstellation
GNSS constellation.
Definition qgis.h:1977
SettingsOption
Settings options.
Definition qgis.h:745
EmbeddedScriptType
Type of Python Embedded in projects.
Definition qgis.h:460
ProfileGeneratorFlag
Flags that control the way the QgsAbstractProfileGenerator operate.
Definition qgis.h:4327
ProcessingSourceType
Processing data source types.
Definition qgis.h:3617
static const Qgis::MapToolUnit DEFAULT_SNAP_UNITS
Default snapping distance units.
Definition qgis.h:6559
GpsQualityIndicator
GPS signal quality indicator.
Definition qgis.h:1995
QFlags< MapGridFrameSideFlag > MapGridFrameSideFlags
Flags for controlling which side of the map a frame is drawn on.
Definition qgis.h:5650
DataItemProviderCapability
Capabilities for data item providers.
Definition qgis.h:997
ProcessingFileParameterBehavior
Flags which dictate the behavior of QgsProcessingParameterFile.
Definition qgis.h:3874
RasterizedRenderingPolicy
Policies controlling when rasterisation of content during renders is permitted.
Definition qgis.h:2776
QFlags< MapLayerRendererFlag > MapLayerRendererFlags
Flags which control how map layer renderers behave.
Definition qgis.h:2869
ProjectReadFlag
Flags which control project read behavior.
Definition qgis.h:4411
QFlags< DatabaseProviderTableImportCapability > DatabaseProviderTableImportCapabilities
Definition qgis.h:5728
QFlags< BabelCommandFlag > BabelCommandFlags
Babel command flags.
Definition qgis.h:2090
CurvedLabelMode
Modes which determine how curved labels are generated and placed.
Definition qgis.h:1246
MapToolUnit
Type of unit of tolerance value from settings.
Definition qgis.h:5103
PlotAxisSuffixPlacement
Placement options for suffixes in the labels for axis of plots.
Definition qgis.h:3404
static const double DEFAULT_LINE_WIDTH
The default width (in millimeters) for line symbols.
Definition qgis.h:6570
ProcessingModelChildAlgorithmExecutionStatus
Reflects the status of a child algorithm in a Processing model.
Definition qgis.h:3949
QFlags< GpsInformationComponent > GpsInformationComponents
GPS information component.
Definition qgis.h:2057
ScaleBarDistanceLabelHorizontalPlacement
Scale bar distance label horizontal placement.
Definition qgis.h:5467
PointCloudSymbol
Rendering symbols for point cloud points.
Definition qgis.h:4355
SymbolRotationMode
Modes for handling how symbol and text entity rotation is handled when maps are rotated.
Definition qgis.h:807
static const double DEFAULT_HIGHLIGHT_MIN_WIDTH_MM
Default highlight line/stroke minimum width in mm.
Definition qgis.h:6521
static QString version()
Version string.
Definition qgis.cpp:682
GeometryValidityFlag
Geometry validity check flags.
Definition qgis.h:2144
QFlags< RasterProviderCapability > RasterProviderCapabilities
Raster data provider capabilities.
Definition qgis.h:5028
ExpressionType
Expression types.
Definition qgis.h:5858
MapLayerActionFlag
Map layer action flags.
Definition qgis.h:4773
ScaleBarDistanceLabelVerticalPlacement
Scale bar distance label vertical placement.
Definition qgis.h:5453
MapLayerProperty
Generic map layer properties.
Definition qgis.h:2352
VectorProviderCapability
Vector data provider capabilities.
Definition qgis.h:520
RasterProcessingParameterCapability
Capabilities of a raster layer processing parameter.
Definition qgis.h:6439
BufferSide
Side of line to buffer.
Definition qgis.h:2169
RasterResamplingStage
Stage at which raster resampling occurs.
Definition qgis.h:1543
QFlags< MapLayerActionTarget > MapLayerActionTargets
Map layer action targets.
Definition qgis.h:4762
VectorTileProviderCapability
Enumeration with capabilities that vector tile data providers might implement.
Definition qgis.h:5904
ProjectTrustStatus
Project trust status.
Definition qgis.h:473
MultiPartLabelingBehavior
Behavior modifier for labeling features with multi-part geometries.
Definition qgis.h:1285
AltitudeClamping
Altitude clamping.
Definition qgis.h:4068
static const int PREVIEW_JOB_DELAY_MS
Delay between the scheduling of 2 preview jobs.
Definition qgis.h:6576
VectorTileProviderFlag
Flags for vector tile data providers.
Definition qgis.h:5886
VectorTemporalMode
Vector layer temporal feature modes.
Definition qgis.h:2653
SublayerFlag
Flags which reflect the properties of sublayers in a dataset.
Definition qgis.h:1482
QFlags< ProjectCapability > ProjectCapabilities
Flags which control project capabilities.
Definition qgis.h:4452
LabelLinePlacementFlag
Line placement flags, which control how candidates are generated for a linear feature.
Definition qgis.h:1335
QFlags< UriCleaningFlag > UriCleaningFlags
Flags for cleaning layer URIs.
Definition qgis.h:1442
CoordinateDisplayType
Formats for displaying coordinates.
Definition qgis.h:4561
ProcessingParameterTypeFlag
Flags which dictate the behavior of Processing parameter types.
Definition qgis.h:3822
QFlags< VectorRenderingSimplificationFlag > VectorRenderingSimplificationFlags
Simplification flags for vector feature rendering.
Definition qgis.h:3117
DashPatternSizeAdjustment
Dash pattern size adjustment options.
Definition qgis.h:3377
static const double DEFAULT_Z_COORDINATE
Default Z coordinate value.
Definition qgis.h:6536
GpsFixStatus
GPS fix status.
Definition qgis.h:1962
AnnotationItemNodeType
Annotation item node types.
Definition qgis.h:2580
static const char * QGIS_DEV_VERSION
The development version.
Definition qgis.h:87
VectorFileWriterCapability
Capabilities supported by a QgsVectorFileWriter object.
Definition qgis.h:1094
QFlags< MapSettingsFlag > MapSettingsFlags
Map settings flags.
Definition qgis.h:2811
CrsIdentifierType
Available identifier string types for representing coordinate reference systems.
Definition qgis.h:2490
QFlags< RasterRendererFlag > RasterRendererFlags
Flags which control behavior of raster renderers.
Definition qgis.h:1585
AngularDirection
Angular directions.
Definition qgis.h:3518
DriveType
Drive types.
Definition qgis.h:1147
UnitType
Unit types.
Definition qgis.h:5118
ContentStatus
Status for fetched or stored content.
Definition qgis.h:1918
QFlags< SelectionFlag > SelectionFlags
Flags which control feature selection behavior.
Definition qgis.h:1880
SnappingType
SnappingTypeFlag defines on what object the snapping is performed.
Definition qgis.h:770
LayoutUnit
Layout measurement units.
Definition qgis.h:5325
Q_ENUM(GpsFixStatus)
RelationshipStrength
Relationship strength.
Definition qgis.h:4514
Q_ENUM(GnssConstellation)
PaintEffectFlag
Flags which control how paint effects behave.
Definition qgis.h:2878
MarkerLinePlacement
Defines how/where the symbols should be placed on a line.
Definition qgis.h:3215
QFlags< ProjectReadFlag > ProjectReadFlags
Project load flags.
Definition qgis.h:4430
LegendComponent
Component of legends which can be styled.
Definition qgis.h:4684
Point3DShape
3D point shape types.
Definition qgis.h:4221
GeometryOperationResult
Success or failure of a geometry operation.
Definition qgis.h:2115
QFlags< StringStatistic > StringStatistics
Statistics to be calculated for string values.
Definition qgis.h:6246
BrowserItemState
Browser item states.
Definition qgis.h:959
AttributeEditorContainerType
Attribute editor container types.
Definition qgis.h:5786
QFlags< TiledSceneProviderCapability > TiledSceneProviderCapabilities
Tiled scene data provider capabilities.
Definition qgis.h:5947
FeatureRequestFilterType
Types of feature request filters.
Definition qgis.h:2295
MarkerClipMode
Marker clipping modes.
Definition qgis.h:3335
GpsNavigationStatus
GPS navigation status.
Definition qgis.h:2015
AnnotationItemFlag
Flags for annotation items.
Definition qgis.h:2537
AttributeFormReuseLastValuePolicy
Attribute form policy for reusing last entered values.
Definition qgis.h:5845
RenderSubcomponentProperty
Rendering subcomponent properties.
Definition qgis.h:3126
ProcessingTinInputLayerType
Defines the type of input layer for a Processing TIN input.
Definition qgis.h:3964
QFlags< DataProviderFlag > DataProviderFlags
Data provider flags.
Definition qgis.h:2388
Statistic
Available generic statistics.
Definition qgis.h:6164
TriangulationAlgorithm
Triangulation algorithms.
Definition qgis.h:6492
SymbolRenderHint
Flags controlling behavior of symbols during rendering.
Definition qgis.h:790
AngleUnit
Units of angles.
Definition qgis.h:5260
MapGridAnnotationPosition
Position for map grid annotations.
Definition qgis.h:5530
CaptureTechnique
Capture technique.
Definition qgis.h:415
static QString geosVersion()
GEOS string version linked.
Definition qgis.cpp:704
SpatialIndexPresence
Enumeration of spatial index presence states.
Definition qgis.h:579
BrowserItemCapability
Browser item capabilities.
Definition qgis.h:972
AttributeFormSuppression
Available form types for layout of the attribute form editor.
Definition qgis.h:5816
QFlags< AuthConfigurationStorageCapability > AuthConfigurationStorageCapabilities
Authentication configuration storage capabilities.
Definition qgis.h:150
QFlags< LayerTreeFilterFlag > LayerTreeFilterFlags
Layer tree filter flags.
Definition qgis.h:4654
LayerTreeInsertionMethod
Layer tree insertion methods.
Definition qgis.h:4631
RasterProviderCapability
Raster data provider capabilities.
Definition qgis.h:5008
DatabaseProviderTableImportCapability
Represents capabilities of a database provider connection when importing table data.
Definition qgis.h:5723
LineClipMode
Line clipping modes.
Definition qgis.h:3349
static const double DEFAULT_SNAP_TOLERANCE
Default snapping distance tolerance.
Definition qgis.h:6554
VectorRenderingSimplificationFlag
Simplification flags for vector feature rendering.
Definition qgis.h:3102
QFlags< GeometryValidityFlag > GeometryValidityFlags
Geometry validity flags.
Definition qgis.h:2148
BrowserDirectoryMonitoring
Browser directory item monitoring switches.
Definition qgis.h:1046
VsiHandlerType
GDAL VSI handler types.
Definition qgis.h:6060
NetworkRequestFlag
Flags controlling behavior of network requests.
Definition qgis.h:185
static int geographicLibVersion()
Returns the version of the GeographicLib library if QGIS is built with GeographicLib support.
Definition qgis.cpp:736
SettingsTreeNodeType
Type of tree node.
Definition qgis.h:675
TilePixelRatio
DpiMode enum.
Definition qgis.h:3458
DatabaseProviderConnectionCapability2
The Capability enum represents the extended operations supported by the connection.
Definition qgis.h:5706
QFlags< PaintEffectFlag > PaintEffectFlags
Flags which control how paint effects behave.
Definition qgis.h:2888
LabelOffsetType
Behavior modifier for label offset and distance, only applies in some label placement modes.
Definition qgis.h:1301
QFlags< ProfileGeneratorFlag > ProfileGeneratorFlags
Definition qgis.h:4333
QFlags< MapLayerLegendFlag > MapLayerLegendFlags
Map layer legend flags.
Definition qgis.h:4673
MapGridUnit
Units for map grid values.
Definition qgis.h:5482
LabelPrioritization
Label prioritization.
Definition qgis.h:1213
GradientColorSource
Gradient color sources.
Definition qgis.h:3264
FileFilterType
Type of file filters.
Definition qgis.h:1414
LabelPlacement
Placement modes which determine how label candidates are generated for a feature.
Definition qgis.h:1227
RasterLayerType
Raster layer types.
Definition qgis.h:4885
static const double DEFAULT_M_COORDINATE
Default M coordinate value.
Definition qgis.h:6543
QFlags< VectorLayerTypeFlag > VectorLayerTypeFlags
Vector layer type flags.
Definition qgis.h:437
ScaleBarAlignment
Scalebar alignment.
Definition qgis.h:5424
RasterPyramidFormat
Raster pyramid formats.
Definition qgis.h:4924
ProcessingMode
Types of modes which Processing widgets can be created for.
Definition qgis.h:3757
VectorExportResult
Vector layer export result codes.
Definition qgis.h:1073
DistanceUnit
Units of distance.
Definition qgis.h:5135
RasterTemporalCapabilityFlag
Flags for raster layer temporal capabilities.
Definition qgis.h:2725
SymbolLayerFlag
Flags controlling behavior of symbol layers.
Definition qgis.h:901
MeshRangeLimit
Describes the limits used to compute mesh ranges (min/max values).
Definition qgis.h:6364
GradientSpread
Gradient spread options, which control how gradients are rendered outside of their start and end poin...
Definition qgis.h:3308
LegendSyncMode
Legend synchronization mode.
Definition qgis.h:4702
QFlags< AnnotationItemGuiFlag > AnnotationItemGuiFlags
Annotation item GUI flags.
Definition qgis.h:2570
LabelPolygonPlacementFlag
Polygon placement flags, which control how candidates are generated for a polygon feature.
Definition qgis.h:1360
RasterRangeLimit
Describes the limits used to compute raster ranges (min/max values).
Definition qgis.h:1617
ScaleMethod
Scale methods.
Definition qgis.h:645
QFlags< RasterProcessingParameterCapability > RasterProcessingParameterCapabilities
Raster layer processing parameter capabilities.
Definition qgis.h:6449
SldExportOption
SLD export options.
Definition qgis.h:717
VectorSimplificationAlgorithm
Simplification algorithms for vector features.
Definition qgis.h:3086
FilePathType
File path types.
Definition qgis.h:1749
CadConstraintType
Advanced digitizing constraint type.
Definition qgis.h:4160
AttributeFormPythonInitCodeSource
The Python init code source for attribute forms.
Definition qgis.h:5831
PointCountMethod
Methods which define the number of points randomly filling a polygon.
Definition qgis.h:3323
SldExportVendorExtension
SLD export vendor extensions, allow the use of vendor extensions when exporting to SLD.
Definition qgis.h:732
static const double DEFAULT_HIGHLIGHT_BUFFER_MM
Default highlight buffer in mm.
Definition qgis.h:6516
MapCanvasFlag
Flags controlling behavior of map canvases.
Definition qgis.h:3544
LayerTreeFilterFlag
Layer tree filter flags.
Definition qgis.h:4644
ExtrusionFace
Extrusion face types for the QgsTessellator.
Definition qgis.h:6472
AttributeFormLayout
Available form types for layout of the attribute form editor.
Definition qgis.h:5801
FeatureRequestFlag
Flags for controlling feature requests.
Definition qgis.h:2267
VertexType
Types of vertex.
Definition qgis.h:3151
ShaderInterpolationMethod
Color ramp shader interpolation methods.
Definition qgis.h:1498
JoinStyle3D
Join styles for 3D buffers.
Definition qgis.h:2207
DataProviderFlag
Generic data provider flags.
Definition qgis.h:2381
Q_ENUM(GpsNavigationStatus)
GdalResampleAlgorithm
Resampling algorithm to be used (equivalent to GDAL's enum GDALResampleAlg).
Definition qgis.h:6038
RasterResamplingMethod
Resampling method for raster provider-level resampling.
Definition qgis.h:1557
GeometryValidationEngine
Available engines for validating geometries.
Definition qgis.h:2157
static int geosVersionPatch()
GEOS Patch version number linked.
Definition qgis.cpp:770
TransactionMode
Transaction mode.
Definition qgis.h:4055
Q_ENUM(ScaleToTileZoomLevelMethod)
QFlags< FeatureRendererFlag > FeatureRendererFlags
Flags controlling behavior of vector feature renderers.
Definition qgis.h:859
static const QColor DEFAULT_HIGHLIGHT_COLOR
Default highlight color.
Definition qgis.h:6511
ElevationMapCombineMethod
Methods used to select the elevation when two elevation maps are combined.
Definition qgis.h:5037
static Q_DECL_DEPRECATED const double SCALE_PRECISION
Fudge factor used to compare two scales.
Definition qgis.h:6530
RasterDrawingStyle
Raster drawing styles.
Definition qgis.h:4901
GeosCreationFlag
Flags which control geos geometry creation behavior.
Definition qgis.h:2220
static const int MAXIMUM_LAYER_PREVIEW_TIME_MS
Maximum rendering time for a layer of a preview job.
Definition qgis.h:6579
MeshRangeExtent
Describes the extent used to compute mesh ranges (min/max values).
Definition qgis.h:6376
GpsInformationComponent
GPS information component.
Definition qgis.h:2029
Q_ENUM(PointCloudProfileType)
ViewSyncModeFlag
Synchronization of 2D map canvas and 3D view.
Definition qgis.h:3563
ProcessingProviderFlag
Flags indicating how and when an processing provider operates and should be exposed to users.
Definition qgis.h:3644
FileOperationFlag
File operation flags.
Definition qgis.h:2337
QFlags< DataItemProviderCapability > DataItemProviderCapabilities
Capabilities for data item providers.
Definition qgis.h:1013
ProjectCapability
Flags which control project capabilities.
Definition qgis.h:4442
QFlags< BabelFormatCapability > BabelFormatCapabilities
Babel GPS format capabilities.
Definition qgis.h:2075
QFlags< SymbolLayerFlag > SymbolLayerFlags
Symbol layer flags.
Definition qgis.h:908
QFlags< RasterInterfaceCapability > RasterInterfaceCapabilities
Raster interface capabilities.
Definition qgis.h:4995
Q_ENUM(VectorProfileType)
AttributeActionType
Attribute action types.
Definition qgis.h:4797
TemporalNavigationMode
Temporal navigation modes.
Definition qgis.h:2607
ProcessingFieldParameterDataType
Processing field parameter data types.
Definition qgis.h:3902
AreaUnit
Units of area.
Definition qgis.h:5212
StringStatistic
Available string statistics.
Definition qgis.h:6226
SelectiveMaskSourceType
Selective masking source types.
Definition qgis.h:3140
FieldDomainMergePolicy
Merge policy for field domains.
Definition qgis.h:4009
ZonalStatistic
Statistics to be calculated during a zonal statistics operation.
Definition qgis.h:6079
MessageLevel
Level for messages This will be used both for message log and message bar in application.
Definition qgis.h:158
@ NoLevel
No level.
Definition qgis.h:163
@ Warning
Warning message.
Definition qgis.h:160
@ Critical
Critical/error message.
Definition qgis.h:161
@ Info
Information message.
Definition qgis.h:159
@ Success
Used for reporting a successful operation.
Definition qgis.h:162
MapGridBorderSide
Border sides for map grid annotations.
Definition qgis.h:5584
SqlKeywordCategory
SqlKeywordCategory enum represents the categories of the SQL keywords used by the SQL query editor.
Definition qgis.h:1129
QFlags< SnappingType > SnappingTypes
Snapping types.
Definition qgis.h:781
static Q_DECL_DEPRECATED QString geoWkt()
WKT string that represents a geographic coord system.
Definition qgis.h:6684
static Q_DECL_DEPRECATED bool hasQtWebkit()
Returns false.
Definition qgis.cpp:745
MapGridFrameSideFlag
Flags for controlling which side of the map a frame is drawn on.
Definition qgis.h:5635
GraduatedMethod
Methods for modifying symbols by range in a graduated symbol renderer.
Definition qgis.h:3392
QFlags< LabelLinePlacementFlag > LabelLinePlacementFlags
Line placement flags, which control how candidates are generated for a linear feature.
Definition qgis.h:1350
TiledSceneBoundingVolumeType
Tiled scene bounding volume types.
Definition qgis.h:5956
TextLayoutMode
Text layout modes.
Definition qgis.h:2974
PropertyType
Property types.
Definition qgis.h:703
QFlags< RenderContextFlag > RenderContextFlags
Render context flags.
Definition qgis.h:2847
LayerFilter
Filter for layers.
Definition qgis.h:223
Q_ENUM(ProviderStyleStorageCapability)
QFlags< SublayerFlag > SublayerFlags
Sublayer flags.
Definition qgis.h:1486
RasterRendererFlag
Flags which control behavior of raster renderers.
Definition qgis.h:1575
QFlags< ExtrusionFace > ExtrusionFaces
Tessellator extrusion face types.
Definition qgis.h:6484
static QString devVersion()
The development version.
Definition qgis.cpp:699
CrsType
Coordinate reference system types.
Definition qgis.h:2400
QFlags< GeosCreationFlag > GeosCreationFlags
Geos geometry creation behavior flags.
Definition qgis.h:2231
MapGridComponentVisibility
Visibility display settings for map grid annotations and frames.
Definition qgis.h:5514
SensorThingsEntity
OGC SensorThings API entity types.
Definition qgis.h:6282
MeshEditingErrorType
Type of error that can occur during mesh frame editing.
Definition qgis.h:1732
FieldDomainSplitPolicy
Split policy for field domains.
Definition qgis.h:3992
ArcGisRestServiceType
Available ArcGIS REST service types.
Definition qgis.h:4480
UriCleaningFlag
Flags for cleaning layer URIs.
Definition qgis.h:1431
RasterFileWriterResult
Raster file export results.
Definition qgis.h:1715
AnnotationItemEditOperationResult
Results from an edit operation on an annotation item.
Definition qgis.h:2592
ProcessingPropertyAvailability
Property availability, used for QgsProcessingAlgorithm::VectorProperties in order to determine if pro...
Definition qgis.h:3728
MapRecenteringMode
Modes for recentering map canvases.
Definition qgis.h:3576
RasterRangeAccuracy
Describes the accuracy used to compute raster ranges (min/max values).
Definition qgis.h:1648
ActionType
Action types.
Definition qgis.h:4732
ActionStart
Enum to determine when an operation would begin.
Definition qgis.h:1164
PlaybackOperation
Media playback operations.
Definition qgis.h:2636
QFlags< SymbolLayerUserFlag > SymbolLayerUserFlags
Symbol layer user flags.
Definition qgis.h:931
QFlags< TextRendererFlag > TextRendererFlags
Definition qgis.h:3497
QueryStorageBackend
Stored query storage backends.
Definition qgis.h:3603
ProviderStyleStorageCapability
The StorageCapability enum represents the style storage operations supported by the provider.
Definition qgis.h:5737
AvoidIntersectionsMode
Flags which control how intersections of pre-existing feature are handled when digitizing new feature...
Definition qgis.h:4382
MarkerShape
Marker shapes.
Definition qgis.h:3166
StacObjectType
Available types of stac objects.
Definition qgis.h:6426
LegendJsonRenderFlag
Legend JSON export flags.
Definition qgis.h:4717
BlendMode
Blending modes defining the available composition modes that can be used when painting.
Definition qgis.h:5052
RasterElevationMode
Raster layer elevation modes.
Definition qgis.h:4107
Capitalization
String capitalization options.
Definition qgis.h:3475
TemporalIntervalMatchMethod
Method to use when resolving a temporal range to a data provider layer or band.
Definition qgis.h:2710
PictureFormat
Picture formats.
Definition qgis.h:5394
QFlags< LabelPolygonPlacementFlag > LabelPolygonPlacementFlags
Polygon placement flags, which control how candidates are generated for a polygon feature.
Definition qgis.h:1372
static QString releaseName()
Release name.
Definition qgis.cpp:694
LabelQuadrantPosition
Label quadrant positions.
Definition qgis.h:1315
QFlags< PlotToolFlag > PlotToolFlags
Definition qgis.h:4209
ScaleToTileZoomLevelMethod
Available methods for converting map scales to tile zoom levels.
Definition qgis.h:3506
SublayerQueryFlag
Flags which control how data providers will scan for sublayers in a dataset.
Definition qgis.h:1464
QFlags< VectorFileWriterCapability > VectorFileWriterCapabilities
Capabilities supported by a QgsVectorFileWriter object.
Definition qgis.h:1104
TextOrientation
Text orientations.
Definition qgis.h:2959
TemporalUnit
Temporal units.
Definition qgis.h:5281
QFlags< RasterRendererCapability > RasterRendererCapabilities
Raster renderer capabilities.
Definition qgis.h:1606
QFlags< SymbolPreviewFlag > SymbolPreviewFlags
Symbol preview flags.
Definition qgis.h:888
UnplacedLabelVisibility
Unplaced label visibility.
Definition qgis.h:1176
CrsDefinitionFormat
CRS definition formats.
Definition qgis.h:3977
SpatialFilterType
Feature request spatial filter types.
Definition qgis.h:2324
VerticalAnchorPoint
Marker symbol vertical anchor points.
Definition qgis.h:835
QFlags< LayoutRenderFlag > LayoutRenderFlags
Flags for controlling how a layout is rendered.
Definition qgis.h:5383
static QString defaultProjectScales()
A string with default project scales.
Definition qgis.cpp:676
QFlags< ProcessingParameterTypeFlag > ProcessingParameterTypeFlags
Flags which dictate the behavior of Processing parameter types.
Definition qgis.h:3837
TileAvailability
Possible availability states for a tile within a tile matrix.
Definition qgis.h:5923
ProjectFlag
Flags which control the behavior of QgsProjects.
Definition qgis.h:4189
MapGridStyle
Map grid drawing styles.
Definition qgis.h:5498
FeatureRendererFlag
Flags controlling behavior of vector feature renderers.
Definition qgis.h:849
static Q_DECL_DEPRECATED QString geoProj4()
PROJ4 string that represents a geographic coord system.
Definition qgis.h:6695
BrowserItemType
Browser item types.
Definition qgis.h:940
QFlags< FeatureRequestFlag > FeatureRequestFlags
Flags for controlling feature requests.
Definition qgis.h:2284
static bool hasGeographicLib()
Returns true if the QGIS build contains GeographicLib.
Definition qgis.cpp:727
SettingsType
Types of settings entries.
Definition qgis.h:656
QFlags< SettingsOption > SettingsOptions
Definition qgis.h:750
RasterTemporalMode
Raster layer temporal modes.
Definition qgis.h:2694
RasterAttributeTableType
The RasterAttributeTableType enum represents the type of RAT.
Definition qgis.h:1689
LabelingFlag
Various flags that affect drawing and placement of labels.
Definition qgis.h:2914
GeometryType
The geometry types are used to group Qgis::WkbType in a coarse way.
Definition qgis.h:376
RelationshipType
Relationship types.
Definition qgis.h:4500
ScriptLanguageCapability
Script language capabilities.
Definition qgis.h:4610
RasterInterfaceCapability
Raster interface capabilities.
Definition qgis.h:4975
JoinStyle
Join styles for buffers.
Definition qgis.h:2194
PointCloudDrawOrder
Pointcloud rendering order for 2d views.
Definition qgis.h:4367
QFlags< RasterBandStatistic > RasterBandStatistics
Statistics to be calculated for raster bands.
Definition qgis.h:6273
CadMeasurementDisplayType
Advanced digitizing measurement display types.
Definition qgis.h:4176
ProcessingAlgorithmDocumentationFlag
Flags describing algorithm behavior for documentation purposes.
Definition qgis.h:3704
TextCharacterVerticalAlignment
Text vertical alignment for characters.
Definition qgis.h:3050
FieldDuplicatePolicy
Duplicate policy for fields.
Definition qgis.h:4029
UserProfileSelectionPolicy
User profile selection policy.
Definition qgis.h:5752
static const float DEFAULT_MAPTOPIXEL_THRESHOLD
Default threshold between map coordinates and device coordinates for map2pixel simplification.
Definition qgis.h:6504
QFlags< FileOperationFlag > FileOperationFlags
File operation flags.
Definition qgis.h:2342
DpiMode
DpiMode enum.
Definition qgis.h:3444
Q_ENUM(ProfileExportType)
BrowserLayerType
Browser item layer types.
Definition qgis.h:1022
QFlags< ProcessingAlgorithmFlag > ProcessingAlgorithmFlags
Flags indicating how and when an algorithm operates and should be exposed to users.
Definition qgis.h:3695
AltitudeBinding
Altitude binding.
Definition qgis.h:4081
QFlags< DataProviderReadFlag > DataProviderReadFlags
Flags which control data provider construction.
Definition qgis.h:507
StringFormat
Format of log message.
Definition qgis.h:173
Q_ENUM(ProcessingProviderFlag)
TiledSceneRendererFlag
Flags which control how tiled scene 2D renderers behave.
Definition qgis.h:6016
MapLayerActionTarget
Map layer action targets.
Definition qgis.h:4747
ShaderClassificationMethod
Color ramp shader classification methods.
Definition qgis.h:1513
MapLayerLegendFlag
Map layer legend flags.
Definition qgis.h:4663
ZonalStatisticResult
Zonal statistics result codes.
Definition qgis.h:6114
ScriptLanguage
Scripting languages.
Definition qgis.h:4587
QFlags< BrowserItemCapability > BrowserItemCapabilities
Browser item capabilities.
Definition qgis.h:986
QFlags< NetworkRequestFlag > NetworkRequestFlags
Flags controlling behavior of network requests.
Definition qgis.h:195
FeatureAvailability
Possible return value for QgsFeatureSource::hasFeatures() to determine if a source is empty.
Definition qgis.h:598
PlotAxisType
Plots axis types.
Definition qgis.h:3420
TiledSceneProviderCapability
Tiled scene data provider capabilities.
Definition qgis.h:5937
LabelMultiLineAlignment
Text alignment for multi-line labels.
Definition qgis.h:1398
PointCloudProfileType
Types of elevation profiles to generate for point cloud sources.
Definition qgis.h:4315
RasterBandStatistic
Available raster band statistics.
Definition qgis.h:6255
QFlags< VectorTileProviderCapability > VectorTileProviderCapabilities
Vector tile data provider capabilities.
Definition qgis.h:5914
AuthConfigurationStorageCapability
Authentication configuration storage capabilities.
Definition qgis.h:105
QFlags< ZonalStatistic > ZonalStatistics
Statistics to be calculated during a zonal statistics operation.
Definition qgis.h:6105
VectorDataProviderTemporalMode
Vector data provider temporal handling modes.
Definition qgis.h:2681
TextRenderFormat
Options for rendering text.
Definition qgis.h:2899
DocumentationBrowser
Documentation API browser.
Definition qgis.h:6328
DataType
Raster data types.
Definition qgis.h:390
Q_ENUM(ProfileSurfaceSymbology)
QFlags< ViewSyncModeFlag > ViewSyncModeFlags
Definition qgis.h:3568
QFlags< SublayerQueryFlag > SublayerQueryFlags
Sublayer query flags.
Definition qgis.h:1472
SystemOfMeasurement
Systems of unit measurement.
Definition qgis.h:5088
RasterAttributeTableFieldUsage
The RasterAttributeTableFieldUsage enum represents the usage of a Raster Attribute Table field.
Definition qgis.h:1660
VerticalAxisInversion
Vertical axis inversion options for 3D views.
Definition qgis.h:4277
QFlags< CoordinateTransformationFlag > CoordinateTransformationFlags
Coordinate transformation flags.
Definition qgis.h:2767
RelationshipCapability
Relationship capabilities.
Definition qgis.h:4540
RasterBuildPyramidOption
Raster pyramid building options.
Definition qgis.h:4939
QFlags< VectorProviderCapability > VectorProviderCapabilities
Vector data provider capabilities.
Definition qgis.h:557
NavigationMode
The navigation mode used by 3D cameras.
Definition qgis.h:4252
static int geosVersionMajor()
GEOS Major version number linked.
Definition qgis.cpp:760
LinearReferencingPlacement
Defines how/where the labels should be placed in a linear referencing symbol layer.
Definition qgis.h:3235
TileChildrenAvailability
Possible availability states for a tile's children.
Definition qgis.h:5984
PointCloudZoomOutRenderBehavior
Point cloud zoom out options.
Definition qgis.h:6401
LayerType
Types of layers that can be added to a map.
Definition qgis.h:204
QFlags< AnnotationItemFlag > AnnotationItemFlags
Annotation item flags.
Definition qgis.h:2543
FieldOrigin
Field origin.
Definition qgis.h:1777
LinearReferencingLabelSource
Defines what quantity to use for the labels shown in a linear referencing symbol layer.
Definition qgis.h:3249
LabelWhitespaceCollisionHandling
Label whitespace collision handling.
Definition qgis.h:1201
RasterRangeExtent
Describes the extent used to compute raster ranges (min/max values).
Definition qgis.h:1633
QFlags< Statistic > Statistics
Statistics to be calculated for generic values.
Definition qgis.h:6192
PlotToolFlag
Flags that control the way the QgsPlotTools operate.
Definition qgis.h:4205
RenderUnit
Rendering size units.
Definition qgis.h:5305
static QString geographicCrsAuthId()
Geographic coordinate system auth:id string for a default geographic CRS (EPSG:4326).
Definition qgis.h:6675
CoordinateOrder
Order of coordinates.
Definition qgis.h:2475
SelectionFlag
Flags which control feature selection behavior.
Definition qgis.h:1870
QFlags< SettingsTreeNodeOption > SettingsTreeNodeOptions
Definition qgis.h:692
EndCapStyle
End cap styles for buffers.
Definition qgis.h:2181
ScaleCalculationMethod
Scale calculation logic.
Definition qgis.h:5407
QFlags< TiledSceneRequestFlag > TiledSceneRequestFlags
Flags which control how tiled scene requests behave.
Definition qgis.h:6007
static bool hasSfcgal()
Returns true if the QGIS build contains SFCGAL.
Definition qgis.cpp:709
QFlags< MapLayerActionFlag > MapLayerActionFlags
Map layer action flags.
Definition qgis.h:4786
QFlags< MapLayerProperty > MapLayerProperties
Map layer properties.
Definition qgis.h:2358
QFlags< LoadStyleFlag > LoadStyleFlags
Flags for loading layer styles.
Definition qgis.h:260
BabelCommandFlag
Babel command flags, which control how commands and arguments are generated for executing GPSBabel pr...
Definition qgis.h:2086
QFlags< LabelingFlag > LabelingFlags
Flags that affect drawing and placement of labels.
Definition qgis.h:2934
FieldDomainType
Types of field domain.
Definition qgis.h:4042
MapLayerRendererFlag
Flags which control how map layer renderers behave.
Definition qgis.h:2857
RenderContextFlag
Flags which affect rendering operations.
Definition qgis.h:2821
RasterPipeInterfaceRole
Raster pipe interface roles.
Definition qgis.h:1526
CoverageValidityResult
Coverage validity results.
Definition qgis.h:2240
DataProviderReadFlag
Flags which control data provider construction.
Definition qgis.h:488
ScaleBarSegmentSizeMode
Modes for setting size for scale bar segments.
Definition qgis.h:5439
Aggregate
Available aggregates to calculate.
Definition qgis.h:6132
static int sfcgalVersionInt()
Returns the version of the SFCGAL library if QGIS is built with SFCGAL.
Definition qgis.cpp:718
SymbolPreviewFlag
Flags for controlling how symbol preview images are generated.
Definition qgis.h:883
static const double DEFAULT_SEARCH_RADIUS_MM
Identify search radius in mm.
Definition qgis.h:6501
AnnotationItemGuiFlag
Flags for controlling how an annotation item behaves in the GUI.
Definition qgis.h:2566
MapBoxGlStyleSourceType
Available MapBox GL style source types.
Definition qgis.h:4461
LayoutUnitType
Types of layout units.
Definition qgis.h:5345
VectorDataProviderAttributeEditCapability
Attribute editing capabilities which may be supported by vector data providers.
Definition qgis.h:611
DashPatternLineEndingRule
Dash pattern line ending rules.
Definition qgis.h:3362
FieldMetadataProperty
Standard field metadata values.
Definition qgis.h:1818
MapGridAnnotationType
Annotation coordinate type.
Definition qgis.h:5661
TiledSceneRequestFlag
Flags which control how tiled scene requests behave.
Definition qgis.h:5997
RasterRendererCapability
Raster renderer capabilities.
Definition qgis.h:1596
VertexMarkerType
Editing vertex markers, used for showing vertices during a edit operation.
Definition qgis.h:1906
HistoryProviderBackend
History provider backends.
Definition qgis.h:3589
static const double DEFAULT_SEGMENT_EPSILON
Default snapping tolerance for segments.
Definition qgis.h:6573
RasterExportType
Raster file export types.
Definition qgis.h:1702
SublayerPromptMode
Specifies how to handle layer sources with multiple sublayers.
Definition qgis.h:1761
TextVerticalAlignment
Text vertical alignment.
Definition qgis.h:3034
RelationshipCardinality
Relationship cardinality.
Definition qgis.h:4526
GradientType
Gradient types.
Definition qgis.h:3278
QFlags< ScriptLanguageCapability > ScriptLanguageCapabilities
Script language capabilities.
Definition qgis.h:4622
VectorProfileType
Types of elevation profiles to generate for vector sources.
Definition qgis.h:4303
GpsFeatureType
GPS feature types.
Definition qgis.h:2100
SourceHierarchyLevel
Defines the structural levels within a data source hierarchy.
Definition qgis.h:1451
VectorLayerTypeFlag
Vector layer type flags.
Definition qgis.h:432
MakeValidMethod
Algorithms to use when repairing invalid geometries.
Definition qgis.h:2253
RangeLimits
Describes how the limits of a range are handled.
Definition qgis.h:4093
QFlags< ProjectFlag > ProjectFlags
Definition qgis.h:4196
VectorTemporalLimitMode
Mode for the handling of the limits of the filtering timeframe for vector features.
Definition qgis.h:2669
QFlags< ProcessingParameterFlag > ProcessingParameterFlags
Flags which dictate the behavior of Processing parameters.
Definition qgis.h:3863
SqlLayerDefinitionCapability
SqlLayerDefinitionCapability enum lists the arguments supported by the provider when creating SQL que...
Definition qgis.h:1112
static int versionInt()
Version number used for comparing versions using the "Check QGIS Version" function.
Definition qgis.cpp:687
VectorEditResult
Specifies the result of a vector layer edit operation.
Definition qgis.h:1891
QFlags< VectorDataProviderAttributeEditCapability > VectorDataProviderAttributeEditCapabilities
Attribute editing capabilities which may be supported by vector data providers.
Definition qgis.h:623
Axis
Cartesian axes.
Definition qgis.h:2524
QFlags< ProcessingAlgorithmDocumentationFlag > ProcessingAlgorithmDocumentationFlags
Flags describing algorithm behavior for documentation purposes.
Definition qgis.h:3716
QFlags< RelationshipCapability > RelationshipCapabilities
Relationship capabilities.
Definition qgis.h:4552
QFlags< SymbolRenderHint > SymbolRenderHints
Symbol render hints.
Definition qgis.h:798
VolumeUnit
Units of volume.
Definition qgis.h:5237
CurvedTextFlag
Flags controlling behavior of curved text generation.
Definition qgis.h:3063
AttributeEditorType
Attribute editor types.
Definition qgis.h:5767
QFlags< LegendJsonRenderFlag > LegendJsonRenderFlags
Definition qgis.h:4721
QFlags< ProviderStyleStorageCapability > ProviderStyleStorageCapabilities
Definition qgis.h:5743
EmbeddedScriptMode
Authorisation to run script embedded in projects.
Definition qgis.h:445
SymbolLayerUserFlag
User-specified flags controlling behavior of symbol layers.
Definition qgis.h:921
InvalidGeometryCheck
Methods for handling of features with invalid geometries.
Definition qgis.h:2311
QFlags< SymbolFlag > SymbolFlags
Symbol flags.
Definition qgis.h:874
QFlags< ProcessingFeatureSourceDefinitionFlag > ProcessingFeatureSourceDefinitionFlags
Flags which control behavior for a Processing feature source.
Definition qgis.h:3785
MapGridFrameStyle
Style for map grid frames.
Definition qgis.h:5600
PointCloudAccessType
The access type of the data, local is for local files and remote for remote files (over HTTP).
Definition qgis.h:6390
ProfileExportType
Types of export for elevation profiles.
Definition qgis.h:4342
MeshElevationMode
Mesh layer elevation modes.
Definition qgis.h:4121
ProjectFileFormat
Flags which control project read behavior.
Definition qgis.h:4397
SnappingMode
SnappingMode defines on which layer the snapping is performed.
Definition qgis.h:758
SymbolType
Symbol types.
Definition qgis.h:631
RasterColorInterpretation
Raster color interpretation.
Definition qgis.h:4834
static const int USER_CRS_START_ID
Minimum ID number for a user-defined projection.
Definition qgis.h:6564
ProfileSurfaceSymbology
Surface symbology type for elevation profile plots.
Definition qgis.h:4290
LabelPlacementEngineVersion
Labeling placement engine version.
Definition qgis.h:2945
Q_ENUM(ProcessingAlgorithmFlag)
static int geosVersionMinor()
GEOS Minor version number linked.
Definition qgis.cpp:765
ColorModel
Color model types.
Definition qgis.h:6302
RendererUsage
Usage of the renderer.
Definition qgis.h:3531
SettingsTreeNodeOption
Options for named list nodes.
Definition qgis.h:687
BabelFormatCapability
Babel GPS format capabilities.
Definition qgis.h:2067
PostgresRelKind
Postgres database relkind options.
Definition qgis.h:5685
SegmentCalculationMethod
brief Method used to calculate the number of segments for circle approximation
Definition qgis.h:6413
GpsConnectionType
GPS connection types.
Definition qgis.h:1933
Q_ENUM(InputControllerType)
QFlags< DatabaseProviderConnectionCapability2 > DatabaseProviderConnectionCapabilities2
Definition qgis.h:5714
MouseHandlesAction
Action to be performed by the mouse handles.
Definition qgis.h:6340
ProcessingFeatureSourceDefinitionFlag
Flags which control behavior for a Processing feature source.
Definition qgis.h:3772
QFlags< TextComponent > TextComponents
Text components.
Definition qgis.h:3004
static QString geoNone()
Constant that holds the string representation for "No ellipse/No CRS".
Definition qgis.h:6665
DevToolsNodeRole
Dev tools node custom data roles.
Definition qgis.h:6457
LoadStyleFlag
Flags for loading layer styles.
Definition qgis.h:250
BetweenLineConstraint
Between line constraints which can be enabled.
Definition qgis.h:4134
QFlags< VectorTileProviderFlag > VectorTileProviderFlags
Vector tile data provider flags.
Definition qgis.h:5896
MetadataDateType
Date types for metadata.
Definition qgis.h:4815
QFlags< RasterTemporalCapabilityFlag > RasterTemporalCapabilityFlags
Flags for raster layer temporal capabilities.
Definition qgis.h:2735
ProcessingFeatureSourceFlag
Flags which control how QgsProcessingFeatureSource fetches features.
Definition qgis.h:3796
RasterIdentifyFormat
Raster identify formats.
Definition qgis.h:4954
MapGridAnnotationDirection
Direction of grid annotations.
Definition qgis.h:5544
TextHorizontalAlignment
Text horizontal alignment.
Definition qgis.h:3015
SymbolFlag
Flags controlling behavior of symbols.
Definition qgis.h:868
LineExtensionSide
Designates whether the line extension constraint is currently soft locked with the previous or next v...
Definition qgis.h:4147
HttpMethod
Different methods of HTTP requests.
Definition qgis.h:1058
WkbType
The WKB type describes the number of dimensions a geometry has.
Definition qgis.h:291
QFlags< SldExportOption > SldExportOptions
Definition qgis.h:723
SymbolCoordinateReference
Symbol coordinate reference modes.
Definition qgis.h:3293
QFlags< ProcessingProviderFlag > ProcessingProviderFlags
Flags indicating how and when an processing provider operates and should be exposed to users.
Definition qgis.h:3657
TileRefinementProcess
Tiled scene tile refinement processes.
Definition qgis.h:5972
QFlags< DateTimeStatistic > DateTimeStatistics
Statistics to be calculated for date/time values.
Definition qgis.h:6217
SelectionRenderingMode
Specifies how a selection should be rendered.
Definition qgis.h:1831
InputControllerType
Input controller types.
Definition qgis.h:5673
TextRendererFlag
Flags which control the behavior of rendering text.
Definition qgis.h:3493
SelectGeometryRelationship
Geometry relationship test to apply for selecting features.
Definition qgis.h:1858
CrsAxisDirection
Coordinate reference system axis directions.
Definition qgis.h:2425
ProcessingModelChildParameterSource
Processing model child parameter sources.
Definition qgis.h:3933
static int geosVersionInt()
GEOS version number linked.
Definition qgis.cpp:750
QFlags< MarkerLinePlacement > MarkerLinePlacements
Definition qgis.h:3226
QFlags< MapCanvasFlag > MapCanvasFlags
Flags controlling behavior of map canvases.
Definition qgis.h:3554
CrsWktVariant
Coordinate reference system WKT formatting variants.
Definition qgis.h:2505
QFlags< TiledSceneRendererFlag > TiledSceneRendererFlags
Flags which control how tiled scene 2D renderers behave.
Definition qgis.h:6029
MapGridAnnotationFormat
Format for displaying map grid annotations.
Definition qgis.h:5563
DocumentationApi
Documentation API.
Definition qgis.h:6314
AutoRefreshMode
Map layer automatic refresh modes.
Definition qgis.h:2368
AnnotationPlacementMode
Annotation item placement modes.
Definition qgis.h:2553
ProcessingAlgorithmFlag
Flags indicating how and when an algorithm operates and should be exposed to users.
Definition qgis.h:3668
SceneMode
The 3D scene mode used in 3D map views.
Definition qgis.h:4265
FieldConfigurationFlag
Configuration flags for fields These flags are meant to be user-configurable and are not describing a...
Definition qgis.h:1794
SettingsOrigin
The setting origin describes where a setting is stored.
Definition qgis.h:4574
HorizontalAnchorPoint
Marker symbol horizontal anchor points.
Definition qgis.h:821
QFlags< CurvedTextFlag > CurvedTextFlags
Flags controlling behavior of curved text generation.
Definition qgis.h:3076
ProcessingParameterFlag
Flags which dictate the behavior of Processing parameters.
Definition qgis.h:3848
LabelOverlapHandling
Label overlap handling.
Definition qgis.h:1188
static const double UI_SCALE_FACTOR
UI scaling factor.
Definition qgis.h:6549
FeatureSymbologyExport
Options for exporting features considering their symbology.
Definition qgis.h:5873
QFlags< LayerFilter > LayerFilters
Definition qgis.h:241
ProcessingDateTimeParameterDataType
Processing date time parameter data types.
Definition qgis.h:3920
CoordinateTransformationFlag
Flags which adjust the coordinate transformations behave.
Definition qgis.h:2756
TextComponent
Text components.
Definition qgis.h:2991
DateTimeStatistic
Available date/time statistics.
Definition qgis.h:6201
AnimationState
Animation states.
Definition qgis.h:2623
TransformDirection
Indicates the direction (forward or inverse) of a transform.
Definition qgis.h:2744
LightSourceType
Light source types for 3D scenes.
Definition qgis.h:4240
QFlags< ProcessingFeatureSourceFlag > ProcessingFeatureSourceFlags
Flags which control how QgsProcessingFeatureSource fetches features.
Definition qgis.h:3808
QFlags< HistoryProviderBackend > HistoryProviderBackends
Definition qgis.h:3594
LabelPredefinedPointPosition
Positions for labels when using the Qgis::LabelPlacement::OrderedPositionsAroundPoint placement mode.
Definition qgis.h:1262
QFlags< FieldConfigurationFlag > FieldConfigurationFlags
Configuration flags for fields These flags are meant to be user-configurable and are not describing a...
Definition qgis.h:1809
UpsideDownLabelHandling
Handling techniques for upside down labels.
Definition qgis.h:1383
static const double DEFAULT_POINT_SIZE
The default size (in millimeters) for point marker symbols.
Definition qgis.h:6567
DeviceConnectionStatus
GPS connection status.
Definition qgis.h:1947
ProcessingNumberParameterType
Processing numeric parameter data types.
Definition qgis.h:3888
MapSettingsFlag
Flags which adjust the way maps are rendered.
Definition qgis.h:2789
QFlags< SqlLayerDefinitionCapability > SqlLayerDefinitionCapabilities
SQL layer definition capabilities.
Definition qgis.h:1120
ProcessingLogLevel
Logging level for algorithms to use when pushing feedback messages.
Definition qgis.h:3742
SelectBehavior
Specifies how a selection should be applied.
Definition qgis.h:1844
LayoutRenderFlag
Flags for controlling how a layout is rendered.
Definition qgis.h:5359
Utility class that encapsulates an action based on vector attributes.
Definition qgsaction.h:38
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).
Handles coordinate transforms between two coordinate systems.
Abstract base class for curved geometry type.
Definition qgscurve.h:36
Base class for all items in the model.
Definition qgsdataitem.h:50
Abstract base class for spatial data provider implementations.
Calculator for summary statistics and aggregates for a list of datetimes.
Contains configuration settings for an editor form.
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.
Definition qgsfields.h:46
A geometry is the spatial representation of a feature.
Encapsulates information relating to a GPS position fix.
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.
Definition qgslabeling.h:33
A browser item that represents a layer that can be opened with one of the providers.
An individual grid which is drawn above the map content in a QgsLayoutItemMap.
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.
Definition qgsmaplayer.h:83
Contains configuration for rendering maps.
Abstract base class for marker symbol layers.
Interface for showing messages from QGIS in GUI independent way.
Registry for temporary fetched files.
Contains miscellaneous painting utility functions.
Definition qgspainting.h:32
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.
A parameter for processing algorithms that need a list of input vector layers to construct a TIN.
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,...
Definition qgsproject.h:113
A store for object properties.
Holds data provider key, description, and associated shared library file or function pointer informat...
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.
Raster namespace.
Definition qgsraster.h:32
Represents a relationship between two vector layers.
Definition qgsrelation.h:42
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.
Definition qgis.h:6814
Object * operator->()
Returns pointer to blocked QObject.
Definition qgis.h:6832
QgsSignalBlocker(Object *object)
Constructor for QgsSignalBlocker.
Definition qgis.h:6821
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.
Definition qgssymbol.h:231
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.
Utility functions for 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.
Definition qgswkbtypes.h:42
FeatureCountState
Enumeration of feature count states.
Definition qgis.h:566
@ Points
Point based rendering, requires point data.
@ Lines
Line based rendering, requires line 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.
Definition qgis.h:7454
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...
Definition qgis.cpp:606
CORE_EXPORT uint qHash(const QVariant &variant)
Hash for QVariant.
Definition qgis.cpp:611
bool operator>(const QVariant &v1, const QVariant &v2)
Compares two QVariant values and returns whether the first is greater than the second.
Definition qgis.h:7364
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...
Definition qgis.cpp:657
Q_DECL_DEPRECATED const long GEOSRID
Numeric ID for the EPSG:4326 geographic coordinate system.
Definition qgis.h:7447
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.
Definition qgis.h:7160
QString qgsDoubleToString(double a, int precision=17)
Returns a string representation of a double.
Definition qgis.h:6867
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.
Definition qgis.h:7024
QString qgsEnumValueToKey(const T &value, bool *returnOk=nullptr)
Returns the value for the given key of an enum.
Definition qgis.h:7141
QString qgsFlagValueToKeys(const T &value, bool *returnOk=nullptr)
Returns the value for the given keys of a flag.
Definition qgis.h:7199
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.
Definition qgis.h:7007
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.
Definition qgis.h:7221
CORE_EXPORT bool qgsVariantGreaterThan(const QVariant &lhs, const QVariant &rhs)
Compares two QVariant values and returns whether the first is greater than the second.
Definition qgis.cpp:601
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...
Definition qgis.h:7473
const QMap< T, QString > qgsEnumMap()
Returns a map of all enum entries.
Definition qgis.h:7124
bool qgsFloatNear(float a, float b, float epsilon=4 *FLT_EPSILON)
Compare two floats (but allow some difference).
Definition qgis.h:6961
CORE_EXPORT int qgsVariantCompare(const QVariant &lhs, const QVariant &rhs, bool strictTypeCheck=false)
Compares two QVariant values.
Definition qgis.cpp:139
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.
Definition qgis.h:7041
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...
Definition qgis.cpp:91
const QList< T > qgsEnumList()
Returns a list all enum entries.
Definition qgis.h:7107
double qgsRound(double number, int places)
Returns a double number, rounded (as close as possible) to the specified number of places.
Definition qgis.h:6991
bool qgsDoubleNear(double a, double b, double epsilon=4 *std::numeric_limits< double >::epsilon())
Compare two doubles (but allow some difference).
Definition qgis.h:6950
bool qgsNanCompatibleEquals(double a, double b)
Compare two doubles, treating nan values as equal.
Definition qgis.h:6912
QgsSignalBlocker< Object > whileBlocking(Object *object)
Temporarily blocks signals from a QObject while calling a single method from the object.
Definition qgis.h:6854
void CORE_EXPORT * qgsMalloc(size_t size)
Allocates size bytes and returns a pointer to the allocated memory.
Definition qgis.cpp:112
QMap< QString, QString > QgsStringMap
Definition qgis.h:7463
Q_DECL_DEPRECATED const long GEO_EPSG_CRS_ID
Numeric ID for the EPSG:4326 geographic coordinate system.
Definition qgis.h:7461
bool qgsDoubleNearSig(double a, double b, int significantDigits=10)
Compare two doubles using specified number of significant digits.
Definition qgis.h:6967
void CORE_EXPORT qgsFree(void *ptr)
Frees the memory space pointed to by ptr.
Definition qgis.cpp:134
bool qgsNumberNear(T a, T b, T epsilon=std::numeric_limits< T >::epsilon() *4)
Compare two numbers of type T (but allow some difference).
Definition qgis.h:6932
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...
Definition qgis.cpp:105
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...
Definition qgis.cpp:98
CORE_EXPORT bool qgsVariantLessThan(const QVariant &lhs, const QVariant &rhs)
Compares two QVariant values and returns whether the first is less than the second.
Definition qgis.cpp:596
#define QHASH_FOR_CLASS_ENUM(T)
Definition qgis.h:48
bool operator<(const QVariant &v1, const QVariant &v2)
Compares two QVariant values and returns whether the first is less than the second.
Definition qgis.h:7380
#define SIP_DEPRECATED
Definition qgis_sip.h:113
#define SIP_ENUM_BASETYPE(type)
Definition qgis_sip.h:274
#define SIP_SKIP
Definition qgis_sip.h:133
#define SIP_MONKEYPATCH_SCOPEENUM_UNNEST(OUTSIDE_CLASS, FORMERNAME)
Definition qgis_sip.h:267
#define SIP_MONKEYPATCH_FLAGS_UNNEST(OUTSIDE_CLASS, FORMERNAME)
Definition qgis_sip.h:268
#define SIP_MONKEYPATCH_SCOPEENUM
Definition qgis_sip.h:266
#define SIP_MONKEYPATCH_COMPAT_NAME(FORMERNAME)
Definition qgis_sip.h:269
Q_DECLARE_METATYPE(QgsDatabaseQueryLogEntry)
Q_DECLARE_OPERATORS_FOR_FLAGS(QgsProjectionSelectionWidget::CrsOptions)
Utility class for identifying a unique vertex within a geometry.
Definition qgsvertexid.h:34