QGIS API Documentation 3.41.0-Master (181b2f43d8e)
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 <QMetaEnum>
23#include <cfloat>
24#include <memory>
25#include <cmath>
26
27#include "qgis_core.h"
28#include "qgis_sip.h"
29
30#ifdef SIP_RUN
31% ModuleHeaderCode
32#include <qgis.h>
33% End
34
35% ModuleCode
36int QgisEvent = QEvent::User + 1;
37% End
38#endif
39
40#ifndef SIP_RUN
41// qHash implementation for scoped enum type
42// https://gitlab.com/frostasm/programming-knowledge-base/-/snippets/20120
43#define QHASH_FOR_CLASS_ENUM(T) \
44 inline uint qHash(const T &t, uint seed) { \
45 return ::qHash(static_cast<typename std::underlying_type<T>::type>(t), seed); \
46 }
47#endif
48
53class CORE_EXPORT Qgis
54{
55 Q_GADGET
56 Q_CLASSINFO( "RegisterEnumClassesUnscoped", "false" )
57
58 public:
59
65 static QString version();
66
72 static int versionInt();
73
79 static QString releaseName();
80
82 static const char *QGIS_DEV_VERSION;
83
89 static QString devVersion();
90
91 // Enumerations
92 //
93
100 {
101 ClearStorage = 1 << 0,
102
103 ReadConfiguration = 1 << 1,
104 UpdateConfiguration = 1 << 2,
105 DeleteConfiguration = 1 << 3,
106 CreateConfiguration = 1 << 4,
107
108 ReadCertificateIdentity = 1 << 5,
109 UpdateCertificateIdentity = 1 << 6,
110 DeleteCertificateIdentity = 1 << 7,
111 CreateCertificateIdentity = 1 << 8,
112
113 ReadSslCertificateCustomConfig = 1 << 9,
114 UpdateSslCertificateCustomConfig = 1 << 10,
115 DeleteSslCertificateCustomConfig = 1 << 11,
116 CreateSslCertificateCustomConfig = 1 << 12,
117
118 ReadCertificateAuthority = 1 << 13,
119 UpdateCertificateAuthority = 1 << 14,
120 DeleteCertificateAuthority = 1 << 15,
121 CreateCertificateAuthority = 1 << 16,
122
123 ReadCertificateTrustPolicy = 1 << 17,
124 UpdateCertificateTrustPolicy = 1 << 18,
125 DeleteCertificateTrustPolicy = 1 << 19,
126 CreateCertificateTrustPolicy = 1 << 20,
127
128 ReadMasterPassword = 1 << 21,
129 UpdateMasterPassword = 1 << 22,
130 DeleteMasterPassword = 1 << 23,
131 CreateMasterPassword = 1 << 24,
132
133 ReadSetting = 1 << 25,
134 UpdateSetting = 1 << 26,
135 DeleteSetting = 1 << 27,
136 CreateSetting = 1 << 28,
137
138 };
139 Q_ENUM( AuthConfigurationStorageCapability )
140
141
147
148
154 {
155 Info = 0,
156 Warning = 1,
157 Critical = 2,
158 Success = 3,
159 NoLevel = 4,
160 };
161 Q_ENUM( MessageLevel )
162
163
169 {
170 Vector SIP_MONKEYPATCH_COMPAT_NAME( VectorLayer ),
171 Raster SIP_MONKEYPATCH_COMPAT_NAME( RasterLayer ),
172 Plugin SIP_MONKEYPATCH_COMPAT_NAME( PluginLayer ),
173 Mesh SIP_MONKEYPATCH_COMPAT_NAME( MeshLayer ),
174 VectorTile SIP_MONKEYPATCH_COMPAT_NAME( VectorTileLayer ),
175 Annotation SIP_MONKEYPATCH_COMPAT_NAME( AnnotationLayer ),
176 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( PointCloudLayer ),
177 Group SIP_MONKEYPATCH_COMPAT_NAME( GroupLayer ),
178 TiledScene,
179 };
180 Q_ENUM( LayerType )
181
182
188 {
189 RasterLayer = 1,
190 NoGeometry = 2,
191 PointLayer = 4,
192 LineLayer = 8,
193 PolygonLayer = 16,
194 HasGeometry = PointLayer | LineLayer | PolygonLayer,
195 VectorLayer = NoGeometry | HasGeometry,
196 PluginLayer = 32,
197 WritableLayer = 64,
198 MeshLayer = 128,
199 VectorTileLayer = 256,
200 PointCloudLayer = 512,
201 AnnotationLayer = 1024,
202 TiledSceneLayer = 2048,
203 All = RasterLayer | VectorLayer | PluginLayer | MeshLayer | VectorTileLayer | PointCloudLayer | AnnotationLayer | TiledSceneLayer,
204 SpatialLayer = RasterLayer | HasGeometry | PluginLayer | MeshLayer | VectorTileLayer | PointCloudLayer | AnnotationLayer | TiledSceneLayer
205 };
206 Q_DECLARE_FLAGS( LayerFilters, LayerFilter )
207 Q_FLAG( LayerFilters )
208
209
214 enum class LoadStyleFlag : int SIP_ENUM_BASETYPE( IntFlag )
215 {
216 IgnoreMissingStyleErrors = 1 << 0,
217 };
218 Q_ENUM( LoadStyleFlag )
219
220
225 Q_DECLARE_FLAGS( LoadStyleFlags, LoadStyleFlag )
226 Q_FLAG( LoadStyleFlags )
227
256 {
257 Unknown = 0,
258 Point = 1,
259 LineString = 2,
260 Polygon = 3,
261 Triangle = 17,
262 MultiPoint = 4,
263 MultiLineString = 5,
264 MultiPolygon = 6,
265 GeometryCollection = 7,
266 CircularString = 8,
267 CompoundCurve = 9,
268 CurvePolygon = 10,
269 MultiCurve = 11,
270 MultiSurface = 12,
271 PolyhedralSurface = 15,
272 TIN = 16,
273 NoGeometry = 100,
274 PointZ = 1001,
275 LineStringZ = 1002,
276 PolygonZ = 1003,
277 TriangleZ = 1017,
278 MultiPointZ = 1004,
279 MultiLineStringZ = 1005,
280 MultiPolygonZ = 1006,
281 GeometryCollectionZ = 1007,
282 CircularStringZ = 1008,
283 CompoundCurveZ = 1009,
284 CurvePolygonZ = 1010,
285 MultiCurveZ = 1011,
286 MultiSurfaceZ = 1012,
287 PolyhedralSurfaceZ = 1015,
288 TINZ = 1016,
289 PointM = 2001,
290 LineStringM = 2002,
291 PolygonM = 2003,
292 TriangleM = 2017,
293 MultiPointM = 2004,
294 MultiLineStringM = 2005,
295 MultiPolygonM = 2006,
296 GeometryCollectionM = 2007,
297 CircularStringM = 2008,
298 CompoundCurveM = 2009,
299 CurvePolygonM = 2010,
300 MultiCurveM = 2011,
301 MultiSurfaceM = 2012,
302 PolyhedralSurfaceM = 2015,
303 TINM = 2016,
304 PointZM = 3001,
305 LineStringZM = 3002,
306 PolygonZM = 3003,
307 MultiPointZM = 3004,
308 MultiLineStringZM = 3005,
309 MultiPolygonZM = 3006,
310 GeometryCollectionZM = 3007,
311 CircularStringZM = 3008,
312 CompoundCurveZM = 3009,
313 CurvePolygonZM = 3010,
314 MultiCurveZM = 3011,
315 MultiSurfaceZM = 3012,
316 PolyhedralSurfaceZM = 3015,
317 TINZM = 3016,
318 TriangleZM = 3017,
319 Point25D = 0x80000001,
320 LineString25D,
321 Polygon25D,
322 MultiPoint25D,
323 MultiLineString25D,
324 MultiPolygon25D
325 };
326 Q_ENUM( WkbType )
327
328
337 {
338 Point SIP_MONKEYPATCH_COMPAT_NAME( PointGeometry ),
339 Line SIP_MONKEYPATCH_COMPAT_NAME( LineGeometry ),
340 Polygon SIP_MONKEYPATCH_COMPAT_NAME( PolygonGeometry ),
341 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownGeometry ),
342 Null SIP_MONKEYPATCH_COMPAT_NAME( NullGeometry ),
343 };
344 Q_ENUM( GeometryType )
345
346
351 {
352 UnknownDataType = 0,
353 Byte = 1,
354 Int8 = 14,
355 UInt16 = 2,
356 Int16 = 3,
357 UInt32 = 4,
358 Int32 = 5,
359 Float32 = 6,
360 Float64 = 7,
361 CInt16 = 8,
362 CInt32 = 9,
363 CFloat32 = 10,
364 CFloat64 = 11,
365 ARGB32 = 12,
366 ARGB32_Premultiplied = 13
367 };
368 Q_ENUM( DataType )
369
370
375 enum class CaptureTechnique : int
376 {
377 StraightSegments,
378 CircularString,
379 Streaming,
380 Shape,
381 };
382 Q_ENUM( CaptureTechnique )
383
384
389 enum class VectorLayerTypeFlag : int SIP_ENUM_BASETYPE( IntFlag )
390 {
391 SqlQuery = 1 << 0
392 };
393 Q_ENUM( VectorLayerTypeFlag )
396 Q_FLAG( VectorLayerTypeFlags )
397
402 enum class PythonEmbeddedMode SIP_MONKEYPATCH_SCOPEENUM_UNNEST( Qgis, PythonMacroMode ) : int
403 {
404 Never = 0,
405 Ask = 1,
406 SessionOnly = 2,
407 Always = 3,
408 NotForThisSession,
409 };
410 Q_ENUM( PythonEmbeddedMode )
411
412
416 enum class PythonEmbeddedType : int
417 {
418 Macro = 0,
419 ExpressionFunction = 1,
420 };
421 Q_ENUM( PythonEmbeddedType )
422
423
431 {
432 TrustDataSource SIP_MONKEYPATCH_COMPAT_NAME( FlagTrustDataSource ) = 1 << 0,
433 SkipFeatureCount = 1 << 1,
434 LoadDefaultStyle SIP_MONKEYPATCH_COMPAT_NAME( FlagLoadDefaultStyle ) = 1 << 2,
435 SkipGetExtent = 1 << 3,
436 SkipFullScan = 1 << 4,
437 ForceReadOnly = 1 << 5,
438 SkipCredentialsRequest = 1 << 6,
439 ParallelThreadLoading = 1 << 7,
440 };
441 Q_ENUM( DataProviderReadFlag )
442
443
451 Q_FLAG( DataProviderReadFlags )
452
453 // TODO QGIS 4 -- remove NoCapabilities and rely on VectorProviderCapabilities() instead
454
463 {
464 NoCapabilities = 0,
465 AddFeatures = 1,
466 DeleteFeatures = 1 << 1,
467 ChangeAttributeValues = 1 << 2,
468 AddAttributes = 1 << 3,
469 DeleteAttributes = 1 << 4,
470 CreateSpatialIndex = 1 << 6,
471 SelectAtId = 1 << 7,
472 ChangeGeometries = 1 << 8,
473 SelectEncoding = 1 << 13,
474 CreateAttributeIndex = 1 << 12,
475 SimplifyGeometries = 1 << 14,
476 SimplifyGeometriesWithTopologicalValidation = 1 << 15,
477 TransactionSupport = 1 << 16,
478 CircularGeometries = 1 << 17,
479 ChangeFeatures = 1 << 18,
480 RenameAttributes = 1 << 19,
481 FastTruncate = 1 << 20,
482 ReadLayerMetadata = 1 << 21,
483 WriteLayerMetadata = 1 << 22,
484 CancelSupport = 1 << 23,
485 CreateRenderer = 1 << 24,
486 CreateLabeling = 1 << 25,
487 ReloadData = 1 << 26,
488 FeatureSymbology = 1 << 27,
489 EditingCapabilities = AddFeatures | DeleteFeatures | ChangeAttributeValues | ChangeGeometries | AddAttributes | DeleteAttributes | RenameAttributes,
490 };
491 Q_ENUM( VectorProviderCapability )
492
493
502
509 {
510 Uncounted = -2,
511 UnknownCount = -1,
512 };
513 Q_ENUM( FeatureCountState )
514
515
522 {
523 Unknown SIP_MONKEYPATCH_COMPAT_NAME( SpatialIndexUnknown ) = 0,
524 NotPresent SIP_MONKEYPATCH_COMPAT_NAME( SpatialIndexNotPresent ) = 1,
525 Present SIP_MONKEYPATCH_COMPAT_NAME( SpatialIndexPresent ) = 2,
526 };
527 Q_ENUM( SpatialIndexPresence )
528
529
541 {
542 NoFeaturesAvailable = 0,
543 FeaturesAvailable,
544 FeaturesMaybeAvailable
545 };
546 Q_ENUM( FeatureAvailability )
547
548
554 {
555 EditAlias = 1 << 0,
556 EditComment = 1 << 1,
557 };
558
559 Q_ENUM( VectorDataProviderAttributeEditCapability )
560
561
568
574 {
575 Marker,
576 Line,
577 Fill,
578 Hybrid
579 };
580 Q_ENUM( SymbolType )
581
582
588 {
589 ScaleArea,
590 ScaleDiameter
591 };
592 Q_ENUM( ScaleMethod )
593
594
599 {
600 Custom,
601 Variant,
602 String,
603 StringList,
604 VariantMap,
605 Bool,
606 Integer,
607 Double,
608 EnumFlag,
609 Color
610 };
611 Q_ENUM( SettingsType )
612
613
618 {
619 Root,
620 Standard,
621 NamedList,
622 };
623 Q_ENUM( SettingsTreeNodeType )
624
625
629 enum class SettingsTreeNodeOption : int SIP_ENUM_BASETYPE( IntFlag )
630 {
631 NamedListSelectedItemSetting = 1 << 0,
632 };
633
634 Q_ENUM( SettingsTreeNodeOption )
637
646 {
647 Invalid SIP_MONKEYPATCH_COMPAT_NAME( InvalidProperty ),
648 Static SIP_MONKEYPATCH_COMPAT_NAME( StaticProperty ),
649 Field SIP_MONKEYPATCH_COMPAT_NAME( FieldBasedProperty ),
650 Expression SIP_MONKEYPATCH_COMPAT_NAME( ExpressionBasedProperty ),
651 };
652 Q_ENUM( PropertyType )
653
654
659 enum class SldExportOption : int SIP_ENUM_BASETYPE( IntFlag )
660 {
661 NoOptions = 0,
662 Svg = 1 << 0,
663 Png = 1 << 1,
664 };
665 Q_ENUM( SldExportOption )
667 Q_FLAG( SldExportOptions )
668
674 enum class SldExportVendorExtension : int SIP_ENUM_BASETYPE( IntFlag )
675 {
676 NoVendorExtension = 0,
677 GeoServerVendorExtension = 1 << 1,
678 DeegreeVendorExtension = 1 << 2,
679 };
680 Q_ENUM( SldExportVendorExtension )
681
682
683
687 enum class SettingsOption : int SIP_ENUM_BASETYPE( IntFlag )
688 {
689 SaveFormerValue = 1 << 1,
690 SaveEnumFlagAsInt = 1 << 2,
691 };
692 Q_ENUM( SettingsOption )
693 Q_DECLARE_FLAGS( SettingsOptions, SettingsOption )
694 Q_FLAG( SettingsOptions )
695
701 {
702 ActiveLayer = 1,
703 AllLayers = 2,
704 AdvancedConfiguration = 3,
705 };
706 Q_ENUM( SnappingMode )
707
708
713 {
714 NoSnap SIP_MONKEYPATCH_COMPAT_NAME( NoSnapFlag ) = 0,
715 Vertex SIP_MONKEYPATCH_COMPAT_NAME( VertexFlag ) = 1 << 0,
716 Segment SIP_MONKEYPATCH_COMPAT_NAME( SegmentFlag ) = 1 << 1,
717 Area SIP_MONKEYPATCH_COMPAT_NAME( AreaFlag ) = 1 << 2,
718 Centroid SIP_MONKEYPATCH_COMPAT_NAME( CentroidFlag ) = 1 << 3,
719 MiddleOfSegment SIP_MONKEYPATCH_COMPAT_NAME( MiddleOfSegmentFlag ) = 1 << 4,
720 LineEndpoint SIP_MONKEYPATCH_COMPAT_NAME( LineEndpointFlag ) = 1 << 5,
721 };
722 Q_ENUM( SnappingType )
725 Q_FLAG( SnappingTypes )
726
733 {
734 DynamicRotation = 1 << 1,
735 IsSymbolLayerSubSymbol = 1 << 2,
736 ForceVectorRendering = 1 << 3,
737 ExcludeSymbolBuffers = 1 << 4,
738 };
739 Q_ENUM( SymbolRenderHint )
742 Q_FLAG( SymbolRenderHints )
743
749 enum class SymbolRotationMode : int
750 {
751 RespectMapRotation,
752 IgnoreMapRotation,
753 };
754 Q_ENUM( SymbolRotationMode )
755
756
761 enum class FeatureRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
762 {
763 AffectsLabeling = 1 << 0,
764 };
765 Q_ENUM( FeatureRendererFlag )
766
767
773 Q_FLAG( FeatureRendererFlags )
774
780 enum class SymbolFlag : int SIP_ENUM_BASETYPE( IntFlag )
781 {
782 RendererShouldUseSymbolLevels = 1 << 0,
783 AffectsLabeling = 1 << 1,
784 };
785 Q_ENUM( SymbolFlag )
787 Q_DECLARE_FLAGS( SymbolFlags, SymbolFlag )
788 Q_FLAG( SymbolFlags )
789
796 {
797 FlagIncludeCrosshairsForMarkerSymbols = 1 << 0,
798 };
799 Q_ENUM( SymbolPreviewFlag )
802 Q_FLAG( SymbolPreviewFlags )
803
813 enum class SymbolLayerFlag : int SIP_ENUM_BASETYPE( IntFlag )
814 {
815 DisableFeatureClipping = 1 << 0,
816 CanCalculateMaskGeometryPerFeature = 1 << 1,
817 AffectsLabeling = 1 << 2,
818 };
819 Q_ENUM( SymbolLayerFlag )
822 Q_FLAG( SymbolLayerFlags )
823
833 enum class SymbolLayerUserFlag : int SIP_ENUM_BASETYPE( IntFlag )
834 {
835 DisableSelectionRecoloring = 1 << 0,
836 };
837 Q_ENUM( SymbolLayerUserFlag )
838
839
845 Q_FLAG( SymbolLayerUserFlags )
846
853 {
854 Collection,
855 Directory,
856 Layer,
857 Error,
858 Favorites,
859 Project,
860 Custom,
861 Fields,
862 Field,
863 };
864 Q_ENUM( BrowserItemType )
865
866
872 {
873 NotPopulated,
874 Populating,
875 Populated,
876 };
877 Q_ENUM( BrowserItemState )
878
879
885 {
886 NoCapabilities = 0,
887 SetCrs = 1 << 0,
888 Fertile = 1 << 1,
889 Fast = 1 << 2,
890 Collapse = 1 << 3,
891 Rename = 1 << 4,
892 Delete = 1 << 5,
893 ItemRepresentsFile = 1 << 6,
894 RefreshChildrenWhenItemIsRefreshed = 1 << 7,
895 ReadOnly = 1 << 8,
896 };
897 Q_ENUM( BrowserItemCapability )
901
910 {
911 NoCapabilities SIP_MONKEYPATCH_COMPAT_NAME( NoDataCapabilities ) = 0,
912 Files SIP_MONKEYPATCH_COMPAT_NAME( File ) = 1,
913 Directories SIP_MONKEYPATCH_COMPAT_NAME( Dir ) = 1 << 1,
914 Databases SIP_MONKEYPATCH_COMPAT_NAME( Database ) = 1 << 2,
915 NetworkSources SIP_MONKEYPATCH_COMPAT_NAME( Net ) = 1 << 3,
916 };
917 Q_ENUM( DataItemProviderCapability )
918
919
928
935 {
936 NoType,
937 Vector,
938 Raster,
939 Point,
940 Line,
941 Polygon,
942 TableLayer,
943 Database,
944 Table,
945 Plugin,
946 Mesh,
947 VectorTile,
948 PointCloud,
949 TiledScene,
950 };
951 Q_ENUM( BrowserLayerType )
952
953
959 {
960 Default,
961 NeverMonitor,
962 AlwaysMonitor,
963 };
964 Q_ENUM( BrowserDirectoryMonitoring )
965
966
970 enum class HttpMethod : int
971 {
972 Get = 0,
973 Post = 1
974 };
975 Q_ENUM( HttpMethod )
976
977
983 {
984 Success SIP_MONKEYPATCH_COMPAT_NAME( NoError ) = 0,
985 ErrorCreatingDataSource SIP_MONKEYPATCH_COMPAT_NAME( ErrCreateDataSource ),
986 ErrorCreatingLayer SIP_MONKEYPATCH_COMPAT_NAME( ErrCreateLayer ),
987 ErrorAttributeTypeUnsupported SIP_MONKEYPATCH_COMPAT_NAME( ErrAttributeTypeUnsupported ),
988 ErrorAttributeCreationFailed SIP_MONKEYPATCH_COMPAT_NAME( ErrAttributeCreationFailed ),
989 ErrorProjectingFeatures SIP_MONKEYPATCH_COMPAT_NAME( ErrProjection ),
990 ErrorFeatureWriteFailed SIP_MONKEYPATCH_COMPAT_NAME( ErrFeatureWriteFailed ),
991 ErrorInvalidLayer SIP_MONKEYPATCH_COMPAT_NAME( ErrInvalidLayer ),
992 ErrorInvalidProvider SIP_MONKEYPATCH_COMPAT_NAME( ErrInvalidProvider ),
993 ErrorProviderUnsupportedFeature SIP_MONKEYPATCH_COMPAT_NAME( ErrProviderUnsupportedFeature ),
994 ErrorConnectionFailed SIP_MONKEYPATCH_COMPAT_NAME( ErrConnectionFailed ),
995 UserCanceled SIP_MONKEYPATCH_COMPAT_NAME( ErrUserCanceled ),
996 };
997 Q_ENUM( VectorExportResult )
998
999
1004 {
1005 FieldAliases = 1 << 0,
1006 FieldComments = 1 << 2,
1007 };
1008 Q_ENUM( VectorFileWriterCapability )
1009
1010
1016
1022 {
1023 SubsetStringFilter = 1 << 1,
1024 GeometryColumn = 1 << 2,
1025 PrimaryKeys = 1 << 3,
1026 UnstableFeatureIds = 1 << 4
1027 };
1028 Q_ENUM( SqlLayerDefinitionCapability )
1032
1038 enum class SqlKeywordCategory : int
1039 {
1040 Keyword,
1041 Constant,
1042 Function,
1043 Geospatial,
1044 Operator,
1045 Math,
1046 Aggregate,
1047 String,
1048 Identifier
1049 };
1050 Q_ENUM( SqlKeywordCategory )
1051
1052
1056 enum class DriveType : int
1057 {
1058 Unknown,
1059 Invalid,
1060 Removable,
1061 Fixed,
1062 Remote,
1063 CdRom,
1064 RamDisk,
1065 Cloud,
1066 };
1067 Q_ENUM( DriveType )
1068
1069
1074 {
1075 Deferred SIP_MONKEYPATCH_COMPAT_NAME( DownloadLater ),
1076 Immediate SIP_MONKEYPATCH_COMPAT_NAME( DownloadImmediately ),
1077 };
1078 Q_ENUM( ActionStart )
1079
1080
1086 {
1087 FollowEngineSetting,
1088 NeverShow,
1089 };
1090 Q_ENUM( UnplacedLabelVisibility )
1091
1092
1097 enum class LabelOverlapHandling : int
1098 {
1099 PreventOverlap,
1100 AllowOverlapIfRequired,
1101 AllowOverlapAtNoCost,
1102 };
1103 Q_ENUM( LabelOverlapHandling )
1104
1105
1110 enum class LabelPrioritization : int
1111 {
1112 PreferCloser,
1113 PreferPositionOrdering,
1114 };
1115 Q_ENUM( LabelPrioritization )
1116
1117
1125 {
1126 AroundPoint,
1127 OverPoint,
1128 Line,
1129 Curved,
1130 Horizontal,
1131 Free,
1132 OrderedPositionsAroundPoint,
1133 PerimeterCurved,
1134 OutsidePolygons,
1135 };
1136 Q_ENUM( LabelPlacement )
1137
1138
1146 {
1147 TopLeft,
1148 TopSlightlyLeft,
1149 TopMiddle,
1150 TopSlightlyRight,
1151 TopRight,
1152 MiddleLeft,
1153 MiddleRight,
1154 BottomLeft,
1155 BottomSlightlyLeft,
1156 BottomMiddle,
1157 BottomSlightlyRight,
1158 BottomRight,
1159 OverPoint,
1160 };
1161 Q_ENUM( LabelPredefinedPointPosition )
1162
1163
1172 {
1173 FromPoint,
1174 FromSymbolBounds,
1175 };
1176 Q_ENUM( LabelOffsetType )
1177
1178
1186 {
1187 AboveLeft SIP_MONKEYPATCH_COMPAT_NAME( QuadrantAboveLeft ),
1188 Above SIP_MONKEYPATCH_COMPAT_NAME( QuadrantAbove ),
1189 AboveRight SIP_MONKEYPATCH_COMPAT_NAME( QuadrantAboveRight ),
1190 Left SIP_MONKEYPATCH_COMPAT_NAME( QuadrantLeft ),
1191 Over SIP_MONKEYPATCH_COMPAT_NAME( QuadrantOver ),
1192 Right SIP_MONKEYPATCH_COMPAT_NAME( QuadrantRight ),
1193 BelowLeft SIP_MONKEYPATCH_COMPAT_NAME( QuadrantBelowLeft ),
1194 Below SIP_MONKEYPATCH_COMPAT_NAME( QuadrantBelow ),
1195 BelowRight SIP_MONKEYPATCH_COMPAT_NAME( QuadrantBelowRight ),
1196 };
1197 Q_ENUM( LabelQuadrantPosition )
1198
1199
1206 {
1207 OnLine = 1,
1208 AboveLine = 2,
1209 BelowLine = 4,
1210 MapOrientation = 8,
1211 };
1212 Q_ENUM( LabelLinePlacementFlag )
1213
1214
1222 Q_FLAG( LabelLinePlacementFlags )
1223
1231 {
1232 AllowPlacementOutsideOfPolygon = 1 << 0,
1233 AllowPlacementInsideOfPolygon = 1 << 1,
1234 };
1235 Q_ENUM( LabelPolygonPlacementFlag )
1236
1237
1245
1254 {
1255 FlipUpsideDownLabels SIP_MONKEYPATCH_COMPAT_NAME( Upright ),
1256 AllowUpsideDownWhenRotationIsDefined SIP_MONKEYPATCH_COMPAT_NAME( ShowDefined ),
1257 AlwaysAllowUpsideDown SIP_MONKEYPATCH_COMPAT_NAME( ShowAll )
1258 };
1259 Q_ENUM( UpsideDownLabelHandling )
1260
1261
1269 {
1270 Left SIP_MONKEYPATCH_COMPAT_NAME( MultiLeft ) = 0,
1271 Center SIP_MONKEYPATCH_COMPAT_NAME( MultiCenter ),
1272 Right SIP_MONKEYPATCH_COMPAT_NAME( MultiRight ),
1273 FollowPlacement SIP_MONKEYPATCH_COMPAT_NAME( MultiFollowPlacement ),
1274 Justify SIP_MONKEYPATCH_COMPAT_NAME( MultiJustify ),
1275 };
1276 Q_ENUM( LabelMultiLineAlignment )
1277
1278
1285 {
1286 Vector SIP_MONKEYPATCH_COMPAT_NAME( FilterVector ) = 1,
1287 Raster SIP_MONKEYPATCH_COMPAT_NAME( FilterRaster ),
1288 Mesh SIP_MONKEYPATCH_COMPAT_NAME( FilterMesh ),
1289 MeshDataset SIP_MONKEYPATCH_COMPAT_NAME( FilterMeshDataset ),
1290 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( FilterPointCloud ),
1291 VectorTile,
1292 TiledScene,
1293 };
1294 Q_ENUM( FileFilterType )
1295
1296
1301 enum class SublayerQueryFlag : int SIP_ENUM_BASETYPE( IntFlag )
1302 {
1303 FastScan = 1 << 0,
1304 ResolveGeometryType = 1 << 1,
1305 CountFeatures = 1 << 2,
1306 IncludeSystemTables = 1 << 3,
1307 };
1310 Q_ENUM( SublayerQueryFlag )
1311 Q_FLAG( SublayerQueryFlags )
1312
1313
1318 enum class SublayerFlag : int SIP_ENUM_BASETYPE( IntFlag )
1319 {
1320 SystemTable = 1 << 0,
1321 };
1323 Q_DECLARE_FLAGS( SublayerFlags, SublayerFlag )
1324 Q_ENUM( SublayerFlag )
1325 Q_FLAG( SublayerFlags )
1326
1327
1335 {
1336 Linear SIP_MONKEYPATCH_COMPAT_NAME( Interpolated ) = 0,
1337 Discrete = 1,
1338 Exact = 2,
1339 };
1340 Q_ENUM( ShaderInterpolationMethod )
1341
1342
1350 {
1351 Continuous = 1,
1352 EqualInterval = 2,
1353 Quantile = 3,
1354 };
1355 Q_ENUM( ShaderClassificationMethod )
1356
1357
1363 {
1364 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownRole ) = 0,
1365 Provider SIP_MONKEYPATCH_COMPAT_NAME( ProviderRole ) = 1,
1366 Renderer SIP_MONKEYPATCH_COMPAT_NAME( RendererRole ) = 2,
1367 Brightness SIP_MONKEYPATCH_COMPAT_NAME( BrightnessRole ) = 3,
1368 Resampler SIP_MONKEYPATCH_COMPAT_NAME( ResamplerRole ) = 4,
1369 Projector SIP_MONKEYPATCH_COMPAT_NAME( ProjectorRole ) = 5,
1370 Nuller SIP_MONKEYPATCH_COMPAT_NAME( NullerRole ) = 6,
1371 HueSaturation SIP_MONKEYPATCH_COMPAT_NAME( HueSaturationRole ) = 7,
1372 };
1373 Q_ENUM( RasterPipeInterfaceRole )
1374
1375
1380 {
1382 ResampleFilter,
1384 Provider
1385 };
1386 Q_ENUM( RasterResamplingStage )
1387
1388
1393 enum class RasterRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
1394 {
1395 InternalLayerOpacityHandling = 1 << 0,
1396 UseNoDataForOutOfRangePixels = 1 << 1,
1397 };
1398
1405
1406 Q_ENUM( RasterRendererFlag )
1407 Q_FLAG( RasterRendererFlags )
1408
1409
1415 {
1416 UsesMultipleBands = 1 << 0,
1417 };
1418 Q_ENUM( RasterRendererCapability )
1419
1420
1427
1436 {
1437 NotSet SIP_MONKEYPATCH_COMPAT_NAME( None_ ),
1438 MinimumMaximum SIP_MONKEYPATCH_COMPAT_NAME( MinMax ),
1439 StdDev,
1440 CumulativeCut
1441 };
1442 Q_ENUM( RasterRangeLimit )
1443
1444
1452 {
1453 WholeRaster SIP_MONKEYPATCH_COMPAT_NAME( None_ ),
1454 FixedCanvas SIP_MONKEYPATCH_COMPAT_NAME( CurrentCanvas ),
1455 UpdatedCanvas,
1456 };
1457 Q_ENUM( RasterRangeExtent )
1458
1459
1467 {
1468 Exact,
1469 Estimated,
1470 };
1471 Q_ENUM( RasterRangeAccuracy )
1472
1473
1479 {
1480 Generic = 0,
1481 PixelCount = 1,
1482 Name = 2,
1483 Min = 3,
1484 Max = 4,
1485 MinMax = 5,
1486 Red = 6,
1487 Green = 7,
1488 Blue = 8,
1489 Alpha = 9,
1490 RedMin = 10,
1491 GreenMin = 11,
1492 BlueMin = 12,
1493 AlphaMin = 13,
1494 RedMax = 14,
1495 GreenMax = 15,
1496 BlueMax = 16,
1497 AlphaMax = 17,
1498 MaxCount
1499 };
1500 Q_ENUM( RasterAttributeTableFieldUsage )
1501
1502
1508 {
1509 Thematic = 0,
1510 Athematic = 1
1511 };
1512 Q_ENUM( RasterAttributeTableType )
1513
1514
1521 {
1522 Raw = 0,
1523 RenderedImage SIP_MONKEYPATCH_COMPAT_NAME( Image ) = 1
1524 };
1525 Q_ENUM( RasterExportType )
1526
1527
1534 {
1535 Success SIP_MONKEYPATCH_COMPAT_NAME( NoError ) = 0,
1536 SourceProviderError = 1,
1537 DestinationProviderError SIP_MONKEYPATCH_COMPAT_NAME( DestProviderError ) = 2,
1538 CreateDatasourceError = 3,
1539 WriteError = 4,
1540 NoDataConflict = 5,
1541 Canceled SIP_MONKEYPATCH_COMPAT_NAME( WriteCanceled ) = 6,
1542 };
1543 Q_ENUM( RasterFileWriterResult )
1544
1545
1550 enum class MeshEditingErrorType : int
1551 {
1552 NoError,
1553 InvalidFace,
1554 TooManyVerticesInFace,
1555 FlatFace,
1556 UniqueSharedVertex,
1557 InvalidVertex,
1558 ManifoldFace,
1559 };
1560 Q_ENUM( MeshEditingErrorType )
1561
1562
1567 enum class FilePathType : int
1568 {
1569 Absolute,
1570 Relative,
1571 };
1572 Q_ENUM( FilePathType )
1573
1574
1579 enum class SublayerPromptMode : int
1580 {
1581 AlwaysAsk,
1582 AskExcludingRasterBands,
1583 NeverAskSkip,
1584 NeverAskLoadAll,
1585 };
1586 Q_ENUM( SublayerPromptMode )
1587
1588
1596 {
1597 Unknown SIP_MONKEYPATCH_COMPAT_NAME( OriginUnknown ),
1598 Provider SIP_MONKEYPATCH_COMPAT_NAME( OriginProvider ),
1599 Join SIP_MONKEYPATCH_COMPAT_NAME( OriginJoin ),
1600 Edit SIP_MONKEYPATCH_COMPAT_NAME( OriginEdit ),
1601 Expression SIP_MONKEYPATCH_COMPAT_NAME( OriginExpression )
1602 };
1603 Q_ENUM( FieldOrigin )
1604
1605
1612 enum class FieldConfigurationFlag : int SIP_ENUM_BASETYPE( IntFlag )
1613 {
1614 NoFlag = 0,
1615 NotSearchable = 1 << 1,
1616 HideFromWms = 1 << 2,
1617 HideFromWfs = 1 << 3,
1618 };
1619 Q_ENUM( FieldConfigurationFlag )
1620
1621
1629 Q_FLAG( FieldConfigurationFlags )
1630
1636 enum class FieldMetadataProperty : int
1637 {
1638 GeometryCrs = 0x1000,
1639 GeometryWkbType = 0x1001,
1640 CustomProperty = 0x100000,
1641 };
1642 Q_ENUM( FieldMetadataProperty )
1643
1644
1649 enum class SelectionRenderingMode : int
1650 {
1651 Default,
1652 CustomColor,
1653 CustomSymbol,
1654 };
1655 Q_ENUM( SelectionRenderingMode )
1656
1657
1663 {
1664 SetSelection,
1665 AddToSelection,
1666 IntersectSelection,
1667 RemoveFromSelection,
1668 };
1669 Q_ENUM( SelectBehavior )
1670
1671
1677 {
1678 Intersect,
1679 Within,
1680 };
1681 Q_ENUM( SelectGeometryRelationship )
1682
1683
1688 enum class SelectionFlag : int SIP_ENUM_BASETYPE( IntFlag )
1689 {
1690 SingleFeatureSelection = 1 << 0,
1691 ToggleSelection = 1 << 1,
1692 };
1693
1699 Q_DECLARE_FLAGS( SelectionFlags, SelectionFlag )
1700
1701 Q_ENUM( SelectionFlag )
1702 Q_FLAG( SelectionFlags )
1703
1704
1710 {
1711 Success = 0,
1712 EmptyGeometry = 1,
1713 EditFailed = 2,
1714 FetchFeatureFailed = 3,
1715 InvalidLayer = 4,
1716 };
1717 Q_ENUM( VectorEditResult )
1718
1719
1725 {
1726 SemiTransparentCircle,
1727 Cross,
1728 NoMarker,
1729 };
1730 Q_ENUM( VertexMarkerType )
1731
1732
1736 enum class ContentStatus : int
1737 {
1738 NotStarted,
1739 Running,
1740 Finished,
1741 Failed,
1742 Canceled,
1743 };
1744 Q_ENUM( ContentStatus )
1745
1746
1751 enum class GpsConnectionType : int
1752 {
1753 Automatic,
1754 Internal,
1755 Serial,
1756 Gpsd,
1757 };
1758 Q_ENUM( GpsConnectionType )
1759
1760
1765 enum class DeviceConnectionStatus SIP_MONKEYPATCH_SCOPEENUM_UNNEST( Qgis, GpsConnectionStatus ) : int
1766 {
1767 Disconnected,
1768 Connecting,
1769 Connected,
1770 };
1771 Q_ENUM( DeviceConnectionStatus )
1772
1773
1781 {
1782 NoData,
1783 NoFix,
1784 Fix2D,
1785 Fix3D
1786 };
1788
1789
1796 {
1797 Unknown,
1798 Gps,
1799 Glonass,
1800 Galileo,
1801 BeiDou,
1802 Qzss,
1803 Navic,
1804 Sbas,
1805 };
1807
1814 {
1815 Unknown = -1,
1816 Invalid,
1817 GPS,
1818 DGPS,
1819 PPS,
1820 RTK,
1821 FloatRTK,
1822 Estimated,
1823 Manual,
1824 Simulation,
1825 };
1826 Q_ENUM( GpsQualityIndicator )
1827
1828
1833 enum class GpsNavigationStatus : int
1834 {
1835 NotValid,
1836 Safe,
1837 Caution,
1838 Unsafe,
1839 };
1841
1847 enum class GpsInformationComponent : int SIP_ENUM_BASETYPE( IntFlag )
1848 {
1849 Location = 1 << 0,
1850 Altitude = 1 << 1,
1851 GroundSpeed = 1 << 2,
1852 Bearing = 1 << 3,
1853 TotalTrackLength = 1 << 4,
1854 TrackDistanceFromStart = 1 << 5,
1855 Pdop = 1 << 6,
1856 Hdop = 1 << 7,
1857 Vdop = 1 << 8,
1858 HorizontalAccuracy = 1 << 9,
1859 VerticalAccuracy = 1 << 10,
1860 HvAccuracy = 1 << 11,
1861 SatellitesUsed = 1 << 12,
1862 Timestamp = 1 << 13,
1863 TrackStartTime = 1 << 14,
1864 TrackEndTime = 1 << 15,
1865 TrackDistanceSinceLastPoint = 1 << 16,
1866 TrackTimeSinceLastPoint = 1 << 17,
1867 GeoidalSeparation = 1 << 18,
1868 EllipsoidAltitude = 1 << 19,
1869 };
1870
1877 Q_ENUM( GpsInformationComponent )
1878 Q_FLAG( GpsInformationComponents )
1879
1880
1885 enum class BabelFormatCapability : int SIP_ENUM_BASETYPE( IntFlag )
1886 {
1887 Import = 1 << 0,
1888 Export = 1 << 1,
1889 Waypoints = 1 << 2,
1890 Routes = 1 << 3,
1891 Tracks = 1 << 4,
1892 };
1895 Q_ENUM( BabelFormatCapability )
1896 Q_FLAG( BabelFormatCapabilities )
1897
1898
1904 enum class BabelCommandFlag : int SIP_ENUM_BASETYPE( IntFlag )
1905 {
1906 QuoteFilePaths = 1 << 0,
1907 };
1910 Q_ENUM( BabelCommandFlag )
1911 Q_FLAG( BabelCommandFlags )
1912
1913
1918 enum class GpsFeatureType : int
1919 {
1920 Waypoint,
1921 Route,
1922 Track,
1923 };
1924 Q_ENUM( GpsFeatureType )
1925
1926
1934 {
1935 Success = 0,
1936 NothingHappened = 1000,
1937 InvalidBaseGeometry,
1938 InvalidInputGeometryType,
1939 SelectionIsEmpty,
1940 SelectionIsGreaterThanOne,
1941 GeometryEngineError,
1942 LayerNotEditable,
1943 // Add part issues
1944 AddPartSelectedGeometryNotFound,
1945 AddPartNotMultiGeometry,
1946 // Add ring issues
1947 AddRingNotClosed,
1948 AddRingNotValid,
1949 AddRingCrossesExistingRings,
1950 AddRingNotInExistingFeature,
1951 // Split features
1952 SplitCannotSplitPoint,
1953 GeometryTypeHasChanged,
1954 };
1955 Q_ENUM( GeometryOperationResult )
1956
1957
1963 {
1964 AllowSelfTouchingHoles SIP_MONKEYPATCH_COMPAT_NAME( FlagAllowSelfTouchingHoles ) = 1 << 0,
1965 };
1968 Q_ENUM( GeometryValidityFlag )
1969 Q_FLAG( GeometryValidityFlags )
1970
1971
1976 {
1977 QgisInternal SIP_MONKEYPATCH_COMPAT_NAME( ValidatorQgisInternal ),
1978 Geos SIP_MONKEYPATCH_COMPAT_NAME( ValidatorGeos ),
1979 };
1980 Q_ENUM( GeometryValidationEngine )
1981
1982
1992 Q_ENUM( BufferSide )
1993
1994
2000 {
2001 Round SIP_MONKEYPATCH_COMPAT_NAME( CapRound ) = 1,
2002 Flat SIP_MONKEYPATCH_COMPAT_NAME( CapFlat ),
2003 Square SIP_MONKEYPATCH_COMPAT_NAME( CapSquare ),
2004 };
2005 Q_ENUM( EndCapStyle )
2006
2007
2013 {
2014 Round SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleRound ) = 1,
2015 Miter SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleMiter ),
2016 Bevel SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleBevel ),
2017 };
2018 Q_ENUM( JoinStyle )
2019
2020
2025 enum class GeosCreationFlag : int SIP_ENUM_BASETYPE( IntFlag )
2026 {
2027 RejectOnInvalidSubGeometry = 1 << 0,
2028 SkipEmptyInteriorRings = 1 << 1,
2029 };
2030 Q_ENUM( GeosCreationFlag )
2031
2032
2038 Q_FLAG( GeosCreationFlags )
2039
2045 enum class CoverageValidityResult : int
2046 {
2047 Invalid = 0,
2048 Valid = 1,
2049 Error = 2,
2050 };
2051 Q_ENUM( CoverageValidityResult )
2052
2053
2058 enum class MakeValidMethod : int
2059 {
2060 Linework = 0,
2061 Structure = 1,
2062 };
2063 Q_ENUM( MakeValidMethod )
2064
2065
2073 {
2074 NoFlags = 0,
2075 NoGeometry = 1,
2076 SubsetOfAttributes = 2,
2077 ExactIntersect = 4,
2078 IgnoreStaticNodesDuringExpressionCompilation = 8,
2079 EmbeddedSymbols = 16,
2080 };
2081 Q_ENUM( FeatureRequestFlag )
2082
2083
2091 Q_FLAG( FeatureRequestFlags )
2092
2101 {
2102 NoFilter SIP_MONKEYPATCH_COMPAT_NAME( FilterNone ),
2103 Fid SIP_MONKEYPATCH_COMPAT_NAME( FilterFid ),
2104 Expression SIP_MONKEYPATCH_COMPAT_NAME( FilterExpression ),
2105 Fids SIP_MONKEYPATCH_COMPAT_NAME( FilterFids )
2106 };
2107 Q_ENUM( FeatureRequestFilterType )
2108
2109
2117 {
2118 NoCheck SIP_MONKEYPATCH_COMPAT_NAME( GeometryNoCheck ) = 0,
2119 SkipInvalid SIP_MONKEYPATCH_COMPAT_NAME( GeometrySkipInvalid ) = 1,
2120 AbortOnInvalid SIP_MONKEYPATCH_COMPAT_NAME( GeometryAbortOnInvalid ) = 2,
2121 };
2122 Q_ENUM( InvalidGeometryCheck )
2123
2124
2129 enum class SpatialFilterType : int
2130 {
2131 NoFilter,
2132 BoundingBox,
2133 DistanceWithin,
2134 };
2135 Q_ENUM( SpatialFilterType )
2136
2137
2142 enum class FileOperationFlag : int SIP_ENUM_BASETYPE( IntFlag )
2143 {
2144 IncludeMetadataFile = 1 << 0,
2145 IncludeStyleFile = 1 << 1,
2146 };
2149 Q_ENUM( FileOperationFlag )
2150 Q_FLAG( FileOperationFlags )
2151
2152
2157 enum class MapLayerProperty : int SIP_ENUM_BASETYPE( IntFlag )
2158 {
2159 UsersCannotToggleEditing = 1 << 0,
2160 IsBasemapLayer = 1 << 1,
2161 };
2164 Q_ENUM( MapLayerProperty )
2165 Q_FLAG( MapLayerProperties )
2166
2167
2172 enum class AutoRefreshMode : int
2173 {
2174 Disabled = 0,
2175 ReloadData = 1,
2176 RedrawOnly = 2,
2177 };
2178 Q_ENUM( AutoRefreshMode )
2179
2180
2185 enum class DataProviderFlag : int SIP_ENUM_BASETYPE( IntFlag )
2186 {
2187 IsBasemapSource = 1 << 1,
2188 FastExtent2D = 1 << 2,
2189 FastExtent3D = 1 << 3,
2190 };
2193 Q_ENUM( DataProviderFlag )
2194 Q_FLAG( DataProviderFlags )
2195
2196
2203 enum class CrsType : int
2204 {
2205 Unknown,
2206 Geodetic,
2207 Geocentric,
2208 Geographic2d,
2209 Geographic3d,
2210 Vertical,
2211 Projected,
2212 Compound,
2213 Temporal,
2214 Engineering,
2215 Bound,
2216 Other,
2217 DerivedProjected,
2218 };
2219 Q_ENUM( CrsType )
2220
2221
2228 enum class CrsAxisDirection : int
2229 {
2230 North,
2231 NorthNorthEast,
2232 NorthEast,
2233 EastNorthEast,
2234 East,
2235 EastSouthEast,
2236 SouthEast,
2237 SouthSouthEast,
2238 South,
2239 SouthSouthWest,
2240 SouthWest,
2241 WestSouthWest,
2242 West,
2243 WestNorthWest,
2244 NorthWest,
2245 NorthNorthWest,
2246 GeocentricX,
2247 GeocentricY,
2248 GeocentricZ,
2249 Up,
2250 Down,
2251 Forward,
2252 Aft,
2253 Port,
2254 Starboard,
2255 Clockwise,
2256 CounterClockwise,
2257 ColumnPositive,
2258 ColumnNegative,
2259 RowPositive,
2260 RowNegative,
2261 DisplayRight,
2262 DisplayLeft,
2263 DisplayUp,
2264 DisplayDown,
2265 Future,
2266 Past,
2267 Towards,
2268 AwayFrom,
2269 Unspecified,
2270 };
2271 Q_ENUM( CrsAxisDirection )
2272
2273
2278 enum class CoordinateOrder : int
2279 {
2280 Default,
2281 XY,
2282 YX,
2283 };
2284 Q_ENUM( CoordinateOrder )
2285
2286
2294 {
2295 ShortString,
2296 MediumString,
2297 FullString,
2298 };
2299 Q_ENUM( CrsIdentifierType )
2300
2301
2309 {
2310 Wkt1Gdal SIP_MONKEYPATCH_COMPAT_NAME( WKT1_GDAL ),
2311 Wkt1Esri SIP_MONKEYPATCH_COMPAT_NAME( WKT1_ESRI ),
2312 Wkt2_2015 SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2015 ),
2313 Wkt2_2015Simplified SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2015_SIMPLIFIED ),
2314 Wkt2_2019 SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2019 ),
2315 Wkt2_2019Simplified SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2019_SIMPLIFIED ),
2316 Preferred SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED ) = Wkt2_2019,
2317 PreferredSimplified SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED_SIMPLIFIED ) = Wkt2_2019Simplified,
2318 PreferredGdal SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED_GDAL ) = Wkt2_2019,
2319 };
2320 Q_ENUM( CrsWktVariant )
2321
2322
2327 enum class Axis : int
2328 {
2329 X,
2330 Y,
2331 Z
2332 };
2333 Q_ENUM( Axis )
2334
2335
2340 enum class AnnotationItemFlag : int SIP_ENUM_BASETYPE( IntFlag )
2341 {
2342 ScaleDependentBoundingBox = 1 << 0,
2343 SupportsReferenceScale = 1 << 1,
2344 SupportsCallouts = 1 << 2,
2345 };
2348 Q_ENUM( AnnotationItemFlag )
2349 Q_FLAG( AnnotationItemFlags )
2350
2351
2357 {
2358 SpatialBounds = 0,
2359 FixedSize,
2360 RelativeToMapFrame,
2361 };
2362 Q_ENUM( AnnotationPlacementMode )
2363
2364
2369 enum class AnnotationItemGuiFlag : int SIP_ENUM_BASETYPE( IntFlag )
2370 {
2371 FlagNoCreationTools = 1 << 0,
2372 };
2375 Q_ENUM( AnnotationItemGuiFlag )
2376 Q_FLAG( AnnotationItemGuiFlags )
2377
2378
2383 enum class AnnotationItemNodeType : int
2384 {
2385 VertexHandle,
2386 CalloutHandle,
2387 };
2388 Q_ENUM( AnnotationItemNodeType )
2389
2390
2396 {
2397 Success,
2398 Invalid,
2399 ItemCleared,
2400 };
2401 Q_ENUM( AnnotationItemEditOperationResult )
2402
2403
2411 {
2412 Disabled SIP_MONKEYPATCH_COMPAT_NAME( NavigationOff ),
2413 Animated,
2414 FixedRange,
2415 Movie,
2416 };
2417 Q_ENUM( TemporalNavigationMode )
2418
2419
2427 {
2428 Forward,
2429 Reverse,
2430 Idle,
2431 };
2432 Q_ENUM( AnimationState )
2433
2434
2439 enum class PlaybackOperation : int
2440 {
2441 SkipToStart,
2442 PreviousFrame,
2443 PlayReverse,
2444 Pause,
2445 PlayForward,
2446 NextFrame,
2447 SkipToEnd,
2448 };
2449 Q_ENUM( PlaybackOperation )
2450
2451
2457 {
2458 FixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ModeFixedTemporalRange ) = 0,
2459 FeatureDateTimeInstantFromField SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeInstantFromField ),
2460 FeatureDateTimeStartAndEndFromFields SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndEndFromFields ),
2461 FeatureDateTimeStartAndDurationFromFields SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndDurationFromFields ),
2462 FeatureDateTimeStartAndEndFromExpressions SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndEndFromExpressions ),
2463 RedrawLayerOnly SIP_MONKEYPATCH_COMPAT_NAME( ModeRedrawLayerOnly ),
2464 };
2465 Q_ENUM( VectorTemporalMode )
2466
2467
2473 {
2474 IncludeBeginExcludeEnd = 0,
2475 IncludeBeginIncludeEnd,
2476 };
2477 Q_ENUM( VectorTemporalLimitMode )
2478
2479
2485 {
2486 HasFixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ProviderHasFixedTemporalRange ) = 0,
2487 StoresFeatureDateTimeInstantInField SIP_MONKEYPATCH_COMPAT_NAME( ProviderStoresFeatureDateTimeInstantInField ),
2488 StoresFeatureDateTimeStartAndEndInSeparateFields SIP_MONKEYPATCH_COMPAT_NAME( ProviderStoresFeatureDateTimeStartAndEndInSeparateFields ),
2489 };
2490 Q_ENUM( VectorDataProviderTemporalMode )
2491
2492
2498 {
2499 FixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ModeFixedTemporalRange ) = 0,
2500 TemporalRangeFromDataProvider SIP_MONKEYPATCH_COMPAT_NAME( ModeTemporalRangeFromDataProvider ) = 1,
2501 RedrawLayerOnly SIP_MONKEYPATCH_COMPAT_NAME( ModeRedrawLayerOnly ) = 2,
2502 FixedRangePerBand = 3,
2503 RepresentsTemporalValues = 4,
2504 };
2505 Q_ENUM( RasterTemporalMode )
2506
2507
2513 {
2514 MatchUsingWholeRange,
2515 MatchExactUsingStartOfRange,
2516 MatchExactUsingEndOfRange,
2517 FindClosestMatchToStartOfRange,
2518 FindClosestMatchToEndOfRange
2519 };
2520 Q_ENUM( TemporalIntervalMatchMethod )
2521
2522
2528 {
2529 RequestedTimesMustExactlyMatchAllAvailableTemporalRanges = 1 << 0,
2530 };
2531 Q_ENUM( RasterTemporalCapabilityFlag )
2532
2533
2540
2547 {
2548 Forward SIP_MONKEYPATCH_COMPAT_NAME( ForwardTransform ),
2549 Reverse SIP_MONKEYPATCH_COMPAT_NAME( ReverseTransform )
2550 };
2551 Q_ENUM( TransformDirection )
2552
2553
2559 {
2560 BallparkTransformsAreAppropriate = 1 << 0,
2561 IgnoreImpossibleTransformations = 1 << 1,
2562 };
2563 Q_ENUM( CoordinateTransformationFlag )
2564
2565
2572
2579 {
2580 Antialiasing = 0x01,
2581 DrawEditingInfo = 0x02,
2582 ForceVectorOutput = 0x04,
2583 UseAdvancedEffects = 0x08,
2584 DrawLabeling = 0x10,
2585 UseRenderingOptimization = 0x20,
2586 DrawSelection = 0x40,
2587 DrawSymbolBounds = 0x80,
2588 RenderMapTile = 0x100,
2589 RenderPartialOutput = 0x200,
2590 RenderPreviewJob = 0x400,
2591 RenderBlocking = 0x800,
2592 LosslessImageRendering = 0x1000,
2593 Render3DMap = 0x2000,
2594 HighQualityImageTransforms = 0x4000,
2595 SkipSymbolRendering = 0x8000,
2596 ForceRasterMasks = 0x10000,
2597 RecordProfile = 0x20000,
2598 AlwaysUseGlobalMasks = 0x40000,
2599 };
2602 Q_ENUM( MapSettingsFlag )
2603 Q_FLAG( MapSettingsFlags )
2604
2605
2611 {
2612 DrawEditingInfo = 0x01,
2613 ForceVectorOutput = 0x02,
2614 UseAdvancedEffects = 0x04,
2615 UseRenderingOptimization = 0x08,
2616 DrawSelection = 0x10,
2617 DrawSymbolBounds = 0x20,
2618 RenderMapTile = 0x40,
2619 Antialiasing = 0x80,
2620 RenderPartialOutput = 0x100,
2621 RenderPreviewJob = 0x200,
2622 RenderBlocking = 0x400,
2623 RenderSymbolPreview = 0x800,
2624 LosslessImageRendering = 0x1000,
2625 ApplyScalingWorkaroundForTextRendering = 0x2000,
2626 Render3DMap = 0x4000,
2627 ApplyClipAfterReprojection = 0x8000,
2628 RenderingSubSymbol = 0x10000,
2629 HighQualityImageTransforms = 0x20000,
2630 SkipSymbolRendering = 0x40000,
2631 RecordProfile = 0x80000,
2632 AlwaysUseGlobalMasks = 0x100000,
2633 DisableSymbolClippingToExtent = 0x200000,
2634 };
2637 Q_ENUM( RenderContextFlag )
2638 Q_FLAG( RenderContextFlags )
2639
2640
2645 enum class MapLayerRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
2646 {
2647 RenderPartialOutputs = 1 << 0,
2648 RenderPartialOutputOverPreviousCachedImage = 1 << 1,
2649 AffectsLabeling = 1 << 2,
2650 };
2651 Q_ENUM( MapLayerRendererFlag )
2652
2653
2659 Q_FLAG( MapLayerRendererFlags )
2660
2661 // refs for below dox: https://github.com/qgis/QGIS/pull/1286#issuecomment-39806854
2662 // https://github.com/qgis/QGIS/pull/8573#issuecomment-445585826
2663
2669 {
2670 AlwaysOutlines SIP_MONKEYPATCH_COMPAT_NAME( TextFormatAlwaysOutlines ),
2671 AlwaysText SIP_MONKEYPATCH_COMPAT_NAME( TextFormatAlwaysText ),
2672 PreferText,
2673 };
2674 Q_ENUM( TextRenderFormat )
2675
2676
2684 {
2685 UseAllLabels = 1 << 1,
2686 UsePartialCandidates = 1 << 2,
2687 // TODO QGIS 4.0: remove
2688 RenderOutlineLabels = 1 << 3,
2689 DrawLabelRectOnly = 1 << 4,
2690 DrawCandidates = 1 << 5,
2691 DrawUnplacedLabels = 1 << 6,
2692 CollectUnplacedLabels = 1 << 7,
2693 DrawLabelMetrics = 1 << 8,
2694 };
2695 Q_ENUM( LabelingFlag )
2696
2697
2705 Q_FLAG( LabelingFlags )
2706
2715 {
2716 Version1 SIP_MONKEYPATCH_COMPAT_NAME( PlacementEngineVersion1 ),
2717 Version2 SIP_MONKEYPATCH_COMPAT_NAME( PlacementEngineVersion2 ),
2718 };
2719 Q_ENUM( LabelPlacementEngineVersion )
2720
2721
2729 {
2730 Horizontal SIP_MONKEYPATCH_COMPAT_NAME( HorizontalOrientation ),
2731 Vertical SIP_MONKEYPATCH_COMPAT_NAME( VerticalOrientation ),
2732 RotationBased SIP_MONKEYPATCH_COMPAT_NAME( RotationBasedOrientation ),
2733 };
2734 Q_ENUM( TextOrientation )
2735
2736
2744 {
2745 Rectangle SIP_MONKEYPATCH_COMPAT_NAME( Rect ),
2746 Point,
2747 Labeling SIP_MONKEYPATCH_COMPAT_NAME( Label ),
2748 RectangleCapHeightBased,
2749 RectangleAscentBased,
2750 };
2751 Q_ENUM( TextLayoutMode )
2752
2753
2761 {
2762 Text = 1 << 0,
2763 Buffer = 1 << 1,
2764 Background = 1 << 2,
2765 Shadow = 1 << 3,
2766 };
2767 Q_ENUM( TextComponent )
2768
2769
2774 Q_DECLARE_FLAGS( TextComponents, TextComponent )
2775 Q_FLAG( TextComponents )
2776
2785 {
2786 Left SIP_MONKEYPATCH_COMPAT_NAME( AlignLeft ),
2787 Center SIP_MONKEYPATCH_COMPAT_NAME( AlignCenter ),
2788 Right SIP_MONKEYPATCH_COMPAT_NAME( AlignRight ),
2789 Justify SIP_MONKEYPATCH_COMPAT_NAME( AlignJustify ),
2790 };
2791 Q_ENUM( TextHorizontalAlignment )
2792
2793
2804 {
2805 Top SIP_MONKEYPATCH_COMPAT_NAME( AlignTop ),
2806 VerticalCenter SIP_MONKEYPATCH_COMPAT_NAME( AlignVCenter ),
2807 Bottom SIP_MONKEYPATCH_COMPAT_NAME( AlignBottom ),
2808 };
2809 Q_ENUM( TextVerticalAlignment )
2810
2811
2820 {
2821 Normal,
2822 SuperScript,
2823 SubScript,
2824 };
2825 Q_ENUM( TextCharacterVerticalAlignment )
2826
2827
2835 {
2836 Distance = 0,
2837 SnapToGrid = 1,
2838 Visvalingam = 2,
2839 SnappedToGridGlobal = 3,
2840 };
2841 Q_ENUM( VectorSimplificationAlgorithm )
2842
2843
2851 {
2852 NoSimplification = 0,
2853 GeometrySimplification = 1,
2854 AntialiasingSimplification = 2,
2855 FullSimplification = 3,
2856 };
2857 Q_ENUM( VectorRenderingSimplificationFlag )
2858
2859
2868
2875 {
2876 Generic,
2877 ShadowOffset,
2878 BlurSize,
2879 GlowSpread,
2880 };
2881 Q_ENUM( RenderSubcomponentProperty )
2882
2883
2888 {
2889 Segment SIP_MONKEYPATCH_COMPAT_NAME( SegmentVertex ) = 1,
2890 Curve SIP_MONKEYPATCH_COMPAT_NAME( CurveVertex ) = 2,
2891 };
2892 Q_ENUM( VertexType )
2893
2894
2902 {
2903 Square,
2904 Diamond,
2905 Pentagon,
2906 Hexagon,
2907 Triangle,
2908 EquilateralTriangle,
2909 Star,
2910 Arrow,
2911 Circle,
2912 Cross,
2913 CrossFill,
2914 Cross2,
2915 Line,
2916 ArrowHead,
2917 ArrowHeadFilled,
2918 SemiCircle,
2919 ThirdCircle,
2920 QuarterCircle,
2921 QuarterSquare,
2922 HalfSquare,
2923 DiagonalHalfSquare,
2924 RightHalfTriangle,
2925 LeftHalfTriangle,
2926 Octagon,
2927 SquareWithCorners,
2928 AsteriskFill,
2929 HalfArc,
2930 ThirdArc,
2931 QuarterArc,
2932 ParallelogramRight,
2933 ParallelogramLeft,
2934 Trapezoid,
2935 Shield,
2936 DiamondStar,
2937 Heart,
2938 Decagon,
2939 RoundedSquare,
2940 };
2941 Q_ENUM( MarkerShape )
2942
2943
2951 {
2952 Interval = 1 << 0,
2953 Vertex = 1 << 1,
2954 LastVertex = 1 << 2,
2955 FirstVertex = 1 << 3,
2956 CentralPoint = 1 << 4,
2957 CurvePoint = 1 << 5,
2958 SegmentCenter = 1 << 6,
2959 InnerVertices = 1 << 7,
2960 };
2961 Q_ENUM( MarkerLinePlacement )
2963 Q_FLAG( MarkerLinePlacements )
2964
2971 {
2972 IntervalCartesian2D = 1 << 0,
2973 IntervalZ = 1 << 1,
2974 IntervalM = 1 << 2,
2975 Vertex = 1 << 3,
2976 };
2977 Q_ENUM( LinearReferencingPlacement )
2978
2979
2985 {
2986 CartesianDistance2D,
2987 Z,
2988 M,
2989 };
2990 Q_ENUM( LinearReferencingLabelSource )
2991
2992
3000 {
3001 SimpleTwoColor,
3002 ColorRamp,
3003 };
3004 Q_ENUM( GradientColorSource )
3005
3006
3014 {
3015 Linear,
3016 Radial,
3017 Conical,
3018 };
3019 Q_ENUM( GradientType )
3020
3021
3029 {
3030 Feature,
3031 Viewport,
3032 };
3033 Q_ENUM( SymbolCoordinateReference )
3034
3035
3044 {
3045 Pad,
3046 Reflect,
3047 Repeat,
3048 };
3049 Q_ENUM( GradientSpread )
3050
3051
3059 {
3060 Absolute SIP_MONKEYPATCH_COMPAT_NAME( AbsoluteCount ),
3061 DensityBased SIP_MONKEYPATCH_COMPAT_NAME( DensityBasedCount ),
3062 };
3063 Q_ENUM( PointCountMethod )
3064
3065
3070 enum class MarkerClipMode : int
3071 {
3072 NoClipping,
3073 Shape,
3074 CentroidWithin,
3075 CompletelyWithin,
3076 };
3077 Q_ENUM( MarkerClipMode )
3078
3079
3084 enum class LineClipMode : int
3085 {
3086 ClipPainterOnly,
3087 ClipToIntersection,
3088 NoClipping,
3089 };
3090 Q_ENUM( LineClipMode )
3091
3092
3098 {
3099 NoRule,
3100 FullDash,
3101 HalfDash,
3102 FullGap,
3103 HalfGap,
3104 };
3105 Q_ENUM( DashPatternLineEndingRule )
3106
3107
3113 {
3114 ScaleBothDashAndGap,
3115 ScaleDashOnly,
3116 ScaleGapOnly,
3117 };
3118 Q_ENUM( DashPatternSizeAdjustment )
3119
3120
3128 {
3129 Color SIP_MONKEYPATCH_COMPAT_NAME( GraduatedColor ),
3130 Size SIP_MONKEYPATCH_COMPAT_NAME( GraduatedSize ),
3131 };
3132 Q_ENUM( GraduatedMethod )
3133
3134
3140 {
3141 NoLabels,
3142 EveryLabel,
3143 FirstLabel,
3144 LastLabel,
3145 FirstAndLastLabels,
3146 };
3147 Q_ENUM( PlotAxisSuffixPlacement )
3148
3149
3153 enum class DpiMode
3154 {
3155 All = 7,
3156 Off = 0,
3157 QGIS = 1,
3158 UMN = 2,
3159 GeoServer = 4,
3160 };
3161 Q_ENUM( DpiMode )
3162
3163
3168 {
3169 Undefined = 0,
3170 StandardDpi = 1,
3171 HighDpi = 2,
3172 };
3173 Q_ENUM( TilePixelRatio )
3174
3175 // NOTE -- the hardcoded numbers here must match QFont::Capitalization!
3176
3177
3185 {
3186 MixedCase = 0,
3187 AllUppercase = 1,
3188 AllLowercase = 2,
3189 ForceFirstLetterToCapital = 4,
3190 SmallCaps = 5,
3191 TitleCase = 1004,
3192 UpperCamelCase = 1005,
3193 AllSmallCaps = 1006,
3194 };
3195 Q_ENUM( Capitalization )
3196
3197
3202 enum class TextRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
3203 {
3204 WrapLines = 1 << 0,
3205 };
3206 Q_ENUM( TextRendererFlag )
3208 Q_FLAG( TextRendererFlags )
3209
3216 {
3217 MapBox,
3218 Esri,
3219 };
3221
3228 {
3229 Clockwise,
3230 CounterClockwise,
3231 NoOrientation,
3232 };
3233 Q_ENUM( AngularDirection )
3234
3235
3240 enum class RendererUsage : int
3241 {
3242 View,
3243 Export,
3244 Unknown,
3245 };
3246 Q_ENUM( RendererUsage )
3247
3248
3253 enum class MapCanvasFlag : int SIP_ENUM_BASETYPE( IntFlag )
3254 {
3255 ShowMainAnnotationLayer = 1 << 0,
3256 };
3257 Q_ENUM( MapCanvasFlag )
3258
3259
3264 Q_DECLARE_FLAGS( MapCanvasFlags, MapCanvasFlag )
3265 Q_FLAG( MapCanvasFlags )
3266
3272 enum class ViewSyncModeFlag : int SIP_ENUM_BASETYPE( IntFlag )
3273 {
3274 Sync3DTo2D = 1 << 0,
3275 Sync2DTo3D = 1 << 1,
3276 };
3277 Q_ENUM( ViewSyncModeFlag )
3279
3286 {
3287 Always,
3288 WhenOutsideVisibleExtent,
3289 Never,
3290 };
3291 Q_ENUM( MapRecenteringMode )
3292
3293
3298 enum class HistoryProviderBackend : int SIP_ENUM_BASETYPE( IntFlag )
3299 {
3300 LocalProfile = 1 << 0,
3301// Project = 1 << 1, //!< QGIS Project (not yet implemented)
3302 };
3303 Q_ENUM( HistoryProviderBackend )
3305 Q_FLAG( HistoryProviderBackends )
3306
3315 {
3316 MapLayer SIP_MONKEYPATCH_COMPAT_NAME( TypeMapLayer ) = -2,
3317 VectorAnyGeometry SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorAnyGeometry ) = -1,
3318 VectorPoint SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorPoint ) = 0,
3319 VectorLine SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorLine ) = 1,
3320 VectorPolygon SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorPolygon ) = 2,
3321 Raster SIP_MONKEYPATCH_COMPAT_NAME( TypeRaster ) = 3,
3322 File SIP_MONKEYPATCH_COMPAT_NAME( TypeFile ) = 4,
3323 Vector SIP_MONKEYPATCH_COMPAT_NAME( TypeVector ) = 5,
3324 Mesh SIP_MONKEYPATCH_COMPAT_NAME( TypeMesh ) = 6,
3325 Plugin SIP_MONKEYPATCH_COMPAT_NAME( TypePlugin ) = 7,
3326 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( TypePointCloud ) = 8,
3327 Annotation SIP_MONKEYPATCH_COMPAT_NAME( TypeAnnotation ) = 9,
3328 VectorTile SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorTile ) = 10
3329 };
3330 Q_ENUM( ProcessingSourceType )
3331
3332
3333
3341 {
3342 DeemphasiseSearchResults SIP_MONKEYPATCH_COMPAT_NAME( FlagDeemphasiseSearchResults ) = 1 << 1,
3343 CompatibleWithVirtualRaster SIP_MONKEYPATCH_COMPAT_NAME( FlagCompatibleWithVirtualRaster ) = 1 << 2,
3344 };
3346
3355 Q_FLAG( ProcessingProviderFlags )
3356
3357
3365 {
3366 HideFromToolbox SIP_MONKEYPATCH_COMPAT_NAME( FlagHideFromToolbox ) = 1 << 1,
3367 HideFromModeler SIP_MONKEYPATCH_COMPAT_NAME( FlagHideFromModeler ) = 1 << 2,
3368 SupportsBatch SIP_MONKEYPATCH_COMPAT_NAME( FlagSupportsBatch ) = 1 << 3,
3369 CanCancel SIP_MONKEYPATCH_COMPAT_NAME( FlagCanCancel ) = 1 << 4,
3370 RequiresMatchingCrs SIP_MONKEYPATCH_COMPAT_NAME( FlagRequiresMatchingCrs ) = 1 << 5,
3371 NoThreading SIP_MONKEYPATCH_COMPAT_NAME( FlagNoThreading ) = 1 << 6,
3372 DisplayNameIsLiteral SIP_MONKEYPATCH_COMPAT_NAME( FlagDisplayNameIsLiteral ) = 1 << 7,
3373 SupportsInPlaceEdits SIP_MONKEYPATCH_COMPAT_NAME( FlagSupportsInPlaceEdits ) = 1 << 8,
3374 KnownIssues SIP_MONKEYPATCH_COMPAT_NAME( FlagKnownIssues ) = 1 << 9,
3375 CustomException SIP_MONKEYPATCH_COMPAT_NAME( FlagCustomException ) = 1 << 10,
3376 PruneModelBranchesBasedOnAlgorithmResults SIP_MONKEYPATCH_COMPAT_NAME( FlagPruneModelBranchesBasedOnAlgorithmResults ) = 1 << 11,
3377 SkipGenericModelLogging SIP_MONKEYPATCH_COMPAT_NAME( FlagSkipGenericModelLogging ) = 1 << 12,
3378 NotAvailableInStandaloneTool SIP_MONKEYPATCH_COMPAT_NAME( FlagNotAvailableInStandaloneTool ) = 1 << 13,
3379 RequiresProject SIP_MONKEYPATCH_COMPAT_NAME( FlagRequiresProject ) = 1 << 14,
3380 SecurityRisk = 1 << 15,
3381 Deprecated SIP_MONKEYPATCH_COMPAT_NAME( FlagDeprecated ) = HideFromToolbox | HideFromModeler,
3382 };
3384
3393 Q_FLAG( ProcessingAlgorithmFlags )
3394
3395
3401 {
3402 RegeneratesPrimaryKey = 1 << 0,
3403 RegeneratesPrimaryKeyInSomeScenarios = 1 << 1,
3404 };
3405 Q_ENUM( ProcessingAlgorithmDocumentationFlag )
3406
3407
3414
3424 {
3425 NotAvailable,
3426 Available,
3427 };
3428 Q_ENUM( ProcessingPropertyAvailability )
3429
3430
3438 {
3439 DefaultLevel = 0,
3440 Verbose,
3441 ModelDebug,
3442 };
3443 Q_ENUM( ProcessingLogLevel )
3444
3445
3453 {
3454 OverrideDefaultGeometryCheck SIP_MONKEYPATCH_COMPAT_NAME( FlagOverrideDefaultGeometryCheck ) = 1 << 0,
3455 CreateIndividualOutputPerInputFeature SIP_MONKEYPATCH_COMPAT_NAME( FlagCreateIndividualOutputPerInputFeature ) = 1 << 1,
3456 };
3457 Q_ENUM( ProcessingFeatureSourceDefinitionFlag )
3458
3459
3468
3477 {
3478 SkipGeometryValidityChecks SIP_MONKEYPATCH_COMPAT_NAME( FlagSkipGeometryValidityChecks ) = 1 << 1,
3479 };
3480 Q_ENUM( ProcessingFeatureSourceFlag )
3481
3482
3491
3503 {
3504 ExposeToModeler = 1
3505 };
3506 Q_ENUM( ProcessingParameterTypeFlag )
3507
3508
3520
3529 {
3530 Advanced SIP_MONKEYPATCH_COMPAT_NAME( FlagAdvanced ) = 1 << 1,
3531 Hidden SIP_MONKEYPATCH_COMPAT_NAME( FlagHidden ) = 1 << 2,
3532 Optional SIP_MONKEYPATCH_COMPAT_NAME( FlagOptional ) = 1 << 3,
3533 IsModelOutput SIP_MONKEYPATCH_COMPAT_NAME( FlagIsModelOutput ) = 1 << 4,
3534 };
3535 Q_ENUM( ProcessingParameterFlag )
3536
3537
3545 Q_FLAG( ProcessingParameterFlags )
3546
3555 {
3556 File = 0,
3557 Folder,
3558 };
3559 Q_ENUM( ProcessingFileParameterBehavior )
3560
3561
3569 {
3570 Integer,
3571 Double,
3572 };
3573 Q_ENUM( ProcessingNumberParameterType )
3574
3575
3583 {
3584 Any = -1,
3585 Numeric = 0,
3586 String = 1,
3587 DateTime = 2,
3588 Binary = 3,
3589 Boolean = 4,
3590 };
3591 Q_ENUM( ProcessingFieldParameterDataType )
3592
3593
3601 {
3602 DateTime,
3603 Date,
3604 Time,
3605 };
3606 Q_ENUM( ProcessingDateTimeParameterDataType )
3607
3608
3614 {
3615 ModelParameter,
3616 ChildOutput,
3617 StaticValue,
3618 Expression,
3619 ExpressionText,
3620 ModelOutput,
3621 };
3622 Q_ENUM( ProcessingModelChildParameterSource )
3623
3624
3630 {
3631 NotExecuted,
3632 Success,
3633 Failed,
3634 };
3635 Q_ENUM( ProcessingModelChildAlgorithmExecutionStatus )
3636
3637
3645 {
3646 Vertices,
3647 StructureLines,
3648 BreakLines
3649 };
3650 Q_ENUM( ProcessingTinInputLayerType )
3651
3652
3658 {
3659 Wkt SIP_MONKEYPATCH_COMPAT_NAME( FormatWkt ),
3660 Proj SIP_MONKEYPATCH_COMPAT_NAME( FormatProj ),
3661 };
3662 Q_ENUM( CrsDefinitionFormat )
3663
3664
3672 enum class FieldDomainSplitPolicy : int
3673 {
3674 DefaultValue,
3675 Duplicate,
3676 GeometryRatio,
3677 UnsetField,
3678 };
3679 Q_ENUM( FieldDomainSplitPolicy )
3680
3681
3689 enum class FieldDomainMergePolicy : int
3690 {
3691 DefaultValue,
3692 Sum,
3693 GeometryWeighted,
3694 };
3695 Q_ENUM( FieldDomainMergePolicy )
3696
3697
3704 enum class FieldDuplicatePolicy : int
3705 {
3706 DefaultValue,
3707 Duplicate,
3708 UnsetField,
3709 };
3710 Q_ENUM( FieldDuplicatePolicy )
3711
3712
3717 enum class FieldDomainType : int
3718 {
3719 Coded,
3720 Range,
3721 Glob,
3722 };
3723 Q_ENUM( FieldDomainType )
3724
3725
3730 enum class TransactionMode : int
3731 {
3732 Disabled = 0,
3733 AutomaticGroups = 1,
3734 BufferedGroups = 2,
3735 };
3736 Q_ENUM( TransactionMode )
3737
3738
3743 enum class AltitudeClamping : int
3744 {
3745 Absolute,
3746 Relative,
3747 Terrain,
3748 };
3749 Q_ENUM( AltitudeClamping )
3750
3751
3756 enum class AltitudeBinding : int
3757 {
3758 Vertex,
3759 Centroid,
3760 };
3761 Q_ENUM( AltitudeBinding )
3762
3763
3768 enum class RangeLimits : int
3769 {
3770 IncludeBoth = 0,
3771 IncludeLowerExcludeUpper,
3772 ExcludeLowerIncludeUpper,
3773 ExcludeBoth,
3774 };
3775 Q_ENUM( RangeLimits )
3776
3777
3782 enum class RasterElevationMode : int
3783 {
3784 FixedElevationRange = 0,
3785 RepresentsElevationSurface = 1,
3786 FixedRangePerBand = 2,
3787 DynamicRangePerBand = 3,
3788 };
3789 Q_ENUM( RasterElevationMode )
3790
3791
3796 enum class MeshElevationMode : int
3797 {
3798 FixedElevationRange = 0,
3799 FromVertices = 1,
3800 FixedRangePerGroup = 2,
3801 };
3802 Q_ENUM( MeshElevationMode )
3803
3804
3810 {
3811 NoConstraint,
3812 Perpendicular,
3813 Parallel
3814 };
3815 Q_ENUM( BetweenLineConstraint )
3816
3817
3822 enum class LineExtensionSide : int
3823 {
3824 BeforeVertex,
3825 AfterVertex,
3826 NoVertex,
3827 };
3828 Q_ENUM( LineExtensionSide )
3829
3830
3831
3835 enum class CadConstraintType : int
3836 {
3837 Generic,
3838 Angle,
3839 Distance,
3840 XCoordinate,
3841 YCoordinate,
3842 ZValue,
3843 MValue,
3844 };
3845 Q_ENUM( CadConstraintType )
3846
3847
3848
3853 enum class ProjectFlag : int SIP_ENUM_BASETYPE( IntFlag )
3854 {
3855 EvaluateDefaultValuesOnProviderSide = 1 << 0,
3856 TrustStoredLayerStatistics = 1 << 1,
3857 RememberLayerEditStatusBetweenSessions = 1 << 2,
3858 RememberAttributeTableWindowsBetweenSessions = 1 << 3,
3859 };
3860 Q_ENUM( ProjectFlag )
3861 Q_DECLARE_FLAGS( ProjectFlags, ProjectFlag )
3862 Q_FLAG( ProjectFlags )
3863
3869 enum class PlotToolFlag : int SIP_ENUM_BASETYPE( IntFlag )
3870 {
3871 ShowContextMenu = 1 << 0,
3872 };
3873 Q_ENUM( PlotToolFlag )
3874 Q_DECLARE_FLAGS( PlotToolFlags, PlotToolFlag )
3875 Q_FLAG( PlotToolFlags )
3876
3877
3885 enum class Point3DShape : int
3886 {
3887 Cylinder,
3888 Sphere,
3889 Cone,
3890 Cube,
3891 Torus,
3892 Plane,
3893 ExtrudedText,
3894 Model,
3895 Billboard,
3896 };
3897 Q_ENUM( Point3DShape )
3898
3899
3904 enum class LightSourceType : int
3905 {
3906 Point,
3907 Directional,
3908 };
3909 Q_ENUM( LightSourceType )
3910
3911
3916 enum class NavigationMode : int
3917 {
3918 TerrainBased,
3919 Walk
3920 };
3921 Q_ENUM( NavigationMode )
3922
3923
3928 enum class VerticalAxisInversion : int
3929 {
3930 Never,
3931 WhenDragging,
3932 Always,
3933 };
3934 Q_ENUM( VerticalAxisInversion )
3935
3936
3942 {
3943 Line,
3944 FillBelow,
3945 FillAbove,
3946 };
3948
3954 enum class VectorProfileType : int
3955 {
3956 IndividualFeatures,
3957 ContinuousSurface,
3958 };
3960
3966 enum class ProfileGeneratorFlag : int SIP_ENUM_BASETYPE( IntFlag )
3967 {
3968 RespectsMaximumErrorMapUnit = 1 << 0,
3969 RespectsDistanceRange = 1 << 1,
3970 RespectsElevationRange = 1 << 2,
3971 };
3972 Q_ENUM( ProfileGeneratorFlag )
3974 Q_FLAG( ProfileGeneratorFlags )
3975
3981 enum class ProfileExportType : int
3982 {
3983 Features3D,
3984 Profile2D,
3985 DistanceVsElevationTable,
3986 };
3988
3995 {
3996 Square,
3997 Circle,
3998 };
3999 Q_ENUM( PointCloudSymbol )
4000
4001
4007 {
4008 Default,
4009 BottomToTop,
4010 TopToBottom,
4011 };
4012 Q_ENUM( PointCloudDrawOrder )
4013
4014
4022 {
4023 AllowIntersections,
4024 AvoidIntersectionsCurrentLayer,
4025 AvoidIntersectionsLayers,
4026 };
4027 Q_ENUM( AvoidIntersectionsMode )
4028
4029
4037 {
4038 Qgz,
4039 Qgs,
4040 };
4041 Q_ENUM( ProjectFileFormat )
4042
4043
4051 {
4052 DontResolveLayers SIP_MONKEYPATCH_COMPAT_NAME( FlagDontResolveLayers ) = 1 << 0,
4053 DontLoadLayouts SIP_MONKEYPATCH_COMPAT_NAME( FlagDontLoadLayouts ) = 1 << 1,
4054 TrustLayerMetadata SIP_MONKEYPATCH_COMPAT_NAME( FlagTrustLayerMetadata ) = 1 << 2,
4055 DontStoreOriginalStyles SIP_MONKEYPATCH_COMPAT_NAME( FlagDontStoreOriginalStyles ) = 1 << 3,
4056 DontLoad3DViews SIP_MONKEYPATCH_COMPAT_NAME( FlagDontLoad3DViews ) = 1 << 4,
4057 DontLoadProjectStyles = 1 << 5,
4058 ForceReadOnlyLayers = 1 << 6,
4059 DontUpgradeAnnotations = 1 << 7,
4060 };
4061 Q_ENUM( ProjectReadFlag )
4062
4063
4071 Q_FLAG( ProjectReadFlags )
4072
4081 enum class ProjectCapability : int SIP_ENUM_BASETYPE( IntFlag )
4082 {
4083 ProjectStyles = 1 << 0,
4084 };
4085 Q_ENUM( ProjectCapability )
4086
4087
4093 Q_FLAG( ProjectCapabilities )
4094
4101 {
4102 Vector,
4103 Raster,
4104 RasterDem,
4105 GeoJson,
4106 Image,
4107 Video,
4108 Unknown,
4109 };
4110 Q_ENUM( MapBoxGlStyleSourceType )
4111
4112
4120 {
4121 FeatureServer SIP_MONKEYPATCH_COMPAT_NAME( FeatureService ),
4122 MapServer SIP_MONKEYPATCH_COMPAT_NAME( MapService ),
4123 ImageServer SIP_MONKEYPATCH_COMPAT_NAME( ImageService ),
4124 GlobeServer,
4125 GPServer,
4126 GeocodeServer,
4127 Unknown,
4128 };
4129 Q_ENUM( ArcGisRestServiceType )
4130
4131
4139 {
4140 Normal,
4141 Generated,
4142 };
4143 Q_ENUM( RelationshipType )
4144
4145
4153 {
4154 Association,
4155 Composition,
4156 };
4157 Q_ENUM( RelationshipStrength )
4158
4159
4165 {
4166 OneToOne,
4167 OneToMany,
4168 ManyToOne,
4169 ManyToMany,
4170 };
4171 Q_ENUM( RelationshipCardinality )
4172
4173
4178 enum class RelationshipCapability : int SIP_ENUM_BASETYPE( IntFlag )
4179 {
4180 MultipleFieldKeys = 1 << 0,
4181 ForwardPathLabel = 1 << 1,
4182 BackwardPathLabel = 1 << 2,
4183 };
4184 Q_ENUM( RelationshipCapability )
4185
4186
4192 Q_FLAG( RelationshipCapabilities )
4193
4199 enum class CoordinateDisplayType : int
4200 {
4201 MapCrs,
4202 MapGeographic,
4203 CustomCrs,
4204 };
4205 Q_ENUM( CoordinateDisplayType )
4206
4207
4212 enum class SettingsOrigin : int
4213 {
4214 Any,
4215 Global,
4216 Local,
4217 };
4218 Q_ENUM( SettingsOrigin )
4219
4220
4225 enum class ScriptLanguage : int
4226 {
4227 Css,
4228 QgisExpression,
4229 Html,
4230 JavaScript,
4231 Json,
4232 Python,
4233 R,
4234 Sql,
4235 Batch,
4236 Bash,
4237 Unknown,
4238 };
4239 Q_ENUM( ScriptLanguage )
4240
4241
4249 {
4250 Reformat = 1 << 0,
4251 CheckSyntax = 1 << 1,
4252 ToggleComment = 1 << 2,
4253 };
4254 Q_ENUM( ScriptLanguageCapability )
4255
4256
4263
4270 {
4271 AboveInsertionPoint,
4272 TopOfTree,
4273 OptimalInInsertionGroup,
4274 };
4275 Q_ENUM( LayerTreeInsertionMethod )
4276
4277
4282 enum class LayerTreeFilterFlag : int SIP_ENUM_BASETYPE( IntFlag )
4283 {
4284 SkipVisibilityCheck = 1 << 0,
4285 };
4286 Q_ENUM( LayerTreeFilterFlag )
4287
4288
4294 Q_FLAG( LayerTreeFilterFlags )
4295
4296
4304 enum class LegendJsonRenderFlag : int SIP_ENUM_BASETYPE( IntFlag )
4305 {
4306 ShowRuleDetails = 1 << 0,
4307 };
4308 Q_ENUM( LegendJsonRenderFlag )
4310 Q_FLAG( LegendJsonRenderFlags )
4311
4319 enum class ActionType : int
4320 {
4321 Invalid,
4322 MapLayerAction,
4323 AttributeAction
4324 };
4325 Q_ENUM( ActionType )
4326
4327
4334 enum class MapLayerActionTarget : int SIP_ENUM_BASETYPE( IntFlag )
4335 {
4336 Layer = 1 << 0,
4337 SingleFeature = 1 << 1,
4338 MultipleFeatures = 1 << 2,
4339 AllActions = Layer | SingleFeature | MultipleFeatures
4340 };
4341 Q_ENUM( MapLayerActionTarget )
4342
4343
4351 Q_FLAG( MapLayerActionTargets )
4352
4360 enum class MapLayerActionFlag : int SIP_ENUM_BASETYPE( IntFlag )
4361 {
4362 EnabledOnlyWhenEditable = 1 << 1,
4363 };
4364 Q_ENUM( MapLayerActionFlag )
4365
4366
4374 Q_FLAG( MapLayerActionFlags )
4375
4384 {
4385 Generic,
4386 GenericPython,
4387 Mac,
4388 Windows,
4389 Unix,
4390 OpenUrl,
4391 SubmitUrlEncoded,
4392 SubmitUrlMultipart,
4393 };
4394 Q_ENUM( AttributeActionType )
4395
4396
4402 {
4403 Created,
4404 Published,
4405 Revised,
4406 Superseded,
4407 };
4408 Q_ENUM( MetadataDateType )
4409
4410
4421 {
4422 Undefined SIP_MONKEYPATCH_COMPAT_NAME( UndefinedColorInterpretation ) = 0,
4423 GrayIndex = 1,
4424 PaletteIndex = 2,
4425 RedBand = 3,
4426 GreenBand = 4,
4427 BlueBand = 5,
4428 AlphaBand = 6,
4429 HueBand = 7,
4430 SaturationBand = 8,
4431 LightnessBand = 9,
4432 CyanBand = 10,
4433 MagentaBand = 11,
4434 YellowBand = 12,
4435 BlackBand = 13,
4436 YCbCr_YBand = 14,
4437 YCbCr_CbBand = 15,
4438 YCbCr_CrBand = 16,
4439 ContinuousPalette = 17,
4440
4441 // Note: values between PanBand and SAR_P_Band match additions done in
4442 // GDAL 3.10, except that the numeric values of the constant don't match GDAL ones
4443
4444 PanBand = 18,
4445 CoastalBand = 19,
4446 RedEdgeBand = 20,
4447 NIRBand = 21,
4448 SWIRBand = 22,
4449 MWIRBand = 23,
4450 LWIRBand = 24,
4451 TIRBand = 25,
4452 OtherIRBand = 26,
4453 SAR_Ka_Band = 27,
4454 SAR_K_Band = 28,
4455 SAR_Ku_Band = 30,
4456 SAR_X_Band = 31,
4457 SAR_C_Band = 32,
4458 SAR_S_Band = 33,
4459 SAR_L_Band = 34,
4460 SAR_P_Band = 35,
4461 };
4462 Q_ENUM( RasterColorInterpretation )
4463
4464
4472 {
4473 GrayOrUndefined,
4474 Palette,
4475 MultiBand SIP_MONKEYPATCH_COMPAT_NAME( Multiband ),
4476 SingleBandColorData SIP_MONKEYPATCH_COMPAT_NAME( ColorLayer ),
4477 };
4478 Q_ENUM( RasterLayerType )
4479
4480
4488 {
4489 Undefined SIP_MONKEYPATCH_COMPAT_NAME( UndefinedDrawingStyle ),
4490 SingleBandGray,
4491 SingleBandPseudoColor,
4492 PalettedColor,
4493 PalettedSingleBandGray,
4494 PalettedSingleBandPseudoColor,
4495 PalettedMultiBandColor,
4496 MultiBandSingleBandGray,
4497 MultiBandSingleBandPseudoColor,
4498 MultiBandColor,
4499 SingleBandColorData SIP_MONKEYPATCH_COMPAT_NAME( SingleBandColorDataStyle ),
4500 };
4501 Q_ENUM( RasterDrawingStyle )
4502
4503
4510 enum class RasterPyramidFormat SIP_MONKEYPATCH_SCOPEENUM_UNNEST( QgsRaster, RasterPyramidsFormat ) : int
4511 {
4512 GeoTiff SIP_MONKEYPATCH_COMPAT_NAME( PyramidsGTiff ) = 0,
4513 Internal SIP_MONKEYPATCH_COMPAT_NAME( PyramidsInternal ) = 1,
4514 Erdas SIP_MONKEYPATCH_COMPAT_NAME( PyramidsErdas ) = 2
4515 };
4516 Q_ENUM( RasterPyramidFormat )
4517
4518
4526 {
4527 No SIP_MONKEYPATCH_COMPAT_NAME( PyramidsFlagNo ) = 0,
4528 Yes SIP_MONKEYPATCH_COMPAT_NAME( PyramidsFlagYes ) = 1,
4529 CopyExisting SIP_MONKEYPATCH_COMPAT_NAME( PyramidsCopyExisting ) = 2
4530 };
4531 Q_ENUM( RasterBuildPyramidOption )
4532
4533
4541 {
4542 Undefined SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatUndefined ) = 0,
4543 Value SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatValue ) = 1,
4544 Text SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatText ) = 1 << 1,
4545 Html SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatHtml ) = 1 << 2,
4546 Feature SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatFeature ) = 1 << 3,
4547 };
4548 Q_ENUM( RasterIdentifyFormat )
4549
4550 // TODO QGIS 4 -- remove NoCapabilities and rely on RasterInterfaceCapabilities() instead
4551 // remove deprecated members
4552 // Remove "Identify" member, and replace with combinations of IdentifyValue/IdentifyText/etc
4553
4554
4562 {
4563 NoCapabilities = 0,
4564 Size = 1 << 1,
4565 Create = 1 << 2,
4566 Remove = 1 << 3,
4567 BuildPyramids = 1 << 4,
4568 Identify = 1 << 5,
4569 IdentifyValue = 1 << 6,
4570 IdentifyText = 1 << 7,
4571 IdentifyHtml = 1 << 8,
4572 IdentifyFeature = 1 << 9,
4573 Prefetch = 1 << 10,
4574 };
4575 Q_ENUM( RasterInterfaceCapability )
4576
4577
4584
4585 // TODO QGIS 4 -- remove NoProviderCapabilities and rely on RasterProviderCapabilities() instead
4586
4595 {
4596 NoProviderCapabilities = 0,
4597 ReadLayerMetadata = 1 << 1,
4598 WriteLayerMetadata = 1 << 2,
4599 ProviderHintBenefitsFromResampling = 1 << 3,
4600 ProviderHintCanPerformProviderResampling = 1 << 4,
4601 ReloadData = 1 << 5,
4602 DpiDependentData = 1 << 6,
4603 NativeRasterAttributeTable = 1 << 7,
4604 BuildPyramids = 1 << 8,
4605 };
4606 Q_ENUM( RasterProviderCapability )
4607
4608
4617
4624 {
4625 HighestElevation,
4626 NewerElevation,
4627 };
4628 Q_ENUM( ElevationMapCombineMethod )
4629
4630
4639 {
4640 Normal SIP_MONKEYPATCH_COMPAT_NAME( BlendNormal ),
4641 Lighten SIP_MONKEYPATCH_COMPAT_NAME( BlendLighten ),
4642 Screen SIP_MONKEYPATCH_COMPAT_NAME( BlendScreen ),
4643 Dodge SIP_MONKEYPATCH_COMPAT_NAME( BlendDodge ),
4644 Addition SIP_MONKEYPATCH_COMPAT_NAME( BlendAddition ),
4645 Darken SIP_MONKEYPATCH_COMPAT_NAME( BlendDarken ),
4646 Multiply SIP_MONKEYPATCH_COMPAT_NAME( BlendMultiply ),
4647 Burn SIP_MONKEYPATCH_COMPAT_NAME( BlendBurn ),
4648 Overlay SIP_MONKEYPATCH_COMPAT_NAME( BlendOverlay ),
4649 SoftLight SIP_MONKEYPATCH_COMPAT_NAME( BlendSoftLight ),
4650 HardLight SIP_MONKEYPATCH_COMPAT_NAME( BlendHardLight ),
4651 Difference SIP_MONKEYPATCH_COMPAT_NAME( BlendDifference ),
4652 Subtract SIP_MONKEYPATCH_COMPAT_NAME( BlendSubtract ),
4653 Source SIP_MONKEYPATCH_COMPAT_NAME( BlendSource ),
4654 DestinationOver SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationOver ),
4655 Clear SIP_MONKEYPATCH_COMPAT_NAME( BlendClear ),
4656 Destination SIP_MONKEYPATCH_COMPAT_NAME( BlendDestination ),
4657 SourceIn SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceIn ),
4658 DestinationIn SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationIn ),
4659 SourceOut SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceOut ),
4660 DestinationOut SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationOut ),
4661 SourceAtop SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceAtop ),
4662 DestinationAtop SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationAtop ),
4663 Xor SIP_MONKEYPATCH_COMPAT_NAME( BlendXor ),
4664 };
4665 Q_ENUM( BlendMode )
4666
4667
4675 {
4676 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownSystem ) = 0,
4677 Metric SIP_MONKEYPATCH_COMPAT_NAME( MetricSystem ),
4678 Imperial SIP_MONKEYPATCH_COMPAT_NAME( ImperialSystem ),
4679 USCS SIP_MONKEYPATCH_COMPAT_NAME( USCSSystem ),
4680 };
4681 Q_ENUM( SystemOfMeasurement )
4682
4683
4690 {
4691 Layer SIP_MONKEYPATCH_COMPAT_NAME( LayerUnits ),
4692 Pixels,
4693 Project SIP_MONKEYPATCH_COMPAT_NAME( ProjectUnits )
4694 };
4695 Q_ENUM( MapToolUnit )
4696
4697
4705 {
4706 Distance SIP_MONKEYPATCH_COMPAT_NAME( TypeDistance ) = 0,
4707 Area SIP_MONKEYPATCH_COMPAT_NAME( TypeArea ),
4708 Volume SIP_MONKEYPATCH_COMPAT_NAME( TypeVolume ),
4709 Unknown SIP_MONKEYPATCH_COMPAT_NAME( TypeUnknown ),
4710 Temporal SIP_MONKEYPATCH_COMPAT_NAME( TypeTemporal ),
4711 };
4712 Q_ENUM( UnitType )
4713
4714
4722 {
4723 Meters SIP_MONKEYPATCH_COMPAT_NAME( DistanceMeters ),
4724 Kilometers SIP_MONKEYPATCH_COMPAT_NAME( DistanceKilometers ),
4725 Feet SIP_MONKEYPATCH_COMPAT_NAME( DistanceFeet ),
4726 NauticalMiles SIP_MONKEYPATCH_COMPAT_NAME( DistanceNauticalMiles ),
4727 Yards SIP_MONKEYPATCH_COMPAT_NAME( DistanceYards ),
4728 Miles SIP_MONKEYPATCH_COMPAT_NAME( DistanceMiles ),
4729 Degrees SIP_MONKEYPATCH_COMPAT_NAME( DistanceDegrees ),
4730 Centimeters SIP_MONKEYPATCH_COMPAT_NAME( DistanceCentimeters ),
4731 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( DistanceMillimeters ),
4732 Inches,
4733 ChainsInternational,
4734 ChainsBritishBenoit1895A,
4735 ChainsBritishBenoit1895B,
4736 ChainsBritishSears1922Truncated,
4737 ChainsBritishSears1922,
4738 ChainsClarkes,
4739 ChainsUSSurvey,
4740 FeetBritish1865,
4741 FeetBritish1936,
4742 FeetBritishBenoit1895A,
4743 FeetBritishBenoit1895B,
4744 FeetBritishSears1922Truncated,
4745 FeetBritishSears1922,
4746 FeetClarkes,
4747 FeetGoldCoast,
4748 FeetIndian,
4749 FeetIndian1937,
4750 FeetIndian1962,
4751 FeetIndian1975,
4752 FeetUSSurvey,
4753 LinksInternational,
4754 LinksBritishBenoit1895A,
4755 LinksBritishBenoit1895B,
4756 LinksBritishSears1922Truncated,
4757 LinksBritishSears1922,
4758 LinksClarkes,
4759 LinksUSSurvey,
4760 YardsBritishBenoit1895A,
4761 YardsBritishBenoit1895B,
4762 YardsBritishSears1922Truncated,
4763 YardsBritishSears1922,
4764 YardsClarkes,
4765 YardsIndian,
4766 YardsIndian1937,
4767 YardsIndian1962,
4768 YardsIndian1975,
4769 MilesUSSurvey,
4770 Fathoms,
4771 MetersGermanLegal,
4772 Unknown SIP_MONKEYPATCH_COMPAT_NAME( DistanceUnknownUnit ),
4773 };
4774 Q_ENUM( DistanceUnit )
4775
4776
4784 {
4785 Standard,
4786 Geographic,
4787 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownType ),
4788 };
4789 Q_ENUM( DistanceUnitType )
4790
4791
4799 {
4800 SquareMeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMeters ),
4801 SquareKilometers SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareKilometers ),
4802 SquareFeet SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareFeet ),
4803 SquareYards SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareYards ),
4804 SquareMiles SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMiles ),
4805 Hectares SIP_MONKEYPATCH_COMPAT_NAME( AreaHectares ),
4806 Acres SIP_MONKEYPATCH_COMPAT_NAME( AreaAcres ),
4807 SquareNauticalMiles SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareNauticalMiles ),
4808 SquareDegrees SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareDegrees ),
4809 SquareCentimeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareCentimeters ),
4810 SquareMillimeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMillimeters ),
4811 SquareInches,
4812 Unknown SIP_MONKEYPATCH_COMPAT_NAME( AreaUnknownUnit ),
4813 };
4814 Q_ENUM( AreaUnit )
4815
4816
4824 {
4825 CubicMeters SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicMeters ),
4826 CubicFeet SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicFeet ),
4827 CubicYards SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicYards ),
4828 Barrel SIP_MONKEYPATCH_COMPAT_NAME( VolumeBarrel ),
4829 CubicDecimeter SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicDecimeter ),
4830 Liters SIP_MONKEYPATCH_COMPAT_NAME( VolumeLiters ),
4831 GallonUS SIP_MONKEYPATCH_COMPAT_NAME( VolumeGallonUS ),
4832 CubicInch SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicInch ),
4833 CubicCentimeter SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicCentimeter ),
4834 CubicDegrees SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicDegrees ),
4835 Unknown SIP_MONKEYPATCH_COMPAT_NAME( VolumeUnknownUnit ),
4836 };
4837 Q_ENUM( VolumeUnit )
4838
4839
4847 {
4848 Degrees SIP_MONKEYPATCH_COMPAT_NAME( AngleDegrees ),
4849 Radians SIP_MONKEYPATCH_COMPAT_NAME( AngleRadians ),
4850 Gon SIP_MONKEYPATCH_COMPAT_NAME( AngleGon ),
4851 MinutesOfArc SIP_MONKEYPATCH_COMPAT_NAME( AngleMinutesOfArc ),
4852 SecondsOfArc SIP_MONKEYPATCH_COMPAT_NAME( AngleSecondsOfArc ),
4853 Turn SIP_MONKEYPATCH_COMPAT_NAME( AngleTurn ),
4854 MilliradiansSI SIP_MONKEYPATCH_COMPAT_NAME( AngleMilliradiansSI ),
4855 MilNATO SIP_MONKEYPATCH_COMPAT_NAME( AngleMilNATO ),
4856 Unknown SIP_MONKEYPATCH_COMPAT_NAME( AngleUnknownUnit ),
4857 };
4858 Q_ENUM( AngleUnit )
4859
4860
4868 {
4869 Milliseconds SIP_MONKEYPATCH_COMPAT_NAME( TemporalMilliseconds ),
4870 Seconds SIP_MONKEYPATCH_COMPAT_NAME( TemporalSeconds ),
4871 Minutes SIP_MONKEYPATCH_COMPAT_NAME( TemporalMinutes ),
4872 Hours SIP_MONKEYPATCH_COMPAT_NAME( TemporalHours ),
4873 Days SIP_MONKEYPATCH_COMPAT_NAME( TemporalDays ),
4874 Weeks SIP_MONKEYPATCH_COMPAT_NAME( TemporalWeeks ),
4875 Months SIP_MONKEYPATCH_COMPAT_NAME( TemporalMonths ),
4876 Years SIP_MONKEYPATCH_COMPAT_NAME( TemporalYears ),
4877 Decades SIP_MONKEYPATCH_COMPAT_NAME( TemporalDecades ),
4878 Centuries SIP_MONKEYPATCH_COMPAT_NAME( TemporalCenturies ),
4879 IrregularStep SIP_MONKEYPATCH_COMPAT_NAME( TemporalIrregularStep ),
4880 Unknown SIP_MONKEYPATCH_COMPAT_NAME( TemporalUnknownUnit )
4881 };
4882 Q_ENUM( TemporalUnit )
4883
4884
4892 {
4893 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( RenderMillimeters ),
4894 MapUnits SIP_MONKEYPATCH_COMPAT_NAME( RenderMapUnits ),
4895 Pixels SIP_MONKEYPATCH_COMPAT_NAME( RenderPixels ),
4896 Percentage SIP_MONKEYPATCH_COMPAT_NAME( RenderPercentage ),
4897 Points SIP_MONKEYPATCH_COMPAT_NAME( RenderPoints ),
4898 Inches SIP_MONKEYPATCH_COMPAT_NAME( RenderInches ),
4899 Unknown SIP_MONKEYPATCH_COMPAT_NAME( RenderUnknownUnit ),
4900 MetersInMapUnits SIP_MONKEYPATCH_COMPAT_NAME( RenderMetersInMapUnits ),
4901 };
4902 Q_ENUM( RenderUnit )
4903
4904
4912 {
4913 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( LayoutMillimeters ),
4914 Centimeters SIP_MONKEYPATCH_COMPAT_NAME( LayoutCentimeters ),
4915 Meters SIP_MONKEYPATCH_COMPAT_NAME( LayoutMeters ),
4916 Inches SIP_MONKEYPATCH_COMPAT_NAME( LayoutInches ),
4917 Feet SIP_MONKEYPATCH_COMPAT_NAME( LayoutFeet ),
4918 Points SIP_MONKEYPATCH_COMPAT_NAME( LayoutPoints ),
4919 Picas SIP_MONKEYPATCH_COMPAT_NAME( LayoutPicas ),
4920 Pixels SIP_MONKEYPATCH_COMPAT_NAME( LayoutPixels )
4921 };
4922 Q_ENUM( LayoutUnit )
4923
4924
4932 {
4933 PaperUnits SIP_MONKEYPATCH_COMPAT_NAME( LayoutPaperUnits ),
4934 ScreenUnits SIP_MONKEYPATCH_COMPAT_NAME( LayoutScreenUnits )
4935 };
4936 Q_ENUM( LayoutUnitType )
4937
4938
4946 {
4947 SVG SIP_MONKEYPATCH_COMPAT_NAME( FormatSVG ) = 0,
4948 Raster SIP_MONKEYPATCH_COMPAT_NAME( FormatRaster ),
4949 Unknown SIP_MONKEYPATCH_COMPAT_NAME( FormatUnknown ),
4950 };
4951 Q_ENUM( PictureFormat )
4952
4953
4958 enum class ScaleCalculationMethod : int
4959 {
4960 HorizontalTop = 0,
4961 HorizontalMiddle,
4962 HorizontalBottom,
4963 HorizontalAverage,
4964 };
4965 Q_ENUM( ScaleCalculationMethod )
4966
4967
4975 {
4976 Left SIP_MONKEYPATCH_COMPAT_NAME( AlignLeft ) = 0,
4977 Middle SIP_MONKEYPATCH_COMPAT_NAME( AlignMiddle ),
4978 Right SIP_MONKEYPATCH_COMPAT_NAME( AlignRight ),
4979 };
4980 Q_ENUM( ScaleBarAlignment )
4981
4982
4990 {
4991 Fixed SIP_MONKEYPATCH_COMPAT_NAME( SegmentSizeFixed ) = 0,
4992 FitWidth SIP_MONKEYPATCH_COMPAT_NAME( SegmentSizeFitWidth ) = 1
4993 };
4994 Q_ENUM( ScaleBarSegmentSizeMode )
4995
4996
5004 {
5005 AboveSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelAboveSegment ) = 0,
5006 BelowSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelBelowSegment ),
5007 };
5008 Q_ENUM( ScaleBarDistanceLabelVerticalPlacement )
5009
5010
5018 {
5019 CenteredEdge SIP_MONKEYPATCH_COMPAT_NAME( LabelCenteredEdge ) = 0,
5020 CenteredSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelCenteredSegment ),
5021 };
5022 Q_ENUM( ScaleBarDistanceLabelHorizontalPlacement )
5023
5024
5029 enum class InputControllerType : int
5030 {
5031 Map2D,
5032 Map3D
5033 };
5035
5042 {
5043 NotSet,
5044 Unknown,
5045 OrdinaryTable,
5046 Index,
5047 Sequence,
5048 View,
5049 MaterializedView,
5050 CompositeType,
5051 ToastTable,
5052 ForeignTable,
5053 PartitionedTable,
5054 };
5055 Q_ENUM( PostgresRelKind )
5056
5057
5063 {
5064 SetFieldComment = 1 << 0,
5065 SetFieldAlias = 1 << 1,
5066 };
5067 Q_ENUM( DatabaseProviderConnectionCapability2 )
5070
5077 {
5078 SaveToDatabase = 1 << 1,
5079 LoadFromDatabase = 1 << 2,
5080 DeleteFromDatabase = 1 << 3
5081 };
5085
5086
5092 {
5093 LastProfile,
5094 DefaultProfile,
5095 AskUser,
5096 };
5097 Q_ENUM( UserProfileSelectionPolicy )
5098
5099
5107 {
5108 Container SIP_MONKEYPATCH_COMPAT_NAME( AeTypeContainer ),
5109 Field SIP_MONKEYPATCH_COMPAT_NAME( AeTypeField ),
5110 Relation SIP_MONKEYPATCH_COMPAT_NAME( AeTypeRelation ),
5111 QmlElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeQmlElement ),
5112 HtmlElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeHtmlElement ),
5113 Action SIP_MONKEYPATCH_COMPAT_NAME( AeTypeAction ),
5114 TextElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeTextElement ),
5115 SpacerElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeSpacerElement ),
5116 Invalid SIP_MONKEYPATCH_COMPAT_NAME( AeTypeInvalid ),
5117 };
5118 Q_ENUM( AttributeEditorType )
5119
5120
5126 {
5127 GroupBox,
5128 Tab,
5129 Row,
5130 };
5131 Q_ENUM( AttributeEditorContainerType )
5132
5133
5141 {
5142 AutoGenerated SIP_MONKEYPATCH_COMPAT_NAME( GeneratedLayout ) = 0,
5143 DragAndDrop SIP_MONKEYPATCH_COMPAT_NAME( TabLayout ) = 1,
5144 UiFile SIP_MONKEYPATCH_COMPAT_NAME( UiFileLayout ) = 2
5145 };
5146 Q_ENUM( AttributeFormLayout )
5147
5148
5156 {
5157 Default SIP_MONKEYPATCH_COMPAT_NAME( SuppressDefault ) = 0,
5158 On SIP_MONKEYPATCH_COMPAT_NAME( SuppressOn ) = 1,
5159 Off SIP_MONKEYPATCH_COMPAT_NAME( SuppressOff ) = 2
5160 };
5161 Q_ENUM( AttributeFormSuppression )
5162
5163
5171 {
5172 NoSource SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceNone ) = 0,
5173 File SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceFile ) = 1,
5174 Dialog SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceDialog ) = 2,
5175 Environment SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceEnvironment ) = 3
5176 };
5177 Q_ENUM( AttributeFormPythonInitCodeSource )
5178
5179
5185 {
5186 Qgis,
5187 PointCloud,
5188 RasterCalculator,
5189 };
5190 Q_ENUM( ExpressionType )
5191
5192
5200 {
5201 NoSymbology = 0,
5202 PerFeature SIP_MONKEYPATCH_COMPAT_NAME( FeatureSymbology ),
5203 PerSymbolLayer SIP_MONKEYPATCH_COMPAT_NAME( SymbolLayerSymbology )
5204 };
5205 Q_ENUM( FeatureSymbologyExport )
5206
5207
5212 enum class VectorTileProviderFlag : int SIP_ENUM_BASETYPE( IntFlag )
5213 {
5214 AlwaysUseTileMatrixSetFromProvider = 1 << 1,
5215 };
5216 Q_ENUM( VectorTileProviderFlag )
5217
5218
5224 Q_FLAG( VectorTileProviderFlags )
5225
5231 {
5232 ReadLayerMetadata = 1 << 1,
5233 };
5234 Q_ENUM( VectorTileProviderCapability )
5235
5236
5243
5250 {
5251 Available,
5252 NotAvailable,
5253 AvailableNoChildren,
5254 UseLowerZoomLevelTile,
5255 };
5256 Q_ENUM( TileAvailability )
5257
5258
5264 {
5265 ReadLayerMetadata = 1 << 1,
5266 };
5267 Q_ENUM( TiledSceneProviderCapability )
5268
5269
5276
5283 {
5284 Region,
5285 OrientedBox,
5286 Sphere,
5287 };
5288 Q_ENUM( TiledSceneBoundingVolumeType )
5289
5290
5299 {
5300 Replacement,
5301 Additive,
5302 };
5303 Q_ENUM( TileRefinementProcess )
5304
5305
5311 {
5312 NoChildren,
5313 Available,
5314 NeedFetching,
5315 };
5316 Q_ENUM( TileChildrenAvailability )
5317
5318
5323 enum class TiledSceneRequestFlag : int SIP_ENUM_BASETYPE( IntFlag )
5324 {
5325 NoHierarchyFetch = 1 << 0,
5326 };
5327 Q_ENUM( TiledSceneRequestFlag )
5328
5329
5335 Q_FLAG( TiledSceneRequestFlags )
5336
5342 enum class TiledSceneRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
5343 {
5344 RequiresTextures = 1 << 0,
5345 ForceRasterRender = 1 << 1,
5346 RendersTriangles = 1 << 2,
5347 RendersLines = 1 << 3,
5348 };
5349 Q_ENUM( TiledSceneRendererFlag )
5350
5351
5357 Q_FLAG( TiledSceneRendererFlags )
5358
5364 enum class GdalResampleAlgorithm : int
5365 {
5366 RA_NearestNeighbour = 0,
5367 RA_Bilinear = 1,
5368 RA_Cubic = 2,
5369 RA_CubicSpline = 3,
5370 RA_Lanczos = 4,
5371 RA_Average = 5,
5372 RA_Mode = 6,
5373 RA_Max = 8,
5374 RA_Min = 9,
5375 RA_Median = 10,
5376 RA_Q1 = 11,
5377 RA_Q3 = 12,
5378 };
5379 Q_ENUM( GdalResampleAlgorithm )
5380
5381
5386 enum class VsiHandlerType : int
5387 {
5388 Invalid,
5389 Archive,
5390 Network,
5391 Cloud,
5392 Memory,
5393 Other,
5394 };
5395 Q_ENUM( VsiHandlerType )
5396
5397 // TODO QGIS 4: make All include all values (we can't do this before 4.0, as we need to keep
5398 // compatibility with code which expects all these statistics to give numeric results)
5399
5400
5405 enum class ZonalStatistic : int SIP_ENUM_BASETYPE( IntFlag )
5406 {
5407 Count = 1 << 0,
5408 Sum = 1 << 1,
5409 Mean = 1 << 2,
5410 Median = 1 << 3,
5411 StDev = 1 << 4,
5412 Min = 1 << 5,
5413 Max = 1 << 6,
5414 Range = 1 << 7,
5415 Minority = 1 << 8,
5416 Majority = 1 << 9,
5417 Variety = 1 << 10,
5418 Variance = 1 << 11,
5419 MinimumPoint = 1 << 12,
5420 MaximumPoint = 1 << 13,
5421 All = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
5422 AllNumeric = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
5423 Default = Count | Sum | Mean,
5424 };
5425 Q_ENUM( ZonalStatistic )
5426
5427
5433 Q_FLAG( ZonalStatistics )
5434
5440 enum class ZonalStatisticResult : int
5441 {
5442 Success = 0,
5443 LayerTypeWrong = 1,
5444 LayerInvalid,
5445 RasterInvalid,
5446 RasterBandInvalid,
5447 FailedToCreateField = 8,
5448 Canceled = 9
5449 };
5450 Q_ENUM( ZonalStatisticResult )
5451
5452
5459 {
5460 Count,
5461 CountDistinct,
5462 CountMissing,
5463 Min,
5464 Max,
5465 Sum,
5466 Mean,
5467 Median,
5468 StDev,
5469 StDevSample,
5470 Range,
5471 Minority,
5472 Majority,
5473 FirstQuartile,
5474 ThirdQuartile,
5475 InterQuartileRange,
5476 StringMinimumLength,
5477 StringMaximumLength,
5478 StringConcatenate,
5479 GeometryCollect,
5480 ArrayAggregate,
5481 StringConcatenateUnique
5482 };
5483 Q_ENUM( Aggregate )
5484
5485
5491 {
5492 Count = 1 << 0,
5493 CountMissing = 1 << 15,
5494 Sum = 1 << 1,
5495 Mean = 1 << 2,
5496 Median = 1 << 3,
5497 StDev = 1 << 4,
5498 StDevSample = 1 << 5,
5499 Min = 1 << 6,
5500 Max = 1 << 7,
5501 Range = 1 << 8,
5502 Minority = 1 << 9,
5503 Majority = 1 << 10,
5504 Variety = 1 << 11,
5505 FirstQuartile = 1 << 12,
5506 ThirdQuartile = 1 << 13,
5507 InterQuartileRange = 1 << 14,
5508 First = 1 << 16,
5509 Last = 1 << 17,
5510 All = Count | CountMissing | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | FirstQuartile | ThirdQuartile | InterQuartileRange | First | Last
5511 };
5512 Q_ENUM( Statistic )
5513
5514
5520 Q_FLAG( Statistics )
5521
5528 {
5529 Count = 1,
5530 CountDistinct = 2,
5531 CountMissing = 4,
5532 Min = 8,
5533 Max = 16,
5534 Range = 32,
5535 All = Count | CountDistinct | CountMissing | Min | Max | Range,
5536 };
5537 Q_ENUM( DateTimeStatistic )
5538
5539
5545 Q_FLAG( DateTimeStatistics )
5546
5553 {
5554 Count = 1,
5555 CountDistinct = 2,
5556 CountMissing = 4,
5557 Min = 8,
5558 Max = 16,
5559 MinimumLength = 32,
5560 MaximumLength = 64,
5561 MeanLength = 128,
5562 Minority = 256,
5563 Majority = 512,
5564 All = Count | CountDistinct | CountMissing | Min | Max | MinimumLength | MaximumLength | MeanLength | Minority | Majority,
5565 };
5566 Q_ENUM( StringStatistic )
5567
5568
5574 Q_FLAG( StringStatistics )
5575
5582 {
5583 NoStatistic = 0,
5584 Min = 1,
5585 Max = 1 << 1,
5586 Range = 1 << 2,
5587 Sum = 1 << 3,
5588 Mean = 1 << 4,
5589 StdDev = 1 << 5,
5590 SumOfSquares = 1 << 6,
5591 All = Min | Max | Range | Sum | Mean | StdDev | SumOfSquares
5592 };
5593 Q_ENUM( RasterBandStatistic )
5594
5595
5601 Q_FLAG( RasterBandStatistics )
5602
5608 enum class SensorThingsEntity : int
5609 {
5610 Invalid,
5611 Thing,
5612 Location,
5613 HistoricalLocation,
5614 Datastream,
5615 Sensor,
5616 ObservedProperty,
5617 Observation,
5618 FeatureOfInterest,
5619 MultiDatastream,
5620 };
5621 Q_ENUM( SensorThingsEntity )
5622
5623
5628 enum class ColorModel : int
5629 {
5630 Rgb,
5631 Cmyk,
5632 };
5633 Q_ENUM( ColorModel )
5634
5635
5640 enum class DocumentationApi : int
5641 {
5642 PyQgis,
5643 PyQgisSearch,
5644 CppQgis,
5645 Qt,
5646 };
5647 Q_ENUM( DocumentationApi )
5648
5649
5654 enum class DocumentationBrowser : int
5655 {
5656 DeveloperToolsPanel,
5657 SystemWebBrowser,
5658 };
5659 Q_ENUM( DocumentationBrowser )
5660
5661
5666 enum class MouseHandlesAction : int
5667 {
5668 MoveItem,
5669 ResizeUp,
5670 ResizeDown,
5671 ResizeLeft,
5672 ResizeRight,
5673 ResizeLeftUp,
5674 ResizeRightUp,
5675 ResizeLeftDown,
5676 ResizeRightDown,
5677 SelectItem,
5678 NoAction
5679 };
5680 Q_ENUM( MouseHandlesAction )
5681
5682
5685 static const double DEFAULT_SEARCH_RADIUS_MM;
5686
5688 static const float DEFAULT_MAPTOPIXEL_THRESHOLD;
5689
5695 static const QColor DEFAULT_HIGHLIGHT_COLOR;
5696
5700 static const double DEFAULT_HIGHLIGHT_BUFFER_MM;
5701
5705 static const double DEFAULT_HIGHLIGHT_MIN_WIDTH_MM;
5706
5714 Q_DECL_DEPRECATED static const double SCALE_PRECISION;
5715
5720 static const double DEFAULT_Z_COORDINATE;
5721
5727 static const double DEFAULT_M_COORDINATE;
5728
5733 static const double UI_SCALE_FACTOR;
5734
5738 static const double DEFAULT_SNAP_TOLERANCE;
5739
5743 static const Qgis::MapToolUnit DEFAULT_SNAP_UNITS;
5744
5750 static QString defaultProjectScales();
5751
5757 static int geosVersionInt();
5758
5764 static int geosVersionMajor();
5765
5771 static int geosVersionMinor();
5772
5778 static int geosVersionPatch();
5779
5785 static QString geosVersion();
5786};
5787
5790
5871
5872// hack to workaround warnings when casting void pointers
5873// retrieved from QLibrary::resolve to function pointers.
5874// It's assumed that this works on all systems supporting
5875// QLibrary
5876#define cast_to_fptr(f) f
5877
5878
5886// based on Boojum's code from http://stackoverflow.com/questions/3556687/prevent-firing-signals-in-qt
5887template<class Object> class QgsSignalBlocker SIP_SKIP SIP_SKIP // clazy:exclude=rule-of-three
5888{
5889 public:
5890
5895 explicit QgsSignalBlocker( Object *object )
5896 : mObject( object )
5897 , mPreviousState( object->blockSignals( true ) )
5898 {}
5899
5901 {
5902 mObject->blockSignals( mPreviousState );
5903 }
5904
5906 Object *operator->() { return mObject; }
5907
5908 private:
5909
5910 Object *mObject = nullptr;
5911 bool mPreviousState;
5912
5913};
5914
5927// based on Boojum's code from http://stackoverflow.com/questions/3556687/prevent-firing-signals-in-qt
5928template<class Object> inline QgsSignalBlocker<Object> whileBlocking( Object *object ) SIP_SKIP SIP_SKIP
5929{
5930 return QgsSignalBlocker<Object>( object );
5931}
5932
5934CORE_EXPORT uint qHash( const QVariant &variant );
5935
5941inline QString qgsDoubleToString( double a, int precision = 17 )
5942{
5943 QString str;
5944 if ( precision )
5945 {
5946 if ( precision < 0 )
5947 {
5948 const double roundFactor = std::pow( 10, -precision );
5949 str = QString::number( static_cast< long long >( std::round( a / roundFactor ) * roundFactor ) );
5950 }
5951 else
5952 {
5953 str = QString::number( a, 'f', precision );
5954 if ( str.contains( QLatin1Char( '.' ) ) )
5955 {
5956 // remove ending 0s
5957 int idx = str.length() - 1;
5958 while ( str.at( idx ) == '0' && idx > 1 )
5959 {
5960 idx--;
5961 }
5962 if ( idx < str.length() - 1 )
5963 str.truncate( str.at( idx ) == '.' ? idx : idx + 1 );
5964 }
5965 }
5966 }
5967 else
5968 {
5969 str = QString::number( a, 'f', precision );
5970 }
5971 // avoid printing -0
5972 // see https://bugreports.qt.io/browse/QTBUG-71439
5973 if ( str == QLatin1String( "-0" ) )
5974 {
5975 return QLatin1String( "0" );
5976 }
5977 return str;
5978}
5979
5986inline bool qgsNanCompatibleEquals( double a, double b )
5987{
5988 const bool aIsNan = std::isnan( a );
5989 const bool bIsNan = std::isnan( b );
5990 if ( aIsNan || bIsNan )
5991 return aIsNan && bIsNan;
5992
5993 return a == b;
5994}
5995
5996#ifndef SIP_RUN
5997
6005template<typename T>
6006inline bool qgsNumberNear( T a, T b, T epsilon = std::numeric_limits<T>::epsilon() * 4 )
6007{
6008 const bool aIsNan = std::isnan( a );
6009 const bool bIsNan = std::isnan( b );
6010 if ( aIsNan || bIsNan )
6011 return aIsNan && bIsNan;
6012
6013 const T diff = a - b;
6014 return diff >= -epsilon && diff <= epsilon;
6015}
6016#endif
6017
6024inline bool qgsDoubleNear( double a, double b, double epsilon = 4 * std::numeric_limits<double>::epsilon() )
6025{
6026 return qgsNumberNear<double>( a, b, epsilon );
6027}
6028
6035inline bool qgsFloatNear( float a, float b, float epsilon = 4 * FLT_EPSILON )
6036{
6037 return qgsNumberNear<float>( a, b, epsilon );
6038}
6039
6041inline bool qgsDoubleNearSig( double a, double b, int significantDigits = 10 )
6042{
6043 const bool aIsNan = std::isnan( a );
6044 const bool bIsNan = std::isnan( b );
6045 if ( aIsNan || bIsNan )
6046 return aIsNan && bIsNan;
6047
6048 // The most simple would be to print numbers as %.xe and compare as strings
6049 // but that is probably too costly
6050 // Then the fastest would be to set some bits directly, but little/big endian
6051 // has to be considered (maybe TODO)
6052 // Is there a better way?
6053 int aexp, bexp;
6054 const double ar = std::frexp( a, &aexp );
6055 const double br = std::frexp( b, &bexp );
6056
6057 return aexp == bexp &&
6058 std::round( ar * std::pow( 10.0, significantDigits ) ) == std::round( br * std::pow( 10.0, significantDigits ) );
6059}
6060
6065inline double qgsRound( double number, int places )
6066{
6067 const double m = ( number < 0.0 ) ? -1.0 : 1.0;
6068 const double scaleFactor = std::pow( 10.0, places );
6069 return ( std::round( number * m * scaleFactor ) / scaleFactor ) * m;
6070}
6071
6072#ifndef SIP_RUN
6073
6080template<class Key, class Value>
6081QString qgsMapJoinKeys( const QMap<Key, Value> &map, const QString &separator )
6082{
6083 QString result;
6084 for ( auto it = map.constBegin(); it != map.constEnd(); it++ )
6085 result += QString( "%1%2" ).arg( it.key() ).arg( separator );
6086
6087 result.chop( separator.size() );
6088 return result;
6089}
6090
6097template<class Key, class Value>
6098QString qgsMapJoinValues( const QMap<Key, Value> &map, const QString &separator )
6099{
6100 QString result;
6101 for ( auto it = map.constBegin(); it != map.constEnd(); it++ )
6102 result += QString( "%1%2" ).arg( it.value() ).arg( separator );
6103
6104 result.chop( separator.size() );
6105 return result;
6106}
6107
6114template<class T>
6115QString qgsSetJoin( const QSet<T> &set, const QString &separator )
6116{
6117 QString result;
6118 for ( auto it = set.constBegin(); it != set.constEnd(); it++ )
6119 result += QString( "%1%2" ).arg( *it ).arg( separator );
6120
6121 result.chop( separator.size() );
6122 return result;
6123}
6124
6126
6136namespace qgis
6137{
6138
6151 template<typename To, typename From> inline To down_cast( From *f )
6152 {
6153 static_assert(
6154 ( std::is_base_of<From,
6155 typename std::remove_pointer<To>::type>::value ),
6156 "target type not derived from source type" );
6157 Q_ASSERT( f == nullptr || dynamic_cast<To>( f ) != nullptr );
6158 return static_cast<To>( f );
6159 }
6160
6161 template<class T>
6162 QSet<T> listToSet( const QList<T> &list )
6163 {
6164 return QSet<T>( list.begin(), list.end() );
6165 }
6166
6167 template<class T>
6168 QList<T> setToList( const QSet<T> &set )
6169 {
6170 return QList<T>( set.begin(), set.end() );
6171 }
6172}
6173
6175#endif
6176
6181template<class T> const QList<T> qgsEnumList() SIP_SKIP
6182{
6183 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6184 Q_ASSERT( metaEnum.isValid() );
6185 QList<T> enumList;
6186 for ( int idx = 0; idx < metaEnum.keyCount(); ++idx )
6187 {
6188 enumList.append( static_cast<T>( metaEnum.value( idx ) ) );
6189 }
6190 return enumList;
6191}
6192
6198template<class T> const QMap<T, QString> qgsEnumMap() SIP_SKIP
6199{
6200 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6201 Q_ASSERT( metaEnum.isValid() );
6202 QMap<T, QString> enumMap;
6203 for ( int idx = 0; idx < metaEnum.keyCount(); ++idx )
6204 {
6205 enumMap.insert( static_cast<T>( metaEnum.value( idx ) ), QString( metaEnum.key( idx ) ) );
6206 }
6207 return enumMap;
6208}
6209
6215template<class T> QString qgsEnumValueToKey( const T &value, bool *returnOk = nullptr ) SIP_SKIP
6216{
6217 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6218 Q_ASSERT( metaEnum.isValid() );
6219 const char *key = metaEnum.valueToKey( static_cast<int>( value ) );
6220 if ( returnOk )
6221 {
6222 *returnOk = key ? true : false;
6223 }
6224 return QString::fromUtf8( key );
6225}
6226
6234template<class T> T qgsEnumKeyToValue( const QString &key, const T &defaultValue, bool tryValueAsKey = true, bool *returnOk = nullptr ) SIP_SKIP
6235{
6236 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6237 Q_ASSERT( metaEnum.isValid() );
6238 bool ok = false;
6239 T v = static_cast<T>( metaEnum.keyToValue( key.toUtf8().data(), &ok ) );
6240 if ( returnOk )
6241 {
6242 *returnOk = ok;
6243 }
6244 if ( ok )
6245 {
6246 return v;
6247 }
6248 else
6249 {
6250 // if conversion has failed, try with conversion from int value
6251 if ( tryValueAsKey )
6252 {
6253 bool canConvert = false;
6254 const int intValue = key.toInt( &canConvert );
6255 if ( canConvert && metaEnum.valueToKey( intValue ) )
6256 {
6257 if ( returnOk )
6258 {
6259 *returnOk = true;
6260 }
6261 return static_cast<T>( intValue );
6262 }
6263 }
6264 }
6265 return defaultValue;
6266}
6267
6273template<class T> QString qgsFlagValueToKeys( const T &value, bool *returnOk = nullptr ) SIP_SKIP
6274{
6275 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6276 Q_ASSERT( metaEnum.isValid() );
6277 int intValue = static_cast<int>( value );
6278 const QByteArray ba = metaEnum.valueToKeys( intValue );
6279 // check that the int value does correspond to a flag
6280 // see https://stackoverflow.com/a/68495949/1548052
6281 const int intValueCheck = metaEnum.keysToValue( ba );
6282 bool ok = intValue == intValueCheck;
6283 if ( returnOk )
6284 *returnOk = ok;
6285 return ok ? QString::fromUtf8( ba ) : QString();
6286}
6287
6295template<class T> T qgsFlagKeysToValue( const QString &keys, const T &defaultValue, bool tryValueAsKey = true, bool *returnOk = nullptr ) SIP_SKIP
6296{
6297 if ( keys.isEmpty() )
6298 {
6299 if ( returnOk )
6300 {
6301 *returnOk = false;
6302 }
6303 return defaultValue;
6304 }
6305 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6306 Q_ASSERT( metaEnum.isValid() );
6307 bool ok = false;
6308 T v = static_cast<T>( metaEnum.keysToValue( keys.toUtf8().constData(), &ok ) );
6309 if ( returnOk )
6310 {
6311 *returnOk = ok;
6312 }
6313 if ( ok )
6314 {
6315 return v;
6316 }
6317 else
6318 {
6319 // if conversion has failed, try with conversion from int value
6320 if ( tryValueAsKey )
6321 {
6322 bool canConvert = false;
6323 const int intValue = keys.toInt( &canConvert );
6324 if ( canConvert )
6325 {
6326 const QByteArray keys = metaEnum.valueToKeys( intValue );
6327 const int intValueCheck = metaEnum.keysToValue( keys );
6328 if ( intValue == intValueCheck )
6329 {
6330 if ( returnOk )
6331 {
6332 *returnOk = true;
6333 }
6334 return T( intValue );
6335 }
6336 }
6337 }
6338 }
6339 return defaultValue;
6340}
6341
6342
6351CORE_EXPORT double qgsPermissiveToDouble( QString string, bool &ok );
6352
6361CORE_EXPORT int qgsPermissiveToInt( QString string, bool &ok );
6362
6372CORE_EXPORT qlonglong qgsPermissiveToLongLong( QString string, bool &ok );
6373
6383CORE_EXPORT bool qgsVariantLessThan( const QVariant &lhs, const QVariant &rhs );
6384
6393CORE_EXPORT bool qgsVariantEqual( const QVariant &lhs, const QVariant &rhs );
6394
6401CORE_EXPORT bool qgsVariantGreaterThan( const QVariant &lhs, const QVariant &rhs );
6402
6403#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
6404
6411inline bool operator> ( const QVariant &v1, const QVariant &v2 )
6412{
6413 return qgsVariantGreaterThan( v1, v2 );
6414}
6415
6425inline bool operator< ( const QVariant &v1, const QVariant &v2 )
6426{
6427 return qgsVariantLessThan( v1, v2 );
6428}
6429#endif
6430
6431
6432#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
6433
6437template<> CORE_EXPORT bool qMapLessThanKey<QVariantList>( const QVariantList &key1, const QVariantList &key2 ) SIP_SKIP;
6438#endif
6439
6440CORE_EXPORT QString qgsVsiPrefix( const QString &path );
6441
6447void CORE_EXPORT *qgsMalloc( size_t size ) SIP_SKIP;
6448
6453void CORE_EXPORT qgsFree( void *ptr ) SIP_SKIP;
6454
6455#ifndef SIP_RUN
6456
6457#ifdef _MSC_VER
6458#define CONSTLATIN1STRING inline const QLatin1String
6459#else
6460#define CONSTLATIN1STRING constexpr QLatin1String
6461#endif
6462
6464class ScopedIntIncrementor
6465{
6466 public:
6467
6468 ScopedIntIncrementor( int *variable )
6469 : mVariable( variable )
6470 {
6471 ( *mVariable )++;
6472 }
6473
6474 ScopedIntIncrementor( const ScopedIntIncrementor &other ) = delete;
6475 ScopedIntIncrementor &operator=( const ScopedIntIncrementor &other ) = delete;
6476
6477 void release()
6478 {
6479 if ( mVariable )
6480 ( *mVariable )--;
6481
6482 mVariable = nullptr;
6483 }
6484
6485 ~ScopedIntIncrementor()
6486 {
6487 release();
6488 }
6489
6490 private:
6491 int *mVariable = nullptr;
6492};
6494
6500{
6501 return QLatin1String(
6502 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]] )"""
6503 );
6504}
6505
6508{
6509 return QLatin1String( "+proj=longlat +datum=WGS84 +no_defs" );
6510}
6511
6514{
6515 return QLatin1String( "EPSG:4326" );
6516}
6517
6520{
6521 return QLatin1String( "NONE" );
6522}
6523
6525
6527const int PREVIEW_JOB_DELAY_MS = 250;
6528
6530const int MAXIMUM_LAYER_PREVIEW_TIME_MS = 250;
6531
6533
6534#endif
6535
6537const long GEOSRID = 4326;
6538
6540const long GEOCRS_ID = 3452;
6541
6543const long GEO_EPSG_CRS_ID = 4326;
6544
6549const int USER_CRS_START_ID = 100000;
6550
6551//
6552// Constants for point symbols
6553//
6554
6556const double DEFAULT_POINT_SIZE = 2.0;
6557const double DEFAULT_LINE_WIDTH = 0.26;
6558
6560const double DEFAULT_SEGMENT_EPSILON = 1e-8;
6561
6562typedef QMap<QString, QString> QgsStringMap SIP_SKIP;
6563
6572typedef unsigned long long qgssize;
6573
6574#ifndef SIP_RUN
6575#if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) || defined(__clang__)
6576
6577#define Q_NOWARN_DEPRECATED_PUSH \
6578 _Pragma("GCC diagnostic push") \
6579 _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"");
6580#define Q_NOWARN_DEPRECATED_POP \
6581 _Pragma("GCC diagnostic pop");
6582#define Q_NOWARN_UNREACHABLE_PUSH
6583#define Q_NOWARN_UNREACHABLE_POP
6584
6585#elif defined(_MSC_VER)
6586
6587#define Q_NOWARN_DEPRECATED_PUSH \
6588 __pragma(warning(push)) \
6589 __pragma(warning(disable:4996))
6590#define Q_NOWARN_DEPRECATED_POP \
6591 __pragma(warning(pop))
6592#define Q_NOWARN_UNREACHABLE_PUSH \
6593 __pragma(warning(push)) \
6594 __pragma(warning(disable:4702))
6595#define Q_NOWARN_UNREACHABLE_POP \
6596 __pragma(warning(pop))
6597
6598#else
6599
6600#define Q_NOWARN_DEPRECATED_PUSH
6601#define Q_NOWARN_DEPRECATED_POP
6602#define Q_NOWARN_UNREACHABLE_PUSH
6603#define Q_NOWARN_UNREACHABLE_POP
6604
6605#endif
6606#endif
6607
6608#ifndef QGISEXTERN
6609#ifdef Q_OS_WIN
6610# define QGISEXTERN extern "C" __declspec( dllexport )
6611#else
6612# if defined(__GNUC__) || defined(__clang__)
6613# define QGISEXTERN extern "C" __attribute__ ((visibility ("default")))
6614# else
6615# define QGISEXTERN extern "C"
6616# endif
6617#endif
6618#endif
6619#endif
6620
6621// see https://infektor.net/posts/2017-01-19-using-cpp17-attributes-today.html#using-the-nodiscard-attribute
6622#if __cplusplus >= 201703L
6623#define NODISCARD [[nodiscard]]
6624#elif defined(__clang__)
6625#define NODISCARD [[nodiscard]]
6626#elif defined(_MSC_VER)
6627#define NODISCARD // no support
6628#elif defined(__has_cpp_attribute)
6629#if __has_cpp_attribute(nodiscard)
6630#define NODISCARD [[nodiscard]]
6631#elif __has_cpp_attribute(gnu::warn_unused_result)
6632#define NODISCARD [[gnu::warn_unused_result]]
6633#else
6634#define NODISCARD Q_REQUIRED_RESULT
6635#endif
6636#else
6637#define NODISCARD Q_REQUIRED_RESULT
6638#endif
6639
6640#if __cplusplus >= 201703L
6641#define MAYBE_UNUSED [[maybe_unused]]
6642#elif defined(__clang__)
6643#define MAYBE_UNUSED [[maybe_unused]]
6644#elif defined(_MSC_VER)
6645#define MAYBE_UNUSED // no support
6646#elif defined(__has_cpp_attribute)
6647#if __has_cpp_attribute(gnu::unused)
6648#define MAYBE_UNUSED [[gnu::unused]]
6649#else
6650#define MAYBE_UNUSED
6651#endif
6652#else
6653#define MAYBE_UNUSED
6654#endif
6655
6656#ifndef FINAL
6657#define FINAL final
6658#endif
6659
6660#ifndef SIP_RUN
6661#ifdef _MSC_VER
6662#define BUILTIN_UNREACHABLE \
6663 __assume(false);
6664#elif defined(__GNUC__) && !defined(__clang__)
6665// Workaround a GCC bug where a -Wreturn-type warning is emitted in constructs
6666// like:
6667// switch( mVariableThatCanOnlyBeXorY )
6668// {
6669// case X:
6670// return "foo";
6671// case Y:
6672// return "foo";
6673// }
6674// See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87951
6675#define BUILTIN_UNREACHABLE \
6676 __builtin_unreachable();
6677#else
6678#define BUILTIN_UNREACHABLE
6679#endif
6680#endif // SIP_RUN
6681
6682#ifdef SIP_RUN
6683
6688QString CORE_EXPORT geoWkt();
6689
6691QString CORE_EXPORT geoProj4();
6692
6694QString CORE_EXPORT geoEpsgCrsAuthId();
6695
6697QString CORE_EXPORT geoNone();
6698
6699#endif
The Qgis class provides global constants for use throughout the application.
Definition qgis.h:54
DistanceUnitType
Types of distance units.
Definition qgis.h:4784
GnssConstellation
GNSS constellation.
Definition qgis.h:1796
SettingsOption
Settings options.
Definition qgis.h:688
ProfileGeneratorFlag
Flags that control the way the QgsAbstractProfileGenerator operate.
Definition qgis.h:3967
ProcessingSourceType
Processing data source types.
Definition qgis.h:3315
GpsQualityIndicator
GPS signal quality indicator.
Definition qgis.h:1814
DataItemProviderCapability
Capabilities for data item providers.
Definition qgis.h:910
ProcessingFileParameterBehavior
Flags which dictate the behavior of QgsProcessingParameterFile.
Definition qgis.h:3555
QFlags< MapLayerRendererFlag > MapLayerRendererFlags
Flags which control how map layer renderers behave.
Definition qgis.h:2658
ProjectReadFlag
Flags which control project read behavior.
Definition qgis.h:4051
QFlags< BabelCommandFlag > BabelCommandFlags
Babel command flags.
Definition qgis.h:1909
MapToolUnit
Type of unit of tolerance value from settings.
Definition qgis.h:4690
PlotAxisSuffixPlacement
Placement options for suffixes in the labels for axis of plots.
Definition qgis.h:3140
ProcessingModelChildAlgorithmExecutionStatus
Reflects the status of a child algorithm in a Processing model.
Definition qgis.h:3630
QFlags< GpsInformationComponent > GpsInformationComponents
GPS information component.
Definition qgis.h:1876
ScaleBarDistanceLabelHorizontalPlacement
Scale bar distance label horizontal placement.
Definition qgis.h:5018
PointCloudSymbol
Rendering symbols for point cloud points.
Definition qgis.h:3995
SymbolRotationMode
Modes for handling how symbol and text entity rotation is handled when maps are rotated.
Definition qgis.h:750
GeometryValidityFlag
Geometry validity check flags.
Definition qgis.h:1963
QFlags< RasterProviderCapability > RasterProviderCapabilities
Raster data provider capabilities.
Definition qgis.h:4615
ExpressionType
Expression types.
Definition qgis.h:5185
MapLayerActionFlag
Map layer action flags.
Definition qgis.h:4361
ScaleBarDistanceLabelVerticalPlacement
Scale bar distance label vertical placement.
Definition qgis.h:5004
MapLayerProperty
Generic map layer properties.
Definition qgis.h:2158
VectorProviderCapability
Vector data provider capabilities.
Definition qgis.h:463
BufferSide
Side of line to buffer.
Definition qgis.h:1988
RasterResamplingStage
Stage at which raster resampling occurs.
Definition qgis.h:1380
QFlags< MapLayerActionTarget > MapLayerActionTargets
Map layer action targets.
Definition qgis.h:4350
VectorTileProviderCapability
Enumeration with capabilities that vector tile data providers might implement.
Definition qgis.h:5231
AltitudeClamping
Altitude clamping.
Definition qgis.h:3744
VectorTileProviderFlag
Flags for vector tile data providers.
Definition qgis.h:5213
VectorTemporalMode
Vector layer temporal feature modes.
Definition qgis.h:2457
SublayerFlag
Flags which reflect the properties of sublayers in a dataset.
Definition qgis.h:1319
QFlags< ProjectCapability > ProjectCapabilities
Flags which control project capabilities.
Definition qgis.h:4092
LabelLinePlacementFlag
Line placement flags, which control how candidates are generated for a linear feature.
Definition qgis.h:1206
CoordinateDisplayType
Formats for displaying coordinates.
Definition qgis.h:4200
ProcessingParameterTypeFlag
Flags which dictate the behavior of Processing parameter types.
Definition qgis.h:3503
QFlags< VectorRenderingSimplificationFlag > VectorRenderingSimplificationFlags
Simplification flags for vector feature rendering.
Definition qgis.h:2866
DashPatternSizeAdjustment
Dash pattern size adjustment options.
Definition qgis.h:3113
GpsFixStatus
GPS fix status.
Definition qgis.h:1781
AnnotationItemNodeType
Annotation item node types.
Definition qgis.h:2384
static const char * QGIS_DEV_VERSION
The development version.
Definition qgis.h:82
VectorFileWriterCapability
Capabilities supported by a QgsVectorFileWriter object.
Definition qgis.h:1004
QFlags< MapSettingsFlag > MapSettingsFlags
Map settings flags.
Definition qgis.h:2601
CrsIdentifierType
Available identifier string types for representing coordinate reference systems.
Definition qgis.h:2294
QFlags< RasterRendererFlag > RasterRendererFlags
Flags which control behavior of raster renderers.
Definition qgis.h:1404
AngularDirection
Angular directions.
Definition qgis.h:3228
DriveType
Drive types.
Definition qgis.h:1057
UnitType
Unit types.
Definition qgis.h:4705
ContentStatus
Status for fetched or stored content.
Definition qgis.h:1737
QFlags< SelectionFlag > SelectionFlags
Flags which control feature selection behavior.
Definition qgis.h:1699
SnappingType
SnappingTypeFlag defines on what object the snapping is performed.
Definition qgis.h:713
LayoutUnit
Layout measurement units.
Definition qgis.h:4912
Q_ENUM(GpsFixStatus)
RelationshipStrength
Relationship strength.
Definition qgis.h:4153
Q_ENUM(GnssConstellation)
MarkerLinePlacement
Defines how/where the symbols should be placed on a line.
Definition qgis.h:2951
QFlags< ProjectReadFlag > ProjectReadFlags
Project load flags.
Definition qgis.h:4070
Point3DShape
3D point shape types.
Definition qgis.h:3886
GeometryOperationResult
Success or failure of a geometry operation.
Definition qgis.h:1934
QFlags< StringStatistic > StringStatistics
Statistics to be calculated for string values.
Definition qgis.h:5573
BrowserItemState
Browser item states.
Definition qgis.h:872
AttributeEditorContainerType
Attribute editor container types.
Definition qgis.h:5126
QFlags< TiledSceneProviderCapability > TiledSceneProviderCapabilities
Tiled scene data provider capabilities.
Definition qgis.h:5274
FeatureRequestFilterType
Types of feature request filters.
Definition qgis.h:2101
MarkerClipMode
Marker clipping modes.
Definition qgis.h:3071
GpsNavigationStatus
GPS navigation status.
Definition qgis.h:1834
AnnotationItemFlag
Flags for annotation items.
Definition qgis.h:2341
RenderSubcomponentProperty
Rendering subcomponent properties.
Definition qgis.h:2875
ProcessingTinInputLayerType
Defines the type of input layer for a Processing TIN input.
Definition qgis.h:3645
QFlags< DataProviderFlag > DataProviderFlags
Data provider flags.
Definition qgis.h:2192
Statistic
Available generic statistics.
Definition qgis.h:5491
SymbolRenderHint
Flags controlling behavior of symbols during rendering.
Definition qgis.h:733
AngleUnit
Units of angles.
Definition qgis.h:4847
CaptureTechnique
Capture technique.
Definition qgis.h:376
SpatialIndexPresence
Enumeration of spatial index presence states.
Definition qgis.h:522
BrowserItemCapability
Browser item capabilities.
Definition qgis.h:885
AttributeFormSuppression
Available form types for layout of the attribute form editor.
Definition qgis.h:5156
QFlags< AuthConfigurationStorageCapability > AuthConfigurationStorageCapabilities
Authentication configuration storage capabilities.
Definition qgis.h:145
QFlags< LayerTreeFilterFlag > LayerTreeFilterFlags
Layer tree filter flags.
Definition qgis.h:4293
LayerTreeInsertionMethod
Layer tree insertion methods.
Definition qgis.h:4270
RasterProviderCapability
Raster data provider capabilities.
Definition qgis.h:4595
LineClipMode
Line clipping modes.
Definition qgis.h:3085
VectorRenderingSimplificationFlag
Simplification flags for vector feature rendering.
Definition qgis.h:2851
QFlags< GeometryValidityFlag > GeometryValidityFlags
Geometry validity flags.
Definition qgis.h:1967
BrowserDirectoryMonitoring
Browser directory item monitoring switches.
Definition qgis.h:959
VsiHandlerType
GDAL VSI handler types.
Definition qgis.h:5387
SettingsTreeNodeType
Type of tree node.
Definition qgis.h:618
TilePixelRatio
DpiMode enum.
Definition qgis.h:3168
DatabaseProviderConnectionCapability2
The Capability enum represents the extended operations supported by the connection.
Definition qgis.h:5063
LabelOffsetType
Behavior modifier for label offset and distance, only applies in some label placement modes.
Definition qgis.h:1172
QFlags< ProfileGeneratorFlag > ProfileGeneratorFlags
Definition qgis.h:3973
LabelPrioritization
Label prioritization.
Definition qgis.h:1111
GradientColorSource
Gradient color sources.
Definition qgis.h:3000
FileFilterType
Type of file filters.
Definition qgis.h:1285
LabelPlacement
Placement modes which determine how label candidates are generated for a feature.
Definition qgis.h:1125
RasterLayerType
Raster layer types.
Definition qgis.h:4472
QFlags< VectorLayerTypeFlag > VectorLayerTypeFlags
Vector layer type flags.
Definition qgis.h:395
ScaleBarAlignment
Scalebar alignment.
Definition qgis.h:4975
RasterPyramidFormat
Raster pyramid formats.
Definition qgis.h:4511
VectorExportResult
Vector layer export result codes.
Definition qgis.h:983
DistanceUnit
Units of distance.
Definition qgis.h:4722
RasterTemporalCapabilityFlag
Flags for raster layer temporal capabilities.
Definition qgis.h:2528
SymbolLayerFlag
Flags controlling behavior of symbol layers.
Definition qgis.h:814
GradientSpread
Gradient spread options, which control how gradients are rendered outside of their start and end poin...
Definition qgis.h:3044
QFlags< AnnotationItemGuiFlag > AnnotationItemGuiFlags
Annotation item GUI flags.
Definition qgis.h:2374
LabelPolygonPlacementFlag
Polygon placement flags, which control how candidates are generated for a polygon feature.
Definition qgis.h:1231
RasterRangeLimit
Describes the limits used to compute raster ranges (min/max values).
Definition qgis.h:1436
ScaleMethod
Scale methods.
Definition qgis.h:588
SldExportOption
SLD export options.
Definition qgis.h:660
VectorSimplificationAlgorithm
Simplification algorithms for vector features.
Definition qgis.h:2835
FilePathType
File path types.
Definition qgis.h:1568
CadConstraintType
Advanced digitizing constraint type.
Definition qgis.h:3836
AttributeFormPythonInitCodeSource
The Python init code source for attribute forms.
Definition qgis.h:5171
PointCountMethod
Methods which define the number of points randomly filling a polygon.
Definition qgis.h:3059
SldExportVendorExtension
SLD export vendor extensions, allow the use of vendor extensions when exporting to SLD.
Definition qgis.h:675
MapCanvasFlag
Flags controlling behavior of map canvases.
Definition qgis.h:3254
LayerTreeFilterFlag
Layer tree filter flags.
Definition qgis.h:4283
AttributeFormLayout
Available form types for layout of the attribute form editor.
Definition qgis.h:5141
FeatureRequestFlag
Flags for controlling feature requests.
Definition qgis.h:2073
VertexType
Types of vertex.
Definition qgis.h:2888
ShaderInterpolationMethod
Color ramp shader interpolation methods.
Definition qgis.h:1335
DataProviderFlag
Generic data provider flags.
Definition qgis.h:2186
Q_ENUM(GpsNavigationStatus)
GdalResampleAlgorithm
Resampling algorithm to be used (equivalent to GDAL's enum GDALResampleAlg)
Definition qgis.h:5365
GeometryValidationEngine
Available engines for validating geometries.
Definition qgis.h:1976
TransactionMode
Transaction mode.
Definition qgis.h:3731
Q_ENUM(ScaleToTileZoomLevelMethod)
QFlags< FeatureRendererFlag > FeatureRendererFlags
Flags controlling behavior of vector feature renderers.
Definition qgis.h:772
ElevationMapCombineMethod
Methods used to select the elevation when two elevation maps are combined.
Definition qgis.h:4624
RasterDrawingStyle
Raster drawing styles.
Definition qgis.h:4488
GeosCreationFlag
Flags which control geos geometry creation behavior.
Definition qgis.h:2026
GpsInformationComponent
GPS information component.
Definition qgis.h:1848
ViewSyncModeFlag
Synchronization of 2D map canvas and 3D view.
Definition qgis.h:3273
ProcessingProviderFlag
Flags indicating how and when an processing provider operates and should be exposed to users.
Definition qgis.h:3341
FileOperationFlag
File operation flags.
Definition qgis.h:2143
QFlags< DataItemProviderCapability > DataItemProviderCapabilities
Capabilities for data item providers.
Definition qgis.h:926
ProjectCapability
Flags which control project capabilities.
Definition qgis.h:4082
QFlags< BabelFormatCapability > BabelFormatCapabilities
Babel GPS format capabilities.
Definition qgis.h:1894
QFlags< SymbolLayerFlag > SymbolLayerFlags
Symbol layer flags.
Definition qgis.h:821
QFlags< RasterInterfaceCapability > RasterInterfaceCapabilities
Raster interface capabilities.
Definition qgis.h:4582
Q_ENUM(VectorProfileType)
AttributeActionType
Attribute action types.
Definition qgis.h:4384
TemporalNavigationMode
Temporal navigation modes.
Definition qgis.h:2411
ProcessingFieldParameterDataType
Processing field parameter data types.
Definition qgis.h:3583
AreaUnit
Units of area.
Definition qgis.h:4799
StringStatistic
Available string statistics.
Definition qgis.h:5553
FieldDomainMergePolicy
Merge policy for field domains.
Definition qgis.h:3690
ZonalStatistic
Statistics to be calculated during a zonal statistics operation.
Definition qgis.h:5406
MessageLevel
Level for messages This will be used both for message log and message bar in application.
Definition qgis.h:154
SqlKeywordCategory
SqlKeywordCategory enum represents the categories of the SQL keywords used by the SQL query editor.
Definition qgis.h:1039
QFlags< SnappingType > SnappingTypes
Snapping types.
Definition qgis.h:724
GraduatedMethod
Methods for modifying symbols by range in a graduated symbol renderer.
Definition qgis.h:3128
QFlags< LabelLinePlacementFlag > LabelLinePlacementFlags
Line placement flags, which control how candidates are generated for a linear feature.
Definition qgis.h:1221
TiledSceneBoundingVolumeType
Tiled scene bounding volume types.
Definition qgis.h:5283
TextLayoutMode
Text layout modes.
Definition qgis.h:2744
PropertyType
Property types.
Definition qgis.h:646
QFlags< RenderContextFlag > RenderContextFlags
Render context flags.
Definition qgis.h:2636
LayerFilter
Filter for layers.
Definition qgis.h:188
Q_ENUM(ProviderStyleStorageCapability)
QFlags< SublayerFlag > SublayerFlags
Sublayer flags.
Definition qgis.h:1323
RasterRendererFlag
Flags which control behavior of raster renderers.
Definition qgis.h:1394
PythonEmbeddedMode
Authorisation to run Python Embedded in projects.
Definition qgis.h:403
CrsType
Coordinate reference system types.
Definition qgis.h:2204
QFlags< GeosCreationFlag > GeosCreationFlags
Geos geometry creation behavior flags.
Definition qgis.h:2037
SensorThingsEntity
OGC SensorThings API entity types.
Definition qgis.h:5609
MeshEditingErrorType
Type of error that can occur during mesh frame editing.
Definition qgis.h:1551
FieldDomainSplitPolicy
Split policy for field domains.
Definition qgis.h:3673
ArcGisRestServiceType
Available ArcGIS REST service types.
Definition qgis.h:4120
RasterFileWriterResult
Raster file export results.
Definition qgis.h:1534
AnnotationItemEditOperationResult
Results from an edit operation on an annotation item.
Definition qgis.h:2396
ProcessingPropertyAvailability
Property availability, used for QgsProcessingAlgorithm::VectorProperties in order to determine if pro...
Definition qgis.h:3424
MapRecenteringMode
Modes for recentering map canvases.
Definition qgis.h:3286
RasterRangeAccuracy
Describes the accuracy used to compute raster ranges (min/max values).
Definition qgis.h:1467
ActionType
Action types.
Definition qgis.h:4320
ActionStart
Enum to determine when an operation would begin.
Definition qgis.h:1074
PlaybackOperation
Media playback operations.
Definition qgis.h:2440
QFlags< SymbolLayerUserFlag > SymbolLayerUserFlags
Symbol layer user flags.
Definition qgis.h:844
QFlags< TextRendererFlag > TextRendererFlags
Definition qgis.h:3207
ProviderStyleStorageCapability
The StorageCapability enum represents the style storage operations supported by the provider.
Definition qgis.h:5077
AvoidIntersectionsMode
Flags which control how intersections of pre-existing feature are handled when digitizing new feature...
Definition qgis.h:4022
MarkerShape
Marker shapes.
Definition qgis.h:2902
LegendJsonRenderFlag
Legend JSON export flags.
Definition qgis.h:4305
BlendMode
Blending modes defining the available composition modes that can be used when painting.
Definition qgis.h:4639
RasterElevationMode
Raster layer elevation modes.
Definition qgis.h:3783
Capitalization
String capitalization options.
Definition qgis.h:3185
TemporalIntervalMatchMethod
Method to use when resolving a temporal range to a data provider layer or band.
Definition qgis.h:2513
PictureFormat
Picture formats.
Definition qgis.h:4946
QFlags< LabelPolygonPlacementFlag > LabelPolygonPlacementFlags
Polygon placement flags, which control how candidates are generated for a polygon feature.
Definition qgis.h:1243
LabelQuadrantPosition
Label quadrant positions.
Definition qgis.h:1186
QFlags< PlotToolFlag > PlotToolFlags
Definition qgis.h:3874
ScaleToTileZoomLevelMethod
Available methods for converting map scales to tile zoom levels.
Definition qgis.h:3216
SublayerQueryFlag
Flags which control how data providers will scan for sublayers in a dataset.
Definition qgis.h:1302
QFlags< VectorFileWriterCapability > VectorFileWriterCapabilities
Capabilities supported by a QgsVectorFileWriter object.
Definition qgis.h:1014
TextOrientation
Text orientations.
Definition qgis.h:2729
TemporalUnit
Temporal units.
Definition qgis.h:4868
QFlags< RasterRendererCapability > RasterRendererCapabilities
Raster renderer capabilities.
Definition qgis.h:1425
QFlags< SymbolPreviewFlag > SymbolPreviewFlags
Symbol preview flags.
Definition qgis.h:801
UnplacedLabelVisibility
Unplaced label visibility.
Definition qgis.h:1086
CrsDefinitionFormat
CRS definition formats.
Definition qgis.h:3658
SpatialFilterType
Feature request spatial filter types.
Definition qgis.h:2130
QFlags< ProcessingParameterTypeFlag > ProcessingParameterTypeFlags
Flags which dictate the behavior of Processing parameter types.
Definition qgis.h:3518
TileAvailability
Possible availability states for a tile within a tile matrix.
Definition qgis.h:5250
ProjectFlag
Flags which control the behavior of QgsProjects.
Definition qgis.h:3854
FeatureRendererFlag
Flags controlling behavior of vector feature renderers.
Definition qgis.h:762
BrowserItemType
Browser item types.
Definition qgis.h:853
QFlags< FeatureRequestFlag > FeatureRequestFlags
Flags for controlling feature requests.
Definition qgis.h:2090
SettingsType
Types of settings entries.
Definition qgis.h:599
QFlags< SettingsOption > SettingsOptions
Definition qgis.h:693
RasterTemporalMode
Raster layer temporal modes.
Definition qgis.h:2498
RasterAttributeTableType
The RasterAttributeTableType enum represents the type of RAT.
Definition qgis.h:1508
LabelingFlag
Various flags that affect drawing and placement of labels.
Definition qgis.h:2684
GeometryType
The geometry types are used to group Qgis::WkbType in a coarse way.
Definition qgis.h:337
RelationshipType
Relationship types.
Definition qgis.h:4139
ScriptLanguageCapability
Script language capabilities.
Definition qgis.h:4249
RasterInterfaceCapability
Raster interface capabilities.
Definition qgis.h:4562
JoinStyle
Join styles for buffers.
Definition qgis.h:2013
PointCloudDrawOrder
Pointcloud rendering order for 2d views.
Definition qgis.h:4007
QFlags< RasterBandStatistic > RasterBandStatistics
Statistics to be calculated for raster bands.
Definition qgis.h:5600
ProcessingAlgorithmDocumentationFlag
Flags describing algorithm behavior for documentation purposes.
Definition qgis.h:3401
TextCharacterVerticalAlignment
Text vertical alignment for characters.
Definition qgis.h:2820
FieldDuplicatePolicy
Duplicate policy for fields.
Definition qgis.h:3705
UserProfileSelectionPolicy
User profile selection policy.
Definition qgis.h:5092
QFlags< FileOperationFlag > FileOperationFlags
File operation flags.
Definition qgis.h:2148
DpiMode
DpiMode enum.
Definition qgis.h:3154
Q_ENUM(ProfileExportType)
BrowserLayerType
Browser item layer types.
Definition qgis.h:935
QFlags< ProcessingAlgorithmFlag > ProcessingAlgorithmFlags
Flags indicating how and when an algorithm operates and should be exposed to users.
Definition qgis.h:3392
AltitudeBinding
Altitude binding.
Definition qgis.h:3757
QFlags< DataProviderReadFlag > DataProviderReadFlags
Flags which control data provider construction.
Definition qgis.h:450
Q_ENUM(ProcessingProviderFlag)
TiledSceneRendererFlag
Flags which control how tiled scene 2D renderers behave.
Definition qgis.h:5343
MapLayerActionTarget
Map layer action targets.
Definition qgis.h:4335
ShaderClassificationMethod
Color ramp shader classification methods.
Definition qgis.h:1350
ZonalStatisticResult
Zonal statistics result codes.
Definition qgis.h:5441
ScriptLanguage
Scripting languages.
Definition qgis.h:4226
QFlags< BrowserItemCapability > BrowserItemCapabilities
Browser item capabilities.
Definition qgis.h:899
FeatureAvailability
Possible return value for QgsFeatureSource::hasFeatures() to determine if a source is empty.
Definition qgis.h:541
TiledSceneProviderCapability
Tiled scene data provider capabilities.
Definition qgis.h:5264
LabelMultiLineAlignment
Text alignment for multi-line labels.
Definition qgis.h:1269
RasterBandStatistic
Available raster band statistics.
Definition qgis.h:5582
QFlags< VectorTileProviderCapability > VectorTileProviderCapabilities
Vector tile data provider capabilities.
Definition qgis.h:5241
AuthConfigurationStorageCapability
Authentication configuration storage capabilities.
Definition qgis.h:100
PythonEmbeddedType
Type of Python Embedded in projects.
Definition qgis.h:417
QFlags< ZonalStatistic > ZonalStatistics
Statistics to be calculated during a zonal statistics operation.
Definition qgis.h:5432
VectorDataProviderTemporalMode
Vector data provider temporal handling modes.
Definition qgis.h:2485
TextRenderFormat
Options for rendering text.
Definition qgis.h:2669
DocumentationBrowser
Documentation API browser.
Definition qgis.h:5655
DataType
Raster data types.
Definition qgis.h:351
Q_ENUM(ProfileSurfaceSymbology)
QFlags< ViewSyncModeFlag > ViewSyncModeFlags
Definition qgis.h:3278
QFlags< SublayerQueryFlag > SublayerQueryFlags
Sublayer query flags.
Definition qgis.h:1309
SystemOfMeasurement
Systems of unit measurement.
Definition qgis.h:4675
RasterAttributeTableFieldUsage
The RasterAttributeTableFieldUsage enum represents the usage of a Raster Attribute Table field.
Definition qgis.h:1479
VerticalAxisInversion
Vertical axis inversion options for 3D views.
Definition qgis.h:3929
QFlags< CoordinateTransformationFlag > CoordinateTransformationFlags
Coordinate transformation flags.
Definition qgis.h:2570
RelationshipCapability
Relationship capabilities.
Definition qgis.h:4179
RasterBuildPyramidOption
Raster pyramid building options.
Definition qgis.h:4526
QFlags< VectorProviderCapability > VectorProviderCapabilities
Vector data provider capabilities.
Definition qgis.h:500
NavigationMode
The navigation mode used by 3D cameras.
Definition qgis.h:3917
LinearReferencingPlacement
Defines how/where the labels should be placed in a linear referencing symbol layer.
Definition qgis.h:2971
TileChildrenAvailability
Possible availability states for a tile's children.
Definition qgis.h:5311
LayerType
Types of layers that can be added to a map.
Definition qgis.h:169
QFlags< AnnotationItemFlag > AnnotationItemFlags
Annotation item flags.
Definition qgis.h:2347
FieldOrigin
Field origin.
Definition qgis.h:1596
LinearReferencingLabelSource
Defines what quantity to use for the labels shown in a linear referencing symbol layer.
Definition qgis.h:2985
RasterRangeExtent
Describes the extent used to compute raster ranges (min/max values).
Definition qgis.h:1452
QFlags< Statistic > Statistics
Statistics to be calculated for generic values.
Definition qgis.h:5519
PlotToolFlag
Flags that control the way the QgsPlotTools operate.
Definition qgis.h:3870
RenderUnit
Rendering size units.
Definition qgis.h:4892
CoordinateOrder
Order of coordinates.
Definition qgis.h:2279
SelectionFlag
Flags which control feature selection behavior.
Definition qgis.h:1689
QFlags< SettingsTreeNodeOption > SettingsTreeNodeOptions
Definition qgis.h:635
EndCapStyle
End cap styles for buffers.
Definition qgis.h:2000
ScaleCalculationMethod
Scale calculation logic.
Definition qgis.h:4959
QFlags< TiledSceneRequestFlag > TiledSceneRequestFlags
Flags which control how tiled scene requests behave.
Definition qgis.h:5334
QFlags< MapLayerActionFlag > MapLayerActionFlags
Map layer action flags.
Definition qgis.h:4373
QFlags< MapLayerProperty > MapLayerProperties
Map layer properties.
Definition qgis.h:2163
QFlags< LoadStyleFlag > LoadStyleFlags
Flags for loading layer styles.
Definition qgis.h:225
BabelCommandFlag
Babel command flags, which control how commands and arguments are generated for executing GPSBabel pr...
Definition qgis.h:1905
QFlags< LabelingFlag > LabelingFlags
Flags that affect drawing and placement of labels.
Definition qgis.h:2704
FieldDomainType
Types of field domain.
Definition qgis.h:3718
MapLayerRendererFlag
Flags which control how map layer renderers behave.
Definition qgis.h:2646
RenderContextFlag
Flags which affect rendering operations.
Definition qgis.h:2611
RasterPipeInterfaceRole
Raster pipe interface roles.
Definition qgis.h:1363
CoverageValidityResult
Coverage validity results.
Definition qgis.h:2046
DataProviderReadFlag
Flags which control data provider construction.
Definition qgis.h:431
ScaleBarSegmentSizeMode
Modes for setting size for scale bar segments.
Definition qgis.h:4990
Aggregate
Available aggregates to calculate.
Definition qgis.h:5459
SymbolPreviewFlag
Flags for controlling how symbol preview images are generated.
Definition qgis.h:796
AnnotationItemGuiFlag
Flags for controlling how an annotation item behaves in the GUI.
Definition qgis.h:2370
MapBoxGlStyleSourceType
Available MapBox GL style source types.
Definition qgis.h:4101
LayoutUnitType
Types of layout units.
Definition qgis.h:4932
VectorDataProviderAttributeEditCapability
Attribute editing capabilities which may be supported by vector data providers.
Definition qgis.h:554
DashPatternLineEndingRule
Dash pattern line ending rules.
Definition qgis.h:3098
FieldMetadataProperty
Standard field metadata values.
Definition qgis.h:1637
TiledSceneRequestFlag
Flags which control how tiled scene requests behave.
Definition qgis.h:5324
RasterRendererCapability
Raster renderer capabilities.
Definition qgis.h:1415
VertexMarkerType
Editing vertex markers, used for showing vertices during a edit operation.
Definition qgis.h:1725
HistoryProviderBackend
History provider backends.
Definition qgis.h:3299
RasterExportType
Raster file export types.
Definition qgis.h:1521
SublayerPromptMode
Specifies how to handle layer sources with multiple sublayers.
Definition qgis.h:1580
TextVerticalAlignment
Text vertical alignment.
Definition qgis.h:2804
RelationshipCardinality
Relationship cardinality.
Definition qgis.h:4165
GradientType
Gradient types.
Definition qgis.h:3014
QFlags< ScriptLanguageCapability > ScriptLanguageCapabilities
Script language capabilities.
Definition qgis.h:4261
VectorProfileType
Types of elevation profiles to generate for vector sources.
Definition qgis.h:3955
GpsFeatureType
GPS feature types.
Definition qgis.h:1919
VectorLayerTypeFlag
Vector layer type flags.
Definition qgis.h:390
MakeValidMethod
Algorithms to use when repairing invalid geometries.
Definition qgis.h:2059
RangeLimits
Describes how the limits of a range are handled.
Definition qgis.h:3769
QFlags< ProjectFlag > ProjectFlags
Definition qgis.h:3861
VectorTemporalLimitMode
Mode for the handling of the limits of the filtering timeframe for vector features.
Definition qgis.h:2473
QFlags< ProcessingParameterFlag > ProcessingParameterFlags
Flags which dictate the behavior of Processing parameters.
Definition qgis.h:3544
SqlLayerDefinitionCapability
SqlLayerDefinitionCapability enum lists the arguments supported by the provider when creating SQL que...
Definition qgis.h:1022
VectorEditResult
Specifies the result of a vector layer edit operation.
Definition qgis.h:1710
QFlags< VectorDataProviderAttributeEditCapability > VectorDataProviderAttributeEditCapabilities
Attribute editing capabilities which may be supported by vector data providers.
Definition qgis.h:566
Axis
Cartesian axes.
Definition qgis.h:2328
QFlags< ProcessingAlgorithmDocumentationFlag > ProcessingAlgorithmDocumentationFlags
Flags describing algorithm behavior for documentation purposes.
Definition qgis.h:3412
QFlags< RelationshipCapability > RelationshipCapabilities
Relationship capabilities.
Definition qgis.h:4191
QFlags< SymbolRenderHint > SymbolRenderHints
Symbol render hints.
Definition qgis.h:741
VolumeUnit
Units of volume.
Definition qgis.h:4824
AttributeEditorType
Attribute editor types.
Definition qgis.h:5107
QFlags< LegendJsonRenderFlag > LegendJsonRenderFlags
Definition qgis.h:4309
QFlags< ProviderStyleStorageCapability > ProviderStyleStorageCapabilities
Definition qgis.h:5083
SymbolLayerUserFlag
User-specified flags controlling behavior of symbol layers.
Definition qgis.h:834
InvalidGeometryCheck
Methods for handling of features with invalid geometries.
Definition qgis.h:2117
QFlags< SymbolFlag > SymbolFlags
Symbol flags.
Definition qgis.h:787
QFlags< ProcessingFeatureSourceDefinitionFlag > ProcessingFeatureSourceDefinitionFlags
Flags which control behavior for a Processing feature source.
Definition qgis.h:3466
ProfileExportType
Types of export for elevation profiles.
Definition qgis.h:3982
MeshElevationMode
Mesh layer elevation modes.
Definition qgis.h:3797
ProjectFileFormat
Flags which control project read behavior.
Definition qgis.h:4037
SnappingMode
SnappingMode defines on which layer the snapping is performed.
Definition qgis.h:701
SymbolType
Symbol types.
Definition qgis.h:574
RasterColorInterpretation
Raster color interpretation.
Definition qgis.h:4421
ProfileSurfaceSymbology
Surface symbology type for elevation profile plots.
Definition qgis.h:3942
LabelPlacementEngineVersion
Labeling placement engine version.
Definition qgis.h:2715
Q_ENUM(ProcessingAlgorithmFlag)
ColorModel
Color model types.
Definition qgis.h:5629
RendererUsage
Usage of the renderer.
Definition qgis.h:3241
SettingsTreeNodeOption
Options for named list nodes.
Definition qgis.h:630
BabelFormatCapability
Babel GPS format capabilities.
Definition qgis.h:1886
PostgresRelKind
Postgres database relkind options.
Definition qgis.h:5042
GpsConnectionType
GPS connection types.
Definition qgis.h:1752
Q_ENUM(InputControllerType)
QFlags< DatabaseProviderConnectionCapability2 > DatabaseProviderConnectionCapabilities2
Definition qgis.h:5068
MouseHandlesAction
Action to be performed by the mouse handles.
Definition qgis.h:5667
ProcessingFeatureSourceDefinitionFlag
Flags which control behavior for a Processing feature source.
Definition qgis.h:3453
QFlags< TextComponent > TextComponents
Text components.
Definition qgis.h:2774
LoadStyleFlag
Flags for loading layer styles.
Definition qgis.h:215
BetweenLineConstraint
Between line constraints which can be enabled.
Definition qgis.h:3810
QFlags< VectorTileProviderFlag > VectorTileProviderFlags
Vector tile data provider flags.
Definition qgis.h:5223
MetadataDateType
Date types for metadata.
Definition qgis.h:4402
QFlags< RasterTemporalCapabilityFlag > RasterTemporalCapabilityFlags
Flags for raster layer temporal capabilities.
Definition qgis.h:2538
ProcessingFeatureSourceFlag
Flags which control how QgsProcessingFeatureSource fetches features.
Definition qgis.h:3477
RasterIdentifyFormat
Raster identify formats.
Definition qgis.h:4541
TextHorizontalAlignment
Text horizontal alignment.
Definition qgis.h:2785
SymbolFlag
Flags controlling behavior of symbols.
Definition qgis.h:781
LineExtensionSide
Designates whether the line extension constraint is currently soft locked with the previous or next v...
Definition qgis.h:3823
HttpMethod
Different methods of HTTP requests.
Definition qgis.h:971
WkbType
The WKB type describes the number of dimensions a geometry has.
Definition qgis.h:256
QFlags< SldExportOption > SldExportOptions
Definition qgis.h:666
SymbolCoordinateReference
Symbol coordinate reference modes.
Definition qgis.h:3029
QFlags< ProcessingProviderFlag > ProcessingProviderFlags
Flags indicating how and when an processing provider operates and should be exposed to users.
Definition qgis.h:3354
TileRefinementProcess
Tiled scene tile refinement processes.
Definition qgis.h:5299
QFlags< DateTimeStatistic > DateTimeStatistics
Statistics to be calculated for date/time values.
Definition qgis.h:5544
SelectionRenderingMode
Specifies how a selection should be rendered.
Definition qgis.h:1650
InputControllerType
Input controller types.
Definition qgis.h:5030
TextRendererFlag
Flags which control the behavior of rendering text.
Definition qgis.h:3203
SelectGeometryRelationship
Geometry relationship test to apply for selecting features.
Definition qgis.h:1677
CrsAxisDirection
Coordinate reference system axis directions.
Definition qgis.h:2229
ProcessingModelChildParameterSource
Processing model child parameter sources.
Definition qgis.h:3614
QFlags< MarkerLinePlacement > MarkerLinePlacements
Definition qgis.h:2962
QFlags< MapCanvasFlag > MapCanvasFlags
Flags controlling behavior of map canvases.
Definition qgis.h:3264
CrsWktVariant
Coordinate reference system WKT formatting variants.
Definition qgis.h:2309
QFlags< TiledSceneRendererFlag > TiledSceneRendererFlags
Flags which control how tiled scene 2D renderers behave.
Definition qgis.h:5356
DocumentationApi
Documentation API.
Definition qgis.h:5641
AutoRefreshMode
Map layer automatic refresh modes.
Definition qgis.h:2173
AnnotationPlacementMode
Annotation item placement modes.
Definition qgis.h:2357
ProcessingAlgorithmFlag
Flags indicating how and when an algorithm operates and should be exposed to users.
Definition qgis.h:3365
FieldConfigurationFlag
Configuration flags for fields These flags are meant to be user-configurable and are not describing a...
Definition qgis.h:1613
SettingsOrigin
The setting origin describes where a setting is stored.
Definition qgis.h:4213
ProcessingParameterFlag
Flags which dictate the behavior of Processing parameters.
Definition qgis.h:3529
LabelOverlapHandling
Label overlap handling.
Definition qgis.h:1098
FeatureSymbologyExport
Options for exporting features considering their symbology.
Definition qgis.h:5200
QFlags< LayerFilter > LayerFilters
Definition qgis.h:206
ProcessingDateTimeParameterDataType
Processing date time parameter data types.
Definition qgis.h:3601
CoordinateTransformationFlag
Flags which adjust the coordinate transformations behave.
Definition qgis.h:2559
TextComponent
Text components.
Definition qgis.h:2761
DateTimeStatistic
Available date/time statistics.
Definition qgis.h:5528
AnimationState
Animation states.
Definition qgis.h:2427
TransformDirection
Indicates the direction (forward or inverse) of a transform.
Definition qgis.h:2547
LightSourceType
Light source types for 3D scenes.
Definition qgis.h:3905
QFlags< ProcessingFeatureSourceFlag > ProcessingFeatureSourceFlags
Flags which control how QgsProcessingFeatureSource fetches features.
Definition qgis.h:3489
QFlags< HistoryProviderBackend > HistoryProviderBackends
Definition qgis.h:3304
LabelPredefinedPointPosition
Positions for labels when using the Qgis::LabelPlacement::OrderedPositionsAroundPoint placement mode.
Definition qgis.h:1146
QFlags< FieldConfigurationFlag > FieldConfigurationFlags
Configuration flags for fields These flags are meant to be user-configurable and are not describing a...
Definition qgis.h:1628
UpsideDownLabelHandling
Handling techniques for upside down labels.
Definition qgis.h:1254
DeviceConnectionStatus
GPS connection status.
Definition qgis.h:1766
ProcessingNumberParameterType
Processing numeric parameter data types.
Definition qgis.h:3569
MapSettingsFlag
Flags which adjust the way maps are rendered.
Definition qgis.h:2579
QFlags< SqlLayerDefinitionCapability > SqlLayerDefinitionCapabilities
SQL layer definition capabilities.
Definition qgis.h:1030
ProcessingLogLevel
Logging level for algorithms to use when pushing feedback messages.
Definition qgis.h:3438
SelectBehavior
Specifies how a selection should be applied.
Definition qgis.h:1663
Utility class that encapsulates an action based on vector attributes.
Definition qgsaction.h:37
Utility class for calculating aggregates for a field (or expression) over the features from a vector ...
Utility functions for working with ArcGIS REST services.
This is an abstract base class for any elements of a drag and drop form.
A ramp shader will color a raster pixel based on a list of values ranges in a ramp.
This class represents a coordinate reference system (CRS).
Class for doing transforms between two map coordinate systems.
Abstract base class for curved geometry type.
Definition qgscurve.h:35
Base class for all items in the model.
Definition qgsdataitem.h:46
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.
This class wraps a request for features to a vector layer (or directly its vector data provider).
An interface for objects which provide features via a getFeatures method.
Container of fields for a vector layer.
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:32
Item that represents a layer that can be opened with one of the providers.
A layout item subclass that displays SVG files or raster format images (jpg, png, ....
The QgsMapLayerProxyModel class provides an easy to use model to display the list of layers in widget...
Base class for all map layer types.
Definition qgsmaplayer.h:76
The QgsMapSettings class contains configuration for rendering of the map.
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:107
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.
This class describes the origin of min/max values.
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:44
Contains information about the context of a rendering operation.
The QgsScaleBarSettings class stores the appearance and layout settings for scalebar drawing with Qgs...
Represent settings entry and provides methods for reading and writing settings values.
RAII signal blocking class.
Definition qgis.h:5888
Object * operator->()
Returns pointer to blocked QObject.
Definition qgis.h:5906
QgsSignalBlocker(Object *object)
Constructor for QgsSignalBlocker.
Definition qgis.h:5895
Abstract base class for simple marker symbol layers.
This is a container for configuration of the snapping of the project.
Calculator for summary statistics for a list of doubles.
Calculator for summary statistics and aggregates for a list of strings.
Utility functions for working with strings.
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.
Handles rendering text using rich formatting options, including drop shadows, buffers and background ...
This is the class is providing tolerance value in map unit values.
Helper functions for various unit types.
Implementation of data provider temporal properties for QgsVectorDataProviders.
This is the base class for vector data providers.
A convenience class for writing vector layers to disk based formats (e.g.
A convenience class for exporting vector layers to a destination data provider.
Implementation of map layer temporal properties for vector layers.
Represents a vector layer which manages a vector based data sets.
This class contains information how to simplify geometries fetched from a vector layer.
Handles storage of information regarding WKB types and their properties.
Definition qgswkbtypes.h:42
FeatureCountState
Enumeration of feature count states.
Definition qgis.h:509
@ Points
Point based rendering, requires point data.
As part of the API refactoring and improvements which landed in QGIS
void * qgsMalloc(size_t size)
Allocates size bytes and returns a pointer to the allocated memory.
Definition qgis.cpp:94
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:87
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:248
uint qHash(const QVariant &variant)
Hash for QVariant.
Definition qgis.cpp:199
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:73
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:80
void qgsFree(void *ptr)
Frees the memory space pointed to by ptr.
Definition qgis.cpp:116
QString qgsVsiPrefix(const QString &path)
Definition qgis.cpp:194
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:121
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:189
CONSTLATIN1STRING geoNone()
Constant that holds the string representation for "No ellips/No CRS".
Definition qgis.h:6519
const double DEFAULT_LINE_WIDTH
Definition qgis.h:6557
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:6411
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:6234
QString qgsDoubleToString(double a, int precision=17)
Returns a string representation of a double.
Definition qgis.h:5941
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:6098
QString qgsEnumValueToKey(const T &value, bool *returnOk=nullptr)
Returns the value for the given key of an enum.
Definition qgis.h:6215
QString qgsFlagValueToKeys(const T &value, bool *returnOk=nullptr)
Returns the value for the given keys of a flag.
Definition qgis.h:6273
const long GEO_EPSG_CRS_ID
Magic number for a geographic coord sys in EpsgCrsId ID format.
Definition qgis.h:6543
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:6081
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:6295
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:6572
const QMap< T, QString > qgsEnumMap()
Returns a map of all enum entries.
Definition qgis.h:6198
bool qgsFloatNear(float a, float b, float epsilon=4 *FLT_EPSILON)
Compare two floats (but allow some difference)
Definition qgis.h:6035
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:6115
const QList< T > qgsEnumList()
Returns a list all enum entries.
Definition qgis.h:6181
double qgsRound(double number, int places)
Returns a double number, rounded (as close as possible) to the specified number of places.
Definition qgis.h:6065
bool qgsDoubleNear(double a, double b, double epsilon=4 *std::numeric_limits< double >::epsilon())
Compare two doubles (but allow some difference)
Definition qgis.h:6024
CONSTLATIN1STRING geoProj4()
PROJ4 string that represents a geographic coord sys.
Definition qgis.h:6507
bool qgsNanCompatibleEquals(double a, double b)
Compare two doubles, treating nan values as equal.
Definition qgis.h:5986
QgsSignalBlocker< Object > whileBlocking(Object *object)
Temporarily blocks signals from a QObject while calling a single method from the object.
Definition qgis.h:5928
const double DEFAULT_SEGMENT_EPSILON
Default snapping tolerance for segments.
Definition qgis.h:6560
QMap< QString, QString > QgsStringMap
Definition qgis.h:6562
#define CONSTLATIN1STRING
Definition qgis.h:6460
CONSTLATIN1STRING geoWkt()
Wkt string that represents a geographic coord sys.
Definition qgis.h:6499
bool qgsDoubleNearSig(double a, double b, int significantDigits=10)
Compare two doubles using specified number of significant digits.
Definition qgis.h:6041
const int USER_CRS_START_ID
Magick number that determines whether a projection crsid is a system (srs.db) or user (~/....
Definition qgis.h:6549
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:6006
const long GEOSRID
Magic number for a geographic coord sys in POSTGIS SRID.
Definition qgis.h:6537
#define QHASH_FOR_CLASS_ENUM(T)
Definition qgis.h:43
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:6425
CONSTLATIN1STRING geoEpsgCrsAuthId()
Geographic coord sys from EPSG authority.
Definition qgis.h:6513
const long GEOCRS_ID
Magic number for a geographic coord sys in QGIS srs.db tbl_srs.srs_id.
Definition qgis.h:6540
const double DEFAULT_POINT_SIZE
Magic number that determines the default point size for point symbols.
Definition qgis.h:6556
#define SIP_ENUM_BASETYPE(type)
Definition qgis_sip.h:278
#define SIP_SKIP
Definition qgis_sip.h:126
#define SIP_MONKEYPATCH_SCOPEENUM_UNNEST(OUTSIDE_CLASS, FORMERNAME)
Definition qgis_sip.h:271
#define SIP_MONKEYPATCH_FLAGS_UNNEST(OUTSIDE_CLASS, FORMERNAME)
Definition qgis_sip.h:272
#define SIP_MONKEYPATCH_SCOPEENUM
Definition qgis_sip.h:270
#define SIP_MONKEYPATCH_COMPAT_NAME(FORMERNAME)
Definition qgis_sip.h:273
Q_DECLARE_OPERATORS_FOR_FLAGS(QgsTextRendererUtils::CurvedTextFlags)
int precision
Utility class for identifying a unique vertex within a geometry.
Definition qgsvertexid.h:30