QGIS API Documentation 3.41.0-Master (88383c3d16f)
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 UriCleaningFlag : int SIP_ENUM_BASETYPE( IntFlag )
1302 {
1303 RemoveCredentials = 1 << 0,
1304 RedactCredentials = 1 << 1,
1305 };
1306 Q_ENUM( UriCleaningFlag )
1307
1308
1314 Q_FLAG( UriCleaningFlags )
1315
1321 enum class SublayerQueryFlag : int SIP_ENUM_BASETYPE( IntFlag )
1322 {
1323 FastScan = 1 << 0,
1324 ResolveGeometryType = 1 << 1,
1325 CountFeatures = 1 << 2,
1326 IncludeSystemTables = 1 << 3,
1327 };
1330 Q_ENUM( SublayerQueryFlag )
1331 Q_FLAG( SublayerQueryFlags )
1332
1333
1338 enum class SublayerFlag : int SIP_ENUM_BASETYPE( IntFlag )
1339 {
1340 SystemTable = 1 << 0,
1341 };
1343 Q_DECLARE_FLAGS( SublayerFlags, SublayerFlag )
1344 Q_ENUM( SublayerFlag )
1345 Q_FLAG( SublayerFlags )
1346
1347
1355 {
1356 Linear SIP_MONKEYPATCH_COMPAT_NAME( Interpolated ) = 0,
1357 Discrete = 1,
1358 Exact = 2,
1359 };
1360 Q_ENUM( ShaderInterpolationMethod )
1361
1362
1370 {
1371 Continuous = 1,
1372 EqualInterval = 2,
1373 Quantile = 3,
1374 };
1375 Q_ENUM( ShaderClassificationMethod )
1376
1377
1383 {
1384 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownRole ) = 0,
1385 Provider SIP_MONKEYPATCH_COMPAT_NAME( ProviderRole ) = 1,
1386 Renderer SIP_MONKEYPATCH_COMPAT_NAME( RendererRole ) = 2,
1387 Brightness SIP_MONKEYPATCH_COMPAT_NAME( BrightnessRole ) = 3,
1388 Resampler SIP_MONKEYPATCH_COMPAT_NAME( ResamplerRole ) = 4,
1389 Projector SIP_MONKEYPATCH_COMPAT_NAME( ProjectorRole ) = 5,
1390 Nuller SIP_MONKEYPATCH_COMPAT_NAME( NullerRole ) = 6,
1391 HueSaturation SIP_MONKEYPATCH_COMPAT_NAME( HueSaturationRole ) = 7,
1392 };
1393 Q_ENUM( RasterPipeInterfaceRole )
1394
1395
1400 {
1401 ResampleFilter,
1402 Provider,
1403 };
1404 Q_ENUM( RasterResamplingStage )
1405
1406
1414 {
1415 Nearest,
1416 Bilinear,
1417 Cubic,
1418 CubicSpline,
1419 Lanczos,
1420 Average,
1421 Mode,
1422 Gauss
1423 };
1424 Q_ENUM( RasterResamplingMethod )
1425
1426
1431 enum class RasterRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
1432 {
1433 InternalLayerOpacityHandling = 1 << 0,
1434 UseNoDataForOutOfRangePixels = 1 << 1,
1435 };
1436
1443
1444 Q_ENUM( RasterRendererFlag )
1445 Q_FLAG( RasterRendererFlags )
1446
1447
1453 {
1454 UsesMultipleBands = 1 << 0,
1455 };
1456 Q_ENUM( RasterRendererCapability )
1457
1458
1465
1474 {
1475 NotSet SIP_MONKEYPATCH_COMPAT_NAME( None_ ),
1476 MinimumMaximum SIP_MONKEYPATCH_COMPAT_NAME( MinMax ),
1477 StdDev,
1478 CumulativeCut
1479 };
1480 Q_ENUM( RasterRangeLimit )
1481
1482
1490 {
1491 WholeRaster SIP_MONKEYPATCH_COMPAT_NAME( None_ ),
1492 FixedCanvas SIP_MONKEYPATCH_COMPAT_NAME( CurrentCanvas ),
1493 UpdatedCanvas,
1494 };
1495 Q_ENUM( RasterRangeExtent )
1496
1497
1505 {
1506 Exact,
1507 Estimated,
1508 };
1509 Q_ENUM( RasterRangeAccuracy )
1510
1511
1517 {
1518 Generic = 0,
1519 PixelCount = 1,
1520 Name = 2,
1521 Min = 3,
1522 Max = 4,
1523 MinMax = 5,
1524 Red = 6,
1525 Green = 7,
1526 Blue = 8,
1527 Alpha = 9,
1528 RedMin = 10,
1529 GreenMin = 11,
1530 BlueMin = 12,
1531 AlphaMin = 13,
1532 RedMax = 14,
1533 GreenMax = 15,
1534 BlueMax = 16,
1535 AlphaMax = 17,
1536 MaxCount
1537 };
1538 Q_ENUM( RasterAttributeTableFieldUsage )
1539
1540
1546 {
1547 Thematic = 0,
1548 Athematic = 1
1549 };
1550 Q_ENUM( RasterAttributeTableType )
1551
1552
1559 {
1560 Raw = 0,
1561 RenderedImage SIP_MONKEYPATCH_COMPAT_NAME( Image ) = 1
1562 };
1563 Q_ENUM( RasterExportType )
1564
1565
1572 {
1573 Success SIP_MONKEYPATCH_COMPAT_NAME( NoError ) = 0,
1574 SourceProviderError = 1,
1575 DestinationProviderError SIP_MONKEYPATCH_COMPAT_NAME( DestProviderError ) = 2,
1576 CreateDatasourceError = 3,
1577 WriteError = 4,
1578 NoDataConflict = 5,
1579 Canceled SIP_MONKEYPATCH_COMPAT_NAME( WriteCanceled ) = 6,
1580 };
1581 Q_ENUM( RasterFileWriterResult )
1582
1583
1588 enum class MeshEditingErrorType : int
1589 {
1590 NoError,
1591 InvalidFace,
1592 TooManyVerticesInFace,
1593 FlatFace,
1594 UniqueSharedVertex,
1595 InvalidVertex,
1596 ManifoldFace,
1597 };
1598 Q_ENUM( MeshEditingErrorType )
1599
1600
1605 enum class FilePathType : int
1606 {
1607 Absolute,
1608 Relative,
1609 };
1610 Q_ENUM( FilePathType )
1611
1612
1617 enum class SublayerPromptMode : int
1618 {
1619 AlwaysAsk,
1620 AskExcludingRasterBands,
1621 NeverAskSkip,
1622 NeverAskLoadAll,
1623 };
1624 Q_ENUM( SublayerPromptMode )
1625
1626
1634 {
1635 Unknown SIP_MONKEYPATCH_COMPAT_NAME( OriginUnknown ),
1636 Provider SIP_MONKEYPATCH_COMPAT_NAME( OriginProvider ),
1637 Join SIP_MONKEYPATCH_COMPAT_NAME( OriginJoin ),
1638 Edit SIP_MONKEYPATCH_COMPAT_NAME( OriginEdit ),
1639 Expression SIP_MONKEYPATCH_COMPAT_NAME( OriginExpression )
1640 };
1641 Q_ENUM( FieldOrigin )
1642
1643
1650 enum class FieldConfigurationFlag : int SIP_ENUM_BASETYPE( IntFlag )
1651 {
1652 NoFlag = 0,
1653 NotSearchable = 1 << 1,
1654 HideFromWms = 1 << 2,
1655 HideFromWfs = 1 << 3,
1656 };
1657 Q_ENUM( FieldConfigurationFlag )
1658
1659
1667 Q_FLAG( FieldConfigurationFlags )
1668
1674 enum class FieldMetadataProperty : int
1675 {
1676 GeometryCrs = 0x1000,
1677 GeometryWkbType = 0x1001,
1678 CustomProperty = 0x100000,
1679 };
1680 Q_ENUM( FieldMetadataProperty )
1681
1682
1687 enum class SelectionRenderingMode : int
1688 {
1689 Default,
1690 CustomColor,
1691 CustomSymbol,
1692 };
1693 Q_ENUM( SelectionRenderingMode )
1694
1695
1701 {
1702 SetSelection,
1703 AddToSelection,
1704 IntersectSelection,
1705 RemoveFromSelection,
1706 };
1707 Q_ENUM( SelectBehavior )
1708
1709
1715 {
1716 Intersect,
1717 Within,
1718 };
1719 Q_ENUM( SelectGeometryRelationship )
1720
1721
1726 enum class SelectionFlag : int SIP_ENUM_BASETYPE( IntFlag )
1727 {
1728 SingleFeatureSelection = 1 << 0,
1729 ToggleSelection = 1 << 1,
1730 };
1731
1737 Q_DECLARE_FLAGS( SelectionFlags, SelectionFlag )
1738
1739 Q_ENUM( SelectionFlag )
1740 Q_FLAG( SelectionFlags )
1741
1742
1748 {
1749 Success = 0,
1750 EmptyGeometry = 1,
1751 EditFailed = 2,
1752 FetchFeatureFailed = 3,
1753 InvalidLayer = 4,
1754 };
1755 Q_ENUM( VectorEditResult )
1756
1757
1763 {
1764 SemiTransparentCircle,
1765 Cross,
1766 NoMarker,
1767 };
1768 Q_ENUM( VertexMarkerType )
1769
1770
1774 enum class ContentStatus : int
1775 {
1776 NotStarted,
1777 Running,
1778 Finished,
1779 Failed,
1780 Canceled,
1781 };
1782 Q_ENUM( ContentStatus )
1783
1784
1789 enum class GpsConnectionType : int
1790 {
1791 Automatic,
1792 Internal,
1793 Serial,
1794 Gpsd,
1795 };
1796 Q_ENUM( GpsConnectionType )
1797
1798
1803 enum class DeviceConnectionStatus SIP_MONKEYPATCH_SCOPEENUM_UNNEST( Qgis, GpsConnectionStatus ) : int
1804 {
1805 Disconnected,
1806 Connecting,
1807 Connected,
1808 };
1809 Q_ENUM( DeviceConnectionStatus )
1810
1811
1819 {
1820 NoData,
1821 NoFix,
1822 Fix2D,
1823 Fix3D
1824 };
1826
1827
1834 {
1835 Unknown,
1836 Gps,
1837 Glonass,
1838 Galileo,
1839 BeiDou,
1840 Qzss,
1841 Navic,
1842 Sbas,
1843 };
1845
1852 {
1853 Unknown = -1,
1854 Invalid,
1855 GPS,
1856 DGPS,
1857 PPS,
1858 RTK,
1859 FloatRTK,
1860 Estimated,
1861 Manual,
1862 Simulation,
1863 };
1864 Q_ENUM( GpsQualityIndicator )
1865
1866
1871 enum class GpsNavigationStatus : int
1872 {
1873 NotValid,
1874 Safe,
1875 Caution,
1876 Unsafe,
1877 };
1879
1885 enum class GpsInformationComponent : int SIP_ENUM_BASETYPE( IntFlag )
1886 {
1887 Location = 1 << 0,
1888 Altitude = 1 << 1,
1889 GroundSpeed = 1 << 2,
1890 Bearing = 1 << 3,
1891 TotalTrackLength = 1 << 4,
1892 TrackDistanceFromStart = 1 << 5,
1893 Pdop = 1 << 6,
1894 Hdop = 1 << 7,
1895 Vdop = 1 << 8,
1896 HorizontalAccuracy = 1 << 9,
1897 VerticalAccuracy = 1 << 10,
1898 HvAccuracy = 1 << 11,
1899 SatellitesUsed = 1 << 12,
1900 Timestamp = 1 << 13,
1901 TrackStartTime = 1 << 14,
1902 TrackEndTime = 1 << 15,
1903 TrackDistanceSinceLastPoint = 1 << 16,
1904 TrackTimeSinceLastPoint = 1 << 17,
1905 GeoidalSeparation = 1 << 18,
1906 EllipsoidAltitude = 1 << 19,
1907 };
1908
1915 Q_ENUM( GpsInformationComponent )
1916 Q_FLAG( GpsInformationComponents )
1917
1918
1923 enum class BabelFormatCapability : int SIP_ENUM_BASETYPE( IntFlag )
1924 {
1925 Import = 1 << 0,
1926 Export = 1 << 1,
1927 Waypoints = 1 << 2,
1928 Routes = 1 << 3,
1929 Tracks = 1 << 4,
1930 };
1933 Q_ENUM( BabelFormatCapability )
1934 Q_FLAG( BabelFormatCapabilities )
1935
1936
1942 enum class BabelCommandFlag : int SIP_ENUM_BASETYPE( IntFlag )
1943 {
1944 QuoteFilePaths = 1 << 0,
1945 };
1948 Q_ENUM( BabelCommandFlag )
1949 Q_FLAG( BabelCommandFlags )
1950
1951
1956 enum class GpsFeatureType : int
1957 {
1958 Waypoint,
1959 Route,
1960 Track,
1961 };
1962 Q_ENUM( GpsFeatureType )
1963
1964
1972 {
1973 Success = 0,
1974 NothingHappened = 1000,
1975 InvalidBaseGeometry,
1976 InvalidInputGeometryType,
1977 SelectionIsEmpty,
1978 SelectionIsGreaterThanOne,
1979 GeometryEngineError,
1980 LayerNotEditable,
1981 // Add part issues
1982 AddPartSelectedGeometryNotFound,
1983 AddPartNotMultiGeometry,
1984 // Add ring issues
1985 AddRingNotClosed,
1986 AddRingNotValid,
1987 AddRingCrossesExistingRings,
1988 AddRingNotInExistingFeature,
1989 // Split features
1990 SplitCannotSplitPoint,
1991 GeometryTypeHasChanged,
1992 };
1993 Q_ENUM( GeometryOperationResult )
1994
1995
2001 {
2002 AllowSelfTouchingHoles SIP_MONKEYPATCH_COMPAT_NAME( FlagAllowSelfTouchingHoles ) = 1 << 0,
2003 };
2006 Q_ENUM( GeometryValidityFlag )
2007 Q_FLAG( GeometryValidityFlags )
2008
2009
2014 {
2015 QgisInternal SIP_MONKEYPATCH_COMPAT_NAME( ValidatorQgisInternal ),
2016 Geos SIP_MONKEYPATCH_COMPAT_NAME( ValidatorGeos ),
2017 };
2018 Q_ENUM( GeometryValidationEngine )
2019
2020
2030 Q_ENUM( BufferSide )
2031
2032
2038 {
2039 Round SIP_MONKEYPATCH_COMPAT_NAME( CapRound ) = 1,
2040 Flat SIP_MONKEYPATCH_COMPAT_NAME( CapFlat ),
2041 Square SIP_MONKEYPATCH_COMPAT_NAME( CapSquare ),
2042 };
2043 Q_ENUM( EndCapStyle )
2044
2045
2051 {
2052 Round SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleRound ) = 1,
2053 Miter SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleMiter ),
2054 Bevel SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleBevel ),
2055 };
2056 Q_ENUM( JoinStyle )
2057
2058
2063 enum class GeosCreationFlag : int SIP_ENUM_BASETYPE( IntFlag )
2064 {
2065 RejectOnInvalidSubGeometry = 1 << 0,
2066 SkipEmptyInteriorRings = 1 << 1,
2067 };
2068 Q_ENUM( GeosCreationFlag )
2069
2070
2076 Q_FLAG( GeosCreationFlags )
2077
2083 enum class CoverageValidityResult : int
2084 {
2085 Invalid = 0,
2086 Valid = 1,
2087 Error = 2,
2088 };
2089 Q_ENUM( CoverageValidityResult )
2090
2091
2096 enum class MakeValidMethod : int
2097 {
2098 Linework = 0,
2099 Structure = 1,
2100 };
2101 Q_ENUM( MakeValidMethod )
2102
2103
2111 {
2112 NoFlags = 0,
2113 NoGeometry = 1,
2114 SubsetOfAttributes = 2,
2115 ExactIntersect = 4,
2116 IgnoreStaticNodesDuringExpressionCompilation = 8,
2117 EmbeddedSymbols = 16,
2118 };
2119 Q_ENUM( FeatureRequestFlag )
2120
2121
2129 Q_FLAG( FeatureRequestFlags )
2130
2139 {
2140 NoFilter SIP_MONKEYPATCH_COMPAT_NAME( FilterNone ),
2141 Fid SIP_MONKEYPATCH_COMPAT_NAME( FilterFid ),
2142 Expression SIP_MONKEYPATCH_COMPAT_NAME( FilterExpression ),
2143 Fids SIP_MONKEYPATCH_COMPAT_NAME( FilterFids )
2144 };
2145 Q_ENUM( FeatureRequestFilterType )
2146
2147
2155 {
2156 NoCheck SIP_MONKEYPATCH_COMPAT_NAME( GeometryNoCheck ) = 0,
2157 SkipInvalid SIP_MONKEYPATCH_COMPAT_NAME( GeometrySkipInvalid ) = 1,
2158 AbortOnInvalid SIP_MONKEYPATCH_COMPAT_NAME( GeometryAbortOnInvalid ) = 2,
2159 };
2160 Q_ENUM( InvalidGeometryCheck )
2161
2162
2167 enum class SpatialFilterType : int
2168 {
2169 NoFilter,
2170 BoundingBox,
2171 DistanceWithin,
2172 };
2173 Q_ENUM( SpatialFilterType )
2174
2175
2180 enum class FileOperationFlag : int SIP_ENUM_BASETYPE( IntFlag )
2181 {
2182 IncludeMetadataFile = 1 << 0,
2183 IncludeStyleFile = 1 << 1,
2184 };
2187 Q_ENUM( FileOperationFlag )
2188 Q_FLAG( FileOperationFlags )
2189
2190
2195 enum class MapLayerProperty : int SIP_ENUM_BASETYPE( IntFlag )
2196 {
2197 UsersCannotToggleEditing = 1 << 0,
2198 IsBasemapLayer = 1 << 1,
2199 };
2202 Q_ENUM( MapLayerProperty )
2203 Q_FLAG( MapLayerProperties )
2204
2205
2210 enum class AutoRefreshMode : int
2211 {
2212 Disabled = 0,
2213 ReloadData = 1,
2214 RedrawOnly = 2,
2215 };
2216 Q_ENUM( AutoRefreshMode )
2217
2218
2223 enum class DataProviderFlag : int SIP_ENUM_BASETYPE( IntFlag )
2224 {
2225 IsBasemapSource = 1 << 1,
2226 FastExtent2D = 1 << 2,
2227 FastExtent3D = 1 << 3,
2228 };
2231 Q_ENUM( DataProviderFlag )
2232 Q_FLAG( DataProviderFlags )
2233
2234
2241 enum class CrsType : int
2242 {
2243 Unknown,
2244 Geodetic,
2245 Geocentric,
2246 Geographic2d,
2247 Geographic3d,
2248 Vertical,
2249 Projected,
2250 Compound,
2251 Temporal,
2252 Engineering,
2253 Bound,
2254 Other,
2255 DerivedProjected,
2256 };
2257 Q_ENUM( CrsType )
2258
2259
2266 enum class CrsAxisDirection : int
2267 {
2268 North,
2269 NorthNorthEast,
2270 NorthEast,
2271 EastNorthEast,
2272 East,
2273 EastSouthEast,
2274 SouthEast,
2275 SouthSouthEast,
2276 South,
2277 SouthSouthWest,
2278 SouthWest,
2279 WestSouthWest,
2280 West,
2281 WestNorthWest,
2282 NorthWest,
2283 NorthNorthWest,
2284 GeocentricX,
2285 GeocentricY,
2286 GeocentricZ,
2287 Up,
2288 Down,
2289 Forward,
2290 Aft,
2291 Port,
2292 Starboard,
2293 Clockwise,
2294 CounterClockwise,
2295 ColumnPositive,
2296 ColumnNegative,
2297 RowPositive,
2298 RowNegative,
2299 DisplayRight,
2300 DisplayLeft,
2301 DisplayUp,
2302 DisplayDown,
2303 Future,
2304 Past,
2305 Towards,
2306 AwayFrom,
2307 Unspecified,
2308 };
2309 Q_ENUM( CrsAxisDirection )
2310
2311
2316 enum class CoordinateOrder : int
2317 {
2318 Default,
2319 XY,
2320 YX,
2321 };
2322 Q_ENUM( CoordinateOrder )
2323
2324
2332 {
2333 ShortString,
2334 MediumString,
2335 FullString,
2336 };
2337 Q_ENUM( CrsIdentifierType )
2338
2339
2347 {
2348 Wkt1Gdal SIP_MONKEYPATCH_COMPAT_NAME( WKT1_GDAL ),
2349 Wkt1Esri SIP_MONKEYPATCH_COMPAT_NAME( WKT1_ESRI ),
2350 Wkt2_2015 SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2015 ),
2351 Wkt2_2015Simplified SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2015_SIMPLIFIED ),
2352 Wkt2_2019 SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2019 ),
2353 Wkt2_2019Simplified SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2019_SIMPLIFIED ),
2354 Preferred SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED ) = Wkt2_2019,
2355 PreferredSimplified SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED_SIMPLIFIED ) = Wkt2_2019Simplified,
2356 PreferredGdal SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED_GDAL ) = Wkt2_2019,
2357 };
2358 Q_ENUM( CrsWktVariant )
2359
2360
2365 enum class Axis : int
2366 {
2367 X,
2368 Y,
2369 Z
2370 };
2371 Q_ENUM( Axis )
2372
2373
2378 enum class AnnotationItemFlag : int SIP_ENUM_BASETYPE( IntFlag )
2379 {
2380 ScaleDependentBoundingBox = 1 << 0,
2381 SupportsReferenceScale = 1 << 1,
2382 SupportsCallouts = 1 << 2,
2383 };
2386 Q_ENUM( AnnotationItemFlag )
2387 Q_FLAG( AnnotationItemFlags )
2388
2389
2395 {
2396 SpatialBounds = 0,
2397 FixedSize,
2398 RelativeToMapFrame,
2399 };
2400 Q_ENUM( AnnotationPlacementMode )
2401
2402
2407 enum class AnnotationItemGuiFlag : int SIP_ENUM_BASETYPE( IntFlag )
2408 {
2409 FlagNoCreationTools = 1 << 0,
2410 };
2413 Q_ENUM( AnnotationItemGuiFlag )
2414 Q_FLAG( AnnotationItemGuiFlags )
2415
2416
2421 enum class AnnotationItemNodeType : int
2422 {
2423 VertexHandle,
2424 CalloutHandle,
2425 };
2426 Q_ENUM( AnnotationItemNodeType )
2427
2428
2434 {
2435 Success,
2436 Invalid,
2437 ItemCleared,
2438 };
2439 Q_ENUM( AnnotationItemEditOperationResult )
2440
2441
2449 {
2450 Disabled SIP_MONKEYPATCH_COMPAT_NAME( NavigationOff ),
2451 Animated,
2452 FixedRange,
2453 Movie,
2454 };
2455 Q_ENUM( TemporalNavigationMode )
2456
2457
2465 {
2466 Forward,
2467 Reverse,
2468 Idle,
2469 };
2470 Q_ENUM( AnimationState )
2471
2472
2477 enum class PlaybackOperation : int
2478 {
2479 SkipToStart,
2480 PreviousFrame,
2481 PlayReverse,
2482 Pause,
2483 PlayForward,
2484 NextFrame,
2485 SkipToEnd,
2486 };
2487 Q_ENUM( PlaybackOperation )
2488
2489
2495 {
2496 FixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ModeFixedTemporalRange ) = 0,
2497 FeatureDateTimeInstantFromField SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeInstantFromField ),
2498 FeatureDateTimeStartAndEndFromFields SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndEndFromFields ),
2499 FeatureDateTimeStartAndDurationFromFields SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndDurationFromFields ),
2500 FeatureDateTimeStartAndEndFromExpressions SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndEndFromExpressions ),
2501 RedrawLayerOnly SIP_MONKEYPATCH_COMPAT_NAME( ModeRedrawLayerOnly ),
2502 };
2503 Q_ENUM( VectorTemporalMode )
2504
2505
2511 {
2512 IncludeBeginExcludeEnd = 0,
2513 IncludeBeginIncludeEnd,
2514 };
2515 Q_ENUM( VectorTemporalLimitMode )
2516
2517
2523 {
2524 HasFixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ProviderHasFixedTemporalRange ) = 0,
2525 StoresFeatureDateTimeInstantInField SIP_MONKEYPATCH_COMPAT_NAME( ProviderStoresFeatureDateTimeInstantInField ),
2526 StoresFeatureDateTimeStartAndEndInSeparateFields SIP_MONKEYPATCH_COMPAT_NAME( ProviderStoresFeatureDateTimeStartAndEndInSeparateFields ),
2527 };
2528 Q_ENUM( VectorDataProviderTemporalMode )
2529
2530
2536 {
2537 FixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ModeFixedTemporalRange ) = 0,
2538 TemporalRangeFromDataProvider SIP_MONKEYPATCH_COMPAT_NAME( ModeTemporalRangeFromDataProvider ) = 1,
2539 RedrawLayerOnly SIP_MONKEYPATCH_COMPAT_NAME( ModeRedrawLayerOnly ) = 2,
2540 FixedRangePerBand = 3,
2541 RepresentsTemporalValues = 4,
2542 };
2543 Q_ENUM( RasterTemporalMode )
2544
2545
2551 {
2552 MatchUsingWholeRange,
2553 MatchExactUsingStartOfRange,
2554 MatchExactUsingEndOfRange,
2555 FindClosestMatchToStartOfRange,
2556 FindClosestMatchToEndOfRange
2557 };
2558 Q_ENUM( TemporalIntervalMatchMethod )
2559
2560
2566 {
2567 RequestedTimesMustExactlyMatchAllAvailableTemporalRanges = 1 << 0,
2568 };
2569 Q_ENUM( RasterTemporalCapabilityFlag )
2570
2571
2578
2585 {
2586 Forward SIP_MONKEYPATCH_COMPAT_NAME( ForwardTransform ),
2587 Reverse SIP_MONKEYPATCH_COMPAT_NAME( ReverseTransform )
2588 };
2589 Q_ENUM( TransformDirection )
2590
2591
2597 {
2598 BallparkTransformsAreAppropriate = 1 << 0,
2599 IgnoreImpossibleTransformations = 1 << 1,
2600 };
2601 Q_ENUM( CoordinateTransformationFlag )
2602
2603
2610
2617 {
2618 Antialiasing = 0x01,
2619 DrawEditingInfo = 0x02,
2620 ForceVectorOutput = 0x04,
2621 UseAdvancedEffects = 0x08,
2622 DrawLabeling = 0x10,
2623 UseRenderingOptimization = 0x20,
2624 DrawSelection = 0x40,
2625 DrawSymbolBounds = 0x80,
2626 RenderMapTile = 0x100,
2627 RenderPartialOutput = 0x200,
2628 RenderPreviewJob = 0x400,
2629 RenderBlocking = 0x800,
2630 LosslessImageRendering = 0x1000,
2631 Render3DMap = 0x2000,
2632 HighQualityImageTransforms = 0x4000,
2633 SkipSymbolRendering = 0x8000,
2634 ForceRasterMasks = 0x10000,
2635 RecordProfile = 0x20000,
2636 AlwaysUseGlobalMasks = 0x40000,
2637 };
2640 Q_ENUM( MapSettingsFlag )
2641 Q_FLAG( MapSettingsFlags )
2642
2643
2649 {
2650 DrawEditingInfo = 0x01,
2651 ForceVectorOutput = 0x02,
2652 UseAdvancedEffects = 0x04,
2653 UseRenderingOptimization = 0x08,
2654 DrawSelection = 0x10,
2655 DrawSymbolBounds = 0x20,
2656 RenderMapTile = 0x40,
2657 Antialiasing = 0x80,
2658 RenderPartialOutput = 0x100,
2659 RenderPreviewJob = 0x200,
2660 RenderBlocking = 0x400,
2661 RenderSymbolPreview = 0x800,
2662 LosslessImageRendering = 0x1000,
2663 ApplyScalingWorkaroundForTextRendering = 0x2000,
2664 Render3DMap = 0x4000,
2665 ApplyClipAfterReprojection = 0x8000,
2666 RenderingSubSymbol = 0x10000,
2667 HighQualityImageTransforms = 0x20000,
2668 SkipSymbolRendering = 0x40000,
2669 RecordProfile = 0x80000,
2670 AlwaysUseGlobalMasks = 0x100000,
2671 DisableSymbolClippingToExtent = 0x200000,
2672 };
2675 Q_ENUM( RenderContextFlag )
2676 Q_FLAG( RenderContextFlags )
2677
2678
2683 enum class MapLayerRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
2684 {
2685 RenderPartialOutputs = 1 << 0,
2686 RenderPartialOutputOverPreviousCachedImage = 1 << 1,
2687 AffectsLabeling = 1 << 2,
2688 };
2689 Q_ENUM( MapLayerRendererFlag )
2690
2691
2697 Q_FLAG( MapLayerRendererFlags )
2698
2699 // refs for below dox: https://github.com/qgis/QGIS/pull/1286#issuecomment-39806854
2700 // https://github.com/qgis/QGIS/pull/8573#issuecomment-445585826
2701
2707 {
2708 AlwaysOutlines SIP_MONKEYPATCH_COMPAT_NAME( TextFormatAlwaysOutlines ),
2709 AlwaysText SIP_MONKEYPATCH_COMPAT_NAME( TextFormatAlwaysText ),
2710 PreferText,
2711 };
2712 Q_ENUM( TextRenderFormat )
2713
2714
2722 {
2723 UseAllLabels = 1 << 1,
2724 UsePartialCandidates = 1 << 2,
2725 // TODO QGIS 4.0: remove
2726 RenderOutlineLabels = 1 << 3,
2727 DrawLabelRectOnly = 1 << 4,
2728 DrawCandidates = 1 << 5,
2729 DrawUnplacedLabels = 1 << 6,
2730 CollectUnplacedLabels = 1 << 7,
2731 DrawLabelMetrics = 1 << 8,
2732 };
2733 Q_ENUM( LabelingFlag )
2734
2735
2743 Q_FLAG( LabelingFlags )
2744
2753 {
2754 Version1 SIP_MONKEYPATCH_COMPAT_NAME( PlacementEngineVersion1 ),
2755 Version2 SIP_MONKEYPATCH_COMPAT_NAME( PlacementEngineVersion2 ),
2756 };
2757 Q_ENUM( LabelPlacementEngineVersion )
2758
2759
2767 {
2768 Horizontal SIP_MONKEYPATCH_COMPAT_NAME( HorizontalOrientation ),
2769 Vertical SIP_MONKEYPATCH_COMPAT_NAME( VerticalOrientation ),
2770 RotationBased SIP_MONKEYPATCH_COMPAT_NAME( RotationBasedOrientation ),
2771 };
2772 Q_ENUM( TextOrientation )
2773
2774
2782 {
2783 Rectangle SIP_MONKEYPATCH_COMPAT_NAME( Rect ),
2784 Point,
2785 Labeling SIP_MONKEYPATCH_COMPAT_NAME( Label ),
2786 RectangleCapHeightBased,
2787 RectangleAscentBased,
2788 };
2789 Q_ENUM( TextLayoutMode )
2790
2791
2799 {
2800 Text = 1 << 0,
2801 Buffer = 1 << 1,
2802 Background = 1 << 2,
2803 Shadow = 1 << 3,
2804 };
2805 Q_ENUM( TextComponent )
2806
2807
2812 Q_DECLARE_FLAGS( TextComponents, TextComponent )
2813 Q_FLAG( TextComponents )
2814
2823 {
2824 Left SIP_MONKEYPATCH_COMPAT_NAME( AlignLeft ),
2825 Center SIP_MONKEYPATCH_COMPAT_NAME( AlignCenter ),
2826 Right SIP_MONKEYPATCH_COMPAT_NAME( AlignRight ),
2827 Justify SIP_MONKEYPATCH_COMPAT_NAME( AlignJustify ),
2828 };
2829 Q_ENUM( TextHorizontalAlignment )
2830
2831
2842 {
2843 Top SIP_MONKEYPATCH_COMPAT_NAME( AlignTop ),
2844 VerticalCenter SIP_MONKEYPATCH_COMPAT_NAME( AlignVCenter ),
2845 Bottom SIP_MONKEYPATCH_COMPAT_NAME( AlignBottom ),
2846 };
2847 Q_ENUM( TextVerticalAlignment )
2848
2849
2858 {
2859 Normal,
2860 SuperScript,
2861 SubScript,
2862 };
2863 Q_ENUM( TextCharacterVerticalAlignment )
2864
2865
2873 {
2874 Distance = 0,
2875 SnapToGrid = 1,
2876 Visvalingam = 2,
2877 SnappedToGridGlobal = 3,
2878 };
2879 Q_ENUM( VectorSimplificationAlgorithm )
2880
2881
2889 {
2890 NoSimplification = 0,
2891 GeometrySimplification = 1,
2892 AntialiasingSimplification = 2,
2893 FullSimplification = 3,
2894 };
2895 Q_ENUM( VectorRenderingSimplificationFlag )
2896
2897
2906
2913 {
2914 Generic,
2915 ShadowOffset,
2916 BlurSize,
2917 GlowSpread,
2918 };
2919 Q_ENUM( RenderSubcomponentProperty )
2920
2921
2926 {
2927 Segment SIP_MONKEYPATCH_COMPAT_NAME( SegmentVertex ) = 1,
2928 Curve SIP_MONKEYPATCH_COMPAT_NAME( CurveVertex ) = 2,
2929 };
2930 Q_ENUM( VertexType )
2931
2932
2940 {
2941 Square,
2942 Diamond,
2943 Pentagon,
2944 Hexagon,
2945 Triangle,
2946 EquilateralTriangle,
2947 Star,
2948 Arrow,
2949 Circle,
2950 Cross,
2951 CrossFill,
2952 Cross2,
2953 Line,
2954 ArrowHead,
2955 ArrowHeadFilled,
2956 SemiCircle,
2957 ThirdCircle,
2958 QuarterCircle,
2959 QuarterSquare,
2960 HalfSquare,
2961 DiagonalHalfSquare,
2962 RightHalfTriangle,
2963 LeftHalfTriangle,
2964 Octagon,
2965 SquareWithCorners,
2966 AsteriskFill,
2967 HalfArc,
2968 ThirdArc,
2969 QuarterArc,
2970 ParallelogramRight,
2971 ParallelogramLeft,
2972 Trapezoid,
2973 Shield,
2974 DiamondStar,
2975 Heart,
2976 Decagon,
2977 RoundedSquare,
2978 };
2979 Q_ENUM( MarkerShape )
2980
2981
2989 {
2990 Interval = 1 << 0,
2991 Vertex = 1 << 1,
2992 LastVertex = 1 << 2,
2993 FirstVertex = 1 << 3,
2994 CentralPoint = 1 << 4,
2995 CurvePoint = 1 << 5,
2996 SegmentCenter = 1 << 6,
2997 InnerVertices = 1 << 7,
2998 };
2999 Q_ENUM( MarkerLinePlacement )
3001 Q_FLAG( MarkerLinePlacements )
3002
3009 {
3010 IntervalCartesian2D = 1 << 0,
3011 IntervalZ = 1 << 1,
3012 IntervalM = 1 << 2,
3013 Vertex = 1 << 3,
3014 };
3015 Q_ENUM( LinearReferencingPlacement )
3016
3017
3023 {
3024 CartesianDistance2D,
3025 Z,
3026 M,
3027 };
3028 Q_ENUM( LinearReferencingLabelSource )
3029
3030
3038 {
3039 SimpleTwoColor,
3040 ColorRamp,
3041 };
3042 Q_ENUM( GradientColorSource )
3043
3044
3052 {
3053 Linear,
3054 Radial,
3055 Conical,
3056 };
3057 Q_ENUM( GradientType )
3058
3059
3067 {
3068 Feature,
3069 Viewport,
3070 };
3071 Q_ENUM( SymbolCoordinateReference )
3072
3073
3082 {
3083 Pad,
3084 Reflect,
3085 Repeat,
3086 };
3087 Q_ENUM( GradientSpread )
3088
3089
3097 {
3098 Absolute SIP_MONKEYPATCH_COMPAT_NAME( AbsoluteCount ),
3099 DensityBased SIP_MONKEYPATCH_COMPAT_NAME( DensityBasedCount ),
3100 };
3101 Q_ENUM( PointCountMethod )
3102
3103
3108 enum class MarkerClipMode : int
3109 {
3110 NoClipping,
3111 Shape,
3112 CentroidWithin,
3113 CompletelyWithin,
3114 };
3115 Q_ENUM( MarkerClipMode )
3116
3117
3122 enum class LineClipMode : int
3123 {
3124 ClipPainterOnly,
3125 ClipToIntersection,
3126 NoClipping,
3127 };
3128 Q_ENUM( LineClipMode )
3129
3130
3136 {
3137 NoRule,
3138 FullDash,
3139 HalfDash,
3140 FullGap,
3141 HalfGap,
3142 };
3143 Q_ENUM( DashPatternLineEndingRule )
3144
3145
3151 {
3152 ScaleBothDashAndGap,
3153 ScaleDashOnly,
3154 ScaleGapOnly,
3155 };
3156 Q_ENUM( DashPatternSizeAdjustment )
3157
3158
3166 {
3167 Color SIP_MONKEYPATCH_COMPAT_NAME( GraduatedColor ),
3168 Size SIP_MONKEYPATCH_COMPAT_NAME( GraduatedSize ),
3169 };
3170 Q_ENUM( GraduatedMethod )
3171
3172
3178 {
3179 NoLabels,
3180 EveryLabel,
3181 FirstLabel,
3182 LastLabel,
3183 FirstAndLastLabels,
3184 };
3185 Q_ENUM( PlotAxisSuffixPlacement )
3186
3187
3191 enum class DpiMode
3192 {
3193 All = 7,
3194 Off = 0,
3195 QGIS = 1,
3196 UMN = 2,
3197 GeoServer = 4,
3198 };
3199 Q_ENUM( DpiMode )
3200
3201
3206 {
3207 Undefined = 0,
3208 StandardDpi = 1,
3209 HighDpi = 2,
3210 };
3211 Q_ENUM( TilePixelRatio )
3212
3213 // NOTE -- the hardcoded numbers here must match QFont::Capitalization!
3214
3215
3223 {
3224 MixedCase = 0,
3225 AllUppercase = 1,
3226 AllLowercase = 2,
3227 ForceFirstLetterToCapital = 4,
3228 SmallCaps = 5,
3229 TitleCase = 1004,
3230 UpperCamelCase = 1005,
3231 AllSmallCaps = 1006,
3232 };
3233 Q_ENUM( Capitalization )
3234
3235
3240 enum class TextRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
3241 {
3242 WrapLines = 1 << 0,
3243 };
3244 Q_ENUM( TextRendererFlag )
3246 Q_FLAG( TextRendererFlags )
3247
3254 {
3255 MapBox,
3256 Esri,
3257 };
3259
3266 {
3267 Clockwise,
3268 CounterClockwise,
3269 NoOrientation,
3270 };
3271 Q_ENUM( AngularDirection )
3272
3273
3278 enum class RendererUsage : int
3279 {
3280 View,
3281 Export,
3282 Unknown,
3283 };
3284 Q_ENUM( RendererUsage )
3285
3286
3291 enum class MapCanvasFlag : int SIP_ENUM_BASETYPE( IntFlag )
3292 {
3293 ShowMainAnnotationLayer = 1 << 0,
3294 };
3295 Q_ENUM( MapCanvasFlag )
3296
3297
3302 Q_DECLARE_FLAGS( MapCanvasFlags, MapCanvasFlag )
3303 Q_FLAG( MapCanvasFlags )
3304
3310 enum class ViewSyncModeFlag : int SIP_ENUM_BASETYPE( IntFlag )
3311 {
3312 Sync3DTo2D = 1 << 0,
3313 Sync2DTo3D = 1 << 1,
3314 };
3315 Q_ENUM( ViewSyncModeFlag )
3317
3324 {
3325 Always,
3326 WhenOutsideVisibleExtent,
3327 Never,
3328 };
3329 Q_ENUM( MapRecenteringMode )
3330
3331
3336 enum class HistoryProviderBackend : int SIP_ENUM_BASETYPE( IntFlag )
3337 {
3338 LocalProfile = 1 << 0,
3339// Project = 1 << 1, //!< QGIS Project (not yet implemented)
3340 };
3341 Q_ENUM( HistoryProviderBackend )
3343 Q_FLAG( HistoryProviderBackends )
3344
3353 {
3354 MapLayer SIP_MONKEYPATCH_COMPAT_NAME( TypeMapLayer ) = -2,
3355 VectorAnyGeometry SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorAnyGeometry ) = -1,
3356 VectorPoint SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorPoint ) = 0,
3357 VectorLine SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorLine ) = 1,
3358 VectorPolygon SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorPolygon ) = 2,
3359 Raster SIP_MONKEYPATCH_COMPAT_NAME( TypeRaster ) = 3,
3360 File SIP_MONKEYPATCH_COMPAT_NAME( TypeFile ) = 4,
3361 Vector SIP_MONKEYPATCH_COMPAT_NAME( TypeVector ) = 5,
3362 Mesh SIP_MONKEYPATCH_COMPAT_NAME( TypeMesh ) = 6,
3363 Plugin SIP_MONKEYPATCH_COMPAT_NAME( TypePlugin ) = 7,
3364 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( TypePointCloud ) = 8,
3365 Annotation SIP_MONKEYPATCH_COMPAT_NAME( TypeAnnotation ) = 9,
3366 VectorTile SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorTile ) = 10
3367 };
3368 Q_ENUM( ProcessingSourceType )
3369
3370
3371
3379 {
3380 DeemphasiseSearchResults SIP_MONKEYPATCH_COMPAT_NAME( FlagDeemphasiseSearchResults ) = 1 << 1,
3381 CompatibleWithVirtualRaster SIP_MONKEYPATCH_COMPAT_NAME( FlagCompatibleWithVirtualRaster ) = 1 << 2,
3382 };
3384
3393 Q_FLAG( ProcessingProviderFlags )
3394
3395
3403 {
3404 HideFromToolbox SIP_MONKEYPATCH_COMPAT_NAME( FlagHideFromToolbox ) = 1 << 1,
3405 HideFromModeler SIP_MONKEYPATCH_COMPAT_NAME( FlagHideFromModeler ) = 1 << 2,
3406 SupportsBatch SIP_MONKEYPATCH_COMPAT_NAME( FlagSupportsBatch ) = 1 << 3,
3407 CanCancel SIP_MONKEYPATCH_COMPAT_NAME( FlagCanCancel ) = 1 << 4,
3408 RequiresMatchingCrs SIP_MONKEYPATCH_COMPAT_NAME( FlagRequiresMatchingCrs ) = 1 << 5,
3409 NoThreading SIP_MONKEYPATCH_COMPAT_NAME( FlagNoThreading ) = 1 << 6,
3410 DisplayNameIsLiteral SIP_MONKEYPATCH_COMPAT_NAME( FlagDisplayNameIsLiteral ) = 1 << 7,
3411 SupportsInPlaceEdits SIP_MONKEYPATCH_COMPAT_NAME( FlagSupportsInPlaceEdits ) = 1 << 8,
3412 KnownIssues SIP_MONKEYPATCH_COMPAT_NAME( FlagKnownIssues ) = 1 << 9,
3413 CustomException SIP_MONKEYPATCH_COMPAT_NAME( FlagCustomException ) = 1 << 10,
3414 PruneModelBranchesBasedOnAlgorithmResults SIP_MONKEYPATCH_COMPAT_NAME( FlagPruneModelBranchesBasedOnAlgorithmResults ) = 1 << 11,
3415 SkipGenericModelLogging SIP_MONKEYPATCH_COMPAT_NAME( FlagSkipGenericModelLogging ) = 1 << 12,
3416 NotAvailableInStandaloneTool SIP_MONKEYPATCH_COMPAT_NAME( FlagNotAvailableInStandaloneTool ) = 1 << 13,
3417 RequiresProject SIP_MONKEYPATCH_COMPAT_NAME( FlagRequiresProject ) = 1 << 14,
3418 SecurityRisk = 1 << 15,
3419 Deprecated SIP_MONKEYPATCH_COMPAT_NAME( FlagDeprecated ) = HideFromToolbox | HideFromModeler,
3420 };
3422
3431 Q_FLAG( ProcessingAlgorithmFlags )
3432
3433
3439 {
3440 RegeneratesPrimaryKey = 1 << 0,
3441 RegeneratesPrimaryKeyInSomeScenarios = 1 << 1,
3442 };
3443 Q_ENUM( ProcessingAlgorithmDocumentationFlag )
3444
3445
3452
3462 {
3463 NotAvailable,
3464 Available,
3465 };
3466 Q_ENUM( ProcessingPropertyAvailability )
3467
3468
3476 {
3477 DefaultLevel = 0,
3478 Verbose,
3479 ModelDebug,
3480 };
3481 Q_ENUM( ProcessingLogLevel )
3482
3483
3491 {
3492 OverrideDefaultGeometryCheck SIP_MONKEYPATCH_COMPAT_NAME( FlagOverrideDefaultGeometryCheck ) = 1 << 0,
3493 CreateIndividualOutputPerInputFeature SIP_MONKEYPATCH_COMPAT_NAME( FlagCreateIndividualOutputPerInputFeature ) = 1 << 1,
3494 };
3495 Q_ENUM( ProcessingFeatureSourceDefinitionFlag )
3496
3497
3506
3515 {
3516 SkipGeometryValidityChecks SIP_MONKEYPATCH_COMPAT_NAME( FlagSkipGeometryValidityChecks ) = 1 << 1,
3517 };
3518 Q_ENUM( ProcessingFeatureSourceFlag )
3519
3520
3529
3541 {
3542 ExposeToModeler = 1
3543 };
3544 Q_ENUM( ProcessingParameterTypeFlag )
3545
3546
3558
3567 {
3568 Advanced SIP_MONKEYPATCH_COMPAT_NAME( FlagAdvanced ) = 1 << 1,
3569 Hidden SIP_MONKEYPATCH_COMPAT_NAME( FlagHidden ) = 1 << 2,
3570 Optional SIP_MONKEYPATCH_COMPAT_NAME( FlagOptional ) = 1 << 3,
3571 IsModelOutput SIP_MONKEYPATCH_COMPAT_NAME( FlagIsModelOutput ) = 1 << 4,
3572 };
3573 Q_ENUM( ProcessingParameterFlag )
3574
3575
3583 Q_FLAG( ProcessingParameterFlags )
3584
3593 {
3594 File = 0,
3595 Folder,
3596 };
3597 Q_ENUM( ProcessingFileParameterBehavior )
3598
3599
3607 {
3608 Integer,
3609 Double,
3610 };
3611 Q_ENUM( ProcessingNumberParameterType )
3612
3613
3621 {
3622 Any = -1,
3623 Numeric = 0,
3624 String = 1,
3625 DateTime = 2,
3626 Binary = 3,
3627 Boolean = 4,
3628 };
3629 Q_ENUM( ProcessingFieldParameterDataType )
3630
3631
3639 {
3640 DateTime,
3641 Date,
3642 Time,
3643 };
3644 Q_ENUM( ProcessingDateTimeParameterDataType )
3645
3646
3652 {
3653 ModelParameter,
3654 ChildOutput,
3655 StaticValue,
3656 Expression,
3657 ExpressionText,
3658 ModelOutput,
3659 };
3660 Q_ENUM( ProcessingModelChildParameterSource )
3661
3662
3668 {
3669 NotExecuted,
3670 Success,
3671 Failed,
3672 };
3673 Q_ENUM( ProcessingModelChildAlgorithmExecutionStatus )
3674
3675
3683 {
3684 Vertices,
3685 StructureLines,
3686 BreakLines
3687 };
3688 Q_ENUM( ProcessingTinInputLayerType )
3689
3690
3696 {
3697 Wkt SIP_MONKEYPATCH_COMPAT_NAME( FormatWkt ),
3698 Proj SIP_MONKEYPATCH_COMPAT_NAME( FormatProj ),
3699 };
3700 Q_ENUM( CrsDefinitionFormat )
3701
3702
3710 enum class FieldDomainSplitPolicy : int
3711 {
3712 DefaultValue,
3713 Duplicate,
3714 GeometryRatio,
3715 UnsetField,
3716 };
3717 Q_ENUM( FieldDomainSplitPolicy )
3718
3719
3727 enum class FieldDomainMergePolicy : int
3728 {
3729 DefaultValue,
3730 Sum,
3731 GeometryWeighted,
3732 };
3733 Q_ENUM( FieldDomainMergePolicy )
3734
3735
3742 enum class FieldDuplicatePolicy : int
3743 {
3744 DefaultValue,
3745 Duplicate,
3746 UnsetField,
3747 };
3748 Q_ENUM( FieldDuplicatePolicy )
3749
3750
3755 enum class FieldDomainType : int
3756 {
3757 Coded,
3758 Range,
3759 Glob,
3760 };
3761 Q_ENUM( FieldDomainType )
3762
3763
3768 enum class TransactionMode : int
3769 {
3770 Disabled = 0,
3771 AutomaticGroups = 1,
3772 BufferedGroups = 2,
3773 };
3774 Q_ENUM( TransactionMode )
3775
3776
3781 enum class AltitudeClamping : int
3782 {
3783 Absolute,
3784 Relative,
3785 Terrain,
3786 };
3787 Q_ENUM( AltitudeClamping )
3788
3789
3794 enum class AltitudeBinding : int
3795 {
3796 Vertex,
3797 Centroid,
3798 };
3799 Q_ENUM( AltitudeBinding )
3800
3801
3806 enum class RangeLimits : int
3807 {
3808 IncludeBoth = 0,
3809 IncludeLowerExcludeUpper,
3810 ExcludeLowerIncludeUpper,
3811 ExcludeBoth,
3812 };
3813 Q_ENUM( RangeLimits )
3814
3815
3820 enum class RasterElevationMode : int
3821 {
3822 FixedElevationRange = 0,
3823 RepresentsElevationSurface = 1,
3824 FixedRangePerBand = 2,
3825 DynamicRangePerBand = 3,
3826 };
3827 Q_ENUM( RasterElevationMode )
3828
3829
3834 enum class MeshElevationMode : int
3835 {
3836 FixedElevationRange = 0,
3837 FromVertices = 1,
3838 FixedRangePerGroup = 2,
3839 };
3840 Q_ENUM( MeshElevationMode )
3841
3842
3848 {
3849 NoConstraint,
3850 Perpendicular,
3851 Parallel
3852 };
3853 Q_ENUM( BetweenLineConstraint )
3854
3855
3860 enum class LineExtensionSide : int
3861 {
3862 BeforeVertex,
3863 AfterVertex,
3864 NoVertex,
3865 };
3866 Q_ENUM( LineExtensionSide )
3867
3868
3869
3873 enum class CadConstraintType : int
3874 {
3875 Generic,
3876 Angle,
3877 Distance,
3878 XCoordinate,
3879 YCoordinate,
3880 ZValue,
3881 MValue,
3882 };
3883 Q_ENUM( CadConstraintType )
3884
3885
3886
3891 enum class ProjectFlag : int SIP_ENUM_BASETYPE( IntFlag )
3892 {
3893 EvaluateDefaultValuesOnProviderSide = 1 << 0,
3894 TrustStoredLayerStatistics = 1 << 1,
3895 RememberLayerEditStatusBetweenSessions = 1 << 2,
3896 RememberAttributeTableWindowsBetweenSessions = 1 << 3,
3897 };
3898 Q_ENUM( ProjectFlag )
3899 Q_DECLARE_FLAGS( ProjectFlags, ProjectFlag )
3900 Q_FLAG( ProjectFlags )
3901
3907 enum class PlotToolFlag : int SIP_ENUM_BASETYPE( IntFlag )
3908 {
3909 ShowContextMenu = 1 << 0,
3910 };
3911 Q_ENUM( PlotToolFlag )
3912 Q_DECLARE_FLAGS( PlotToolFlags, PlotToolFlag )
3913 Q_FLAG( PlotToolFlags )
3914
3915
3923 enum class Point3DShape : int
3924 {
3925 Cylinder,
3926 Sphere,
3927 Cone,
3928 Cube,
3929 Torus,
3930 Plane,
3931 ExtrudedText,
3932 Model,
3933 Billboard,
3934 };
3935 Q_ENUM( Point3DShape )
3936
3937
3942 enum class LightSourceType : int
3943 {
3944 Point,
3945 Directional,
3946 };
3947 Q_ENUM( LightSourceType )
3948
3949
3954 enum class NavigationMode : int
3955 {
3956 TerrainBased,
3957 Walk
3958 };
3959 Q_ENUM( NavigationMode )
3960
3961
3966 enum class VerticalAxisInversion : int
3967 {
3968 Never,
3969 WhenDragging,
3970 Always,
3971 };
3972 Q_ENUM( VerticalAxisInversion )
3973
3974
3980 {
3981 Line,
3982 FillBelow,
3983 FillAbove,
3984 };
3986
3992 enum class VectorProfileType : int
3993 {
3994 IndividualFeatures,
3995 ContinuousSurface,
3996 };
3998
4004 enum class ProfileGeneratorFlag : int SIP_ENUM_BASETYPE( IntFlag )
4005 {
4006 RespectsMaximumErrorMapUnit = 1 << 0,
4007 RespectsDistanceRange = 1 << 1,
4008 RespectsElevationRange = 1 << 2,
4009 };
4010 Q_ENUM( ProfileGeneratorFlag )
4012 Q_FLAG( ProfileGeneratorFlags )
4013
4019 enum class ProfileExportType : int
4020 {
4021 Features3D,
4022 Profile2D,
4023 DistanceVsElevationTable,
4024 };
4026
4033 {
4034 Square,
4035 Circle,
4036 };
4037 Q_ENUM( PointCloudSymbol )
4038
4039
4045 {
4046 Default,
4047 BottomToTop,
4048 TopToBottom,
4049 };
4050 Q_ENUM( PointCloudDrawOrder )
4051
4052
4060 {
4061 AllowIntersections,
4062 AvoidIntersectionsCurrentLayer,
4063 AvoidIntersectionsLayers,
4064 };
4065 Q_ENUM( AvoidIntersectionsMode )
4066
4067
4075 {
4076 Qgz,
4077 Qgs,
4078 };
4079 Q_ENUM( ProjectFileFormat )
4080
4081
4089 {
4090 DontResolveLayers SIP_MONKEYPATCH_COMPAT_NAME( FlagDontResolveLayers ) = 1 << 0,
4091 DontLoadLayouts SIP_MONKEYPATCH_COMPAT_NAME( FlagDontLoadLayouts ) = 1 << 1,
4092 TrustLayerMetadata SIP_MONKEYPATCH_COMPAT_NAME( FlagTrustLayerMetadata ) = 1 << 2,
4093 DontStoreOriginalStyles SIP_MONKEYPATCH_COMPAT_NAME( FlagDontStoreOriginalStyles ) = 1 << 3,
4094 DontLoad3DViews SIP_MONKEYPATCH_COMPAT_NAME( FlagDontLoad3DViews ) = 1 << 4,
4095 DontLoadProjectStyles = 1 << 5,
4096 ForceReadOnlyLayers = 1 << 6,
4097 DontUpgradeAnnotations = 1 << 7,
4098 };
4099 Q_ENUM( ProjectReadFlag )
4100
4101
4109 Q_FLAG( ProjectReadFlags )
4110
4119 enum class ProjectCapability : int SIP_ENUM_BASETYPE( IntFlag )
4120 {
4121 ProjectStyles = 1 << 0,
4122 };
4123 Q_ENUM( ProjectCapability )
4124
4125
4131 Q_FLAG( ProjectCapabilities )
4132
4139 {
4140 Vector,
4141 Raster,
4142 RasterDem,
4143 GeoJson,
4144 Image,
4145 Video,
4146 Unknown,
4147 };
4148 Q_ENUM( MapBoxGlStyleSourceType )
4149
4150
4158 {
4159 FeatureServer SIP_MONKEYPATCH_COMPAT_NAME( FeatureService ),
4160 MapServer SIP_MONKEYPATCH_COMPAT_NAME( MapService ),
4161 ImageServer SIP_MONKEYPATCH_COMPAT_NAME( ImageService ),
4162 GlobeServer,
4163 GPServer,
4164 GeocodeServer,
4165 Unknown,
4166 };
4167 Q_ENUM( ArcGisRestServiceType )
4168
4169
4177 {
4178 Normal,
4179 Generated,
4180 };
4181 Q_ENUM( RelationshipType )
4182
4183
4191 {
4192 Association,
4193 Composition,
4194 };
4195 Q_ENUM( RelationshipStrength )
4196
4197
4203 {
4204 OneToOne,
4205 OneToMany,
4206 ManyToOne,
4207 ManyToMany,
4208 };
4209 Q_ENUM( RelationshipCardinality )
4210
4211
4216 enum class RelationshipCapability : int SIP_ENUM_BASETYPE( IntFlag )
4217 {
4218 MultipleFieldKeys = 1 << 0,
4219 ForwardPathLabel = 1 << 1,
4220 BackwardPathLabel = 1 << 2,
4221 };
4222 Q_ENUM( RelationshipCapability )
4223
4224
4230 Q_FLAG( RelationshipCapabilities )
4231
4237 enum class CoordinateDisplayType : int
4238 {
4239 MapCrs,
4240 MapGeographic,
4241 CustomCrs,
4242 };
4243 Q_ENUM( CoordinateDisplayType )
4244
4245
4250 enum class SettingsOrigin : int
4251 {
4252 Any,
4253 Global,
4254 Local,
4255 };
4256 Q_ENUM( SettingsOrigin )
4257
4258
4263 enum class ScriptLanguage : int
4264 {
4265 Css,
4266 QgisExpression,
4267 Html,
4268 JavaScript,
4269 Json,
4270 Python,
4271 R,
4272 Sql,
4273 Batch,
4274 Bash,
4275 Unknown,
4276 };
4277 Q_ENUM( ScriptLanguage )
4278
4279
4287 {
4288 Reformat = 1 << 0,
4289 CheckSyntax = 1 << 1,
4290 ToggleComment = 1 << 2,
4291 };
4292 Q_ENUM( ScriptLanguageCapability )
4293
4294
4301
4308 {
4309 AboveInsertionPoint,
4310 TopOfTree,
4311 OptimalInInsertionGroup,
4312 };
4313 Q_ENUM( LayerTreeInsertionMethod )
4314
4315
4320 enum class LayerTreeFilterFlag : int SIP_ENUM_BASETYPE( IntFlag )
4321 {
4322 SkipVisibilityCheck = 1 << 0,
4323 };
4324 Q_ENUM( LayerTreeFilterFlag )
4325
4326
4332 Q_FLAG( LayerTreeFilterFlags )
4333
4334
4342 enum class LegendJsonRenderFlag : int SIP_ENUM_BASETYPE( IntFlag )
4343 {
4344 ShowRuleDetails = 1 << 0,
4345 };
4346 Q_ENUM( LegendJsonRenderFlag )
4348 Q_FLAG( LegendJsonRenderFlags )
4349
4357 enum class ActionType : int
4358 {
4359 Invalid,
4360 MapLayerAction,
4361 AttributeAction
4362 };
4363 Q_ENUM( ActionType )
4364
4365
4372 enum class MapLayerActionTarget : int SIP_ENUM_BASETYPE( IntFlag )
4373 {
4374 Layer = 1 << 0,
4375 SingleFeature = 1 << 1,
4376 MultipleFeatures = 1 << 2,
4377 AllActions = Layer | SingleFeature | MultipleFeatures
4378 };
4379 Q_ENUM( MapLayerActionTarget )
4380
4381
4389 Q_FLAG( MapLayerActionTargets )
4390
4398 enum class MapLayerActionFlag : int SIP_ENUM_BASETYPE( IntFlag )
4399 {
4400 EnabledOnlyWhenEditable = 1 << 1,
4401 };
4402 Q_ENUM( MapLayerActionFlag )
4403
4404
4412 Q_FLAG( MapLayerActionFlags )
4413
4422 {
4423 Generic,
4424 GenericPython,
4425 Mac,
4426 Windows,
4427 Unix,
4428 OpenUrl,
4429 SubmitUrlEncoded,
4430 SubmitUrlMultipart,
4431 };
4432 Q_ENUM( AttributeActionType )
4433
4434
4440 {
4441 Created,
4442 Published,
4443 Revised,
4444 Superseded,
4445 };
4446 Q_ENUM( MetadataDateType )
4447
4448
4459 {
4460 Undefined SIP_MONKEYPATCH_COMPAT_NAME( UndefinedColorInterpretation ) = 0,
4461 GrayIndex = 1,
4462 PaletteIndex = 2,
4463 RedBand = 3,
4464 GreenBand = 4,
4465 BlueBand = 5,
4466 AlphaBand = 6,
4467 HueBand = 7,
4468 SaturationBand = 8,
4469 LightnessBand = 9,
4470 CyanBand = 10,
4471 MagentaBand = 11,
4472 YellowBand = 12,
4473 BlackBand = 13,
4474 YCbCr_YBand = 14,
4475 YCbCr_CbBand = 15,
4476 YCbCr_CrBand = 16,
4477 ContinuousPalette = 17,
4478
4479 // Note: values between PanBand and SAR_P_Band match additions done in
4480 // GDAL 3.10, except that the numeric values of the constant don't match GDAL ones
4481
4482 PanBand = 18,
4483 CoastalBand = 19,
4484 RedEdgeBand = 20,
4485 NIRBand = 21,
4486 SWIRBand = 22,
4487 MWIRBand = 23,
4488 LWIRBand = 24,
4489 TIRBand = 25,
4490 OtherIRBand = 26,
4491 SAR_Ka_Band = 27,
4492 SAR_K_Band = 28,
4493 SAR_Ku_Band = 30,
4494 SAR_X_Band = 31,
4495 SAR_C_Band = 32,
4496 SAR_S_Band = 33,
4497 SAR_L_Band = 34,
4498 SAR_P_Band = 35,
4499 };
4500 Q_ENUM( RasterColorInterpretation )
4501
4502
4510 {
4511 GrayOrUndefined,
4512 Palette,
4513 MultiBand SIP_MONKEYPATCH_COMPAT_NAME( Multiband ),
4514 SingleBandColorData SIP_MONKEYPATCH_COMPAT_NAME( ColorLayer ),
4515 };
4516 Q_ENUM( RasterLayerType )
4517
4518
4526 {
4527 Undefined SIP_MONKEYPATCH_COMPAT_NAME( UndefinedDrawingStyle ),
4528 SingleBandGray,
4529 SingleBandPseudoColor,
4530 PalettedColor,
4531 PalettedSingleBandGray,
4532 PalettedSingleBandPseudoColor,
4533 PalettedMultiBandColor,
4534 MultiBandSingleBandGray,
4535 MultiBandSingleBandPseudoColor,
4536 MultiBandColor,
4537 SingleBandColorData SIP_MONKEYPATCH_COMPAT_NAME( SingleBandColorDataStyle ),
4538 };
4539 Q_ENUM( RasterDrawingStyle )
4540
4541
4548 enum class RasterPyramidFormat SIP_MONKEYPATCH_SCOPEENUM_UNNEST( QgsRaster, RasterPyramidsFormat ) : int
4549 {
4550 GeoTiff SIP_MONKEYPATCH_COMPAT_NAME( PyramidsGTiff ) = 0,
4551 Internal SIP_MONKEYPATCH_COMPAT_NAME( PyramidsInternal ) = 1,
4552 Erdas SIP_MONKEYPATCH_COMPAT_NAME( PyramidsErdas ) = 2
4553 };
4554 Q_ENUM( RasterPyramidFormat )
4555
4556
4564 {
4565 No SIP_MONKEYPATCH_COMPAT_NAME( PyramidsFlagNo ) = 0,
4566 Yes SIP_MONKEYPATCH_COMPAT_NAME( PyramidsFlagYes ) = 1,
4567 CopyExisting SIP_MONKEYPATCH_COMPAT_NAME( PyramidsCopyExisting ) = 2
4568 };
4569 Q_ENUM( RasterBuildPyramidOption )
4570
4571
4579 {
4580 Undefined SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatUndefined ) = 0,
4581 Value SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatValue ) = 1,
4582 Text SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatText ) = 1 << 1,
4583 Html SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatHtml ) = 1 << 2,
4584 Feature SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatFeature ) = 1 << 3,
4585 };
4586 Q_ENUM( RasterIdentifyFormat )
4587
4588 // TODO QGIS 4 -- remove NoCapabilities and rely on RasterInterfaceCapabilities() instead
4589 // remove deprecated members
4590 // Remove "Identify" member, and replace with combinations of IdentifyValue/IdentifyText/etc
4591
4592
4600 {
4601 NoCapabilities = 0,
4602 Size = 1 << 1,
4603 Create = 1 << 2,
4604 Remove = 1 << 3,
4605 BuildPyramids = 1 << 4,
4606 Identify = 1 << 5,
4607 IdentifyValue = 1 << 6,
4608 IdentifyText = 1 << 7,
4609 IdentifyHtml = 1 << 8,
4610 IdentifyFeature = 1 << 9,
4611 Prefetch = 1 << 10,
4612 };
4613 Q_ENUM( RasterInterfaceCapability )
4614
4615
4622
4623 // TODO QGIS 4 -- remove NoProviderCapabilities and rely on RasterProviderCapabilities() instead
4624
4633 {
4634 NoProviderCapabilities = 0,
4635 ReadLayerMetadata = 1 << 1,
4636 WriteLayerMetadata = 1 << 2,
4637 ProviderHintBenefitsFromResampling = 1 << 3,
4638 ProviderHintCanPerformProviderResampling = 1 << 4,
4639 ReloadData = 1 << 5,
4640 DpiDependentData = 1 << 6,
4641 NativeRasterAttributeTable = 1 << 7,
4642 BuildPyramids = 1 << 8,
4643 };
4644 Q_ENUM( RasterProviderCapability )
4645
4646
4655
4662 {
4663 HighestElevation,
4664 NewerElevation,
4665 };
4666 Q_ENUM( ElevationMapCombineMethod )
4667
4668
4677 {
4678 Normal SIP_MONKEYPATCH_COMPAT_NAME( BlendNormal ),
4679 Lighten SIP_MONKEYPATCH_COMPAT_NAME( BlendLighten ),
4680 Screen SIP_MONKEYPATCH_COMPAT_NAME( BlendScreen ),
4681 Dodge SIP_MONKEYPATCH_COMPAT_NAME( BlendDodge ),
4682 Addition SIP_MONKEYPATCH_COMPAT_NAME( BlendAddition ),
4683 Darken SIP_MONKEYPATCH_COMPAT_NAME( BlendDarken ),
4684 Multiply SIP_MONKEYPATCH_COMPAT_NAME( BlendMultiply ),
4685 Burn SIP_MONKEYPATCH_COMPAT_NAME( BlendBurn ),
4686 Overlay SIP_MONKEYPATCH_COMPAT_NAME( BlendOverlay ),
4687 SoftLight SIP_MONKEYPATCH_COMPAT_NAME( BlendSoftLight ),
4688 HardLight SIP_MONKEYPATCH_COMPAT_NAME( BlendHardLight ),
4689 Difference SIP_MONKEYPATCH_COMPAT_NAME( BlendDifference ),
4690 Subtract SIP_MONKEYPATCH_COMPAT_NAME( BlendSubtract ),
4691 Source SIP_MONKEYPATCH_COMPAT_NAME( BlendSource ),
4692 DestinationOver SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationOver ),
4693 Clear SIP_MONKEYPATCH_COMPAT_NAME( BlendClear ),
4694 Destination SIP_MONKEYPATCH_COMPAT_NAME( BlendDestination ),
4695 SourceIn SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceIn ),
4696 DestinationIn SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationIn ),
4697 SourceOut SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceOut ),
4698 DestinationOut SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationOut ),
4699 SourceAtop SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceAtop ),
4700 DestinationAtop SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationAtop ),
4701 Xor SIP_MONKEYPATCH_COMPAT_NAME( BlendXor ),
4702 };
4703 Q_ENUM( BlendMode )
4704
4705
4713 {
4714 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownSystem ) = 0,
4715 Metric SIP_MONKEYPATCH_COMPAT_NAME( MetricSystem ),
4716 Imperial SIP_MONKEYPATCH_COMPAT_NAME( ImperialSystem ),
4717 USCS SIP_MONKEYPATCH_COMPAT_NAME( USCSSystem ),
4718 };
4719 Q_ENUM( SystemOfMeasurement )
4720
4721
4728 {
4729 Layer SIP_MONKEYPATCH_COMPAT_NAME( LayerUnits ),
4730 Pixels,
4731 Project SIP_MONKEYPATCH_COMPAT_NAME( ProjectUnits )
4732 };
4733 Q_ENUM( MapToolUnit )
4734
4735
4743 {
4744 Distance SIP_MONKEYPATCH_COMPAT_NAME( TypeDistance ) = 0,
4745 Area SIP_MONKEYPATCH_COMPAT_NAME( TypeArea ),
4746 Volume SIP_MONKEYPATCH_COMPAT_NAME( TypeVolume ),
4747 Unknown SIP_MONKEYPATCH_COMPAT_NAME( TypeUnknown ),
4748 Temporal SIP_MONKEYPATCH_COMPAT_NAME( TypeTemporal ),
4749 };
4750 Q_ENUM( UnitType )
4751
4752
4760 {
4761 Meters SIP_MONKEYPATCH_COMPAT_NAME( DistanceMeters ),
4762 Kilometers SIP_MONKEYPATCH_COMPAT_NAME( DistanceKilometers ),
4763 Feet SIP_MONKEYPATCH_COMPAT_NAME( DistanceFeet ),
4764 NauticalMiles SIP_MONKEYPATCH_COMPAT_NAME( DistanceNauticalMiles ),
4765 Yards SIP_MONKEYPATCH_COMPAT_NAME( DistanceYards ),
4766 Miles SIP_MONKEYPATCH_COMPAT_NAME( DistanceMiles ),
4767 Degrees SIP_MONKEYPATCH_COMPAT_NAME( DistanceDegrees ),
4768 Centimeters SIP_MONKEYPATCH_COMPAT_NAME( DistanceCentimeters ),
4769 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( DistanceMillimeters ),
4770 Inches,
4771 ChainsInternational,
4772 ChainsBritishBenoit1895A,
4773 ChainsBritishBenoit1895B,
4774 ChainsBritishSears1922Truncated,
4775 ChainsBritishSears1922,
4776 ChainsClarkes,
4777 ChainsUSSurvey,
4778 FeetBritish1865,
4779 FeetBritish1936,
4780 FeetBritishBenoit1895A,
4781 FeetBritishBenoit1895B,
4782 FeetBritishSears1922Truncated,
4783 FeetBritishSears1922,
4784 FeetClarkes,
4785 FeetGoldCoast,
4786 FeetIndian,
4787 FeetIndian1937,
4788 FeetIndian1962,
4789 FeetIndian1975,
4790 FeetUSSurvey,
4791 LinksInternational,
4792 LinksBritishBenoit1895A,
4793 LinksBritishBenoit1895B,
4794 LinksBritishSears1922Truncated,
4795 LinksBritishSears1922,
4796 LinksClarkes,
4797 LinksUSSurvey,
4798 YardsBritishBenoit1895A,
4799 YardsBritishBenoit1895B,
4800 YardsBritishSears1922Truncated,
4801 YardsBritishSears1922,
4802 YardsClarkes,
4803 YardsIndian,
4804 YardsIndian1937,
4805 YardsIndian1962,
4806 YardsIndian1975,
4807 MilesUSSurvey,
4808 Fathoms,
4809 MetersGermanLegal,
4810 Unknown SIP_MONKEYPATCH_COMPAT_NAME( DistanceUnknownUnit ),
4811 };
4812 Q_ENUM( DistanceUnit )
4813
4814
4822 {
4823 Standard,
4824 Geographic,
4825 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownType ),
4826 };
4827 Q_ENUM( DistanceUnitType )
4828
4829
4837 {
4838 SquareMeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMeters ),
4839 SquareKilometers SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareKilometers ),
4840 SquareFeet SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareFeet ),
4841 SquareYards SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareYards ),
4842 SquareMiles SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMiles ),
4843 Hectares SIP_MONKEYPATCH_COMPAT_NAME( AreaHectares ),
4844 Acres SIP_MONKEYPATCH_COMPAT_NAME( AreaAcres ),
4845 SquareNauticalMiles SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareNauticalMiles ),
4846 SquareDegrees SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareDegrees ),
4847 SquareCentimeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareCentimeters ),
4848 SquareMillimeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMillimeters ),
4849 SquareInches,
4850 Unknown SIP_MONKEYPATCH_COMPAT_NAME( AreaUnknownUnit ),
4851 };
4852 Q_ENUM( AreaUnit )
4853
4854
4862 {
4863 CubicMeters SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicMeters ),
4864 CubicFeet SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicFeet ),
4865 CubicYards SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicYards ),
4866 Barrel SIP_MONKEYPATCH_COMPAT_NAME( VolumeBarrel ),
4867 CubicDecimeter SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicDecimeter ),
4868 Liters SIP_MONKEYPATCH_COMPAT_NAME( VolumeLiters ),
4869 GallonUS SIP_MONKEYPATCH_COMPAT_NAME( VolumeGallonUS ),
4870 CubicInch SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicInch ),
4871 CubicCentimeter SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicCentimeter ),
4872 CubicDegrees SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicDegrees ),
4873 Unknown SIP_MONKEYPATCH_COMPAT_NAME( VolumeUnknownUnit ),
4874 };
4875 Q_ENUM( VolumeUnit )
4876
4877
4885 {
4886 Degrees SIP_MONKEYPATCH_COMPAT_NAME( AngleDegrees ),
4887 Radians SIP_MONKEYPATCH_COMPAT_NAME( AngleRadians ),
4888 Gon SIP_MONKEYPATCH_COMPAT_NAME( AngleGon ),
4889 MinutesOfArc SIP_MONKEYPATCH_COMPAT_NAME( AngleMinutesOfArc ),
4890 SecondsOfArc SIP_MONKEYPATCH_COMPAT_NAME( AngleSecondsOfArc ),
4891 Turn SIP_MONKEYPATCH_COMPAT_NAME( AngleTurn ),
4892 MilliradiansSI SIP_MONKEYPATCH_COMPAT_NAME( AngleMilliradiansSI ),
4893 MilNATO SIP_MONKEYPATCH_COMPAT_NAME( AngleMilNATO ),
4894 Unknown SIP_MONKEYPATCH_COMPAT_NAME( AngleUnknownUnit ),
4895 };
4896 Q_ENUM( AngleUnit )
4897
4898
4906 {
4907 Milliseconds SIP_MONKEYPATCH_COMPAT_NAME( TemporalMilliseconds ),
4908 Seconds SIP_MONKEYPATCH_COMPAT_NAME( TemporalSeconds ),
4909 Minutes SIP_MONKEYPATCH_COMPAT_NAME( TemporalMinutes ),
4910 Hours SIP_MONKEYPATCH_COMPAT_NAME( TemporalHours ),
4911 Days SIP_MONKEYPATCH_COMPAT_NAME( TemporalDays ),
4912 Weeks SIP_MONKEYPATCH_COMPAT_NAME( TemporalWeeks ),
4913 Months SIP_MONKEYPATCH_COMPAT_NAME( TemporalMonths ),
4914 Years SIP_MONKEYPATCH_COMPAT_NAME( TemporalYears ),
4915 Decades SIP_MONKEYPATCH_COMPAT_NAME( TemporalDecades ),
4916 Centuries SIP_MONKEYPATCH_COMPAT_NAME( TemporalCenturies ),
4917 IrregularStep SIP_MONKEYPATCH_COMPAT_NAME( TemporalIrregularStep ),
4918 Unknown SIP_MONKEYPATCH_COMPAT_NAME( TemporalUnknownUnit )
4919 };
4920 Q_ENUM( TemporalUnit )
4921
4922
4930 {
4931 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( RenderMillimeters ),
4932 MapUnits SIP_MONKEYPATCH_COMPAT_NAME( RenderMapUnits ),
4933 Pixels SIP_MONKEYPATCH_COMPAT_NAME( RenderPixels ),
4934 Percentage SIP_MONKEYPATCH_COMPAT_NAME( RenderPercentage ),
4935 Points SIP_MONKEYPATCH_COMPAT_NAME( RenderPoints ),
4936 Inches SIP_MONKEYPATCH_COMPAT_NAME( RenderInches ),
4937 Unknown SIP_MONKEYPATCH_COMPAT_NAME( RenderUnknownUnit ),
4938 MetersInMapUnits SIP_MONKEYPATCH_COMPAT_NAME( RenderMetersInMapUnits ),
4939 };
4940 Q_ENUM( RenderUnit )
4941
4942
4950 {
4951 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( LayoutMillimeters ),
4952 Centimeters SIP_MONKEYPATCH_COMPAT_NAME( LayoutCentimeters ),
4953 Meters SIP_MONKEYPATCH_COMPAT_NAME( LayoutMeters ),
4954 Inches SIP_MONKEYPATCH_COMPAT_NAME( LayoutInches ),
4955 Feet SIP_MONKEYPATCH_COMPAT_NAME( LayoutFeet ),
4956 Points SIP_MONKEYPATCH_COMPAT_NAME( LayoutPoints ),
4957 Picas SIP_MONKEYPATCH_COMPAT_NAME( LayoutPicas ),
4958 Pixels SIP_MONKEYPATCH_COMPAT_NAME( LayoutPixels )
4959 };
4960 Q_ENUM( LayoutUnit )
4961
4962
4970 {
4971 PaperUnits SIP_MONKEYPATCH_COMPAT_NAME( LayoutPaperUnits ),
4972 ScreenUnits SIP_MONKEYPATCH_COMPAT_NAME( LayoutScreenUnits )
4973 };
4974 Q_ENUM( LayoutUnitType )
4975
4976
4984 {
4985 SVG SIP_MONKEYPATCH_COMPAT_NAME( FormatSVG ) = 0,
4986 Raster SIP_MONKEYPATCH_COMPAT_NAME( FormatRaster ),
4987 Unknown SIP_MONKEYPATCH_COMPAT_NAME( FormatUnknown ),
4988 };
4989 Q_ENUM( PictureFormat )
4990
4991
4996 enum class ScaleCalculationMethod : int
4997 {
4998 HorizontalTop = 0,
4999 HorizontalMiddle,
5000 HorizontalBottom,
5001 HorizontalAverage,
5002 };
5003 Q_ENUM( ScaleCalculationMethod )
5004
5005
5013 {
5014 Left SIP_MONKEYPATCH_COMPAT_NAME( AlignLeft ) = 0,
5015 Middle SIP_MONKEYPATCH_COMPAT_NAME( AlignMiddle ),
5016 Right SIP_MONKEYPATCH_COMPAT_NAME( AlignRight ),
5017 };
5018 Q_ENUM( ScaleBarAlignment )
5019
5020
5028 {
5029 Fixed SIP_MONKEYPATCH_COMPAT_NAME( SegmentSizeFixed ) = 0,
5030 FitWidth SIP_MONKEYPATCH_COMPAT_NAME( SegmentSizeFitWidth ) = 1
5031 };
5032 Q_ENUM( ScaleBarSegmentSizeMode )
5033
5034
5042 {
5043 AboveSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelAboveSegment ) = 0,
5044 BelowSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelBelowSegment ),
5045 };
5046 Q_ENUM( ScaleBarDistanceLabelVerticalPlacement )
5047
5048
5056 {
5057 CenteredEdge SIP_MONKEYPATCH_COMPAT_NAME( LabelCenteredEdge ) = 0,
5058 CenteredSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelCenteredSegment ),
5059 };
5060 Q_ENUM( ScaleBarDistanceLabelHorizontalPlacement )
5061
5062
5067 enum class InputControllerType : int
5068 {
5069 Map2D,
5070 Map3D
5071 };
5073
5080 {
5081 NotSet,
5082 Unknown,
5083 OrdinaryTable,
5084 Index,
5085 Sequence,
5086 View,
5087 MaterializedView,
5088 CompositeType,
5089 ToastTable,
5090 ForeignTable,
5091 PartitionedTable,
5092 };
5093 Q_ENUM( PostgresRelKind )
5094
5095
5101 {
5102 SetFieldComment = 1 << 0,
5103 SetFieldAlias = 1 << 1,
5104 };
5105 Q_ENUM( DatabaseProviderConnectionCapability2 )
5108
5115 {
5116 SaveToDatabase = 1 << 1,
5117 LoadFromDatabase = 1 << 2,
5118 DeleteFromDatabase = 1 << 3
5119 };
5123
5124
5130 {
5131 LastProfile,
5132 DefaultProfile,
5133 AskUser,
5134 };
5135 Q_ENUM( UserProfileSelectionPolicy )
5136
5137
5145 {
5146 Container SIP_MONKEYPATCH_COMPAT_NAME( AeTypeContainer ),
5147 Field SIP_MONKEYPATCH_COMPAT_NAME( AeTypeField ),
5148 Relation SIP_MONKEYPATCH_COMPAT_NAME( AeTypeRelation ),
5149 QmlElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeQmlElement ),
5150 HtmlElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeHtmlElement ),
5151 Action SIP_MONKEYPATCH_COMPAT_NAME( AeTypeAction ),
5152 TextElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeTextElement ),
5153 SpacerElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeSpacerElement ),
5154 Invalid SIP_MONKEYPATCH_COMPAT_NAME( AeTypeInvalid ),
5155 };
5156 Q_ENUM( AttributeEditorType )
5157
5158
5164 {
5165 GroupBox,
5166 Tab,
5167 Row,
5168 };
5169 Q_ENUM( AttributeEditorContainerType )
5170
5171
5179 {
5180 AutoGenerated SIP_MONKEYPATCH_COMPAT_NAME( GeneratedLayout ) = 0,
5181 DragAndDrop SIP_MONKEYPATCH_COMPAT_NAME( TabLayout ) = 1,
5182 UiFile SIP_MONKEYPATCH_COMPAT_NAME( UiFileLayout ) = 2
5183 };
5184 Q_ENUM( AttributeFormLayout )
5185
5186
5194 {
5195 Default SIP_MONKEYPATCH_COMPAT_NAME( SuppressDefault ) = 0,
5196 On SIP_MONKEYPATCH_COMPAT_NAME( SuppressOn ) = 1,
5197 Off SIP_MONKEYPATCH_COMPAT_NAME( SuppressOff ) = 2
5198 };
5199 Q_ENUM( AttributeFormSuppression )
5200
5201
5209 {
5210 NoSource SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceNone ) = 0,
5211 File SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceFile ) = 1,
5212 Dialog SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceDialog ) = 2,
5213 Environment SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceEnvironment ) = 3
5214 };
5215 Q_ENUM( AttributeFormPythonInitCodeSource )
5216
5217
5223 {
5224 Qgis,
5225 PointCloud,
5226 RasterCalculator,
5227 };
5228 Q_ENUM( ExpressionType )
5229
5230
5238 {
5239 NoSymbology = 0,
5240 PerFeature SIP_MONKEYPATCH_COMPAT_NAME( FeatureSymbology ),
5241 PerSymbolLayer SIP_MONKEYPATCH_COMPAT_NAME( SymbolLayerSymbology )
5242 };
5243 Q_ENUM( FeatureSymbologyExport )
5244
5245
5250 enum class VectorTileProviderFlag : int SIP_ENUM_BASETYPE( IntFlag )
5251 {
5252 AlwaysUseTileMatrixSetFromProvider = 1 << 1,
5253 };
5254 Q_ENUM( VectorTileProviderFlag )
5255
5256
5262 Q_FLAG( VectorTileProviderFlags )
5263
5269 {
5270 ReadLayerMetadata = 1 << 1,
5271 };
5272 Q_ENUM( VectorTileProviderCapability )
5273
5274
5281
5288 {
5289 Available,
5290 NotAvailable,
5291 AvailableNoChildren,
5292 UseLowerZoomLevelTile,
5293 };
5294 Q_ENUM( TileAvailability )
5295
5296
5302 {
5303 ReadLayerMetadata = 1 << 1,
5304 };
5305 Q_ENUM( TiledSceneProviderCapability )
5306
5307
5314
5321 {
5322 Region,
5323 OrientedBox,
5324 Sphere,
5325 };
5326 Q_ENUM( TiledSceneBoundingVolumeType )
5327
5328
5337 {
5338 Replacement,
5339 Additive,
5340 };
5341 Q_ENUM( TileRefinementProcess )
5342
5343
5349 {
5350 NoChildren,
5351 Available,
5352 NeedFetching,
5353 };
5354 Q_ENUM( TileChildrenAvailability )
5355
5356
5361 enum class TiledSceneRequestFlag : int SIP_ENUM_BASETYPE( IntFlag )
5362 {
5363 NoHierarchyFetch = 1 << 0,
5364 };
5365 Q_ENUM( TiledSceneRequestFlag )
5366
5367
5373 Q_FLAG( TiledSceneRequestFlags )
5374
5380 enum class TiledSceneRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
5381 {
5382 RequiresTextures = 1 << 0,
5383 ForceRasterRender = 1 << 1,
5384 RendersTriangles = 1 << 2,
5385 RendersLines = 1 << 3,
5386 };
5387 Q_ENUM( TiledSceneRendererFlag )
5388
5389
5395 Q_FLAG( TiledSceneRendererFlags )
5396
5402 enum class GdalResampleAlgorithm : int
5403 {
5404 RA_NearestNeighbour = 0,
5405 RA_Bilinear = 1,
5406 RA_Cubic = 2,
5407 RA_CubicSpline = 3,
5408 RA_Lanczos = 4,
5409 RA_Average = 5,
5410 RA_Mode = 6,
5411 RA_Max = 8,
5412 RA_Min = 9,
5413 RA_Median = 10,
5414 RA_Q1 = 11,
5415 RA_Q3 = 12,
5416 };
5417 Q_ENUM( GdalResampleAlgorithm )
5418
5419
5424 enum class VsiHandlerType : int
5425 {
5426 Invalid,
5427 Archive,
5428 Network,
5429 Cloud,
5430 Memory,
5431 Other,
5432 };
5433 Q_ENUM( VsiHandlerType )
5434
5435 // TODO QGIS 4: make All include all values (we can't do this before 4.0, as we need to keep
5436 // compatibility with code which expects all these statistics to give numeric results)
5437
5438
5443 enum class ZonalStatistic : int SIP_ENUM_BASETYPE( IntFlag )
5444 {
5445 Count = 1 << 0,
5446 Sum = 1 << 1,
5447 Mean = 1 << 2,
5448 Median = 1 << 3,
5449 StDev = 1 << 4,
5450 Min = 1 << 5,
5451 Max = 1 << 6,
5452 Range = 1 << 7,
5453 Minority = 1 << 8,
5454 Majority = 1 << 9,
5455 Variety = 1 << 10,
5456 Variance = 1 << 11,
5457 MinimumPoint = 1 << 12,
5458 MaximumPoint = 1 << 13,
5459 All = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
5460 AllNumeric = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
5461 Default = Count | Sum | Mean,
5462 };
5463 Q_ENUM( ZonalStatistic )
5464
5465
5471 Q_FLAG( ZonalStatistics )
5472
5478 enum class ZonalStatisticResult : int
5479 {
5480 Success = 0,
5481 LayerTypeWrong = 1,
5482 LayerInvalid,
5483 RasterInvalid,
5484 RasterBandInvalid,
5485 FailedToCreateField = 8,
5486 Canceled = 9
5487 };
5488 Q_ENUM( ZonalStatisticResult )
5489
5490
5497 {
5498 Count,
5499 CountDistinct,
5500 CountMissing,
5501 Min,
5502 Max,
5503 Sum,
5504 Mean,
5505 Median,
5506 StDev,
5507 StDevSample,
5508 Range,
5509 Minority,
5510 Majority,
5511 FirstQuartile,
5512 ThirdQuartile,
5513 InterQuartileRange,
5514 StringMinimumLength,
5515 StringMaximumLength,
5516 StringConcatenate,
5517 GeometryCollect,
5518 ArrayAggregate,
5519 StringConcatenateUnique
5520 };
5521 Q_ENUM( Aggregate )
5522
5523
5529 {
5530 Count = 1 << 0,
5531 CountMissing = 1 << 15,
5532 Sum = 1 << 1,
5533 Mean = 1 << 2,
5534 Median = 1 << 3,
5535 StDev = 1 << 4,
5536 StDevSample = 1 << 5,
5537 Min = 1 << 6,
5538 Max = 1 << 7,
5539 Range = 1 << 8,
5540 Minority = 1 << 9,
5541 Majority = 1 << 10,
5542 Variety = 1 << 11,
5543 FirstQuartile = 1 << 12,
5544 ThirdQuartile = 1 << 13,
5545 InterQuartileRange = 1 << 14,
5546 First = 1 << 16,
5547 Last = 1 << 17,
5548 All = Count | CountMissing | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | FirstQuartile | ThirdQuartile | InterQuartileRange | First | Last
5549 };
5550 Q_ENUM( Statistic )
5551
5552
5558 Q_FLAG( Statistics )
5559
5566 {
5567 Count = 1,
5568 CountDistinct = 2,
5569 CountMissing = 4,
5570 Min = 8,
5571 Max = 16,
5572 Range = 32,
5573 All = Count | CountDistinct | CountMissing | Min | Max | Range,
5574 };
5575 Q_ENUM( DateTimeStatistic )
5576
5577
5583 Q_FLAG( DateTimeStatistics )
5584
5591 {
5592 Count = 1,
5593 CountDistinct = 2,
5594 CountMissing = 4,
5595 Min = 8,
5596 Max = 16,
5597 MinimumLength = 32,
5598 MaximumLength = 64,
5599 MeanLength = 128,
5600 Minority = 256,
5601 Majority = 512,
5602 All = Count | CountDistinct | CountMissing | Min | Max | MinimumLength | MaximumLength | MeanLength | Minority | Majority,
5603 };
5604 Q_ENUM( StringStatistic )
5605
5606
5612 Q_FLAG( StringStatistics )
5613
5620 {
5621 NoStatistic = 0,
5622 Min = 1,
5623 Max = 1 << 1,
5624 Range = 1 << 2,
5625 Sum = 1 << 3,
5626 Mean = 1 << 4,
5627 StdDev = 1 << 5,
5628 SumOfSquares = 1 << 6,
5629 All = Min | Max | Range | Sum | Mean | StdDev | SumOfSquares
5630 };
5631 Q_ENUM( RasterBandStatistic )
5632
5633
5639 Q_FLAG( RasterBandStatistics )
5640
5646 enum class SensorThingsEntity : int
5647 {
5648 Invalid,
5649 Thing,
5650 Location,
5651 HistoricalLocation,
5652 Datastream,
5653 Sensor,
5654 ObservedProperty,
5655 Observation,
5656 FeatureOfInterest,
5657 MultiDatastream,
5658 };
5659 Q_ENUM( SensorThingsEntity )
5660
5661
5666 enum class ColorModel : int
5667 {
5668 Rgb,
5669 Cmyk,
5670 };
5671 Q_ENUM( ColorModel )
5672
5673
5678 enum class DocumentationApi : int
5679 {
5680 PyQgis,
5681 PyQgisSearch,
5682 CppQgis,
5683 Qt,
5684 };
5685 Q_ENUM( DocumentationApi )
5686
5687
5692 enum class DocumentationBrowser : int
5693 {
5694 DeveloperToolsPanel,
5695 SystemWebBrowser,
5696 };
5697 Q_ENUM( DocumentationBrowser )
5698
5699
5704 enum class MouseHandlesAction : int
5705 {
5706 MoveItem,
5707 ResizeUp,
5708 ResizeDown,
5709 ResizeLeft,
5710 ResizeRight,
5711 ResizeLeftUp,
5712 ResizeRightUp,
5713 ResizeLeftDown,
5714 ResizeRightDown,
5715 SelectItem,
5716 NoAction
5717 };
5718 Q_ENUM( MouseHandlesAction )
5719
5720
5724 enum class MeshRangeLimit : int
5725 {
5726 NotSet,
5727 MinimumMaximum,
5728 };
5729 Q_ENUM( MeshRangeLimit )
5730
5731
5736 enum class MeshRangeExtent : int
5737 {
5738 WholeMesh,
5739 FixedCanvas,
5740 UpdatedCanvas,
5741 };
5742 Q_ENUM( MeshRangeExtent )
5743
5744
5750 enum class PointCloudAccessType : int
5751 {
5752 Local,
5753 Remote
5754 };
5755 Q_ENUM( PointCloudAccessType )
5756
5757
5762 {
5763 RenderExtents,
5764 RenderOverview,
5765 RenderOverviewAndExtents
5766 };
5767 Q_ENUM( PointCloudZoomOutRenderBehavior )
5768
5769
5774 {
5775 Standard = 0,
5776 Adaptive,
5777 AreaError,
5778 ConstantDensity
5779 };
5780 Q_ENUM( SegmentCalculationMethod )
5781
5782
5785 static const double DEFAULT_SEARCH_RADIUS_MM;
5786
5788 static const float DEFAULT_MAPTOPIXEL_THRESHOLD;
5789
5795 static const QColor DEFAULT_HIGHLIGHT_COLOR;
5796
5800 static const double DEFAULT_HIGHLIGHT_BUFFER_MM;
5801
5805 static const double DEFAULT_HIGHLIGHT_MIN_WIDTH_MM;
5806
5814 Q_DECL_DEPRECATED static const double SCALE_PRECISION;
5815
5820 static const double DEFAULT_Z_COORDINATE;
5821
5827 static const double DEFAULT_M_COORDINATE;
5828
5833 static const double UI_SCALE_FACTOR;
5834
5838 static const double DEFAULT_SNAP_TOLERANCE;
5839
5843 static const Qgis::MapToolUnit DEFAULT_SNAP_UNITS;
5844
5850 static QString defaultProjectScales();
5851
5857 static int geosVersionInt();
5858
5864 static int geosVersionMajor();
5865
5871 static int geosVersionMinor();
5872
5878 static int geosVersionPatch();
5879
5885 static QString geosVersion();
5886};
5887
5890
5972
5973// hack to workaround warnings when casting void pointers
5974// retrieved from QLibrary::resolve to function pointers.
5975// It's assumed that this works on all systems supporting
5976// QLibrary
5977#define cast_to_fptr(f) f
5978
5979
5987// based on Boojum's code from http://stackoverflow.com/questions/3556687/prevent-firing-signals-in-qt
5988template<class Object> class QgsSignalBlocker SIP_SKIP SIP_SKIP // clazy:exclude=rule-of-three
5989{
5990 public:
5991
5996 explicit QgsSignalBlocker( Object *object )
5997 : mObject( object )
5998 , mPreviousState( object->blockSignals( true ) )
5999 {}
6000
6002 {
6003 mObject->blockSignals( mPreviousState );
6004 }
6005
6007 Object *operator->() { return mObject; }
6008
6009 private:
6010
6011 Object *mObject = nullptr;
6012 bool mPreviousState;
6013
6014};
6015
6028// based on Boojum's code from http://stackoverflow.com/questions/3556687/prevent-firing-signals-in-qt
6029template<class Object> inline QgsSignalBlocker<Object> whileBlocking( Object *object ) SIP_SKIP SIP_SKIP
6030{
6031 return QgsSignalBlocker<Object>( object );
6032}
6033
6035CORE_EXPORT uint qHash( const QVariant &variant );
6036
6042inline QString qgsDoubleToString( double a, int precision = 17 )
6043{
6044 QString str;
6045 if ( precision )
6046 {
6047 if ( precision < 0 )
6048 {
6049 const double roundFactor = std::pow( 10, -precision );
6050 str = QString::number( static_cast< long long >( std::round( a / roundFactor ) * roundFactor ) );
6051 }
6052 else
6053 {
6054 str = QString::number( a, 'f', precision );
6055 if ( str.contains( QLatin1Char( '.' ) ) )
6056 {
6057 // remove ending 0s
6058 int idx = str.length() - 1;
6059 while ( str.at( idx ) == '0' && idx > 1 )
6060 {
6061 idx--;
6062 }
6063 if ( idx < str.length() - 1 )
6064 str.truncate( str.at( idx ) == '.' ? idx : idx + 1 );
6065 }
6066 }
6067 }
6068 else
6069 {
6070 str = QString::number( a, 'f', precision );
6071 }
6072 // avoid printing -0
6073 // see https://bugreports.qt.io/browse/QTBUG-71439
6074 if ( str == QLatin1String( "-0" ) )
6075 {
6076 return QLatin1String( "0" );
6077 }
6078 return str;
6079}
6080
6087inline bool qgsNanCompatibleEquals( double a, double b )
6088{
6089 const bool aIsNan = std::isnan( a );
6090 const bool bIsNan = std::isnan( b );
6091 if ( aIsNan || bIsNan )
6092 return aIsNan && bIsNan;
6093
6094 return a == b;
6095}
6096
6097#ifndef SIP_RUN
6098
6106template<typename T>
6107inline bool qgsNumberNear( T a, T b, T epsilon = std::numeric_limits<T>::epsilon() * 4 )
6108{
6109 const bool aIsNan = std::isnan( a );
6110 const bool bIsNan = std::isnan( b );
6111 if ( aIsNan || bIsNan )
6112 return aIsNan && bIsNan;
6113
6114 const T diff = a - b;
6115 return diff >= -epsilon && diff <= epsilon;
6116}
6117#endif
6118
6125inline bool qgsDoubleNear( double a, double b, double epsilon = 4 * std::numeric_limits<double>::epsilon() )
6126{
6127 return qgsNumberNear<double>( a, b, epsilon );
6128}
6129
6136inline bool qgsFloatNear( float a, float b, float epsilon = 4 * FLT_EPSILON )
6137{
6138 return qgsNumberNear<float>( a, b, epsilon );
6139}
6140
6142inline bool qgsDoubleNearSig( double a, double b, int significantDigits = 10 )
6143{
6144 const bool aIsNan = std::isnan( a );
6145 const bool bIsNan = std::isnan( b );
6146 if ( aIsNan || bIsNan )
6147 return aIsNan && bIsNan;
6148
6149 // The most simple would be to print numbers as %.xe and compare as strings
6150 // but that is probably too costly
6151 // Then the fastest would be to set some bits directly, but little/big endian
6152 // has to be considered (maybe TODO)
6153 // Is there a better way?
6154 int aexp, bexp;
6155 const double ar = std::frexp( a, &aexp );
6156 const double br = std::frexp( b, &bexp );
6157
6158 return aexp == bexp &&
6159 std::round( ar * std::pow( 10.0, significantDigits ) ) == std::round( br * std::pow( 10.0, significantDigits ) );
6160}
6161
6166inline double qgsRound( double number, int places )
6167{
6168 const double m = ( number < 0.0 ) ? -1.0 : 1.0;
6169 const double scaleFactor = std::pow( 10.0, places );
6170 return ( std::round( number * m * scaleFactor ) / scaleFactor ) * m;
6171}
6172
6173#ifndef SIP_RUN
6174
6181template<class Key, class Value>
6182QString qgsMapJoinKeys( const QMap<Key, Value> &map, const QString &separator )
6183{
6184 QString result;
6185 for ( auto it = map.constBegin(); it != map.constEnd(); it++ )
6186 result += QString( "%1%2" ).arg( it.key() ).arg( separator );
6187
6188 result.chop( separator.size() );
6189 return result;
6190}
6191
6198template<class Key, class Value>
6199QString qgsMapJoinValues( const QMap<Key, Value> &map, const QString &separator )
6200{
6201 QString result;
6202 for ( auto it = map.constBegin(); it != map.constEnd(); it++ )
6203 result += QString( "%1%2" ).arg( it.value() ).arg( separator );
6204
6205 result.chop( separator.size() );
6206 return result;
6207}
6208
6215template<class T>
6216QString qgsSetJoin( const QSet<T> &set, const QString &separator )
6217{
6218 QString result;
6219 for ( auto it = set.constBegin(); it != set.constEnd(); it++ )
6220 result += QString( "%1%2" ).arg( *it ).arg( separator );
6221
6222 result.chop( separator.size() );
6223 return result;
6224}
6225
6227
6237namespace qgis
6238{
6239
6252 template<typename To, typename From> inline To down_cast( From *f )
6253 {
6254 static_assert(
6255 ( std::is_base_of<From,
6256 typename std::remove_pointer<To>::type>::value ),
6257 "target type not derived from source type" );
6258 Q_ASSERT( f == nullptr || dynamic_cast<To>( f ) != nullptr );
6259 return static_cast<To>( f );
6260 }
6261
6262 template<class T>
6263 QSet<T> listToSet( const QList<T> &list )
6264 {
6265 return QSet<T>( list.begin(), list.end() );
6266 }
6267
6268 template<class T>
6269 QList<T> setToList( const QSet<T> &set )
6270 {
6271 return QList<T>( set.begin(), set.end() );
6272 }
6273}
6274
6276#endif
6277
6282template<class T> const QList<T> qgsEnumList() SIP_SKIP
6283{
6284 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6285 Q_ASSERT( metaEnum.isValid() );
6286 QList<T> enumList;
6287 for ( int idx = 0; idx < metaEnum.keyCount(); ++idx )
6288 {
6289 enumList.append( static_cast<T>( metaEnum.value( idx ) ) );
6290 }
6291 return enumList;
6292}
6293
6299template<class T> const QMap<T, QString> qgsEnumMap() SIP_SKIP
6300{
6301 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6302 Q_ASSERT( metaEnum.isValid() );
6303 QMap<T, QString> enumMap;
6304 for ( int idx = 0; idx < metaEnum.keyCount(); ++idx )
6305 {
6306 enumMap.insert( static_cast<T>( metaEnum.value( idx ) ), QString( metaEnum.key( idx ) ) );
6307 }
6308 return enumMap;
6309}
6310
6316template<class T> QString qgsEnumValueToKey( const T &value, bool *returnOk = nullptr ) SIP_SKIP
6317{
6318 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6319 Q_ASSERT( metaEnum.isValid() );
6320 const char *key = metaEnum.valueToKey( static_cast<int>( value ) );
6321 if ( returnOk )
6322 {
6323 *returnOk = key ? true : false;
6324 }
6325 return QString::fromUtf8( key );
6326}
6327
6335template<class T> T qgsEnumKeyToValue( const QString &key, const T &defaultValue, bool tryValueAsKey = true, bool *returnOk = nullptr ) SIP_SKIP
6336{
6337 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6338 Q_ASSERT( metaEnum.isValid() );
6339 bool ok = false;
6340 T v = static_cast<T>( metaEnum.keyToValue( key.toUtf8().data(), &ok ) );
6341 if ( returnOk )
6342 {
6343 *returnOk = ok;
6344 }
6345 if ( ok )
6346 {
6347 return v;
6348 }
6349 else
6350 {
6351 // if conversion has failed, try with conversion from int value
6352 if ( tryValueAsKey )
6353 {
6354 bool canConvert = false;
6355 const int intValue = key.toInt( &canConvert );
6356 if ( canConvert && metaEnum.valueToKey( intValue ) )
6357 {
6358 if ( returnOk )
6359 {
6360 *returnOk = true;
6361 }
6362 return static_cast<T>( intValue );
6363 }
6364 }
6365 }
6366 return defaultValue;
6367}
6368
6374template<class T> QString qgsFlagValueToKeys( const T &value, bool *returnOk = nullptr ) SIP_SKIP
6375{
6376 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6377 Q_ASSERT( metaEnum.isValid() );
6378 int intValue = static_cast<int>( value );
6379 const QByteArray ba = metaEnum.valueToKeys( intValue );
6380 // check that the int value does correspond to a flag
6381 // see https://stackoverflow.com/a/68495949/1548052
6382 const int intValueCheck = metaEnum.keysToValue( ba );
6383 bool ok = intValue == intValueCheck;
6384 if ( returnOk )
6385 *returnOk = ok;
6386 return ok ? QString::fromUtf8( ba ) : QString();
6387}
6388
6396template<class T> T qgsFlagKeysToValue( const QString &keys, const T &defaultValue, bool tryValueAsKey = true, bool *returnOk = nullptr ) SIP_SKIP
6397{
6398 if ( keys.isEmpty() )
6399 {
6400 if ( returnOk )
6401 {
6402 *returnOk = false;
6403 }
6404 return defaultValue;
6405 }
6406 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6407 Q_ASSERT( metaEnum.isValid() );
6408 bool ok = false;
6409 T v = static_cast<T>( metaEnum.keysToValue( keys.toUtf8().constData(), &ok ) );
6410 if ( returnOk )
6411 {
6412 *returnOk = ok;
6413 }
6414 if ( ok )
6415 {
6416 return v;
6417 }
6418 else
6419 {
6420 // if conversion has failed, try with conversion from int value
6421 if ( tryValueAsKey )
6422 {
6423 bool canConvert = false;
6424 const int intValue = keys.toInt( &canConvert );
6425 if ( canConvert )
6426 {
6427 const QByteArray keys = metaEnum.valueToKeys( intValue );
6428 const int intValueCheck = metaEnum.keysToValue( keys );
6429 if ( intValue == intValueCheck )
6430 {
6431 if ( returnOk )
6432 {
6433 *returnOk = true;
6434 }
6435 return T( intValue );
6436 }
6437 }
6438 }
6439 }
6440 return defaultValue;
6441}
6442
6443
6452CORE_EXPORT double qgsPermissiveToDouble( QString string, bool &ok );
6453
6462CORE_EXPORT int qgsPermissiveToInt( QString string, bool &ok );
6463
6473CORE_EXPORT qlonglong qgsPermissiveToLongLong( QString string, bool &ok );
6474
6484CORE_EXPORT bool qgsVariantLessThan( const QVariant &lhs, const QVariant &rhs );
6485
6494CORE_EXPORT bool qgsVariantEqual( const QVariant &lhs, const QVariant &rhs );
6495
6502CORE_EXPORT bool qgsVariantGreaterThan( const QVariant &lhs, const QVariant &rhs );
6503
6504#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
6505
6512inline bool operator> ( const QVariant &v1, const QVariant &v2 )
6513{
6514 return qgsVariantGreaterThan( v1, v2 );
6515}
6516
6526inline bool operator< ( const QVariant &v1, const QVariant &v2 )
6527{
6528 return qgsVariantLessThan( v1, v2 );
6529}
6530#endif
6531
6532
6533#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
6534
6538template<> CORE_EXPORT bool qMapLessThanKey<QVariantList>( const QVariantList &key1, const QVariantList &key2 ) SIP_SKIP;
6539#endif
6540
6541CORE_EXPORT QString qgsVsiPrefix( const QString &path );
6542
6548void CORE_EXPORT *qgsMalloc( size_t size ) SIP_SKIP;
6549
6554void CORE_EXPORT qgsFree( void *ptr ) SIP_SKIP;
6555
6556#ifndef SIP_RUN
6557
6558#ifdef _MSC_VER
6559#define CONSTLATIN1STRING inline const QLatin1String
6560#else
6561#define CONSTLATIN1STRING constexpr QLatin1String
6562#endif
6563
6565class ScopedIntIncrementor
6566{
6567 public:
6568
6569 ScopedIntIncrementor( int *variable )
6570 : mVariable( variable )
6571 {
6572 ( *mVariable )++;
6573 }
6574
6575 ScopedIntIncrementor( const ScopedIntIncrementor &other ) = delete;
6576 ScopedIntIncrementor &operator=( const ScopedIntIncrementor &other ) = delete;
6577
6578 void release()
6579 {
6580 if ( mVariable )
6581 ( *mVariable )--;
6582
6583 mVariable = nullptr;
6584 }
6585
6586 ~ScopedIntIncrementor()
6587 {
6588 release();
6589 }
6590
6591 private:
6592 int *mVariable = nullptr;
6593};
6595
6601{
6602 return QLatin1String(
6603 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]] )"""
6604 );
6605}
6606
6609{
6610 return QLatin1String( "+proj=longlat +datum=WGS84 +no_defs" );
6611}
6612
6615{
6616 return QLatin1String( "EPSG:4326" );
6617}
6618
6621{
6622 return QLatin1String( "NONE" );
6623}
6624
6626
6628const int PREVIEW_JOB_DELAY_MS = 250;
6629
6631const int MAXIMUM_LAYER_PREVIEW_TIME_MS = 250;
6632
6634
6635#endif
6636
6638const long GEOSRID = 4326;
6639
6641const long GEOCRS_ID = 3452;
6642
6644const long GEO_EPSG_CRS_ID = 4326;
6645
6650const int USER_CRS_START_ID = 100000;
6651
6652//
6653// Constants for point symbols
6654//
6655
6657const double DEFAULT_POINT_SIZE = 2.0;
6658const double DEFAULT_LINE_WIDTH = 0.26;
6659
6661const double DEFAULT_SEGMENT_EPSILON = 1e-8;
6662
6663typedef QMap<QString, QString> QgsStringMap SIP_SKIP;
6664
6673typedef unsigned long long qgssize;
6674
6675#ifndef SIP_RUN
6676#if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) || defined(__clang__)
6677
6678#define Q_NOWARN_DEPRECATED_PUSH \
6679 _Pragma("GCC diagnostic push") \
6680 _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"");
6681#define Q_NOWARN_DEPRECATED_POP \
6682 _Pragma("GCC diagnostic pop");
6683#define Q_NOWARN_UNREACHABLE_PUSH
6684#define Q_NOWARN_UNREACHABLE_POP
6685
6686#elif defined(_MSC_VER)
6687
6688#define Q_NOWARN_DEPRECATED_PUSH \
6689 __pragma(warning(push)) \
6690 __pragma(warning(disable:4996))
6691#define Q_NOWARN_DEPRECATED_POP \
6692 __pragma(warning(pop))
6693#define Q_NOWARN_UNREACHABLE_PUSH \
6694 __pragma(warning(push)) \
6695 __pragma(warning(disable:4702))
6696#define Q_NOWARN_UNREACHABLE_POP \
6697 __pragma(warning(pop))
6698
6699#else
6700
6701#define Q_NOWARN_DEPRECATED_PUSH
6702#define Q_NOWARN_DEPRECATED_POP
6703#define Q_NOWARN_UNREACHABLE_PUSH
6704#define Q_NOWARN_UNREACHABLE_POP
6705
6706#endif
6707#endif
6708
6709#ifndef QGISEXTERN
6710#ifdef Q_OS_WIN
6711# define QGISEXTERN extern "C" __declspec( dllexport )
6712#else
6713# if defined(__GNUC__) || defined(__clang__)
6714# define QGISEXTERN extern "C" __attribute__ ((visibility ("default")))
6715# else
6716# define QGISEXTERN extern "C"
6717# endif
6718#endif
6719#endif
6720#endif
6721
6722// see https://infektor.net/posts/2017-01-19-using-cpp17-attributes-today.html#using-the-nodiscard-attribute
6723#if __cplusplus >= 201703L
6724#define NODISCARD [[nodiscard]]
6725#elif defined(__clang__)
6726#define NODISCARD [[nodiscard]]
6727#elif defined(_MSC_VER)
6728#define NODISCARD // no support
6729#elif defined(__has_cpp_attribute)
6730#if __has_cpp_attribute(nodiscard)
6731#define NODISCARD [[nodiscard]]
6732#elif __has_cpp_attribute(gnu::warn_unused_result)
6733#define NODISCARD [[gnu::warn_unused_result]]
6734#else
6735#define NODISCARD Q_REQUIRED_RESULT
6736#endif
6737#else
6738#define NODISCARD Q_REQUIRED_RESULT
6739#endif
6740
6741#if __cplusplus >= 201703L
6742#define MAYBE_UNUSED [[maybe_unused]]
6743#elif defined(__clang__)
6744#define MAYBE_UNUSED [[maybe_unused]]
6745#elif defined(_MSC_VER)
6746#define MAYBE_UNUSED // no support
6747#elif defined(__has_cpp_attribute)
6748#if __has_cpp_attribute(gnu::unused)
6749#define MAYBE_UNUSED [[gnu::unused]]
6750#else
6751#define MAYBE_UNUSED
6752#endif
6753#else
6754#define MAYBE_UNUSED
6755#endif
6756
6757#ifndef FINAL
6758#define FINAL final
6759#endif
6760
6761#ifndef SIP_RUN
6762#ifdef _MSC_VER
6763#define BUILTIN_UNREACHABLE \
6764 __assume(false);
6765#elif defined(__GNUC__) && !defined(__clang__)
6766// Workaround a GCC bug where a -Wreturn-type warning is emitted in constructs
6767// like:
6768// switch( mVariableThatCanOnlyBeXorY )
6769// {
6770// case X:
6771// return "foo";
6772// case Y:
6773// return "foo";
6774// }
6775// See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87951
6776#define BUILTIN_UNREACHABLE \
6777 __builtin_unreachable();
6778#else
6779#define BUILTIN_UNREACHABLE
6780#endif
6781#endif // SIP_RUN
6782
6783#ifdef SIP_RUN
6784
6789QString CORE_EXPORT geoWkt();
6790
6792QString CORE_EXPORT geoProj4();
6793
6795QString CORE_EXPORT geoEpsgCrsAuthId();
6796
6798QString CORE_EXPORT geoNone();
6799
6800#endif
The Qgis class provides global constants for use throughout the application.
Definition qgis.h:54
DistanceUnitType
Types of distance units.
Definition qgis.h:4822
GnssConstellation
GNSS constellation.
Definition qgis.h:1834
SettingsOption
Settings options.
Definition qgis.h:688
ProfileGeneratorFlag
Flags that control the way the QgsAbstractProfileGenerator operate.
Definition qgis.h:4005
ProcessingSourceType
Processing data source types.
Definition qgis.h:3353
GpsQualityIndicator
GPS signal quality indicator.
Definition qgis.h:1852
DataItemProviderCapability
Capabilities for data item providers.
Definition qgis.h:910
ProcessingFileParameterBehavior
Flags which dictate the behavior of QgsProcessingParameterFile.
Definition qgis.h:3593
QFlags< MapLayerRendererFlag > MapLayerRendererFlags
Flags which control how map layer renderers behave.
Definition qgis.h:2696
ProjectReadFlag
Flags which control project read behavior.
Definition qgis.h:4089
QFlags< BabelCommandFlag > BabelCommandFlags
Babel command flags.
Definition qgis.h:1947
MapToolUnit
Type of unit of tolerance value from settings.
Definition qgis.h:4728
PlotAxisSuffixPlacement
Placement options for suffixes in the labels for axis of plots.
Definition qgis.h:3178
ProcessingModelChildAlgorithmExecutionStatus
Reflects the status of a child algorithm in a Processing model.
Definition qgis.h:3668
QFlags< GpsInformationComponent > GpsInformationComponents
GPS information component.
Definition qgis.h:1914
ScaleBarDistanceLabelHorizontalPlacement
Scale bar distance label horizontal placement.
Definition qgis.h:5056
PointCloudSymbol
Rendering symbols for point cloud points.
Definition qgis.h:4033
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:2001
QFlags< RasterProviderCapability > RasterProviderCapabilities
Raster data provider capabilities.
Definition qgis.h:4653
ExpressionType
Expression types.
Definition qgis.h:5223
MapLayerActionFlag
Map layer action flags.
Definition qgis.h:4399
ScaleBarDistanceLabelVerticalPlacement
Scale bar distance label vertical placement.
Definition qgis.h:5042
MapLayerProperty
Generic map layer properties.
Definition qgis.h:2196
VectorProviderCapability
Vector data provider capabilities.
Definition qgis.h:463
BufferSide
Side of line to buffer.
Definition qgis.h:2026
RasterResamplingStage
Stage at which raster resampling occurs.
Definition qgis.h:1400
QFlags< MapLayerActionTarget > MapLayerActionTargets
Map layer action targets.
Definition qgis.h:4388
VectorTileProviderCapability
Enumeration with capabilities that vector tile data providers might implement.
Definition qgis.h:5269
AltitudeClamping
Altitude clamping.
Definition qgis.h:3782
VectorTileProviderFlag
Flags for vector tile data providers.
Definition qgis.h:5251
VectorTemporalMode
Vector layer temporal feature modes.
Definition qgis.h:2495
SublayerFlag
Flags which reflect the properties of sublayers in a dataset.
Definition qgis.h:1339
QFlags< ProjectCapability > ProjectCapabilities
Flags which control project capabilities.
Definition qgis.h:4130
LabelLinePlacementFlag
Line placement flags, which control how candidates are generated for a linear feature.
Definition qgis.h:1206
QFlags< UriCleaningFlag > UriCleaningFlags
Flags for cleaning layer URIs.
Definition qgis.h:1313
CoordinateDisplayType
Formats for displaying coordinates.
Definition qgis.h:4238
ProcessingParameterTypeFlag
Flags which dictate the behavior of Processing parameter types.
Definition qgis.h:3541
QFlags< VectorRenderingSimplificationFlag > VectorRenderingSimplificationFlags
Simplification flags for vector feature rendering.
Definition qgis.h:2904
DashPatternSizeAdjustment
Dash pattern size adjustment options.
Definition qgis.h:3151
GpsFixStatus
GPS fix status.
Definition qgis.h:1819
AnnotationItemNodeType
Annotation item node types.
Definition qgis.h:2422
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:2639
CrsIdentifierType
Available identifier string types for representing coordinate reference systems.
Definition qgis.h:2332
QFlags< RasterRendererFlag > RasterRendererFlags
Flags which control behavior of raster renderers.
Definition qgis.h:1442
AngularDirection
Angular directions.
Definition qgis.h:3266
DriveType
Drive types.
Definition qgis.h:1057
UnitType
Unit types.
Definition qgis.h:4743
ContentStatus
Status for fetched or stored content.
Definition qgis.h:1775
QFlags< SelectionFlag > SelectionFlags
Flags which control feature selection behavior.
Definition qgis.h:1737
SnappingType
SnappingTypeFlag defines on what object the snapping is performed.
Definition qgis.h:713
LayoutUnit
Layout measurement units.
Definition qgis.h:4950
Q_ENUM(GpsFixStatus)
RelationshipStrength
Relationship strength.
Definition qgis.h:4191
Q_ENUM(GnssConstellation)
MarkerLinePlacement
Defines how/where the symbols should be placed on a line.
Definition qgis.h:2989
QFlags< ProjectReadFlag > ProjectReadFlags
Project load flags.
Definition qgis.h:4108
Point3DShape
3D point shape types.
Definition qgis.h:3924
GeometryOperationResult
Success or failure of a geometry operation.
Definition qgis.h:1972
QFlags< StringStatistic > StringStatistics
Statistics to be calculated for string values.
Definition qgis.h:5611
BrowserItemState
Browser item states.
Definition qgis.h:872
AttributeEditorContainerType
Attribute editor container types.
Definition qgis.h:5164
QFlags< TiledSceneProviderCapability > TiledSceneProviderCapabilities
Tiled scene data provider capabilities.
Definition qgis.h:5312
FeatureRequestFilterType
Types of feature request filters.
Definition qgis.h:2139
MarkerClipMode
Marker clipping modes.
Definition qgis.h:3109
GpsNavigationStatus
GPS navigation status.
Definition qgis.h:1872
AnnotationItemFlag
Flags for annotation items.
Definition qgis.h:2379
RenderSubcomponentProperty
Rendering subcomponent properties.
Definition qgis.h:2913
ProcessingTinInputLayerType
Defines the type of input layer for a Processing TIN input.
Definition qgis.h:3683
QFlags< DataProviderFlag > DataProviderFlags
Data provider flags.
Definition qgis.h:2230
Statistic
Available generic statistics.
Definition qgis.h:5529
SymbolRenderHint
Flags controlling behavior of symbols during rendering.
Definition qgis.h:733
AngleUnit
Units of angles.
Definition qgis.h:4885
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:5194
QFlags< AuthConfigurationStorageCapability > AuthConfigurationStorageCapabilities
Authentication configuration storage capabilities.
Definition qgis.h:145
QFlags< LayerTreeFilterFlag > LayerTreeFilterFlags
Layer tree filter flags.
Definition qgis.h:4331
LayerTreeInsertionMethod
Layer tree insertion methods.
Definition qgis.h:4308
RasterProviderCapability
Raster data provider capabilities.
Definition qgis.h:4633
LineClipMode
Line clipping modes.
Definition qgis.h:3123
VectorRenderingSimplificationFlag
Simplification flags for vector feature rendering.
Definition qgis.h:2889
QFlags< GeometryValidityFlag > GeometryValidityFlags
Geometry validity flags.
Definition qgis.h:2005
BrowserDirectoryMonitoring
Browser directory item monitoring switches.
Definition qgis.h:959
VsiHandlerType
GDAL VSI handler types.
Definition qgis.h:5425
SettingsTreeNodeType
Type of tree node.
Definition qgis.h:618
TilePixelRatio
DpiMode enum.
Definition qgis.h:3206
DatabaseProviderConnectionCapability2
The Capability enum represents the extended operations supported by the connection.
Definition qgis.h:5101
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:4011
LabelPrioritization
Label prioritization.
Definition qgis.h:1111
GradientColorSource
Gradient color sources.
Definition qgis.h:3038
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:4510
QFlags< VectorLayerTypeFlag > VectorLayerTypeFlags
Vector layer type flags.
Definition qgis.h:395
ScaleBarAlignment
Scalebar alignment.
Definition qgis.h:5013
RasterPyramidFormat
Raster pyramid formats.
Definition qgis.h:4549
VectorExportResult
Vector layer export result codes.
Definition qgis.h:983
DistanceUnit
Units of distance.
Definition qgis.h:4760
RasterTemporalCapabilityFlag
Flags for raster layer temporal capabilities.
Definition qgis.h:2566
SymbolLayerFlag
Flags controlling behavior of symbol layers.
Definition qgis.h:814
MeshRangeLimit
Describes the limits used to compute mesh ranges (min/max values).
Definition qgis.h:5725
GradientSpread
Gradient spread options, which control how gradients are rendered outside of their start and end poin...
Definition qgis.h:3082
QFlags< AnnotationItemGuiFlag > AnnotationItemGuiFlags
Annotation item GUI flags.
Definition qgis.h:2412
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:1474
ScaleMethod
Scale methods.
Definition qgis.h:588
SldExportOption
SLD export options.
Definition qgis.h:660
VectorSimplificationAlgorithm
Simplification algorithms for vector features.
Definition qgis.h:2873
FilePathType
File path types.
Definition qgis.h:1606
CadConstraintType
Advanced digitizing constraint type.
Definition qgis.h:3874
AttributeFormPythonInitCodeSource
The Python init code source for attribute forms.
Definition qgis.h:5209
PointCountMethod
Methods which define the number of points randomly filling a polygon.
Definition qgis.h:3097
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:3292
LayerTreeFilterFlag
Layer tree filter flags.
Definition qgis.h:4321
AttributeFormLayout
Available form types for layout of the attribute form editor.
Definition qgis.h:5179
FeatureRequestFlag
Flags for controlling feature requests.
Definition qgis.h:2111
VertexType
Types of vertex.
Definition qgis.h:2926
ShaderInterpolationMethod
Color ramp shader interpolation methods.
Definition qgis.h:1355
DataProviderFlag
Generic data provider flags.
Definition qgis.h:2224
Q_ENUM(GpsNavigationStatus)
GdalResampleAlgorithm
Resampling algorithm to be used (equivalent to GDAL's enum GDALResampleAlg)
Definition qgis.h:5403
RasterResamplingMethod
Resampling method for raster provider-level resampling.
Definition qgis.h:1414
GeometryValidationEngine
Available engines for validating geometries.
Definition qgis.h:2014
TransactionMode
Transaction mode.
Definition qgis.h:3769
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:4662
RasterDrawingStyle
Raster drawing styles.
Definition qgis.h:4526
GeosCreationFlag
Flags which control geos geometry creation behavior.
Definition qgis.h:2064
MeshRangeExtent
Describes the extent used to compute mesh ranges (min/max values).
Definition qgis.h:5737
GpsInformationComponent
GPS information component.
Definition qgis.h:1886
ViewSyncModeFlag
Synchronization of 2D map canvas and 3D view.
Definition qgis.h:3311
ProcessingProviderFlag
Flags indicating how and when an processing provider operates and should be exposed to users.
Definition qgis.h:3379
FileOperationFlag
File operation flags.
Definition qgis.h:2181
QFlags< DataItemProviderCapability > DataItemProviderCapabilities
Capabilities for data item providers.
Definition qgis.h:926
ProjectCapability
Flags which control project capabilities.
Definition qgis.h:4120
QFlags< BabelFormatCapability > BabelFormatCapabilities
Babel GPS format capabilities.
Definition qgis.h:1932
QFlags< SymbolLayerFlag > SymbolLayerFlags
Symbol layer flags.
Definition qgis.h:821
QFlags< RasterInterfaceCapability > RasterInterfaceCapabilities
Raster interface capabilities.
Definition qgis.h:4620
Q_ENUM(VectorProfileType)
AttributeActionType
Attribute action types.
Definition qgis.h:4422
TemporalNavigationMode
Temporal navigation modes.
Definition qgis.h:2449
ProcessingFieldParameterDataType
Processing field parameter data types.
Definition qgis.h:3621
AreaUnit
Units of area.
Definition qgis.h:4837
StringStatistic
Available string statistics.
Definition qgis.h:5591
FieldDomainMergePolicy
Merge policy for field domains.
Definition qgis.h:3728
ZonalStatistic
Statistics to be calculated during a zonal statistics operation.
Definition qgis.h:5444
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:3166
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:5321
TextLayoutMode
Text layout modes.
Definition qgis.h:2782
PropertyType
Property types.
Definition qgis.h:646
QFlags< RenderContextFlag > RenderContextFlags
Render context flags.
Definition qgis.h:2674
LayerFilter
Filter for layers.
Definition qgis.h:188
Q_ENUM(ProviderStyleStorageCapability)
QFlags< SublayerFlag > SublayerFlags
Sublayer flags.
Definition qgis.h:1343
RasterRendererFlag
Flags which control behavior of raster renderers.
Definition qgis.h:1432
PythonEmbeddedMode
Authorisation to run Python Embedded in projects.
Definition qgis.h:403
CrsType
Coordinate reference system types.
Definition qgis.h:2242
QFlags< GeosCreationFlag > GeosCreationFlags
Geos geometry creation behavior flags.
Definition qgis.h:2075
SensorThingsEntity
OGC SensorThings API entity types.
Definition qgis.h:5647
MeshEditingErrorType
Type of error that can occur during mesh frame editing.
Definition qgis.h:1589
FieldDomainSplitPolicy
Split policy for field domains.
Definition qgis.h:3711
ArcGisRestServiceType
Available ArcGIS REST service types.
Definition qgis.h:4158
UriCleaningFlag
Flags for cleaning layer URIs.
Definition qgis.h:1302
RasterFileWriterResult
Raster file export results.
Definition qgis.h:1572
AnnotationItemEditOperationResult
Results from an edit operation on an annotation item.
Definition qgis.h:2434
ProcessingPropertyAvailability
Property availability, used for QgsProcessingAlgorithm::VectorProperties in order to determine if pro...
Definition qgis.h:3462
MapRecenteringMode
Modes for recentering map canvases.
Definition qgis.h:3324
RasterRangeAccuracy
Describes the accuracy used to compute raster ranges (min/max values).
Definition qgis.h:1505
ActionType
Action types.
Definition qgis.h:4358
ActionStart
Enum to determine when an operation would begin.
Definition qgis.h:1074
PlaybackOperation
Media playback operations.
Definition qgis.h:2478
QFlags< SymbolLayerUserFlag > SymbolLayerUserFlags
Symbol layer user flags.
Definition qgis.h:844
QFlags< TextRendererFlag > TextRendererFlags
Definition qgis.h:3245
ProviderStyleStorageCapability
The StorageCapability enum represents the style storage operations supported by the provider.
Definition qgis.h:5115
AvoidIntersectionsMode
Flags which control how intersections of pre-existing feature are handled when digitizing new feature...
Definition qgis.h:4060
MarkerShape
Marker shapes.
Definition qgis.h:2940
LegendJsonRenderFlag
Legend JSON export flags.
Definition qgis.h:4343
BlendMode
Blending modes defining the available composition modes that can be used when painting.
Definition qgis.h:4677
RasterElevationMode
Raster layer elevation modes.
Definition qgis.h:3821
Capitalization
String capitalization options.
Definition qgis.h:3223
TemporalIntervalMatchMethod
Method to use when resolving a temporal range to a data provider layer or band.
Definition qgis.h:2551
PictureFormat
Picture formats.
Definition qgis.h:4984
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:3912
ScaleToTileZoomLevelMethod
Available methods for converting map scales to tile zoom levels.
Definition qgis.h:3254
SublayerQueryFlag
Flags which control how data providers will scan for sublayers in a dataset.
Definition qgis.h:1322
QFlags< VectorFileWriterCapability > VectorFileWriterCapabilities
Capabilities supported by a QgsVectorFileWriter object.
Definition qgis.h:1014
TextOrientation
Text orientations.
Definition qgis.h:2767
TemporalUnit
Temporal units.
Definition qgis.h:4906
QFlags< RasterRendererCapability > RasterRendererCapabilities
Raster renderer capabilities.
Definition qgis.h:1463
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:3696
SpatialFilterType
Feature request spatial filter types.
Definition qgis.h:2168
QFlags< ProcessingParameterTypeFlag > ProcessingParameterTypeFlags
Flags which dictate the behavior of Processing parameter types.
Definition qgis.h:3556
TileAvailability
Possible availability states for a tile within a tile matrix.
Definition qgis.h:5288
ProjectFlag
Flags which control the behavior of QgsProjects.
Definition qgis.h:3892
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:2128
SettingsType
Types of settings entries.
Definition qgis.h:599
QFlags< SettingsOption > SettingsOptions
Definition qgis.h:693
RasterTemporalMode
Raster layer temporal modes.
Definition qgis.h:2536
RasterAttributeTableType
The RasterAttributeTableType enum represents the type of RAT.
Definition qgis.h:1546
LabelingFlag
Various flags that affect drawing and placement of labels.
Definition qgis.h:2722
GeometryType
The geometry types are used to group Qgis::WkbType in a coarse way.
Definition qgis.h:337
RelationshipType
Relationship types.
Definition qgis.h:4177
ScriptLanguageCapability
Script language capabilities.
Definition qgis.h:4287
RasterInterfaceCapability
Raster interface capabilities.
Definition qgis.h:4600
JoinStyle
Join styles for buffers.
Definition qgis.h:2051
PointCloudDrawOrder
Pointcloud rendering order for 2d views.
Definition qgis.h:4045
QFlags< RasterBandStatistic > RasterBandStatistics
Statistics to be calculated for raster bands.
Definition qgis.h:5638
ProcessingAlgorithmDocumentationFlag
Flags describing algorithm behavior for documentation purposes.
Definition qgis.h:3439
TextCharacterVerticalAlignment
Text vertical alignment for characters.
Definition qgis.h:2858
FieldDuplicatePolicy
Duplicate policy for fields.
Definition qgis.h:3743
UserProfileSelectionPolicy
User profile selection policy.
Definition qgis.h:5130
QFlags< FileOperationFlag > FileOperationFlags
File operation flags.
Definition qgis.h:2186
DpiMode
DpiMode enum.
Definition qgis.h:3192
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:3430
AltitudeBinding
Altitude binding.
Definition qgis.h:3795
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:5381
MapLayerActionTarget
Map layer action targets.
Definition qgis.h:4373
ShaderClassificationMethod
Color ramp shader classification methods.
Definition qgis.h:1370
ZonalStatisticResult
Zonal statistics result codes.
Definition qgis.h:5479
ScriptLanguage
Scripting languages.
Definition qgis.h:4264
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:5302
LabelMultiLineAlignment
Text alignment for multi-line labels.
Definition qgis.h:1269
RasterBandStatistic
Available raster band statistics.
Definition qgis.h:5620
QFlags< VectorTileProviderCapability > VectorTileProviderCapabilities
Vector tile data provider capabilities.
Definition qgis.h:5279
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:5470
VectorDataProviderTemporalMode
Vector data provider temporal handling modes.
Definition qgis.h:2523
TextRenderFormat
Options for rendering text.
Definition qgis.h:2707
DocumentationBrowser
Documentation API browser.
Definition qgis.h:5693
DataType
Raster data types.
Definition qgis.h:351
Q_ENUM(ProfileSurfaceSymbology)
QFlags< ViewSyncModeFlag > ViewSyncModeFlags
Definition qgis.h:3316
QFlags< SublayerQueryFlag > SublayerQueryFlags
Sublayer query flags.
Definition qgis.h:1329
SystemOfMeasurement
Systems of unit measurement.
Definition qgis.h:4713
RasterAttributeTableFieldUsage
The RasterAttributeTableFieldUsage enum represents the usage of a Raster Attribute Table field.
Definition qgis.h:1517
VerticalAxisInversion
Vertical axis inversion options for 3D views.
Definition qgis.h:3967
QFlags< CoordinateTransformationFlag > CoordinateTransformationFlags
Coordinate transformation flags.
Definition qgis.h:2608
RelationshipCapability
Relationship capabilities.
Definition qgis.h:4217
RasterBuildPyramidOption
Raster pyramid building options.
Definition qgis.h:4564
QFlags< VectorProviderCapability > VectorProviderCapabilities
Vector data provider capabilities.
Definition qgis.h:500
NavigationMode
The navigation mode used by 3D cameras.
Definition qgis.h:3955
LinearReferencingPlacement
Defines how/where the labels should be placed in a linear referencing symbol layer.
Definition qgis.h:3009
TileChildrenAvailability
Possible availability states for a tile's children.
Definition qgis.h:5349
PointCloudZoomOutRenderBehavior
Point cloud zoom out options.
Definition qgis.h:5762
LayerType
Types of layers that can be added to a map.
Definition qgis.h:169
QFlags< AnnotationItemFlag > AnnotationItemFlags
Annotation item flags.
Definition qgis.h:2385
FieldOrigin
Field origin.
Definition qgis.h:1634
LinearReferencingLabelSource
Defines what quantity to use for the labels shown in a linear referencing symbol layer.
Definition qgis.h:3023
RasterRangeExtent
Describes the extent used to compute raster ranges (min/max values).
Definition qgis.h:1490
QFlags< Statistic > Statistics
Statistics to be calculated for generic values.
Definition qgis.h:5557
PlotToolFlag
Flags that control the way the QgsPlotTools operate.
Definition qgis.h:3908
RenderUnit
Rendering size units.
Definition qgis.h:4930
CoordinateOrder
Order of coordinates.
Definition qgis.h:2317
SelectionFlag
Flags which control feature selection behavior.
Definition qgis.h:1727
QFlags< SettingsTreeNodeOption > SettingsTreeNodeOptions
Definition qgis.h:635
EndCapStyle
End cap styles for buffers.
Definition qgis.h:2038
ScaleCalculationMethod
Scale calculation logic.
Definition qgis.h:4997
QFlags< TiledSceneRequestFlag > TiledSceneRequestFlags
Flags which control how tiled scene requests behave.
Definition qgis.h:5372
QFlags< MapLayerActionFlag > MapLayerActionFlags
Map layer action flags.
Definition qgis.h:4411
QFlags< MapLayerProperty > MapLayerProperties
Map layer properties.
Definition qgis.h:2201
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:1943
QFlags< LabelingFlag > LabelingFlags
Flags that affect drawing and placement of labels.
Definition qgis.h:2742
FieldDomainType
Types of field domain.
Definition qgis.h:3756
MapLayerRendererFlag
Flags which control how map layer renderers behave.
Definition qgis.h:2684
RenderContextFlag
Flags which affect rendering operations.
Definition qgis.h:2649
RasterPipeInterfaceRole
Raster pipe interface roles.
Definition qgis.h:1383
CoverageValidityResult
Coverage validity results.
Definition qgis.h:2084
DataProviderReadFlag
Flags which control data provider construction.
Definition qgis.h:431
ScaleBarSegmentSizeMode
Modes for setting size for scale bar segments.
Definition qgis.h:5028
Aggregate
Available aggregates to calculate.
Definition qgis.h:5497
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:2408
MapBoxGlStyleSourceType
Available MapBox GL style source types.
Definition qgis.h:4139
LayoutUnitType
Types of layout units.
Definition qgis.h:4970
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:3136
FieldMetadataProperty
Standard field metadata values.
Definition qgis.h:1675
TiledSceneRequestFlag
Flags which control how tiled scene requests behave.
Definition qgis.h:5362
RasterRendererCapability
Raster renderer capabilities.
Definition qgis.h:1453
VertexMarkerType
Editing vertex markers, used for showing vertices during a edit operation.
Definition qgis.h:1763
HistoryProviderBackend
History provider backends.
Definition qgis.h:3337
RasterExportType
Raster file export types.
Definition qgis.h:1559
SublayerPromptMode
Specifies how to handle layer sources with multiple sublayers.
Definition qgis.h:1618
TextVerticalAlignment
Text vertical alignment.
Definition qgis.h:2842
RelationshipCardinality
Relationship cardinality.
Definition qgis.h:4203
GradientType
Gradient types.
Definition qgis.h:3052
QFlags< ScriptLanguageCapability > ScriptLanguageCapabilities
Script language capabilities.
Definition qgis.h:4299
VectorProfileType
Types of elevation profiles to generate for vector sources.
Definition qgis.h:3993
GpsFeatureType
GPS feature types.
Definition qgis.h:1957
VectorLayerTypeFlag
Vector layer type flags.
Definition qgis.h:390
MakeValidMethod
Algorithms to use when repairing invalid geometries.
Definition qgis.h:2097
RangeLimits
Describes how the limits of a range are handled.
Definition qgis.h:3807
QFlags< ProjectFlag > ProjectFlags
Definition qgis.h:3899
VectorTemporalLimitMode
Mode for the handling of the limits of the filtering timeframe for vector features.
Definition qgis.h:2511
QFlags< ProcessingParameterFlag > ProcessingParameterFlags
Flags which dictate the behavior of Processing parameters.
Definition qgis.h:3582
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:1748
QFlags< VectorDataProviderAttributeEditCapability > VectorDataProviderAttributeEditCapabilities
Attribute editing capabilities which may be supported by vector data providers.
Definition qgis.h:566
Axis
Cartesian axes.
Definition qgis.h:2366
QFlags< ProcessingAlgorithmDocumentationFlag > ProcessingAlgorithmDocumentationFlags
Flags describing algorithm behavior for documentation purposes.
Definition qgis.h:3450
QFlags< RelationshipCapability > RelationshipCapabilities
Relationship capabilities.
Definition qgis.h:4229
QFlags< SymbolRenderHint > SymbolRenderHints
Symbol render hints.
Definition qgis.h:741
VolumeUnit
Units of volume.
Definition qgis.h:4862
AttributeEditorType
Attribute editor types.
Definition qgis.h:5145
QFlags< LegendJsonRenderFlag > LegendJsonRenderFlags
Definition qgis.h:4347
QFlags< ProviderStyleStorageCapability > ProviderStyleStorageCapabilities
Definition qgis.h:5121
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:2155
QFlags< SymbolFlag > SymbolFlags
Symbol flags.
Definition qgis.h:787
QFlags< ProcessingFeatureSourceDefinitionFlag > ProcessingFeatureSourceDefinitionFlags
Flags which control behavior for a Processing feature source.
Definition qgis.h:3504
PointCloudAccessType
The access type of the data, local is for local files and remote for remote files (over HTTP).
Definition qgis.h:5751
ProfileExportType
Types of export for elevation profiles.
Definition qgis.h:4020
MeshElevationMode
Mesh layer elevation modes.
Definition qgis.h:3835
ProjectFileFormat
Flags which control project read behavior.
Definition qgis.h:4075
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:4459
ProfileSurfaceSymbology
Surface symbology type for elevation profile plots.
Definition qgis.h:3980
LabelPlacementEngineVersion
Labeling placement engine version.
Definition qgis.h:2753
Q_ENUM(ProcessingAlgorithmFlag)
ColorModel
Color model types.
Definition qgis.h:5667
RendererUsage
Usage of the renderer.
Definition qgis.h:3279
SettingsTreeNodeOption
Options for named list nodes.
Definition qgis.h:630
BabelFormatCapability
Babel GPS format capabilities.
Definition qgis.h:1924
PostgresRelKind
Postgres database relkind options.
Definition qgis.h:5080
SegmentCalculationMethod
brief Method used to calculate the number of segments for circle approximation
Definition qgis.h:5774
GpsConnectionType
GPS connection types.
Definition qgis.h:1790
Q_ENUM(InputControllerType)
QFlags< DatabaseProviderConnectionCapability2 > DatabaseProviderConnectionCapabilities2
Definition qgis.h:5106
MouseHandlesAction
Action to be performed by the mouse handles.
Definition qgis.h:5705
ProcessingFeatureSourceDefinitionFlag
Flags which control behavior for a Processing feature source.
Definition qgis.h:3491
QFlags< TextComponent > TextComponents
Text components.
Definition qgis.h:2812
LoadStyleFlag
Flags for loading layer styles.
Definition qgis.h:215
BetweenLineConstraint
Between line constraints which can be enabled.
Definition qgis.h:3848
QFlags< VectorTileProviderFlag > VectorTileProviderFlags
Vector tile data provider flags.
Definition qgis.h:5261
MetadataDateType
Date types for metadata.
Definition qgis.h:4440
QFlags< RasterTemporalCapabilityFlag > RasterTemporalCapabilityFlags
Flags for raster layer temporal capabilities.
Definition qgis.h:2576
ProcessingFeatureSourceFlag
Flags which control how QgsProcessingFeatureSource fetches features.
Definition qgis.h:3515
RasterIdentifyFormat
Raster identify formats.
Definition qgis.h:4579
TextHorizontalAlignment
Text horizontal alignment.
Definition qgis.h:2823
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:3861
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:3067
QFlags< ProcessingProviderFlag > ProcessingProviderFlags
Flags indicating how and when an processing provider operates and should be exposed to users.
Definition qgis.h:3392
TileRefinementProcess
Tiled scene tile refinement processes.
Definition qgis.h:5337
QFlags< DateTimeStatistic > DateTimeStatistics
Statistics to be calculated for date/time values.
Definition qgis.h:5582
SelectionRenderingMode
Specifies how a selection should be rendered.
Definition qgis.h:1688
InputControllerType
Input controller types.
Definition qgis.h:5068
TextRendererFlag
Flags which control the behavior of rendering text.
Definition qgis.h:3241
SelectGeometryRelationship
Geometry relationship test to apply for selecting features.
Definition qgis.h:1715
CrsAxisDirection
Coordinate reference system axis directions.
Definition qgis.h:2267
ProcessingModelChildParameterSource
Processing model child parameter sources.
Definition qgis.h:3652
QFlags< MarkerLinePlacement > MarkerLinePlacements
Definition qgis.h:3000
QFlags< MapCanvasFlag > MapCanvasFlags
Flags controlling behavior of map canvases.
Definition qgis.h:3302
CrsWktVariant
Coordinate reference system WKT formatting variants.
Definition qgis.h:2347
QFlags< TiledSceneRendererFlag > TiledSceneRendererFlags
Flags which control how tiled scene 2D renderers behave.
Definition qgis.h:5394
DocumentationApi
Documentation API.
Definition qgis.h:5679
AutoRefreshMode
Map layer automatic refresh modes.
Definition qgis.h:2211
AnnotationPlacementMode
Annotation item placement modes.
Definition qgis.h:2395
ProcessingAlgorithmFlag
Flags indicating how and when an algorithm operates and should be exposed to users.
Definition qgis.h:3403
FieldConfigurationFlag
Configuration flags for fields These flags are meant to be user-configurable and are not describing a...
Definition qgis.h:1651
SettingsOrigin
The setting origin describes where a setting is stored.
Definition qgis.h:4251
ProcessingParameterFlag
Flags which dictate the behavior of Processing parameters.
Definition qgis.h:3567
LabelOverlapHandling
Label overlap handling.
Definition qgis.h:1098
FeatureSymbologyExport
Options for exporting features considering their symbology.
Definition qgis.h:5238
QFlags< LayerFilter > LayerFilters
Definition qgis.h:206
ProcessingDateTimeParameterDataType
Processing date time parameter data types.
Definition qgis.h:3639
CoordinateTransformationFlag
Flags which adjust the coordinate transformations behave.
Definition qgis.h:2597
TextComponent
Text components.
Definition qgis.h:2799
DateTimeStatistic
Available date/time statistics.
Definition qgis.h:5566
AnimationState
Animation states.
Definition qgis.h:2465
TransformDirection
Indicates the direction (forward or inverse) of a transform.
Definition qgis.h:2585
LightSourceType
Light source types for 3D scenes.
Definition qgis.h:3943
QFlags< ProcessingFeatureSourceFlag > ProcessingFeatureSourceFlags
Flags which control how QgsProcessingFeatureSource fetches features.
Definition qgis.h:3527
QFlags< HistoryProviderBackend > HistoryProviderBackends
Definition qgis.h:3342
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:1666
UpsideDownLabelHandling
Handling techniques for upside down labels.
Definition qgis.h:1254
DeviceConnectionStatus
GPS connection status.
Definition qgis.h:1804
ProcessingNumberParameterType
Processing numeric parameter data types.
Definition qgis.h:3607
MapSettingsFlag
Flags which adjust the way maps are rendered.
Definition qgis.h:2617
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:3476
SelectBehavior
Specifies how a selection should be applied.
Definition qgis.h:1701
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:5989
Object * operator->()
Returns pointer to blocked QObject.
Definition qgis.h:6007
QgsSignalBlocker(Object *object)
Constructor for QgsSignalBlocker.
Definition qgis.h:5996
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:6620
const double DEFAULT_LINE_WIDTH
Definition qgis.h:6658
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:6512
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:6335
QString qgsDoubleToString(double a, int precision=17)
Returns a string representation of a double.
Definition qgis.h:6042
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:6199
QString qgsEnumValueToKey(const T &value, bool *returnOk=nullptr)
Returns the value for the given key of an enum.
Definition qgis.h:6316
QString qgsFlagValueToKeys(const T &value, bool *returnOk=nullptr)
Returns the value for the given keys of a flag.
Definition qgis.h:6374
const long GEO_EPSG_CRS_ID
Magic number for a geographic coord sys in EpsgCrsId ID format.
Definition qgis.h:6644
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:6182
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:6396
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:6673
const QMap< T, QString > qgsEnumMap()
Returns a map of all enum entries.
Definition qgis.h:6299
bool qgsFloatNear(float a, float b, float epsilon=4 *FLT_EPSILON)
Compare two floats (but allow some difference)
Definition qgis.h:6136
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:6216
const QList< T > qgsEnumList()
Returns a list all enum entries.
Definition qgis.h:6282
double qgsRound(double number, int places)
Returns a double number, rounded (as close as possible) to the specified number of places.
Definition qgis.h:6166
bool qgsDoubleNear(double a, double b, double epsilon=4 *std::numeric_limits< double >::epsilon())
Compare two doubles (but allow some difference)
Definition qgis.h:6125
CONSTLATIN1STRING geoProj4()
PROJ4 string that represents a geographic coord sys.
Definition qgis.h:6608
bool qgsNanCompatibleEquals(double a, double b)
Compare two doubles, treating nan values as equal.
Definition qgis.h:6087
QgsSignalBlocker< Object > whileBlocking(Object *object)
Temporarily blocks signals from a QObject while calling a single method from the object.
Definition qgis.h:6029
const double DEFAULT_SEGMENT_EPSILON
Default snapping tolerance for segments.
Definition qgis.h:6661
QMap< QString, QString > QgsStringMap
Definition qgis.h:6663
#define CONSTLATIN1STRING
Definition qgis.h:6561
CONSTLATIN1STRING geoWkt()
Wkt string that represents a geographic coord sys.
Definition qgis.h:6600
bool qgsDoubleNearSig(double a, double b, int significantDigits=10)
Compare two doubles using specified number of significant digits.
Definition qgis.h:6142
const int USER_CRS_START_ID
Magick number that determines whether a projection crsid is a system (srs.db) or user (~/....
Definition qgis.h:6650
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:6107
const long GEOSRID
Magic number for a geographic coord sys in POSTGIS SRID.
Definition qgis.h:6638
#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:6526
CONSTLATIN1STRING geoEpsgCrsAuthId()
Geographic coord sys from EPSG authority.
Definition qgis.h:6614
const long GEOCRS_ID
Magic number for a geographic coord sys in QGIS srs.db tbl_srs.srs_id.
Definition qgis.h:6641
const double DEFAULT_POINT_SIZE
Magic number that determines the default point size for point symbols.
Definition qgis.h:6657
#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