QGIS API Documentation 3.42.0-Münster (feb80233002)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
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
4342 {
4343 Undefined,
4344 Hidden,
4345 Title,
4346 Group,
4347 Subgroup,
4348 Symbol,
4349 SymbolLabel,
4350 };
4351 Q_ENUM( LegendComponent )
4352
4353
4360 enum class LegendJsonRenderFlag : int SIP_ENUM_BASETYPE( IntFlag )
4361 {
4362 ShowRuleDetails = 1 << 0,
4363 };
4364 Q_ENUM( LegendJsonRenderFlag )
4366 Q_FLAG( LegendJsonRenderFlags )
4367
4375 enum class ActionType : int
4376 {
4377 Invalid,
4378 MapLayerAction,
4379 AttributeAction
4380 };
4381 Q_ENUM( ActionType )
4382
4383
4390 enum class MapLayerActionTarget : int SIP_ENUM_BASETYPE( IntFlag )
4391 {
4392 Layer = 1 << 0,
4393 SingleFeature = 1 << 1,
4394 MultipleFeatures = 1 << 2,
4395 AllActions = Layer | SingleFeature | MultipleFeatures
4396 };
4397 Q_ENUM( MapLayerActionTarget )
4398
4399
4407 Q_FLAG( MapLayerActionTargets )
4408
4416 enum class MapLayerActionFlag : int SIP_ENUM_BASETYPE( IntFlag )
4417 {
4418 EnabledOnlyWhenEditable = 1 << 1,
4419 EnableOnlyWhenHasGeometry = 1 << 2,
4420 };
4421 Q_ENUM( MapLayerActionFlag )
4422
4423
4431 Q_FLAG( MapLayerActionFlags )
4432
4441 {
4442 Generic,
4443 GenericPython,
4444 Mac,
4445 Windows,
4446 Unix,
4447 OpenUrl,
4448 SubmitUrlEncoded,
4449 SubmitUrlMultipart,
4450 };
4451 Q_ENUM( AttributeActionType )
4452
4453
4459 {
4460 Created,
4461 Published,
4462 Revised,
4463 Superseded,
4464 };
4465 Q_ENUM( MetadataDateType )
4466
4467
4478 {
4479 Undefined SIP_MONKEYPATCH_COMPAT_NAME( UndefinedColorInterpretation ) = 0,
4480 GrayIndex = 1,
4481 PaletteIndex = 2,
4482 RedBand = 3,
4483 GreenBand = 4,
4484 BlueBand = 5,
4485 AlphaBand = 6,
4486 HueBand = 7,
4487 SaturationBand = 8,
4488 LightnessBand = 9,
4489 CyanBand = 10,
4490 MagentaBand = 11,
4491 YellowBand = 12,
4492 BlackBand = 13,
4493 YCbCr_YBand = 14,
4494 YCbCr_CbBand = 15,
4495 YCbCr_CrBand = 16,
4496 ContinuousPalette = 17,
4497
4498 // Note: values between PanBand and SAR_P_Band match additions done in
4499 // GDAL 3.10, except that the numeric values of the constant don't match GDAL ones
4500
4501 PanBand = 18,
4502 CoastalBand = 19,
4503 RedEdgeBand = 20,
4504 NIRBand = 21,
4505 SWIRBand = 22,
4506 MWIRBand = 23,
4507 LWIRBand = 24,
4508 TIRBand = 25,
4509 OtherIRBand = 26,
4510 SAR_Ka_Band = 27,
4511 SAR_K_Band = 28,
4512 SAR_Ku_Band = 30,
4513 SAR_X_Band = 31,
4514 SAR_C_Band = 32,
4515 SAR_S_Band = 33,
4516 SAR_L_Band = 34,
4517 SAR_P_Band = 35,
4518 };
4519 Q_ENUM( RasterColorInterpretation )
4520
4521
4529 {
4530 GrayOrUndefined,
4531 Palette,
4532 MultiBand SIP_MONKEYPATCH_COMPAT_NAME( Multiband ),
4533 SingleBandColorData SIP_MONKEYPATCH_COMPAT_NAME( ColorLayer ),
4534 };
4535 Q_ENUM( RasterLayerType )
4536
4537
4545 {
4546 Undefined SIP_MONKEYPATCH_COMPAT_NAME( UndefinedDrawingStyle ),
4547 SingleBandGray,
4548 SingleBandPseudoColor,
4549 PalettedColor,
4550 PalettedSingleBandGray,
4551 PalettedSingleBandPseudoColor,
4552 PalettedMultiBandColor,
4553 MultiBandSingleBandGray,
4554 MultiBandSingleBandPseudoColor,
4555 MultiBandColor,
4556 SingleBandColorData SIP_MONKEYPATCH_COMPAT_NAME( SingleBandColorDataStyle ),
4557 };
4558 Q_ENUM( RasterDrawingStyle )
4559
4560
4567 enum class RasterPyramidFormat SIP_MONKEYPATCH_SCOPEENUM_UNNEST( QgsRaster, RasterPyramidsFormat ) : int
4568 {
4569 GeoTiff SIP_MONKEYPATCH_COMPAT_NAME( PyramidsGTiff ) = 0,
4570 Internal SIP_MONKEYPATCH_COMPAT_NAME( PyramidsInternal ) = 1,
4571 Erdas SIP_MONKEYPATCH_COMPAT_NAME( PyramidsErdas ) = 2
4572 };
4573 Q_ENUM( RasterPyramidFormat )
4574
4575
4583 {
4584 No SIP_MONKEYPATCH_COMPAT_NAME( PyramidsFlagNo ) = 0,
4585 Yes SIP_MONKEYPATCH_COMPAT_NAME( PyramidsFlagYes ) = 1,
4586 CopyExisting SIP_MONKEYPATCH_COMPAT_NAME( PyramidsCopyExisting ) = 2
4587 };
4588 Q_ENUM( RasterBuildPyramidOption )
4589
4590
4598 {
4599 Undefined SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatUndefined ) = 0,
4600 Value SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatValue ) = 1,
4601 Text SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatText ) = 1 << 1,
4602 Html SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatHtml ) = 1 << 2,
4603 Feature SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatFeature ) = 1 << 3,
4604 };
4605 Q_ENUM( RasterIdentifyFormat )
4606
4607 // TODO QGIS 4 -- remove NoCapabilities and rely on RasterInterfaceCapabilities() instead
4608 // remove deprecated members
4609 // Remove "Identify" member, and replace with combinations of IdentifyValue/IdentifyText/etc
4610
4611
4619 {
4620 NoCapabilities = 0,
4621 Size = 1 << 1,
4622 Create = 1 << 2,
4623 Remove = 1 << 3,
4624 BuildPyramids = 1 << 4,
4625 Identify = 1 << 5,
4626 IdentifyValue = 1 << 6,
4627 IdentifyText = 1 << 7,
4628 IdentifyHtml = 1 << 8,
4629 IdentifyFeature = 1 << 9,
4630 Prefetch = 1 << 10,
4631 };
4632 Q_ENUM( RasterInterfaceCapability )
4633
4634
4641
4642 // TODO QGIS 4 -- remove NoProviderCapabilities and rely on RasterProviderCapabilities() instead
4643
4652 {
4653 NoProviderCapabilities = 0,
4654 ReadLayerMetadata = 1 << 1,
4655 WriteLayerMetadata = 1 << 2,
4656 ProviderHintBenefitsFromResampling = 1 << 3,
4657 ProviderHintCanPerformProviderResampling = 1 << 4,
4658 ReloadData = 1 << 5,
4659 DpiDependentData = 1 << 6,
4660 NativeRasterAttributeTable = 1 << 7,
4661 BuildPyramids = 1 << 8,
4662 };
4663 Q_ENUM( RasterProviderCapability )
4664
4665
4674
4681 {
4682 HighestElevation,
4683 NewerElevation,
4684 };
4685 Q_ENUM( ElevationMapCombineMethod )
4686
4687
4696 {
4697 Normal SIP_MONKEYPATCH_COMPAT_NAME( BlendNormal ),
4698 Lighten SIP_MONKEYPATCH_COMPAT_NAME( BlendLighten ),
4699 Screen SIP_MONKEYPATCH_COMPAT_NAME( BlendScreen ),
4700 Dodge SIP_MONKEYPATCH_COMPAT_NAME( BlendDodge ),
4701 Addition SIP_MONKEYPATCH_COMPAT_NAME( BlendAddition ),
4702 Darken SIP_MONKEYPATCH_COMPAT_NAME( BlendDarken ),
4703 Multiply SIP_MONKEYPATCH_COMPAT_NAME( BlendMultiply ),
4704 Burn SIP_MONKEYPATCH_COMPAT_NAME( BlendBurn ),
4705 Overlay SIP_MONKEYPATCH_COMPAT_NAME( BlendOverlay ),
4706 SoftLight SIP_MONKEYPATCH_COMPAT_NAME( BlendSoftLight ),
4707 HardLight SIP_MONKEYPATCH_COMPAT_NAME( BlendHardLight ),
4708 Difference SIP_MONKEYPATCH_COMPAT_NAME( BlendDifference ),
4709 Subtract SIP_MONKEYPATCH_COMPAT_NAME( BlendSubtract ),
4710 Source SIP_MONKEYPATCH_COMPAT_NAME( BlendSource ),
4711 DestinationOver SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationOver ),
4712 Clear SIP_MONKEYPATCH_COMPAT_NAME( BlendClear ),
4713 Destination SIP_MONKEYPATCH_COMPAT_NAME( BlendDestination ),
4714 SourceIn SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceIn ),
4715 DestinationIn SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationIn ),
4716 SourceOut SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceOut ),
4717 DestinationOut SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationOut ),
4718 SourceAtop SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceAtop ),
4719 DestinationAtop SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationAtop ),
4720 Xor SIP_MONKEYPATCH_COMPAT_NAME( BlendXor ),
4721 };
4722 Q_ENUM( BlendMode )
4723
4724
4732 {
4733 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownSystem ) = 0,
4734 Metric SIP_MONKEYPATCH_COMPAT_NAME( MetricSystem ),
4735 Imperial SIP_MONKEYPATCH_COMPAT_NAME( ImperialSystem ),
4736 USCS SIP_MONKEYPATCH_COMPAT_NAME( USCSSystem ),
4737 };
4738 Q_ENUM( SystemOfMeasurement )
4739
4740
4747 {
4748 Layer SIP_MONKEYPATCH_COMPAT_NAME( LayerUnits ),
4749 Pixels,
4750 Project SIP_MONKEYPATCH_COMPAT_NAME( ProjectUnits )
4751 };
4752 Q_ENUM( MapToolUnit )
4753
4754
4762 {
4763 Distance SIP_MONKEYPATCH_COMPAT_NAME( TypeDistance ) = 0,
4764 Area SIP_MONKEYPATCH_COMPAT_NAME( TypeArea ),
4765 Volume SIP_MONKEYPATCH_COMPAT_NAME( TypeVolume ),
4766 Unknown SIP_MONKEYPATCH_COMPAT_NAME( TypeUnknown ),
4767 Temporal SIP_MONKEYPATCH_COMPAT_NAME( TypeTemporal ),
4768 };
4769 Q_ENUM( UnitType )
4770
4771
4779 {
4780 Meters SIP_MONKEYPATCH_COMPAT_NAME( DistanceMeters ),
4781 Kilometers SIP_MONKEYPATCH_COMPAT_NAME( DistanceKilometers ),
4782 Feet SIP_MONKEYPATCH_COMPAT_NAME( DistanceFeet ),
4783 NauticalMiles SIP_MONKEYPATCH_COMPAT_NAME( DistanceNauticalMiles ),
4784 Yards SIP_MONKEYPATCH_COMPAT_NAME( DistanceYards ),
4785 Miles SIP_MONKEYPATCH_COMPAT_NAME( DistanceMiles ),
4786 Degrees SIP_MONKEYPATCH_COMPAT_NAME( DistanceDegrees ),
4787 Centimeters SIP_MONKEYPATCH_COMPAT_NAME( DistanceCentimeters ),
4788 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( DistanceMillimeters ),
4789 Inches,
4790 ChainsInternational,
4791 ChainsBritishBenoit1895A,
4792 ChainsBritishBenoit1895B,
4793 ChainsBritishSears1922Truncated,
4794 ChainsBritishSears1922,
4795 ChainsClarkes,
4796 ChainsUSSurvey,
4797 FeetBritish1865,
4798 FeetBritish1936,
4799 FeetBritishBenoit1895A,
4800 FeetBritishBenoit1895B,
4801 FeetBritishSears1922Truncated,
4802 FeetBritishSears1922,
4803 FeetClarkes,
4804 FeetGoldCoast,
4805 FeetIndian,
4806 FeetIndian1937,
4807 FeetIndian1962,
4808 FeetIndian1975,
4809 FeetUSSurvey,
4810 LinksInternational,
4811 LinksBritishBenoit1895A,
4812 LinksBritishBenoit1895B,
4813 LinksBritishSears1922Truncated,
4814 LinksBritishSears1922,
4815 LinksClarkes,
4816 LinksUSSurvey,
4817 YardsBritishBenoit1895A,
4818 YardsBritishBenoit1895B,
4819 YardsBritishSears1922Truncated,
4820 YardsBritishSears1922,
4821 YardsClarkes,
4822 YardsIndian,
4823 YardsIndian1937,
4824 YardsIndian1962,
4825 YardsIndian1975,
4826 MilesUSSurvey,
4827 Fathoms,
4828 MetersGermanLegal,
4829 Unknown SIP_MONKEYPATCH_COMPAT_NAME( DistanceUnknownUnit ),
4830 };
4831 Q_ENUM( DistanceUnit )
4832
4833
4841 {
4842 Standard,
4843 Geographic,
4844 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownType ),
4845 };
4846 Q_ENUM( DistanceUnitType )
4847
4848
4856 {
4857 SquareMeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMeters ),
4858 SquareKilometers SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareKilometers ),
4859 SquareFeet SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareFeet ),
4860 SquareYards SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareYards ),
4861 SquareMiles SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMiles ),
4862 Hectares SIP_MONKEYPATCH_COMPAT_NAME( AreaHectares ),
4863 Acres SIP_MONKEYPATCH_COMPAT_NAME( AreaAcres ),
4864 SquareNauticalMiles SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareNauticalMiles ),
4865 SquareDegrees SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareDegrees ),
4866 SquareCentimeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareCentimeters ),
4867 SquareMillimeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMillimeters ),
4868 SquareInches,
4869 Unknown SIP_MONKEYPATCH_COMPAT_NAME( AreaUnknownUnit ),
4870 };
4871 Q_ENUM( AreaUnit )
4872
4873
4881 {
4882 CubicMeters SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicMeters ),
4883 CubicFeet SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicFeet ),
4884 CubicYards SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicYards ),
4885 Barrel SIP_MONKEYPATCH_COMPAT_NAME( VolumeBarrel ),
4886 CubicDecimeter SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicDecimeter ),
4887 Liters SIP_MONKEYPATCH_COMPAT_NAME( VolumeLiters ),
4888 GallonUS SIP_MONKEYPATCH_COMPAT_NAME( VolumeGallonUS ),
4889 CubicInch SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicInch ),
4890 CubicCentimeter SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicCentimeter ),
4891 CubicDegrees SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicDegrees ),
4892 Unknown SIP_MONKEYPATCH_COMPAT_NAME( VolumeUnknownUnit ),
4893 };
4894 Q_ENUM( VolumeUnit )
4895
4896
4904 {
4905 Degrees SIP_MONKEYPATCH_COMPAT_NAME( AngleDegrees ),
4906 Radians SIP_MONKEYPATCH_COMPAT_NAME( AngleRadians ),
4907 Gon SIP_MONKEYPATCH_COMPAT_NAME( AngleGon ),
4908 MinutesOfArc SIP_MONKEYPATCH_COMPAT_NAME( AngleMinutesOfArc ),
4909 SecondsOfArc SIP_MONKEYPATCH_COMPAT_NAME( AngleSecondsOfArc ),
4910 Turn SIP_MONKEYPATCH_COMPAT_NAME( AngleTurn ),
4911 MilliradiansSI SIP_MONKEYPATCH_COMPAT_NAME( AngleMilliradiansSI ),
4912 MilNATO SIP_MONKEYPATCH_COMPAT_NAME( AngleMilNATO ),
4913 Unknown SIP_MONKEYPATCH_COMPAT_NAME( AngleUnknownUnit ),
4914 };
4915 Q_ENUM( AngleUnit )
4916
4917
4925 {
4926 Milliseconds SIP_MONKEYPATCH_COMPAT_NAME( TemporalMilliseconds ),
4927 Seconds SIP_MONKEYPATCH_COMPAT_NAME( TemporalSeconds ),
4928 Minutes SIP_MONKEYPATCH_COMPAT_NAME( TemporalMinutes ),
4929 Hours SIP_MONKEYPATCH_COMPAT_NAME( TemporalHours ),
4930 Days SIP_MONKEYPATCH_COMPAT_NAME( TemporalDays ),
4931 Weeks SIP_MONKEYPATCH_COMPAT_NAME( TemporalWeeks ),
4932 Months SIP_MONKEYPATCH_COMPAT_NAME( TemporalMonths ),
4933 Years SIP_MONKEYPATCH_COMPAT_NAME( TemporalYears ),
4934 Decades SIP_MONKEYPATCH_COMPAT_NAME( TemporalDecades ),
4935 Centuries SIP_MONKEYPATCH_COMPAT_NAME( TemporalCenturies ),
4936 IrregularStep SIP_MONKEYPATCH_COMPAT_NAME( TemporalIrregularStep ),
4937 Unknown SIP_MONKEYPATCH_COMPAT_NAME( TemporalUnknownUnit )
4938 };
4939 Q_ENUM( TemporalUnit )
4940
4941
4949 {
4950 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( RenderMillimeters ),
4951 MapUnits SIP_MONKEYPATCH_COMPAT_NAME( RenderMapUnits ),
4952 Pixels SIP_MONKEYPATCH_COMPAT_NAME( RenderPixels ),
4953 Percentage SIP_MONKEYPATCH_COMPAT_NAME( RenderPercentage ),
4954 Points SIP_MONKEYPATCH_COMPAT_NAME( RenderPoints ),
4955 Inches SIP_MONKEYPATCH_COMPAT_NAME( RenderInches ),
4956 Unknown SIP_MONKEYPATCH_COMPAT_NAME( RenderUnknownUnit ),
4957 MetersInMapUnits SIP_MONKEYPATCH_COMPAT_NAME( RenderMetersInMapUnits ),
4958 };
4959 Q_ENUM( RenderUnit )
4960
4961
4969 {
4970 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( LayoutMillimeters ),
4971 Centimeters SIP_MONKEYPATCH_COMPAT_NAME( LayoutCentimeters ),
4972 Meters SIP_MONKEYPATCH_COMPAT_NAME( LayoutMeters ),
4973 Inches SIP_MONKEYPATCH_COMPAT_NAME( LayoutInches ),
4974 Feet SIP_MONKEYPATCH_COMPAT_NAME( LayoutFeet ),
4975 Points SIP_MONKEYPATCH_COMPAT_NAME( LayoutPoints ),
4976 Picas SIP_MONKEYPATCH_COMPAT_NAME( LayoutPicas ),
4977 Pixels SIP_MONKEYPATCH_COMPAT_NAME( LayoutPixels )
4978 };
4979 Q_ENUM( LayoutUnit )
4980
4981
4989 {
4990 PaperUnits SIP_MONKEYPATCH_COMPAT_NAME( LayoutPaperUnits ),
4991 ScreenUnits SIP_MONKEYPATCH_COMPAT_NAME( LayoutScreenUnits )
4992 };
4993 Q_ENUM( LayoutUnitType )
4994
4995
5003 {
5004 SVG SIP_MONKEYPATCH_COMPAT_NAME( FormatSVG ) = 0,
5005 Raster SIP_MONKEYPATCH_COMPAT_NAME( FormatRaster ),
5006 Unknown SIP_MONKEYPATCH_COMPAT_NAME( FormatUnknown ),
5007 };
5008 Q_ENUM( PictureFormat )
5009
5010
5015 enum class ScaleCalculationMethod : int
5016 {
5017 HorizontalTop = 0,
5018 HorizontalMiddle,
5019 HorizontalBottom,
5020 HorizontalAverage,
5021 };
5022 Q_ENUM( ScaleCalculationMethod )
5023
5024
5032 {
5033 Left SIP_MONKEYPATCH_COMPAT_NAME( AlignLeft ) = 0,
5034 Middle SIP_MONKEYPATCH_COMPAT_NAME( AlignMiddle ),
5035 Right SIP_MONKEYPATCH_COMPAT_NAME( AlignRight ),
5036 };
5037 Q_ENUM( ScaleBarAlignment )
5038
5039
5047 {
5048 Fixed SIP_MONKEYPATCH_COMPAT_NAME( SegmentSizeFixed ) = 0,
5049 FitWidth SIP_MONKEYPATCH_COMPAT_NAME( SegmentSizeFitWidth ) = 1
5050 };
5051 Q_ENUM( ScaleBarSegmentSizeMode )
5052
5053
5061 {
5062 AboveSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelAboveSegment ) = 0,
5063 BelowSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelBelowSegment ),
5064 };
5065 Q_ENUM( ScaleBarDistanceLabelVerticalPlacement )
5066
5067
5075 {
5076 CenteredEdge SIP_MONKEYPATCH_COMPAT_NAME( LabelCenteredEdge ) = 0,
5077 CenteredSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelCenteredSegment ),
5078 };
5079 Q_ENUM( ScaleBarDistanceLabelHorizontalPlacement )
5080
5081
5086 enum class InputControllerType : int
5087 {
5088 Map2D,
5089 Map3D
5090 };
5092
5099 {
5100 NotSet,
5101 Unknown,
5102 OrdinaryTable,
5103 Index,
5104 Sequence,
5105 View,
5106 MaterializedView,
5107 CompositeType,
5108 ToastTable,
5109 ForeignTable,
5110 PartitionedTable,
5111 };
5112 Q_ENUM( PostgresRelKind )
5113
5114
5120 {
5121 SetFieldComment = 1 << 0,
5122 SetFieldAlias = 1 << 1,
5123 };
5124 Q_ENUM( DatabaseProviderConnectionCapability2 )
5127
5134 {
5135 SaveToDatabase = 1 << 1,
5136 LoadFromDatabase = 1 << 2,
5137 DeleteFromDatabase = 1 << 3
5138 };
5142
5143
5149 {
5150 LastProfile,
5151 DefaultProfile,
5152 AskUser,
5153 };
5154 Q_ENUM( UserProfileSelectionPolicy )
5155
5156
5164 {
5165 Container SIP_MONKEYPATCH_COMPAT_NAME( AeTypeContainer ),
5166 Field SIP_MONKEYPATCH_COMPAT_NAME( AeTypeField ),
5167 Relation SIP_MONKEYPATCH_COMPAT_NAME( AeTypeRelation ),
5168 QmlElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeQmlElement ),
5169 HtmlElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeHtmlElement ),
5170 Action SIP_MONKEYPATCH_COMPAT_NAME( AeTypeAction ),
5171 TextElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeTextElement ),
5172 SpacerElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeSpacerElement ),
5173 Invalid SIP_MONKEYPATCH_COMPAT_NAME( AeTypeInvalid ),
5174 };
5175 Q_ENUM( AttributeEditorType )
5176
5177
5183 {
5184 GroupBox,
5185 Tab,
5186 Row,
5187 };
5188 Q_ENUM( AttributeEditorContainerType )
5189
5190
5198 {
5199 AutoGenerated SIP_MONKEYPATCH_COMPAT_NAME( GeneratedLayout ) = 0,
5200 DragAndDrop SIP_MONKEYPATCH_COMPAT_NAME( TabLayout ) = 1,
5201 UiFile SIP_MONKEYPATCH_COMPAT_NAME( UiFileLayout ) = 2
5202 };
5203 Q_ENUM( AttributeFormLayout )
5204
5205
5213 {
5214 Default SIP_MONKEYPATCH_COMPAT_NAME( SuppressDefault ) = 0,
5215 On SIP_MONKEYPATCH_COMPAT_NAME( SuppressOn ) = 1,
5216 Off SIP_MONKEYPATCH_COMPAT_NAME( SuppressOff ) = 2
5217 };
5218 Q_ENUM( AttributeFormSuppression )
5219
5220
5228 {
5229 NoSource SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceNone ) = 0,
5230 File SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceFile ) = 1,
5231 Dialog SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceDialog ) = 2,
5232 Environment SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceEnvironment ) = 3
5233 };
5234 Q_ENUM( AttributeFormPythonInitCodeSource )
5235
5236
5242 {
5243 Qgis,
5244 PointCloud,
5245 RasterCalculator,
5246 };
5247 Q_ENUM( ExpressionType )
5248
5249
5257 {
5258 NoSymbology = 0,
5259 PerFeature SIP_MONKEYPATCH_COMPAT_NAME( FeatureSymbology ),
5260 PerSymbolLayer SIP_MONKEYPATCH_COMPAT_NAME( SymbolLayerSymbology )
5261 };
5262 Q_ENUM( FeatureSymbologyExport )
5263
5264
5269 enum class VectorTileProviderFlag : int SIP_ENUM_BASETYPE( IntFlag )
5270 {
5271 AlwaysUseTileMatrixSetFromProvider = 1 << 1,
5272 };
5273 Q_ENUM( VectorTileProviderFlag )
5274
5275
5281 Q_FLAG( VectorTileProviderFlags )
5282
5288 {
5289 ReadLayerMetadata = 1 << 1,
5290 };
5291 Q_ENUM( VectorTileProviderCapability )
5292
5293
5300
5307 {
5308 Available,
5309 NotAvailable,
5310 AvailableNoChildren,
5311 UseLowerZoomLevelTile,
5312 };
5313 Q_ENUM( TileAvailability )
5314
5315
5321 {
5322 ReadLayerMetadata = 1 << 1,
5323 };
5324 Q_ENUM( TiledSceneProviderCapability )
5325
5326
5333
5340 {
5341 Region,
5342 OrientedBox,
5343 Sphere,
5344 };
5345 Q_ENUM( TiledSceneBoundingVolumeType )
5346
5347
5356 {
5357 Replacement,
5358 Additive,
5359 };
5360 Q_ENUM( TileRefinementProcess )
5361
5362
5368 {
5369 NoChildren,
5370 Available,
5371 NeedFetching,
5372 };
5373 Q_ENUM( TileChildrenAvailability )
5374
5375
5380 enum class TiledSceneRequestFlag : int SIP_ENUM_BASETYPE( IntFlag )
5381 {
5382 NoHierarchyFetch = 1 << 0,
5383 };
5384 Q_ENUM( TiledSceneRequestFlag )
5385
5386
5392 Q_FLAG( TiledSceneRequestFlags )
5393
5399 enum class TiledSceneRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
5400 {
5401 RequiresTextures = 1 << 0,
5402 ForceRasterRender = 1 << 1,
5403 RendersTriangles = 1 << 2,
5404 RendersLines = 1 << 3,
5405 };
5406 Q_ENUM( TiledSceneRendererFlag )
5407
5408
5414 Q_FLAG( TiledSceneRendererFlags )
5415
5421 enum class GdalResampleAlgorithm : int
5422 {
5423 RA_NearestNeighbour = 0,
5424 RA_Bilinear = 1,
5425 RA_Cubic = 2,
5426 RA_CubicSpline = 3,
5427 RA_Lanczos = 4,
5428 RA_Average = 5,
5429 RA_Mode = 6,
5430 RA_Max = 8,
5431 RA_Min = 9,
5432 RA_Median = 10,
5433 RA_Q1 = 11,
5434 RA_Q3 = 12,
5435 };
5436 Q_ENUM( GdalResampleAlgorithm )
5437
5438
5443 enum class VsiHandlerType : int
5444 {
5445 Invalid,
5446 Archive,
5447 Network,
5448 Cloud,
5449 Memory,
5450 Other,
5451 };
5452 Q_ENUM( VsiHandlerType )
5453
5454 // TODO QGIS 4: make All include all values (we can't do this before 4.0, as we need to keep
5455 // compatibility with code which expects all these statistics to give numeric results)
5456
5457
5462 enum class ZonalStatistic : int SIP_ENUM_BASETYPE( IntFlag )
5463 {
5464 Count = 1 << 0,
5465 Sum = 1 << 1,
5466 Mean = 1 << 2,
5467 Median = 1 << 3,
5468 StDev = 1 << 4,
5469 Min = 1 << 5,
5470 Max = 1 << 6,
5471 Range = 1 << 7,
5472 Minority = 1 << 8,
5473 Majority = 1 << 9,
5474 Variety = 1 << 10,
5475 Variance = 1 << 11,
5476 MinimumPoint = 1 << 12,
5477 MaximumPoint = 1 << 13,
5478 All = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
5479 AllNumeric = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
5480 Default = Count | Sum | Mean,
5481 };
5482 Q_ENUM( ZonalStatistic )
5483
5484
5490 Q_FLAG( ZonalStatistics )
5491
5497 enum class ZonalStatisticResult : int
5498 {
5499 Success = 0,
5500 LayerTypeWrong = 1,
5501 LayerInvalid,
5502 RasterInvalid,
5503 RasterBandInvalid,
5504 FailedToCreateField = 8,
5505 Canceled = 9
5506 };
5507 Q_ENUM( ZonalStatisticResult )
5508
5509
5516 {
5517 Count,
5518 CountDistinct,
5519 CountMissing,
5520 Min,
5521 Max,
5522 Sum,
5523 Mean,
5524 Median,
5525 StDev,
5526 StDevSample,
5527 Range,
5528 Minority,
5529 Majority,
5530 FirstQuartile,
5531 ThirdQuartile,
5532 InterQuartileRange,
5533 StringMinimumLength,
5534 StringMaximumLength,
5535 StringConcatenate,
5536 GeometryCollect,
5537 ArrayAggregate,
5538 StringConcatenateUnique
5539 };
5540 Q_ENUM( Aggregate )
5541
5542
5548 {
5549 Count = 1 << 0,
5550 CountMissing = 1 << 15,
5551 Sum = 1 << 1,
5552 Mean = 1 << 2,
5553 Median = 1 << 3,
5554 StDev = 1 << 4,
5555 StDevSample = 1 << 5,
5556 Min = 1 << 6,
5557 Max = 1 << 7,
5558 Range = 1 << 8,
5559 Minority = 1 << 9,
5560 Majority = 1 << 10,
5561 Variety = 1 << 11,
5562 FirstQuartile = 1 << 12,
5563 ThirdQuartile = 1 << 13,
5564 InterQuartileRange = 1 << 14,
5565 First = 1 << 16,
5566 Last = 1 << 17,
5567 All = Count | CountMissing | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | FirstQuartile | ThirdQuartile | InterQuartileRange | First | Last
5568 };
5569 Q_ENUM( Statistic )
5570
5571
5577 Q_FLAG( Statistics )
5578
5585 {
5586 Count = 1,
5587 CountDistinct = 2,
5588 CountMissing = 4,
5589 Min = 8,
5590 Max = 16,
5591 Range = 32,
5592 All = Count | CountDistinct | CountMissing | Min | Max | Range,
5593 };
5594 Q_ENUM( DateTimeStatistic )
5595
5596
5602 Q_FLAG( DateTimeStatistics )
5603
5610 {
5611 Count = 1,
5612 CountDistinct = 2,
5613 CountMissing = 4,
5614 Min = 8,
5615 Max = 16,
5616 MinimumLength = 32,
5617 MaximumLength = 64,
5618 MeanLength = 128,
5619 Minority = 256,
5620 Majority = 512,
5621 All = Count | CountDistinct | CountMissing | Min | Max | MinimumLength | MaximumLength | MeanLength | Minority | Majority,
5622 };
5623 Q_ENUM( StringStatistic )
5624
5625
5631 Q_FLAG( StringStatistics )
5632
5639 {
5640 NoStatistic = 0,
5641 Min = 1,
5642 Max = 1 << 1,
5643 Range = 1 << 2,
5644 Sum = 1 << 3,
5645 Mean = 1 << 4,
5646 StdDev = 1 << 5,
5647 SumOfSquares = 1 << 6,
5648 All = Min | Max | Range | Sum | Mean | StdDev | SumOfSquares
5649 };
5650 Q_ENUM( RasterBandStatistic )
5651
5652
5658 Q_FLAG( RasterBandStatistics )
5659
5665 enum class SensorThingsEntity : int
5666 {
5667 Invalid,
5668 Thing,
5669 Location,
5670 HistoricalLocation,
5671 Datastream,
5672 Sensor,
5673 ObservedProperty,
5674 Observation,
5675 FeatureOfInterest,
5676 MultiDatastream,
5677 };
5678 Q_ENUM( SensorThingsEntity )
5679
5680
5685 enum class ColorModel : int
5686 {
5687 Rgb,
5688 Cmyk,
5689 };
5690 Q_ENUM( ColorModel )
5691
5692
5697 enum class DocumentationApi : int
5698 {
5699 PyQgis,
5700 PyQgisSearch,
5701 CppQgis,
5702 Qt,
5703 };
5704 Q_ENUM( DocumentationApi )
5705
5706
5711 enum class DocumentationBrowser : int
5712 {
5713 DeveloperToolsPanel,
5714 SystemWebBrowser,
5715 };
5716 Q_ENUM( DocumentationBrowser )
5717
5718
5723 enum class MouseHandlesAction : int
5724 {
5725 MoveItem,
5726 ResizeUp,
5727 ResizeDown,
5728 ResizeLeft,
5729 ResizeRight,
5730 ResizeLeftUp,
5731 ResizeRightUp,
5732 ResizeLeftDown,
5733 ResizeRightDown,
5734 SelectItem,
5735 NoAction
5736 };
5737 Q_ENUM( MouseHandlesAction )
5738
5739
5743 enum class MeshRangeLimit : int
5744 {
5745 NotSet,
5746 MinimumMaximum,
5747 };
5748 Q_ENUM( MeshRangeLimit )
5749
5750
5755 enum class MeshRangeExtent : int
5756 {
5757 WholeMesh,
5758 FixedCanvas,
5759 UpdatedCanvas,
5760 };
5761 Q_ENUM( MeshRangeExtent )
5762
5763
5769 enum class PointCloudAccessType : int
5770 {
5771 Local,
5772 Remote
5773 };
5774 Q_ENUM( PointCloudAccessType )
5775
5776
5781 {
5782 RenderExtents,
5783 RenderOverview,
5784 RenderOverviewAndExtents
5785 };
5786 Q_ENUM( PointCloudZoomOutRenderBehavior )
5787
5788
5793 {
5794 Standard = 0,
5795 Adaptive,
5796 AreaError,
5797 ConstantDensity
5798 };
5799 Q_ENUM( SegmentCalculationMethod )
5800
5801
5804 static const double DEFAULT_SEARCH_RADIUS_MM;
5805
5807 static const float DEFAULT_MAPTOPIXEL_THRESHOLD;
5808
5814 static const QColor DEFAULT_HIGHLIGHT_COLOR;
5815
5819 static const double DEFAULT_HIGHLIGHT_BUFFER_MM;
5820
5824 static const double DEFAULT_HIGHLIGHT_MIN_WIDTH_MM;
5825
5833 Q_DECL_DEPRECATED static const double SCALE_PRECISION;
5834
5839 static const double DEFAULT_Z_COORDINATE;
5840
5846 static const double DEFAULT_M_COORDINATE;
5847
5852 static const double UI_SCALE_FACTOR;
5853
5857 static const double DEFAULT_SNAP_TOLERANCE;
5858
5862 static const Qgis::MapToolUnit DEFAULT_SNAP_UNITS;
5863
5869 static QString defaultProjectScales();
5870
5876 static int geosVersionInt();
5877
5883 static int geosVersionMajor();
5884
5890 static int geosVersionMinor();
5891
5897 static int geosVersionPatch();
5898
5904 static QString geosVersion();
5905};
5906
5909
5991
5992// hack to workaround warnings when casting void pointers
5993// retrieved from QLibrary::resolve to function pointers.
5994// It's assumed that this works on all systems supporting
5995// QLibrary
5996#define cast_to_fptr(f) f
5997
5998
6006// based on Boojum's code from http://stackoverflow.com/questions/3556687/prevent-firing-signals-in-qt
6007template<class Object> class QgsSignalBlocker SIP_SKIP SIP_SKIP // clazy:exclude=rule-of-three
6008{
6009 public:
6010
6015 explicit QgsSignalBlocker( Object *object )
6016 : mObject( object )
6017 , mPreviousState( object->blockSignals( true ) )
6018 {}
6019
6021 {
6022 mObject->blockSignals( mPreviousState );
6023 }
6024
6026 Object *operator->() { return mObject; }
6027
6028 private:
6029
6030 Object *mObject = nullptr;
6031 bool mPreviousState;
6032
6033};
6034
6047// based on Boojum's code from http://stackoverflow.com/questions/3556687/prevent-firing-signals-in-qt
6048template<class Object> inline QgsSignalBlocker<Object> whileBlocking( Object *object ) SIP_SKIP SIP_SKIP
6049{
6050 return QgsSignalBlocker<Object>( object );
6051}
6052
6054CORE_EXPORT uint qHash( const QVariant &variant );
6055
6061inline QString qgsDoubleToString( double a, int precision = 17 )
6062{
6063 QString str;
6064 if ( precision )
6065 {
6066 if ( precision < 0 )
6067 {
6068 const double roundFactor = std::pow( 10, -precision );
6069 str = QString::number( static_cast< long long >( std::round( a / roundFactor ) * roundFactor ) );
6070 }
6071 else
6072 {
6073 str = QString::number( a, 'f', precision );
6074 if ( str.contains( QLatin1Char( '.' ) ) )
6075 {
6076 // remove ending 0s
6077 int idx = str.length() - 1;
6078 while ( str.at( idx ) == '0' && idx > 1 )
6079 {
6080 idx--;
6081 }
6082 if ( idx < str.length() - 1 )
6083 str.truncate( str.at( idx ) == '.' ? idx : idx + 1 );
6084 }
6085 }
6086 }
6087 else
6088 {
6089 str = QString::number( a, 'f', precision );
6090 }
6091 // avoid printing -0
6092 // see https://bugreports.qt.io/browse/QTBUG-71439
6093 if ( str == QLatin1String( "-0" ) )
6094 {
6095 return QLatin1String( "0" );
6096 }
6097 return str;
6098}
6099
6106inline bool qgsNanCompatibleEquals( double a, double b )
6107{
6108 const bool aIsNan = std::isnan( a );
6109 const bool bIsNan = std::isnan( b );
6110 if ( aIsNan || bIsNan )
6111 return aIsNan && bIsNan;
6112
6113 return a == b;
6114}
6115
6116#ifndef SIP_RUN
6117
6125template<typename T>
6126inline bool qgsNumberNear( T a, T b, T epsilon = std::numeric_limits<T>::epsilon() * 4 )
6127{
6128 const bool aIsNan = std::isnan( a );
6129 const bool bIsNan = std::isnan( b );
6130 if ( aIsNan || bIsNan )
6131 return aIsNan && bIsNan;
6132
6133 const T diff = a - b;
6134 return diff >= -epsilon && diff <= epsilon;
6135}
6136#endif
6137
6144inline bool qgsDoubleNear( double a, double b, double epsilon = 4 * std::numeric_limits<double>::epsilon() )
6145{
6146 return qgsNumberNear<double>( a, b, epsilon );
6147}
6148
6155inline bool qgsFloatNear( float a, float b, float epsilon = 4 * FLT_EPSILON )
6156{
6157 return qgsNumberNear<float>( a, b, epsilon );
6158}
6159
6161inline bool qgsDoubleNearSig( double a, double b, int significantDigits = 10 )
6162{
6163 const bool aIsNan = std::isnan( a );
6164 const bool bIsNan = std::isnan( b );
6165 if ( aIsNan || bIsNan )
6166 return aIsNan && bIsNan;
6167
6168 // The most simple would be to print numbers as %.xe and compare as strings
6169 // but that is probably too costly
6170 // Then the fastest would be to set some bits directly, but little/big endian
6171 // has to be considered (maybe TODO)
6172 // Is there a better way?
6173 int aexp, bexp;
6174 const double ar = std::frexp( a, &aexp );
6175 const double br = std::frexp( b, &bexp );
6176
6177 return aexp == bexp &&
6178 std::round( ar * std::pow( 10.0, significantDigits ) ) == std::round( br * std::pow( 10.0, significantDigits ) );
6179}
6180
6185inline double qgsRound( double number, int places )
6186{
6187 const double m = ( number < 0.0 ) ? -1.0 : 1.0;
6188 const double scaleFactor = std::pow( 10.0, places );
6189 return ( std::round( number * m * scaleFactor ) / scaleFactor ) * m;
6190}
6191
6192#ifndef SIP_RUN
6193
6200template<class Key, class Value>
6201QString qgsMapJoinKeys( const QMap<Key, Value> &map, const QString &separator )
6202{
6203 QString result;
6204 for ( auto it = map.constBegin(); it != map.constEnd(); it++ )
6205 result += QString( "%1%2" ).arg( it.key() ).arg( separator );
6206
6207 result.chop( separator.size() );
6208 return result;
6209}
6210
6217template<class Key, class Value>
6218QString qgsMapJoinValues( const QMap<Key, Value> &map, const QString &separator )
6219{
6220 QString result;
6221 for ( auto it = map.constBegin(); it != map.constEnd(); it++ )
6222 result += QString( "%1%2" ).arg( it.value() ).arg( separator );
6223
6224 result.chop( separator.size() );
6225 return result;
6226}
6227
6234template<class T>
6235QString qgsSetJoin( const QSet<T> &set, const QString &separator )
6236{
6237 QString result;
6238 for ( auto it = set.constBegin(); it != set.constEnd(); it++ )
6239 result += QString( "%1%2" ).arg( *it ).arg( separator );
6240
6241 result.chop( separator.size() );
6242 return result;
6243}
6244
6246
6256namespace qgis
6257{
6258
6271 template<typename To, typename From> inline To down_cast( From *f )
6272 {
6273 static_assert(
6274 ( std::is_base_of<From,
6275 typename std::remove_pointer<To>::type>::value ),
6276 "target type not derived from source type" );
6277 Q_ASSERT( f == nullptr || dynamic_cast<To>( f ) != nullptr );
6278 return static_cast<To>( f );
6279 }
6280
6281 template<class T>
6282 QSet<T> listToSet( const QList<T> &list )
6283 {
6284 return QSet<T>( list.begin(), list.end() );
6285 }
6286
6287 template<class T>
6288 QList<T> setToList( const QSet<T> &set )
6289 {
6290 return QList<T>( set.begin(), set.end() );
6291 }
6292}
6293
6295#endif
6296
6301template<class T> const QList<T> qgsEnumList() SIP_SKIP
6302{
6303 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6304 Q_ASSERT( metaEnum.isValid() );
6305 QList<T> enumList;
6306 for ( int idx = 0; idx < metaEnum.keyCount(); ++idx )
6307 {
6308 enumList.append( static_cast<T>( metaEnum.value( idx ) ) );
6309 }
6310 return enumList;
6311}
6312
6318template<class T> const QMap<T, QString> qgsEnumMap() SIP_SKIP
6319{
6320 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6321 Q_ASSERT( metaEnum.isValid() );
6322 QMap<T, QString> enumMap;
6323 for ( int idx = 0; idx < metaEnum.keyCount(); ++idx )
6324 {
6325 enumMap.insert( static_cast<T>( metaEnum.value( idx ) ), QString( metaEnum.key( idx ) ) );
6326 }
6327 return enumMap;
6328}
6329
6335template<class T> QString qgsEnumValueToKey( const T &value, bool *returnOk = nullptr ) SIP_SKIP
6336{
6337 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6338 Q_ASSERT( metaEnum.isValid() );
6339 const char *key = metaEnum.valueToKey( static_cast<int>( value ) );
6340 if ( returnOk )
6341 {
6342 *returnOk = key ? true : false;
6343 }
6344 return QString::fromUtf8( key );
6345}
6346
6354template<class T> T qgsEnumKeyToValue( const QString &key, const T &defaultValue, bool tryValueAsKey = true, bool *returnOk = nullptr ) SIP_SKIP
6355{
6356 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6357 Q_ASSERT( metaEnum.isValid() );
6358 bool ok = false;
6359 T v = static_cast<T>( metaEnum.keyToValue( key.toUtf8().data(), &ok ) );
6360 if ( returnOk )
6361 {
6362 *returnOk = ok;
6363 }
6364 if ( ok )
6365 {
6366 return v;
6367 }
6368 else
6369 {
6370 // if conversion has failed, try with conversion from int value
6371 if ( tryValueAsKey )
6372 {
6373 bool canConvert = false;
6374 const int intValue = key.toInt( &canConvert );
6375 if ( canConvert && metaEnum.valueToKey( intValue ) )
6376 {
6377 if ( returnOk )
6378 {
6379 *returnOk = true;
6380 }
6381 return static_cast<T>( intValue );
6382 }
6383 }
6384 }
6385 return defaultValue;
6386}
6387
6393template<class T> QString qgsFlagValueToKeys( const T &value, bool *returnOk = nullptr ) SIP_SKIP
6394{
6395 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6396 Q_ASSERT( metaEnum.isValid() );
6397 int intValue = static_cast<int>( value );
6398 const QByteArray ba = metaEnum.valueToKeys( intValue );
6399 // check that the int value does correspond to a flag
6400 // see https://stackoverflow.com/a/68495949/1548052
6401 const int intValueCheck = metaEnum.keysToValue( ba );
6402 bool ok = intValue == intValueCheck;
6403 if ( returnOk )
6404 *returnOk = ok;
6405 return ok ? QString::fromUtf8( ba ) : QString();
6406}
6407
6415template<class T> T qgsFlagKeysToValue( const QString &keys, const T &defaultValue, bool tryValueAsKey = true, bool *returnOk = nullptr ) SIP_SKIP
6416{
6417 if ( keys.isEmpty() )
6418 {
6419 if ( returnOk )
6420 {
6421 *returnOk = false;
6422 }
6423 return defaultValue;
6424 }
6425 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6426 Q_ASSERT( metaEnum.isValid() );
6427 bool ok = false;
6428 T v = static_cast<T>( metaEnum.keysToValue( keys.toUtf8().constData(), &ok ) );
6429 if ( returnOk )
6430 {
6431 *returnOk = ok;
6432 }
6433 if ( ok )
6434 {
6435 return v;
6436 }
6437 else
6438 {
6439 // if conversion has failed, try with conversion from int value
6440 if ( tryValueAsKey )
6441 {
6442 bool canConvert = false;
6443 const int intValue = keys.toInt( &canConvert );
6444 if ( canConvert )
6445 {
6446 const QByteArray keys = metaEnum.valueToKeys( intValue );
6447 const int intValueCheck = metaEnum.keysToValue( keys );
6448 if ( intValue == intValueCheck )
6449 {
6450 if ( returnOk )
6451 {
6452 *returnOk = true;
6453 }
6454 return T( intValue );
6455 }
6456 }
6457 }
6458 }
6459 return defaultValue;
6460}
6461
6462
6471CORE_EXPORT double qgsPermissiveToDouble( QString string, bool &ok );
6472
6481CORE_EXPORT int qgsPermissiveToInt( QString string, bool &ok );
6482
6492CORE_EXPORT qlonglong qgsPermissiveToLongLong( QString string, bool &ok );
6493
6503CORE_EXPORT bool qgsVariantLessThan( const QVariant &lhs, const QVariant &rhs );
6504
6513CORE_EXPORT bool qgsVariantEqual( const QVariant &lhs, const QVariant &rhs );
6514
6521CORE_EXPORT bool qgsVariantGreaterThan( const QVariant &lhs, const QVariant &rhs );
6522
6523#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
6524
6531inline bool operator> ( const QVariant &v1, const QVariant &v2 )
6532{
6533 return qgsVariantGreaterThan( v1, v2 );
6534}
6535
6545inline bool operator< ( const QVariant &v1, const QVariant &v2 )
6546{
6547 return qgsVariantLessThan( v1, v2 );
6548}
6549#endif
6550
6551
6552#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
6553
6557template<> CORE_EXPORT bool qMapLessThanKey<QVariantList>( const QVariantList &key1, const QVariantList &key2 ) SIP_SKIP;
6558#endif
6559
6560CORE_EXPORT QString qgsVsiPrefix( const QString &path );
6561
6567void CORE_EXPORT *qgsMalloc( size_t size ) SIP_SKIP;
6568
6573void CORE_EXPORT qgsFree( void *ptr ) SIP_SKIP;
6574
6575#ifndef SIP_RUN
6576
6577#ifdef _MSC_VER
6578#define CONSTLATIN1STRING inline const QLatin1String
6579#else
6580#define CONSTLATIN1STRING constexpr QLatin1String
6581#endif
6582
6584class ScopedIntIncrementor
6585{
6586 public:
6587
6588 ScopedIntIncrementor( int *variable )
6589 : mVariable( variable )
6590 {
6591 ( *mVariable )++;
6592 }
6593
6594 ScopedIntIncrementor( const ScopedIntIncrementor &other ) = delete;
6595 ScopedIntIncrementor &operator=( const ScopedIntIncrementor &other ) = delete;
6596
6597 void release()
6598 {
6599 if ( mVariable )
6600 ( *mVariable )--;
6601
6602 mVariable = nullptr;
6603 }
6604
6605 ~ScopedIntIncrementor()
6606 {
6607 release();
6608 }
6609
6610 private:
6611 int *mVariable = nullptr;
6612};
6614
6620{
6621 return QLatin1String(
6622 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]] )"""
6623 );
6624}
6625
6628{
6629 return QLatin1String( "+proj=longlat +datum=WGS84 +no_defs" );
6630}
6631
6634{
6635 return QLatin1String( "EPSG:4326" );
6636}
6637
6640{
6641 return QLatin1String( "NONE" );
6642}
6643
6645
6647const int PREVIEW_JOB_DELAY_MS = 250;
6648
6650const int MAXIMUM_LAYER_PREVIEW_TIME_MS = 250;
6651
6653
6654#endif
6655
6657const long GEOSRID = 4326;
6658
6660const long GEOCRS_ID = 3452;
6661
6663const long GEO_EPSG_CRS_ID = 4326;
6664
6669const int USER_CRS_START_ID = 100000;
6670
6671//
6672// Constants for point symbols
6673//
6674
6676const double DEFAULT_POINT_SIZE = 2.0;
6677const double DEFAULT_LINE_WIDTH = 0.26;
6678
6680const double DEFAULT_SEGMENT_EPSILON = 1e-8;
6681
6682typedef QMap<QString, QString> QgsStringMap SIP_SKIP;
6683
6692typedef unsigned long long qgssize;
6693
6694#ifndef SIP_RUN
6695#if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) || defined(__clang__)
6696
6697#define Q_NOWARN_DEPRECATED_PUSH \
6698 _Pragma("GCC diagnostic push") \
6699 _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"");
6700#define Q_NOWARN_DEPRECATED_POP \
6701 _Pragma("GCC diagnostic pop");
6702#define Q_NOWARN_UNREACHABLE_PUSH
6703#define Q_NOWARN_UNREACHABLE_POP
6704
6705#elif defined(_MSC_VER)
6706
6707#define Q_NOWARN_DEPRECATED_PUSH \
6708 __pragma(warning(push)) \
6709 __pragma(warning(disable:4996))
6710#define Q_NOWARN_DEPRECATED_POP \
6711 __pragma(warning(pop))
6712#define Q_NOWARN_UNREACHABLE_PUSH \
6713 __pragma(warning(push)) \
6714 __pragma(warning(disable:4702))
6715#define Q_NOWARN_UNREACHABLE_POP \
6716 __pragma(warning(pop))
6717
6718#else
6719
6720#define Q_NOWARN_DEPRECATED_PUSH
6721#define Q_NOWARN_DEPRECATED_POP
6722#define Q_NOWARN_UNREACHABLE_PUSH
6723#define Q_NOWARN_UNREACHABLE_POP
6724
6725#endif
6726#endif
6727
6728#ifndef QGISEXTERN
6729#ifdef Q_OS_WIN
6730# define QGISEXTERN extern "C" __declspec( dllexport )
6731#else
6732# if defined(__GNUC__) || defined(__clang__)
6733# define QGISEXTERN extern "C" __attribute__ ((visibility ("default")))
6734# else
6735# define QGISEXTERN extern "C"
6736# endif
6737#endif
6738#endif
6739#endif
6740
6741// see https://infektor.net/posts/2017-01-19-using-cpp17-attributes-today.html#using-the-nodiscard-attribute
6742#if __cplusplus >= 201703L
6743#define NODISCARD [[nodiscard]]
6744#elif defined(__clang__)
6745#define NODISCARD [[nodiscard]]
6746#elif defined(_MSC_VER)
6747#define NODISCARD // no support
6748#elif defined(__has_cpp_attribute)
6749#if __has_cpp_attribute(nodiscard)
6750#define NODISCARD [[nodiscard]]
6751#elif __has_cpp_attribute(gnu::warn_unused_result)
6752#define NODISCARD [[gnu::warn_unused_result]]
6753#else
6754#define NODISCARD Q_REQUIRED_RESULT
6755#endif
6756#else
6757#define NODISCARD Q_REQUIRED_RESULT
6758#endif
6759
6760#if __cplusplus >= 201703L
6761#define MAYBE_UNUSED [[maybe_unused]]
6762#elif defined(__clang__)
6763#define MAYBE_UNUSED [[maybe_unused]]
6764#elif defined(_MSC_VER)
6765#define MAYBE_UNUSED // no support
6766#elif defined(__has_cpp_attribute)
6767#if __has_cpp_attribute(gnu::unused)
6768#define MAYBE_UNUSED [[gnu::unused]]
6769#else
6770#define MAYBE_UNUSED
6771#endif
6772#else
6773#define MAYBE_UNUSED
6774#endif
6775
6776#ifndef FINAL
6777#define FINAL final
6778#endif
6779
6780#ifndef SIP_RUN
6781#ifdef _MSC_VER
6782#define BUILTIN_UNREACHABLE \
6783 __assume(false);
6784#elif defined(__GNUC__) && !defined(__clang__)
6785// Workaround a GCC bug where a -Wreturn-type warning is emitted in constructs
6786// like:
6787// switch( mVariableThatCanOnlyBeXorY )
6788// {
6789// case X:
6790// return "foo";
6791// case Y:
6792// return "foo";
6793// }
6794// See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87951
6795#define BUILTIN_UNREACHABLE \
6796 __builtin_unreachable();
6797#else
6798#define BUILTIN_UNREACHABLE
6799#endif
6800#endif // SIP_RUN
6801
6802#ifdef SIP_RUN
6803
6808QString CORE_EXPORT geoWkt();
6809
6811QString CORE_EXPORT geoProj4();
6812
6814QString CORE_EXPORT geoEpsgCrsAuthId();
6815
6817QString CORE_EXPORT geoNone();
6818
6819#endif
The Qgis class provides global constants for use throughout the application.
Definition qgis.h:54
DistanceUnitType
Types of distance units.
Definition qgis.h:4841
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:4747
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:5075
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:4672
ExpressionType
Expression types.
Definition qgis.h:5242
MapLayerActionFlag
Map layer action flags.
Definition qgis.h:4417
ScaleBarDistanceLabelVerticalPlacement
Scale bar distance label vertical placement.
Definition qgis.h:5061
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:4406
VectorTileProviderCapability
Enumeration with capabilities that vector tile data providers might implement.
Definition qgis.h:5288
AltitudeClamping
Altitude clamping.
Definition qgis.h:3782
VectorTileProviderFlag
Flags for vector tile data providers.
Definition qgis.h:5270
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:4762
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:4969
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
LegendComponent
Component of legends which can be styled.
Definition qgis.h:4342
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:5630
BrowserItemState
Browser item states.
Definition qgis.h:872
AttributeEditorContainerType
Attribute editor container types.
Definition qgis.h:5183
QFlags< TiledSceneProviderCapability > TiledSceneProviderCapabilities
Tiled scene data provider capabilities.
Definition qgis.h:5331
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:5548
SymbolRenderHint
Flags controlling behavior of symbols during rendering.
Definition qgis.h:733
AngleUnit
Units of angles.
Definition qgis.h:4904
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:5213
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:4652
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:5444
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:5120
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:4529
QFlags< VectorLayerTypeFlag > VectorLayerTypeFlags
Vector layer type flags.
Definition qgis.h:395
ScaleBarAlignment
Scalebar alignment.
Definition qgis.h:5032
RasterPyramidFormat
Raster pyramid formats.
Definition qgis.h:4568
VectorExportResult
Vector layer export result codes.
Definition qgis.h:983
DistanceUnit
Units of distance.
Definition qgis.h:4779
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:5744
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:5228
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:5198
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:5422
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:4681
RasterDrawingStyle
Raster drawing styles.
Definition qgis.h:4545
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:5756
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:4639
Q_ENUM(VectorProfileType)
AttributeActionType
Attribute action types.
Definition qgis.h:4441
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:4856
StringStatistic
Available string statistics.
Definition qgis.h:5610
FieldDomainMergePolicy
Merge policy for field domains.
Definition qgis.h:3728
ZonalStatistic
Statistics to be calculated during a zonal statistics operation.
Definition qgis.h:5463
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:5340
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:5666
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:4376
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:5134
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:4361
BlendMode
Blending modes defining the available composition modes that can be used when painting.
Definition qgis.h:4696
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:5003
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:4925
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:5307
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:4619
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:5657
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:5149
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:5400
MapLayerActionTarget
Map layer action targets.
Definition qgis.h:4391
ShaderClassificationMethod
Color ramp shader classification methods.
Definition qgis.h:1370
ZonalStatisticResult
Zonal statistics result codes.
Definition qgis.h:5498
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:5321
LabelMultiLineAlignment
Text alignment for multi-line labels.
Definition qgis.h:1269
RasterBandStatistic
Available raster band statistics.
Definition qgis.h:5639
QFlags< VectorTileProviderCapability > VectorTileProviderCapabilities
Vector tile data provider capabilities.
Definition qgis.h:5298
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:5489
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:5712
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:4732
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:4583
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:5368
PointCloudZoomOutRenderBehavior
Point cloud zoom out options.
Definition qgis.h:5781
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:5576
PlotToolFlag
Flags that control the way the QgsPlotTools operate.
Definition qgis.h:3908
RenderUnit
Rendering size units.
Definition qgis.h:4949
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:5016
QFlags< TiledSceneRequestFlag > TiledSceneRequestFlags
Flags which control how tiled scene requests behave.
Definition qgis.h:5391
QFlags< MapLayerActionFlag > MapLayerActionFlags
Map layer action flags.
Definition qgis.h:4430
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:5047
Aggregate
Available aggregates to calculate.
Definition qgis.h:5516
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:4989
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:5381
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:4881
AttributeEditorType
Attribute editor types.
Definition qgis.h:5164
QFlags< LegendJsonRenderFlag > LegendJsonRenderFlags
Definition qgis.h:4365
QFlags< ProviderStyleStorageCapability > ProviderStyleStorageCapabilities
Definition qgis.h:5140
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:5770
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:4478
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:5686
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:5099
SegmentCalculationMethod
brief Method used to calculate the number of segments for circle approximation
Definition qgis.h:5793
GpsConnectionType
GPS connection types.
Definition qgis.h:1790
Q_ENUM(InputControllerType)
QFlags< DatabaseProviderConnectionCapability2 > DatabaseProviderConnectionCapabilities2
Definition qgis.h:5125
MouseHandlesAction
Action to be performed by the mouse handles.
Definition qgis.h:5724
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:5280
MetadataDateType
Date types for metadata.
Definition qgis.h:4459
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:4598
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:5356
QFlags< DateTimeStatistic > DateTimeStatistics
Statistics to be calculated for date/time values.
Definition qgis.h:5601
SelectionRenderingMode
Specifies how a selection should be rendered.
Definition qgis.h:1688
InputControllerType
Input controller types.
Definition qgis.h:5087
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:5413
DocumentationApi
Documentation API.
Definition qgis.h:5698
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:5257
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:5585
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, ....
Contains detailed styling information relating to how a layout legend should be rendered.
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:6008
Object * operator->()
Returns pointer to blocked QObject.
Definition qgis.h:6026
QgsSignalBlocker(Object *object)
Constructor for QgsSignalBlocker.
Definition qgis.h:6015
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:6639
const double DEFAULT_LINE_WIDTH
Definition qgis.h:6677
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:6531
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:6354
QString qgsDoubleToString(double a, int precision=17)
Returns a string representation of a double.
Definition qgis.h:6061
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:6218
QString qgsEnumValueToKey(const T &value, bool *returnOk=nullptr)
Returns the value for the given key of an enum.
Definition qgis.h:6335
QString qgsFlagValueToKeys(const T &value, bool *returnOk=nullptr)
Returns the value for the given keys of a flag.
Definition qgis.h:6393
const long GEO_EPSG_CRS_ID
Magic number for a geographic coord sys in EpsgCrsId ID format.
Definition qgis.h:6663
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:6201
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:6415
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:6692
const QMap< T, QString > qgsEnumMap()
Returns a map of all enum entries.
Definition qgis.h:6318
bool qgsFloatNear(float a, float b, float epsilon=4 *FLT_EPSILON)
Compare two floats (but allow some difference)
Definition qgis.h:6155
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:6235
const QList< T > qgsEnumList()
Returns a list all enum entries.
Definition qgis.h:6301
double qgsRound(double number, int places)
Returns a double number, rounded (as close as possible) to the specified number of places.
Definition qgis.h:6185
bool qgsDoubleNear(double a, double b, double epsilon=4 *std::numeric_limits< double >::epsilon())
Compare two doubles (but allow some difference)
Definition qgis.h:6144
CONSTLATIN1STRING geoProj4()
PROJ4 string that represents a geographic coord sys.
Definition qgis.h:6627
bool qgsNanCompatibleEquals(double a, double b)
Compare two doubles, treating nan values as equal.
Definition qgis.h:6106
QgsSignalBlocker< Object > whileBlocking(Object *object)
Temporarily blocks signals from a QObject while calling a single method from the object.
Definition qgis.h:6048
const double DEFAULT_SEGMENT_EPSILON
Default snapping tolerance for segments.
Definition qgis.h:6680
QMap< QString, QString > QgsStringMap
Definition qgis.h:6682
#define CONSTLATIN1STRING
Definition qgis.h:6580
CONSTLATIN1STRING geoWkt()
Wkt string that represents a geographic coord sys.
Definition qgis.h:6619
bool qgsDoubleNearSig(double a, double b, int significantDigits=10)
Compare two doubles using specified number of significant digits.
Definition qgis.h:6161
const int USER_CRS_START_ID
Magick number that determines whether a projection crsid is a system (srs.db) or user (~/....
Definition qgis.h:6669
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:6126
const long GEOSRID
Magic number for a geographic coord sys in POSTGIS SRID.
Definition qgis.h:6657
#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:6545
CONSTLATIN1STRING geoEpsgCrsAuthId()
Geographic coord sys from EPSG authority.
Definition qgis.h:6633
const long GEOCRS_ID
Magic number for a geographic coord sys in QGIS srs.db tbl_srs.srs_id.
Definition qgis.h:6660
const double DEFAULT_POINT_SIZE
Magic number that determines the default point size for point symbols.
Definition qgis.h:6676
#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