QGIS API Documentation 4.1.0-Master (26185ffb827)
Loading...
Searching...
No Matches
qgis.h
Go to the documentation of this file.
1/***************************************************************************
2 qgis.h - QGIS namespace
3 -------------------
4 begin : Sat Jun 30 2002
5 copyright : (C) 2002 by Gary E.Sherman
6 email : sherman at mrcc.com
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17
18#ifndef QGIS_H
19#define QGIS_H
20
21
22#include <cfloat>
23#include <cmath>
24#include <memory>
25
26#include "qgis_core.h"
27#include "qgis_sip.h"
28
29#include <QMetaEnum>
30#include <QString>
31#include <QTimeZone>
32
33using namespace Qt::StringLiterals;
34
35#ifdef SIP_RUN
36// clang-format off
37% ModuleHeaderCode
38#include <qgis.h>
39% End
40
41% ModuleCode
42int QgisEvent = QEvent::User + 1;
43% End
44// clang-format on
45#endif
46
47#ifndef SIP_RUN
48// qHash implementation for scoped enum type
49// https://gitlab.com/frostasm/programming-knowledge-base/-/snippets/20120
50#define QHASH_FOR_CLASS_ENUM( T ) \
51 inline uint qHash( const T &t, uint seed ) \
52 { \
53 return ::qHash( static_cast<typename std::underlying_type<T>::type>( t ), seed ); \
54 }
55#endif
56
61 class CORE_EXPORT Qgis
62{
63 Q_GADGET
64 Q_CLASSINFO( "RegisterEnumClassesUnscoped", "false" )
65
66 public:
72 static QString version();
73
79 static int versionInt();
80
86 static QString releaseName();
87
89 static const char *QGIS_DEV_VERSION;
90
96 static QString devVersion();
97
98 // Enumerations
99 //
100
107 {
108 ClearStorage = 1 << 0,
109
110 ReadConfiguration = 1 << 1,
111 UpdateConfiguration = 1 << 2,
112 DeleteConfiguration = 1 << 3,
113 CreateConfiguration = 1 << 4,
114
115 ReadCertificateIdentity = 1 << 5,
116 UpdateCertificateIdentity = 1 << 6,
117 DeleteCertificateIdentity = 1 << 7,
118 CreateCertificateIdentity = 1 << 8,
119
120 ReadSslCertificateCustomConfig = 1 << 9,
121 UpdateSslCertificateCustomConfig = 1 << 10,
122 DeleteSslCertificateCustomConfig = 1 << 11,
123 CreateSslCertificateCustomConfig = 1 << 12,
124
125 ReadCertificateAuthority = 1 << 13,
126 UpdateCertificateAuthority = 1 << 14,
127 DeleteCertificateAuthority = 1 << 15,
128 CreateCertificateAuthority = 1 << 16,
129
130 ReadCertificateTrustPolicy = 1 << 17,
131 UpdateCertificateTrustPolicy = 1 << 18,
132 DeleteCertificateTrustPolicy = 1 << 19,
133 CreateCertificateTrustPolicy = 1 << 20,
134
135 ReadMasterPassword = 1 << 21,
136 UpdateMasterPassword = 1 << 22,
137 DeleteMasterPassword = 1 << 23,
138 CreateMasterPassword = 1 << 24,
139
140 ReadSetting = 1 << 25,
141 UpdateSetting = 1 << 26,
142 DeleteSetting = 1 << 27,
143 CreateSetting = 1 << 28,
144
145 };
146 Q_ENUM( AuthConfigurationStorageCapability )
147
148
154
160 {
161 Info = 0,
166 };
167 Q_ENUM( MessageLevel )
168
169
175 {
176 PlainText SIP_MONKEYPATCH_COMPAT_NAME( MessageText ),
177 Html SIP_MONKEYPATCH_COMPAT_NAME( MessageHtml ),
178 };
179 Q_ENUM( StringFormat )
180
181
186 enum class NetworkRequestFlag : int SIP_ENUM_BASETYPE( IntFlag )
187 {
188 DisableMessageLogging = 1 << 0,
189 };
190 Q_ENUM( NetworkRequestFlag )
191
192
198 Q_FLAG( NetworkRequestFlags )
199
206 {
207 Vector SIP_MONKEYPATCH_COMPAT_NAME( VectorLayer ),
208 Raster SIP_MONKEYPATCH_COMPAT_NAME( RasterLayer ),
209 Plugin SIP_MONKEYPATCH_COMPAT_NAME( PluginLayer ),
210 Mesh SIP_MONKEYPATCH_COMPAT_NAME( MeshLayer ),
211 VectorTile SIP_MONKEYPATCH_COMPAT_NAME( VectorTileLayer ),
212 Annotation SIP_MONKEYPATCH_COMPAT_NAME( AnnotationLayer ),
213 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( PointCloudLayer ),
214 Group SIP_MONKEYPATCH_COMPAT_NAME( GroupLayer ),
215 TiledScene,
216 };
217 Q_ENUM( LayerType )
218
219
225 {
226 RasterLayer = 1,
227 NoGeometry = 2,
228 PointLayer = 4,
229 LineLayer = 8,
230 PolygonLayer = 16,
231 HasGeometry = PointLayer | LineLayer | PolygonLayer,
232 VectorLayer = NoGeometry | HasGeometry,
233 PluginLayer = 32,
234 WritableLayer = 64,
235 MeshLayer = 128,
236 VectorTileLayer = 256,
237 PointCloudLayer = 512,
238 AnnotationLayer = 1024,
239 TiledSceneLayer = 2048,
240 All = RasterLayer | VectorLayer | PluginLayer | MeshLayer | VectorTileLayer | PointCloudLayer | AnnotationLayer | TiledSceneLayer,
241 SpatialLayer = RasterLayer | HasGeometry | PluginLayer | MeshLayer | VectorTileLayer | PointCloudLayer | AnnotationLayer | TiledSceneLayer
242 };
243 Q_DECLARE_FLAGS( LayerFilters, LayerFilter )
244 Q_FLAG( LayerFilters )
245
246
251 enum class LoadStyleFlag : int SIP_ENUM_BASETYPE( IntFlag )
252 {
253 IgnoreMissingStyleErrors
254 = 1 << 0,
255 };
256 Q_ENUM( LoadStyleFlag )
257
258
263 Q_DECLARE_FLAGS( LoadStyleFlags, LoadStyleFlag )
264 Q_FLAG( LoadStyleFlags )
265
294 {
295 Unknown = 0,
296 Point = 1,
297 LineString = 2,
298 Polygon = 3,
299 Triangle = 17,
300 MultiPoint = 4,
301 MultiLineString = 5,
302 MultiPolygon = 6,
303 GeometryCollection = 7,
304 CircularString = 8,
305 CompoundCurve = 9,
306 CurvePolygon = 10,
307 MultiCurve = 11,
308 MultiSurface = 12,
309 PolyhedralSurface = 15,
310 TIN = 16,
311 NurbsCurve = 21,
312 NoGeometry = 100,
313 PointZ = 1001,
314 LineStringZ = 1002,
315 PolygonZ = 1003,
316 TriangleZ = 1017,
317 MultiPointZ = 1004,
318 MultiLineStringZ = 1005,
319 MultiPolygonZ = 1006,
320 GeometryCollectionZ = 1007,
321 CircularStringZ = 1008,
322 CompoundCurveZ = 1009,
323 CurvePolygonZ = 1010,
324 MultiCurveZ = 1011,
325 MultiSurfaceZ = 1012,
326 PolyhedralSurfaceZ = 1015,
327 TINZ = 1016,
328 NurbsCurveZ = 1021,
329 PointM = 2001,
330 LineStringM = 2002,
331 PolygonM = 2003,
332 TriangleM = 2017,
333 MultiPointM = 2004,
334 MultiLineStringM = 2005,
335 MultiPolygonM = 2006,
336 GeometryCollectionM = 2007,
337 CircularStringM = 2008,
338 CompoundCurveM = 2009,
339 CurvePolygonM = 2010,
340 MultiCurveM = 2011,
341 MultiSurfaceM = 2012,
342 PolyhedralSurfaceM = 2015,
343 TINM = 2016,
344 NurbsCurveM = 2021,
345 PointZM = 3001,
346 LineStringZM = 3002,
347 PolygonZM = 3003,
348 MultiPointZM = 3004,
349 MultiLineStringZM = 3005,
350 MultiPolygonZM = 3006,
351 GeometryCollectionZM = 3007,
352 CircularStringZM = 3008,
353 CompoundCurveZM = 3009,
354 CurvePolygonZM = 3010,
355 MultiCurveZM = 3011,
356 MultiSurfaceZM = 3012,
357 PolyhedralSurfaceZM = 3015,
358 TINZM = 3016,
359 TriangleZM = 3017,
360 NurbsCurveZM = 3021,
361 Point25D = 0x80000001,
362 LineString25D,
363 Polygon25D,
364 MultiPoint25D,
365 MultiLineString25D,
366 MultiPolygon25D
367 };
368 Q_ENUM( WkbType )
369
370
379 {
380 Point SIP_MONKEYPATCH_COMPAT_NAME( PointGeometry ),
381 Line SIP_MONKEYPATCH_COMPAT_NAME( LineGeometry ),
382 Polygon SIP_MONKEYPATCH_COMPAT_NAME( PolygonGeometry ),
383 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownGeometry ),
384 Null SIP_MONKEYPATCH_COMPAT_NAME( NullGeometry ),
385 };
386 Q_ENUM( GeometryType )
387
388
393 {
394 UnknownDataType = 0,
395 Byte = 1,
396 Int8 = 14,
397 UInt16 = 2,
398 Int16 = 3,
399 UInt32 = 4,
400 Int32 = 5,
401 Float32 = 6,
402 Float64 = 7,
403 CInt16 = 8,
404 CInt32 = 9,
405 CFloat32 = 10,
406 CFloat64 = 11,
407 ARGB32 = 12,
408 ARGB32_Premultiplied = 13
409 };
410 Q_ENUM( DataType )
411
412
417 enum class CaptureTechnique : int
418 {
419 StraightSegments,
420 CircularString,
421 Streaming,
422 Shape,
423 PolyBezier,
424 NurbsCurve,
425 };
426 Q_ENUM( CaptureTechnique )
427
428
429
434 enum class VectorLayerTypeFlag : int SIP_ENUM_BASETYPE( IntFlag )
435 {
436 SqlQuery = 1 << 0
437 };
438 Q_ENUM( VectorLayerTypeFlag )
441 Q_FLAG( VectorLayerTypeFlags )
442
447 enum class EmbeddedScriptMode SIP_MONKEYPATCH_SCOPEENUM_UNNEST( Qgis, PythonMacroMode ) : int
448 {
449 Never = 0,
450 Ask = 1,
451 SessionOnly = 2,
452 Always = 3,
453 NotForThisSession = 4,
454 NeverAsk = 5,
455 };
456 Q_ENUM( EmbeddedScriptMode )
457
458
462 enum class EmbeddedScriptType : int
463 {
464 Macro = 0,
465 ExpressionFunction = 1,
466 Action = 2,
467 FormInitCode = 3,
468 };
469 Q_ENUM( EmbeddedScriptType )
470
471
475 enum class ProjectTrustStatus : int
476 {
477 Undetermined = 0,
478 Trusted = 1,
479 Untrusted = 2,
480 };
481 Q_ENUM( ProjectTrustStatus )
482
483
491 {
492 TrustDataSource SIP_MONKEYPATCH_COMPAT_NAME( FlagTrustDataSource )
493 = 1 << 0,
494 SkipFeatureCount = 1 << 1,
495 LoadDefaultStyle SIP_MONKEYPATCH_COMPAT_NAME( FlagLoadDefaultStyle ) = 1 << 2,
496 SkipGetExtent = 1 << 3,
497 SkipFullScan = 1 << 4,
498 ForceReadOnly = 1 << 5,
499 SkipCredentialsRequest
500 = 1 << 6,
501 ParallelThreadLoading = 1 << 7,
502 };
503 Q_ENUM( DataProviderReadFlag )
504
505
513 Q_FLAG( DataProviderReadFlags )
514
515 // TODO QGIS 5 -- remove NoCapabilities and rely on VectorProviderCapabilities() instead
516
525 {
526 NoCapabilities = 0,
527 AddFeatures = 1,
528 DeleteFeatures = 1 << 1,
529 ChangeAttributeValues = 1 << 2,
530 AddAttributes = 1 << 3,
531 DeleteAttributes = 1 << 4,
532 CreateSpatialIndex = 1 << 6,
533 SelectAtId = 1 << 7,
534 ChangeGeometries = 1 << 8,
535 SelectEncoding = 1 << 13,
536 CreateAttributeIndex = 1 << 12,
537 SimplifyGeometries = 1 << 14,
538 SimplifyGeometriesWithTopologicalValidation = 1 << 15,
539 TransactionSupport = 1 << 16,
540 CircularGeometries = 1 << 17,
541 ChangeFeatures = 1 << 18,
542 RenameAttributes = 1 << 19,
543 FastTruncate = 1 << 20,
544 ReadLayerMetadata = 1 << 21,
545 WriteLayerMetadata = 1 << 22,
546 CancelSupport = 1 << 23,
547 CreateRenderer = 1 << 24,
548 CreateLabeling = 1 << 25,
549 ReloadData = 1 << 26,
550 FeatureSymbology = 1 << 27,
551 CacheData = 1 << 28,
552 EditingCapabilities = AddFeatures | DeleteFeatures | ChangeAttributeValues | ChangeGeometries | AddAttributes | DeleteAttributes | RenameAttributes,
553 };
554 Q_ENUM( VectorProviderCapability )
555
556
565
572 {
573 Uncounted = -2,
574 UnknownCount = -1,
575 };
576 Q_ENUM( FeatureCountState )
577
578
585 {
586 Unknown SIP_MONKEYPATCH_COMPAT_NAME( SpatialIndexUnknown ) = 0,
587 NotPresent SIP_MONKEYPATCH_COMPAT_NAME( SpatialIndexNotPresent ) = 1,
588 Present SIP_MONKEYPATCH_COMPAT_NAME( SpatialIndexPresent ) = 2,
589 };
590 Q_ENUM( SpatialIndexPresence )
591
592
604 {
605 NoFeaturesAvailable = 0,
606 FeaturesAvailable,
607 FeaturesMaybeAvailable
608 };
609 Q_ENUM( FeatureAvailability )
610
611
617 {
618 EditAlias = 1 << 0,
619 EditComment = 1 << 1,
620 };
621
622 Q_ENUM( VectorDataProviderAttributeEditCapability )
623
624
631
637 {
638 Marker,
639 Line,
640 Fill,
641 Hybrid
642 };
643 Q_ENUM( SymbolType )
644
645
651 {
652 ScaleArea,
653 ScaleDiameter
654 };
655 Q_ENUM( ScaleMethod )
656
657
662 {
663 Custom,
664 Variant,
665 String,
666 StringList,
667 VariantMap,
668 Bool,
669 Integer,
670 Double,
671 EnumFlag,
672 Color
673 };
674 Q_ENUM( SettingsType )
675
676
681 {
682 Root,
683 Standard,
684 NamedList,
685 };
686 Q_ENUM( SettingsTreeNodeType )
687
688
692 enum class SettingsTreeNodeOption : int SIP_ENUM_BASETYPE( IntFlag )
693 {
694 NamedListSelectedItemSetting = 1 << 0,
695 };
696
697 Q_ENUM( SettingsTreeNodeOption )
700
709 {
710 Invalid SIP_MONKEYPATCH_COMPAT_NAME( InvalidProperty ),
711 Static SIP_MONKEYPATCH_COMPAT_NAME( StaticProperty ),
712 Field SIP_MONKEYPATCH_COMPAT_NAME( FieldBasedProperty ),
713 Expression SIP_MONKEYPATCH_COMPAT_NAME( ExpressionBasedProperty ),
714 };
715 Q_ENUM( PropertyType )
716
717
722 enum class SldExportOption : int SIP_ENUM_BASETYPE( IntFlag )
723 {
724 NoOptions = 0,
725 Svg = 1 << 0,
726 Png = 1 << 1,
727 };
728 Q_ENUM( SldExportOption )
730 Q_FLAG( SldExportOptions )
731
737 enum class SldExportVendorExtension : int SIP_ENUM_BASETYPE( IntFlag )
738 {
739 NoVendorExtension = 0,
740 GeoServerVendorExtension = 1 << 1,
741 DeegreeVendorExtension = 1 << 2,
742 };
743 Q_ENUM( SldExportVendorExtension )
744
745
746
750 enum class SettingsOption : int SIP_ENUM_BASETYPE( IntFlag )
751 {
752 SaveFormerValue = 1 << 1,
753 SaveEnumFlagAsInt = 1 << 2,
754 };
755 Q_ENUM( SettingsOption )
756 Q_DECLARE_FLAGS( SettingsOptions, SettingsOption )
757 Q_FLAG( SettingsOptions )
758
764 {
765 ActiveLayer = 1,
766 AllLayers = 2,
767 AdvancedConfiguration = 3,
768 };
769 Q_ENUM( SnappingMode )
770
771
776 {
777 NoSnap SIP_MONKEYPATCH_COMPAT_NAME( NoSnapFlag ) = 0,
778 Vertex SIP_MONKEYPATCH_COMPAT_NAME( VertexFlag ) = 1 << 0,
779 Segment SIP_MONKEYPATCH_COMPAT_NAME( SegmentFlag ) = 1 << 1,
780 Area SIP_MONKEYPATCH_COMPAT_NAME( AreaFlag ) = 1 << 2,
781 Centroid SIP_MONKEYPATCH_COMPAT_NAME( CentroidFlag ) = 1 << 3,
782 MiddleOfSegment SIP_MONKEYPATCH_COMPAT_NAME( MiddleOfSegmentFlag ) = 1 << 4,
783 LineEndpoint SIP_MONKEYPATCH_COMPAT_NAME( LineEndpointFlag ) = 1 << 5,
784 };
785 Q_ENUM( SnappingType )
788 Q_FLAG( SnappingTypes )
789
796 {
797 DynamicRotation = 1 << 1,
798 IsSymbolLayerSubSymbol = 1 << 2,
799 ForceVectorRendering = 1 << 3,
800 ExcludeSymbolBuffers = 1 << 4,
801 };
802 Q_ENUM( SymbolRenderHint )
805 Q_FLAG( SymbolRenderHints )
806
813 {
814 ReadSymbol = 1 << 0,
815 WriteSymbol = 1 << 1,
816 };
817
818 Q_ENUM( SymbolConverterCapability )
819
820
827
833 enum class SymbolRotationMode : int
834 {
835 RespectMapRotation,
836 IgnoreMapRotation,
837 };
838 Q_ENUM( SymbolRotationMode )
839
840
841
853 Q_ENUM( HorizontalAnchorPoint )
854
855
868 Q_ENUM( VerticalAnchorPoint )
869
870
875 enum class FeatureRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
876 {
877 AffectsLabeling = 1 << 0,
878 };
879 Q_ENUM( FeatureRendererFlag )
880
881
887 Q_FLAG( FeatureRendererFlags )
888
894 enum class SymbolFlag : int SIP_ENUM_BASETYPE( IntFlag )
895 {
896 RendererShouldUseSymbolLevels = 1 << 0,
897 AffectsLabeling = 1 << 1,
898 };
899 Q_ENUM( SymbolFlag )
901 Q_DECLARE_FLAGS( SymbolFlags, SymbolFlag )
902 Q_FLAG( SymbolFlags )
903
910 {
911 FlagIncludeCrosshairsForMarkerSymbols = 1 << 0,
912 };
913 Q_ENUM( SymbolPreviewFlag )
916 Q_FLAG( SymbolPreviewFlags )
917
927 enum class SymbolLayerFlag : int SIP_ENUM_BASETYPE( IntFlag )
928 {
929 DisableFeatureClipping = 1 << 0,
930 CanCalculateMaskGeometryPerFeature = 1 << 1,
931 AffectsLabeling = 1 << 2,
932 };
933 Q_ENUM( SymbolLayerFlag )
936 Q_FLAG( SymbolLayerFlags )
937
947 enum class SymbolLayerUserFlag : int SIP_ENUM_BASETYPE( IntFlag )
948 {
949 DisableSelectionRecoloring = 1 << 0,
950 };
951 Q_ENUM( SymbolLayerUserFlag )
952
953
959 Q_FLAG( SymbolLayerUserFlags )
960
967 {
968 Collection,
969 Directory,
970 Layer,
971 Error,
972 Favorites,
973 Project,
974 Custom,
975 Fields,
976 Field,
977 };
978 Q_ENUM( BrowserItemType )
979
980
986 {
987 NotPopulated,
988 Populating,
989 Populated,
990 };
991 Q_ENUM( BrowserItemState )
992
993
999 {
1000 NoCapabilities = 0,
1001 SetCrs = 1 << 0,
1002 Fertile = 1 << 1,
1003 Fast = 1 << 2,
1004 Collapse = 1 << 3,
1005 Rename = 1 << 4,
1006 Delete = 1 << 5,
1007 ItemRepresentsFile = 1 << 6,
1008 RefreshChildrenWhenItemIsRefreshed = 1 << 7,
1009 ReadOnly = 1 << 8,
1010 };
1011 Q_ENUM( BrowserItemCapability )
1014 Q_FLAG( BrowserItemCapabilities )
1015
1021 enum class BrowserItemFilterFlag : int SIP_ENUM_BASETYPE( IntFlag )
1022 {
1023 HideWhenNotFilteringByLayerType = 1 << 0,
1024 };
1025 Q_ENUM( BrowserItemFilterFlag )
1026
1027
1033 Q_FLAG( BrowserItemFilterFlags )
1034
1043 {
1044 NoCapabilities SIP_MONKEYPATCH_COMPAT_NAME( NoDataCapabilities ) = 0,
1046 Directories SIP_MONKEYPATCH_COMPAT_NAME( Dir ) = 1 << 1,
1047 Databases SIP_MONKEYPATCH_COMPAT_NAME( Database ) = 1 << 2,
1048 NetworkSources SIP_MONKEYPATCH_COMPAT_NAME( Net ) = 1 << 3,
1049 };
1050 Q_ENUM( DataItemProviderCapability )
1051
1052
1061
1068 {
1069 NoType,
1070 Vector,
1071 Raster,
1072 Point,
1073 Line,
1074 Polygon,
1075 TableLayer,
1076 Database,
1077 Table,
1078 Plugin,
1079 Mesh,
1080 VectorTile,
1081 PointCloud,
1082 TiledScene,
1083 };
1084 Q_ENUM( BrowserLayerType )
1085
1086
1092 {
1093 Default,
1094 NeverMonitor,
1095 AlwaysMonitor,
1096 };
1097 Q_ENUM( BrowserDirectoryMonitoring )
1098
1099
1103 enum class HttpMethod : int
1104 {
1105 Get = 0,
1106 Post = 1,
1107 Head,
1108 Put,
1109 Delete,
1110 };
1111 Q_ENUM( HttpMethod )
1112
1113
1119 {
1121 ErrorCreatingDataSource SIP_MONKEYPATCH_COMPAT_NAME( ErrCreateDataSource ),
1122 ErrorCreatingLayer SIP_MONKEYPATCH_COMPAT_NAME( ErrCreateLayer ),
1123 ErrorAttributeTypeUnsupported SIP_MONKEYPATCH_COMPAT_NAME( ErrAttributeTypeUnsupported ),
1124 ErrorAttributeCreationFailed SIP_MONKEYPATCH_COMPAT_NAME( ErrAttributeCreationFailed ),
1125 ErrorProjectingFeatures SIP_MONKEYPATCH_COMPAT_NAME( ErrProjection ),
1126 ErrorFeatureWriteFailed SIP_MONKEYPATCH_COMPAT_NAME( ErrFeatureWriteFailed ),
1127 ErrorInvalidLayer SIP_MONKEYPATCH_COMPAT_NAME( ErrInvalidLayer ),
1128 ErrorInvalidProvider SIP_MONKEYPATCH_COMPAT_NAME( ErrInvalidProvider ),
1129 ErrorProviderUnsupportedFeature SIP_MONKEYPATCH_COMPAT_NAME( ErrProviderUnsupportedFeature ),
1130 ErrorConnectionFailed SIP_MONKEYPATCH_COMPAT_NAME( ErrConnectionFailed ),
1131 UserCanceled SIP_MONKEYPATCH_COMPAT_NAME( ErrUserCanceled ),
1132 };
1133 Q_ENUM( VectorExportResult )
1134
1135
1140 {
1141 FieldAliases = 1 << 0,
1142 FieldComments = 1 << 2,
1143 };
1144 Q_ENUM( VectorFileWriterCapability )
1145
1146
1152
1158 {
1159 SubsetStringFilter = 1 << 1,
1160 GeometryColumn = 1 << 2,
1161 PrimaryKeys = 1 << 3,
1162 UnstableFeatureIds = 1 << 4
1163 };
1164 Q_ENUM( SqlLayerDefinitionCapability )
1168
1174 enum class SqlKeywordCategory : int
1175 {
1176 Keyword,
1177 Constant,
1178 Function,
1179 Geospatial,
1180 Operator,
1181 Math,
1183 String,
1184 Identifier
1185 };
1186 Q_ENUM( SqlKeywordCategory )
1187
1188
1192 enum class DriveType : int
1193 {
1194 Unknown,
1195 Invalid,
1196 Removable,
1197 Fixed,
1198 Remote,
1199 CdRom,
1200 RamDisk,
1201 Cloud,
1202 };
1203 Q_ENUM( DriveType )
1204
1205
1210 {
1211 Deferred SIP_MONKEYPATCH_COMPAT_NAME( DownloadLater ),
1212 Immediate SIP_MONKEYPATCH_COMPAT_NAME( DownloadImmediately ),
1213 };
1214 Q_ENUM( ActionStart )
1215
1216
1222 {
1223 FollowEngineSetting,
1224 NeverShow,
1225 };
1226 Q_ENUM( UnplacedLabelVisibility )
1227
1228
1233 enum class LabelOverlapHandling : int
1234 {
1235 PreventOverlap,
1236 AllowOverlapIfRequired,
1237 AllowOverlapAtNoCost,
1238 };
1239 Q_ENUM( LabelOverlapHandling )
1240
1241
1247 {
1248 TreatWhitespaceAsCollision,
1249 IgnoreWhitespaceCollisions,
1250 };
1251 Q_ENUM( LabelWhitespaceCollisionHandling )
1252
1253
1258 enum class LabelPrioritization : int
1259 {
1260 PreferCloser,
1261 PreferPositionOrdering,
1262 };
1263 Q_ENUM( LabelPrioritization )
1264
1265
1273 {
1274 AroundPoint,
1275 OverPoint,
1276 Line,
1277 Curved,
1278 Horizontal,
1279 Free,
1280 OrderedPositionsAroundPoint,
1281 PerimeterCurved,
1282 OutsidePolygons,
1283 };
1284 Q_ENUM( LabelPlacement )
1285
1286
1291 enum class CurvedLabelMode : int
1292 {
1293 Default,
1294 PlaceCharactersAtVertices,
1295 StretchCharacterSpacingToFitLine,
1296 StretchWordSpacingToFitLine,
1297 };
1298 Q_ENUM( CurvedLabelMode )
1299
1300
1308 {
1309 TopLeft,
1310 TopSlightlyLeft,
1311 TopMiddle,
1312 TopSlightlyRight,
1313 TopRight,
1314 MiddleLeft,
1315 MiddleRight,
1316 BottomLeft,
1317 BottomSlightlyLeft,
1318 BottomMiddle,
1319 BottomSlightlyRight,
1320 BottomRight,
1321 OverPoint,
1322 };
1323 Q_ENUM( LabelPredefinedPointPosition )
1324
1325
1331 {
1332 LabelLargestPartOnly,
1333 LabelEveryPartWithEntireLabel,
1334 SplitLabelTextLinesOverParts,
1335 };
1336 Q_ENUM( MultiPartLabelingBehavior )
1337
1338
1347 {
1348 FromPoint,
1349 FromSymbolBounds,
1350 };
1351 Q_ENUM( LabelOffsetType )
1352
1353
1361 {
1362 AboveLeft SIP_MONKEYPATCH_COMPAT_NAME( QuadrantAboveLeft ),
1363 Above SIP_MONKEYPATCH_COMPAT_NAME( QuadrantAbove ),
1364 AboveRight SIP_MONKEYPATCH_COMPAT_NAME( QuadrantAboveRight ),
1366 Over SIP_MONKEYPATCH_COMPAT_NAME( QuadrantOver ),
1368 BelowLeft SIP_MONKEYPATCH_COMPAT_NAME( QuadrantBelowLeft ),
1369 Below SIP_MONKEYPATCH_COMPAT_NAME( QuadrantBelow ),
1370 BelowRight SIP_MONKEYPATCH_COMPAT_NAME( QuadrantBelowRight ),
1371 };
1372 Q_ENUM( LabelQuadrantPosition )
1373
1374
1381 {
1382 OnLine = 1,
1383 AboveLine = 2,
1384 BelowLine = 4,
1385 MapOrientation = 8,
1386 };
1387 Q_ENUM( LabelLinePlacementFlag )
1388
1389
1397 Q_FLAG( LabelLinePlacementFlags )
1398
1406 {
1407 AllowPlacementOutsideOfPolygon = 1 << 0,
1408 AllowPlacementInsideOfPolygon = 1 << 1,
1409 };
1410 Q_ENUM( LabelPolygonPlacementFlag )
1411
1412
1420
1429 {
1430 FlipUpsideDownLabels SIP_MONKEYPATCH_COMPAT_NAME( Upright ),
1431 AllowUpsideDownWhenRotationIsDefined SIP_MONKEYPATCH_COMPAT_NAME( ShowDefined ),
1432 AlwaysAllowUpsideDown SIP_MONKEYPATCH_COMPAT_NAME( ShowAll )
1433 };
1434 Q_ENUM( UpsideDownLabelHandling )
1435
1436
1444 {
1446 Center SIP_MONKEYPATCH_COMPAT_NAME( MultiCenter ),
1448 FollowPlacement SIP_MONKEYPATCH_COMPAT_NAME( MultiFollowPlacement ),
1449 Justify SIP_MONKEYPATCH_COMPAT_NAME( MultiJustify ),
1450 };
1451 Q_ENUM( LabelMultiLineAlignment )
1452
1453
1460 {
1461 Vector SIP_MONKEYPATCH_COMPAT_NAME( FilterVector ) = 1,
1462 Raster SIP_MONKEYPATCH_COMPAT_NAME( FilterRaster ),
1463 Mesh SIP_MONKEYPATCH_COMPAT_NAME( FilterMesh ),
1464 MeshDataset SIP_MONKEYPATCH_COMPAT_NAME( FilterMeshDataset ),
1465 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( FilterPointCloud ),
1466 VectorTile,
1467 TiledScene,
1468 };
1469 Q_ENUM( FileFilterType )
1470
1471
1476 enum class UriCleaningFlag : int SIP_ENUM_BASETYPE( IntFlag )
1477 {
1478 RemoveCredentials = 1 << 0,
1479 RedactCredentials = 1 << 1,
1480 };
1481 Q_ENUM( UriCleaningFlag )
1482
1483
1489 Q_FLAG( UriCleaningFlags )
1490
1496 enum class SourceHierarchyLevel : int
1497 {
1498 Connection,
1499 Group,
1500 Object,
1501 };
1502 Q_ENUM( SourceHierarchyLevel )
1503
1504
1509 enum class SublayerQueryFlag : int SIP_ENUM_BASETYPE( IntFlag )
1510 {
1511 FastScan = 1 << 0,
1512 ResolveGeometryType = 1 << 1,
1513 CountFeatures = 1 << 2,
1514 IncludeSystemTables = 1 << 3,
1515 OpenLayersToResolveDescriptions = 1 << 4,
1516 };
1517
1520 Q_FLAG( SublayerQueryFlags )
1521
1522
1527 enum class SublayerFlag : int SIP_ENUM_BASETYPE( IntFlag )
1528 {
1529 SystemTable = 1 << 0,
1530 };
1531
1532 Q_DECLARE_FLAGS( SublayerFlags, SublayerFlag )
1534 Q_FLAG( SublayerFlags )
1535
1536
1544 {
1545 Linear SIP_MONKEYPATCH_COMPAT_NAME( Interpolated ) = 0,
1546 Discrete = 1,
1547 Exact = 2,
1548 };
1549 Q_ENUM( ShaderInterpolationMethod )
1550
1551
1559 {
1560 Continuous = 1,
1561 EqualInterval = 2,
1562 Quantile = 3,
1563 };
1564 Q_ENUM( ShaderClassificationMethod )
1565
1566
1572 {
1573 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownRole ) = 0,
1574 Provider SIP_MONKEYPATCH_COMPAT_NAME( ProviderRole ) = 1,
1575 Renderer SIP_MONKEYPATCH_COMPAT_NAME( RendererRole ) = 2,
1576 Brightness SIP_MONKEYPATCH_COMPAT_NAME( BrightnessRole ) = 3,
1577 Resampler SIP_MONKEYPATCH_COMPAT_NAME( ResamplerRole ) = 4,
1578 Projector SIP_MONKEYPATCH_COMPAT_NAME( ProjectorRole ) = 5,
1579 Nuller SIP_MONKEYPATCH_COMPAT_NAME( NullerRole ) = 6,
1580 HueSaturation SIP_MONKEYPATCH_COMPAT_NAME( HueSaturationRole ) = 7,
1581 };
1582 Q_ENUM( RasterPipeInterfaceRole )
1583
1584
1589 {
1590 ResampleFilter,
1591 Provider,
1592 };
1593 Q_ENUM( RasterResamplingStage )
1594
1595
1603 {
1604 Nearest,
1605 Bilinear,
1606 Cubic,
1607 CubicSpline,
1608 Lanczos,
1609 Average,
1610 Mode,
1611 Gauss
1612 };
1613 Q_ENUM( RasterResamplingMethod )
1614
1615
1620 enum class RasterRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
1621 {
1622 InternalLayerOpacityHandling = 1 << 0,
1623 UseNoDataForOutOfRangePixels
1624 = 1 << 1,
1625 };
1626
1633
1635 Q_FLAG( RasterRendererFlags )
1636
1637
1643 {
1644 UsesMultipleBands = 1 << 0,
1645 };
1646 Q_ENUM( RasterRendererCapability )
1647
1648
1655
1664 {
1666 MinimumMaximum SIP_MONKEYPATCH_COMPAT_NAME( MinMax ),
1667 StdDev,
1668 CumulativeCut
1669 };
1670 Q_ENUM( RasterRangeLimit )
1671
1672
1680 {
1681 WholeRaster SIP_MONKEYPATCH_COMPAT_NAME( None_ ),
1682 FixedCanvas SIP_MONKEYPATCH_COMPAT_NAME( CurrentCanvas ),
1683 UpdatedCanvas,
1684 };
1685 Q_ENUM( RasterRangeExtent )
1686
1687
1695 {
1696 Exact,
1697 Estimated,
1698 };
1699 Q_ENUM( RasterRangeAccuracy )
1700
1701
1707 {
1708 Generic = 0,
1709 PixelCount = 1,
1710 Name = 2,
1711 Min = 3,
1712 Max = 4,
1713 MinMax = 5,
1714 Red = 6,
1715 Green = 7,
1716 Blue = 8,
1717 Alpha = 9,
1718 RedMin = 10,
1719 GreenMin = 11,
1720 BlueMin = 12,
1721 AlphaMin = 13,
1722 RedMax = 14,
1723 GreenMax = 15,
1724 BlueMax = 16,
1725 AlphaMax = 17,
1726 MaxCount
1727 };
1728 Q_ENUM( RasterAttributeTableFieldUsage )
1729
1730
1736 {
1737 Thematic = 0,
1738 Athematic = 1
1739 };
1740 Q_ENUM( RasterAttributeTableType )
1741
1742
1749 {
1750 Raw = 0,
1751 RenderedImage SIP_MONKEYPATCH_COMPAT_NAME( Image ) = 1
1752 };
1753 Q_ENUM( RasterExportType )
1754
1755
1762 {
1764 SourceProviderError = 1,
1765 DestinationProviderError SIP_MONKEYPATCH_COMPAT_NAME( DestProviderError ) = 2,
1766 CreateDatasourceError = 3,
1767 WriteError = 4,
1768 NoDataConflict = 5,
1769 Canceled SIP_MONKEYPATCH_COMPAT_NAME( WriteCanceled ) = 6,
1770 };
1771 Q_ENUM( RasterFileWriterResult )
1772
1773
1778 enum class MeshEditingErrorType : int
1779 {
1780 NoError,
1781 InvalidFace,
1782 TooManyVerticesInFace,
1783 FlatFace,
1784 UniqueSharedVertex,
1785 InvalidVertex,
1786 ManifoldFace,
1787 };
1788 Q_ENUM( MeshEditingErrorType )
1789
1790
1795 enum class FilePathType : int
1796 {
1797 Absolute,
1798 Relative,
1799 };
1800 Q_ENUM( FilePathType )
1801
1802
1807 enum class SublayerPromptMode : int
1808 {
1809 AlwaysAsk,
1810 AskExcludingRasterBands,
1811 NeverAskSkip,
1812 NeverAskLoadAll,
1813 };
1814 Q_ENUM( SublayerPromptMode )
1815
1816
1824 {
1825 Unknown SIP_MONKEYPATCH_COMPAT_NAME( OriginUnknown ),
1826 Provider SIP_MONKEYPATCH_COMPAT_NAME( OriginProvider ),
1827 Join SIP_MONKEYPATCH_COMPAT_NAME( OriginJoin ),
1828 Edit SIP_MONKEYPATCH_COMPAT_NAME( OriginEdit ),
1829 Expression SIP_MONKEYPATCH_COMPAT_NAME( OriginExpression )
1830 };
1831 Q_ENUM( FieldOrigin )
1832
1833
1840 enum class FieldConfigurationFlag : int SIP_ENUM_BASETYPE( IntFlag )
1841 {
1842 NoFlag = 0,
1843 NotSearchable = 1 << 1,
1844 HideFromWms = 1 << 2,
1845 HideFromWfs = 1 << 3,
1846 };
1847 Q_ENUM( FieldConfigurationFlag )
1848
1849
1857 Q_FLAG( FieldConfigurationFlags )
1858
1864 enum class FieldMetadataProperty : int
1865 {
1866 GeometryCrs = 0x1000,
1867 GeometryWkbType = 0x1001,
1868 CustomProperty = 0x100000,
1869 };
1870 Q_ENUM( FieldMetadataProperty )
1871
1872
1877 enum class SelectionRenderingMode : int
1878 {
1879 Default,
1880 CustomColor,
1881 CustomSymbol,
1882 };
1883 Q_ENUM( SelectionRenderingMode )
1884
1885
1891 {
1892 SetSelection,
1893 AddToSelection,
1894 IntersectSelection,
1895 RemoveFromSelection,
1896 };
1897 Q_ENUM( SelectBehavior )
1898
1899
1905 {
1906 Intersect,
1907 Within,
1908 };
1909 Q_ENUM( SelectGeometryRelationship )
1910
1911
1916 enum class SelectionFlag : int SIP_ENUM_BASETYPE( IntFlag )
1917 {
1918 SingleFeatureSelection = 1 << 0,
1919 ToggleSelection = 1 << 1,
1920 };
1921
1927 Q_DECLARE_FLAGS( SelectionFlags, SelectionFlag )
1928
1930 Q_FLAG( SelectionFlags )
1931
1932
1938 {
1940 EmptyGeometry = 1,
1941 EditFailed = 2,
1942 FetchFeatureFailed = 3,
1943 InvalidLayer = 4,
1944 };
1945 Q_ENUM( VectorEditResult )
1946
1947
1953 {
1954 SemiTransparentCircle,
1955 Cross,
1956 NoMarker,
1957 };
1958 Q_ENUM( VertexMarkerType )
1959
1960
1964 enum class ContentStatus : int
1965 {
1966 NotStarted,
1967 Running,
1968 Finished,
1969 Failed,
1970 Canceled,
1971 };
1972 Q_ENUM( ContentStatus )
1973
1974
1979 enum class GpsConnectionType : int
1980 {
1981 Automatic,
1982 Internal,
1983 Serial,
1984 Gpsd,
1985 };
1986 Q_ENUM( GpsConnectionType )
1987
1988
1993 enum class DeviceConnectionStatus SIP_MONKEYPATCH_SCOPEENUM_UNNEST( Qgis, GpsConnectionStatus ) : int
1994 {
1995 Disconnected,
1996 Connecting,
1997 Connected,
1998 };
1999 Q_ENUM( DeviceConnectionStatus )
2000
2001
2009 {
2010 NoData,
2011 NoFix,
2012 Fix2D,
2013 Fix3D
2014 };
2016
2017
2024 {
2025 Unknown,
2026 Gps,
2027 Glonass,
2028 Galileo,
2029 BeiDou,
2030 Qzss,
2031 Navic,
2032 Sbas,
2033 };
2035
2042 {
2043 Unknown = -1,
2044 Invalid,
2045 GPS,
2046 DGPS,
2047 PPS,
2048 RTK,
2049 FloatRTK,
2050 Estimated,
2051 Manual,
2052 Simulation,
2053 };
2054 Q_ENUM( GpsQualityIndicator )
2055
2056
2061 enum class GpsNavigationStatus : int
2062 {
2063 NotValid,
2064 Safe,
2065 Caution,
2066 Unsafe,
2067 };
2069
2075 enum class GpsInformationComponent : int SIP_ENUM_BASETYPE( IntFlag )
2076 {
2077 Location = 1 << 0,
2078 Altitude = 1 << 1,
2079 GroundSpeed = 1 << 2,
2080 Bearing = 1 << 3,
2081 TotalTrackLength = 1 << 4,
2082 TrackDistanceFromStart = 1 << 5,
2083 Pdop = 1 << 6,
2084 Hdop = 1 << 7,
2085 Vdop = 1 << 8,
2086 HorizontalAccuracy = 1 << 9,
2087 VerticalAccuracy = 1 << 10,
2088 HvAccuracy = 1 << 11,
2089 SatellitesUsed = 1 << 12,
2090 Timestamp = 1 << 13,
2091 TrackStartTime = 1 << 14,
2092 TrackEndTime = 1 << 15,
2093 TrackDistanceSinceLastPoint = 1 << 16,
2094 TrackTimeSinceLastPoint = 1 << 17,
2095 GeoidalSeparation = 1 << 18,
2096 EllipsoidAltitude = 1 << 19,
2097 };
2098
2106 Q_FLAG( GpsInformationComponents )
2107
2108
2113 enum class BabelFormatCapability : int SIP_ENUM_BASETYPE( IntFlag )
2114 {
2115 Import = 1 << 0,
2116 Export = 1 << 1,
2117 Waypoints = 1 << 2,
2118 Routes = 1 << 3,
2119 Tracks = 1 << 4,
2120 };
2121
2124 Q_FLAG( BabelFormatCapabilities )
2125
2126
2132 enum class BabelCommandFlag : int SIP_ENUM_BASETYPE( IntFlag )
2133 {
2134 QuoteFilePaths = 1 << 0,
2135 };
2136
2139 Q_FLAG( BabelCommandFlags )
2140
2141
2146 enum class GpsFeatureType : int
2147 {
2148 Waypoint,
2149 Route,
2150 Track,
2151 };
2152 Q_ENUM( GpsFeatureType )
2153
2154
2162 {
2164 NothingHappened = 1000,
2165 InvalidBaseGeometry,
2166 InvalidInputGeometryType,
2167 SelectionIsEmpty,
2168 SelectionIsGreaterThanOne,
2169 GeometryEngineError,
2170 LayerNotEditable,
2171 // Add part issues
2172 AddPartSelectedGeometryNotFound,
2173 AddPartNotMultiGeometry,
2174 // Add ring issues
2175 AddRingNotClosed,
2176 AddRingNotValid,
2177 AddRingCrossesExistingRings,
2178 AddRingNotInExistingFeature,
2179 // Split features
2180 SplitCannotSplitPoint,
2181 GeometryTypeHasChanged,
2182 };
2183 Q_ENUM( GeometryOperationResult )
2184
2185
2191 {
2192 AllowSelfTouchingHoles SIP_MONKEYPATCH_COMPAT_NAME( FlagAllowSelfTouchingHoles )
2193 = 1 << 0,
2194 };
2195
2198 Q_FLAG( GeometryValidityFlags )
2199
2200
2205 {
2206 QgisInternal SIP_MONKEYPATCH_COMPAT_NAME( ValidatorQgisInternal ),
2207 Geos SIP_MONKEYPATCH_COMPAT_NAME( ValidatorGeos ),
2208 };
2209 Q_ENUM( GeometryValidationEngine )
2210
2211
2221 Q_ENUM( BufferSide )
2222
2223
2234 Q_ENUM( EndCapStyle )
2235
2236
2242 {
2243 Round SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleRound ) = 1,
2244 Miter SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleMiter ),
2245 Bevel SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleBevel ),
2246 };
2247 Q_ENUM( JoinStyle )
2248
2249
2254 enum class JoinStyle3D : int
2255 {
2256 Round = 1,
2257 Flat,
2258 CylindersAndSpheres,
2259 };
2260 Q_ENUM( JoinStyle3D )
2261
2262
2267 enum class GeometryBackend : int
2268 {
2269 QGIS = 1,
2270 GEOS,
2271 };
2272 Q_ENUM( GeometryBackend )
2273
2274
2279 enum class GeosCreationFlag : int SIP_ENUM_BASETYPE( IntFlag )
2280 {
2281 RejectOnInvalidSubGeometry = 1 << 0,
2282 SkipEmptyInteriorRings = 1 << 1,
2283 };
2284 Q_ENUM( GeosCreationFlag )
2285
2286
2292 Q_FLAG( GeosCreationFlags )
2293
2299 enum class CoverageValidityResult : int
2300 {
2301 Invalid = 0,
2302 Valid = 1,
2303 Error = 2,
2304 };
2305 Q_ENUM( CoverageValidityResult )
2306
2307
2312 enum class MakeValidMethod : int
2313 {
2314 Linework = 0,
2315 Structure = 1,
2316 };
2317 Q_ENUM( MakeValidMethod )
2318
2319
2327 {
2328 NoFlags = 0,
2329 NoGeometry = 1,
2330 SubsetOfAttributes = 2,
2331 ExactIntersect = 4,
2332 IgnoreStaticNodesDuringExpressionCompilation
2333 = 8,
2334 EmbeddedSymbols = 16,
2335 };
2336 Q_ENUM( FeatureRequestFlag )
2337
2338
2346 Q_FLAG( FeatureRequestFlags )
2347
2356 {
2357 NoFilter SIP_MONKEYPATCH_COMPAT_NAME( FilterNone ),
2359 Expression SIP_MONKEYPATCH_COMPAT_NAME( FilterExpression ),
2361 };
2362 Q_ENUM( FeatureRequestFilterType )
2363
2364
2372 {
2373 NoCheck SIP_MONKEYPATCH_COMPAT_NAME( GeometryNoCheck ) = 0,
2374 SkipInvalid SIP_MONKEYPATCH_COMPAT_NAME( GeometrySkipInvalid ) = 1,
2375 AbortOnInvalid SIP_MONKEYPATCH_COMPAT_NAME( GeometryAbortOnInvalid ) = 2,
2376 };
2377 Q_ENUM( InvalidGeometryCheck )
2378
2379
2384 enum class SpatialFilterType : int
2385 {
2386 NoFilter,
2387 BoundingBox,
2388 DistanceWithin,
2389 };
2390 Q_ENUM( SpatialFilterType )
2391
2392
2397 enum class FileOperationFlag : int SIP_ENUM_BASETYPE( IntFlag )
2398 {
2399 IncludeMetadataFile = 1 << 0,
2400 IncludeStyleFile = 1 << 1,
2401 };
2402
2405 Q_FLAG( FileOperationFlags )
2406
2407
2412 enum class MapLayerProperty : int SIP_ENUM_BASETYPE( IntFlag )
2413 {
2414 UsersCannotToggleEditing
2415 = 1 << 0,
2416 IsBasemapLayer = 1 << 1,
2417 Is3DBasemapLayer = 1 << 2,
2418 };
2419
2422 Q_FLAG( MapLayerProperties )
2423
2424
2429 enum class AutoRefreshMode : int
2430 {
2431 Disabled = 0,
2432 ReloadData = 1,
2433 RedrawOnly = 2,
2434 };
2435 Q_ENUM( AutoRefreshMode )
2436
2437
2442 enum class DataProviderFlag : int SIP_ENUM_BASETYPE( IntFlag )
2443 {
2444 IsBasemapSource = 1 << 1,
2445 FastExtent2D = 1 << 2,
2446 FastExtent3D = 1 << 3,
2447 Is3DBasemapSource = 1 << 4,
2448 };
2449
2452 Q_FLAG( DataProviderFlags )
2453
2454
2461 enum class CrsType : int
2462 {
2463 Unknown,
2464 Geodetic,
2465 Geocentric,
2466 Geographic2d,
2467 Geographic3d,
2468 Vertical,
2469 Projected,
2470 Compound,
2471 Temporal,
2472 Engineering,
2473 Bound,
2474 Other,
2475 DerivedProjected,
2476 };
2477 Q_ENUM( CrsType )
2478
2479
2486 enum class CrsAxisDirection : int
2487 {
2488 North,
2489 NorthNorthEast,
2490 NorthEast,
2491 EastNorthEast,
2492 East,
2493 EastSouthEast,
2494 SouthEast,
2495 SouthSouthEast,
2496 South,
2497 SouthSouthWest,
2498 SouthWest,
2499 WestSouthWest,
2500 West,
2501 WestNorthWest,
2502 NorthWest,
2503 NorthNorthWest,
2504 GeocentricX,
2505 GeocentricY,
2506 GeocentricZ,
2509 Forward,
2510 Aft,
2511 Port,
2512 Starboard,
2513 Clockwise,
2514 CounterClockwise,
2515 ColumnPositive,
2516 ColumnNegative,
2517 RowPositive,
2518 RowNegative,
2519 DisplayRight,
2520 DisplayLeft,
2521 DisplayUp,
2522 DisplayDown,
2523 Future,
2524 Past,
2525 Towards,
2526 AwayFrom,
2527 Unspecified,
2528 };
2529 Q_ENUM( CrsAxisDirection )
2530
2531
2536 enum class CoordinateOrder : int
2537 {
2538 Default,
2539 XY,
2540 YX,
2541 };
2542 Q_ENUM( CoordinateOrder )
2543
2544
2552 {
2553 ShortString,
2554 MediumString,
2555 FullString,
2556 };
2557 Q_ENUM( CrsIdentifierType )
2558
2559
2567 {
2569 WKT1_GDAL
2570 ),
2571 Wkt1Esri SIP_MONKEYPATCH_COMPAT_NAME( WKT1_ESRI ),
2572 Wkt2_2015 SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2015 ),
2573 Wkt2_2015Simplified SIP_MONKEYPATCH_COMPAT_NAME(
2574 WKT2_2015_SIMPLIFIED
2575 ),
2577 WKT2_2019
2578 ),
2579 Wkt2_2019Simplified SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2019_SIMPLIFIED ),
2580 Preferred SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED ) = Wkt2_2019,
2581 PreferredSimplified SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED_SIMPLIFIED )
2582 = Wkt2_2019Simplified,
2583 PreferredGdal SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED_GDAL ) = Wkt2_2019,
2584 };
2585 Q_ENUM( CrsWktVariant )
2586
2587
2593 {
2594 NoAction = 0,
2595 PromptUserForCrs = 1,
2596 UseProjectCrs = 2,
2597 UseDefaultCrs = 3,
2598 };
2599 Q_ENUM( UnknownLayerCrsBehavior )
2600
2601
2606 enum class Axis : int
2607 {
2608 X,
2609 Y,
2611 };
2612 Q_ENUM( Axis )
2613
2614
2619 enum class AnnotationItemFlag : int SIP_ENUM_BASETYPE( IntFlag )
2620 {
2621 ScaleDependentBoundingBox = 1 << 0,
2622 SupportsReferenceScale = 1 << 1,
2623 SupportsCallouts = 1 << 2,
2624 };
2625
2628 Q_FLAG( AnnotationItemFlags )
2629
2630
2636 {
2637 SpatialBounds = 0,
2638 FixedSize,
2639 RelativeToMapFrame,
2640 };
2641 Q_ENUM( AnnotationPlacementMode )
2642
2643
2648 enum class AnnotationItemGuiFlag : int SIP_ENUM_BASETYPE( IntFlag )
2649 {
2650 FlagNoCreationTools = 1 << 0,
2651 };
2652
2655 Q_FLAG( AnnotationItemGuiFlags )
2656
2657
2662 enum class AnnotationItemNodeType : int
2663 {
2664 VertexHandle,
2665 CalloutHandle,
2666 };
2667 Q_ENUM( AnnotationItemNodeType )
2668
2669
2675 {
2677 Invalid,
2678 ItemCleared,
2679 };
2680 Q_ENUM( AnnotationItemEditOperationResult )
2681
2682
2690 {
2691 Disabled SIP_MONKEYPATCH_COMPAT_NAME( NavigationOff ),
2692 Animated,
2693 FixedRange,
2694 Movie,
2695 };
2696 Q_ENUM( TemporalNavigationMode )
2697
2698
2711 Q_ENUM( AnimationState )
2712
2713
2718 enum class PlaybackOperation : int
2719 {
2720 SkipToStart,
2721 PreviousFrame,
2722 PlayReverse,
2723 Pause,
2724 PlayForward,
2725 NextFrame,
2726 SkipToEnd,
2727 };
2728 Q_ENUM( PlaybackOperation )
2729
2730
2736 {
2737 FixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ModeFixedTemporalRange ) = 0,
2738 FeatureDateTimeInstantFromField SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeInstantFromField ),
2739 FeatureDateTimeStartAndEndFromFields SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndEndFromFields ),
2740 FeatureDateTimeStartAndDurationFromFields SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndDurationFromFields ),
2741 FeatureDateTimeStartAndEndFromExpressions SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndEndFromExpressions ),
2743 ModeRedrawLayerOnly
2744 ),
2745 };
2746 Q_ENUM( VectorTemporalMode )
2747
2748
2754 {
2755 IncludeBeginExcludeEnd = 0,
2756 IncludeBeginIncludeEnd,
2757 };
2758 Q_ENUM( VectorTemporalLimitMode )
2759
2760
2766 {
2767 HasFixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ProviderHasFixedTemporalRange ) = 0,
2768 StoresFeatureDateTimeInstantInField SIP_MONKEYPATCH_COMPAT_NAME( ProviderStoresFeatureDateTimeInstantInField ),
2769 StoresFeatureDateTimeStartAndEndInSeparateFields SIP_MONKEYPATCH_COMPAT_NAME( ProviderStoresFeatureDateTimeStartAndEndInSeparateFields ),
2770 };
2771 Q_ENUM( VectorDataProviderTemporalMode )
2772
2773
2779 {
2780 FixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ModeFixedTemporalRange ) = 0,
2781 TemporalRangeFromDataProvider SIP_MONKEYPATCH_COMPAT_NAME( ModeTemporalRangeFromDataProvider ) = 1,
2782 RedrawLayerOnly SIP_MONKEYPATCH_COMPAT_NAME( ModeRedrawLayerOnly )
2783 = 2,
2784 FixedRangePerBand = 3,
2785 RepresentsTemporalValues = 4,
2786 FixedDateTime = 5,
2787 };
2788 Q_ENUM( RasterTemporalMode )
2789
2790
2796 {
2797 MatchUsingWholeRange,
2798 MatchExactUsingStartOfRange,
2799 MatchExactUsingEndOfRange,
2800 FindClosestMatchToStartOfRange,
2801 FindClosestMatchToEndOfRange
2802 };
2803 Q_ENUM( TemporalIntervalMatchMethod )
2804
2805
2811 {
2812 RequestedTimesMustExactlyMatchAllAvailableTemporalRanges
2813 = 1 << 0,
2814 };
2815 Q_ENUM( RasterTemporalCapabilityFlag )
2816
2817
2824
2835 Q_ENUM( TransformDirection )
2836
2837
2843 {
2844 BallparkTransformsAreAppropriate
2845 = 1 << 0,
2846 IgnoreImpossibleTransformations
2847 = 1 << 1,
2848 };
2849 Q_ENUM( CoordinateTransformationFlag )
2850
2851
2858
2865 {
2866 Default,
2867 PreferVector,
2868 ForceVector,
2869 };
2870 Q_ENUM( RasterizedRenderingPolicy )
2871
2872
2878 {
2879 Antialiasing = 0x01,
2880 DrawEditingInfo = 0x02,
2881 ForceVectorOutput = 0x04,
2882 UseAdvancedEffects = 0x08,
2883 DrawLabeling = 0x10,
2884 UseRenderingOptimization = 0x20,
2885 DrawSelection = 0x40,
2886 DrawSymbolBounds = 0x80,
2887 RenderMapTile = 0x100,
2888 RenderPartialOutput = 0x200,
2889 RenderPreviewJob = 0x400,
2890 RenderBlocking = 0x800,
2891 LosslessImageRendering
2892 = 0x1000,
2893 Render3DMap = 0x2000,
2894 HighQualityImageTransforms = 0x4000,
2895 SkipSymbolRendering = 0x8000,
2896 ForceRasterMasks = 0x10000,
2897 RecordProfile = 0x20000,
2898 AlwaysUseGlobalMasks
2899 = 0x40000,
2900 };
2901
2904 Q_FLAG( MapSettingsFlags )
2905
2906
2912 {
2913 DrawEditingInfo = 0x01,
2914 ForceVectorOutput = 0x02,
2915 UseAdvancedEffects = 0x04,
2916 UseRenderingOptimization = 0x08,
2917 DrawSelection = 0x10,
2918 DrawSymbolBounds = 0x20,
2919 RenderMapTile = 0x40,
2920 Antialiasing = 0x80,
2921 RenderPartialOutput = 0x100,
2922 RenderPreviewJob = 0x200,
2923 RenderBlocking = 0x400,
2924 RenderSymbolPreview = 0x800,
2925 LosslessImageRendering = 0x1000,
2926 ApplyScalingWorkaroundForTextRendering = 0x2000,
2927 Render3DMap = 0x4000,
2928 ApplyClipAfterReprojection = 0x8000,
2929 RenderingSubSymbol = 0x10000,
2930 HighQualityImageTransforms = 0x20000,
2931 SkipSymbolRendering = 0x40000,
2932 RecordProfile = 0x80000,
2933 AlwaysUseGlobalMasks = 0x100000,
2934 DisableSymbolClippingToExtent = 0x200000,
2935 RenderLayerTree = 0x400000
2936 };
2937
2940 Q_FLAG( RenderContextFlags )
2941
2942
2947 enum class MapLayerRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
2948 {
2949 RenderPartialOutputs = 1 << 0,
2950 RenderPartialOutputOverPreviousCachedImage = 1 << 1,
2951 AffectsLabeling = 1 << 2,
2952 };
2953 Q_ENUM( MapLayerRendererFlag )
2954
2955
2961 Q_FLAG( MapLayerRendererFlags )
2962
2968 enum class PaintEffectFlag : int SIP_ENUM_BASETYPE( IntFlag )
2969 {
2970 RequiresRasterization = 1 << 0,
2971 };
2972 Q_ENUM( PaintEffectFlag )
2973
2974
2980 Q_FLAG( PaintEffectFlags )
2981
2982 // refs for below dox: https://github.com/qgis/QGIS/pull/1286#issuecomment-39806854
2983 // https://github.com/qgis/QGIS/pull/8573#issuecomment-445585826
2984
2990 {
2992 TextFormatAlwaysOutlines
2993 ),
2995 TextFormatAlwaysText
2996 ),
2997 PreferText,
2998 };
2999 Q_ENUM( TextRenderFormat )
3000
3001
3009 {
3010 UseAllLabels = 1 << 1,
3011 UsePartialCandidates = 1 << 2,
3012 // TODO QGIS 5.0: remove
3013 RenderOutlineLabels = 1 << 3,
3014 DrawLabelRectOnly = 1 << 4,
3015 DrawCandidates = 1 << 5,
3016 DrawUnplacedLabels = 1 << 6,
3017 CollectUnplacedLabels = 1 << 7,
3018 DrawLabelMetrics = 1 << 8,
3019 };
3020 Q_ENUM( LabelingFlag )
3021
3022
3030 Q_FLAG( LabelingFlags )
3031
3040 {
3041 Version1 SIP_MONKEYPATCH_COMPAT_NAME( PlacementEngineVersion1 ),
3042 Version2 SIP_MONKEYPATCH_COMPAT_NAME( PlacementEngineVersion2 ),
3043 };
3044 Q_ENUM( LabelPlacementEngineVersion )
3045
3046
3054 {
3055 Horizontal SIP_MONKEYPATCH_COMPAT_NAME( HorizontalOrientation ),
3056 Vertical SIP_MONKEYPATCH_COMPAT_NAME( VerticalOrientation ),
3057 RotationBased SIP_MONKEYPATCH_COMPAT_NAME( RotationBasedOrientation ),
3058 };
3059 Q_ENUM( TextOrientation )
3060
3061
3069 {
3071 Point,
3073 RectangleCapHeightBased,
3074 RectangleAscentBased,
3075 };
3076 Q_ENUM( TextLayoutMode )
3077
3078
3086 {
3087 Text = 1 << 0,
3088 Buffer = 1 << 1,
3089 Background = 1 << 2,
3090 Shadow = 1 << 3,
3091 };
3092 Q_ENUM( TextComponent )
3093
3094
3099 Q_DECLARE_FLAGS( TextComponents, TextComponent )
3100 Q_FLAG( TextComponents )
3101
3116 Q_ENUM( TextHorizontalAlignment )
3117
3118
3129 {
3131 VerticalCenter SIP_MONKEYPATCH_COMPAT_NAME( AlignVCenter ),
3132 Bottom SIP_MONKEYPATCH_COMPAT_NAME( AlignBottom ),
3133 };
3134 Q_ENUM( TextVerticalAlignment )
3135
3136
3145 {
3146 Normal,
3147 SuperScript,
3148 SubScript,
3149 };
3150 Q_ENUM( TextCharacterVerticalAlignment )
3151
3152
3158 {
3159 TruncateStringWhenLineIsTooShort = 1 << 0,
3160 UseBaselinePlacement = 1 << 1,
3161 UprightCharactersOnly = 1 << 2,
3162 ExtendLineToFitText = 1 << 3,
3163 };
3164 Q_ENUM( CurvedTextFlag )
3165
3166
3172
3181 {
3182 Distance = 0,
3183 SnapToGrid = 1,
3184 Visvalingam = 2,
3185 SnappedToGridGlobal = 3,
3186 };
3187 Q_ENUM( VectorSimplificationAlgorithm )
3188
3189
3197 {
3198 NoSimplification = 0,
3199 GeometrySimplification = 1,
3200 AntialiasingSimplification = 2,
3201 FullSimplification = 3,
3202 };
3203 Q_ENUM( VectorRenderingSimplificationFlag )
3204
3205
3214
3221 {
3222 Generic,
3223 ShadowOffset,
3224 BlurSize,
3225 GlowSpread,
3226 };
3227 Q_ENUM( RenderSubcomponentProperty )
3228
3229
3235 {
3236 SymbolLayer,
3237 Label,
3238 };
3239 Q_ENUM( SelectiveMaskSourceType )
3240
3241
3246 {
3247 Segment SIP_MONKEYPATCH_COMPAT_NAME( SegmentVertex ) = 1,
3248 Curve SIP_MONKEYPATCH_COMPAT_NAME( CurveVertex ) = 2,
3249 ControlPoint SIP_MONKEYPATCH_COMPAT_NAME( ControlPointVertex ) = 3,
3250 };
3251 Q_ENUM( VertexType )
3252
3253
3261 {
3262 Square,
3263 Diamond,
3264 Pentagon,
3265 Hexagon,
3266 Triangle,
3267 EquilateralTriangle,
3268 Star,
3269 Arrow,
3270 Circle,
3271 Cross,
3272 CrossFill,
3273 Cross2,
3274 Line,
3275 ArrowHead,
3276 ArrowHeadFilled,
3277 SemiCircle,
3278 ThirdCircle,
3279 QuarterCircle,
3280 QuarterSquare,
3281 HalfSquare,
3282 DiagonalHalfSquare,
3283 RightHalfTriangle,
3284 LeftHalfTriangle,
3285 Octagon,
3286 SquareWithCorners,
3287 AsteriskFill,
3288 HalfArc,
3289 ThirdArc,
3290 QuarterArc,
3291 ParallelogramRight,
3292 ParallelogramLeft,
3293 Trapezoid,
3294 Shield,
3295 DiamondStar,
3296 Heart,
3297 Decagon,
3298 RoundedSquare,
3299 };
3300 Q_ENUM( MarkerShape )
3301
3302
3310 {
3311 Interval = 1 << 0,
3312 Vertex = 1 << 1,
3313 LastVertex = 1 << 2,
3314 FirstVertex = 1 << 3,
3315 CentralPoint = 1 << 4,
3316 CurvePoint = 1 << 5,
3317 SegmentCenter = 1 << 6,
3318 InnerVertices = 1 << 7,
3319 };
3320 Q_ENUM( MarkerLinePlacement )
3322 Q_FLAG( MarkerLinePlacements )
3323
3330 {
3331 IntervalCartesian2D = 1 << 0,
3332 IntervalZ = 1 << 1,
3333 IntervalM = 1 << 2,
3334 Vertex = 1 << 3,
3335 };
3336 Q_ENUM( LinearReferencingPlacement )
3337
3338
3344 {
3345 CartesianDistance2D,
3346 Z,
3347 M,
3348 };
3349 Q_ENUM( LinearReferencingLabelSource )
3350
3351
3359 {
3360 SimpleTwoColor,
3361 ColorRamp,
3362 };
3363 Q_ENUM( GradientColorSource )
3364
3365
3378 Q_ENUM( GradientType )
3379
3380
3388 {
3389 Feature,
3390 Viewport,
3391 };
3392 Q_ENUM( SymbolCoordinateReference )
3393
3394
3408 Q_ENUM( GradientSpread )
3409
3410
3418 {
3419 Absolute SIP_MONKEYPATCH_COMPAT_NAME( AbsoluteCount ),
3420 DensityBased SIP_MONKEYPATCH_COMPAT_NAME( DensityBasedCount ),
3421 };
3422 Q_ENUM( PointCountMethod )
3423
3424
3429 enum class MarkerClipMode : int
3430 {
3431 NoClipping,
3432 Shape,
3433 CentroidWithin,
3434 CompletelyWithin,
3435 };
3436 Q_ENUM( MarkerClipMode )
3437
3438
3443 enum class LineClipMode : int
3444 {
3445 ClipPainterOnly,
3446 ClipToIntersection,
3447 NoClipping,
3448 };
3449 Q_ENUM( LineClipMode )
3450
3451
3457 {
3458 NoRule,
3459 FullDash,
3460 HalfDash,
3461 FullGap,
3462 HalfGap,
3463 };
3464 Q_ENUM( DashPatternLineEndingRule )
3465
3466
3472 {
3473 ScaleBothDashAndGap,
3474 ScaleDashOnly,
3475 ScaleGapOnly,
3476 };
3477 Q_ENUM( DashPatternSizeAdjustment )
3478
3479
3491 Q_ENUM( GraduatedMethod )
3492
3493
3499 {
3500 NoLabels,
3501 EveryLabel,
3502 FirstLabel,
3503 LastLabel,
3504 FirstAndLastLabels,
3505 };
3506 Q_ENUM( PlotAxisSuffixPlacement )
3507
3508
3509
3514 enum class PlotAxisType
3515 {
3516 Interval,
3517 Categorical,
3518 };
3519 Q_ENUM( PlotAxisType )
3520
3521
3526 enum class PieChartLabelType : int
3527 {
3528 NoLabels,
3529 Categories,
3530 Values,
3531 };
3532 Q_ENUM( PieChartLabelType )
3533
3534
3538 enum class DpiMode
3539 {
3540 All = 7,
3541 Off = 0,
3542 QGIS = 1,
3543 UMN = 2,
3544 GeoServer = 4,
3545 };
3546 Q_ENUM( DpiMode )
3547
3548
3553 {
3554 Undefined = 0,
3555 StandardDpi = 1,
3556 HighDpi = 2,
3557 };
3558 Q_ENUM( TilePixelRatio )
3559
3560 // NOTE -- the hardcoded numbers here must match QFont::Capitalization!
3561
3562
3570 {
3571 MixedCase = 0,
3572 AllUppercase = 1,
3573 AllLowercase = 2,
3574 ForceFirstLetterToCapital = 4,
3575 SmallCaps = 5,
3576 TitleCase = 1004,
3577 UpperCamelCase = 1005,
3578 AllSmallCaps = 1006,
3579 };
3580 Q_ENUM( Capitalization )
3581
3582
3587 enum class TextRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
3588 {
3589 WrapLines = 1 << 0,
3590 };
3591 Q_ENUM( TextRendererFlag )
3593 Q_FLAG( TextRendererFlags )
3594
3601 {
3602 MapBox,
3603 Esri,
3604 };
3606
3613 {
3614 Clockwise,
3615 CounterClockwise,
3616 NoOrientation,
3617 };
3618 Q_ENUM( AngularDirection )
3619
3620
3625 enum class RendererUsage : int
3626 {
3627 View,
3628 Export,
3629 Unknown,
3630 };
3631 Q_ENUM( RendererUsage )
3632
3633
3638 enum class MapCanvasFlag : int SIP_ENUM_BASETYPE( IntFlag )
3639 {
3640 ShowMainAnnotationLayer = 1 << 0,
3641 };
3642 Q_ENUM( MapCanvasFlag )
3643
3644
3649 Q_DECLARE_FLAGS( MapCanvasFlags, MapCanvasFlag )
3650 Q_FLAG( MapCanvasFlags )
3651
3657 enum class ViewSyncModeFlag : int SIP_ENUM_BASETYPE( IntFlag )
3658 {
3659 Sync3DTo2D = 1 << 0,
3660 Sync2DTo3D = 1 << 1,
3661 };
3662 Q_ENUM( ViewSyncModeFlag )
3664
3671 {
3672 Always,
3673 WhenOutsideVisibleExtent,
3674 Never,
3675 };
3676 Q_ENUM( MapRecenteringMode )
3677
3678
3683 enum class HistoryProviderBackend : int SIP_ENUM_BASETYPE( IntFlag )
3684 {
3685 LocalProfile = 1 << 0,
3686 // Project = 1 << 1, //!< QGIS Project (not yet implemented)
3687 };
3688 Q_ENUM( HistoryProviderBackend )
3690 Q_FLAG( HistoryProviderBackends )
3691
3697 enum class QueryStorageBackend : int
3698 {
3699 LocalProfile,
3700 CurrentProject,
3701 };
3702 Q_ENUM( QueryStorageBackend )
3703
3704
3712 {
3713 MapLayer SIP_MONKEYPATCH_COMPAT_NAME( TypeMapLayer ) = -2,
3714 VectorAnyGeometry SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorAnyGeometry ) = -1,
3715 VectorPoint SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorPoint ) = 0,
3716 VectorLine SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorLine ) = 1,
3717 VectorPolygon SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorPolygon ) = 2,
3718 Raster SIP_MONKEYPATCH_COMPAT_NAME( TypeRaster ) = 3,
3719 File SIP_MONKEYPATCH_COMPAT_NAME( TypeFile ) = 4,
3720 Vector SIP_MONKEYPATCH_COMPAT_NAME( TypeVector ) = 5,
3721 Mesh SIP_MONKEYPATCH_COMPAT_NAME( TypeMesh ) = 6,
3722 Plugin SIP_MONKEYPATCH_COMPAT_NAME( TypePlugin ) = 7,
3723 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( TypePointCloud ) = 8,
3724 Annotation SIP_MONKEYPATCH_COMPAT_NAME( TypeAnnotation ) = 9,
3725 VectorTile SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorTile ) = 10,
3726 TiledScene = 11
3727 };
3728 Q_ENUM( ProcessingSourceType )
3729
3730
3731
3739 {
3740 DeemphasiseSearchResults SIP_MONKEYPATCH_COMPAT_NAME( FlagDeemphasiseSearchResults )
3741 = 1 << 1,
3742 CompatibleWithVirtualRaster SIP_MONKEYPATCH_COMPAT_NAME( FlagCompatibleWithVirtualRaster ) = 1 << 2,
3743 };
3745
3754 Q_FLAG( ProcessingProviderFlags )
3755
3756
3764 {
3765 HideFromToolbox SIP_MONKEYPATCH_COMPAT_NAME( FlagHideFromToolbox ) = 1 << 1,
3766 HideFromModeler SIP_MONKEYPATCH_COMPAT_NAME( FlagHideFromModeler ) = 1 << 2,
3767 SupportsBatch SIP_MONKEYPATCH_COMPAT_NAME( FlagSupportsBatch ) = 1 << 3,
3768 CanCancel SIP_MONKEYPATCH_COMPAT_NAME( FlagCanCancel ) = 1 << 4,
3769 RequiresMatchingCrs SIP_MONKEYPATCH_COMPAT_NAME( FlagRequiresMatchingCrs ) = 1 << 5,
3770 NoThreading SIP_MONKEYPATCH_COMPAT_NAME( FlagNoThreading ) = 1 << 6,
3771 DisplayNameIsLiteral SIP_MONKEYPATCH_COMPAT_NAME( FlagDisplayNameIsLiteral ) = 1 << 7,
3772 SupportsInPlaceEdits SIP_MONKEYPATCH_COMPAT_NAME( FlagSupportsInPlaceEdits ) = 1 << 8,
3773 KnownIssues SIP_MONKEYPATCH_COMPAT_NAME( FlagKnownIssues ) = 1 << 9,
3774 CustomException SIP_MONKEYPATCH_COMPAT_NAME( FlagCustomException ) = 1 << 10,
3775 PruneModelBranchesBasedOnAlgorithmResults SIP_MONKEYPATCH_COMPAT_NAME( FlagPruneModelBranchesBasedOnAlgorithmResults ) = 1 << 11,
3776 SkipGenericModelLogging SIP_MONKEYPATCH_COMPAT_NAME( FlagSkipGenericModelLogging ) = 1 << 12,
3777 NotAvailableInStandaloneTool SIP_MONKEYPATCH_COMPAT_NAME( FlagNotAvailableInStandaloneTool ) = 1 << 13,
3778 RequiresProject SIP_MONKEYPATCH_COMPAT_NAME( FlagRequiresProject ) = 1 << 14,
3779 SecurityRisk = 1 << 15,
3780 Deprecated SIP_MONKEYPATCH_COMPAT_NAME( FlagDeprecated ) = HideFromToolbox | HideFromModeler,
3781 };
3783
3792 Q_FLAG( ProcessingAlgorithmFlags )
3793
3794
3800 {
3801 RegeneratesPrimaryKey = 1 << 0,
3802 RegeneratesPrimaryKeyInSomeScenarios = 1 << 1,
3803 RespectsEllipsoid = 1 << 2,
3804 };
3805 Q_ENUM( ProcessingAlgorithmDocumentationFlag )
3806
3807
3814
3824 {
3825 NotAvailable,
3826 Available,
3827 };
3828 Q_ENUM( ProcessingPropertyAvailability )
3829
3830
3838 {
3839 DefaultLevel = 0,
3840 Verbose,
3841 ModelDebug,
3842 };
3843 Q_ENUM( ProcessingLogLevel )
3844
3845
3853 {
3854 Standard,
3855 Batch,
3856 Modeler,
3857 };
3858 Q_ENUM( ProcessingMode )
3859
3860
3868 {
3869 OverrideDefaultGeometryCheck SIP_MONKEYPATCH_COMPAT_NAME( FlagOverrideDefaultGeometryCheck )
3870 = 1 << 0,
3871 CreateIndividualOutputPerInputFeature SIP_MONKEYPATCH_COMPAT_NAME( FlagCreateIndividualOutputPerInputFeature )
3872 = 1 << 1,
3873 };
3874 Q_ENUM( ProcessingFeatureSourceDefinitionFlag )
3875
3876
3885
3894 {
3895 SkipGeometryValidityChecks SIP_MONKEYPATCH_COMPAT_NAME( FlagSkipGeometryValidityChecks ) = 1 << 1,
3896 };
3897 Q_ENUM( ProcessingFeatureSourceFlag )
3898
3899
3908
3920 {
3921 ExposeToModeler = 1
3922 };
3923 Q_ENUM( ProcessingParameterTypeFlag )
3924
3925
3937
3946 {
3947 Advanced SIP_MONKEYPATCH_COMPAT_NAME( FlagAdvanced ) = 1 << 1,
3948 Hidden SIP_MONKEYPATCH_COMPAT_NAME( FlagHidden ) = 1 << 2,
3949 Optional SIP_MONKEYPATCH_COMPAT_NAME( FlagOptional ) = 1 << 3,
3950 IsModelOutput SIP_MONKEYPATCH_COMPAT_NAME( FlagIsModelOutput ) = 1 << 4,
3951 };
3952 Q_ENUM( ProcessingParameterFlag )
3953
3954
3962 Q_FLAG( ProcessingParameterFlags )
3963
3976 Q_ENUM( ProcessingFileParameterBehavior )
3977
3978
3990 Q_ENUM( ProcessingNumberParameterType )
3991
3992
4000 {
4001 Any = -1,
4002 Numeric = 0,
4003 String = 1,
4004 DateTime = 2,
4005 Binary = 3,
4006 Boolean = 4,
4007 };
4008 Q_ENUM( ProcessingFieldParameterDataType )
4009
4010
4023 Q_ENUM( ProcessingDateTimeParameterDataType )
4024
4025
4031 {
4032 ModelParameter,
4033 ChildOutput,
4034 StaticValue,
4035 Expression,
4036 ExpressionText,
4037 ModelOutput,
4038 };
4039 Q_ENUM( ProcessingModelChildParameterSource )
4040
4041
4047 {
4048 NotExecuted,
4050 Failed,
4051 };
4052 Q_ENUM( ProcessingModelChildAlgorithmExecutionStatus )
4053
4054
4062 {
4063 Vertices,
4064 StructureLines,
4065 BreakLines
4066 };
4067 Q_ENUM( ProcessingTinInputLayerType )
4068
4069
4079 Q_ENUM( CrsDefinitionFormat )
4080
4081
4089 enum class FieldDomainSplitPolicy : int
4090 {
4091 DefaultValue,
4092 Duplicate,
4093 GeometryRatio,
4094 UnsetField,
4095 };
4096 Q_ENUM( FieldDomainSplitPolicy )
4097
4098
4106 enum class FieldDomainMergePolicy : int
4107 {
4108 DefaultValue,
4109 Sum,
4110 GeometryWeighted,
4111 UnsetField,
4112 LargestGeometry,
4113 MinimumValue,
4114 MaximumValue,
4115 SetToNull,
4116 };
4117 Q_ENUM( FieldDomainMergePolicy )
4118
4119
4126 enum class FieldDuplicatePolicy : int
4127 {
4128 DefaultValue,
4129 Duplicate,
4130 UnsetField,
4131 };
4132 Q_ENUM( FieldDuplicatePolicy )
4133
4134
4139 enum class FieldDomainType : int
4140 {
4141 Coded,
4142 Range,
4143 Glob,
4144 };
4145 Q_ENUM( FieldDomainType )
4146
4147
4152 enum class TransactionMode : int
4153 {
4154 Disabled = 0,
4155 AutomaticGroups = 1,
4156 BufferedGroups = 2,
4157 };
4158 Q_ENUM( TransactionMode )
4159
4160
4165 enum class AltitudeClamping : int
4166 {
4167 Absolute,
4168 Relative,
4169 Terrain,
4170 };
4171 Q_ENUM( AltitudeClamping )
4172
4173
4178 enum class AltitudeBinding : int
4179 {
4180 Vertex,
4181 Centroid,
4182 };
4183 Q_ENUM( AltitudeBinding )
4184
4185
4190 enum class RangeLimits : int
4191 {
4192 IncludeBoth = 0,
4193 IncludeLowerExcludeUpper,
4194 ExcludeLowerIncludeUpper,
4195 ExcludeBoth,
4196 };
4197 Q_ENUM( RangeLimits )
4198
4199
4204 enum class RasterElevationMode : int
4205 {
4206 FixedElevationRange = 0,
4207 RepresentsElevationSurface = 1,
4208 FixedRangePerBand = 2,
4209 DynamicRangePerBand = 3,
4210 };
4211 Q_ENUM( RasterElevationMode )
4212
4213
4218 enum class MeshElevationMode : int
4219 {
4220 FixedElevationRange = 0,
4221 FromVertices = 1,
4222 FixedRangePerGroup = 2,
4223 };
4224 Q_ENUM( MeshElevationMode )
4225
4226
4232 {
4233 NoConstraint,
4234 Perpendicular,
4235 Parallel
4236 };
4237 Q_ENUM( BetweenLineConstraint )
4238
4239
4244 enum class LineExtensionSide : int
4245 {
4246 BeforeVertex,
4247 AfterVertex,
4248 NoVertex,
4249 };
4250 Q_ENUM( LineExtensionSide )
4251
4252
4253
4257 enum class CadConstraintType : int
4258 {
4259 Generic,
4260 Angle,
4261 Distance,
4262 XCoordinate,
4263 YCoordinate,
4264 ZValue,
4265 MValue,
4266 };
4267 Q_ENUM( CadConstraintType )
4268
4269
4274 {
4275 Hidden,
4276 Cartesian,
4277 Ellipsoidal,
4278 };
4279 Q_ENUM( CadMeasurementDisplayType )
4280
4281
4286 enum class ProjectFlag : int SIP_ENUM_BASETYPE( IntFlag )
4287 {
4288 EvaluateDefaultValuesOnProviderSide = 1 << 0,
4289 TrustStoredLayerStatistics
4290 = 1 << 1,
4291 RememberLayerEditStatusBetweenSessions = 1 << 2,
4292 RememberAttributeTableWindowsBetweenSessions = 1 << 3,
4293 };
4294 Q_ENUM( ProjectFlag )
4295 Q_DECLARE_FLAGS( ProjectFlags, ProjectFlag )
4296 Q_FLAG( ProjectFlags )
4297
4303 enum class PlotToolFlag : int SIP_ENUM_BASETYPE( IntFlag )
4304 {
4305 ShowContextMenu = 1 << 0,
4306 };
4307 Q_ENUM( PlotToolFlag )
4308 Q_DECLARE_FLAGS( PlotToolFlags, PlotToolFlag )
4309 Q_FLAG( PlotToolFlags )
4310
4318 enum class Map3DDebugFlag : int SIP_ENUM_BASETYPE( IntFlag )
4319 {
4320 ShowTerrainBoundingBoxes = 1 << 0,
4321 ShowTerrainTileInfo = 1 << 1,
4322 ShowCameraViewCenter = 1 << 2,
4323 ShowCameraRotationCenter = 1 << 3,
4324 ShowLightSourceOrigins = 1 << 4,
4325 ShowFPS = 1 << 5,
4326 ShowDebugPanel = 1 << 6,
4327 };
4328 Q_ENUM( Map3DDebugFlag )
4330 Q_FLAG( Map3DDebugFlags )
4331
4339 enum class Point3DShape : int
4340 {
4341 Cylinder,
4342 Sphere,
4343 Cone,
4344 Cube,
4345 Torus,
4346 Plane,
4347 ExtrudedText,
4348 Model,
4349 Billboard,
4350 };
4351 Q_ENUM( Point3DShape )
4352
4353
4362 {
4363 Triangles,
4364 Lines,
4365 InstancedPoints,
4366 Points,
4367 TrianglesWithFixedTexture,
4368 TrianglesFromModel,
4369 TrianglesDataDefined,
4370 Billboards,
4371 };
4372 Q_ENUM( MaterialRenderingTechnique )
4373
4374
4379 enum class InstancedMaterialFlag : int SIP_ENUM_BASETYPE( IntFlag )
4380 {
4381 DataDefinedScale = 1 << 0,
4382 DataDefinedRotation = 1 << 1,
4383 };
4384 Q_ENUM( InstancedMaterialFlag )
4386 Q_FLAG( InstancedMaterialFlags )
4387
4393 enum class TextureFilterQuality : int
4394 {
4395 Trilinear,
4396 Anisotropic2x,
4397 Anisotropic4x,
4398 Anisotropic8x,
4399 Anisotropic16x,
4400 };
4401 Q_ENUM( TextureFilterQuality )
4402
4403
4408 enum class ShadowQuality : int
4409 {
4410 Low,
4411 Medium,
4412 High,
4413 VeryHigh,
4414 Extreme,
4415 };
4416 Q_ENUM( ShadowQuality )
4417
4418
4423 enum class LightSourceType : int
4424 {
4425 Point,
4426 Directional,
4427 Sun,
4428 };
4429 Q_ENUM( LightSourceType )
4430
4431
4435 enum class Map3DBackgroundType : int
4436 {
4437 NoBackground,
4438 FixedGradientBackground,
4439 DistinctTextureSkybox,
4440 };
4441 Q_ENUM( Map3DBackgroundType )
4442
4443
4448 enum class SkyboxCubeMapping : int
4449 {
4450 NativeZUp,
4451 OpenGLYUp,
4452 GodotYUp,
4453 UnrealEngineZUp,
4454 LeftHandedYUpMirrored,
4455 };
4456 Q_ENUM( SkyboxCubeMapping )
4457
4458
4463 enum class NavigationMode : int
4464 {
4465 TerrainBased,
4466 Walk,
4467 GlobeTerrainBased
4468 };
4469 Q_ENUM( NavigationMode )
4470
4471
4476 enum class SceneMode : int
4477 {
4478 Local,
4479 Globe
4480 };
4481 Q_ENUM( SceneMode )
4482
4483
4488 enum class VerticalAxisInversion : int
4489 {
4490 Never,
4491 WhenDragging,
4492 Always,
4493 };
4494 Q_ENUM( VerticalAxisInversion )
4495
4496
4502 enum class ToneMappingMethod : int
4503 {
4504 Clamp,
4505 Aces,
4506 };
4507 Q_ENUM( ToneMappingMethod )
4508
4509
4514 enum class Export3DSceneFormat : int
4515 {
4516 Obj,
4517 StlAscii
4518 };
4519 Q_ENUM( Export3DSceneFormat )
4520
4521
4527 {
4528 Line,
4529 FillBelow,
4530 FillAbove,
4531 };
4533
4539 enum class VectorProfileType : int
4540 {
4541 IndividualFeatures,
4542 ContinuousSurface,
4543 };
4545
4551 enum class PointCloudProfileType : int
4552 {
4553 IndividualPoints,
4554 TriangulatedSurface,
4555 };
4557
4563 enum class ProfileGeneratorFlag : int SIP_ENUM_BASETYPE( IntFlag )
4564 {
4565 RespectsMaximumErrorMapUnit = 1 << 0,
4566 RespectsDistanceRange = 1 << 1,
4567 RespectsElevationRange = 1 << 2,
4568 };
4569 Q_ENUM( ProfileGeneratorFlag )
4571 Q_FLAG( ProfileGeneratorFlags )
4572
4578 enum class ProfileExportType : int
4579 {
4580 Features3D,
4581 Profile2D,
4582 DistanceVsElevationTable,
4583 };
4585
4592 {
4593 Square,
4594 Circle,
4595 };
4596 Q_ENUM( PointCloudSymbol )
4597
4598
4604 {
4605 Default,
4606 BottomToTop,
4607 TopToBottom,
4608 };
4609 Q_ENUM( PointCloudDrawOrder )
4610
4611
4619 {
4620 AllowIntersections,
4621 AvoidIntersectionsCurrentLayer,
4622 AvoidIntersectionsLayers,
4623 };
4624 Q_ENUM( AvoidIntersectionsMode )
4625
4626
4634 {
4635 Qgz,
4636 Qgs,
4637 };
4638 Q_ENUM( ProjectFileFormat )
4639
4640
4648 {
4649 DontResolveLayers SIP_MONKEYPATCH_COMPAT_NAME( FlagDontResolveLayers )
4650 = 1 << 0,
4651 DontLoadLayouts SIP_MONKEYPATCH_COMPAT_NAME( FlagDontLoadLayouts )
4652 = 1 << 1,
4653 TrustLayerMetadata SIP_MONKEYPATCH_COMPAT_NAME( FlagTrustLayerMetadata )
4654 = 1 << 2,
4655 DontStoreOriginalStyles SIP_MONKEYPATCH_COMPAT_NAME( FlagDontStoreOriginalStyles ) = 1 << 3,
4656 DontLoad3DViews SIP_MONKEYPATCH_COMPAT_NAME( FlagDontLoad3DViews ) = 1 << 4,
4657 DontLoadProjectStyles = 1 << 5,
4658 ForceReadOnlyLayers = 1 << 6,
4659 DontUpgradeAnnotations = 1 << 7,
4660 };
4661 Q_ENUM( ProjectReadFlag )
4662
4663
4671 Q_FLAG( ProjectReadFlags )
4672
4681 enum class ProjectCapability : int SIP_ENUM_BASETYPE( IntFlag )
4682 {
4683 ProjectStyles = 1 << 0,
4684 };
4685 Q_ENUM( ProjectCapability )
4686
4687
4693 Q_FLAG( ProjectCapabilities )
4694
4701 {
4702 Vector,
4703 Raster,
4704 RasterDem,
4705 GeoJson,
4706 Image,
4707 Video,
4708 Unknown,
4709 };
4710 Q_ENUM( MapBoxGlStyleSourceType )
4711
4712
4720 {
4721 FeatureServer SIP_MONKEYPATCH_COMPAT_NAME( FeatureService ),
4722 MapServer SIP_MONKEYPATCH_COMPAT_NAME( MapService ),
4723 ImageServer SIP_MONKEYPATCH_COMPAT_NAME( ImageService ),
4724 GlobeServer,
4725 GPServer,
4726 GeocodeServer,
4727 Unknown,
4728 SceneServer,
4729 };
4730 Q_ENUM( ArcGisRestServiceType )
4731
4732
4741 {
4742 Map = 1 << 0,
4743 Query = 1 << 1,
4744 Update = 1 << 2,
4745 Delete = 1 << 3,
4746 Create = 1 << 4,
4747 Image = 1 << 5,
4748 TilesOnly = 1 << 6,
4749 };
4750 Q_ENUM( ArcGisRestServiceCapability )
4751
4752
4759
4768 {
4769 Normal,
4770 Generated,
4771 };
4772 Q_ENUM( RelationshipType )
4773
4774
4782 {
4783 Association,
4784 Composition,
4785 };
4786 Q_ENUM( RelationshipStrength )
4787
4788
4794 {
4795 OneToOne,
4796 OneToMany,
4797 ManyToOne,
4798 ManyToMany,
4799 };
4800 Q_ENUM( RelationshipCardinality )
4801
4802
4807 enum class RelationshipCapability : int SIP_ENUM_BASETYPE( IntFlag )
4808 {
4809 MultipleFieldKeys = 1 << 0,
4810 ForwardPathLabel = 1 << 1,
4811 BackwardPathLabel = 1 << 2,
4812 };
4813 Q_ENUM( RelationshipCapability )
4814
4815
4821 Q_FLAG( RelationshipCapabilities )
4822
4828 enum class CoordinateDisplayType : int
4829 {
4830 MapCrs,
4831 MapGeographic,
4832 CustomCrs,
4833 };
4834 Q_ENUM( CoordinateDisplayType )
4835
4836
4841 enum class SettingsOrigin : int
4842 {
4843 Any,
4844 Global,
4845 Local,
4846 };
4847 Q_ENUM( SettingsOrigin )
4848
4849
4854 enum class ScriptLanguage : int
4855 {
4856 Css,
4857 QgisExpression,
4858 Html,
4859 JavaScript,
4860 Json,
4861 Python,
4862 R,
4863 Sql,
4864 Batch,
4865 Bash,
4866 Unknown,
4867 };
4868 Q_ENUM( ScriptLanguage )
4869
4870
4878 {
4879 Reformat = 1 << 0,
4880 CheckSyntax = 1 << 1,
4881 ToggleComment = 1 << 2,
4882 };
4883 Q_ENUM( ScriptLanguageCapability )
4884
4885
4892
4899 {
4900 AboveInsertionPoint,
4901 TopOfTree,
4902 OptimalInInsertionGroup,
4903 };
4904 Q_ENUM( LayerTreeInsertionMethod )
4905
4906
4912 {
4913 LayerProperties = 0,
4914 AttributeTable = 1,
4915 LayerStyling = 2,
4916 };
4917 Q_ENUM( LegendLayerDoubleClickAction )
4918
4919
4924 enum class LayerTreeFilterFlag : int SIP_ENUM_BASETYPE( IntFlag )
4925 {
4926 SkipVisibilityCheck = 1 << 0,
4927 };
4928 Q_ENUM( LayerTreeFilterFlag )
4929
4930
4936 Q_FLAG( LayerTreeFilterFlags )
4937
4943 enum class MapLayerLegendFlag : int SIP_ENUM_BASETYPE( IntFlag )
4944 {
4945 ExcludeByDefault = 1 << 0,
4946 };
4947 Q_ENUM( MapLayerLegendFlag )
4948
4949
4955 Q_FLAG( MapLayerLegendFlags )
4956
4965 {
4966 Undefined,
4967 Hidden,
4968 Title,
4969 Group,
4970 Subgroup,
4971 Symbol,
4972 SymbolLabel,
4973 };
4974 // !!! WARNING: If adding new values to this enum, make sure you update QgsLegendSettings constructor accordingly!!
4975 Q_ENUM( LegendComponent )
4976
4977
4982 enum class LegendSyncMode : int
4983 {
4984 AllProjectLayers,
4985 VisibleLayers,
4986 Manual,
4987 };
4988 Q_ENUM( LegendSyncMode )
4989
4990
4997 enum class LegendJsonRenderFlag : int SIP_ENUM_BASETYPE( IntFlag )
4998 {
4999 ShowRuleDetails = 1 << 0,
5000 };
5001 Q_ENUM( LegendJsonRenderFlag )
5003 Q_FLAG( LegendJsonRenderFlags )
5004
5012 enum class ActionType : int
5013 {
5014 Invalid,
5015 MapLayerAction,
5016 AttributeAction
5017 };
5018 Q_ENUM( ActionType )
5019
5020
5027 enum class MapLayerActionTarget : int SIP_ENUM_BASETYPE( IntFlag )
5028 {
5029 Layer = 1 << 0,
5030 SingleFeature = 1 << 1,
5031 MultipleFeatures = 1 << 2,
5032 AllActions = Layer | SingleFeature | MultipleFeatures
5033 };
5034 Q_ENUM( MapLayerActionTarget )
5035
5036
5044 Q_FLAG( MapLayerActionTargets )
5045
5053 enum class MapLayerActionFlag : int SIP_ENUM_BASETYPE( IntFlag )
5054 {
5055 EnabledOnlyWhenEditable = 1 << 1,
5056 EnableOnlyWhenHasGeometry = 1 << 2,
5057 };
5058 Q_ENUM( MapLayerActionFlag )
5059
5060
5068 Q_FLAG( MapLayerActionFlags )
5069
5078 {
5079 Generic,
5080 GenericPython,
5081 Mac,
5082 Windows,
5083 Unix,
5084 OpenUrl,
5085 SubmitUrlEncoded,
5086 SubmitUrlMultipart,
5087 };
5088 Q_ENUM( AttributeActionType )
5089
5090
5096 {
5097 Created,
5098 Published,
5099 Revised,
5100 Superseded,
5101 };
5102 Q_ENUM( MetadataDateType )
5103
5104
5113
5115 {
5116 Undefined SIP_MONKEYPATCH_COMPAT_NAME( UndefinedColorInterpretation ) = 0,
5117 GrayIndex = 1,
5118 PaletteIndex = 2,
5119 RedBand = 3,
5120 GreenBand = 4,
5121 BlueBand = 5,
5122 AlphaBand = 6,
5123 HueBand = 7,
5124 SaturationBand = 8,
5125 LightnessBand = 9,
5126 CyanBand = 10,
5127 MagentaBand = 11,
5128 YellowBand = 12,
5129 BlackBand = 13,
5130 YCbCr_YBand = 14,
5131 YCbCr_CbBand = 15,
5132 YCbCr_CrBand = 16,
5133 ContinuousPalette = 17,
5134
5135 // Note: values between PanBand and SAR_P_Band match additions done in
5136 // GDAL 3.10, except that the numeric values of the constant don't match GDAL ones
5137
5138 PanBand = 18,
5139 CoastalBand = 19,
5140 RedEdgeBand = 20,
5141 NIRBand = 21,
5142 SWIRBand = 22,
5143 MWIRBand = 23,
5144 LWIRBand = 24,
5145 TIRBand = 25,
5146 OtherIRBand = 26,
5147 SAR_Ka_Band = 27,
5148 SAR_K_Band = 28,
5149 SAR_Ku_Band = 30,
5150 SAR_X_Band = 31,
5151 SAR_C_Band = 32,
5152 SAR_S_Band = 33,
5153 SAR_L_Band = 34,
5154 SAR_P_Band = 35,
5155 };
5156 Q_ENUM( RasterColorInterpretation )
5157
5158
5166 {
5167 GrayOrUndefined,
5168 Palette,
5169 MultiBand SIP_MONKEYPATCH_COMPAT_NAME( Multiband ),
5170 SingleBandColorData SIP_MONKEYPATCH_COMPAT_NAME( ColorLayer ),
5171 };
5172 Q_ENUM( RasterLayerType )
5173
5174
5182 {
5183 Undefined SIP_MONKEYPATCH_COMPAT_NAME( UndefinedDrawingStyle ),
5184 SingleBandGray,
5185 SingleBandPseudoColor,
5186 PalettedColor,
5187 PalettedSingleBandGray,
5188 PalettedSingleBandPseudoColor,
5189 PalettedMultiBandColor,
5190 MultiBandSingleBandGray,
5191 MultiBandSingleBandPseudoColor,
5192 MultiBandColor,
5193 SingleBandColorData SIP_MONKEYPATCH_COMPAT_NAME( SingleBandColorDataStyle ),
5194 };
5195 Q_ENUM( RasterDrawingStyle )
5196
5197
5204 enum class RasterPyramidFormat SIP_MONKEYPATCH_SCOPEENUM_UNNEST( QgsRaster, RasterPyramidsFormat ) : int
5205 {
5206 GeoTiff SIP_MONKEYPATCH_COMPAT_NAME( PyramidsGTiff ) = 0,
5207 Internal SIP_MONKEYPATCH_COMPAT_NAME( PyramidsInternal ) = 1,
5208 Erdas SIP_MONKEYPATCH_COMPAT_NAME( PyramidsErdas ) = 2
5209 };
5210 Q_ENUM( RasterPyramidFormat )
5211
5212
5220 {
5221 No SIP_MONKEYPATCH_COMPAT_NAME( PyramidsFlagNo ) = 0,
5222 Yes SIP_MONKEYPATCH_COMPAT_NAME( PyramidsFlagYes ) = 1,
5223 CopyExisting SIP_MONKEYPATCH_COMPAT_NAME( PyramidsCopyExisting ) = 2
5224 };
5225 Q_ENUM( RasterBuildPyramidOption )
5226
5227
5235 {
5236 Undefined SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatUndefined ) = 0,
5237 Value SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatValue ) = 1,
5238 Text SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatText ) = 1 << 1,
5239 Html SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatHtml ) = 1 << 2,
5240 Feature SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatFeature ) = 1 << 3,
5241 };
5242 Q_ENUM( RasterIdentifyFormat )
5243
5244 // TODO QGIS 5 -- remove NoCapabilities and rely on RasterInterfaceCapabilities() instead
5245 // remove deprecated members
5246 // Remove "Identify" member, and replace with combinations of IdentifyValue/IdentifyText/etc
5247
5248
5256 {
5257 NoCapabilities = 0,
5258 Size = 1 << 1,
5259 Create = 1 << 2,
5260 Remove = 1 << 3,
5261 BuildPyramids = 1 << 4,
5262 Identify = 1 << 5,
5263 IdentifyValue = 1 << 6,
5264 IdentifyText = 1 << 7,
5265 IdentifyHtml = 1 << 8,
5266 IdentifyFeature = 1 << 9,
5267 Prefetch = 1 << 10,
5268 };
5269 Q_ENUM( RasterInterfaceCapability )
5270
5271
5278
5279 // TODO QGIS 5 -- remove NoProviderCapabilities and rely on RasterProviderCapabilities() instead
5280
5289 {
5290 NoProviderCapabilities = 0,
5291 ReadLayerMetadata = 1 << 1,
5292 WriteLayerMetadata = 1 << 2,
5293 ProviderHintBenefitsFromResampling = 1 << 3,
5294 ProviderHintCanPerformProviderResampling = 1 << 4,
5295 ReloadData = 1 << 5,
5296 DpiDependentData = 1 << 6,
5297 NativeRasterAttributeTable = 1 << 7,
5298 BuildPyramids = 1 << 8,
5299 };
5300 Q_ENUM( RasterProviderCapability )
5301
5302
5311
5318 {
5319 HighestElevation,
5320 NewerElevation,
5321 };
5322 Q_ENUM( ElevationMapCombineMethod )
5323
5324
5333 {
5334 Normal SIP_MONKEYPATCH_COMPAT_NAME( BlendNormal ),
5335 Lighten SIP_MONKEYPATCH_COMPAT_NAME( BlendLighten ),
5336 Screen SIP_MONKEYPATCH_COMPAT_NAME( BlendScreen ),
5337 Dodge SIP_MONKEYPATCH_COMPAT_NAME( BlendDodge ),
5338 Addition SIP_MONKEYPATCH_COMPAT_NAME( BlendAddition ),
5339 Darken SIP_MONKEYPATCH_COMPAT_NAME( BlendDarken ),
5340 Multiply SIP_MONKEYPATCH_COMPAT_NAME( BlendMultiply ),
5342 Overlay SIP_MONKEYPATCH_COMPAT_NAME( BlendOverlay ),
5343 SoftLight SIP_MONKEYPATCH_COMPAT_NAME( BlendSoftLight ),
5344 HardLight SIP_MONKEYPATCH_COMPAT_NAME( BlendHardLight ),
5345 Difference SIP_MONKEYPATCH_COMPAT_NAME( BlendDifference ),
5346 Subtract SIP_MONKEYPATCH_COMPAT_NAME( BlendSubtract ),
5347 Source SIP_MONKEYPATCH_COMPAT_NAME( BlendSource ),
5348 DestinationOver SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationOver ),
5349 Clear SIP_MONKEYPATCH_COMPAT_NAME( BlendClear ),
5350 Destination SIP_MONKEYPATCH_COMPAT_NAME( BlendDestination ),
5351 SourceIn SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceIn ),
5352 DestinationIn SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationIn ),
5353 SourceOut SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceOut ),
5354 DestinationOut SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationOut ),
5355 SourceAtop SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceAtop ),
5356 DestinationAtop SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationAtop ),
5358 };
5359 Q_ENUM( BlendMode )
5360
5361
5369 {
5370 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownSystem ) = 0,
5371 Metric SIP_MONKEYPATCH_COMPAT_NAME( MetricSystem ),
5372 Imperial SIP_MONKEYPATCH_COMPAT_NAME( ImperialSystem ),
5373 USCS SIP_MONKEYPATCH_COMPAT_NAME( USCSSystem ),
5374 };
5375 Q_ENUM( SystemOfMeasurement )
5376
5377
5384 {
5385 Layer SIP_MONKEYPATCH_COMPAT_NAME( LayerUnits ),
5386 Pixels,
5387 Project SIP_MONKEYPATCH_COMPAT_NAME( ProjectUnits )
5388 };
5389 Q_ENUM( MapToolUnit )
5390
5391
5399 {
5400 Distance SIP_MONKEYPATCH_COMPAT_NAME( TypeDistance ) = 0,
5402 Volume SIP_MONKEYPATCH_COMPAT_NAME( TypeVolume ),
5403 Unknown SIP_MONKEYPATCH_COMPAT_NAME( TypeUnknown ),
5404 Temporal SIP_MONKEYPATCH_COMPAT_NAME( TypeTemporal ),
5405 };
5406 Q_ENUM( UnitType )
5407
5408
5416 {
5417 Meters SIP_MONKEYPATCH_COMPAT_NAME( DistanceMeters ),
5418 Kilometers SIP_MONKEYPATCH_COMPAT_NAME( DistanceKilometers ),
5419 Feet SIP_MONKEYPATCH_COMPAT_NAME( DistanceFeet ),
5420 NauticalMiles SIP_MONKEYPATCH_COMPAT_NAME( DistanceNauticalMiles ),
5421 Yards SIP_MONKEYPATCH_COMPAT_NAME( DistanceYards ),
5422 Miles SIP_MONKEYPATCH_COMPAT_NAME( DistanceMiles ),
5423 Degrees SIP_MONKEYPATCH_COMPAT_NAME( DistanceDegrees ),
5424 Centimeters SIP_MONKEYPATCH_COMPAT_NAME( DistanceCentimeters ),
5425 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( DistanceMillimeters ),
5426 Inches,
5427 ChainsInternational,
5428 ChainsBritishBenoit1895A,
5429 ChainsBritishBenoit1895B,
5430 ChainsBritishSears1922Truncated,
5431 ChainsBritishSears1922,
5432 ChainsClarkes,
5433 ChainsUSSurvey,
5434 FeetBritish1865,
5435 FeetBritish1936,
5436 FeetBritishBenoit1895A,
5437 FeetBritishBenoit1895B,
5438 FeetBritishSears1922Truncated,
5439 FeetBritishSears1922,
5440 FeetClarkes,
5441 FeetGoldCoast,
5442 FeetIndian,
5443 FeetIndian1937,
5444 FeetIndian1962,
5445 FeetIndian1975,
5446 FeetUSSurvey,
5447 LinksInternational,
5448 LinksBritishBenoit1895A,
5449 LinksBritishBenoit1895B,
5450 LinksBritishSears1922Truncated,
5451 LinksBritishSears1922,
5452 LinksClarkes,
5453 LinksUSSurvey,
5454 YardsBritishBenoit1895A,
5455 YardsBritishBenoit1895B,
5456 YardsBritishSears1922Truncated,
5457 YardsBritishSears1922,
5458 YardsClarkes,
5459 YardsIndian,
5460 YardsIndian1937,
5461 YardsIndian1962,
5462 YardsIndian1975,
5463 MilesUSSurvey,
5464 Fathoms,
5465 MetersGermanLegal,
5466 Unknown SIP_MONKEYPATCH_COMPAT_NAME( DistanceUnknownUnit ),
5467 };
5468 Q_ENUM( DistanceUnit )
5469
5470
5478 {
5479 Standard,
5480 Geographic,
5481 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownType ),
5482 };
5483 Q_ENUM( DistanceUnitType )
5484
5485
5493 {
5494 SquareMeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMeters ),
5495 SquareKilometers SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareKilometers ),
5496 SquareFeet SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareFeet ),
5497 SquareYards SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareYards ),
5498 SquareMiles SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMiles ),
5499 Hectares SIP_MONKEYPATCH_COMPAT_NAME( AreaHectares ),
5500 Acres SIP_MONKEYPATCH_COMPAT_NAME( AreaAcres ),
5501 SquareNauticalMiles SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareNauticalMiles ),
5502 SquareDegrees SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareDegrees ),
5503 SquareCentimeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareCentimeters ),
5504 SquareMillimeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMillimeters ),
5505 SquareInches,
5506 Unknown SIP_MONKEYPATCH_COMPAT_NAME( AreaUnknownUnit ),
5507 };
5508 Q_ENUM( AreaUnit )
5509
5510
5518 {
5519 CubicMeters SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicMeters ),
5520 CubicFeet SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicFeet ),
5521 CubicYards SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicYards ),
5522 Barrel SIP_MONKEYPATCH_COMPAT_NAME( VolumeBarrel ),
5523 CubicDecimeter SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicDecimeter ),
5524 Liters SIP_MONKEYPATCH_COMPAT_NAME( VolumeLiters ),
5525 GallonUS SIP_MONKEYPATCH_COMPAT_NAME( VolumeGallonUS ),
5526 CubicInch SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicInch ),
5527 CubicCentimeter SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicCentimeter ),
5528 CubicDegrees SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicDegrees ),
5529 Unknown SIP_MONKEYPATCH_COMPAT_NAME( VolumeUnknownUnit ),
5530 };
5531 Q_ENUM( VolumeUnit )
5532
5533
5541 {
5542 Degrees SIP_MONKEYPATCH_COMPAT_NAME( AngleDegrees ),
5543 Radians SIP_MONKEYPATCH_COMPAT_NAME( AngleRadians ),
5545 MinutesOfArc SIP_MONKEYPATCH_COMPAT_NAME( AngleMinutesOfArc ),
5546 SecondsOfArc SIP_MONKEYPATCH_COMPAT_NAME( AngleSecondsOfArc ),
5548 MilliradiansSI SIP_MONKEYPATCH_COMPAT_NAME( AngleMilliradiansSI ),
5549 MilNATO SIP_MONKEYPATCH_COMPAT_NAME( AngleMilNATO ),
5550 Unknown SIP_MONKEYPATCH_COMPAT_NAME( AngleUnknownUnit ),
5551 };
5552 Q_ENUM( AngleUnit )
5553
5554
5562 {
5563 Milliseconds SIP_MONKEYPATCH_COMPAT_NAME( TemporalMilliseconds ),
5564 Seconds SIP_MONKEYPATCH_COMPAT_NAME( TemporalSeconds ),
5565 Minutes SIP_MONKEYPATCH_COMPAT_NAME( TemporalMinutes ),
5566 Hours SIP_MONKEYPATCH_COMPAT_NAME( TemporalHours ),
5567 Days SIP_MONKEYPATCH_COMPAT_NAME( TemporalDays ),
5568 Weeks SIP_MONKEYPATCH_COMPAT_NAME( TemporalWeeks ),
5569 Months SIP_MONKEYPATCH_COMPAT_NAME( TemporalMonths ),
5570 Years SIP_MONKEYPATCH_COMPAT_NAME( TemporalYears ),
5571 Decades SIP_MONKEYPATCH_COMPAT_NAME( TemporalDecades ),
5572 Centuries SIP_MONKEYPATCH_COMPAT_NAME( TemporalCenturies ),
5573 IrregularStep SIP_MONKEYPATCH_COMPAT_NAME( TemporalIrregularStep ),
5574 Unknown SIP_MONKEYPATCH_COMPAT_NAME( TemporalUnknownUnit )
5575 };
5576 Q_ENUM( TemporalUnit )
5577
5578
5586 {
5587 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( RenderMillimeters ),
5588 MapUnits SIP_MONKEYPATCH_COMPAT_NAME( RenderMapUnits ),
5589 Pixels SIP_MONKEYPATCH_COMPAT_NAME( RenderPixels ),
5590 Percentage SIP_MONKEYPATCH_COMPAT_NAME( RenderPercentage ),
5591 Points SIP_MONKEYPATCH_COMPAT_NAME( RenderPoints ),
5592 Inches SIP_MONKEYPATCH_COMPAT_NAME( RenderInches ),
5593 Unknown SIP_MONKEYPATCH_COMPAT_NAME( RenderUnknownUnit ),
5594 MetersInMapUnits SIP_MONKEYPATCH_COMPAT_NAME( RenderMetersInMapUnits ),
5595 };
5596 Q_ENUM( RenderUnit )
5597
5598
5606 {
5607 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( LayoutMillimeters ),
5608 Centimeters SIP_MONKEYPATCH_COMPAT_NAME( LayoutCentimeters ),
5609 Meters SIP_MONKEYPATCH_COMPAT_NAME( LayoutMeters ),
5610 Inches SIP_MONKEYPATCH_COMPAT_NAME( LayoutInches ),
5611 Feet SIP_MONKEYPATCH_COMPAT_NAME( LayoutFeet ),
5612 Points SIP_MONKEYPATCH_COMPAT_NAME( LayoutPoints ),
5613 Picas SIP_MONKEYPATCH_COMPAT_NAME( LayoutPicas ),
5614 Pixels SIP_MONKEYPATCH_COMPAT_NAME( LayoutPixels )
5615 };
5616 Q_ENUM( LayoutUnit )
5617
5618
5626 {
5627 PaperUnits SIP_MONKEYPATCH_COMPAT_NAME( LayoutPaperUnits ),
5628 ScreenUnits SIP_MONKEYPATCH_COMPAT_NAME( LayoutScreenUnits )
5629 };
5630 Q_ENUM( LayoutUnitType )
5631
5632
5640 {
5641 Debug SIP_MONKEYPATCH_COMPAT_NAME( FlagDebug ) = 1 << 1,
5642 OutlineOnly SIP_MONKEYPATCH_COMPAT_NAME( FlagOutlineOnly ) = 1 << 2,
5643 Antialiasing SIP_MONKEYPATCH_COMPAT_NAME( FlagAntialiasing ) = 1 << 3,
5644 UseAdvancedEffects SIP_MONKEYPATCH_COMPAT_NAME( FlagUseAdvancedEffects ) = 1 << 4,
5645 ForceVectorOutput SIP_MONKEYPATCH_COMPAT_NAME( FlagForceVectorOutput )
5646 = 1 << 5,
5647 HideCoverageLayer SIP_MONKEYPATCH_COMPAT_NAME( FlagHideCoverageLayer ) = 1 << 6,
5648 DrawSelection SIP_MONKEYPATCH_COMPAT_NAME( FlagDrawSelection ) = 1 << 7,
5649 DisableTiledRasterLayerRenders SIP_MONKEYPATCH_COMPAT_NAME( FlagDisableTiledRasterLayerRenders )
5650 = 1 << 8,
5651 RenderLabelsByMapLayer SIP_MONKEYPATCH_COMPAT_NAME( FlagRenderLabelsByMapLayer )
5652 = 1 << 9,
5653 LosslessImageRendering SIP_MONKEYPATCH_COMPAT_NAME( FlagLosslessImageRendering )
5654 = 1 << 10,
5655 SynchronousLegendGraphics SIP_MONKEYPATCH_COMPAT_NAME( FlagSynchronousLegendGraphics ) = 1 << 11,
5656 AlwaysUseGlobalMasks SIP_MONKEYPATCH_COMPAT_NAME( FlagAlwaysUseGlobalMasks )
5657 = 1 << 12,
5658 LimitCoverageLayerRenderToCurrentFeature = 1 << 13,
5659 };
5660 Q_ENUM( LayoutRenderFlag )
5661
5662
5670 Q_FLAG( LayoutRenderFlags )
5671
5680 {
5681 SVG SIP_MONKEYPATCH_COMPAT_NAME( FormatSVG ) = 0,
5682 Raster SIP_MONKEYPATCH_COMPAT_NAME( FormatRaster ),
5683 Unknown SIP_MONKEYPATCH_COMPAT_NAME( FormatUnknown ),
5684 };
5685 Q_ENUM( PictureFormat )
5686
5687
5692 enum class ScaleCalculationMethod : int
5693 {
5694 HorizontalTop = 0,
5695 HorizontalMiddle,
5696 HorizontalBottom,
5697 HorizontalAverage,
5698 AtEquator,
5699 };
5700 Q_ENUM( ScaleCalculationMethod )
5701
5702
5715 Q_ENUM( ScaleBarAlignment )
5716
5717
5725 {
5726 Fixed SIP_MONKEYPATCH_COMPAT_NAME( SegmentSizeFixed ) = 0,
5727 FitWidth SIP_MONKEYPATCH_COMPAT_NAME( SegmentSizeFitWidth ) = 1
5728 };
5729 Q_ENUM( ScaleBarSegmentSizeMode )
5730
5731
5739 {
5740 AboveSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelAboveSegment ) = 0,
5741 BelowSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelBelowSegment ),
5742 };
5743 Q_ENUM( ScaleBarDistanceLabelVerticalPlacement )
5744
5745
5753 {
5754 CenteredEdge SIP_MONKEYPATCH_COMPAT_NAME( LabelCenteredEdge ) = 0,
5755 CenteredSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelCenteredSegment ),
5756 };
5757 Q_ENUM( ScaleBarDistanceLabelHorizontalPlacement )
5758
5759
5760
5768 {
5769 MapUnits SIP_MONKEYPATCH_COMPAT_NAME( MapUnit ),
5772 DynamicPageSizeBased,
5773 };
5774 Q_ENUM( MapGridUnit )
5775
5776
5784 {
5785 Lines SIP_MONKEYPATCH_COMPAT_NAME( Solid ) = 0,
5786 LineCrosses SIP_MONKEYPATCH_COMPAT_NAME( Cross ),
5787 Markers,
5788 FrameAndAnnotationsOnly SIP_MONKEYPATCH_COMPAT_NAME( FrameAnnotationsOnly )
5789 };
5790 Q_ENUM( MapGridStyle )
5791
5792
5800 {
5801 ShowAll = 0,
5802 LatitudeOnly,
5803 LongitudeOnly,
5804 HideAll
5805 };
5806 Q_ENUM( MapGridComponentVisibility )
5807
5808
5816 {
5817 InsideMapFrame = 0,
5818 OutsideMapFrame,
5819 };
5820 Q_ENUM( MapGridAnnotationPosition )
5821
5822
5830 {
5831 Horizontal = 0,
5832 Vertical,
5833 VerticalDescending,
5834 BoundaryDirection,
5835 AboveTick,
5836 OnTick,
5837 UnderTick,
5838 };
5839 Q_ENUM( MapGridAnnotationDirection )
5840
5841
5849 {
5850 Decimal = 0,
5851 DegreeMinute,
5852 DegreeMinuteSecond,
5853 DecimalWithSuffix,
5854 DegreeMinuteNoSuffix,
5855 DegreeMinutePadded,
5856 DegreeMinuteSecondNoSuffix,
5857 DegreeMinuteSecondPadded,
5858 CustomFormat
5859 };
5860 Q_ENUM( MapGridAnnotationFormat )
5861
5862
5876 Q_ENUM( MapGridBorderSide )
5877
5878
5886 {
5887 NoFrame = 0,
5888 Zebra,
5889 InteriorTicks,
5890 ExteriorTicks,
5891 InteriorExteriorTicks,
5892 LineBorder,
5893 LineBorderNautical,
5894 ZebraNautical,
5895 };
5896 Q_ENUM( MapGridFrameStyle )
5897
5898
5906 {
5907 OrthogonalTicks = 0,
5908 NormalizedTicks,
5909 };
5910 Q_ENUM( MapGridTickLengthMode )
5911
5912
5913
5921 {
5922 Left SIP_MONKEYPATCH_COMPAT_NAME( FrameLeft ) = 0x01,
5923 Right SIP_MONKEYPATCH_COMPAT_NAME( FrameRight ) = 0x02,
5924 Top SIP_MONKEYPATCH_COMPAT_NAME( FrameTop ) = 0x04,
5925 Bottom SIP_MONKEYPATCH_COMPAT_NAME( FrameBottom ) = 0x08
5926 };
5927 Q_ENUM( MapGridFrameSideFlag )
5928
5929
5937 Q_FLAG( MapGridFrameSideFlags )
5938
5947 {
5948 Longitude = 0,
5949 Latitude
5950 };
5951 Q_ENUM( MapGridAnnotationType )
5952
5953
5958 enum class InputControllerType : int
5959 {
5960 Map2D,
5961 Map3D
5962 };
5964
5971 {
5972 NotSet,
5973 Unknown,
5974 OrdinaryTable,
5975 Index,
5976 Sequence,
5977 View,
5978 MaterializedView,
5979 CompositeType,
5980 ToastTable,
5981 ForeignTable,
5982 PartitionedTable,
5983 };
5984 Q_ENUM( PostgresRelKind )
5985
5986
5992 {
5993 SetFieldComment = 1 << 0,
5994 SetFieldAlias = 1 << 1,
5995 SetTableComment = 1 << 2,
5996 EditFieldDomain = 1 << 3,
5997 DeleteFieldDomain = 1 << 4,
5998 };
5999 Q_ENUM( DatabaseProviderConnectionCapability2 )
6002
6009 {
6010 SetGeometryColumnName = 1 << 0,
6011 SetPrimaryKeyName = 1 << 1,
6012 };
6013 Q_ENUM( DatabaseProviderTableImportCapability )
6016
6023 {
6024 SaveToDatabase = 1 << 1,
6025 LoadFromDatabase = 1 << 2,
6026 DeleteFromDatabase = 1 << 3
6027 };
6031
6032
6038 {
6039 LastProfile,
6040 DefaultProfile,
6041 AskUser,
6042 };
6043 Q_ENUM( UserProfileSelectionPolicy )
6044
6045
6053 {
6054 Container SIP_MONKEYPATCH_COMPAT_NAME( AeTypeContainer ),
6055 Field SIP_MONKEYPATCH_COMPAT_NAME( AeTypeField ),
6056 Relation SIP_MONKEYPATCH_COMPAT_NAME( AeTypeRelation ),
6057 QmlElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeQmlElement ),
6058 HtmlElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeHtmlElement ),
6059 Action SIP_MONKEYPATCH_COMPAT_NAME( AeTypeAction ),
6060 TextElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeTextElement ),
6061 SpacerElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeSpacerElement ),
6062 Invalid SIP_MONKEYPATCH_COMPAT_NAME( AeTypeInvalid ),
6063 };
6064 Q_ENUM( AttributeEditorType )
6065
6066
6072 {
6073 GroupBox,
6074 Tab,
6075 Row,
6076 };
6077 Q_ENUM( AttributeEditorContainerType )
6078
6079
6087 {
6088 AutoGenerated SIP_MONKEYPATCH_COMPAT_NAME( GeneratedLayout ) = 0,
6089 DragAndDrop SIP_MONKEYPATCH_COMPAT_NAME( TabLayout ) = 1,
6090 UiFile SIP_MONKEYPATCH_COMPAT_NAME( UiFileLayout ) = 2
6091 };
6092 Q_ENUM( AttributeFormLayout )
6093
6094
6102 {
6103 Default SIP_MONKEYPATCH_COMPAT_NAME( SuppressDefault ) = 0,
6104 On SIP_MONKEYPATCH_COMPAT_NAME( SuppressOn ) = 1,
6105 Off SIP_MONKEYPATCH_COMPAT_NAME( SuppressOff ) = 2
6106 };
6107 Q_ENUM( AttributeFormSuppression )
6108
6109
6117 {
6118 NoSource SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceNone ) = 0,
6119 File SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceFile ) = 1,
6120 Dialog SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceDialog ) = 2,
6121 Environment SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceEnvironment ) = 3
6122 };
6123 Q_ENUM( AttributeFormPythonInitCodeSource )
6124
6125
6131 {
6132 NotAllowed = 0,
6133 AllowedDefaultOn = 1,
6134 AllowedDefaultOff = 2,
6135 };
6136 Q_ENUM( AttributeFormReuseLastValuePolicy )
6137
6138
6144 {
6146 PointCloud,
6147 RasterCalculator,
6148 };
6149 Q_ENUM( ExpressionType )
6150
6151
6159 {
6160 NoSymbology = 0,
6161 PerFeature SIP_MONKEYPATCH_COMPAT_NAME( FeatureSymbology ),
6162 PerSymbolLayer SIP_MONKEYPATCH_COMPAT_NAME( SymbolLayerSymbology )
6163 };
6164 Q_ENUM( FeatureSymbologyExport )
6165
6166
6171 enum class VectorTileProviderFlag : int SIP_ENUM_BASETYPE( IntFlag )
6172 {
6173 AlwaysUseTileMatrixSetFromProvider = 1 << 1,
6174 };
6175 Q_ENUM( VectorTileProviderFlag )
6176
6177
6183 Q_FLAG( VectorTileProviderFlags )
6184
6190 {
6191 ReadLayerMetadata = 1 << 1,
6192 };
6193 Q_ENUM( VectorTileProviderCapability )
6194
6195
6202
6209 {
6210 Available,
6211 NotAvailable,
6212 AvailableNoChildren,
6213 UseLowerZoomLevelTile,
6214 };
6215 Q_ENUM( TileAvailability )
6216
6217
6223 {
6224 ReadLayerMetadata = 1 << 1,
6225 };
6226 Q_ENUM( TiledSceneProviderCapability )
6227
6228
6235
6242 {
6243 Region,
6244 OrientedBox,
6245 Sphere,
6246 };
6247 Q_ENUM( TiledSceneBoundingVolumeType )
6248
6249
6258 {
6259 Replacement,
6260 Additive,
6261 };
6262 Q_ENUM( TileRefinementProcess )
6263
6264
6270 {
6271 NoChildren,
6272 Available,
6273 NeedFetching,
6274 };
6275 Q_ENUM( TileChildrenAvailability )
6276
6277
6282 enum class TiledSceneRequestFlag : int SIP_ENUM_BASETYPE( IntFlag )
6283 {
6284 NoHierarchyFetch = 1 << 0,
6285 };
6286 Q_ENUM( TiledSceneRequestFlag )
6287
6288
6294 Q_FLAG( TiledSceneRequestFlags )
6295
6301 enum class TiledSceneRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
6302 {
6303 RequiresTextures = 1 << 0,
6304 ForceRasterRender = 1 << 1,
6305 RendersTriangles = 1 << 2,
6306 RendersLines = 1 << 3,
6307 };
6308 Q_ENUM( TiledSceneRendererFlag )
6309
6310
6316 Q_FLAG( TiledSceneRendererFlags )
6317
6323 enum class GdalResampleAlgorithm : int
6324 {
6325 RA_NearestNeighbour = 0,
6326 RA_Bilinear = 1,
6327 RA_Cubic = 2,
6328 RA_CubicSpline = 3,
6329 RA_Lanczos = 4,
6330 RA_Average = 5,
6331 RA_Mode = 6,
6332 RA_Max = 8,
6333 RA_Min = 9,
6334 RA_Median = 10,
6335 RA_Q1 = 11,
6336 RA_Q3 = 12,
6337 };
6338 Q_ENUM( GdalResampleAlgorithm )
6339
6340
6345 enum class VsiHandlerType : int
6346 {
6347 Invalid,
6348 Archive,
6349 Network,
6350 Cloud,
6351 Memory,
6352 Other,
6353 };
6354 Q_ENUM( VsiHandlerType )
6355
6356 // TODO QGIS 5: make All include all values (we can't do this before 4.0, as we need to keep
6357 // compatibility with code which expects all these statistics to give numeric results)
6358
6359
6364 enum class ZonalStatistic : int SIP_ENUM_BASETYPE( IntFlag )
6365 {
6366 Count = 1 << 0,
6367 Sum = 1 << 1,
6368 Mean = 1 << 2,
6369 Median = 1 << 3,
6370 StDev = 1 << 4,
6371 Min = 1 << 5,
6372 Max = 1 << 6,
6373 Range = 1 << 7,
6374 Minority = 1 << 8,
6375 Majority = 1 << 9,
6376 Variety = 1 << 10,
6377 Variance = 1 << 11,
6378 MinimumPoint = 1 << 12,
6379 MaximumPoint = 1 << 13,
6380 // clang-format off
6381 All = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
6382 // clang-format on
6383 AllNumeric = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
6384 Default = Count | Sum | Mean,
6385 };
6386 Q_ENUM( ZonalStatistic )
6387
6388
6394 Q_FLAG( ZonalStatistics )
6395
6401 enum class ZonalStatisticResult : int
6402 {
6404 LayerTypeWrong = 1,
6405 LayerInvalid,
6406 RasterInvalid,
6407 RasterBandInvalid,
6408 FailedToCreateField = 8,
6409 Canceled = 9
6410 };
6411 Q_ENUM( ZonalStatisticResult )
6412
6413
6420 {
6421 Count,
6422 CountDistinct,
6423 CountMissing,
6424 Min,
6425 Max,
6426 Sum,
6427 Mean,
6428 Median,
6429 StDev,
6430 StDevSample,
6431 Range,
6432 Minority,
6433 Majority,
6434 FirstQuartile,
6435 ThirdQuartile,
6436 InterQuartileRange,
6437 StringMinimumLength,
6438 StringMaximumLength,
6439 StringConcatenate,
6440 GeometryCollect,
6441 ArrayAggregate,
6442 StringConcatenateUnique
6443 };
6444 Q_ENUM( Aggregate )
6445
6446
6452 {
6453 Count = 1 << 0,
6454 CountMissing = 1 << 15,
6455 Sum = 1 << 1,
6456 Mean = 1 << 2,
6457 Median = 1 << 3,
6458 StDev = 1 << 4,
6459 StDevSample = 1 << 5,
6460 Min = 1 << 6,
6461 Max = 1 << 7,
6462 Range = 1 << 8,
6463 Minority = 1 << 9,
6464 Majority = 1 << 10,
6465 Variety = 1 << 11,
6466 FirstQuartile = 1 << 12,
6467 ThirdQuartile = 1 << 13,
6468 InterQuartileRange = 1 << 14,
6469 First = 1 << 16,
6470 Last = 1 << 17,
6471 All = Count | CountMissing | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | FirstQuartile | ThirdQuartile | InterQuartileRange | First | Last
6472 };
6473 Q_ENUM( Statistic )
6474
6475
6481 Q_FLAG( Statistics )
6482
6489 {
6490 Count = 1,
6491 CountDistinct = 2,
6492 CountMissing = 4,
6493 Min = 8,
6494 Max = 16,
6495 Range = 32,
6496 All = Count | CountDistinct | CountMissing | Min | Max | Range,
6497 };
6498 Q_ENUM( DateTimeStatistic )
6499
6500
6506 Q_FLAG( DateTimeStatistics )
6507
6514 {
6515 Count = 1,
6516 CountDistinct = 2,
6517 CountMissing = 4,
6518 Min = 8,
6519 Max = 16,
6520 MinimumLength = 32,
6521 MaximumLength = 64,
6522 MeanLength = 128,
6523 Minority = 256,
6524 Majority = 512,
6525 All = Count | CountDistinct | CountMissing | Min | Max | MinimumLength | MaximumLength | MeanLength | Minority | Majority,
6526 };
6527 Q_ENUM( StringStatistic )
6528
6529
6535 Q_FLAG( StringStatistics )
6536
6543 {
6544 NoStatistic = 0,
6545 Min = 1,
6546 Max = 1 << 1,
6547 Range = 1 << 2,
6548 Sum = 1 << 3,
6549 Mean = 1 << 4,
6550 StdDev = 1 << 5,
6551 SumOfSquares = 1 << 6,
6552 All = Min | Max | Range | Sum | Mean | StdDev | SumOfSquares
6553 };
6554 Q_ENUM( RasterBandStatistic )
6555
6556
6562 Q_FLAG( RasterBandStatistics )
6563
6569 enum class SensorThingsEntity : int
6570 {
6571 Invalid,
6572 Thing,
6573 Location,
6574 HistoricalLocation,
6575 Datastream,
6576 Sensor,
6577 ObservedProperty,
6578 Observation,
6579 FeatureOfInterest,
6580 MultiDatastream,
6581 };
6582 Q_ENUM( SensorThingsEntity )
6583
6584
6589 enum class ColorModel : int
6590 {
6591 Rgb,
6592 Cmyk,
6593 };
6594 Q_ENUM( ColorModel )
6595
6596
6601 enum class DocumentationApi : int
6602 {
6603 PyQgis,
6604 PyQgisSearch,
6605 CppQgis,
6606 Qt,
6607 };
6608 Q_ENUM( DocumentationApi )
6609
6610
6615 enum class DocumentationBrowser : int
6616 {
6617 DeveloperToolsPanel,
6618 SystemWebBrowser,
6619 };
6620 Q_ENUM( DocumentationBrowser )
6621
6622
6627 enum class MouseHandlesAction : int
6628 {
6629 MoveItem,
6630 ResizeUp,
6631 ResizeDown,
6632 ResizeLeft,
6633 ResizeRight,
6634 ResizeLeftUp,
6635 ResizeRightUp,
6636 ResizeLeftDown,
6637 ResizeRightDown,
6638 RotateTopLeft,
6639 RotateTopRight,
6640 RotateBottomLeft,
6641 RotateBottomRight,
6642 SelectItem,
6643 NoAction
6644 };
6645 Q_ENUM( MouseHandlesAction )
6646
6647
6651 enum class MeshRangeLimit : int
6652 {
6653 NotSet,
6654 MinimumMaximum,
6655 };
6656 Q_ENUM( MeshRangeLimit )
6657
6658
6663 enum class MeshRangeExtent : int
6664 {
6665 WholeMesh,
6666 FixedCanvas,
6667 UpdatedCanvas,
6668 };
6669 Q_ENUM( MeshRangeExtent )
6670
6671
6677 enum class PointCloudAccessType : int
6678 {
6679 Local,
6680 Remote
6681 };
6682 Q_ENUM( PointCloudAccessType )
6683
6684
6689 {
6690 RenderExtents,
6691 RenderOverview,
6692 RenderOverviewAndExtents
6693 };
6694 Q_ENUM( PointCloudZoomOutRenderBehavior )
6695
6696
6701 {
6702 Standard = 0,
6703 Adaptive,
6704 AreaError,
6705 ConstantDensity
6706 };
6707 Q_ENUM( SegmentCalculationMethod )
6708
6709
6713 enum class StacObjectType : int
6714 {
6715 Unknown,
6716 Catalog,
6717 Collection,
6718 Item,
6719 };
6720 Q_ENUM( StacObjectType )
6721
6722
6727 {
6728 WmsScale = 1 << 0,
6729 WmsDpi = 1 << 1,
6730 };
6731 Q_ENUM( RasterProcessingParameterCapability )
6732
6733
6739
6745 {
6746 Status = Qt::UserRole + 1,
6747 Id,
6748 ElapsedTime,
6749 MaximumTime,
6750 Sort,
6751 };
6752 Q_ENUM( DevToolsNodeRole )
6753
6754
6759 enum class ExtrusionFace : int SIP_ENUM_BASETYPE( IntFlag )
6760 {
6761 NoFace = 0,
6762 Walls = 1 << 0,
6763 Roof = 1 << 1,
6764 Floor = 1 << 2
6765 };
6766 Q_ENUM( ExtrusionFace )
6767
6768
6772 Q_DECLARE_FLAGS( ExtrusionFaces, ExtrusionFace )
6773 Q_FLAG( ExtrusionFaces )
6774
6779 enum class TriangulationAlgorithm : int SIP_ENUM_BASETYPE( IntFlag )
6780 {
6781 ConstrainedDelaunay = 0,
6782 Earcut = 1 << 0
6783 };
6784 Q_ENUM( TriangulationAlgorithm )
6785
6786
6797 enum class WmsGroupRequestMode : int
6798 {
6799 Normal,
6800 Opaque,
6801 };
6802 Q_ENUM( WmsGroupRequestMode )
6803
6804
6810 {
6811 RestorePreviousState,
6812 ForceDocked,
6813 ForceDialog,
6814 };
6815 Q_ENUM( DockableWidgetInitialState )
6816
6817
6820 static const double DEFAULT_SEARCH_RADIUS_MM;
6821
6824
6830 static const QColor DEFAULT_HIGHLIGHT_COLOR;
6831
6835 static const double DEFAULT_HIGHLIGHT_BUFFER_MM;
6836
6841
6849 Q_DECL_DEPRECATED static const double SCALE_PRECISION;
6850
6855 static const double DEFAULT_Z_COORDINATE;
6856
6862 static const double DEFAULT_M_COORDINATE;
6863
6868 static const double UI_SCALE_FACTOR;
6869
6873 static const double DEFAULT_SNAP_TOLERANCE;
6874
6879
6883 static const int USER_CRS_START_ID;
6884
6886 static const double DEFAULT_POINT_SIZE;
6887
6889 static const double DEFAULT_LINE_WIDTH;
6890
6892 static const double DEFAULT_SEGMENT_EPSILON;
6893
6896
6899
6905 static QString defaultProjectScales();
6906
6912 static int geosVersionInt();
6913
6919 static int geosVersionMajor();
6920
6926 static int geosVersionMinor();
6927
6933 static int geosVersionPatch();
6934
6940 static QString geosVersion();
6941
6947 static bool hasSfcgal();
6948
6955 static int sfcgalVersionInt();
6956
6962 static bool hasGeographicLib();
6963
6970 static int geographicLibVersion();
6971
6977 Q_DECL_DEPRECATED static bool hasQtWebkit();
6978
6984 static QString geoNone() { return u"NONE"_s; }
6985
6991 static QString geographicCrsAuthId() { return u"EPSG:4326"_s; }
6992
6997 Q_DECL_DEPRECATED static QString geoWkt()
6998 {
6999 return QStringLiteral(
7000 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]] )"""
7001 );
7002 }
7003
7008 Q_DECL_DEPRECATED static QString geoProj4() { return u"+proj=longlat +datum=WGS84 +no_defs"_s; }
7009};
7010
7013
7110Q_DECLARE_METATYPE( QTimeZone )
7111
7112// hack to workaround warnings when casting void pointers
7113// retrieved from QLibrary::resolve to function pointers.
7114// It's assumed that this works on all systems supporting
7115// QLibrary
7116#define cast_to_fptr( f ) f
7117
7118
7126// based on Boojum's code from http://stackoverflow.com/questions/3556687/prevent-firing-signals-in-qt
7127template<class Object> class QgsSignalBlocker SIP_SKIP SIP_SKIP // clazy:exclude=rule-of-three
7128{
7129 public:
7134 explicit QgsSignalBlocker( Object *object )
7135 : mObject( object )
7136 , mPreviousState( object->blockSignals( true ) )
7137 {}
7138
7139 ~QgsSignalBlocker() { mObject->blockSignals( mPreviousState ); }
7140
7142 Object *operator->() { return mObject; }
7143
7144 private:
7145 Object *mObject = nullptr;
7146 bool mPreviousState;
7147};
7148
7161// based on Boojum's code from http://stackoverflow.com/questions/3556687/prevent-firing-signals-in-qt
7162template<class Object> inline QgsSignalBlocker<Object> whileBlocking( Object *object ) SIP_SKIP SIP_SKIP
7163{
7164 return QgsSignalBlocker<Object>( object );
7165}
7166
7168CORE_EXPORT uint qHash( const QVariant &variant );
7169
7175inline QString qgsDoubleToString( double a, int precision = 17 )
7176{
7177 QString str;
7178 if ( precision )
7179 {
7180 if ( precision < 0 )
7181 {
7182 const double roundFactor = std::pow( 10, -precision );
7183 str = QString::number( static_cast< long long >( std::round( a / roundFactor ) * roundFactor ) );
7184 }
7185 else
7186 {
7187 str = QString::number( a, 'f', precision );
7188 if ( str.contains( '.'_L1 ) )
7189 {
7190 // remove ending 0s
7191 int idx = str.length() - 1;
7192 while ( str.at( idx ) == '0' && idx > 1 )
7193 {
7194 idx--;
7195 }
7196 if ( idx < str.length() - 1 )
7197 str.truncate( str.at( idx ) == '.' ? idx : idx + 1 );
7198 }
7199 }
7200 }
7201 else
7202 {
7203 str = QString::number( a, 'f', precision );
7204 }
7205 // avoid printing -0
7206 // see https://bugreports.qt.io/browse/QTBUG-71439
7207 if ( str == "-0"_L1 )
7208 {
7209 return "0"_L1;
7210 }
7211 return str;
7212}
7213
7220inline bool qgsNanCompatibleEquals( double a, double b )
7221{
7222 const bool aIsNan = std::isnan( a );
7223 const bool bIsNan = std::isnan( b );
7224 if ( aIsNan || bIsNan )
7225 return aIsNan && bIsNan;
7226
7227 return a == b;
7228}
7229
7230#ifndef SIP_RUN
7231
7239template<typename T> inline bool qgsNumberNear( T a, T b, T epsilon = std::numeric_limits<T>::epsilon() * 4 )
7240{
7241 const bool aIsNan = std::isnan( a );
7242 const bool bIsNan = std::isnan( b );
7243 if ( aIsNan || bIsNan )
7244 return aIsNan && bIsNan;
7245
7246 const T diff = a - b;
7247 return diff >= -epsilon && diff <= epsilon;
7248}
7249#endif
7250
7257inline bool qgsDoubleNear( double a, double b, double epsilon = 4 * std::numeric_limits<double>::epsilon() )
7258{
7259 return qgsNumberNear<double>( a, b, epsilon );
7260}
7261
7268inline bool qgsFloatNear( float a, float b, float epsilon = 4 * FLT_EPSILON )
7269{
7270 return qgsNumberNear<float>( a, b, epsilon );
7271}
7272
7274inline bool qgsDoubleNearSig( double a, double b, int significantDigits = 10 )
7275{
7276 const bool aIsNan = std::isnan( a );
7277 const bool bIsNan = std::isnan( b );
7278 if ( aIsNan || bIsNan )
7279 return aIsNan && bIsNan;
7280
7281 // The most simple would be to print numbers as %.xe and compare as strings
7282 // but that is probably too costly
7283 // Then the fastest would be to set some bits directly, but little/big endian
7284 // has to be considered (maybe TODO)
7285 // Is there a better way?
7286 int aexp, bexp;
7287 const double ar = std::frexp( a, &aexp );
7288 const double br = std::frexp( b, &bexp );
7289
7290 return aexp == bexp && std::round( ar * std::pow( 10.0, significantDigits ) ) == std::round( br * std::pow( 10.0, significantDigits ) );
7291}
7292
7297inline double qgsRound( double number, int places )
7298{
7299 const double m = ( number < 0.0 ) ? -1.0 : 1.0;
7300 const double scaleFactor = std::pow( 10.0, places );
7301 return ( std::round( number * m * scaleFactor ) / scaleFactor ) * m;
7302}
7303
7304#ifndef SIP_RUN
7305
7312template<class Key, class Value> QString qgsMapJoinKeys( const QMap<Key, Value> &map, const QString &separator )
7313{
7314 QString result;
7315 for ( auto it = map.constBegin(); it != map.constEnd(); it++ )
7316 result += QString( "%1%2" ).arg( it.key() ).arg( separator );
7317
7318 result.chop( separator.size() );
7319 return result;
7320}
7321
7328template<class Key, class Value> QString qgsMapJoinValues( const QMap<Key, Value> &map, const QString &separator )
7329{
7330 QString result;
7331 for ( auto it = map.constBegin(); it != map.constEnd(); it++ )
7332 result += QString( "%1%2" ).arg( it.value() ).arg( separator );
7333
7334 result.chop( separator.size() );
7335 return result;
7336}
7337
7344template<class T> QString qgsSetJoin( const QSet<T> &set, const QString &separator )
7345{
7346 QString result;
7347 for ( auto it = set.constBegin(); it != set.constEnd(); it++ )
7348 result += QString( "%1%2" ).arg( *it ).arg( separator );
7349
7350 result.chop( separator.size() );
7351 return result;
7352}
7353
7355
7365namespace qgis
7366{
7367
7380 template<typename To, typename From> inline To down_cast( From *f )
7381 {
7382 static_assert( ( std::is_base_of<From, typename std::remove_pointer<To>::type>::value ), "target type not derived from source type" );
7383 Q_ASSERT( f == nullptr || dynamic_cast<To>( f ) != nullptr );
7384 return static_cast<To>( f );
7385 }
7386
7387 template<class T> QSet<T> listToSet( const QList<T> &list )
7388 {
7389 return QSet<T>( list.begin(), list.end() );
7390 }
7391
7392 template<class T> QList<T> setToList( const QSet<T> &set )
7393 {
7394 return QList<T>( set.begin(), set.end() );
7395 }
7396} //namespace qgis
7397
7399#endif
7400
7405template<class T> const QList<T> qgsEnumList() SIP_SKIP
7406{
7407 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7408 Q_ASSERT( metaEnum.isValid() );
7409 QList<T> enumList;
7410 for ( int idx = 0; idx < metaEnum.keyCount(); ++idx )
7411 {
7412 enumList.append( static_cast<T>( metaEnum.value( idx ) ) );
7413 }
7414 return enumList;
7415}
7416
7422template<class T> const QMap<T, QString> qgsEnumMap() SIP_SKIP
7423{
7424 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7425 Q_ASSERT( metaEnum.isValid() );
7426 QMap<T, QString> enumMap;
7427 for ( int idx = 0; idx < metaEnum.keyCount(); ++idx )
7428 {
7429 enumMap.insert( static_cast<T>( metaEnum.value( idx ) ), QString( metaEnum.key( idx ) ) );
7430 }
7431 return enumMap;
7432}
7433
7439template<class T> QString qgsEnumValueToKey( const T &value, bool *returnOk = nullptr ) SIP_SKIP
7440{
7441 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7442 Q_ASSERT( metaEnum.isValid() );
7443 const char *key = metaEnum.valueToKey( static_cast<int>( value ) );
7444 if ( returnOk )
7445 {
7446 *returnOk = key ? true : false;
7447 }
7448 return QString::fromUtf8( key );
7449}
7450
7458template<class T> T qgsEnumKeyToValue( const QString &key, const T &defaultValue, bool tryValueAsKey = true, bool *returnOk = nullptr ) SIP_SKIP
7459{
7460 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7461 Q_ASSERT( metaEnum.isValid() );
7462 bool ok = false;
7463 T v = static_cast<T>( metaEnum.keyToValue( key.toUtf8().data(), &ok ) );
7464 if ( returnOk )
7465 {
7466 *returnOk = ok;
7467 }
7468 if ( ok )
7469 {
7470 return v;
7471 }
7472 else
7473 {
7474 // if conversion has failed, try with conversion from int value
7475 if ( tryValueAsKey )
7476 {
7477 bool canConvert = false;
7478 const int intValue = key.toInt( &canConvert );
7479 if ( canConvert && metaEnum.valueToKey( intValue ) )
7480 {
7481 if ( returnOk )
7482 {
7483 *returnOk = true;
7484 }
7485 return static_cast<T>( intValue );
7486 }
7487 }
7488 }
7489 return defaultValue;
7490}
7491
7497template<class T> QString qgsFlagValueToKeys( const T &value, bool *returnOk = nullptr ) SIP_SKIP
7498{
7499 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7500 Q_ASSERT( metaEnum.isValid() );
7501 int intValue = static_cast<int>( value );
7502 if ( intValue == 0 )
7503 {
7504 if ( returnOk )
7505 *returnOk = true;
7506 return u"0"_s;
7507 }
7508
7509 const QByteArray ba = metaEnum.valueToKeys( intValue );
7510 // check that the int value does correspond to a flag
7511 // see https://stackoverflow.com/a/68495949/1548052
7512 const int intValueCheck = metaEnum.keysToValue( ba );
7513 bool ok = intValue == intValueCheck;
7514 if ( returnOk )
7515 *returnOk = ok;
7516 return ok ? QString::fromUtf8( ba ) : QString();
7517}
7518
7526template<class T> T qgsFlagKeysToValue( const QString &keys, const T &defaultValue, bool tryValueAsKey = true, bool *returnOk = nullptr ) SIP_SKIP
7527{
7528 if ( keys.isEmpty() )
7529 {
7530 if ( returnOk )
7531 {
7532 *returnOk = false;
7533 }
7534 return defaultValue;
7535 }
7536 else if ( keys == "0"_L1 )
7537 {
7538 if ( returnOk )
7539 {
7540 *returnOk = true;
7541 }
7542 return T();
7543 }
7544 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7545 Q_ASSERT( metaEnum.isValid() );
7546 bool ok = false;
7547 T v = static_cast<T>( metaEnum.keysToValue( keys.toUtf8().constData(), &ok ) );
7548 if ( returnOk )
7549 {
7550 *returnOk = ok;
7551 }
7552 if ( ok )
7553 {
7554 return v;
7555 }
7556 else
7557 {
7558 // if conversion has failed, try with conversion from int value
7559 if ( tryValueAsKey )
7560 {
7561 bool canConvert = false;
7562 const int intValue = keys.toInt( &canConvert );
7563 if ( canConvert )
7564 {
7565 const QByteArray keyArray = metaEnum.valueToKeys( intValue );
7566 const int intValueCheck = metaEnum.keysToValue( keyArray );
7567 if ( !keyArray.isEmpty() && intValue == intValueCheck )
7568 {
7569 if ( returnOk )
7570 {
7571 *returnOk = true;
7572 }
7573 return T( intValue );
7574 }
7575 }
7576 }
7577 }
7578 return defaultValue;
7579}
7580
7581
7590CORE_EXPORT double qgsPermissiveToDouble( QString string, bool &ok );
7591
7600CORE_EXPORT int qgsPermissiveToInt( QString string, bool &ok );
7601
7611CORE_EXPORT qlonglong qgsPermissiveToLongLong( QString string, bool &ok );
7612
7632CORE_EXPORT int qgsVariantCompare( const QVariant &lhs, const QVariant &rhs, bool strictTypeCheck = false );
7633
7644CORE_EXPORT bool qgsVariantLessThan( const QVariant &lhs, const QVariant &rhs );
7645
7654CORE_EXPORT bool qgsVariantEqual( const QVariant &lhs, const QVariant &rhs );
7655
7664CORE_EXPORT bool qgsVariantGreaterThan( const QVariant &lhs, const QVariant &rhs );
7665
7677inline bool operator>( const QVariant &v1, const QVariant &v2 )
7678{
7679 return qgsVariantCompare( v1, v2, true ) > 0;
7680}
7681
7693inline bool operator<( const QVariant &v1, const QVariant &v2 )
7694{
7695 return qgsVariantCompare( v1, v2, true ) < 0;
7696}
7697
7704Q_DECL_DEPRECATED CORE_EXPORT QString qgsVsiPrefix( const QString &path ) SIP_DEPRECATED;
7705
7711void CORE_EXPORT *qgsMalloc( size_t size ) SIP_SKIP;
7712
7717void CORE_EXPORT qgsFree( void *ptr ) SIP_SKIP;
7718
7719#ifndef SIP_RUN
7720
7722class ScopedIntIncrementor
7723{
7724 public:
7725 ScopedIntIncrementor( int *variable )
7726 : mVariable( variable )
7727 {
7728 ( *mVariable )++;
7729 }
7730
7731 ScopedIntIncrementor( const ScopedIntIncrementor &other ) = delete;
7732 ScopedIntIncrementor &operator=( const ScopedIntIncrementor &other ) = delete;
7733
7734 void release()
7735 {
7736 if ( mVariable )
7737 ( *mVariable )--;
7738
7739 mVariable = nullptr;
7740 }
7741
7742 ~ScopedIntIncrementor() { release(); }
7743
7744 private:
7745 int *mVariable = nullptr;
7746};
7748
7749#endif
7750
7756Q_DECL_DEPRECATED const long GEOSRID = 4326;
7757
7763Q_DECL_DEPRECATED const long GEOCRS_ID = 3452;
7764
7770Q_DECL_DEPRECATED const long GEO_EPSG_CRS_ID = 4326;
7771
7772typedef QMap<QString, QString> QgsStringMap SIP_SKIP;
7773
7782typedef unsigned long long qgssize;
7783
7784#ifndef SIP_RUN
7785#if ( __GNUC__ > 4 || ( __GNUC__ == 4 && __GNUC_MINOR__ >= 6 ) ) || defined( __clang__ )
7786
7787#define Q_NOWARN_DEPRECATED_PUSH _Pragma( "GCC diagnostic push" ) _Pragma( "GCC diagnostic ignored \"-Wdeprecated-declarations\"" );
7788#define Q_NOWARN_DEPRECATED_POP _Pragma( "GCC diagnostic pop" );
7789#define Q_NOWARN_UNREACHABLE_PUSH
7790#define Q_NOWARN_UNREACHABLE_POP
7791
7792#elif defined( _MSC_VER )
7793
7794#define Q_NOWARN_DEPRECATED_PUSH __pragma( warning( push ) ) __pragma( warning( disable : 4996 ) )
7795#define Q_NOWARN_DEPRECATED_POP __pragma( warning( pop ) )
7796#define Q_NOWARN_UNREACHABLE_PUSH __pragma( warning( push ) ) __pragma( warning( disable : 4702 ) )
7797#define Q_NOWARN_UNREACHABLE_POP __pragma( warning( pop ) )
7798#else
7799
7800#define Q_NOWARN_DEPRECATED_PUSH
7801#define Q_NOWARN_DEPRECATED_POP
7802#define Q_NOWARN_UNREACHABLE_PUSH
7803#define Q_NOWARN_UNREACHABLE_POP
7804
7805#endif
7806#endif
7807
7808#ifndef QGISEXTERN
7809#ifdef Q_OS_WIN
7810#define QGISEXTERN extern "C" __declspec( dllexport )
7811#else
7812#if defined( __GNUC__ ) || defined( __clang__ )
7813#define QGISEXTERN extern "C" __attribute__( ( visibility( "default" ) ) )
7814#else
7815#define QGISEXTERN extern "C"
7816#endif
7817#endif
7818#endif
7819#endif
7820
7821#ifndef SIP_RUN
7822#ifdef _MSC_VER
7823#define BUILTIN_UNREACHABLE __assume( false );
7824#elif defined( __GNUC__ ) && !defined( __clang__ )
7825// Workaround a GCC bug where a -Wreturn-type warning is emitted in constructs
7826// like:
7827// switch( mVariableThatCanOnlyBeXorY )
7828// {
7829// case X:
7830// return "foo";
7831// case Y:
7832// return "foo";
7833// }
7834// See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87951
7835#define BUILTIN_UNREACHABLE __builtin_unreachable();
7836#else
7837#define BUILTIN_UNREACHABLE
7838#endif
7839#endif // SIP_RUN
Provides global constants and enumerations for use throughout the application.
Definition qgis.h:62
MapGridTickLengthMode
Map grid tick length mode (useful for rotated grids).
Definition qgis.h:5906
DistanceUnitType
Types of distance units.
Definition qgis.h:5478
PieChartLabelType
Pie chart label types.
Definition qgis.h:3527
GnssConstellation
GNSS constellation.
Definition qgis.h:2024
SettingsOption
Settings options.
Definition qgis.h:751
EmbeddedScriptType
Type of Python Embedded in projects.
Definition qgis.h:463
ProfileGeneratorFlag
Flags that control the way the QgsAbstractProfileGenerator operate.
Definition qgis.h:4564
GeometryBackend
Geometry backend for QgsGeometry.
Definition qgis.h:2268
ProcessingSourceType
Processing data source types.
Definition qgis.h:3712
static const Qgis::MapToolUnit DEFAULT_SNAP_UNITS
Default snapping distance units.
Definition qgis.h:6878
GpsQualityIndicator
GPS signal quality indicator.
Definition qgis.h:2042
QFlags< MapGridFrameSideFlag > MapGridFrameSideFlags
Flags for controlling which side of the map a frame is drawn on.
Definition qgis.h:5936
DataItemProviderCapability
Capabilities for data item providers.
Definition qgis.h:1043
ProcessingFileParameterBehavior
Flags which dictate the behavior of QgsProcessingParameterFile.
Definition qgis.h:3972
RasterizedRenderingPolicy
Policies controlling when rasterisation of content during renders is permitted.
Definition qgis.h:2865
QFlags< MapLayerRendererFlag > MapLayerRendererFlags
Flags which control how map layer renderers behave.
Definition qgis.h:2960
ProjectReadFlag
Flags which control project read behavior.
Definition qgis.h:4648
QFlags< DatabaseProviderTableImportCapability > DatabaseProviderTableImportCapabilities
Definition qgis.h:6014
QFlags< BabelCommandFlag > BabelCommandFlags
Babel command flags.
Definition qgis.h:2137
CurvedLabelMode
Modes which determine how curved labels are generated and placed.
Definition qgis.h:1292
MapToolUnit
Type of unit of tolerance value from settings.
Definition qgis.h:5384
PlotAxisSuffixPlacement
Placement options for suffixes in the labels for axis of plots.
Definition qgis.h:3499
static const double DEFAULT_LINE_WIDTH
The default width (in millimeters) for line symbols.
Definition qgis.h:6889
ProcessingModelChildAlgorithmExecutionStatus
Reflects the status of a child algorithm in a Processing model.
Definition qgis.h:4047
QFlags< GpsInformationComponent > GpsInformationComponents
GPS information component.
Definition qgis.h:2104
ScaleBarDistanceLabelHorizontalPlacement
Scale bar distance label horizontal placement.
Definition qgis.h:5753
PointCloudSymbol
Rendering symbols for point cloud points.
Definition qgis.h:4592
SymbolRotationMode
Modes for handling how symbol and text entity rotation is handled when maps are rotated.
Definition qgis.h:834
static const double DEFAULT_HIGHLIGHT_MIN_WIDTH_MM
Default highlight line/stroke minimum width in mm.
Definition qgis.h:6840
static QString version()
Version string.
Definition qgis.cpp:682
GeometryValidityFlag
Geometry validity check flags.
Definition qgis.h:2191
QFlags< RasterProviderCapability > RasterProviderCapabilities
Raster data provider capabilities.
Definition qgis.h:5309
ExpressionType
Expression types.
Definition qgis.h:6144
MapLayerActionFlag
Map layer action flags.
Definition qgis.h:5054
ScaleBarDistanceLabelVerticalPlacement
Scale bar distance label vertical placement.
Definition qgis.h:5739
MapLayerProperty
Generic map layer properties.
Definition qgis.h:2413
VectorProviderCapability
Vector data provider capabilities.
Definition qgis.h:525
RasterProcessingParameterCapability
Capabilities of a raster layer processing parameter.
Definition qgis.h:6727
BufferSide
Side of line to buffer.
Definition qgis.h:2217
RasterResamplingStage
Stage at which raster resampling occurs.
Definition qgis.h:1589
WmsGroupRequestMode
Request mode of groups in a WMS context.
Definition qgis.h:6798
QFlags< MapLayerActionTarget > MapLayerActionTargets
Map layer action targets.
Definition qgis.h:5043
VectorTileProviderCapability
Enumeration with capabilities that vector tile data providers might implement.
Definition qgis.h:6190
ProjectTrustStatus
Project trust status.
Definition qgis.h:476
MultiPartLabelingBehavior
Behavior modifier for labeling features with multi-part geometries.
Definition qgis.h:1331
AltitudeClamping
Altitude clamping.
Definition qgis.h:4166
static const int PREVIEW_JOB_DELAY_MS
Delay between the scheduling of 2 preview jobs.
Definition qgis.h:6895
VectorTileProviderFlag
Flags for vector tile data providers.
Definition qgis.h:6172
VectorTemporalMode
Vector layer temporal feature modes.
Definition qgis.h:2736
SublayerFlag
Flags which reflect the properties of sublayers in a dataset.
Definition qgis.h:1528
QFlags< ProjectCapability > ProjectCapabilities
Flags which control project capabilities.
Definition qgis.h:4692
LabelLinePlacementFlag
Line placement flags, which control how candidates are generated for a linear feature.
Definition qgis.h:1381
QFlags< UriCleaningFlag > UriCleaningFlags
Flags for cleaning layer URIs.
Definition qgis.h:1488
CoordinateDisplayType
Formats for displaying coordinates.
Definition qgis.h:4829
ProcessingParameterTypeFlag
Flags which dictate the behavior of Processing parameter types.
Definition qgis.h:3920
QFlags< VectorRenderingSimplificationFlag > VectorRenderingSimplificationFlags
Simplification flags for vector feature rendering.
Definition qgis.h:3212
DashPatternSizeAdjustment
Dash pattern size adjustment options.
Definition qgis.h:3472
static const double DEFAULT_Z_COORDINATE
Default Z coordinate value.
Definition qgis.h:6855
GpsFixStatus
GPS fix status.
Definition qgis.h:2009
AnnotationItemNodeType
Annotation item node types.
Definition qgis.h:2663
static const char * QGIS_DEV_VERSION
The development version.
Definition qgis.h:89
VectorFileWriterCapability
Capabilities supported by a QgsVectorFileWriter object.
Definition qgis.h:1140
QFlags< MapSettingsFlag > MapSettingsFlags
Map settings flags.
Definition qgis.h:2902
CrsIdentifierType
Available identifier string types for representing coordinate reference systems.
Definition qgis.h:2552
QFlags< RasterRendererFlag > RasterRendererFlags
Flags which control behavior of raster renderers.
Definition qgis.h:1632
AngularDirection
Angular directions.
Definition qgis.h:3613
DriveType
Drive types.
Definition qgis.h:1193
UnitType
Unit types.
Definition qgis.h:5399
ContentStatus
Status for fetched or stored content.
Definition qgis.h:1965
QFlags< SelectionFlag > SelectionFlags
Flags which control feature selection behavior.
Definition qgis.h:1927
SnappingType
SnappingTypeFlag defines on what object the snapping is performed.
Definition qgis.h:776
Map3DBackgroundType
Background types for 3D map view.
Definition qgis.h:4436
LayoutUnit
Layout measurement units.
Definition qgis.h:5606
Q_ENUM(GpsFixStatus)
RelationshipStrength
Relationship strength.
Definition qgis.h:4782
Q_ENUM(GnssConstellation)
PaintEffectFlag
Flags which control how paint effects behave.
Definition qgis.h:2969
MarkerLinePlacement
Defines how/where the symbols should be placed on a line.
Definition qgis.h:3310
QFlags< ProjectReadFlag > ProjectReadFlags
Project load flags.
Definition qgis.h:4670
LegendComponent
Component of legends which can be styled.
Definition qgis.h:4965
Point3DShape
3D point shape types.
Definition qgis.h:4340
GeometryOperationResult
Success or failure of a geometry operation.
Definition qgis.h:2162
QFlags< StringStatistic > StringStatistics
Statistics to be calculated for string values.
Definition qgis.h:6534
BrowserItemState
Browser item states.
Definition qgis.h:986
AttributeEditorContainerType
Attribute editor container types.
Definition qgis.h:6072
QFlags< TiledSceneProviderCapability > TiledSceneProviderCapabilities
Tiled scene data provider capabilities.
Definition qgis.h:6233
FeatureRequestFilterType
Types of feature request filters.
Definition qgis.h:2356
MarkerClipMode
Marker clipping modes.
Definition qgis.h:3430
GpsNavigationStatus
GPS navigation status.
Definition qgis.h:2062
AnnotationItemFlag
Flags for annotation items.
Definition qgis.h:2620
AttributeFormReuseLastValuePolicy
Attribute form policy for reusing last entered values.
Definition qgis.h:6131
RenderSubcomponentProperty
Rendering subcomponent properties.
Definition qgis.h:3221
ProcessingTinInputLayerType
Defines the type of input layer for a Processing TIN input.
Definition qgis.h:4062
QFlags< DataProviderFlag > DataProviderFlags
Data provider flags.
Definition qgis.h:2450
TextureFilterQuality
Texture filtering qualities.
Definition qgis.h:4394
Statistic
Available generic statistics.
Definition qgis.h:6452
TriangulationAlgorithm
Triangulation algorithms.
Definition qgis.h:6780
SymbolRenderHint
Flags controlling behavior of symbols during rendering.
Definition qgis.h:796
AngleUnit
Units of angles.
Definition qgis.h:5541
ToneMappingMethod
Defines the method used to map High Dynamic Range (HDR) scene colors to the Standard Dynamic Range (S...
Definition qgis.h:4503
MapGridAnnotationPosition
Position for map grid annotations.
Definition qgis.h:5816
CaptureTechnique
Capture technique.
Definition qgis.h:418
static QString geosVersion()
GEOS string version linked.
Definition qgis.cpp:704
SpatialIndexPresence
Enumeration of spatial index presence states.
Definition qgis.h:585
BrowserItemCapability
Browser item capabilities.
Definition qgis.h:999
AttributeFormSuppression
Available form types for layout of the attribute form editor.
Definition qgis.h:6102
QFlags< AuthConfigurationStorageCapability > AuthConfigurationStorageCapabilities
Authentication configuration storage capabilities.
Definition qgis.h:152
QFlags< LayerTreeFilterFlag > LayerTreeFilterFlags
Layer tree filter flags.
Definition qgis.h:4935
LayerTreeInsertionMethod
Layer tree insertion methods.
Definition qgis.h:4899
RasterProviderCapability
Raster data provider capabilities.
Definition qgis.h:5289
DatabaseProviderTableImportCapability
Represents capabilities of a database provider connection when importing table data.
Definition qgis.h:6009
LineClipMode
Line clipping modes.
Definition qgis.h:3444
static const double DEFAULT_SNAP_TOLERANCE
Default snapping distance tolerance.
Definition qgis.h:6873
VectorRenderingSimplificationFlag
Simplification flags for vector feature rendering.
Definition qgis.h:3197
QFlags< GeometryValidityFlag > GeometryValidityFlags
Geometry validity flags.
Definition qgis.h:2196
BrowserDirectoryMonitoring
Browser directory item monitoring switches.
Definition qgis.h:1092
VsiHandlerType
GDAL VSI handler types.
Definition qgis.h:6346
NetworkRequestFlag
Flags controlling behavior of network requests.
Definition qgis.h:187
static int geographicLibVersion()
Returns the version of the GeographicLib library if QGIS is built with GeographicLib support.
Definition qgis.cpp:736
SettingsTreeNodeType
Type of tree node.
Definition qgis.h:681
TilePixelRatio
DpiMode enum.
Definition qgis.h:3553
DatabaseProviderConnectionCapability2
The Capability enum represents the extended operations supported by the connection.
Definition qgis.h:5992
QFlags< PaintEffectFlag > PaintEffectFlags
Flags which control how paint effects behave.
Definition qgis.h:2979
LabelOffsetType
Behavior modifier for label offset and distance, only applies in some label placement modes.
Definition qgis.h:1347
QFlags< ProfileGeneratorFlag > ProfileGeneratorFlags
Definition qgis.h:4570
QFlags< MapLayerLegendFlag > MapLayerLegendFlags
Map layer legend flags.
Definition qgis.h:4954
MapGridUnit
Units for map grid values.
Definition qgis.h:5768
LabelPrioritization
Label prioritization.
Definition qgis.h:1259
GradientColorSource
Gradient color sources.
Definition qgis.h:3359
FileFilterType
Type of file filters.
Definition qgis.h:1460
LabelPlacement
Placement modes which determine how label candidates are generated for a feature.
Definition qgis.h:1273
RasterLayerType
Raster layer types.
Definition qgis.h:5166
static const double DEFAULT_M_COORDINATE
Default M coordinate value.
Definition qgis.h:6862
QFlags< VectorLayerTypeFlag > VectorLayerTypeFlags
Vector layer type flags.
Definition qgis.h:440
ScaleBarAlignment
Scalebar alignment.
Definition qgis.h:5710
LegendLayerDoubleClickAction
Action performed when double-clicking a layer in the legend.
Definition qgis.h:4912
RasterPyramidFormat
Raster pyramid formats.
Definition qgis.h:5205
ProcessingMode
Types of modes which Processing widgets can be created for.
Definition qgis.h:3853
VectorExportResult
Vector layer export result codes.
Definition qgis.h:1119
ShadowQuality
Shadow texture quality.
Definition qgis.h:4409
DistanceUnit
Units of distance.
Definition qgis.h:5416
RasterTemporalCapabilityFlag
Flags for raster layer temporal capabilities.
Definition qgis.h:2811
SymbolLayerFlag
Flags controlling behavior of symbol layers.
Definition qgis.h:928
MeshRangeLimit
Describes the limits used to compute mesh ranges (min/max values).
Definition qgis.h:6652
GradientSpread
Gradient spread options, which control how gradients are rendered outside of their start and end poin...
Definition qgis.h:3403
LegendSyncMode
Legend synchronization mode.
Definition qgis.h:4983
QFlags< AnnotationItemGuiFlag > AnnotationItemGuiFlags
Annotation item GUI flags.
Definition qgis.h:2653
LabelPolygonPlacementFlag
Polygon placement flags, which control how candidates are generated for a polygon feature.
Definition qgis.h:1406
RasterRangeLimit
Describes the limits used to compute raster ranges (min/max values).
Definition qgis.h:1664
ScaleMethod
Scale methods.
Definition qgis.h:651
QFlags< RasterProcessingParameterCapability > RasterProcessingParameterCapabilities
Raster layer processing parameter capabilities.
Definition qgis.h:6737
SldExportOption
SLD export options.
Definition qgis.h:723
VectorSimplificationAlgorithm
Simplification algorithms for vector features.
Definition qgis.h:3181
FilePathType
File path types.
Definition qgis.h:1796
CadConstraintType
Advanced digitizing constraint type.
Definition qgis.h:4258
AttributeFormPythonInitCodeSource
The Python init code source for attribute forms.
Definition qgis.h:6117
PointCountMethod
Methods which define the number of points randomly filling a polygon.
Definition qgis.h:3418
SldExportVendorExtension
SLD export vendor extensions, allow the use of vendor extensions when exporting to SLD.
Definition qgis.h:738
static const double DEFAULT_HIGHLIGHT_BUFFER_MM
Default highlight buffer in mm.
Definition qgis.h:6835
MapCanvasFlag
Flags controlling behavior of map canvases.
Definition qgis.h:3639
LayerTreeFilterFlag
Layer tree filter flags.
Definition qgis.h:4925
ExtrusionFace
Extrusion face types for the QgsTessellator.
Definition qgis.h:6760
AttributeFormLayout
Available form types for layout of the attribute form editor.
Definition qgis.h:6087
FeatureRequestFlag
Flags for controlling feature requests.
Definition qgis.h:2327
Map3DDebugFlag
Flags that control debug options for 3D maps.
Definition qgis.h:4319
VertexType
Types of vertex.
Definition qgis.h:3246
ShaderInterpolationMethod
Color ramp shader interpolation methods.
Definition qgis.h:1544
JoinStyle3D
Join styles for 3D buffers.
Definition qgis.h:2255
DataProviderFlag
Generic data provider flags.
Definition qgis.h:2443
Q_ENUM(GpsNavigationStatus)
GdalResampleAlgorithm
Resampling algorithm to be used (equivalent to GDAL's enum GDALResampleAlg).
Definition qgis.h:6324
RasterResamplingMethod
Resampling method for raster provider-level resampling.
Definition qgis.h:1603
GeometryValidationEngine
Available engines for validating geometries.
Definition qgis.h:2205
static int geosVersionPatch()
GEOS Patch version number linked.
Definition qgis.cpp:766
TransactionMode
Transaction mode.
Definition qgis.h:4153
Q_ENUM(ScaleToTileZoomLevelMethod)
QFlags< FeatureRendererFlag > FeatureRendererFlags
Flags controlling behavior of vector feature renderers.
Definition qgis.h:886
static const QColor DEFAULT_HIGHLIGHT_COLOR
Default highlight color.
Definition qgis.h:6830
ElevationMapCombineMethod
Methods used to select the elevation when two elevation maps are combined.
Definition qgis.h:5318
static Q_DECL_DEPRECATED const double SCALE_PRECISION
Fudge factor used to compare two scales.
Definition qgis.h:6849
RasterDrawingStyle
Raster drawing styles.
Definition qgis.h:5182
GeosCreationFlag
Flags which control geos geometry creation behavior.
Definition qgis.h:2280
static const int MAXIMUM_LAYER_PREVIEW_TIME_MS
Maximum rendering time for a layer of a preview job.
Definition qgis.h:6898
MeshRangeExtent
Describes the extent used to compute mesh ranges (min/max values).
Definition qgis.h:6664
GpsInformationComponent
GPS information component.
Definition qgis.h:2076
Q_ENUM(PointCloudProfileType)
ViewSyncModeFlag
Synchronization of 2D map canvas and 3D view.
Definition qgis.h:3658
ProcessingProviderFlag
Flags indicating how and when an processing provider operates and should be exposed to users.
Definition qgis.h:3739
FileOperationFlag
File operation flags.
Definition qgis.h:2398
QFlags< DataItemProviderCapability > DataItemProviderCapabilities
Capabilities for data item providers.
Definition qgis.h:1059
ProjectCapability
Flags which control project capabilities.
Definition qgis.h:4682
QFlags< BabelFormatCapability > BabelFormatCapabilities
Babel GPS format capabilities.
Definition qgis.h:2122
QFlags< SymbolLayerFlag > SymbolLayerFlags
Symbol layer flags.
Definition qgis.h:935
QFlags< RasterInterfaceCapability > RasterInterfaceCapabilities
Raster interface capabilities.
Definition qgis.h:5276
Q_ENUM(VectorProfileType)
AttributeActionType
Attribute action types.
Definition qgis.h:5078
TemporalNavigationMode
Temporal navigation modes.
Definition qgis.h:2690
ProcessingFieldParameterDataType
Processing field parameter data types.
Definition qgis.h:4000
AreaUnit
Units of area.
Definition qgis.h:5493
StringStatistic
Available string statistics.
Definition qgis.h:6514
SelectiveMaskSourceType
Selective masking source types.
Definition qgis.h:3235
FieldDomainMergePolicy
Merge policy for field domains.
Definition qgis.h:4107
ZonalStatistic
Statistics to be calculated during a zonal statistics operation.
Definition qgis.h:6365
MessageLevel
Level for messages This will be used both for message log and message bar in application.
Definition qgis.h:160
@ NoLevel
No level.
Definition qgis.h:165
@ Warning
Warning message.
Definition qgis.h:162
@ Critical
Critical/error message.
Definition qgis.h:163
@ Info
Information message.
Definition qgis.h:161
@ Success
Used for reporting a successful operation.
Definition qgis.h:164
MapGridBorderSide
Border sides for map grid annotations.
Definition qgis.h:5870
SqlKeywordCategory
SqlKeywordCategory enum represents the categories of the SQL keywords used by the SQL query editor.
Definition qgis.h:1175
QFlags< SnappingType > SnappingTypes
Snapping types.
Definition qgis.h:787
static Q_DECL_DEPRECATED QString geoWkt()
WKT string that represents a geographic coord system.
Definition qgis.h:6997
static Q_DECL_DEPRECATED bool hasQtWebkit()
Returns false.
Definition qgis.cpp:745
MapGridFrameSideFlag
Flags for controlling which side of the map a frame is drawn on.
Definition qgis.h:5921
GraduatedMethod
Methods for modifying symbols by range in a graduated symbol renderer.
Definition qgis.h:3487
QFlags< LabelLinePlacementFlag > LabelLinePlacementFlags
Line placement flags, which control how candidates are generated for a linear feature.
Definition qgis.h:1396
TiledSceneBoundingVolumeType
Tiled scene bounding volume types.
Definition qgis.h:6242
TextLayoutMode
Text layout modes.
Definition qgis.h:3069
PropertyType
Property types.
Definition qgis.h:709
QFlags< RenderContextFlag > RenderContextFlags
Render context flags.
Definition qgis.h:2938
LayerFilter
Filter for layers.
Definition qgis.h:225
Q_ENUM(ProviderStyleStorageCapability)
QFlags< SublayerFlag > SublayerFlags
Sublayer flags.
Definition qgis.h:1532
RasterRendererFlag
Flags which control behavior of raster renderers.
Definition qgis.h:1621
QFlags< ExtrusionFace > ExtrusionFaces
Tessellator extrusion face types.
Definition qgis.h:6772
static QString devVersion()
The development version.
Definition qgis.cpp:699
CrsType
Coordinate reference system types.
Definition qgis.h:2462
QFlags< GeosCreationFlag > GeosCreationFlags
Geos geometry creation behavior flags.
Definition qgis.h:2291
MapGridComponentVisibility
Visibility display settings for map grid annotations and frames.
Definition qgis.h:5800
SensorThingsEntity
OGC SensorThings API entity types.
Definition qgis.h:6570
MeshEditingErrorType
Type of error that can occur during mesh frame editing.
Definition qgis.h:1779
FieldDomainSplitPolicy
Split policy for field domains.
Definition qgis.h:4090
ArcGisRestServiceType
Available ArcGIS REST service types.
Definition qgis.h:4720
UriCleaningFlag
Flags for cleaning layer URIs.
Definition qgis.h:1477
RasterFileWriterResult
Raster file export results.
Definition qgis.h:1762
AnnotationItemEditOperationResult
Results from an edit operation on an annotation item.
Definition qgis.h:2675
ProcessingPropertyAvailability
Property availability, used for QgsProcessingAlgorithm::VectorProperties in order to determine if pro...
Definition qgis.h:3824
MapRecenteringMode
Modes for recentering map canvases.
Definition qgis.h:3671
RasterRangeAccuracy
Describes the accuracy used to compute raster ranges (min/max values).
Definition qgis.h:1695
ActionType
Action types.
Definition qgis.h:5013
ActionStart
Enum to determine when an operation would begin.
Definition qgis.h:1210
PlaybackOperation
Media playback operations.
Definition qgis.h:2719
QFlags< SymbolLayerUserFlag > SymbolLayerUserFlags
Symbol layer user flags.
Definition qgis.h:958
QFlags< TextRendererFlag > TextRendererFlags
Definition qgis.h:3592
QueryStorageBackend
Stored query storage backends.
Definition qgis.h:3698
ProviderStyleStorageCapability
The StorageCapability enum represents the style storage operations supported by the provider.
Definition qgis.h:6023
AvoidIntersectionsMode
Flags which control how intersections of pre-existing feature are handled when digitizing new feature...
Definition qgis.h:4619
MarkerShape
Marker shapes.
Definition qgis.h:3261
StacObjectType
Available types of stac objects.
Definition qgis.h:6714
LegendJsonRenderFlag
Legend JSON export flags.
Definition qgis.h:4998
BlendMode
Blending modes defining the available composition modes that can be used when painting.
Definition qgis.h:5333
RasterElevationMode
Raster layer elevation modes.
Definition qgis.h:4205
Capitalization
String capitalization options.
Definition qgis.h:3570
TemporalIntervalMatchMethod
Method to use when resolving a temporal range to a data provider layer or band.
Definition qgis.h:2796
PictureFormat
Picture formats.
Definition qgis.h:5680
QFlags< LabelPolygonPlacementFlag > LabelPolygonPlacementFlags
Polygon placement flags, which control how candidates are generated for a polygon feature.
Definition qgis.h:1418
static QString releaseName()
Release name.
Definition qgis.cpp:694
LabelQuadrantPosition
Label quadrant positions.
Definition qgis.h:1361
QFlags< PlotToolFlag > PlotToolFlags
Definition qgis.h:4308
ScaleToTileZoomLevelMethod
Available methods for converting map scales to tile zoom levels.
Definition qgis.h:3601
SublayerQueryFlag
Flags which control how data providers will scan for sublayers in a dataset.
Definition qgis.h:1510
QFlags< VectorFileWriterCapability > VectorFileWriterCapabilities
Capabilities supported by a QgsVectorFileWriter object.
Definition qgis.h:1150
TextOrientation
Text orientations.
Definition qgis.h:3054
TemporalUnit
Temporal units.
Definition qgis.h:5562
QFlags< RasterRendererCapability > RasterRendererCapabilities
Raster renderer capabilities.
Definition qgis.h:1653
QFlags< SymbolPreviewFlag > SymbolPreviewFlags
Symbol preview flags.
Definition qgis.h:915
UnplacedLabelVisibility
Unplaced label visibility.
Definition qgis.h:1222
CrsDefinitionFormat
CRS definition formats.
Definition qgis.h:4075
SpatialFilterType
Feature request spatial filter types.
Definition qgis.h:2385
VerticalAnchorPoint
Marker symbol vertical anchor points.
Definition qgis.h:862
QFlags< LayoutRenderFlag > LayoutRenderFlags
Flags for controlling how a layout is rendered.
Definition qgis.h:5669
static QString defaultProjectScales()
A string with default project scales.
Definition qgis.cpp:674
QFlags< ProcessingParameterTypeFlag > ProcessingParameterTypeFlags
Flags which dictate the behavior of Processing parameter types.
Definition qgis.h:3935
TileAvailability
Possible availability states for a tile within a tile matrix.
Definition qgis.h:6209
ProjectFlag
Flags which control the behavior of QgsProjects.
Definition qgis.h:4287
MapGridStyle
Map grid drawing styles.
Definition qgis.h:5784
FeatureRendererFlag
Flags controlling behavior of vector feature renderers.
Definition qgis.h:876
static Q_DECL_DEPRECATED QString geoProj4()
PROJ4 string that represents a geographic coord system.
Definition qgis.h:7008
BrowserItemType
Browser item types.
Definition qgis.h:967
QFlags< FeatureRequestFlag > FeatureRequestFlags
Flags for controlling feature requests.
Definition qgis.h:2345
static bool hasGeographicLib()
Returns true if the QGIS build contains GeographicLib.
Definition qgis.cpp:727
SettingsType
Types of settings entries.
Definition qgis.h:662
QFlags< SettingsOption > SettingsOptions
Definition qgis.h:756
RasterTemporalMode
Raster layer temporal modes.
Definition qgis.h:2779
RasterAttributeTableType
The RasterAttributeTableType enum represents the type of RAT.
Definition qgis.h:1736
LabelingFlag
Various flags that affect drawing and placement of labels.
Definition qgis.h:3009
GeometryType
The geometry types are used to group Qgis::WkbType in a coarse way.
Definition qgis.h:379
RelationshipType
Relationship types.
Definition qgis.h:4768
ScriptLanguageCapability
Script language capabilities.
Definition qgis.h:4878
RasterInterfaceCapability
Raster interface capabilities.
Definition qgis.h:5256
JoinStyle
Join styles for buffers.
Definition qgis.h:2242
PointCloudDrawOrder
Pointcloud rendering order for 2d views.
Definition qgis.h:4604
QFlags< RasterBandStatistic > RasterBandStatistics
Statistics to be calculated for raster bands.
Definition qgis.h:6561
CadMeasurementDisplayType
Advanced digitizing measurement display types.
Definition qgis.h:4274
ProcessingAlgorithmDocumentationFlag
Flags describing algorithm behavior for documentation purposes.
Definition qgis.h:3800
TextCharacterVerticalAlignment
Text vertical alignment for characters.
Definition qgis.h:3145
FieldDuplicatePolicy
Duplicate policy for fields.
Definition qgis.h:4127
UserProfileSelectionPolicy
User profile selection policy.
Definition qgis.h:6038
static const float DEFAULT_MAPTOPIXEL_THRESHOLD
Default threshold between map coordinates and device coordinates for map2pixel simplification.
Definition qgis.h:6823
QFlags< FileOperationFlag > FileOperationFlags
File operation flags.
Definition qgis.h:2403
DpiMode
DpiMode enum.
Definition qgis.h:3539
Q_ENUM(ProfileExportType)
BrowserLayerType
Browser item layer types.
Definition qgis.h:1068
QFlags< ProcessingAlgorithmFlag > ProcessingAlgorithmFlags
Flags indicating how and when an algorithm operates and should be exposed to users.
Definition qgis.h:3791
AltitudeBinding
Altitude binding.
Definition qgis.h:4179
QFlags< DataProviderReadFlag > DataProviderReadFlags
Flags which control data provider construction.
Definition qgis.h:512
StringFormat
Format of log message.
Definition qgis.h:175
Q_ENUM(ProcessingProviderFlag)
TiledSceneRendererFlag
Flags which control how tiled scene 2D renderers behave.
Definition qgis.h:6302
MapLayerActionTarget
Map layer action targets.
Definition qgis.h:5028
ShaderClassificationMethod
Color ramp shader classification methods.
Definition qgis.h:1559
MapLayerLegendFlag
Map layer legend flags.
Definition qgis.h:4944
ZonalStatisticResult
Zonal statistics result codes.
Definition qgis.h:6402
ScriptLanguage
Scripting languages.
Definition qgis.h:4855
QFlags< BrowserItemCapability > BrowserItemCapabilities
Browser item capabilities.
Definition qgis.h:1013
QFlags< NetworkRequestFlag > NetworkRequestFlags
Flags controlling behavior of network requests.
Definition qgis.h:197
Export3DSceneFormat
The file format used when exporting a 3D scene.
Definition qgis.h:4515
FeatureAvailability
Possible return value for QgsFeatureSource::hasFeatures() to determine if a source is empty.
Definition qgis.h:604
PlotAxisType
Plots axis types.
Definition qgis.h:3515
TiledSceneProviderCapability
Tiled scene data provider capabilities.
Definition qgis.h:6223
LabelMultiLineAlignment
Text alignment for multi-line labels.
Definition qgis.h:1444
PointCloudProfileType
Types of elevation profiles to generate for point cloud sources.
Definition qgis.h:4552
RasterBandStatistic
Available raster band statistics.
Definition qgis.h:6543
QFlags< VectorTileProviderCapability > VectorTileProviderCapabilities
Vector tile data provider capabilities.
Definition qgis.h:6200
AuthConfigurationStorageCapability
Authentication configuration storage capabilities.
Definition qgis.h:107
QFlags< ZonalStatistic > ZonalStatistics
Statistics to be calculated during a zonal statistics operation.
Definition qgis.h:6393
VectorDataProviderTemporalMode
Vector data provider temporal handling modes.
Definition qgis.h:2766
TextRenderFormat
Options for rendering text.
Definition qgis.h:2990
DocumentationBrowser
Documentation API browser.
Definition qgis.h:6616
DataType
Raster data types.
Definition qgis.h:393
Q_ENUM(ProfileSurfaceSymbology)
QFlags< ViewSyncModeFlag > ViewSyncModeFlags
Definition qgis.h:3663
QFlags< SublayerQueryFlag > SublayerQueryFlags
Sublayer query flags.
Definition qgis.h:1518
SystemOfMeasurement
Systems of unit measurement.
Definition qgis.h:5369
RasterAttributeTableFieldUsage
The RasterAttributeTableFieldUsage enum represents the usage of a Raster Attribute Table field.
Definition qgis.h:1707
VerticalAxisInversion
Vertical axis inversion options for 3D views.
Definition qgis.h:4489
QFlags< CoordinateTransformationFlag > CoordinateTransformationFlags
Coordinate transformation flags.
Definition qgis.h:2856
RelationshipCapability
Relationship capabilities.
Definition qgis.h:4808
SkyboxCubeMapping
Skybox texture cube mapping for distinct texture skyboxes.
Definition qgis.h:4449
RasterBuildPyramidOption
Raster pyramid building options.
Definition qgis.h:5220
QFlags< VectorProviderCapability > VectorProviderCapabilities
Vector data provider capabilities.
Definition qgis.h:563
NavigationMode
The navigation mode used by 3D cameras.
Definition qgis.h:4464
static int geosVersionMajor()
GEOS Major version number linked.
Definition qgis.cpp:756
LinearReferencingPlacement
Defines how/where the labels should be placed in a linear referencing symbol layer.
Definition qgis.h:3330
TileChildrenAvailability
Possible availability states for a tile's children.
Definition qgis.h:6270
PointCloudZoomOutRenderBehavior
Point cloud zoom out options.
Definition qgis.h:6689
QFlags< SymbolConverterCapability > SymbolConverterCapabilities
Symbol converter capabilities.
Definition qgis.h:825
LayerType
Types of layers that can be added to a map.
Definition qgis.h:206
QFlags< AnnotationItemFlag > AnnotationItemFlags
Annotation item flags.
Definition qgis.h:2626
FieldOrigin
Field origin.
Definition qgis.h:1824
LinearReferencingLabelSource
Defines what quantity to use for the labels shown in a linear referencing symbol layer.
Definition qgis.h:3344
QFlags< BrowserItemFilterFlag > BrowserItemFilterFlags
Browser item filter flags.
Definition qgis.h:1032
LabelWhitespaceCollisionHandling
Label whitespace collision handling.
Definition qgis.h:1247
RasterRangeExtent
Describes the extent used to compute raster ranges (min/max values).
Definition qgis.h:1680
QFlags< Statistic > Statistics
Statistics to be calculated for generic values.
Definition qgis.h:6480
PlotToolFlag
Flags that control the way the QgsPlotTools operate.
Definition qgis.h:4304
RenderUnit
Rendering size units.
Definition qgis.h:5586
QFlags< ArcGisRestServiceCapability > ArcGisRestServiceCapabilities
Available ArcGIS REST service capabilities.
Definition qgis.h:4757
static QString geographicCrsAuthId()
Geographic coordinate system auth:id string for a default geographic CRS (EPSG:4326).
Definition qgis.h:6991
CoordinateOrder
Order of coordinates.
Definition qgis.h:2537
SelectionFlag
Flags which control feature selection behavior.
Definition qgis.h:1917
QFlags< SettingsTreeNodeOption > SettingsTreeNodeOptions
Definition qgis.h:698
EndCapStyle
End cap styles for buffers.
Definition qgis.h:2229
ScaleCalculationMethod
Scale calculation logic.
Definition qgis.h:5693
QFlags< TiledSceneRequestFlag > TiledSceneRequestFlags
Flags which control how tiled scene requests behave.
Definition qgis.h:6293
static bool hasSfcgal()
Returns true if the QGIS build contains SFCGAL.
Definition qgis.cpp:709
QFlags< MapLayerActionFlag > MapLayerActionFlags
Map layer action flags.
Definition qgis.h:5067
QFlags< MapLayerProperty > MapLayerProperties
Map layer properties.
Definition qgis.h:2420
QFlags< LoadStyleFlag > LoadStyleFlags
Flags for loading layer styles.
Definition qgis.h:263
BabelCommandFlag
Babel command flags, which control how commands and arguments are generated for executing GPSBabel pr...
Definition qgis.h:2133
QFlags< LabelingFlag > LabelingFlags
Flags that affect drawing and placement of labels.
Definition qgis.h:3029
FieldDomainType
Types of field domain.
Definition qgis.h:4140
MapLayerRendererFlag
Flags which control how map layer renderers behave.
Definition qgis.h:2948
RenderContextFlag
Flags which affect rendering operations.
Definition qgis.h:2912
RasterPipeInterfaceRole
Raster pipe interface roles.
Definition qgis.h:1572
CoverageValidityResult
Coverage validity results.
Definition qgis.h:2300
DataProviderReadFlag
Flags which control data provider construction.
Definition qgis.h:491
ScaleBarSegmentSizeMode
Modes for setting size for scale bar segments.
Definition qgis.h:5725
Aggregate
Available aggregates to calculate.
Definition qgis.h:6420
static int sfcgalVersionInt()
Returns the version of the SFCGAL library if QGIS is built with SFCGAL.
Definition qgis.cpp:718
UnknownLayerCrsBehavior
Behavior to use when encountering a layer with an unknown (invalid) CRS.
Definition qgis.h:2593
BrowserItemFilterFlag
Browser item filter flags.
Definition qgis.h:1022
SymbolPreviewFlag
Flags for controlling how symbol preview images are generated.
Definition qgis.h:910
static const double DEFAULT_SEARCH_RADIUS_MM
Identify search radius in mm.
Definition qgis.h:6820
AnnotationItemGuiFlag
Flags for controlling how an annotation item behaves in the GUI.
Definition qgis.h:2649
MapBoxGlStyleSourceType
Available MapBox GL style source types.
Definition qgis.h:4701
LayoutUnitType
Types of layout units.
Definition qgis.h:5626
VectorDataProviderAttributeEditCapability
Attribute editing capabilities which may be supported by vector data providers.
Definition qgis.h:617
DashPatternLineEndingRule
Dash pattern line ending rules.
Definition qgis.h:3457
FieldMetadataProperty
Standard field metadata values.
Definition qgis.h:1865
MapGridAnnotationType
Annotation coordinate type.
Definition qgis.h:5947
TiledSceneRequestFlag
Flags which control how tiled scene requests behave.
Definition qgis.h:6283
RasterRendererCapability
Raster renderer capabilities.
Definition qgis.h:1643
VertexMarkerType
Editing vertex markers, used for showing vertices during a edit operation.
Definition qgis.h:1953
HistoryProviderBackend
History provider backends.
Definition qgis.h:3684
static const double DEFAULT_SEGMENT_EPSILON
Default snapping tolerance for segments.
Definition qgis.h:6892
RasterExportType
Raster file export types.
Definition qgis.h:1749
SublayerPromptMode
Specifies how to handle layer sources with multiple sublayers.
Definition qgis.h:1808
TextVerticalAlignment
Text vertical alignment.
Definition qgis.h:3129
RelationshipCardinality
Relationship cardinality.
Definition qgis.h:4794
GradientType
Gradient types.
Definition qgis.h:3373
QFlags< ScriptLanguageCapability > ScriptLanguageCapabilities
Script language capabilities.
Definition qgis.h:4890
VectorProfileType
Types of elevation profiles to generate for vector sources.
Definition qgis.h:4540
GpsFeatureType
GPS feature types.
Definition qgis.h:2147
SourceHierarchyLevel
Defines the structural levels within a data source hierarchy.
Definition qgis.h:1497
VectorLayerTypeFlag
Vector layer type flags.
Definition qgis.h:435
MakeValidMethod
Algorithms to use when repairing invalid geometries.
Definition qgis.h:2313
QFlags< Map3DDebugFlag > Map3DDebugFlags
Definition qgis.h:4329
RangeLimits
Describes how the limits of a range are handled.
Definition qgis.h:4191
QFlags< ProjectFlag > ProjectFlags
Definition qgis.h:4295
VectorTemporalLimitMode
Mode for the handling of the limits of the filtering timeframe for vector features.
Definition qgis.h:2754
QFlags< ProcessingParameterFlag > ProcessingParameterFlags
Flags which dictate the behavior of Processing parameters.
Definition qgis.h:3961
SqlLayerDefinitionCapability
SqlLayerDefinitionCapability enum lists the arguments supported by the provider when creating SQL que...
Definition qgis.h:1158
static int versionInt()
Version number used for comparing versions using the "Check QGIS Version" function.
Definition qgis.cpp:687
VectorEditResult
Specifies the result of a vector layer edit operation.
Definition qgis.h:1938
QFlags< VectorDataProviderAttributeEditCapability > VectorDataProviderAttributeEditCapabilities
Attribute editing capabilities which may be supported by vector data providers.
Definition qgis.h:629
Axis
Cartesian axes.
Definition qgis.h:2607
QFlags< ProcessingAlgorithmDocumentationFlag > ProcessingAlgorithmDocumentationFlags
Flags describing algorithm behavior for documentation purposes.
Definition qgis.h:3812
QFlags< RelationshipCapability > RelationshipCapabilities
Relationship capabilities.
Definition qgis.h:4820
ArcGisRestServiceCapability
Available ArcGIS REST service capabilities.
Definition qgis.h:4741
QFlags< SymbolRenderHint > SymbolRenderHints
Symbol render hints.
Definition qgis.h:804
VolumeUnit
Units of volume.
Definition qgis.h:5518
CurvedTextFlag
Flags controlling behavior of curved text generation.
Definition qgis.h:3158
AttributeEditorType
Attribute editor types.
Definition qgis.h:6053
QFlags< LegendJsonRenderFlag > LegendJsonRenderFlags
Definition qgis.h:5002
QFlags< ProviderStyleStorageCapability > ProviderStyleStorageCapabilities
Definition qgis.h:6029
EmbeddedScriptMode
Authorisation to run script embedded in projects.
Definition qgis.h:448
SymbolLayerUserFlag
User-specified flags controlling behavior of symbol layers.
Definition qgis.h:948
InvalidGeometryCheck
Methods for handling of features with invalid geometries.
Definition qgis.h:2372
QFlags< SymbolFlag > SymbolFlags
Symbol flags.
Definition qgis.h:901
QFlags< ProcessingFeatureSourceDefinitionFlag > ProcessingFeatureSourceDefinitionFlags
Flags which control behavior for a Processing feature source.
Definition qgis.h:3883
MapGridFrameStyle
Style for map grid frames.
Definition qgis.h:5886
PointCloudAccessType
The access type of the data, local is for local files and remote for remote files (over HTTP).
Definition qgis.h:6678
ProfileExportType
Types of export for elevation profiles.
Definition qgis.h:4579
MeshElevationMode
Mesh layer elevation modes.
Definition qgis.h:4219
ProjectFileFormat
Flags which control project read behavior.
Definition qgis.h:4634
SnappingMode
SnappingMode defines on which layer the snapping is performed.
Definition qgis.h:764
SymbolType
Symbol types.
Definition qgis.h:637
RasterColorInterpretation
Raster color interpretation.
Definition qgis.h:5115
static const int USER_CRS_START_ID
Minimum ID number for a user-defined projection.
Definition qgis.h:6883
ProfileSurfaceSymbology
Surface symbology type for elevation profile plots.
Definition qgis.h:4527
LabelPlacementEngineVersion
Labeling placement engine version.
Definition qgis.h:3040
Q_ENUM(ProcessingAlgorithmFlag)
static int geosVersionMinor()
GEOS Minor version number linked.
Definition qgis.cpp:761
MaterialRenderingTechnique
Material rendering techniques.
Definition qgis.h:4362
ColorModel
Color model types.
Definition qgis.h:6590
RendererUsage
Usage of the renderer.
Definition qgis.h:3626
SettingsTreeNodeOption
Options for named list nodes.
Definition qgis.h:693
BabelFormatCapability
Babel GPS format capabilities.
Definition qgis.h:2114
PostgresRelKind
Postgres database relkind options.
Definition qgis.h:5971
SegmentCalculationMethod
brief Method used to calculate the number of segments for circle approximation
Definition qgis.h:6701
GpsConnectionType
GPS connection types.
Definition qgis.h:1980
Q_ENUM(InputControllerType)
QFlags< DatabaseProviderConnectionCapability2 > DatabaseProviderConnectionCapabilities2
Definition qgis.h:6000
MouseHandlesAction
Action to be performed by the mouse handles.
Definition qgis.h:6628
ProcessingFeatureSourceDefinitionFlag
Flags which control behavior for a Processing feature source.
Definition qgis.h:3868
QFlags< TextComponent > TextComponents
Text components.
Definition qgis.h:3099
static QString geoNone()
Constant that holds the string representation for "No ellipse/No CRS".
Definition qgis.h:6984
DevToolsNodeRole
Dev tools node custom data roles.
Definition qgis.h:6745
LoadStyleFlag
Flags for loading layer styles.
Definition qgis.h:252
BetweenLineConstraint
Between line constraints which can be enabled.
Definition qgis.h:4232
QFlags< VectorTileProviderFlag > VectorTileProviderFlags
Vector tile data provider flags.
Definition qgis.h:6182
SymbolConverterCapability
Symbol converter capabilities.
Definition qgis.h:813
MetadataDateType
Date types for metadata.
Definition qgis.h:5096
QFlags< RasterTemporalCapabilityFlag > RasterTemporalCapabilityFlags
Flags for raster layer temporal capabilities.
Definition qgis.h:2822
ProcessingFeatureSourceFlag
Flags which control how QgsProcessingFeatureSource fetches features.
Definition qgis.h:3894
RasterIdentifyFormat
Raster identify formats.
Definition qgis.h:5235
MapGridAnnotationDirection
Direction of grid annotations.
Definition qgis.h:5830
TextHorizontalAlignment
Text horizontal alignment.
Definition qgis.h:3110
SymbolFlag
Flags controlling behavior of symbols.
Definition qgis.h:895
LineExtensionSide
Designates whether the line extension constraint is currently soft locked with the previous or next v...
Definition qgis.h:4245
HttpMethod
Different methods of HTTP requests.
Definition qgis.h:1104
WkbType
The WKB type describes the number of dimensions a geometry has.
Definition qgis.h:294
QFlags< SldExportOption > SldExportOptions
Definition qgis.h:729
SymbolCoordinateReference
Symbol coordinate reference modes.
Definition qgis.h:3388
QFlags< ProcessingProviderFlag > ProcessingProviderFlags
Flags indicating how and when an processing provider operates and should be exposed to users.
Definition qgis.h:3753
TileRefinementProcess
Tiled scene tile refinement processes.
Definition qgis.h:6258
QFlags< DateTimeStatistic > DateTimeStatistics
Statistics to be calculated for date/time values.
Definition qgis.h:6505
SelectionRenderingMode
Specifies how a selection should be rendered.
Definition qgis.h:1878
InputControllerType
Input controller types.
Definition qgis.h:5959
TextRendererFlag
Flags which control the behavior of rendering text.
Definition qgis.h:3588
SelectGeometryRelationship
Geometry relationship test to apply for selecting features.
Definition qgis.h:1905
CrsAxisDirection
Coordinate reference system axis directions.
Definition qgis.h:2487
ProcessingModelChildParameterSource
Processing model child parameter sources.
Definition qgis.h:4031
static int geosVersionInt()
GEOS version number linked.
Definition qgis.cpp:750
QFlags< MarkerLinePlacement > MarkerLinePlacements
Definition qgis.h:3321
QFlags< MapCanvasFlag > MapCanvasFlags
Flags controlling behavior of map canvases.
Definition qgis.h:3649
CrsWktVariant
Coordinate reference system WKT formatting variants.
Definition qgis.h:2567
QFlags< TiledSceneRendererFlag > TiledSceneRendererFlags
Flags which control how tiled scene 2D renderers behave.
Definition qgis.h:6315
MapGridAnnotationFormat
Format for displaying map grid annotations.
Definition qgis.h:5849
DocumentationApi
Documentation API.
Definition qgis.h:6602
AutoRefreshMode
Map layer automatic refresh modes.
Definition qgis.h:2430
AnnotationPlacementMode
Annotation item placement modes.
Definition qgis.h:2636
ProcessingAlgorithmFlag
Flags indicating how and when an algorithm operates and should be exposed to users.
Definition qgis.h:3764
QFlags< InstancedMaterialFlag > InstancedMaterialFlags
Definition qgis.h:4385
SceneMode
The 3D scene mode used in 3D map views.
Definition qgis.h:4477
InstancedMaterialFlag
Optional per-instance properties of instanced materials.
Definition qgis.h:4380
FieldConfigurationFlag
Configuration flags for fields These flags are meant to be user-configurable and are not describing a...
Definition qgis.h:1841
SettingsOrigin
The setting origin describes where a setting is stored.
Definition qgis.h:4842
HorizontalAnchorPoint
Marker symbol horizontal anchor points.
Definition qgis.h:848
QFlags< CurvedTextFlag > CurvedTextFlags
Flags controlling behavior of curved text generation.
Definition qgis.h:3171
ProcessingParameterFlag
Flags which dictate the behavior of Processing parameters.
Definition qgis.h:3946
LabelOverlapHandling
Label overlap handling.
Definition qgis.h:1234
static const double UI_SCALE_FACTOR
UI scaling factor.
Definition qgis.h:6868
FeatureSymbologyExport
Options for exporting features considering their symbology.
Definition qgis.h:6159
QFlags< LayerFilter > LayerFilters
Definition qgis.h:243
ProcessingDateTimeParameterDataType
Processing date time parameter data types.
Definition qgis.h:4018
DockableWidgetInitialState
Dockable widget initial states.
Definition qgis.h:6810
CoordinateTransformationFlag
Flags which adjust the coordinate transformations behave.
Definition qgis.h:2843
TextComponent
Text components.
Definition qgis.h:3086
DateTimeStatistic
Available date/time statistics.
Definition qgis.h:6489
AnimationState
Animation states.
Definition qgis.h:2706
TransformDirection
Indicates the direction (forward or inverse) of a transform.
Definition qgis.h:2831
LightSourceType
Light source types for 3D scenes.
Definition qgis.h:4424
QFlags< ProcessingFeatureSourceFlag > ProcessingFeatureSourceFlags
Flags which control how QgsProcessingFeatureSource fetches features.
Definition qgis.h:3906
QFlags< HistoryProviderBackend > HistoryProviderBackends
Definition qgis.h:3689
LabelPredefinedPointPosition
Positions for labels when using the Qgis::LabelPlacement::OrderedPositionsAroundPoint placement mode.
Definition qgis.h:1308
QFlags< FieldConfigurationFlag > FieldConfigurationFlags
Configuration flags for fields These flags are meant to be user-configurable and are not describing a...
Definition qgis.h:1856
UpsideDownLabelHandling
Handling techniques for upside down labels.
Definition qgis.h:1429
static const double DEFAULT_POINT_SIZE
The default size (in millimeters) for point marker symbols.
Definition qgis.h:6886
DeviceConnectionStatus
GPS connection status.
Definition qgis.h:1994
ProcessingNumberParameterType
Processing numeric parameter data types.
Definition qgis.h:3986
MapSettingsFlag
Flags which adjust the way maps are rendered.
Definition qgis.h:2878
QFlags< SqlLayerDefinitionCapability > SqlLayerDefinitionCapabilities
SQL layer definition capabilities.
Definition qgis.h:1166
ProcessingLogLevel
Logging level for algorithms to use when pushing feedback messages.
Definition qgis.h:3838
SelectBehavior
Specifies how a selection should be applied.
Definition qgis.h:1891
LayoutRenderFlag
Flags for controlling how a layout is rendered.
Definition qgis.h:5640
Utility class that encapsulates an action based on vector attributes.
Definition qgsaction.h:38
Utility class for calculating aggregates for a field (or expression) over the features from a vector ...
Utility functions for working with ArcGIS REST services.
An abstract base class for any elements of a drag and drop form.
A ramp shader will color a raster pixel based on a list of values ranges in a ramp.
Represents a coordinate reference system (CRS).
Handles coordinate transforms between two coordinate systems.
Abstract base class for curved geometry type.
Definition qgscurve.h:36
Base class for all items in the model.
Definition qgsdataitem.h:50
Abstract base class for spatial data provider implementations.
Calculator for summary statistics and aggregates for a list of datetimes.
Contains configuration settings for an editor form.
Wraps a request for features to a vector layer (or directly its vector data provider).
An interface for objects which provide features via a getFeatures method.
Container of fields for a vector layer.
Definition qgsfields.h:46
A geometry is the spatial representation of a feature.
Encapsulates information relating to a GPS position fix.
A fill symbol layer which draws a smooth color gradient over a polygon.
A vector feature renderer which uses numeric attributes to classify features into different ranges.
Stores global configuration for labeling engine.
Contains constants and enums relating to labeling.
Definition qgslabeling.h:33
A browser item that represents a layer that can be opened with one of the providers.
An individual grid which is drawn above the map content in a QgsLayoutItemMap.
A layout item subclass that displays SVG files or raster format images (jpg, png, ....
Stores information relating to the current rendering settings for a layout.
Contains detailed styling information relating to how a layout legend should be rendered.
A proxy model which provides an easy to use model to display the list of layers in widgets.
Base class for all map layer types.
Definition qgsmaplayer.h:83
Contains configuration for rendering maps.
Abstract base class for marker symbol layers.
Interface for showing messages from QGIS in GUI independent way.
Registry for temporary fetched files.
Contains miscellaneous painting utility functions.
Definition qgspainting.h:32
Contains settings for how a map layer will be labeled.
Abstract base class for 2d point cloud renderers.
Abstract base class for processing algorithms.
Contains information about the context in which a processing algorithm is executed.
Encapsulates settings relating to a feature source input to a processing algorithm.
QgsFeatureSource subclass which proxies methods to an underlying QgsFeatureSource,...
A datetime (or pure date or time) parameter for processing algorithms.
Base class for the definition of processing parameters.
A vector layer or feature source field parameter for processing algorithms.
An input file or folder parameter for processing algorithms.
A numeric parameter for processing algorithms.
A parameter for processing algorithms that need a list of input vector layers to construct a TIN.
Makes metadata of processing parameters available.
Abstract base class for processing providers.
Contains enumerations and other constants for use in processing algorithms and parameters.
Encapsulates a QGIS project, including sets of map layers and their styles, layouts,...
Definition qgsproject.h:114
A store for object properties.
Holds data provider key, description, and associated shared library file or function pointer informat...
A fill symbol layer which places markers at random locations within polygons.
The RasterBandStats struct is a container for statistics about a single raster band.
Implementation of data provider temporal properties for QgsRasterDataProviders.
Base class for raster data providers.
The raster file writer which allows you to save a raster to a new file.
Base class for processing filters like renderers, reprojector, resampler etc.
Implementation of map layer temporal properties for raster layers.
Represents a raster layer.
Describes the origin of minimum and maximum values in a raster.
Contains a pipeline of raster interfaces for sequential raster processing.
Raster namespace.
Definition qgsraster.h:32
Represents a relationship between two vector layers.
Definition qgsrelation.h:42
Contains information about the context of a rendering operation.
Stores the appearance and layout settings for scalebar drawing with QgsScaleBarRenderer.
Represents a settings entry and provides methods for reading and writing settings values.
RAII signal blocking class.
Definition qgis.h:7128
Object * operator->()
Returns pointer to blocked QObject.
Definition qgis.h:7142
QgsSignalBlocker(Object *object)
Constructor for QgsSignalBlocker.
Definition qgis.h:7134
Abstract base class for simple marker symbol layers.
Stores configuration of snapping settings for the project.
Calculator for summary statistics for a list of doubles.
Calculator for summary statistics and aggregates for a list of strings.
Utility functions for working with strings.
Contains utility functions for working with symbols and symbol layers.
Abstract base class for all rendered symbols.
Definition qgssymbol.h:227
Base class for templated line symbols, e.g.
Implements a temporal controller based on a frame by frame navigation and animation.
Container for all settings relating to text rendering.
Utility functions for text rendering.
Handles rendering text using rich formatting options, including drop shadows, buffers and background ...
Provides calculations for tolerance values in map units.
Helper functions for various unit types.
Implementation of data provider temporal properties for QgsVectorDataProviders.
Base class for vector data providers.
A convenience class for writing vector layers to disk based formats (e.g.
A convenience class for exporting vector layers to a destination data provider.
Implementation of map layer temporal properties for vector layers.
Represents a vector layer which manages a vector based dataset.
Contains settings for simplifying geometries fetched from a vector layer.
Handles storage of information regarding WKB types and their properties.
Definition qgswkbtypes.h:42
FeatureCountState
Enumeration of feature count states.
Definition qgis.h:572
As part of the API refactoring and improvements which landed in QGIS
Q_DECL_DEPRECATED const long GEOCRS_ID
Numeric ID for the EPSG:4326 geographic coordinate system in QGIS internal srs database.
Definition qgis.h:7763
Q_DECL_DEPRECATED CORE_EXPORT QString qgsVsiPrefix(const QString &path)
Returns a the vsi prefix which corresponds to a file path, or an empty string if the path is not asso...
Definition qgis.cpp:606
CORE_EXPORT uint qHash(const QVariant &variant)
Hash for QVariant.
Definition qgis.cpp:611
bool operator>(const QVariant &v1, const QVariant &v2)
Compares two QVariant values and returns whether the first is greater than the second.
Definition qgis.h:7677
CORE_EXPORT bool qgsVariantEqual(const QVariant &lhs, const QVariant &rhs)
Compares two QVariant values and returns whether they are equal, two NULL values are always treated a...
Definition qgis.cpp:657
Q_DECL_DEPRECATED const long GEOSRID
Numeric ID for the EPSG:4326 geographic coordinate system.
Definition qgis.h:7756
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:7458
QString qgsDoubleToString(double a, int precision=17)
Returns a string representation of a double.
Definition qgis.h:7175
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:7328
QString qgsEnumValueToKey(const T &value, bool *returnOk=nullptr)
Returns the value for the given key of an enum.
Definition qgis.h:7439
QString qgsFlagValueToKeys(const T &value, bool *returnOk=nullptr)
Returns the value for the given keys of a flag.
Definition qgis.h:7497
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:7312
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:7526
CORE_EXPORT bool qgsVariantGreaterThan(const QVariant &lhs, const QVariant &rhs)
Compares two QVariant values and returns whether the first is greater than the second.
Definition qgis.cpp:601
unsigned long long qgssize
Qgssize is used instead of size_t, because size_t is stdlib type, unknown by SIP, and it would be har...
Definition qgis.h:7782
const QMap< T, QString > qgsEnumMap()
Returns a map of all enum entries.
Definition qgis.h:7422
bool qgsFloatNear(float a, float b, float epsilon=4 *FLT_EPSILON)
Compare two floats (but allow some difference).
Definition qgis.h:7268
CORE_EXPORT int qgsVariantCompare(const QVariant &lhs, const QVariant &rhs, bool strictTypeCheck=false)
Compares two QVariant values.
Definition qgis.cpp:139
QString qgsSetJoin(const QSet< T > &set, const QString &separator)
Joins all the set values into a single string with each element separated by the given separator.
Definition qgis.h:7344
CORE_EXPORT double qgsPermissiveToDouble(QString string, bool &ok)
Converts a string to a double in a permissive way, e.g., allowing for incorrect numbers of digits bet...
Definition qgis.cpp:91
const QList< T > qgsEnumList()
Returns a list all enum entries.
Definition qgis.h:7405
double qgsRound(double number, int places)
Returns a double number, rounded (as close as possible) to the specified number of places.
Definition qgis.h:7297
bool qgsDoubleNear(double a, double b, double epsilon=4 *std::numeric_limits< double >::epsilon())
Compare two doubles (but allow some difference).
Definition qgis.h:7257
bool qgsNanCompatibleEquals(double a, double b)
Compare two doubles, treating nan values as equal.
Definition qgis.h:7220
QgsSignalBlocker< Object > whileBlocking(Object *object)
Temporarily blocks signals from a QObject while calling a single method from the object.
Definition qgis.h:7162
void CORE_EXPORT * qgsMalloc(size_t size)
Allocates size bytes and returns a pointer to the allocated memory.
Definition qgis.cpp:112
QMap< QString, QString > QgsStringMap
Definition qgis.h:7772
Q_DECL_DEPRECATED const long GEO_EPSG_CRS_ID
Numeric ID for the EPSG:4326 geographic coordinate system.
Definition qgis.h:7770
bool qgsDoubleNearSig(double a, double b, int significantDigits=10)
Compare two doubles using specified number of significant digits.
Definition qgis.h:7274
void CORE_EXPORT qgsFree(void *ptr)
Frees the memory space pointed to by ptr.
Definition qgis.cpp:134
bool qgsNumberNear(T a, T b, T epsilon=std::numeric_limits< T >::epsilon() *4)
Compare two numbers of type T (but allow some difference).
Definition qgis.h:7239
CORE_EXPORT qlonglong qgsPermissiveToLongLong(QString string, bool &ok)
Converts a string to an qlonglong in a permissive way, e.g., allowing for incorrect numbers of digits...
Definition qgis.cpp:105
CORE_EXPORT int qgsPermissiveToInt(QString string, bool &ok)
Converts a string to an integer in a permissive way, e.g., allowing for incorrect numbers of digits b...
Definition qgis.cpp:98
CORE_EXPORT bool qgsVariantLessThan(const QVariant &lhs, const QVariant &rhs)
Compares two QVariant values and returns whether the first is less than the second.
Definition qgis.cpp:596
#define QHASH_FOR_CLASS_ENUM(T)
Definition qgis.h:50
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:7693
#define SIP_DEPRECATED
Definition qgis_sip.h:113
#define SIP_ENUM_BASETYPE(type)
Definition qgis_sip.h:272
#define SIP_SKIP
Definition qgis_sip.h:133
#define SIP_MONKEYPATCH_SCOPEENUM_UNNEST(OUTSIDE_CLASS, FORMERNAME)
Definition qgis_sip.h:265
#define SIP_MONKEYPATCH_FLAGS_UNNEST(OUTSIDE_CLASS, FORMERNAME)
Definition qgis_sip.h:266
#define SIP_MONKEYPATCH_SCOPEENUM
Definition qgis_sip.h:264
#define SIP_MONKEYPATCH_COMPAT_NAME(FORMERNAME)
Definition qgis_sip.h:267
Q_DECLARE_METATYPE(QgsDatabaseQueryLogEntry)
Q_DECLARE_OPERATORS_FOR_FLAGS(QgsProjectionSelectionWidget::CrsOptions)
Utility class for identifying a unique vertex within a geometry.
Definition qgsvertexid.h:35