QGIS API Documentation 3.99.0-Master (d270888f95f)
Loading...
Searching...
No Matches
qgis.h
Go to the documentation of this file.
1/***************************************************************************
2 qgis.h - QGIS namespace
3 -------------------
4 begin : Sat Jun 30 2002
5 copyright : (C) 2002 by Gary E.Sherman
6 email : sherman at mrcc.com
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17
18#ifndef QGIS_H
19#define QGIS_H
20
21
22#include <cfloat>
23#include <cmath>
24#include <memory>
25
26#include "qgis_core.h"
27#include "qgis_sip.h"
28
29#include <QMetaEnum>
30#include <QString>
31#include <QTimeZone>
32
33using namespace Qt::StringLiterals;
34
35#ifdef SIP_RUN
36% ModuleHeaderCode
37#include <qgis.h>
38% End
39
40% ModuleCode
41int QgisEvent = QEvent::User + 1;
42% End
43#endif
44
45#ifndef SIP_RUN
46// qHash implementation for scoped enum type
47// https://gitlab.com/frostasm/programming-knowledge-base/-/snippets/20120
48#define QHASH_FOR_CLASS_ENUM(T) \
49 inline uint qHash(const T &t, uint seed) { \
50 return ::qHash(static_cast<typename std::underlying_type<T>::type>(t), seed); \
51 }
52#endif
53
58class CORE_EXPORT Qgis
59{
60 Q_GADGET
61 Q_CLASSINFO( "RegisterEnumClassesUnscoped", "false" )
62
63 public:
64
70 static QString version();
71
77 static int versionInt();
78
84 static QString releaseName();
85
87 static const char *QGIS_DEV_VERSION;
88
94 static QString devVersion();
95
96 // Enumerations
97 //
98
105 {
106 ClearStorage = 1 << 0,
107
108 ReadConfiguration = 1 << 1,
109 UpdateConfiguration = 1 << 2,
110 DeleteConfiguration = 1 << 3,
111 CreateConfiguration = 1 << 4,
112
113 ReadCertificateIdentity = 1 << 5,
114 UpdateCertificateIdentity = 1 << 6,
115 DeleteCertificateIdentity = 1 << 7,
116 CreateCertificateIdentity = 1 << 8,
117
118 ReadSslCertificateCustomConfig = 1 << 9,
119 UpdateSslCertificateCustomConfig = 1 << 10,
120 DeleteSslCertificateCustomConfig = 1 << 11,
121 CreateSslCertificateCustomConfig = 1 << 12,
122
123 ReadCertificateAuthority = 1 << 13,
124 UpdateCertificateAuthority = 1 << 14,
125 DeleteCertificateAuthority = 1 << 15,
126 CreateCertificateAuthority = 1 << 16,
127
128 ReadCertificateTrustPolicy = 1 << 17,
129 UpdateCertificateTrustPolicy = 1 << 18,
130 DeleteCertificateTrustPolicy = 1 << 19,
131 CreateCertificateTrustPolicy = 1 << 20,
132
133 ReadMasterPassword = 1 << 21,
134 UpdateMasterPassword = 1 << 22,
135 DeleteMasterPassword = 1 << 23,
136 CreateMasterPassword = 1 << 24,
137
138 ReadSetting = 1 << 25,
139 UpdateSetting = 1 << 26,
140 DeleteSetting = 1 << 27,
141 CreateSetting = 1 << 28,
142
143 };
144 Q_ENUM( AuthConfigurationStorageCapability )
145
146
152
153
159 {
160 Info = 0,
165 };
166 Q_ENUM( MessageLevel )
167
168
173 enum class NetworkRequestFlag : int SIP_ENUM_BASETYPE( IntFlag )
174 {
175 DisableMessageLogging = 1 << 0,
176 };
177 Q_ENUM( NetworkRequestFlag )
178
179
185 Q_FLAG( NetworkRequestFlags )
186
193 {
194 Vector SIP_MONKEYPATCH_COMPAT_NAME( VectorLayer ),
195 Raster SIP_MONKEYPATCH_COMPAT_NAME( RasterLayer ),
196 Plugin SIP_MONKEYPATCH_COMPAT_NAME( PluginLayer ),
197 Mesh SIP_MONKEYPATCH_COMPAT_NAME( MeshLayer ),
198 VectorTile SIP_MONKEYPATCH_COMPAT_NAME( VectorTileLayer ),
199 Annotation SIP_MONKEYPATCH_COMPAT_NAME( AnnotationLayer ),
200 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( PointCloudLayer ),
201 Group SIP_MONKEYPATCH_COMPAT_NAME( GroupLayer ),
202 TiledScene,
203 };
204 Q_ENUM( LayerType )
205
206
212 {
213 RasterLayer = 1,
214 NoGeometry = 2,
215 PointLayer = 4,
216 LineLayer = 8,
217 PolygonLayer = 16,
218 HasGeometry = PointLayer | LineLayer | PolygonLayer,
219 VectorLayer = NoGeometry | HasGeometry,
220 PluginLayer = 32,
221 WritableLayer = 64,
222 MeshLayer = 128,
223 VectorTileLayer = 256,
224 PointCloudLayer = 512,
225 AnnotationLayer = 1024,
226 TiledSceneLayer = 2048,
227 All = RasterLayer | VectorLayer | PluginLayer | MeshLayer | VectorTileLayer | PointCloudLayer | AnnotationLayer | TiledSceneLayer,
228 SpatialLayer = RasterLayer | HasGeometry | PluginLayer | MeshLayer | VectorTileLayer | PointCloudLayer | AnnotationLayer | TiledSceneLayer
229 };
230 Q_DECLARE_FLAGS( LayerFilters, LayerFilter )
231 Q_FLAG( LayerFilters )
232
233
238 enum class LoadStyleFlag : int SIP_ENUM_BASETYPE( IntFlag )
239 {
240 IgnoreMissingStyleErrors = 1 << 0,
241 };
242 Q_ENUM( LoadStyleFlag )
243
244
249 Q_DECLARE_FLAGS( LoadStyleFlags, LoadStyleFlag )
250 Q_FLAG( LoadStyleFlags )
251
280 {
281 Unknown = 0,
282 Point = 1,
283 LineString = 2,
284 Polygon = 3,
285 Triangle = 17,
286 MultiPoint = 4,
287 MultiLineString = 5,
288 MultiPolygon = 6,
289 GeometryCollection = 7,
290 CircularString = 8,
291 CompoundCurve = 9,
292 CurvePolygon = 10,
293 MultiCurve = 11,
294 MultiSurface = 12,
295 PolyhedralSurface = 15,
296 TIN = 16,
297 NurbsCurve = 21,
298 NoGeometry = 100,
299 PointZ = 1001,
300 LineStringZ = 1002,
301 PolygonZ = 1003,
302 TriangleZ = 1017,
303 MultiPointZ = 1004,
304 MultiLineStringZ = 1005,
305 MultiPolygonZ = 1006,
306 GeometryCollectionZ = 1007,
307 CircularStringZ = 1008,
308 CompoundCurveZ = 1009,
309 CurvePolygonZ = 1010,
310 MultiCurveZ = 1011,
311 MultiSurfaceZ = 1012,
312 PolyhedralSurfaceZ = 1015,
313 TINZ = 1016,
314 NurbsCurveZ = 1021,
315 PointM = 2001,
316 LineStringM = 2002,
317 PolygonM = 2003,
318 TriangleM = 2017,
319 MultiPointM = 2004,
320 MultiLineStringM = 2005,
321 MultiPolygonM = 2006,
322 GeometryCollectionM = 2007,
323 CircularStringM = 2008,
324 CompoundCurveM = 2009,
325 CurvePolygonM = 2010,
326 MultiCurveM = 2011,
327 MultiSurfaceM = 2012,
328 PolyhedralSurfaceM = 2015,
329 TINM = 2016,
330 NurbsCurveM = 2021,
331 PointZM = 3001,
332 LineStringZM = 3002,
333 PolygonZM = 3003,
334 MultiPointZM = 3004,
335 MultiLineStringZM = 3005,
336 MultiPolygonZM = 3006,
337 GeometryCollectionZM = 3007,
338 CircularStringZM = 3008,
339 CompoundCurveZM = 3009,
340 CurvePolygonZM = 3010,
341 MultiCurveZM = 3011,
342 MultiSurfaceZM = 3012,
343 PolyhedralSurfaceZM = 3015,
344 TINZM = 3016,
345 TriangleZM = 3017,
346 NurbsCurveZM = 3021,
347 Point25D = 0x80000001,
348 LineString25D,
349 Polygon25D,
350 MultiPoint25D,
351 MultiLineString25D,
352 MultiPolygon25D
353 };
354 Q_ENUM( WkbType )
355
356
365 {
366 Point SIP_MONKEYPATCH_COMPAT_NAME( PointGeometry ),
367 Line SIP_MONKEYPATCH_COMPAT_NAME( LineGeometry ),
368 Polygon SIP_MONKEYPATCH_COMPAT_NAME( PolygonGeometry ),
369 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownGeometry ),
370 Null SIP_MONKEYPATCH_COMPAT_NAME( NullGeometry ),
371 };
372 Q_ENUM( GeometryType )
373
374
379 {
380 UnknownDataType = 0,
381 Byte = 1,
382 Int8 = 14,
383 UInt16 = 2,
384 Int16 = 3,
385 UInt32 = 4,
386 Int32 = 5,
387 Float32 = 6,
388 Float64 = 7,
389 CInt16 = 8,
390 CInt32 = 9,
391 CFloat32 = 10,
392 CFloat64 = 11,
393 ARGB32 = 12,
394 ARGB32_Premultiplied = 13
395 };
396 Q_ENUM( DataType )
397
398
403 enum class CaptureTechnique : int
404 {
405 StraightSegments,
406 CircularString,
407 Streaming,
408 Shape,
409 NurbsCurve,
410 };
411 Q_ENUM( CaptureTechnique )
412
413
418 enum class NurbsMode : int
419 {
420 ControlPoints,
421 };
422 Q_ENUM( NurbsMode )
423
424
429 enum class VectorLayerTypeFlag : int SIP_ENUM_BASETYPE( IntFlag )
430 {
431 SqlQuery = 1 << 0
432 };
433 Q_ENUM( VectorLayerTypeFlag )
436 Q_FLAG( VectorLayerTypeFlags )
437
442 enum class EmbeddedScriptMode SIP_MONKEYPATCH_SCOPEENUM_UNNEST( Qgis, PythonMacroMode ) : int
443 {
444 Never = 0,
445 Ask = 1,
446 SessionOnly = 2,
447 Always = 3,
448 NotForThisSession = 4,
449 NeverAsk = 5,
450 };
451 Q_ENUM( EmbeddedScriptMode )
452
453
457 enum class EmbeddedScriptType : int
458 {
459 Macro = 0,
460 ExpressionFunction = 1,
461 Action = 2,
462 FormInitCode = 3,
463 };
464 Q_ENUM( EmbeddedScriptType )
465
466
470 enum class ProjectTrustStatus : int
471 {
472 Undetermined = 0,
473 Trusted = 1,
474 Untrusted = 2,
475 };
476 Q_ENUM( ProjectTrustStatus )
477
478
486 {
487 TrustDataSource SIP_MONKEYPATCH_COMPAT_NAME( FlagTrustDataSource ) = 1 << 0,
488 SkipFeatureCount = 1 << 1,
489 LoadDefaultStyle SIP_MONKEYPATCH_COMPAT_NAME( FlagLoadDefaultStyle ) = 1 << 2,
490 SkipGetExtent = 1 << 3,
491 SkipFullScan = 1 << 4,
492 ForceReadOnly = 1 << 5,
493 SkipCredentialsRequest = 1 << 6,
494 ParallelThreadLoading = 1 << 7,
495 };
496 Q_ENUM( DataProviderReadFlag )
497
498
506 Q_FLAG( DataProviderReadFlags )
507
508 // TODO QGIS 5 -- remove NoCapabilities and rely on VectorProviderCapabilities() instead
509
518 {
519 NoCapabilities = 0,
520 AddFeatures = 1,
521 DeleteFeatures = 1 << 1,
522 ChangeAttributeValues = 1 << 2,
523 AddAttributes = 1 << 3,
524 DeleteAttributes = 1 << 4,
525 CreateSpatialIndex = 1 << 6,
526 SelectAtId = 1 << 7,
527 ChangeGeometries = 1 << 8,
528 SelectEncoding = 1 << 13,
529 CreateAttributeIndex = 1 << 12,
530 SimplifyGeometries = 1 << 14,
531 SimplifyGeometriesWithTopologicalValidation = 1 << 15,
532 TransactionSupport = 1 << 16,
533 CircularGeometries = 1 << 17,
534 ChangeFeatures = 1 << 18,
535 RenameAttributes = 1 << 19,
536 FastTruncate = 1 << 20,
537 ReadLayerMetadata = 1 << 21,
538 WriteLayerMetadata = 1 << 22,
539 CancelSupport = 1 << 23,
540 CreateRenderer = 1 << 24,
541 CreateLabeling = 1 << 25,
542 ReloadData = 1 << 26,
543 FeatureSymbology = 1 << 27,
544 EditingCapabilities = AddFeatures | DeleteFeatures | ChangeAttributeValues | ChangeGeometries | AddAttributes | DeleteAttributes | RenameAttributes,
545 };
546 Q_ENUM( VectorProviderCapability )
547
548
557
564 {
565 Uncounted = -2,
566 UnknownCount = -1,
567 };
568 Q_ENUM( FeatureCountState )
569
570
577 {
578 Unknown SIP_MONKEYPATCH_COMPAT_NAME( SpatialIndexUnknown ) = 0,
579 NotPresent SIP_MONKEYPATCH_COMPAT_NAME( SpatialIndexNotPresent ) = 1,
580 Present SIP_MONKEYPATCH_COMPAT_NAME( SpatialIndexPresent ) = 2,
581 };
582 Q_ENUM( SpatialIndexPresence )
583
584
596 {
597 NoFeaturesAvailable = 0,
598 FeaturesAvailable,
599 FeaturesMaybeAvailable
600 };
601 Q_ENUM( FeatureAvailability )
602
603
609 {
610 EditAlias = 1 << 0,
611 EditComment = 1 << 1,
612 };
613
614 Q_ENUM( VectorDataProviderAttributeEditCapability )
615
616
623
629 {
630 Marker,
631 Line,
632 Fill,
633 Hybrid
634 };
635 Q_ENUM( SymbolType )
636
637
643 {
644 ScaleArea,
645 ScaleDiameter
646 };
647 Q_ENUM( ScaleMethod )
648
649
654 {
655 Custom,
656 Variant,
657 String,
658 StringList,
659 VariantMap,
660 Bool,
661 Integer,
662 Double,
663 EnumFlag,
664 Color
665 };
666 Q_ENUM( SettingsType )
667
668
673 {
674 Root,
675 Standard,
676 NamedList,
677 };
678 Q_ENUM( SettingsTreeNodeType )
679
680
684 enum class SettingsTreeNodeOption : int SIP_ENUM_BASETYPE( IntFlag )
685 {
686 NamedListSelectedItemSetting = 1 << 0,
687 };
688
689 Q_ENUM( SettingsTreeNodeOption )
692
701 {
702 Invalid SIP_MONKEYPATCH_COMPAT_NAME( InvalidProperty ),
703 Static SIP_MONKEYPATCH_COMPAT_NAME( StaticProperty ),
704 Field SIP_MONKEYPATCH_COMPAT_NAME( FieldBasedProperty ),
705 Expression SIP_MONKEYPATCH_COMPAT_NAME( ExpressionBasedProperty ),
706 };
707 Q_ENUM( PropertyType )
708
709
714 enum class SldExportOption : int SIP_ENUM_BASETYPE( IntFlag )
715 {
716 NoOptions = 0,
717 Svg = 1 << 0,
718 Png = 1 << 1,
719 };
720 Q_ENUM( SldExportOption )
722 Q_FLAG( SldExportOptions )
723
729 enum class SldExportVendorExtension : int SIP_ENUM_BASETYPE( IntFlag )
730 {
731 NoVendorExtension = 0,
732 GeoServerVendorExtension = 1 << 1,
733 DeegreeVendorExtension = 1 << 2,
734 };
735 Q_ENUM( SldExportVendorExtension )
736
737
738
742 enum class SettingsOption : int SIP_ENUM_BASETYPE( IntFlag )
743 {
744 SaveFormerValue = 1 << 1,
745 SaveEnumFlagAsInt = 1 << 2,
746 };
747 Q_ENUM( SettingsOption )
748 Q_DECLARE_FLAGS( SettingsOptions, SettingsOption )
749 Q_FLAG( SettingsOptions )
750
756 {
757 ActiveLayer = 1,
758 AllLayers = 2,
759 AdvancedConfiguration = 3,
760 };
761 Q_ENUM( SnappingMode )
762
763
768 {
769 NoSnap SIP_MONKEYPATCH_COMPAT_NAME( NoSnapFlag ) = 0,
770 Vertex SIP_MONKEYPATCH_COMPAT_NAME( VertexFlag ) = 1 << 0,
771 Segment SIP_MONKEYPATCH_COMPAT_NAME( SegmentFlag ) = 1 << 1,
772 Area SIP_MONKEYPATCH_COMPAT_NAME( AreaFlag ) = 1 << 2,
773 Centroid SIP_MONKEYPATCH_COMPAT_NAME( CentroidFlag ) = 1 << 3,
774 MiddleOfSegment SIP_MONKEYPATCH_COMPAT_NAME( MiddleOfSegmentFlag ) = 1 << 4,
775 LineEndpoint SIP_MONKEYPATCH_COMPAT_NAME( LineEndpointFlag ) = 1 << 5,
776 };
777 Q_ENUM( SnappingType )
780 Q_FLAG( SnappingTypes )
781
788 {
789 DynamicRotation = 1 << 1,
790 IsSymbolLayerSubSymbol = 1 << 2,
791 ForceVectorRendering = 1 << 3,
792 ExcludeSymbolBuffers = 1 << 4,
793 };
794 Q_ENUM( SymbolRenderHint )
797 Q_FLAG( SymbolRenderHints )
798
804 enum class SymbolRotationMode : int
805 {
806 RespectMapRotation,
807 IgnoreMapRotation,
808 };
809 Q_ENUM( SymbolRotationMode )
810
811
812
824 Q_ENUM( HorizontalAnchorPoint )
825
826
839 Q_ENUM( VerticalAnchorPoint )
840
841
846 enum class FeatureRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
847 {
848 AffectsLabeling = 1 << 0,
849 };
850 Q_ENUM( FeatureRendererFlag )
851
852
858 Q_FLAG( FeatureRendererFlags )
859
865 enum class SymbolFlag : int SIP_ENUM_BASETYPE( IntFlag )
866 {
867 RendererShouldUseSymbolLevels = 1 << 0,
868 AffectsLabeling = 1 << 1,
869 };
870 Q_ENUM( SymbolFlag )
872 Q_DECLARE_FLAGS( SymbolFlags, SymbolFlag )
873 Q_FLAG( SymbolFlags )
874
881 {
882 FlagIncludeCrosshairsForMarkerSymbols = 1 << 0,
883 };
884 Q_ENUM( SymbolPreviewFlag )
887 Q_FLAG( SymbolPreviewFlags )
888
898 enum class SymbolLayerFlag : int SIP_ENUM_BASETYPE( IntFlag )
899 {
900 DisableFeatureClipping = 1 << 0,
901 CanCalculateMaskGeometryPerFeature = 1 << 1,
902 AffectsLabeling = 1 << 2,
903 };
904 Q_ENUM( SymbolLayerFlag )
907 Q_FLAG( SymbolLayerFlags )
908
918 enum class SymbolLayerUserFlag : int SIP_ENUM_BASETYPE( IntFlag )
919 {
920 DisableSelectionRecoloring = 1 << 0,
921 };
922 Q_ENUM( SymbolLayerUserFlag )
923
924
930 Q_FLAG( SymbolLayerUserFlags )
931
938 {
939 Collection,
940 Directory,
941 Layer,
942 Error,
943 Favorites,
944 Project,
945 Custom,
946 Fields,
947 Field,
948 };
949 Q_ENUM( BrowserItemType )
950
951
957 {
958 NotPopulated,
959 Populating,
960 Populated,
961 };
962 Q_ENUM( BrowserItemState )
963
964
970 {
971 NoCapabilities = 0,
972 SetCrs = 1 << 0,
973 Fertile = 1 << 1,
974 Fast = 1 << 2,
975 Collapse = 1 << 3,
976 Rename = 1 << 4,
977 Delete = 1 << 5,
978 ItemRepresentsFile = 1 << 6,
979 RefreshChildrenWhenItemIsRefreshed = 1 << 7,
980 ReadOnly = 1 << 8,
981 };
982 Q_ENUM( BrowserItemCapability )
986
995 {
996 NoCapabilities SIP_MONKEYPATCH_COMPAT_NAME( NoDataCapabilities ) = 0,
997 Files SIP_MONKEYPATCH_COMPAT_NAME( File ) = 1,
998 Directories SIP_MONKEYPATCH_COMPAT_NAME( Dir ) = 1 << 1,
999 Databases SIP_MONKEYPATCH_COMPAT_NAME( Database ) = 1 << 2,
1000 NetworkSources SIP_MONKEYPATCH_COMPAT_NAME( Net ) = 1 << 3,
1001 };
1002 Q_ENUM( DataItemProviderCapability )
1003
1004
1013
1020 {
1021 NoType,
1022 Vector,
1023 Raster,
1024 Point,
1025 Line,
1026 Polygon,
1027 TableLayer,
1028 Database,
1029 Table,
1030 Plugin,
1031 Mesh,
1032 VectorTile,
1033 PointCloud,
1034 TiledScene,
1035 };
1036 Q_ENUM( BrowserLayerType )
1037
1038
1044 {
1045 Default,
1046 NeverMonitor,
1047 AlwaysMonitor,
1048 };
1049 Q_ENUM( BrowserDirectoryMonitoring )
1050
1051
1055 enum class HttpMethod : int
1056 {
1057 Get = 0,
1058 Post = 1,
1059 Head,
1060 Put,
1061 Delete,
1062 };
1063 Q_ENUM( HttpMethod )
1064
1065
1071 {
1073 ErrorCreatingDataSource SIP_MONKEYPATCH_COMPAT_NAME( ErrCreateDataSource ),
1074 ErrorCreatingLayer SIP_MONKEYPATCH_COMPAT_NAME( ErrCreateLayer ),
1075 ErrorAttributeTypeUnsupported SIP_MONKEYPATCH_COMPAT_NAME( ErrAttributeTypeUnsupported ),
1076 ErrorAttributeCreationFailed SIP_MONKEYPATCH_COMPAT_NAME( ErrAttributeCreationFailed ),
1077 ErrorProjectingFeatures SIP_MONKEYPATCH_COMPAT_NAME( ErrProjection ),
1078 ErrorFeatureWriteFailed SIP_MONKEYPATCH_COMPAT_NAME( ErrFeatureWriteFailed ),
1079 ErrorInvalidLayer SIP_MONKEYPATCH_COMPAT_NAME( ErrInvalidLayer ),
1080 ErrorInvalidProvider SIP_MONKEYPATCH_COMPAT_NAME( ErrInvalidProvider ),
1081 ErrorProviderUnsupportedFeature SIP_MONKEYPATCH_COMPAT_NAME( ErrProviderUnsupportedFeature ),
1082 ErrorConnectionFailed SIP_MONKEYPATCH_COMPAT_NAME( ErrConnectionFailed ),
1083 UserCanceled SIP_MONKEYPATCH_COMPAT_NAME( ErrUserCanceled ),
1084 };
1085 Q_ENUM( VectorExportResult )
1086
1087
1092 {
1093 FieldAliases = 1 << 0,
1094 FieldComments = 1 << 2,
1095 };
1096 Q_ENUM( VectorFileWriterCapability )
1097
1098
1104
1110 {
1111 SubsetStringFilter = 1 << 1,
1112 GeometryColumn = 1 << 2,
1113 PrimaryKeys = 1 << 3,
1114 UnstableFeatureIds = 1 << 4
1115 };
1116 Q_ENUM( SqlLayerDefinitionCapability )
1120
1126 enum class SqlKeywordCategory : int
1127 {
1128 Keyword,
1129 Constant,
1130 Function,
1131 Geospatial,
1132 Operator,
1133 Math,
1135 String,
1136 Identifier
1137 };
1138 Q_ENUM( SqlKeywordCategory )
1139
1140
1144 enum class DriveType : int
1145 {
1146 Unknown,
1147 Invalid,
1148 Removable,
1149 Fixed,
1150 Remote,
1151 CdRom,
1152 RamDisk,
1153 Cloud,
1154 };
1155 Q_ENUM( DriveType )
1156
1157
1162 {
1163 Deferred SIP_MONKEYPATCH_COMPAT_NAME( DownloadLater ),
1164 Immediate SIP_MONKEYPATCH_COMPAT_NAME( DownloadImmediately ),
1165 };
1166 Q_ENUM( ActionStart )
1167
1168
1174 {
1175 FollowEngineSetting,
1176 NeverShow,
1177 };
1178 Q_ENUM( UnplacedLabelVisibility )
1179
1180
1185 enum class LabelOverlapHandling : int
1186 {
1187 PreventOverlap,
1188 AllowOverlapIfRequired,
1189 AllowOverlapAtNoCost,
1190 };
1191 Q_ENUM( LabelOverlapHandling )
1192
1193
1199 {
1200 TreatWhitespaceAsCollision,
1201 IgnoreWhitespaceCollisions,
1202 };
1203 Q_ENUM( LabelWhitespaceCollisionHandling )
1204
1205
1210 enum class LabelPrioritization : int
1211 {
1212 PreferCloser,
1213 PreferPositionOrdering,
1214 };
1215 Q_ENUM( LabelPrioritization )
1216
1217
1225 {
1226 AroundPoint,
1227 OverPoint,
1228 Line,
1229 Curved,
1230 Horizontal,
1231 Free,
1232 OrderedPositionsAroundPoint,
1233 PerimeterCurved,
1234 OutsidePolygons,
1235 };
1236 Q_ENUM( LabelPlacement )
1237
1238
1243 enum class CurvedLabelMode : int
1244 {
1245 Default,
1246 PlaceCharactersAtVertices,
1247 StretchCharacterSpacingToFitLine,
1248 StretchWordSpacingToFitLine,
1249 };
1250 Q_ENUM( CurvedLabelMode )
1251
1252
1260 {
1261 TopLeft,
1262 TopSlightlyLeft,
1263 TopMiddle,
1264 TopSlightlyRight,
1265 TopRight,
1266 MiddleLeft,
1267 MiddleRight,
1268 BottomLeft,
1269 BottomSlightlyLeft,
1270 BottomMiddle,
1271 BottomSlightlyRight,
1272 BottomRight,
1273 OverPoint,
1274 };
1275 Q_ENUM( LabelPredefinedPointPosition )
1276
1277
1283 {
1284 LabelLargestPartOnly,
1285 LabelEveryPartWithEntireLabel,
1286 SplitLabelTextLinesOverParts,
1287 };
1288 Q_ENUM( MultiPartLabelingBehavior )
1289
1290
1299 {
1300 FromPoint,
1301 FromSymbolBounds,
1302 };
1303 Q_ENUM( LabelOffsetType )
1304
1305
1313 {
1314 AboveLeft SIP_MONKEYPATCH_COMPAT_NAME( QuadrantAboveLeft ),
1315 Above SIP_MONKEYPATCH_COMPAT_NAME( QuadrantAbove ),
1316 AboveRight SIP_MONKEYPATCH_COMPAT_NAME( QuadrantAboveRight ),
1318 Over SIP_MONKEYPATCH_COMPAT_NAME( QuadrantOver ),
1320 BelowLeft SIP_MONKEYPATCH_COMPAT_NAME( QuadrantBelowLeft ),
1321 Below SIP_MONKEYPATCH_COMPAT_NAME( QuadrantBelow ),
1322 BelowRight SIP_MONKEYPATCH_COMPAT_NAME( QuadrantBelowRight ),
1323 };
1324 Q_ENUM( LabelQuadrantPosition )
1325
1326
1333 {
1334 OnLine = 1,
1335 AboveLine = 2,
1336 BelowLine = 4,
1337 MapOrientation = 8,
1338 };
1339 Q_ENUM( LabelLinePlacementFlag )
1340
1341
1349 Q_FLAG( LabelLinePlacementFlags )
1350
1358 {
1359 AllowPlacementOutsideOfPolygon = 1 << 0,
1360 AllowPlacementInsideOfPolygon = 1 << 1,
1361 };
1362 Q_ENUM( LabelPolygonPlacementFlag )
1363
1364
1372
1381 {
1382 FlipUpsideDownLabels SIP_MONKEYPATCH_COMPAT_NAME( Upright ),
1383 AllowUpsideDownWhenRotationIsDefined SIP_MONKEYPATCH_COMPAT_NAME( ShowDefined ),
1384 AlwaysAllowUpsideDown SIP_MONKEYPATCH_COMPAT_NAME( ShowAll )
1385 };
1386 Q_ENUM( UpsideDownLabelHandling )
1387
1388
1396 {
1398 Center SIP_MONKEYPATCH_COMPAT_NAME( MultiCenter ),
1400 FollowPlacement SIP_MONKEYPATCH_COMPAT_NAME( MultiFollowPlacement ),
1401 Justify SIP_MONKEYPATCH_COMPAT_NAME( MultiJustify ),
1402 };
1403 Q_ENUM( LabelMultiLineAlignment )
1404
1405
1412 {
1413 Vector SIP_MONKEYPATCH_COMPAT_NAME( FilterVector ) = 1,
1414 Raster SIP_MONKEYPATCH_COMPAT_NAME( FilterRaster ),
1415 Mesh SIP_MONKEYPATCH_COMPAT_NAME( FilterMesh ),
1416 MeshDataset SIP_MONKEYPATCH_COMPAT_NAME( FilterMeshDataset ),
1417 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( FilterPointCloud ),
1418 VectorTile,
1419 TiledScene,
1420 };
1421 Q_ENUM( FileFilterType )
1422
1423
1428 enum class UriCleaningFlag : int SIP_ENUM_BASETYPE( IntFlag )
1429 {
1430 RemoveCredentials = 1 << 0,
1431 RedactCredentials = 1 << 1,
1432 };
1433 Q_ENUM( UriCleaningFlag )
1434
1435
1441 Q_FLAG( UriCleaningFlags )
1442
1448 enum class SublayerQueryFlag : int SIP_ENUM_BASETYPE( IntFlag )
1449 {
1450 FastScan = 1 << 0,
1451 ResolveGeometryType = 1 << 1,
1452 CountFeatures = 1 << 2,
1453 IncludeSystemTables = 1 << 3,
1454 OpenLayersToResolveDescriptions = 1 << 4,
1455 };
1456
1459 Q_FLAG( SublayerQueryFlags )
1460
1461
1466 enum class SublayerFlag : int SIP_ENUM_BASETYPE( IntFlag )
1467 {
1468 SystemTable = 1 << 0,
1469 };
1470
1471 Q_DECLARE_FLAGS( SublayerFlags, SublayerFlag )
1473 Q_FLAG( SublayerFlags )
1474
1475
1483 {
1484 Linear SIP_MONKEYPATCH_COMPAT_NAME( Interpolated ) = 0,
1485 Discrete = 1,
1486 Exact = 2,
1487 };
1488 Q_ENUM( ShaderInterpolationMethod )
1489
1490
1498 {
1499 Continuous = 1,
1500 EqualInterval = 2,
1501 Quantile = 3,
1502 };
1503 Q_ENUM( ShaderClassificationMethod )
1504
1505
1511 {
1512 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownRole ) = 0,
1513 Provider SIP_MONKEYPATCH_COMPAT_NAME( ProviderRole ) = 1,
1514 Renderer SIP_MONKEYPATCH_COMPAT_NAME( RendererRole ) = 2,
1515 Brightness SIP_MONKEYPATCH_COMPAT_NAME( BrightnessRole ) = 3,
1516 Resampler SIP_MONKEYPATCH_COMPAT_NAME( ResamplerRole ) = 4,
1517 Projector SIP_MONKEYPATCH_COMPAT_NAME( ProjectorRole ) = 5,
1518 Nuller SIP_MONKEYPATCH_COMPAT_NAME( NullerRole ) = 6,
1519 HueSaturation SIP_MONKEYPATCH_COMPAT_NAME( HueSaturationRole ) = 7,
1520 };
1521 Q_ENUM( RasterPipeInterfaceRole )
1522
1523
1528 {
1529 ResampleFilter,
1530 Provider,
1531 };
1532 Q_ENUM( RasterResamplingStage )
1533
1534
1542 {
1543 Nearest,
1544 Bilinear,
1545 Cubic,
1546 CubicSpline,
1547 Lanczos,
1548 Average,
1549 Mode,
1550 Gauss
1551 };
1552 Q_ENUM( RasterResamplingMethod )
1553
1554
1559 enum class RasterRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
1560 {
1561 InternalLayerOpacityHandling = 1 << 0,
1562 UseNoDataForOutOfRangePixels = 1 << 1,
1563 };
1564
1571
1573 Q_FLAG( RasterRendererFlags )
1574
1575
1581 {
1582 UsesMultipleBands = 1 << 0,
1583 };
1584 Q_ENUM( RasterRendererCapability )
1585
1586
1593
1602 {
1604 MinimumMaximum SIP_MONKEYPATCH_COMPAT_NAME( MinMax ),
1605 StdDev,
1606 CumulativeCut
1607 };
1608 Q_ENUM( RasterRangeLimit )
1609
1610
1618 {
1619 WholeRaster SIP_MONKEYPATCH_COMPAT_NAME( None_ ),
1620 FixedCanvas SIP_MONKEYPATCH_COMPAT_NAME( CurrentCanvas ),
1621 UpdatedCanvas,
1622 };
1623 Q_ENUM( RasterRangeExtent )
1624
1625
1633 {
1634 Exact,
1635 Estimated,
1636 };
1637 Q_ENUM( RasterRangeAccuracy )
1638
1639
1645 {
1646 Generic = 0,
1647 PixelCount = 1,
1648 Name = 2,
1649 Min = 3,
1650 Max = 4,
1651 MinMax = 5,
1652 Red = 6,
1653 Green = 7,
1654 Blue = 8,
1655 Alpha = 9,
1656 RedMin = 10,
1657 GreenMin = 11,
1658 BlueMin = 12,
1659 AlphaMin = 13,
1660 RedMax = 14,
1661 GreenMax = 15,
1662 BlueMax = 16,
1663 AlphaMax = 17,
1664 MaxCount
1665 };
1666 Q_ENUM( RasterAttributeTableFieldUsage )
1667
1668
1674 {
1675 Thematic = 0,
1676 Athematic = 1
1677 };
1678 Q_ENUM( RasterAttributeTableType )
1679
1680
1687 {
1688 Raw = 0,
1689 RenderedImage SIP_MONKEYPATCH_COMPAT_NAME( Image ) = 1
1690 };
1691 Q_ENUM( RasterExportType )
1692
1693
1700 {
1702 SourceProviderError = 1,
1703 DestinationProviderError SIP_MONKEYPATCH_COMPAT_NAME( DestProviderError ) = 2,
1704 CreateDatasourceError = 3,
1705 WriteError = 4,
1706 NoDataConflict = 5,
1707 Canceled SIP_MONKEYPATCH_COMPAT_NAME( WriteCanceled ) = 6,
1708 };
1709 Q_ENUM( RasterFileWriterResult )
1710
1711
1716 enum class MeshEditingErrorType : int
1717 {
1718 NoError,
1719 InvalidFace,
1720 TooManyVerticesInFace,
1721 FlatFace,
1722 UniqueSharedVertex,
1723 InvalidVertex,
1724 ManifoldFace,
1725 };
1726 Q_ENUM( MeshEditingErrorType )
1727
1728
1733 enum class FilePathType : int
1734 {
1735 Absolute,
1736 Relative,
1737 };
1738 Q_ENUM( FilePathType )
1739
1740
1745 enum class SublayerPromptMode : int
1746 {
1747 AlwaysAsk,
1748 AskExcludingRasterBands,
1749 NeverAskSkip,
1750 NeverAskLoadAll,
1751 };
1752 Q_ENUM( SublayerPromptMode )
1753
1754
1762 {
1763 Unknown SIP_MONKEYPATCH_COMPAT_NAME( OriginUnknown ),
1764 Provider SIP_MONKEYPATCH_COMPAT_NAME( OriginProvider ),
1765 Join SIP_MONKEYPATCH_COMPAT_NAME( OriginJoin ),
1766 Edit SIP_MONKEYPATCH_COMPAT_NAME( OriginEdit ),
1767 Expression SIP_MONKEYPATCH_COMPAT_NAME( OriginExpression )
1768 };
1769 Q_ENUM( FieldOrigin )
1770
1771
1778 enum class FieldConfigurationFlag : int SIP_ENUM_BASETYPE( IntFlag )
1779 {
1780 NoFlag = 0,
1781 NotSearchable = 1 << 1,
1782 HideFromWms = 1 << 2,
1783 HideFromWfs = 1 << 3,
1784 };
1785 Q_ENUM( FieldConfigurationFlag )
1786
1787
1795 Q_FLAG( FieldConfigurationFlags )
1796
1802 enum class FieldMetadataProperty : int
1803 {
1804 GeometryCrs = 0x1000,
1805 GeometryWkbType = 0x1001,
1806 CustomProperty = 0x100000,
1807 };
1808 Q_ENUM( FieldMetadataProperty )
1809
1810
1815 enum class SelectionRenderingMode : int
1816 {
1817 Default,
1818 CustomColor,
1819 CustomSymbol,
1820 };
1821 Q_ENUM( SelectionRenderingMode )
1822
1823
1829 {
1830 SetSelection,
1831 AddToSelection,
1832 IntersectSelection,
1833 RemoveFromSelection,
1834 };
1835 Q_ENUM( SelectBehavior )
1836
1837
1843 {
1844 Intersect,
1845 Within,
1846 };
1847 Q_ENUM( SelectGeometryRelationship )
1848
1849
1854 enum class SelectionFlag : int SIP_ENUM_BASETYPE( IntFlag )
1855 {
1856 SingleFeatureSelection = 1 << 0,
1857 ToggleSelection = 1 << 1,
1858 };
1859
1865 Q_DECLARE_FLAGS( SelectionFlags, SelectionFlag )
1866
1868 Q_FLAG( SelectionFlags )
1869
1870
1876 {
1878 EmptyGeometry = 1,
1879 EditFailed = 2,
1880 FetchFeatureFailed = 3,
1881 InvalidLayer = 4,
1882 };
1883 Q_ENUM( VectorEditResult )
1884
1885
1891 {
1892 SemiTransparentCircle,
1893 Cross,
1894 NoMarker,
1895 };
1896 Q_ENUM( VertexMarkerType )
1897
1898
1902 enum class ContentStatus : int
1903 {
1904 NotStarted,
1905 Running,
1906 Finished,
1907 Failed,
1908 Canceled,
1909 };
1910 Q_ENUM( ContentStatus )
1911
1912
1917 enum class GpsConnectionType : int
1918 {
1919 Automatic,
1920 Internal,
1921 Serial,
1922 Gpsd,
1923 };
1924 Q_ENUM( GpsConnectionType )
1925
1926
1931 enum class DeviceConnectionStatus SIP_MONKEYPATCH_SCOPEENUM_UNNEST( Qgis, GpsConnectionStatus ) : int
1932 {
1933 Disconnected,
1934 Connecting,
1935 Connected,
1936 };
1937 Q_ENUM( DeviceConnectionStatus )
1938
1939
1947 {
1948 NoData,
1949 NoFix,
1950 Fix2D,
1951 Fix3D
1952 };
1954
1955
1962 {
1963 Unknown,
1964 Gps,
1965 Glonass,
1966 Galileo,
1967 BeiDou,
1968 Qzss,
1969 Navic,
1970 Sbas,
1971 };
1973
1980 {
1981 Unknown = -1,
1982 Invalid,
1983 GPS,
1984 DGPS,
1985 PPS,
1986 RTK,
1987 FloatRTK,
1988 Estimated,
1989 Manual,
1990 Simulation,
1991 };
1992 Q_ENUM( GpsQualityIndicator )
1993
1994
1999 enum class GpsNavigationStatus : int
2000 {
2001 NotValid,
2002 Safe,
2003 Caution,
2004 Unsafe,
2005 };
2007
2013 enum class GpsInformationComponent : int SIP_ENUM_BASETYPE( IntFlag )
2014 {
2015 Location = 1 << 0,
2016 Altitude = 1 << 1,
2017 GroundSpeed = 1 << 2,
2018 Bearing = 1 << 3,
2019 TotalTrackLength = 1 << 4,
2020 TrackDistanceFromStart = 1 << 5,
2021 Pdop = 1 << 6,
2022 Hdop = 1 << 7,
2023 Vdop = 1 << 8,
2024 HorizontalAccuracy = 1 << 9,
2025 VerticalAccuracy = 1 << 10,
2026 HvAccuracy = 1 << 11,
2027 SatellitesUsed = 1 << 12,
2028 Timestamp = 1 << 13,
2029 TrackStartTime = 1 << 14,
2030 TrackEndTime = 1 << 15,
2031 TrackDistanceSinceLastPoint = 1 << 16,
2032 TrackTimeSinceLastPoint = 1 << 17,
2033 GeoidalSeparation = 1 << 18,
2034 EllipsoidAltitude = 1 << 19,
2035 };
2036
2044 Q_FLAG( GpsInformationComponents )
2045
2046
2051 enum class BabelFormatCapability : int SIP_ENUM_BASETYPE( IntFlag )
2052 {
2053 Import = 1 << 0,
2054 Export = 1 << 1,
2055 Waypoints = 1 << 2,
2056 Routes = 1 << 3,
2057 Tracks = 1 << 4,
2058 };
2059
2062 Q_FLAG( BabelFormatCapabilities )
2063
2064
2070 enum class BabelCommandFlag : int SIP_ENUM_BASETYPE( IntFlag )
2071 {
2072 QuoteFilePaths = 1 << 0,
2073 };
2074
2077 Q_FLAG( BabelCommandFlags )
2078
2079
2084 enum class GpsFeatureType : int
2085 {
2086 Waypoint,
2087 Route,
2088 Track,
2089 };
2090 Q_ENUM( GpsFeatureType )
2091
2092
2100 {
2102 NothingHappened = 1000,
2103 InvalidBaseGeometry,
2104 InvalidInputGeometryType,
2105 SelectionIsEmpty,
2106 SelectionIsGreaterThanOne,
2107 GeometryEngineError,
2108 LayerNotEditable,
2109 // Add part issues
2110 AddPartSelectedGeometryNotFound,
2111 AddPartNotMultiGeometry,
2112 // Add ring issues
2113 AddRingNotClosed,
2114 AddRingNotValid,
2115 AddRingCrossesExistingRings,
2116 AddRingNotInExistingFeature,
2117 // Split features
2118 SplitCannotSplitPoint,
2119 GeometryTypeHasChanged,
2120 };
2121 Q_ENUM( GeometryOperationResult )
2122
2123
2129 {
2130 AllowSelfTouchingHoles SIP_MONKEYPATCH_COMPAT_NAME( FlagAllowSelfTouchingHoles ) = 1 << 0,
2131 };
2132
2135 Q_FLAG( GeometryValidityFlags )
2136
2137
2142 {
2143 QgisInternal SIP_MONKEYPATCH_COMPAT_NAME( ValidatorQgisInternal ),
2144 Geos SIP_MONKEYPATCH_COMPAT_NAME( ValidatorGeos ),
2145 };
2146 Q_ENUM( GeometryValidationEngine )
2147
2148
2158 Q_ENUM( BufferSide )
2159
2160
2171 Q_ENUM( EndCapStyle )
2172
2173
2179 {
2180 Round SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleRound ) = 1,
2181 Miter SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleMiter ),
2182 Bevel SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleBevel ),
2183 };
2184 Q_ENUM( JoinStyle )
2185
2186
2191 enum class JoinStyle3D : int
2192 {
2193 Round = 1,
2194 Flat,
2195 CylindersAndSpheres,
2196 };
2197 Q_ENUM( JoinStyle3D )
2198
2199
2204 enum class GeosCreationFlag : int SIP_ENUM_BASETYPE( IntFlag )
2205 {
2206 RejectOnInvalidSubGeometry = 1 << 0,
2207 SkipEmptyInteriorRings = 1 << 1,
2208 };
2209 Q_ENUM( GeosCreationFlag )
2210
2211
2217 Q_FLAG( GeosCreationFlags )
2218
2224 enum class CoverageValidityResult : int
2225 {
2226 Invalid = 0,
2227 Valid = 1,
2228 Error = 2,
2229 };
2230 Q_ENUM( CoverageValidityResult )
2231
2232
2237 enum class MakeValidMethod : int
2238 {
2239 Linework = 0,
2240 Structure = 1,
2241 };
2242 Q_ENUM( MakeValidMethod )
2243
2244
2252 {
2253 NoFlags = 0,
2254 NoGeometry = 1,
2255 SubsetOfAttributes = 2,
2256 ExactIntersect = 4,
2257 IgnoreStaticNodesDuringExpressionCompilation = 8,
2258 EmbeddedSymbols = 16,
2259 };
2260 Q_ENUM( FeatureRequestFlag )
2261
2262
2270 Q_FLAG( FeatureRequestFlags )
2271
2280 {
2281 NoFilter SIP_MONKEYPATCH_COMPAT_NAME( FilterNone ),
2283 Expression SIP_MONKEYPATCH_COMPAT_NAME( FilterExpression ),
2285 };
2286 Q_ENUM( FeatureRequestFilterType )
2287
2288
2296 {
2297 NoCheck SIP_MONKEYPATCH_COMPAT_NAME( GeometryNoCheck ) = 0,
2298 SkipInvalid SIP_MONKEYPATCH_COMPAT_NAME( GeometrySkipInvalid ) = 1,
2299 AbortOnInvalid SIP_MONKEYPATCH_COMPAT_NAME( GeometryAbortOnInvalid ) = 2,
2300 };
2301 Q_ENUM( InvalidGeometryCheck )
2302
2303
2308 enum class SpatialFilterType : int
2309 {
2310 NoFilter,
2311 BoundingBox,
2312 DistanceWithin,
2313 };
2314 Q_ENUM( SpatialFilterType )
2315
2316
2321 enum class FileOperationFlag : int SIP_ENUM_BASETYPE( IntFlag )
2322 {
2323 IncludeMetadataFile = 1 << 0,
2324 IncludeStyleFile = 1 << 1,
2325 };
2326
2329 Q_FLAG( FileOperationFlags )
2330
2331
2336 enum class MapLayerProperty : int SIP_ENUM_BASETYPE( IntFlag )
2337 {
2338 UsersCannotToggleEditing = 1 << 0,
2339 IsBasemapLayer = 1 << 1,
2340 Is3DBasemapLayer = 1 << 2,
2341 };
2342
2345 Q_FLAG( MapLayerProperties )
2346
2347
2352 enum class AutoRefreshMode : int
2353 {
2354 Disabled = 0,
2355 ReloadData = 1,
2356 RedrawOnly = 2,
2357 };
2358 Q_ENUM( AutoRefreshMode )
2359
2360
2365 enum class DataProviderFlag : int SIP_ENUM_BASETYPE( IntFlag )
2366 {
2367 IsBasemapSource = 1 << 1,
2368 FastExtent2D = 1 << 2,
2369 FastExtent3D = 1 << 3,
2370 Is3DBasemapSource = 1 << 4,
2371 };
2372
2375 Q_FLAG( DataProviderFlags )
2376
2377
2384 enum class CrsType : int
2385 {
2386 Unknown,
2387 Geodetic,
2388 Geocentric,
2389 Geographic2d,
2390 Geographic3d,
2391 Vertical,
2392 Projected,
2393 Compound,
2394 Temporal,
2395 Engineering,
2396 Bound,
2397 Other,
2398 DerivedProjected,
2399 };
2400 Q_ENUM( CrsType )
2401
2402
2409 enum class CrsAxisDirection : int
2410 {
2411 North,
2412 NorthNorthEast,
2413 NorthEast,
2414 EastNorthEast,
2415 East,
2416 EastSouthEast,
2417 SouthEast,
2418 SouthSouthEast,
2419 South,
2420 SouthSouthWest,
2421 SouthWest,
2422 WestSouthWest,
2423 West,
2424 WestNorthWest,
2425 NorthWest,
2426 NorthNorthWest,
2427 GeocentricX,
2428 GeocentricY,
2429 GeocentricZ,
2432 Forward,
2433 Aft,
2434 Port,
2435 Starboard,
2436 Clockwise,
2437 CounterClockwise,
2438 ColumnPositive,
2439 ColumnNegative,
2440 RowPositive,
2441 RowNegative,
2442 DisplayRight,
2443 DisplayLeft,
2444 DisplayUp,
2445 DisplayDown,
2446 Future,
2447 Past,
2448 Towards,
2449 AwayFrom,
2450 Unspecified,
2451 };
2452 Q_ENUM( CrsAxisDirection )
2453
2454
2459 enum class CoordinateOrder : int
2460 {
2461 Default,
2462 XY,
2463 YX,
2464 };
2465 Q_ENUM( CoordinateOrder )
2466
2467
2475 {
2476 ShortString,
2477 MediumString,
2478 FullString,
2479 };
2480 Q_ENUM( CrsIdentifierType )
2481
2482
2490 {
2491 Wkt1Gdal SIP_MONKEYPATCH_COMPAT_NAME( WKT1_GDAL ),
2492 Wkt1Esri SIP_MONKEYPATCH_COMPAT_NAME( WKT1_ESRI ),
2493 Wkt2_2015 SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2015 ),
2494 Wkt2_2015Simplified SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2015_SIMPLIFIED ),
2495 Wkt2_2019 SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2019 ),
2496 Wkt2_2019Simplified SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2019_SIMPLIFIED ),
2497 Preferred SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED ) = Wkt2_2019,
2498 PreferredSimplified SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED_SIMPLIFIED ) = Wkt2_2019Simplified,
2499 PreferredGdal SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED_GDAL ) = Wkt2_2019,
2500 };
2501 Q_ENUM( CrsWktVariant )
2502
2503
2508 enum class Axis : int
2509 {
2510 X,
2511 Y,
2513 };
2514 Q_ENUM( Axis )
2515
2516
2521 enum class AnnotationItemFlag : int SIP_ENUM_BASETYPE( IntFlag )
2522 {
2523 ScaleDependentBoundingBox = 1 << 0,
2524 SupportsReferenceScale = 1 << 1,
2525 SupportsCallouts = 1 << 2,
2526 };
2527
2530 Q_FLAG( AnnotationItemFlags )
2531
2532
2538 {
2539 SpatialBounds = 0,
2540 FixedSize,
2541 RelativeToMapFrame,
2542 };
2543 Q_ENUM( AnnotationPlacementMode )
2544
2545
2550 enum class AnnotationItemGuiFlag : int SIP_ENUM_BASETYPE( IntFlag )
2551 {
2552 FlagNoCreationTools = 1 << 0,
2553 };
2554
2557 Q_FLAG( AnnotationItemGuiFlags )
2558
2559
2564 enum class AnnotationItemNodeType : int
2565 {
2566 VertexHandle,
2567 CalloutHandle,
2568 };
2569 Q_ENUM( AnnotationItemNodeType )
2570
2571
2577 {
2579 Invalid,
2580 ItemCleared,
2581 };
2582 Q_ENUM( AnnotationItemEditOperationResult )
2583
2584
2592 {
2593 Disabled SIP_MONKEYPATCH_COMPAT_NAME( NavigationOff ),
2594 Animated,
2595 FixedRange,
2596 Movie,
2597 };
2598 Q_ENUM( TemporalNavigationMode )
2599
2600
2613 Q_ENUM( AnimationState )
2614
2615
2620 enum class PlaybackOperation : int
2621 {
2622 SkipToStart,
2623 PreviousFrame,
2624 PlayReverse,
2625 Pause,
2626 PlayForward,
2627 NextFrame,
2628 SkipToEnd,
2629 };
2630 Q_ENUM( PlaybackOperation )
2631
2632
2638 {
2639 FixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ModeFixedTemporalRange ) = 0,
2640 FeatureDateTimeInstantFromField SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeInstantFromField ),
2641 FeatureDateTimeStartAndEndFromFields SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndEndFromFields ),
2642 FeatureDateTimeStartAndDurationFromFields SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndDurationFromFields ),
2643 FeatureDateTimeStartAndEndFromExpressions SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndEndFromExpressions ),
2644 RedrawLayerOnly SIP_MONKEYPATCH_COMPAT_NAME( ModeRedrawLayerOnly ),
2645 };
2646 Q_ENUM( VectorTemporalMode )
2647
2648
2654 {
2655 IncludeBeginExcludeEnd = 0,
2656 IncludeBeginIncludeEnd,
2657 };
2658 Q_ENUM( VectorTemporalLimitMode )
2659
2660
2666 {
2667 HasFixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ProviderHasFixedTemporalRange ) = 0,
2668 StoresFeatureDateTimeInstantInField SIP_MONKEYPATCH_COMPAT_NAME( ProviderStoresFeatureDateTimeInstantInField ),
2669 StoresFeatureDateTimeStartAndEndInSeparateFields SIP_MONKEYPATCH_COMPAT_NAME( ProviderStoresFeatureDateTimeStartAndEndInSeparateFields ),
2670 };
2671 Q_ENUM( VectorDataProviderTemporalMode )
2672
2673
2679 {
2680 FixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ModeFixedTemporalRange ) = 0,
2681 TemporalRangeFromDataProvider SIP_MONKEYPATCH_COMPAT_NAME( ModeTemporalRangeFromDataProvider ) = 1,
2682 RedrawLayerOnly SIP_MONKEYPATCH_COMPAT_NAME( ModeRedrawLayerOnly ) = 2,
2683 FixedRangePerBand = 3,
2684 RepresentsTemporalValues = 4,
2685 FixedDateTime = 5,
2686 };
2687 Q_ENUM( RasterTemporalMode )
2688
2689
2695 {
2696 MatchUsingWholeRange,
2697 MatchExactUsingStartOfRange,
2698 MatchExactUsingEndOfRange,
2699 FindClosestMatchToStartOfRange,
2700 FindClosestMatchToEndOfRange
2701 };
2702 Q_ENUM( TemporalIntervalMatchMethod )
2703
2704
2710 {
2711 RequestedTimesMustExactlyMatchAllAvailableTemporalRanges = 1 << 0,
2712 };
2713 Q_ENUM( RasterTemporalCapabilityFlag )
2714
2715
2722
2733 Q_ENUM( TransformDirection )
2734
2735
2741 {
2742 BallparkTransformsAreAppropriate = 1 << 0,
2743 IgnoreImpossibleTransformations = 1 << 1,
2744 };
2745 Q_ENUM( CoordinateTransformationFlag )
2746
2747
2754
2761 {
2762 Default,
2763 PreferVector,
2764 ForceVector,
2765 };
2766 Q_ENUM( RasterizedRenderingPolicy )
2767
2768
2774 {
2775 Antialiasing = 0x01,
2776 DrawEditingInfo = 0x02,
2777 ForceVectorOutput = 0x04,
2778 UseAdvancedEffects = 0x08,
2779 DrawLabeling = 0x10,
2780 UseRenderingOptimization = 0x20,
2781 DrawSelection = 0x40,
2782 DrawSymbolBounds = 0x80,
2783 RenderMapTile = 0x100,
2784 RenderPartialOutput = 0x200,
2785 RenderPreviewJob = 0x400,
2786 RenderBlocking = 0x800,
2787 LosslessImageRendering = 0x1000,
2788 Render3DMap = 0x2000,
2789 HighQualityImageTransforms = 0x4000,
2790 SkipSymbolRendering = 0x8000,
2791 ForceRasterMasks = 0x10000,
2792 RecordProfile = 0x20000,
2793 AlwaysUseGlobalMasks = 0x40000,
2794 };
2795
2798 Q_FLAG( MapSettingsFlags )
2799
2800
2806 {
2807 DrawEditingInfo = 0x01,
2808 ForceVectorOutput = 0x02,
2809 UseAdvancedEffects = 0x04,
2810 UseRenderingOptimization = 0x08,
2811 DrawSelection = 0x10,
2812 DrawSymbolBounds = 0x20,
2813 RenderMapTile = 0x40,
2814 Antialiasing = 0x80,
2815 RenderPartialOutput = 0x100,
2816 RenderPreviewJob = 0x200,
2817 RenderBlocking = 0x400,
2818 RenderSymbolPreview = 0x800,
2819 LosslessImageRendering = 0x1000,
2820 ApplyScalingWorkaroundForTextRendering = 0x2000,
2821 Render3DMap = 0x4000,
2822 ApplyClipAfterReprojection = 0x8000,
2823 RenderingSubSymbol = 0x10000,
2824 HighQualityImageTransforms = 0x20000,
2825 SkipSymbolRendering = 0x40000,
2826 RecordProfile = 0x80000,
2827 AlwaysUseGlobalMasks = 0x100000,
2828 DisableSymbolClippingToExtent = 0x200000,
2829 RenderLayerTree = 0x400000
2830 };
2831
2834 Q_FLAG( RenderContextFlags )
2835
2836
2841 enum class MapLayerRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
2842 {
2843 RenderPartialOutputs = 1 << 0,
2844 RenderPartialOutputOverPreviousCachedImage = 1 << 1,
2845 AffectsLabeling = 1 << 2,
2846 };
2847 Q_ENUM( MapLayerRendererFlag )
2848
2849
2855 Q_FLAG( MapLayerRendererFlags )
2856
2862 enum class PaintEffectFlag : int SIP_ENUM_BASETYPE( IntFlag )
2863 {
2864 RequiresRasterization = 1 << 0,
2865 };
2866 Q_ENUM( PaintEffectFlag )
2867
2868
2874 Q_FLAG( PaintEffectFlags )
2875
2876 // refs for below dox: https://github.com/qgis/QGIS/pull/1286#issuecomment-39806854
2877 // https://github.com/qgis/QGIS/pull/8573#issuecomment-445585826
2878
2884 {
2885 AlwaysOutlines SIP_MONKEYPATCH_COMPAT_NAME( TextFormatAlwaysOutlines ),
2886 AlwaysText SIP_MONKEYPATCH_COMPAT_NAME( TextFormatAlwaysText ),
2887 PreferText,
2888 };
2889 Q_ENUM( TextRenderFormat )
2890
2891
2899 {
2900 UseAllLabels = 1 << 1,
2901 UsePartialCandidates = 1 << 2,
2902 // TODO QGIS 5.0: remove
2903 RenderOutlineLabels = 1 << 3,
2904 DrawLabelRectOnly = 1 << 4,
2905 DrawCandidates = 1 << 5,
2906 DrawUnplacedLabels = 1 << 6,
2907 CollectUnplacedLabels = 1 << 7,
2908 DrawLabelMetrics = 1 << 8,
2909 };
2910 Q_ENUM( LabelingFlag )
2911
2912
2920 Q_FLAG( LabelingFlags )
2921
2930 {
2931 Version1 SIP_MONKEYPATCH_COMPAT_NAME( PlacementEngineVersion1 ),
2932 Version2 SIP_MONKEYPATCH_COMPAT_NAME( PlacementEngineVersion2 ),
2933 };
2934 Q_ENUM( LabelPlacementEngineVersion )
2935
2936
2944 {
2945 Horizontal SIP_MONKEYPATCH_COMPAT_NAME( HorizontalOrientation ),
2946 Vertical SIP_MONKEYPATCH_COMPAT_NAME( VerticalOrientation ),
2947 RotationBased SIP_MONKEYPATCH_COMPAT_NAME( RotationBasedOrientation ),
2948 };
2949 Q_ENUM( TextOrientation )
2950
2951
2959 {
2961 Point,
2963 RectangleCapHeightBased,
2964 RectangleAscentBased,
2965 };
2966 Q_ENUM( TextLayoutMode )
2967
2968
2976 {
2977 Text = 1 << 0,
2978 Buffer = 1 << 1,
2979 Background = 1 << 2,
2980 Shadow = 1 << 3,
2981 };
2982 Q_ENUM( TextComponent )
2983
2984
2989 Q_DECLARE_FLAGS( TextComponents, TextComponent )
2990 Q_FLAG( TextComponents )
2991
3006 Q_ENUM( TextHorizontalAlignment )
3007
3008
3019 {
3021 VerticalCenter SIP_MONKEYPATCH_COMPAT_NAME( AlignVCenter ),
3022 Bottom SIP_MONKEYPATCH_COMPAT_NAME( AlignBottom ),
3023 };
3024 Q_ENUM( TextVerticalAlignment )
3025
3026
3035 {
3036 Normal,
3037 SuperScript,
3038 SubScript,
3039 };
3040 Q_ENUM( TextCharacterVerticalAlignment )
3041
3042
3048 {
3049 TruncateStringWhenLineIsTooShort = 1 << 0,
3050 UseBaselinePlacement = 1 << 1,
3051 UprightCharactersOnly = 1 << 2,
3052 ExtendLineToFitText = 1 << 3,
3053 };
3054 Q_ENUM( CurvedTextFlag )
3055
3056
3062
3071 {
3072 Distance = 0,
3073 SnapToGrid = 1,
3074 Visvalingam = 2,
3075 SnappedToGridGlobal = 3,
3076 };
3077 Q_ENUM( VectorSimplificationAlgorithm )
3078
3079
3087 {
3088 NoSimplification = 0,
3089 GeometrySimplification = 1,
3090 AntialiasingSimplification = 2,
3091 FullSimplification = 3,
3092 };
3093 Q_ENUM( VectorRenderingSimplificationFlag )
3094
3095
3104
3111 {
3112 Generic,
3113 ShadowOffset,
3114 BlurSize,
3115 GlowSpread,
3116 };
3117 Q_ENUM( RenderSubcomponentProperty )
3118
3119
3124 {
3125 Segment SIP_MONKEYPATCH_COMPAT_NAME( SegmentVertex ) = 1,
3126 Curve SIP_MONKEYPATCH_COMPAT_NAME( CurveVertex ) = 2,
3127 ControlPoint SIP_MONKEYPATCH_COMPAT_NAME( ControlPointVertex ) = 3,
3128 };
3129 Q_ENUM( VertexType )
3130
3131
3139 {
3140 Square,
3141 Diamond,
3142 Pentagon,
3143 Hexagon,
3144 Triangle,
3145 EquilateralTriangle,
3146 Star,
3147 Arrow,
3148 Circle,
3149 Cross,
3150 CrossFill,
3151 Cross2,
3152 Line,
3153 ArrowHead,
3154 ArrowHeadFilled,
3155 SemiCircle,
3156 ThirdCircle,
3157 QuarterCircle,
3158 QuarterSquare,
3159 HalfSquare,
3160 DiagonalHalfSquare,
3161 RightHalfTriangle,
3162 LeftHalfTriangle,
3163 Octagon,
3164 SquareWithCorners,
3165 AsteriskFill,
3166 HalfArc,
3167 ThirdArc,
3168 QuarterArc,
3169 ParallelogramRight,
3170 ParallelogramLeft,
3171 Trapezoid,
3172 Shield,
3173 DiamondStar,
3174 Heart,
3175 Decagon,
3176 RoundedSquare,
3177 };
3178 Q_ENUM( MarkerShape )
3179
3180
3188 {
3189 Interval = 1 << 0,
3190 Vertex = 1 << 1,
3191 LastVertex = 1 << 2,
3192 FirstVertex = 1 << 3,
3193 CentralPoint = 1 << 4,
3194 CurvePoint = 1 << 5,
3195 SegmentCenter = 1 << 6,
3196 InnerVertices = 1 << 7,
3197 };
3198 Q_ENUM( MarkerLinePlacement )
3200 Q_FLAG( MarkerLinePlacements )
3201
3208 {
3209 IntervalCartesian2D = 1 << 0,
3210 IntervalZ = 1 << 1,
3211 IntervalM = 1 << 2,
3212 Vertex = 1 << 3,
3213 };
3214 Q_ENUM( LinearReferencingPlacement )
3215
3216
3222 {
3223 CartesianDistance2D,
3224 Z,
3225 M,
3226 };
3227 Q_ENUM( LinearReferencingLabelSource )
3228
3229
3237 {
3238 SimpleTwoColor,
3239 ColorRamp,
3240 };
3241 Q_ENUM( GradientColorSource )
3242
3243
3256 Q_ENUM( GradientType )
3257
3258
3266 {
3267 Feature,
3268 Viewport,
3269 };
3270 Q_ENUM( SymbolCoordinateReference )
3271
3272
3286 Q_ENUM( GradientSpread )
3287
3288
3296 {
3297 Absolute SIP_MONKEYPATCH_COMPAT_NAME( AbsoluteCount ),
3298 DensityBased SIP_MONKEYPATCH_COMPAT_NAME( DensityBasedCount ),
3299 };
3300 Q_ENUM( PointCountMethod )
3301
3302
3307 enum class MarkerClipMode : int
3308 {
3309 NoClipping,
3310 Shape,
3311 CentroidWithin,
3312 CompletelyWithin,
3313 };
3314 Q_ENUM( MarkerClipMode )
3315
3316
3321 enum class LineClipMode : int
3322 {
3323 ClipPainterOnly,
3324 ClipToIntersection,
3325 NoClipping,
3326 };
3327 Q_ENUM( LineClipMode )
3328
3329
3335 {
3336 NoRule,
3337 FullDash,
3338 HalfDash,
3339 FullGap,
3340 HalfGap,
3341 };
3342 Q_ENUM( DashPatternLineEndingRule )
3343
3344
3350 {
3351 ScaleBothDashAndGap,
3352 ScaleDashOnly,
3353 ScaleGapOnly,
3354 };
3355 Q_ENUM( DashPatternSizeAdjustment )
3356
3357
3369 Q_ENUM( GraduatedMethod )
3370
3371
3377 {
3378 NoLabels,
3379 EveryLabel,
3380 FirstLabel,
3381 LastLabel,
3382 FirstAndLastLabels,
3383 };
3384 Q_ENUM( PlotAxisSuffixPlacement )
3385
3386
3387
3392 enum class PlotAxisType
3393 {
3394 Interval,
3395 Categorical,
3396 };
3397 Q_ENUM( PlotAxisType )
3398
3399
3404 enum class PieChartLabelType : int
3405 {
3406 NoLabels,
3407 Categories,
3408 Values,
3409 };
3410 Q_ENUM( PieChartLabelType )
3411
3412
3416 enum class DpiMode
3417 {
3418 All = 7,
3419 Off = 0,
3420 QGIS = 1,
3421 UMN = 2,
3422 GeoServer = 4,
3423 };
3424 Q_ENUM( DpiMode )
3425
3426
3431 {
3432 Undefined = 0,
3433 StandardDpi = 1,
3434 HighDpi = 2,
3435 };
3436 Q_ENUM( TilePixelRatio )
3437
3438 // NOTE -- the hardcoded numbers here must match QFont::Capitalization!
3439
3440
3448 {
3449 MixedCase = 0,
3450 AllUppercase = 1,
3451 AllLowercase = 2,
3452 ForceFirstLetterToCapital = 4,
3453 SmallCaps = 5,
3454 TitleCase = 1004,
3455 UpperCamelCase = 1005,
3456 AllSmallCaps = 1006,
3457 };
3458 Q_ENUM( Capitalization )
3459
3460
3465 enum class TextRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
3466 {
3467 WrapLines = 1 << 0,
3468 };
3469 Q_ENUM( TextRendererFlag )
3471 Q_FLAG( TextRendererFlags )
3472
3479 {
3480 MapBox,
3481 Esri,
3482 };
3484
3491 {
3492 Clockwise,
3493 CounterClockwise,
3494 NoOrientation,
3495 };
3496 Q_ENUM( AngularDirection )
3497
3498
3503 enum class RendererUsage : int
3504 {
3505 View,
3506 Export,
3507 Unknown,
3508 };
3509 Q_ENUM( RendererUsage )
3510
3511
3516 enum class MapCanvasFlag : int SIP_ENUM_BASETYPE( IntFlag )
3517 {
3518 ShowMainAnnotationLayer = 1 << 0,
3519 };
3520 Q_ENUM( MapCanvasFlag )
3521
3522
3527 Q_DECLARE_FLAGS( MapCanvasFlags, MapCanvasFlag )
3528 Q_FLAG( MapCanvasFlags )
3529
3535 enum class ViewSyncModeFlag : int SIP_ENUM_BASETYPE( IntFlag )
3536 {
3537 Sync3DTo2D = 1 << 0,
3538 Sync2DTo3D = 1 << 1,
3539 };
3540 Q_ENUM( ViewSyncModeFlag )
3542
3549 {
3550 Always,
3551 WhenOutsideVisibleExtent,
3552 Never,
3553 };
3554 Q_ENUM( MapRecenteringMode )
3555
3556
3561 enum class HistoryProviderBackend : int SIP_ENUM_BASETYPE( IntFlag )
3562 {
3563 LocalProfile = 1 << 0,
3564// Project = 1 << 1, //!< QGIS Project (not yet implemented)
3565 };
3566 Q_ENUM( HistoryProviderBackend )
3568 Q_FLAG( HistoryProviderBackends )
3569
3575 enum class QueryStorageBackend : int
3576 {
3577 LocalProfile,
3578 CurrentProject,
3579 };
3580 Q_ENUM( QueryStorageBackend )
3581
3582
3590 {
3591 MapLayer SIP_MONKEYPATCH_COMPAT_NAME( TypeMapLayer ) = -2,
3592 VectorAnyGeometry SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorAnyGeometry ) = -1,
3593 VectorPoint SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorPoint ) = 0,
3594 VectorLine SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorLine ) = 1,
3595 VectorPolygon SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorPolygon ) = 2,
3596 Raster SIP_MONKEYPATCH_COMPAT_NAME( TypeRaster ) = 3,
3597 File SIP_MONKEYPATCH_COMPAT_NAME( TypeFile ) = 4,
3598 Vector SIP_MONKEYPATCH_COMPAT_NAME( TypeVector ) = 5,
3599 Mesh SIP_MONKEYPATCH_COMPAT_NAME( TypeMesh ) = 6,
3600 Plugin SIP_MONKEYPATCH_COMPAT_NAME( TypePlugin ) = 7,
3601 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( TypePointCloud ) = 8,
3602 Annotation SIP_MONKEYPATCH_COMPAT_NAME( TypeAnnotation ) = 9,
3603 VectorTile SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorTile ) = 10,
3604 TiledScene = 11
3605 };
3606 Q_ENUM( ProcessingSourceType )
3607
3608
3609
3617 {
3618 DeemphasiseSearchResults SIP_MONKEYPATCH_COMPAT_NAME( FlagDeemphasiseSearchResults ) = 1 << 1,
3619 CompatibleWithVirtualRaster SIP_MONKEYPATCH_COMPAT_NAME( FlagCompatibleWithVirtualRaster ) = 1 << 2,
3620 };
3622
3631 Q_FLAG( ProcessingProviderFlags )
3632
3633
3641 {
3642 HideFromToolbox SIP_MONKEYPATCH_COMPAT_NAME( FlagHideFromToolbox ) = 1 << 1,
3643 HideFromModeler SIP_MONKEYPATCH_COMPAT_NAME( FlagHideFromModeler ) = 1 << 2,
3644 SupportsBatch SIP_MONKEYPATCH_COMPAT_NAME( FlagSupportsBatch ) = 1 << 3,
3645 CanCancel SIP_MONKEYPATCH_COMPAT_NAME( FlagCanCancel ) = 1 << 4,
3646 RequiresMatchingCrs SIP_MONKEYPATCH_COMPAT_NAME( FlagRequiresMatchingCrs ) = 1 << 5,
3647 NoThreading SIP_MONKEYPATCH_COMPAT_NAME( FlagNoThreading ) = 1 << 6,
3648 DisplayNameIsLiteral SIP_MONKEYPATCH_COMPAT_NAME( FlagDisplayNameIsLiteral ) = 1 << 7,
3649 SupportsInPlaceEdits SIP_MONKEYPATCH_COMPAT_NAME( FlagSupportsInPlaceEdits ) = 1 << 8,
3650 KnownIssues SIP_MONKEYPATCH_COMPAT_NAME( FlagKnownIssues ) = 1 << 9,
3651 CustomException SIP_MONKEYPATCH_COMPAT_NAME( FlagCustomException ) = 1 << 10,
3652 PruneModelBranchesBasedOnAlgorithmResults SIP_MONKEYPATCH_COMPAT_NAME( FlagPruneModelBranchesBasedOnAlgorithmResults ) = 1 << 11,
3653 SkipGenericModelLogging SIP_MONKEYPATCH_COMPAT_NAME( FlagSkipGenericModelLogging ) = 1 << 12,
3654 NotAvailableInStandaloneTool SIP_MONKEYPATCH_COMPAT_NAME( FlagNotAvailableInStandaloneTool ) = 1 << 13,
3655 RequiresProject SIP_MONKEYPATCH_COMPAT_NAME( FlagRequiresProject ) = 1 << 14,
3656 SecurityRisk = 1 << 15,
3657 Deprecated SIP_MONKEYPATCH_COMPAT_NAME( FlagDeprecated ) = HideFromToolbox | HideFromModeler,
3658 };
3660
3669 Q_FLAG( ProcessingAlgorithmFlags )
3670
3671
3677 {
3678 RegeneratesPrimaryKey = 1 << 0,
3679 RegeneratesPrimaryKeyInSomeScenarios = 1 << 1,
3680 RespectsEllipsoid = 1 << 2,
3681 };
3682 Q_ENUM( ProcessingAlgorithmDocumentationFlag )
3683
3684
3691
3701 {
3702 NotAvailable,
3703 Available,
3704 };
3705 Q_ENUM( ProcessingPropertyAvailability )
3706
3707
3715 {
3716 DefaultLevel = 0,
3717 Verbose,
3718 ModelDebug,
3719 };
3720 Q_ENUM( ProcessingLogLevel )
3721
3722
3730 {
3731 Standard,
3732 Batch,
3733 Modeler,
3734 };
3735 Q_ENUM( ProcessingMode )
3736
3737
3745 {
3746 OverrideDefaultGeometryCheck SIP_MONKEYPATCH_COMPAT_NAME( FlagOverrideDefaultGeometryCheck ) = 1 << 0,
3747 CreateIndividualOutputPerInputFeature SIP_MONKEYPATCH_COMPAT_NAME( FlagCreateIndividualOutputPerInputFeature ) = 1 << 1,
3748 };
3749 Q_ENUM( ProcessingFeatureSourceDefinitionFlag )
3750
3751
3760
3769 {
3770 SkipGeometryValidityChecks SIP_MONKEYPATCH_COMPAT_NAME( FlagSkipGeometryValidityChecks ) = 1 << 1,
3771 };
3772 Q_ENUM( ProcessingFeatureSourceFlag )
3773
3774
3783
3795 {
3796 ExposeToModeler = 1
3797 };
3798 Q_ENUM( ProcessingParameterTypeFlag )
3799
3800
3812
3821 {
3822 Advanced SIP_MONKEYPATCH_COMPAT_NAME( FlagAdvanced ) = 1 << 1,
3823 Hidden SIP_MONKEYPATCH_COMPAT_NAME( FlagHidden ) = 1 << 2,
3824 Optional SIP_MONKEYPATCH_COMPAT_NAME( FlagOptional ) = 1 << 3,
3825 IsModelOutput SIP_MONKEYPATCH_COMPAT_NAME( FlagIsModelOutput ) = 1 << 4,
3826 };
3827 Q_ENUM( ProcessingParameterFlag )
3828
3829
3837 Q_FLAG( ProcessingParameterFlags )
3838
3851 Q_ENUM( ProcessingFileParameterBehavior )
3852
3853
3865 Q_ENUM( ProcessingNumberParameterType )
3866
3867
3875 {
3876 Any = -1,
3877 Numeric = 0,
3878 String = 1,
3879 DateTime = 2,
3880 Binary = 3,
3881 Boolean = 4,
3882 };
3883 Q_ENUM( ProcessingFieldParameterDataType )
3884
3885
3898 Q_ENUM( ProcessingDateTimeParameterDataType )
3899
3900
3906 {
3907 ModelParameter,
3908 ChildOutput,
3909 StaticValue,
3910 Expression,
3911 ExpressionText,
3912 ModelOutput,
3913 };
3914 Q_ENUM( ProcessingModelChildParameterSource )
3915
3916
3922 {
3923 NotExecuted,
3925 Failed,
3926 };
3927 Q_ENUM( ProcessingModelChildAlgorithmExecutionStatus )
3928
3929
3937 {
3938 Vertices,
3939 StructureLines,
3940 BreakLines
3941 };
3942 Q_ENUM( ProcessingTinInputLayerType )
3943
3944
3954 Q_ENUM( CrsDefinitionFormat )
3955
3956
3964 enum class FieldDomainSplitPolicy : int
3965 {
3966 DefaultValue,
3967 Duplicate,
3968 GeometryRatio,
3969 UnsetField,
3970 };
3971 Q_ENUM( FieldDomainSplitPolicy )
3972
3973
3981 enum class FieldDomainMergePolicy : int
3982 {
3983 DefaultValue,
3984 Sum,
3985 GeometryWeighted,
3986 UnsetField,
3987 LargestGeometry,
3988 MinimumValue,
3989 MaximumValue,
3990 SetToNull,
3991 };
3992 Q_ENUM( FieldDomainMergePolicy )
3993
3994
4001 enum class FieldDuplicatePolicy : int
4002 {
4003 DefaultValue,
4004 Duplicate,
4005 UnsetField,
4006 };
4007 Q_ENUM( FieldDuplicatePolicy )
4008
4009
4014 enum class FieldDomainType : int
4015 {
4016 Coded,
4017 Range,
4018 Glob,
4019 };
4020 Q_ENUM( FieldDomainType )
4021
4022
4027 enum class TransactionMode : int
4028 {
4029 Disabled = 0,
4030 AutomaticGroups = 1,
4031 BufferedGroups = 2,
4032 };
4033 Q_ENUM( TransactionMode )
4034
4035
4040 enum class AltitudeClamping : int
4041 {
4042 Absolute,
4043 Relative,
4044 Terrain,
4045 };
4046 Q_ENUM( AltitudeClamping )
4047
4048
4053 enum class AltitudeBinding : int
4054 {
4055 Vertex,
4056 Centroid,
4057 };
4058 Q_ENUM( AltitudeBinding )
4059
4060
4065 enum class RangeLimits : int
4066 {
4067 IncludeBoth = 0,
4068 IncludeLowerExcludeUpper,
4069 ExcludeLowerIncludeUpper,
4070 ExcludeBoth,
4071 };
4072 Q_ENUM( RangeLimits )
4073
4074
4079 enum class RasterElevationMode : int
4080 {
4081 FixedElevationRange = 0,
4082 RepresentsElevationSurface = 1,
4083 FixedRangePerBand = 2,
4084 DynamicRangePerBand = 3,
4085 };
4086 Q_ENUM( RasterElevationMode )
4087
4088
4093 enum class MeshElevationMode : int
4094 {
4095 FixedElevationRange = 0,
4096 FromVertices = 1,
4097 FixedRangePerGroup = 2,
4098 };
4099 Q_ENUM( MeshElevationMode )
4100
4101
4107 {
4108 NoConstraint,
4109 Perpendicular,
4110 Parallel
4111 };
4112 Q_ENUM( BetweenLineConstraint )
4113
4114
4119 enum class LineExtensionSide : int
4120 {
4121 BeforeVertex,
4122 AfterVertex,
4123 NoVertex,
4124 };
4125 Q_ENUM( LineExtensionSide )
4126
4127
4128
4132 enum class CadConstraintType : int
4133 {
4134 Generic,
4135 Angle,
4136 Distance,
4137 XCoordinate,
4138 YCoordinate,
4139 ZValue,
4140 MValue,
4141 };
4142 Q_ENUM( CadConstraintType )
4143
4144
4145
4150 enum class ProjectFlag : int SIP_ENUM_BASETYPE( IntFlag )
4151 {
4152 EvaluateDefaultValuesOnProviderSide = 1 << 0,
4153 TrustStoredLayerStatistics = 1 << 1,
4154 RememberLayerEditStatusBetweenSessions = 1 << 2,
4155 RememberAttributeTableWindowsBetweenSessions = 1 << 3,
4156 };
4157 Q_ENUM( ProjectFlag )
4158 Q_DECLARE_FLAGS( ProjectFlags, ProjectFlag )
4159 Q_FLAG( ProjectFlags )
4160
4166 enum class PlotToolFlag : int SIP_ENUM_BASETYPE( IntFlag )
4167 {
4168 ShowContextMenu = 1 << 0,
4169 };
4170 Q_ENUM( PlotToolFlag )
4171 Q_DECLARE_FLAGS( PlotToolFlags, PlotToolFlag )
4172 Q_FLAG( PlotToolFlags )
4173
4174
4182 enum class Point3DShape : int
4183 {
4184 Cylinder,
4185 Sphere,
4186 Cone,
4187 Cube,
4188 Torus,
4189 Plane,
4190 ExtrudedText,
4191 Model,
4192 Billboard,
4193 };
4194 Q_ENUM( Point3DShape )
4195
4196
4201 enum class LightSourceType : int
4202 {
4203 Point,
4204 Directional,
4205 };
4206 Q_ENUM( LightSourceType )
4207
4208
4213 enum class NavigationMode : int
4214 {
4215 TerrainBased,
4216 Walk,
4217 GlobeTerrainBased
4218 };
4219 Q_ENUM( NavigationMode )
4220
4221
4226 enum class SceneMode : int
4227 {
4228 Local,
4229 Globe
4230 };
4231 Q_ENUM( SceneMode )
4232
4233
4238 enum class VerticalAxisInversion : int
4239 {
4240 Never,
4241 WhenDragging,
4242 Always,
4243 };
4244 Q_ENUM( VerticalAxisInversion )
4245
4246
4252 {
4253 Line,
4254 FillBelow,
4255 FillAbove,
4256 };
4258
4264 enum class VectorProfileType : int
4265 {
4266 IndividualFeatures,
4267 ContinuousSurface,
4268 };
4270
4276 enum class ProfileGeneratorFlag : int SIP_ENUM_BASETYPE( IntFlag )
4277 {
4278 RespectsMaximumErrorMapUnit = 1 << 0,
4279 RespectsDistanceRange = 1 << 1,
4280 RespectsElevationRange = 1 << 2,
4281 };
4282 Q_ENUM( ProfileGeneratorFlag )
4284 Q_FLAG( ProfileGeneratorFlags )
4285
4291 enum class ProfileExportType : int
4292 {
4293 Features3D,
4294 Profile2D,
4295 DistanceVsElevationTable,
4296 };
4298
4305 {
4306 Square,
4307 Circle,
4308 };
4309 Q_ENUM( PointCloudSymbol )
4310
4311
4317 {
4318 Default,
4319 BottomToTop,
4320 TopToBottom,
4321 };
4322 Q_ENUM( PointCloudDrawOrder )
4323
4324
4332 {
4333 AllowIntersections,
4334 AvoidIntersectionsCurrentLayer,
4335 AvoidIntersectionsLayers,
4336 };
4337 Q_ENUM( AvoidIntersectionsMode )
4338
4339
4347 {
4348 Qgz,
4349 Qgs,
4350 };
4351 Q_ENUM( ProjectFileFormat )
4352
4353
4361 {
4362 DontResolveLayers SIP_MONKEYPATCH_COMPAT_NAME( FlagDontResolveLayers ) = 1 << 0,
4363 DontLoadLayouts SIP_MONKEYPATCH_COMPAT_NAME( FlagDontLoadLayouts ) = 1 << 1,
4364 TrustLayerMetadata SIP_MONKEYPATCH_COMPAT_NAME( FlagTrustLayerMetadata ) = 1 << 2,
4365 DontStoreOriginalStyles SIP_MONKEYPATCH_COMPAT_NAME( FlagDontStoreOriginalStyles ) = 1 << 3,
4366 DontLoad3DViews SIP_MONKEYPATCH_COMPAT_NAME( FlagDontLoad3DViews ) = 1 << 4,
4367 DontLoadProjectStyles = 1 << 5,
4368 ForceReadOnlyLayers = 1 << 6,
4369 DontUpgradeAnnotations = 1 << 7,
4370 };
4371 Q_ENUM( ProjectReadFlag )
4372
4373
4381 Q_FLAG( ProjectReadFlags )
4382
4391 enum class ProjectCapability : int SIP_ENUM_BASETYPE( IntFlag )
4392 {
4393 ProjectStyles = 1 << 0,
4394 };
4395 Q_ENUM( ProjectCapability )
4396
4397
4403 Q_FLAG( ProjectCapabilities )
4404
4411 {
4412 Vector,
4413 Raster,
4414 RasterDem,
4415 GeoJson,
4416 Image,
4417 Video,
4418 Unknown,
4419 };
4420 Q_ENUM( MapBoxGlStyleSourceType )
4421
4422
4430 {
4431 FeatureServer SIP_MONKEYPATCH_COMPAT_NAME( FeatureService ),
4432 MapServer SIP_MONKEYPATCH_COMPAT_NAME( MapService ),
4433 ImageServer SIP_MONKEYPATCH_COMPAT_NAME( ImageService ),
4434 GlobeServer,
4435 GPServer,
4436 GeocodeServer,
4437 Unknown,
4438 SceneServer,
4439 };
4440 Q_ENUM( ArcGisRestServiceType )
4441
4442
4450 {
4451 Normal,
4452 Generated,
4453 };
4454 Q_ENUM( RelationshipType )
4455
4456
4464 {
4465 Association,
4466 Composition,
4467 };
4468 Q_ENUM( RelationshipStrength )
4469
4470
4476 {
4477 OneToOne,
4478 OneToMany,
4479 ManyToOne,
4480 ManyToMany,
4481 };
4482 Q_ENUM( RelationshipCardinality )
4483
4484
4489 enum class RelationshipCapability : int SIP_ENUM_BASETYPE( IntFlag )
4490 {
4491 MultipleFieldKeys = 1 << 0,
4492 ForwardPathLabel = 1 << 1,
4493 BackwardPathLabel = 1 << 2,
4494 };
4495 Q_ENUM( RelationshipCapability )
4496
4497
4503 Q_FLAG( RelationshipCapabilities )
4504
4510 enum class CoordinateDisplayType : int
4511 {
4512 MapCrs,
4513 MapGeographic,
4514 CustomCrs,
4515 };
4516 Q_ENUM( CoordinateDisplayType )
4517
4518
4523 enum class SettingsOrigin : int
4524 {
4525 Any,
4526 Global,
4527 Local,
4528 };
4529 Q_ENUM( SettingsOrigin )
4530
4531
4536 enum class ScriptLanguage : int
4537 {
4538 Css,
4539 QgisExpression,
4540 Html,
4541 JavaScript,
4542 Json,
4543 Python,
4544 R,
4545 Sql,
4546 Batch,
4547 Bash,
4548 Unknown,
4549 };
4550 Q_ENUM( ScriptLanguage )
4551
4552
4560 {
4561 Reformat = 1 << 0,
4562 CheckSyntax = 1 << 1,
4563 ToggleComment = 1 << 2,
4564 };
4565 Q_ENUM( ScriptLanguageCapability )
4566
4567
4574
4581 {
4582 AboveInsertionPoint,
4583 TopOfTree,
4584 OptimalInInsertionGroup,
4585 };
4586 Q_ENUM( LayerTreeInsertionMethod )
4587
4588
4593 enum class LayerTreeFilterFlag : int SIP_ENUM_BASETYPE( IntFlag )
4594 {
4595 SkipVisibilityCheck = 1 << 0,
4596 };
4597 Q_ENUM( LayerTreeFilterFlag )
4598
4599
4605 Q_FLAG( LayerTreeFilterFlags )
4606
4612 enum class MapLayerLegendFlag : int SIP_ENUM_BASETYPE( IntFlag )
4613 {
4614 ExcludeByDefault = 1 << 0,
4615 };
4616 Q_ENUM( MapLayerLegendFlag )
4617
4618
4624 Q_FLAG( MapLayerLegendFlags )
4625
4634 {
4635 Undefined,
4636 Hidden,
4637 Title,
4638 Group,
4639 Subgroup,
4640 Symbol,
4641 SymbolLabel,
4642 };
4643 // !!! WARNING: If adding new values to this enum, make sure you update QgsLegendSettings constructor accordingly!!
4644 Q_ENUM( LegendComponent )
4645
4646
4651 enum class LegendSyncMode : int
4652 {
4653 AllProjectLayers,
4654 VisibleLayers,
4655 Manual,
4656 };
4657 Q_ENUM( LegendSyncMode )
4658
4659
4666 enum class LegendJsonRenderFlag : int SIP_ENUM_BASETYPE( IntFlag )
4667 {
4668 ShowRuleDetails = 1 << 0,
4669 };
4670 Q_ENUM( LegendJsonRenderFlag )
4672 Q_FLAG( LegendJsonRenderFlags )
4673
4681 enum class ActionType : int
4682 {
4683 Invalid,
4684 MapLayerAction,
4685 AttributeAction
4686 };
4687 Q_ENUM( ActionType )
4688
4689
4696 enum class MapLayerActionTarget : int SIP_ENUM_BASETYPE( IntFlag )
4697 {
4698 Layer = 1 << 0,
4699 SingleFeature = 1 << 1,
4700 MultipleFeatures = 1 << 2,
4701 AllActions = Layer | SingleFeature | MultipleFeatures
4702 };
4703 Q_ENUM( MapLayerActionTarget )
4704
4705
4713 Q_FLAG( MapLayerActionTargets )
4714
4722 enum class MapLayerActionFlag : int SIP_ENUM_BASETYPE( IntFlag )
4723 {
4724 EnabledOnlyWhenEditable = 1 << 1,
4725 EnableOnlyWhenHasGeometry = 1 << 2,
4726 };
4727 Q_ENUM( MapLayerActionFlag )
4728
4729
4737 Q_FLAG( MapLayerActionFlags )
4738
4747 {
4748 Generic,
4749 GenericPython,
4750 Mac,
4751 Windows,
4752 Unix,
4753 OpenUrl,
4754 SubmitUrlEncoded,
4755 SubmitUrlMultipart,
4756 };
4757 Q_ENUM( AttributeActionType )
4758
4759
4765 {
4766 Created,
4767 Published,
4768 Revised,
4769 Superseded,
4770 };
4771 Q_ENUM( MetadataDateType )
4772
4773
4782
4784 {
4785 Undefined SIP_MONKEYPATCH_COMPAT_NAME( UndefinedColorInterpretation ) = 0,
4786 GrayIndex = 1,
4787 PaletteIndex = 2,
4788 RedBand = 3,
4789 GreenBand = 4,
4790 BlueBand = 5,
4791 AlphaBand = 6,
4792 HueBand = 7,
4793 SaturationBand = 8,
4794 LightnessBand = 9,
4795 CyanBand = 10,
4796 MagentaBand = 11,
4797 YellowBand = 12,
4798 BlackBand = 13,
4799 YCbCr_YBand = 14,
4800 YCbCr_CbBand = 15,
4801 YCbCr_CrBand = 16,
4802 ContinuousPalette = 17,
4803
4804 // Note: values between PanBand and SAR_P_Band match additions done in
4805 // GDAL 3.10, except that the numeric values of the constant don't match GDAL ones
4806
4807 PanBand = 18,
4808 CoastalBand = 19,
4809 RedEdgeBand = 20,
4810 NIRBand = 21,
4811 SWIRBand = 22,
4812 MWIRBand = 23,
4813 LWIRBand = 24,
4814 TIRBand = 25,
4815 OtherIRBand = 26,
4816 SAR_Ka_Band = 27,
4817 SAR_K_Band = 28,
4818 SAR_Ku_Band = 30,
4819 SAR_X_Band = 31,
4820 SAR_C_Band = 32,
4821 SAR_S_Band = 33,
4822 SAR_L_Band = 34,
4823 SAR_P_Band = 35,
4824 };
4825 Q_ENUM( RasterColorInterpretation )
4826
4827
4835 {
4836 GrayOrUndefined,
4837 Palette,
4838 MultiBand SIP_MONKEYPATCH_COMPAT_NAME( Multiband ),
4839 SingleBandColorData SIP_MONKEYPATCH_COMPAT_NAME( ColorLayer ),
4840 };
4841 Q_ENUM( RasterLayerType )
4842
4843
4851 {
4852 Undefined SIP_MONKEYPATCH_COMPAT_NAME( UndefinedDrawingStyle ),
4853 SingleBandGray,
4854 SingleBandPseudoColor,
4855 PalettedColor,
4856 PalettedSingleBandGray,
4857 PalettedSingleBandPseudoColor,
4858 PalettedMultiBandColor,
4859 MultiBandSingleBandGray,
4860 MultiBandSingleBandPseudoColor,
4861 MultiBandColor,
4862 SingleBandColorData SIP_MONKEYPATCH_COMPAT_NAME( SingleBandColorDataStyle ),
4863 };
4864 Q_ENUM( RasterDrawingStyle )
4865
4866
4873 enum class RasterPyramidFormat SIP_MONKEYPATCH_SCOPEENUM_UNNEST( QgsRaster, RasterPyramidsFormat ) : int
4874 {
4875 GeoTiff SIP_MONKEYPATCH_COMPAT_NAME( PyramidsGTiff ) = 0,
4876 Internal SIP_MONKEYPATCH_COMPAT_NAME( PyramidsInternal ) = 1,
4877 Erdas SIP_MONKEYPATCH_COMPAT_NAME( PyramidsErdas ) = 2
4878 };
4879 Q_ENUM( RasterPyramidFormat )
4880
4881
4889 {
4890 No SIP_MONKEYPATCH_COMPAT_NAME( PyramidsFlagNo ) = 0,
4891 Yes SIP_MONKEYPATCH_COMPAT_NAME( PyramidsFlagYes ) = 1,
4892 CopyExisting SIP_MONKEYPATCH_COMPAT_NAME( PyramidsCopyExisting ) = 2
4893 };
4894 Q_ENUM( RasterBuildPyramidOption )
4895
4896
4904 {
4905 Undefined SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatUndefined ) = 0,
4906 Value SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatValue ) = 1,
4907 Text SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatText ) = 1 << 1,
4908 Html SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatHtml ) = 1 << 2,
4909 Feature SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatFeature ) = 1 << 3,
4910 };
4911 Q_ENUM( RasterIdentifyFormat )
4912
4913 // TODO QGIS 5 -- remove NoCapabilities and rely on RasterInterfaceCapabilities() instead
4914 // remove deprecated members
4915 // Remove "Identify" member, and replace with combinations of IdentifyValue/IdentifyText/etc
4916
4917
4925 {
4926 NoCapabilities = 0,
4927 Size = 1 << 1,
4928 Create = 1 << 2,
4929 Remove = 1 << 3,
4930 BuildPyramids = 1 << 4,
4931 Identify = 1 << 5,
4932 IdentifyValue = 1 << 6,
4933 IdentifyText = 1 << 7,
4934 IdentifyHtml = 1 << 8,
4935 IdentifyFeature = 1 << 9,
4936 Prefetch = 1 << 10,
4937 };
4938 Q_ENUM( RasterInterfaceCapability )
4939
4940
4947
4948 // TODO QGIS 5 -- remove NoProviderCapabilities and rely on RasterProviderCapabilities() instead
4949
4958 {
4959 NoProviderCapabilities = 0,
4960 ReadLayerMetadata = 1 << 1,
4961 WriteLayerMetadata = 1 << 2,
4962 ProviderHintBenefitsFromResampling = 1 << 3,
4963 ProviderHintCanPerformProviderResampling = 1 << 4,
4964 ReloadData = 1 << 5,
4965 DpiDependentData = 1 << 6,
4966 NativeRasterAttributeTable = 1 << 7,
4967 BuildPyramids = 1 << 8,
4968 };
4969 Q_ENUM( RasterProviderCapability )
4970
4971
4980
4987 {
4988 HighestElevation,
4989 NewerElevation,
4990 };
4991 Q_ENUM( ElevationMapCombineMethod )
4992
4993
5002 {
5003 Normal SIP_MONKEYPATCH_COMPAT_NAME( BlendNormal ),
5004 Lighten SIP_MONKEYPATCH_COMPAT_NAME( BlendLighten ),
5005 Screen SIP_MONKEYPATCH_COMPAT_NAME( BlendScreen ),
5006 Dodge SIP_MONKEYPATCH_COMPAT_NAME( BlendDodge ),
5007 Addition SIP_MONKEYPATCH_COMPAT_NAME( BlendAddition ),
5008 Darken SIP_MONKEYPATCH_COMPAT_NAME( BlendDarken ),
5009 Multiply SIP_MONKEYPATCH_COMPAT_NAME( BlendMultiply ),
5011 Overlay SIP_MONKEYPATCH_COMPAT_NAME( BlendOverlay ),
5012 SoftLight SIP_MONKEYPATCH_COMPAT_NAME( BlendSoftLight ),
5013 HardLight SIP_MONKEYPATCH_COMPAT_NAME( BlendHardLight ),
5014 Difference SIP_MONKEYPATCH_COMPAT_NAME( BlendDifference ),
5015 Subtract SIP_MONKEYPATCH_COMPAT_NAME( BlendSubtract ),
5016 Source SIP_MONKEYPATCH_COMPAT_NAME( BlendSource ),
5017 DestinationOver SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationOver ),
5018 Clear SIP_MONKEYPATCH_COMPAT_NAME( BlendClear ),
5019 Destination SIP_MONKEYPATCH_COMPAT_NAME( BlendDestination ),
5020 SourceIn SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceIn ),
5021 DestinationIn SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationIn ),
5022 SourceOut SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceOut ),
5023 DestinationOut SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationOut ),
5024 SourceAtop SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceAtop ),
5025 DestinationAtop SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationAtop ),
5027 };
5028 Q_ENUM( BlendMode )
5029
5030
5038 {
5039 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownSystem ) = 0,
5040 Metric SIP_MONKEYPATCH_COMPAT_NAME( MetricSystem ),
5041 Imperial SIP_MONKEYPATCH_COMPAT_NAME( ImperialSystem ),
5042 USCS SIP_MONKEYPATCH_COMPAT_NAME( USCSSystem ),
5043 };
5044 Q_ENUM( SystemOfMeasurement )
5045
5046
5053 {
5054 Layer SIP_MONKEYPATCH_COMPAT_NAME( LayerUnits ),
5055 Pixels,
5056 Project SIP_MONKEYPATCH_COMPAT_NAME( ProjectUnits )
5057 };
5058 Q_ENUM( MapToolUnit )
5059
5060
5068 {
5069 Distance SIP_MONKEYPATCH_COMPAT_NAME( TypeDistance ) = 0,
5071 Volume SIP_MONKEYPATCH_COMPAT_NAME( TypeVolume ),
5072 Unknown SIP_MONKEYPATCH_COMPAT_NAME( TypeUnknown ),
5073 Temporal SIP_MONKEYPATCH_COMPAT_NAME( TypeTemporal ),
5074 };
5075 Q_ENUM( UnitType )
5076
5077
5085 {
5086 Meters SIP_MONKEYPATCH_COMPAT_NAME( DistanceMeters ),
5087 Kilometers SIP_MONKEYPATCH_COMPAT_NAME( DistanceKilometers ),
5088 Feet SIP_MONKEYPATCH_COMPAT_NAME( DistanceFeet ),
5089 NauticalMiles SIP_MONKEYPATCH_COMPAT_NAME( DistanceNauticalMiles ),
5090 Yards SIP_MONKEYPATCH_COMPAT_NAME( DistanceYards ),
5091 Miles SIP_MONKEYPATCH_COMPAT_NAME( DistanceMiles ),
5092 Degrees SIP_MONKEYPATCH_COMPAT_NAME( DistanceDegrees ),
5093 Centimeters SIP_MONKEYPATCH_COMPAT_NAME( DistanceCentimeters ),
5094 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( DistanceMillimeters ),
5095 Inches,
5096 ChainsInternational,
5097 ChainsBritishBenoit1895A,
5098 ChainsBritishBenoit1895B,
5099 ChainsBritishSears1922Truncated,
5100 ChainsBritishSears1922,
5101 ChainsClarkes,
5102 ChainsUSSurvey,
5103 FeetBritish1865,
5104 FeetBritish1936,
5105 FeetBritishBenoit1895A,
5106 FeetBritishBenoit1895B,
5107 FeetBritishSears1922Truncated,
5108 FeetBritishSears1922,
5109 FeetClarkes,
5110 FeetGoldCoast,
5111 FeetIndian,
5112 FeetIndian1937,
5113 FeetIndian1962,
5114 FeetIndian1975,
5115 FeetUSSurvey,
5116 LinksInternational,
5117 LinksBritishBenoit1895A,
5118 LinksBritishBenoit1895B,
5119 LinksBritishSears1922Truncated,
5120 LinksBritishSears1922,
5121 LinksClarkes,
5122 LinksUSSurvey,
5123 YardsBritishBenoit1895A,
5124 YardsBritishBenoit1895B,
5125 YardsBritishSears1922Truncated,
5126 YardsBritishSears1922,
5127 YardsClarkes,
5128 YardsIndian,
5129 YardsIndian1937,
5130 YardsIndian1962,
5131 YardsIndian1975,
5132 MilesUSSurvey,
5133 Fathoms,
5134 MetersGermanLegal,
5135 Unknown SIP_MONKEYPATCH_COMPAT_NAME( DistanceUnknownUnit ),
5136 };
5137 Q_ENUM( DistanceUnit )
5138
5139
5147 {
5148 Standard,
5149 Geographic,
5150 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownType ),
5151 };
5152 Q_ENUM( DistanceUnitType )
5153
5154
5162 {
5163 SquareMeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMeters ),
5164 SquareKilometers SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareKilometers ),
5165 SquareFeet SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareFeet ),
5166 SquareYards SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareYards ),
5167 SquareMiles SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMiles ),
5168 Hectares SIP_MONKEYPATCH_COMPAT_NAME( AreaHectares ),
5169 Acres SIP_MONKEYPATCH_COMPAT_NAME( AreaAcres ),
5170 SquareNauticalMiles SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareNauticalMiles ),
5171 SquareDegrees SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareDegrees ),
5172 SquareCentimeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareCentimeters ),
5173 SquareMillimeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMillimeters ),
5174 SquareInches,
5175 Unknown SIP_MONKEYPATCH_COMPAT_NAME( AreaUnknownUnit ),
5176 };
5177 Q_ENUM( AreaUnit )
5178
5179
5187 {
5188 CubicMeters SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicMeters ),
5189 CubicFeet SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicFeet ),
5190 CubicYards SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicYards ),
5191 Barrel SIP_MONKEYPATCH_COMPAT_NAME( VolumeBarrel ),
5192 CubicDecimeter SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicDecimeter ),
5193 Liters SIP_MONKEYPATCH_COMPAT_NAME( VolumeLiters ),
5194 GallonUS SIP_MONKEYPATCH_COMPAT_NAME( VolumeGallonUS ),
5195 CubicInch SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicInch ),
5196 CubicCentimeter SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicCentimeter ),
5197 CubicDegrees SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicDegrees ),
5198 Unknown SIP_MONKEYPATCH_COMPAT_NAME( VolumeUnknownUnit ),
5199 };
5200 Q_ENUM( VolumeUnit )
5201
5202
5210 {
5211 Degrees SIP_MONKEYPATCH_COMPAT_NAME( AngleDegrees ),
5212 Radians SIP_MONKEYPATCH_COMPAT_NAME( AngleRadians ),
5214 MinutesOfArc SIP_MONKEYPATCH_COMPAT_NAME( AngleMinutesOfArc ),
5215 SecondsOfArc SIP_MONKEYPATCH_COMPAT_NAME( AngleSecondsOfArc ),
5217 MilliradiansSI SIP_MONKEYPATCH_COMPAT_NAME( AngleMilliradiansSI ),
5218 MilNATO SIP_MONKEYPATCH_COMPAT_NAME( AngleMilNATO ),
5219 Unknown SIP_MONKEYPATCH_COMPAT_NAME( AngleUnknownUnit ),
5220 };
5221 Q_ENUM( AngleUnit )
5222
5223
5231 {
5232 Milliseconds SIP_MONKEYPATCH_COMPAT_NAME( TemporalMilliseconds ),
5233 Seconds SIP_MONKEYPATCH_COMPAT_NAME( TemporalSeconds ),
5234 Minutes SIP_MONKEYPATCH_COMPAT_NAME( TemporalMinutes ),
5235 Hours SIP_MONKEYPATCH_COMPAT_NAME( TemporalHours ),
5236 Days SIP_MONKEYPATCH_COMPAT_NAME( TemporalDays ),
5237 Weeks SIP_MONKEYPATCH_COMPAT_NAME( TemporalWeeks ),
5238 Months SIP_MONKEYPATCH_COMPAT_NAME( TemporalMonths ),
5239 Years SIP_MONKEYPATCH_COMPAT_NAME( TemporalYears ),
5240 Decades SIP_MONKEYPATCH_COMPAT_NAME( TemporalDecades ),
5241 Centuries SIP_MONKEYPATCH_COMPAT_NAME( TemporalCenturies ),
5242 IrregularStep SIP_MONKEYPATCH_COMPAT_NAME( TemporalIrregularStep ),
5243 Unknown SIP_MONKEYPATCH_COMPAT_NAME( TemporalUnknownUnit )
5244 };
5245 Q_ENUM( TemporalUnit )
5246
5247
5255 {
5256 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( RenderMillimeters ),
5257 MapUnits SIP_MONKEYPATCH_COMPAT_NAME( RenderMapUnits ),
5258 Pixels SIP_MONKEYPATCH_COMPAT_NAME( RenderPixels ),
5259 Percentage SIP_MONKEYPATCH_COMPAT_NAME( RenderPercentage ),
5261 Inches SIP_MONKEYPATCH_COMPAT_NAME( RenderInches ),
5262 Unknown SIP_MONKEYPATCH_COMPAT_NAME( RenderUnknownUnit ),
5263 MetersInMapUnits SIP_MONKEYPATCH_COMPAT_NAME( RenderMetersInMapUnits ),
5264 };
5265 Q_ENUM( RenderUnit )
5266
5267
5275 {
5276 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( LayoutMillimeters ),
5277 Centimeters SIP_MONKEYPATCH_COMPAT_NAME( LayoutCentimeters ),
5278 Meters SIP_MONKEYPATCH_COMPAT_NAME( LayoutMeters ),
5279 Inches SIP_MONKEYPATCH_COMPAT_NAME( LayoutInches ),
5280 Feet SIP_MONKEYPATCH_COMPAT_NAME( LayoutFeet ),
5282 Picas SIP_MONKEYPATCH_COMPAT_NAME( LayoutPicas ),
5283 Pixels SIP_MONKEYPATCH_COMPAT_NAME( LayoutPixels )
5284 };
5285 Q_ENUM( LayoutUnit )
5286
5287
5295 {
5296 PaperUnits SIP_MONKEYPATCH_COMPAT_NAME( LayoutPaperUnits ),
5297 ScreenUnits SIP_MONKEYPATCH_COMPAT_NAME( LayoutScreenUnits )
5298 };
5299 Q_ENUM( LayoutUnitType )
5300
5301
5309 {
5310 Debug SIP_MONKEYPATCH_COMPAT_NAME( FlagDebug ) = 1 << 1,
5311 OutlineOnly SIP_MONKEYPATCH_COMPAT_NAME( FlagOutlineOnly ) = 1 << 2,
5312 Antialiasing SIP_MONKEYPATCH_COMPAT_NAME( FlagAntialiasing ) = 1 << 3,
5313 UseAdvancedEffects SIP_MONKEYPATCH_COMPAT_NAME( FlagUseAdvancedEffects ) = 1 << 4,
5314 ForceVectorOutput SIP_MONKEYPATCH_COMPAT_NAME( FlagForceVectorOutput ) = 1 << 5,
5315 HideCoverageLayer SIP_MONKEYPATCH_COMPAT_NAME( FlagHideCoverageLayer ) = 1 << 6,
5316 DrawSelection SIP_MONKEYPATCH_COMPAT_NAME( FlagDrawSelection ) = 1 << 7,
5317 DisableTiledRasterLayerRenders SIP_MONKEYPATCH_COMPAT_NAME( FlagDisableTiledRasterLayerRenders ) = 1 << 8,
5318 RenderLabelsByMapLayer SIP_MONKEYPATCH_COMPAT_NAME( FlagRenderLabelsByMapLayer ) = 1 << 9,
5319 LosslessImageRendering SIP_MONKEYPATCH_COMPAT_NAME( FlagLosslessImageRendering ) = 1 << 10,
5320 SynchronousLegendGraphics SIP_MONKEYPATCH_COMPAT_NAME( FlagSynchronousLegendGraphics ) = 1 << 11,
5321 AlwaysUseGlobalMasks SIP_MONKEYPATCH_COMPAT_NAME( FlagAlwaysUseGlobalMasks ) = 1 << 12,
5322 LimitCoverageLayerRenderToCurrentFeature = 1 << 13,
5323 };
5324 Q_ENUM( LayoutRenderFlag )
5325
5326
5334 Q_FLAG( LayoutRenderFlags )
5335
5344 {
5345 SVG SIP_MONKEYPATCH_COMPAT_NAME( FormatSVG ) = 0,
5346 Raster SIP_MONKEYPATCH_COMPAT_NAME( FormatRaster ),
5347 Unknown SIP_MONKEYPATCH_COMPAT_NAME( FormatUnknown ),
5348 };
5349 Q_ENUM( PictureFormat )
5350
5351
5356 enum class ScaleCalculationMethod : int
5357 {
5358 HorizontalTop = 0,
5359 HorizontalMiddle,
5360 HorizontalBottom,
5361 HorizontalAverage,
5362 AtEquator,
5363 };
5364 Q_ENUM( ScaleCalculationMethod )
5365
5366
5379 Q_ENUM( ScaleBarAlignment )
5380
5381
5389 {
5390 Fixed SIP_MONKEYPATCH_COMPAT_NAME( SegmentSizeFixed ) = 0,
5391 FitWidth SIP_MONKEYPATCH_COMPAT_NAME( SegmentSizeFitWidth ) = 1
5392 };
5393 Q_ENUM( ScaleBarSegmentSizeMode )
5394
5395
5403 {
5404 AboveSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelAboveSegment ) = 0,
5405 BelowSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelBelowSegment ),
5406 };
5407 Q_ENUM( ScaleBarDistanceLabelVerticalPlacement )
5408
5409
5417 {
5418 CenteredEdge SIP_MONKEYPATCH_COMPAT_NAME( LabelCenteredEdge ) = 0,
5419 CenteredSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelCenteredSegment ),
5420 };
5421 Q_ENUM( ScaleBarDistanceLabelHorizontalPlacement )
5422
5423
5424
5432 {
5433 MapUnits SIP_MONKEYPATCH_COMPAT_NAME( MapUnit ),
5436 DynamicPageSizeBased,
5437 };
5438 Q_ENUM( MapGridUnit )
5439
5440
5448 {
5450 LineCrosses SIP_MONKEYPATCH_COMPAT_NAME( Cross ),
5451 Markers,
5452 FrameAndAnnotationsOnly SIP_MONKEYPATCH_COMPAT_NAME( FrameAnnotationsOnly )
5453 };
5454 Q_ENUM( MapGridStyle )
5455
5456
5464 {
5465 ShowAll = 0,
5466 LatitudeOnly,
5467 LongitudeOnly,
5468 HideAll
5469 };
5470 Q_ENUM( MapGridComponentVisibility )
5471
5472
5480 {
5481 InsideMapFrame = 0,
5482 OutsideMapFrame,
5483 };
5484 Q_ENUM( MapGridAnnotationPosition )
5485
5486
5494 {
5495 Horizontal = 0,
5496 Vertical,
5497 VerticalDescending,
5498 BoundaryDirection,
5499 AboveTick,
5500 OnTick,
5501 UnderTick,
5502 };
5503 Q_ENUM( MapGridAnnotationDirection )
5504
5505
5513 {
5514 Decimal = 0,
5515 DegreeMinute,
5516 DegreeMinuteSecond,
5517 DecimalWithSuffix,
5518 DegreeMinuteNoSuffix,
5519 DegreeMinutePadded,
5520 DegreeMinuteSecondNoSuffix,
5521 DegreeMinuteSecondPadded,
5522 CustomFormat
5523 };
5524 Q_ENUM( MapGridAnnotationFormat )
5525
5526
5540 Q_ENUM( MapGridBorderSide )
5541
5542
5550 {
5551 NoFrame = 0,
5552 Zebra,
5553 InteriorTicks,
5554 ExteriorTicks,
5555 InteriorExteriorTicks,
5556 LineBorder,
5557 LineBorderNautical,
5558 ZebraNautical,
5559 };
5560 Q_ENUM( MapGridFrameStyle )
5561
5562
5570 {
5571 OrthogonalTicks = 0,
5572 NormalizedTicks,
5573 };
5574 Q_ENUM( MapGridTickLengthMode )
5575
5576
5577
5585 {
5586 Left SIP_MONKEYPATCH_COMPAT_NAME( FrameLeft ) = 0x01,
5587 Right SIP_MONKEYPATCH_COMPAT_NAME( FrameRight ) = 0x02,
5588 Top SIP_MONKEYPATCH_COMPAT_NAME( FrameTop ) = 0x04,
5589 Bottom SIP_MONKEYPATCH_COMPAT_NAME( FrameBottom ) = 0x08
5590 };
5591 Q_ENUM( MapGridFrameSideFlag )
5592
5593
5601 Q_FLAG( MapGridFrameSideFlags )
5602
5611 {
5612 Longitude = 0,
5613 Latitude
5614 };
5615 Q_ENUM( MapGridAnnotationType )
5616
5617
5622 enum class InputControllerType : int
5623 {
5624 Map2D,
5625 Map3D
5626 };
5628
5635 {
5636 NotSet,
5637 Unknown,
5638 OrdinaryTable,
5639 Index,
5640 Sequence,
5641 View,
5642 MaterializedView,
5643 CompositeType,
5644 ToastTable,
5645 ForeignTable,
5646 PartitionedTable,
5647 };
5648 Q_ENUM( PostgresRelKind )
5649
5650
5656 {
5657 SetFieldComment = 1 << 0,
5658 SetFieldAlias = 1 << 1,
5659 SetTableComment = 1 << 2,
5660 EditFieldDomain = 1 << 3,
5661 DeleteFieldDomain = 1 << 4,
5662 };
5663 Q_ENUM( DatabaseProviderConnectionCapability2 )
5666
5673 {
5674 SetGeometryColumnName = 1 << 0,
5675 SetPrimaryKeyName = 1 << 1,
5676 };
5677 Q_ENUM( DatabaseProviderTableImportCapability )
5680
5687 {
5688 SaveToDatabase = 1 << 1,
5689 LoadFromDatabase = 1 << 2,
5690 DeleteFromDatabase = 1 << 3
5691 };
5695
5696
5702 {
5703 LastProfile,
5704 DefaultProfile,
5705 AskUser,
5706 };
5707 Q_ENUM( UserProfileSelectionPolicy )
5708
5709
5717 {
5718 Container SIP_MONKEYPATCH_COMPAT_NAME( AeTypeContainer ),
5719 Field SIP_MONKEYPATCH_COMPAT_NAME( AeTypeField ),
5720 Relation SIP_MONKEYPATCH_COMPAT_NAME( AeTypeRelation ),
5721 QmlElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeQmlElement ),
5722 HtmlElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeHtmlElement ),
5723 Action SIP_MONKEYPATCH_COMPAT_NAME( AeTypeAction ),
5724 TextElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeTextElement ),
5725 SpacerElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeSpacerElement ),
5726 Invalid SIP_MONKEYPATCH_COMPAT_NAME( AeTypeInvalid ),
5727 };
5728 Q_ENUM( AttributeEditorType )
5729
5730
5736 {
5737 GroupBox,
5738 Tab,
5739 Row,
5740 };
5741 Q_ENUM( AttributeEditorContainerType )
5742
5743
5751 {
5752 AutoGenerated SIP_MONKEYPATCH_COMPAT_NAME( GeneratedLayout ) = 0,
5753 DragAndDrop SIP_MONKEYPATCH_COMPAT_NAME( TabLayout ) = 1,
5754 UiFile SIP_MONKEYPATCH_COMPAT_NAME( UiFileLayout ) = 2
5755 };
5756 Q_ENUM( AttributeFormLayout )
5757
5758
5766 {
5767 Default SIP_MONKEYPATCH_COMPAT_NAME( SuppressDefault ) = 0,
5768 On SIP_MONKEYPATCH_COMPAT_NAME( SuppressOn ) = 1,
5769 Off SIP_MONKEYPATCH_COMPAT_NAME( SuppressOff ) = 2
5770 };
5771 Q_ENUM( AttributeFormSuppression )
5772
5773
5781 {
5782 NoSource SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceNone ) = 0,
5783 File SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceFile ) = 1,
5784 Dialog SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceDialog ) = 2,
5785 Environment SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceEnvironment ) = 3
5786 };
5787 Q_ENUM( AttributeFormPythonInitCodeSource )
5788
5789
5795 {
5796 NotAllowed = 0,
5797 AllowedDefaultOn = 1,
5798 AllowedDefaultOff = 2,
5799 };
5800 Q_ENUM( AttributeFormReuseLastValuePolicy )
5801
5802
5808 {
5810 PointCloud,
5811 RasterCalculator,
5812 };
5813 Q_ENUM( ExpressionType )
5814
5815
5823 {
5824 NoSymbology = 0,
5825 PerFeature SIP_MONKEYPATCH_COMPAT_NAME( FeatureSymbology ),
5826 PerSymbolLayer SIP_MONKEYPATCH_COMPAT_NAME( SymbolLayerSymbology )
5827 };
5828 Q_ENUM( FeatureSymbologyExport )
5829
5830
5835 enum class VectorTileProviderFlag : int SIP_ENUM_BASETYPE( IntFlag )
5836 {
5837 AlwaysUseTileMatrixSetFromProvider = 1 << 1,
5838 };
5839 Q_ENUM( VectorTileProviderFlag )
5840
5841
5847 Q_FLAG( VectorTileProviderFlags )
5848
5854 {
5855 ReadLayerMetadata = 1 << 1,
5856 };
5857 Q_ENUM( VectorTileProviderCapability )
5858
5859
5866
5873 {
5874 Available,
5875 NotAvailable,
5876 AvailableNoChildren,
5877 UseLowerZoomLevelTile,
5878 };
5879 Q_ENUM( TileAvailability )
5880
5881
5887 {
5888 ReadLayerMetadata = 1 << 1,
5889 };
5890 Q_ENUM( TiledSceneProviderCapability )
5891
5892
5899
5906 {
5907 Region,
5908 OrientedBox,
5909 Sphere,
5910 };
5911 Q_ENUM( TiledSceneBoundingVolumeType )
5912
5913
5922 {
5923 Replacement,
5924 Additive,
5925 };
5926 Q_ENUM( TileRefinementProcess )
5927
5928
5934 {
5935 NoChildren,
5936 Available,
5937 NeedFetching,
5938 };
5939 Q_ENUM( TileChildrenAvailability )
5940
5941
5946 enum class TiledSceneRequestFlag : int SIP_ENUM_BASETYPE( IntFlag )
5947 {
5948 NoHierarchyFetch = 1 << 0,
5949 };
5950 Q_ENUM( TiledSceneRequestFlag )
5951
5952
5958 Q_FLAG( TiledSceneRequestFlags )
5959
5965 enum class TiledSceneRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
5966 {
5967 RequiresTextures = 1 << 0,
5968 ForceRasterRender = 1 << 1,
5969 RendersTriangles = 1 << 2,
5970 RendersLines = 1 << 3,
5971 };
5972 Q_ENUM( TiledSceneRendererFlag )
5973
5974
5980 Q_FLAG( TiledSceneRendererFlags )
5981
5987 enum class GdalResampleAlgorithm : int
5988 {
5989 RA_NearestNeighbour = 0,
5990 RA_Bilinear = 1,
5991 RA_Cubic = 2,
5992 RA_CubicSpline = 3,
5993 RA_Lanczos = 4,
5994 RA_Average = 5,
5995 RA_Mode = 6,
5996 RA_Max = 8,
5997 RA_Min = 9,
5998 RA_Median = 10,
5999 RA_Q1 = 11,
6000 RA_Q3 = 12,
6001 };
6002 Q_ENUM( GdalResampleAlgorithm )
6003
6004
6009 enum class VsiHandlerType : int
6010 {
6011 Invalid,
6012 Archive,
6013 Network,
6014 Cloud,
6015 Memory,
6016 Other,
6017 };
6018 Q_ENUM( VsiHandlerType )
6019
6020 // TODO QGIS 5: make All include all values (we can't do this before 4.0, as we need to keep
6021 // compatibility with code which expects all these statistics to give numeric results)
6022
6023
6028 enum class ZonalStatistic : int SIP_ENUM_BASETYPE( IntFlag )
6029 {
6030 Count = 1 << 0,
6031 Sum = 1 << 1,
6032 Mean = 1 << 2,
6033 Median = 1 << 3,
6034 StDev = 1 << 4,
6035 Min = 1 << 5,
6036 Max = 1 << 6,
6037 Range = 1 << 7,
6038 Minority = 1 << 8,
6039 Majority = 1 << 9,
6040 Variety = 1 << 10,
6041 Variance = 1 << 11,
6042 MinimumPoint = 1 << 12,
6043 MaximumPoint = 1 << 13,
6044 All = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
6045 AllNumeric = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
6046 Default = Count | Sum | Mean,
6047 };
6048 Q_ENUM( ZonalStatistic )
6049
6050
6056 Q_FLAG( ZonalStatistics )
6057
6063 enum class ZonalStatisticResult : int
6064 {
6066 LayerTypeWrong = 1,
6067 LayerInvalid,
6068 RasterInvalid,
6069 RasterBandInvalid,
6070 FailedToCreateField = 8,
6071 Canceled = 9
6072 };
6073 Q_ENUM( ZonalStatisticResult )
6074
6075
6082 {
6083 Count,
6084 CountDistinct,
6085 CountMissing,
6086 Min,
6087 Max,
6088 Sum,
6089 Mean,
6090 Median,
6091 StDev,
6092 StDevSample,
6093 Range,
6094 Minority,
6095 Majority,
6096 FirstQuartile,
6097 ThirdQuartile,
6098 InterQuartileRange,
6099 StringMinimumLength,
6100 StringMaximumLength,
6101 StringConcatenate,
6102 GeometryCollect,
6103 ArrayAggregate,
6104 StringConcatenateUnique
6105 };
6106 Q_ENUM( Aggregate )
6107
6108
6114 {
6115 Count = 1 << 0,
6116 CountMissing = 1 << 15,
6117 Sum = 1 << 1,
6118 Mean = 1 << 2,
6119 Median = 1 << 3,
6120 StDev = 1 << 4,
6121 StDevSample = 1 << 5,
6122 Min = 1 << 6,
6123 Max = 1 << 7,
6124 Range = 1 << 8,
6125 Minority = 1 << 9,
6126 Majority = 1 << 10,
6127 Variety = 1 << 11,
6128 FirstQuartile = 1 << 12,
6129 ThirdQuartile = 1 << 13,
6130 InterQuartileRange = 1 << 14,
6131 First = 1 << 16,
6132 Last = 1 << 17,
6133 All = Count | CountMissing | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | FirstQuartile | ThirdQuartile | InterQuartileRange | First | Last
6134 };
6135 Q_ENUM( Statistic )
6136
6137
6143 Q_FLAG( Statistics )
6144
6151 {
6152 Count = 1,
6153 CountDistinct = 2,
6154 CountMissing = 4,
6155 Min = 8,
6156 Max = 16,
6157 Range = 32,
6158 All = Count | CountDistinct | CountMissing | Min | Max | Range,
6159 };
6160 Q_ENUM( DateTimeStatistic )
6161
6162
6168 Q_FLAG( DateTimeStatistics )
6169
6176 {
6177 Count = 1,
6178 CountDistinct = 2,
6179 CountMissing = 4,
6180 Min = 8,
6181 Max = 16,
6182 MinimumLength = 32,
6183 MaximumLength = 64,
6184 MeanLength = 128,
6185 Minority = 256,
6186 Majority = 512,
6187 All = Count | CountDistinct | CountMissing | Min | Max | MinimumLength | MaximumLength | MeanLength | Minority | Majority,
6188 };
6189 Q_ENUM( StringStatistic )
6190
6191
6197 Q_FLAG( StringStatistics )
6198
6205 {
6206 NoStatistic = 0,
6207 Min = 1,
6208 Max = 1 << 1,
6209 Range = 1 << 2,
6210 Sum = 1 << 3,
6211 Mean = 1 << 4,
6212 StdDev = 1 << 5,
6213 SumOfSquares = 1 << 6,
6214 All = Min | Max | Range | Sum | Mean | StdDev | SumOfSquares
6215 };
6216 Q_ENUM( RasterBandStatistic )
6217
6218
6224 Q_FLAG( RasterBandStatistics )
6225
6231 enum class SensorThingsEntity : int
6232 {
6233 Invalid,
6234 Thing,
6235 Location,
6236 HistoricalLocation,
6237 Datastream,
6238 Sensor,
6239 ObservedProperty,
6240 Observation,
6241 FeatureOfInterest,
6242 MultiDatastream,
6243 };
6244 Q_ENUM( SensorThingsEntity )
6245
6246
6251 enum class ColorModel : int
6252 {
6253 Rgb,
6254 Cmyk,
6255 };
6256 Q_ENUM( ColorModel )
6257
6258
6263 enum class DocumentationApi : int
6264 {
6265 PyQgis,
6266 PyQgisSearch,
6267 CppQgis,
6268 Qt,
6269 };
6270 Q_ENUM( DocumentationApi )
6271
6272
6277 enum class DocumentationBrowser : int
6278 {
6279 DeveloperToolsPanel,
6280 SystemWebBrowser,
6281 };
6282 Q_ENUM( DocumentationBrowser )
6283
6284
6289 enum class MouseHandlesAction : int
6290 {
6291 MoveItem,
6292 ResizeUp,
6293 ResizeDown,
6294 ResizeLeft,
6295 ResizeRight,
6296 ResizeLeftUp,
6297 ResizeRightUp,
6298 ResizeLeftDown,
6299 ResizeRightDown,
6300 RotateTopLeft,
6301 RotateTopRight,
6302 RotateBottomLeft,
6303 RotateBottomRight,
6304 SelectItem,
6305 NoAction
6306 };
6307 Q_ENUM( MouseHandlesAction )
6308
6309
6313 enum class MeshRangeLimit : int
6314 {
6315 NotSet,
6316 MinimumMaximum,
6317 };
6318 Q_ENUM( MeshRangeLimit )
6319
6320
6325 enum class MeshRangeExtent : int
6326 {
6327 WholeMesh,
6328 FixedCanvas,
6329 UpdatedCanvas,
6330 };
6331 Q_ENUM( MeshRangeExtent )
6332
6333
6339 enum class PointCloudAccessType : int
6340 {
6341 Local,
6342 Remote
6343 };
6344 Q_ENUM( PointCloudAccessType )
6345
6346
6351 {
6352 RenderExtents,
6353 RenderOverview,
6354 RenderOverviewAndExtents
6355 };
6356 Q_ENUM( PointCloudZoomOutRenderBehavior )
6357
6358
6363 {
6364 Standard = 0,
6365 Adaptive,
6366 AreaError,
6367 ConstantDensity
6368 };
6369 Q_ENUM( SegmentCalculationMethod )
6370
6371
6375 enum class StacObjectType : int
6376 {
6377 Unknown,
6378 Catalog,
6379 Collection,
6380 Item,
6381 };
6382 Q_ENUM( StacObjectType )
6383
6384
6389 {
6390 WmsScale = 1 << 0,
6391 WmsDpi = 1 << 1,
6392 };
6393 Q_ENUM( RasterProcessingParameterCapability )
6394
6395
6401
6407 {
6408 Status = Qt::UserRole + 1,
6409 Id,
6410 ElapsedTime,
6411 MaximumTime,
6412 Sort,
6413 };
6414 Q_ENUM( DevToolsNodeRole )
6415
6416
6421 enum class ExtrusionFace : int SIP_ENUM_BASETYPE( IntFlag )
6422 {
6423 NoFace = 0,
6424 Walls = 1 << 0,
6425 Roof = 1 << 1,
6426 Floor = 1 << 2
6427 };
6428 Q_ENUM( ExtrusionFace )
6429
6430
6434 Q_DECLARE_FLAGS( ExtrusionFaces, ExtrusionFace )
6435 Q_FLAG( ExtrusionFaces )
6436
6441 enum class TriangulationAlgorithm : int SIP_ENUM_BASETYPE( IntFlag )
6442 {
6443 ConstrainedDelaunay = 0,
6444 Earcut = 1 << 0
6445 };
6446 Q_ENUM( TriangulationAlgorithm )
6447
6448
6451 static const double DEFAULT_SEARCH_RADIUS_MM;
6452
6455
6461 static const QColor DEFAULT_HIGHLIGHT_COLOR;
6462
6466 static const double DEFAULT_HIGHLIGHT_BUFFER_MM;
6467
6472
6480 Q_DECL_DEPRECATED static const double SCALE_PRECISION;
6481
6486 static const double DEFAULT_Z_COORDINATE;
6487
6493 static const double DEFAULT_M_COORDINATE;
6494
6499 static const double UI_SCALE_FACTOR;
6500
6504 static const double DEFAULT_SNAP_TOLERANCE;
6505
6510
6514 static const int USER_CRS_START_ID;
6515
6517 static const double DEFAULT_POINT_SIZE;
6518
6520 static const double DEFAULT_LINE_WIDTH;
6521
6523 static const double DEFAULT_SEGMENT_EPSILON;
6524
6527
6530
6536 static QString defaultProjectScales();
6537
6543 static int geosVersionInt();
6544
6550 static int geosVersionMajor();
6551
6557 static int geosVersionMinor();
6558
6564 static int geosVersionPatch();
6565
6571 static QString geosVersion();
6572
6578 static bool hasSfcgal();
6579
6586 static int sfcgalVersionInt();
6587
6593 static bool hasGeographicLib();
6594
6601 static int geographicLibVersion();
6602
6608 Q_DECL_DEPRECATED static bool hasQtWebkit();
6609
6615 static QString geoNone()
6616 {
6617 return u"NONE"_s;
6618 }
6619
6625 static QString geographicCrsAuthId()
6626 {
6627 return u"EPSG:4326"_s;
6628 }
6629
6634 Q_DECL_DEPRECATED static QString geoWkt()
6635 {
6636 return QStringLiteral(
6637 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]] )"""
6638 );
6639 }
6640
6645 Q_DECL_DEPRECATED static QString geoProj4()
6646 {
6647 return u"+proj=longlat +datum=WGS84 +no_defs"_s;
6648 }
6649
6650};
6651
6654
6746Q_DECLARE_METATYPE( QTimeZone )
6747
6748// hack to workaround warnings when casting void pointers
6749// retrieved from QLibrary::resolve to function pointers.
6750// It's assumed that this works on all systems supporting
6751// QLibrary
6752#define cast_to_fptr(f) f
6753
6754
6762// based on Boojum's code from http://stackoverflow.com/questions/3556687/prevent-firing-signals-in-qt
6763template<class Object> class QgsSignalBlocker SIP_SKIP SIP_SKIP // clazy:exclude=rule-of-three
6764{
6765 public:
6766
6771 explicit QgsSignalBlocker( Object *object )
6772 : mObject( object )
6773 , mPreviousState( object->blockSignals( true ) )
6774 {}
6775
6777 {
6778 mObject->blockSignals( mPreviousState );
6779 }
6780
6782 Object *operator->() { return mObject; }
6783
6784 private:
6785
6786 Object *mObject = nullptr;
6787 bool mPreviousState;
6788
6789};
6790
6803// based on Boojum's code from http://stackoverflow.com/questions/3556687/prevent-firing-signals-in-qt
6804template<class Object> inline QgsSignalBlocker<Object> whileBlocking( Object *object ) SIP_SKIP SIP_SKIP
6805{
6806 return QgsSignalBlocker<Object>( object );
6807}
6808
6810CORE_EXPORT uint qHash( const QVariant &variant );
6811
6817inline QString qgsDoubleToString( double a, int precision = 17 )
6818{
6819 QString str;
6820 if ( precision )
6821 {
6822 if ( precision < 0 )
6823 {
6824 const double roundFactor = std::pow( 10, -precision );
6825 str = QString::number( static_cast< long long >( std::round( a / roundFactor ) * roundFactor ) );
6826 }
6827 else
6828 {
6829 str = QString::number( a, 'f', precision );
6830 if ( str.contains( '.'_L1 ) )
6831 {
6832 // remove ending 0s
6833 int idx = str.length() - 1;
6834 while ( str.at( idx ) == '0' && idx > 1 )
6835 {
6836 idx--;
6837 }
6838 if ( idx < str.length() - 1 )
6839 str.truncate( str.at( idx ) == '.' ? idx : idx + 1 );
6840 }
6841 }
6842 }
6843 else
6844 {
6845 str = QString::number( a, 'f', precision );
6846 }
6847 // avoid printing -0
6848 // see https://bugreports.qt.io/browse/QTBUG-71439
6849 if ( str == "-0"_L1 )
6850 {
6851 return "0"_L1;
6852 }
6853 return str;
6854}
6855
6862inline bool qgsNanCompatibleEquals( double a, double b )
6863{
6864 const bool aIsNan = std::isnan( a );
6865 const bool bIsNan = std::isnan( b );
6866 if ( aIsNan || bIsNan )
6867 return aIsNan && bIsNan;
6868
6869 return a == b;
6870}
6871
6872#ifndef SIP_RUN
6873
6881template<typename T>
6882inline bool qgsNumberNear( T a, T b, T epsilon = std::numeric_limits<T>::epsilon() * 4 )
6883{
6884 const bool aIsNan = std::isnan( a );
6885 const bool bIsNan = std::isnan( b );
6886 if ( aIsNan || bIsNan )
6887 return aIsNan && bIsNan;
6888
6889 const T diff = a - b;
6890 return diff >= -epsilon && diff <= epsilon;
6891}
6892#endif
6893
6900inline bool qgsDoubleNear( double a, double b, double epsilon = 4 * std::numeric_limits<double>::epsilon() )
6901{
6902 return qgsNumberNear<double>( a, b, epsilon );
6903}
6904
6911inline bool qgsFloatNear( float a, float b, float epsilon = 4 * FLT_EPSILON )
6912{
6913 return qgsNumberNear<float>( a, b, epsilon );
6914}
6915
6917inline bool qgsDoubleNearSig( double a, double b, int significantDigits = 10 )
6918{
6919 const bool aIsNan = std::isnan( a );
6920 const bool bIsNan = std::isnan( b );
6921 if ( aIsNan || bIsNan )
6922 return aIsNan && bIsNan;
6923
6924 // The most simple would be to print numbers as %.xe and compare as strings
6925 // but that is probably too costly
6926 // Then the fastest would be to set some bits directly, but little/big endian
6927 // has to be considered (maybe TODO)
6928 // Is there a better way?
6929 int aexp, bexp;
6930 const double ar = std::frexp( a, &aexp );
6931 const double br = std::frexp( b, &bexp );
6932
6933 return aexp == bexp &&
6934 std::round( ar * std::pow( 10.0, significantDigits ) ) == std::round( br * std::pow( 10.0, significantDigits ) );
6935}
6936
6941inline double qgsRound( double number, int places )
6942{
6943 const double m = ( number < 0.0 ) ? -1.0 : 1.0;
6944 const double scaleFactor = std::pow( 10.0, places );
6945 return ( std::round( number * m * scaleFactor ) / scaleFactor ) * m;
6946}
6947
6948#ifndef SIP_RUN
6949
6956template<class Key, class Value>
6957QString qgsMapJoinKeys( const QMap<Key, Value> &map, const QString &separator )
6958{
6959 QString result;
6960 for ( auto it = map.constBegin(); it != map.constEnd(); it++ )
6961 result += QString( "%1%2" ).arg( it.key() ).arg( separator );
6962
6963 result.chop( separator.size() );
6964 return result;
6965}
6966
6973template<class Key, class Value>
6974QString qgsMapJoinValues( const QMap<Key, Value> &map, const QString &separator )
6975{
6976 QString result;
6977 for ( auto it = map.constBegin(); it != map.constEnd(); it++ )
6978 result += QString( "%1%2" ).arg( it.value() ).arg( separator );
6979
6980 result.chop( separator.size() );
6981 return result;
6982}
6983
6990template<class T>
6991QString qgsSetJoin( const QSet<T> &set, const QString &separator )
6992{
6993 QString result;
6994 for ( auto it = set.constBegin(); it != set.constEnd(); it++ )
6995 result += QString( "%1%2" ).arg( *it ).arg( separator );
6996
6997 result.chop( separator.size() );
6998 return result;
6999}
7000
7002
7012namespace qgis
7013{
7014
7027 template<typename To, typename From> inline To down_cast( From *f )
7028 {
7029 static_assert(
7030 ( std::is_base_of<From,
7031 typename std::remove_pointer<To>::type>::value ),
7032 "target type not derived from source type" );
7033 Q_ASSERT( f == nullptr || dynamic_cast<To>( f ) != nullptr );
7034 return static_cast<To>( f );
7035 }
7036
7037 template<class T>
7038 QSet<T> listToSet( const QList<T> &list )
7039 {
7040 return QSet<T>( list.begin(), list.end() );
7041 }
7042
7043 template<class T>
7044 QList<T> setToList( const QSet<T> &set )
7045 {
7046 return QList<T>( set.begin(), set.end() );
7047 }
7048}
7049
7051#endif
7052
7057template<class T> const QList<T> qgsEnumList() SIP_SKIP
7058{
7059 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7060 Q_ASSERT( metaEnum.isValid() );
7061 QList<T> enumList;
7062 for ( int idx = 0; idx < metaEnum.keyCount(); ++idx )
7063 {
7064 enumList.append( static_cast<T>( metaEnum.value( idx ) ) );
7065 }
7066 return enumList;
7067}
7068
7074template<class T> const QMap<T, QString> qgsEnumMap() SIP_SKIP
7075{
7076 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7077 Q_ASSERT( metaEnum.isValid() );
7078 QMap<T, QString> enumMap;
7079 for ( int idx = 0; idx < metaEnum.keyCount(); ++idx )
7080 {
7081 enumMap.insert( static_cast<T>( metaEnum.value( idx ) ), QString( metaEnum.key( idx ) ) );
7082 }
7083 return enumMap;
7084}
7085
7091template<class T> QString qgsEnumValueToKey( const T &value, bool *returnOk = nullptr ) SIP_SKIP
7092{
7093 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7094 Q_ASSERT( metaEnum.isValid() );
7095 const char *key = metaEnum.valueToKey( static_cast<int>( value ) );
7096 if ( returnOk )
7097 {
7098 *returnOk = key ? true : false;
7099 }
7100 return QString::fromUtf8( key );
7101}
7102
7110template<class T> T qgsEnumKeyToValue( const QString &key, const T &defaultValue, bool tryValueAsKey = true, bool *returnOk = nullptr ) SIP_SKIP
7111{
7112 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7113 Q_ASSERT( metaEnum.isValid() );
7114 bool ok = false;
7115 T v = static_cast<T>( metaEnum.keyToValue( key.toUtf8().data(), &ok ) );
7116 if ( returnOk )
7117 {
7118 *returnOk = ok;
7119 }
7120 if ( ok )
7121 {
7122 return v;
7123 }
7124 else
7125 {
7126 // if conversion has failed, try with conversion from int value
7127 if ( tryValueAsKey )
7128 {
7129 bool canConvert = false;
7130 const int intValue = key.toInt( &canConvert );
7131 if ( canConvert && metaEnum.valueToKey( intValue ) )
7132 {
7133 if ( returnOk )
7134 {
7135 *returnOk = true;
7136 }
7137 return static_cast<T>( intValue );
7138 }
7139 }
7140 }
7141 return defaultValue;
7142}
7143
7149template<class T> QString qgsFlagValueToKeys( const T &value, bool *returnOk = nullptr ) SIP_SKIP
7150{
7151 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7152 Q_ASSERT( metaEnum.isValid() );
7153 int intValue = static_cast<int>( value );
7154 const QByteArray ba = metaEnum.valueToKeys( intValue );
7155 // check that the int value does correspond to a flag
7156 // see https://stackoverflow.com/a/68495949/1548052
7157 const int intValueCheck = metaEnum.keysToValue( ba );
7158 bool ok = intValue == intValueCheck;
7159 if ( returnOk )
7160 *returnOk = ok;
7161 return ok ? QString::fromUtf8( ba ) : QString();
7162}
7163
7171template<class T> T qgsFlagKeysToValue( const QString &keys, const T &defaultValue, bool tryValueAsKey = true, bool *returnOk = nullptr ) SIP_SKIP
7172{
7173 if ( keys.isEmpty() )
7174 {
7175 if ( returnOk )
7176 {
7177 *returnOk = false;
7178 }
7179 return defaultValue;
7180 }
7181 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7182 Q_ASSERT( metaEnum.isValid() );
7183 bool ok = false;
7184 T v = static_cast<T>( metaEnum.keysToValue( keys.toUtf8().constData(), &ok ) );
7185 if ( returnOk )
7186 {
7187 *returnOk = ok;
7188 }
7189 if ( ok )
7190 {
7191 return v;
7192 }
7193 else
7194 {
7195 // if conversion has failed, try with conversion from int value
7196 if ( tryValueAsKey )
7197 {
7198 bool canConvert = false;
7199 const int intValue = keys.toInt( &canConvert );
7200 if ( canConvert )
7201 {
7202 const QByteArray keyArray = metaEnum.valueToKeys( intValue );
7203 const int intValueCheck = metaEnum.keysToValue( keyArray );
7204 if ( !keyArray.isEmpty() && intValue == intValueCheck )
7205 {
7206 if ( returnOk )
7207 {
7208 *returnOk = true;
7209 }
7210 return T( intValue );
7211 }
7212 }
7213 }
7214 }
7215 return defaultValue;
7216}
7217
7218
7227CORE_EXPORT double qgsPermissiveToDouble( QString string, bool &ok );
7228
7237CORE_EXPORT int qgsPermissiveToInt( QString string, bool &ok );
7238
7248CORE_EXPORT qlonglong qgsPermissiveToLongLong( QString string, bool &ok );
7249
7269CORE_EXPORT int qgsVariantCompare( const QVariant &lhs, const QVariant &rhs, bool strictTypeCheck = false );
7270
7281CORE_EXPORT bool qgsVariantLessThan( const QVariant &lhs, const QVariant &rhs );
7282
7291CORE_EXPORT bool qgsVariantEqual( const QVariant &lhs, const QVariant &rhs );
7292
7301CORE_EXPORT bool qgsVariantGreaterThan( const QVariant &lhs, const QVariant &rhs );
7302
7314inline bool operator> ( const QVariant &v1, const QVariant &v2 )
7315{
7316 return qgsVariantCompare( v1, v2, true ) > 0;
7317}
7318
7330inline bool operator< ( const QVariant &v1, const QVariant &v2 )
7331{
7332 return qgsVariantCompare( v1, v2, true ) < 0;
7333}
7334
7341Q_DECL_DEPRECATED CORE_EXPORT QString qgsVsiPrefix( const QString &path ) SIP_DEPRECATED;
7342
7348void CORE_EXPORT *qgsMalloc( size_t size ) SIP_SKIP;
7349
7354void CORE_EXPORT qgsFree( void *ptr ) SIP_SKIP;
7355
7356#ifndef SIP_RUN
7357
7359class ScopedIntIncrementor
7360{
7361 public:
7362
7363 ScopedIntIncrementor( int *variable )
7364 : mVariable( variable )
7365 {
7366 ( *mVariable )++;
7367 }
7368
7369 ScopedIntIncrementor( const ScopedIntIncrementor &other ) = delete;
7370 ScopedIntIncrementor &operator=( const ScopedIntIncrementor &other ) = delete;
7371
7372 void release()
7373 {
7374 if ( mVariable )
7375 ( *mVariable )--;
7376
7377 mVariable = nullptr;
7378 }
7379
7380 ~ScopedIntIncrementor()
7381 {
7382 release();
7383 }
7384
7385 private:
7386 int *mVariable = nullptr;
7387};
7389
7390#endif
7391
7397Q_DECL_DEPRECATED const long GEOSRID = 4326;
7398
7404Q_DECL_DEPRECATED const long GEOCRS_ID = 3452;
7405
7411Q_DECL_DEPRECATED const long GEO_EPSG_CRS_ID = 4326;
7412
7413typedef QMap<QString, QString> QgsStringMap SIP_SKIP;
7414
7423typedef unsigned long long qgssize;
7424
7425#ifndef SIP_RUN
7426#if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) || defined(__clang__)
7427
7428#define Q_NOWARN_DEPRECATED_PUSH \
7429 _Pragma("GCC diagnostic push") \
7430 _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"");
7431#define Q_NOWARN_DEPRECATED_POP \
7432 _Pragma("GCC diagnostic pop");
7433#define Q_NOWARN_UNREACHABLE_PUSH
7434#define Q_NOWARN_UNREACHABLE_POP
7435
7436#elif defined(_MSC_VER)
7437
7438#define Q_NOWARN_DEPRECATED_PUSH \
7439 __pragma(warning(push)) \
7440 __pragma(warning(disable:4996))
7441#define Q_NOWARN_DEPRECATED_POP \
7442 __pragma(warning(pop))
7443#define Q_NOWARN_UNREACHABLE_PUSH \
7444 __pragma(warning(push)) \
7445 __pragma(warning(disable:4702))
7446#define Q_NOWARN_UNREACHABLE_POP \
7447 __pragma(warning(pop))
7448#else
7449
7450#define Q_NOWARN_DEPRECATED_PUSH
7451#define Q_NOWARN_DEPRECATED_POP
7452#define Q_NOWARN_UNREACHABLE_PUSH
7453#define Q_NOWARN_UNREACHABLE_POP
7454
7455#endif
7456#endif
7457
7458#ifndef QGISEXTERN
7459#ifdef Q_OS_WIN
7460# define QGISEXTERN extern "C" __declspec( dllexport )
7461#else
7462# if defined(__GNUC__) || defined(__clang__)
7463# define QGISEXTERN extern "C" __attribute__ ((visibility ("default")))
7464# else
7465# define QGISEXTERN extern "C"
7466# endif
7467#endif
7468#endif
7469#endif
7470
7471#ifndef SIP_RUN
7472#ifdef _MSC_VER
7473#define BUILTIN_UNREACHABLE \
7474 __assume(false);
7475#elif defined(__GNUC__) && !defined(__clang__)
7476// Workaround a GCC bug where a -Wreturn-type warning is emitted in constructs
7477// like:
7478// switch( mVariableThatCanOnlyBeXorY )
7479// {
7480// case X:
7481// return "foo";
7482// case Y:
7483// return "foo";
7484// }
7485// See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87951
7486#define BUILTIN_UNREACHABLE \
7487 __builtin_unreachable();
7488#else
7489#define BUILTIN_UNREACHABLE
7490#endif
7491#endif // SIP_RUN
Provides global constants and enumerations for use throughout the application.
Definition qgis.h:59
MapGridTickLengthMode
Map grid tick length mode (useful for rotated grids).
Definition qgis.h:5570
DistanceUnitType
Types of distance units.
Definition qgis.h:5147
PieChartLabelType
Pie chart label types.
Definition qgis.h:3405
GnssConstellation
GNSS constellation.
Definition qgis.h:1962
SettingsOption
Settings options.
Definition qgis.h:743
EmbeddedScriptType
Type of Python Embedded in projects.
Definition qgis.h:458
ProfileGeneratorFlag
Flags that control the way the QgsAbstractProfileGenerator operate.
Definition qgis.h:4277
ProcessingSourceType
Processing data source types.
Definition qgis.h:3590
static const Qgis::MapToolUnit DEFAULT_SNAP_UNITS
Default snapping distance units.
Definition qgis.h:6509
GpsQualityIndicator
GPS signal quality indicator.
Definition qgis.h:1980
QFlags< MapGridFrameSideFlag > MapGridFrameSideFlags
Flags for controlling which side of the map a frame is drawn on.
Definition qgis.h:5600
DataItemProviderCapability
Capabilities for data item providers.
Definition qgis.h:995
ProcessingFileParameterBehavior
Flags which dictate the behavior of QgsProcessingParameterFile.
Definition qgis.h:3847
RasterizedRenderingPolicy
Policies controlling when rasterisation of content during renders is permitted.
Definition qgis.h:2761
QFlags< MapLayerRendererFlag > MapLayerRendererFlags
Flags which control how map layer renderers behave.
Definition qgis.h:2854
ProjectReadFlag
Flags which control project read behavior.
Definition qgis.h:4361
QFlags< DatabaseProviderTableImportCapability > DatabaseProviderTableImportCapabilities
Definition qgis.h:5678
QFlags< BabelCommandFlag > BabelCommandFlags
Babel command flags.
Definition qgis.h:2075
CurvedLabelMode
Modes which determine how curved labels are generated and placed.
Definition qgis.h:1244
MapToolUnit
Type of unit of tolerance value from settings.
Definition qgis.h:5053
PlotAxisSuffixPlacement
Placement options for suffixes in the labels for axis of plots.
Definition qgis.h:3377
static const double DEFAULT_LINE_WIDTH
The default width (in millimeters) for line symbols.
Definition qgis.h:6520
ProcessingModelChildAlgorithmExecutionStatus
Reflects the status of a child algorithm in a Processing model.
Definition qgis.h:3922
QFlags< GpsInformationComponent > GpsInformationComponents
GPS information component.
Definition qgis.h:2042
ScaleBarDistanceLabelHorizontalPlacement
Scale bar distance label horizontal placement.
Definition qgis.h:5417
PointCloudSymbol
Rendering symbols for point cloud points.
Definition qgis.h:4305
SymbolRotationMode
Modes for handling how symbol and text entity rotation is handled when maps are rotated.
Definition qgis.h:805
static const double DEFAULT_HIGHLIGHT_MIN_WIDTH_MM
Default highlight line/stroke minimum width in mm.
Definition qgis.h:6471
static QString version()
Version string.
Definition qgis.cpp:682
GeometryValidityFlag
Geometry validity check flags.
Definition qgis.h:2129
QFlags< RasterProviderCapability > RasterProviderCapabilities
Raster data provider capabilities.
Definition qgis.h:4978
ExpressionType
Expression types.
Definition qgis.h:5808
MapLayerActionFlag
Map layer action flags.
Definition qgis.h:4723
ScaleBarDistanceLabelVerticalPlacement
Scale bar distance label vertical placement.
Definition qgis.h:5403
MapLayerProperty
Generic map layer properties.
Definition qgis.h:2337
VectorProviderCapability
Vector data provider capabilities.
Definition qgis.h:518
RasterProcessingParameterCapability
Capabilities of a raster layer processing parameter.
Definition qgis.h:6389
BufferSide
Side of line to buffer.
Definition qgis.h:2154
RasterResamplingStage
Stage at which raster resampling occurs.
Definition qgis.h:1528
QFlags< MapLayerActionTarget > MapLayerActionTargets
Map layer action targets.
Definition qgis.h:4712
VectorTileProviderCapability
Enumeration with capabilities that vector tile data providers might implement.
Definition qgis.h:5854
ProjectTrustStatus
Project trust status.
Definition qgis.h:471
MultiPartLabelingBehavior
Behavior modifier for labeling features with multi-part geometries.
Definition qgis.h:1283
AltitudeClamping
Altitude clamping.
Definition qgis.h:4041
static const int PREVIEW_JOB_DELAY_MS
Delay between the scheduling of 2 preview jobs.
Definition qgis.h:6526
VectorTileProviderFlag
Flags for vector tile data providers.
Definition qgis.h:5836
VectorTemporalMode
Vector layer temporal feature modes.
Definition qgis.h:2638
SublayerFlag
Flags which reflect the properties of sublayers in a dataset.
Definition qgis.h:1467
QFlags< ProjectCapability > ProjectCapabilities
Flags which control project capabilities.
Definition qgis.h:4402
LabelLinePlacementFlag
Line placement flags, which control how candidates are generated for a linear feature.
Definition qgis.h:1333
QFlags< UriCleaningFlag > UriCleaningFlags
Flags for cleaning layer URIs.
Definition qgis.h:1440
CoordinateDisplayType
Formats for displaying coordinates.
Definition qgis.h:4511
ProcessingParameterTypeFlag
Flags which dictate the behavior of Processing parameter types.
Definition qgis.h:3795
QFlags< VectorRenderingSimplificationFlag > VectorRenderingSimplificationFlags
Simplification flags for vector feature rendering.
Definition qgis.h:3102
DashPatternSizeAdjustment
Dash pattern size adjustment options.
Definition qgis.h:3350
static const double DEFAULT_Z_COORDINATE
Default Z coordinate value.
Definition qgis.h:6486
GpsFixStatus
GPS fix status.
Definition qgis.h:1947
AnnotationItemNodeType
Annotation item node types.
Definition qgis.h:2565
static const char * QGIS_DEV_VERSION
The development version.
Definition qgis.h:87
VectorFileWriterCapability
Capabilities supported by a QgsVectorFileWriter object.
Definition qgis.h:1092
QFlags< MapSettingsFlag > MapSettingsFlags
Map settings flags.
Definition qgis.h:2796
CrsIdentifierType
Available identifier string types for representing coordinate reference systems.
Definition qgis.h:2475
QFlags< RasterRendererFlag > RasterRendererFlags
Flags which control behavior of raster renderers.
Definition qgis.h:1570
AngularDirection
Angular directions.
Definition qgis.h:3491
DriveType
Drive types.
Definition qgis.h:1145
UnitType
Unit types.
Definition qgis.h:5068
ContentStatus
Status for fetched or stored content.
Definition qgis.h:1903
QFlags< SelectionFlag > SelectionFlags
Flags which control feature selection behavior.
Definition qgis.h:1865
SnappingType
SnappingTypeFlag defines on what object the snapping is performed.
Definition qgis.h:768
LayoutUnit
Layout measurement units.
Definition qgis.h:5275
Q_ENUM(GpsFixStatus)
RelationshipStrength
Relationship strength.
Definition qgis.h:4464
Q_ENUM(GnssConstellation)
PaintEffectFlag
Flags which control how paint effects behave.
Definition qgis.h:2863
MarkerLinePlacement
Defines how/where the symbols should be placed on a line.
Definition qgis.h:3188
QFlags< ProjectReadFlag > ProjectReadFlags
Project load flags.
Definition qgis.h:4380
LegendComponent
Component of legends which can be styled.
Definition qgis.h:4634
Point3DShape
3D point shape types.
Definition qgis.h:4183
GeometryOperationResult
Success or failure of a geometry operation.
Definition qgis.h:2100
QFlags< StringStatistic > StringStatistics
Statistics to be calculated for string values.
Definition qgis.h:6196
BrowserItemState
Browser item states.
Definition qgis.h:957
AttributeEditorContainerType
Attribute editor container types.
Definition qgis.h:5736
QFlags< TiledSceneProviderCapability > TiledSceneProviderCapabilities
Tiled scene data provider capabilities.
Definition qgis.h:5897
FeatureRequestFilterType
Types of feature request filters.
Definition qgis.h:2280
MarkerClipMode
Marker clipping modes.
Definition qgis.h:3308
GpsNavigationStatus
GPS navigation status.
Definition qgis.h:2000
AnnotationItemFlag
Flags for annotation items.
Definition qgis.h:2522
AttributeFormReuseLastValuePolicy
Attribute form policy for reusing last entered values.
Definition qgis.h:5795
RenderSubcomponentProperty
Rendering subcomponent properties.
Definition qgis.h:3111
ProcessingTinInputLayerType
Defines the type of input layer for a Processing TIN input.
Definition qgis.h:3937
QFlags< DataProviderFlag > DataProviderFlags
Data provider flags.
Definition qgis.h:2373
Statistic
Available generic statistics.
Definition qgis.h:6114
TriangulationAlgorithm
Triangulation algorithms.
Definition qgis.h:6442
SymbolRenderHint
Flags controlling behavior of symbols during rendering.
Definition qgis.h:788
AngleUnit
Units of angles.
Definition qgis.h:5210
MapGridAnnotationPosition
Position for map grid annotations.
Definition qgis.h:5480
CaptureTechnique
Capture technique.
Definition qgis.h:404
static QString geosVersion()
GEOS string version linked.
Definition qgis.cpp:704
SpatialIndexPresence
Enumeration of spatial index presence states.
Definition qgis.h:577
BrowserItemCapability
Browser item capabilities.
Definition qgis.h:970
AttributeFormSuppression
Available form types for layout of the attribute form editor.
Definition qgis.h:5766
QFlags< AuthConfigurationStorageCapability > AuthConfigurationStorageCapabilities
Authentication configuration storage capabilities.
Definition qgis.h:150
QFlags< LayerTreeFilterFlag > LayerTreeFilterFlags
Layer tree filter flags.
Definition qgis.h:4604
LayerTreeInsertionMethod
Layer tree insertion methods.
Definition qgis.h:4581
RasterProviderCapability
Raster data provider capabilities.
Definition qgis.h:4958
DatabaseProviderTableImportCapability
Represents capabilities of a database provider connection when importing table data.
Definition qgis.h:5673
LineClipMode
Line clipping modes.
Definition qgis.h:3322
static const double DEFAULT_SNAP_TOLERANCE
Default snapping distance tolerance.
Definition qgis.h:6504
VectorRenderingSimplificationFlag
Simplification flags for vector feature rendering.
Definition qgis.h:3087
QFlags< GeometryValidityFlag > GeometryValidityFlags
Geometry validity flags.
Definition qgis.h:2133
BrowserDirectoryMonitoring
Browser directory item monitoring switches.
Definition qgis.h:1044
VsiHandlerType
GDAL VSI handler types.
Definition qgis.h:6010
NetworkRequestFlag
Flags controlling behavior of network requests.
Definition qgis.h:174
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:673
TilePixelRatio
DpiMode enum.
Definition qgis.h:3431
DatabaseProviderConnectionCapability2
The Capability enum represents the extended operations supported by the connection.
Definition qgis.h:5656
QFlags< PaintEffectFlag > PaintEffectFlags
Flags which control how paint effects behave.
Definition qgis.h:2873
LabelOffsetType
Behavior modifier for label offset and distance, only applies in some label placement modes.
Definition qgis.h:1299
QFlags< ProfileGeneratorFlag > ProfileGeneratorFlags
Definition qgis.h:4283
QFlags< MapLayerLegendFlag > MapLayerLegendFlags
Map layer legend flags.
Definition qgis.h:4623
MapGridUnit
Units for map grid values.
Definition qgis.h:5432
LabelPrioritization
Label prioritization.
Definition qgis.h:1211
GradientColorSource
Gradient color sources.
Definition qgis.h:3237
FileFilterType
Type of file filters.
Definition qgis.h:1412
LabelPlacement
Placement modes which determine how label candidates are generated for a feature.
Definition qgis.h:1225
RasterLayerType
Raster layer types.
Definition qgis.h:4835
static const double DEFAULT_M_COORDINATE
Default M coordinate value.
Definition qgis.h:6493
QFlags< VectorLayerTypeFlag > VectorLayerTypeFlags
Vector layer type flags.
Definition qgis.h:435
ScaleBarAlignment
Scalebar alignment.
Definition qgis.h:5374
RasterPyramidFormat
Raster pyramid formats.
Definition qgis.h:4874
ProcessingMode
Types of modes which Processing widgets can be created for.
Definition qgis.h:3730
VectorExportResult
Vector layer export result codes.
Definition qgis.h:1071
DistanceUnit
Units of distance.
Definition qgis.h:5085
RasterTemporalCapabilityFlag
Flags for raster layer temporal capabilities.
Definition qgis.h:2710
SymbolLayerFlag
Flags controlling behavior of symbol layers.
Definition qgis.h:899
MeshRangeLimit
Describes the limits used to compute mesh ranges (min/max values).
Definition qgis.h:6314
GradientSpread
Gradient spread options, which control how gradients are rendered outside of their start and end poin...
Definition qgis.h:3281
LegendSyncMode
Legend synchronization mode.
Definition qgis.h:4652
QFlags< AnnotationItemGuiFlag > AnnotationItemGuiFlags
Annotation item GUI flags.
Definition qgis.h:2555
LabelPolygonPlacementFlag
Polygon placement flags, which control how candidates are generated for a polygon feature.
Definition qgis.h:1358
RasterRangeLimit
Describes the limits used to compute raster ranges (min/max values).
Definition qgis.h:1602
ScaleMethod
Scale methods.
Definition qgis.h:643
QFlags< RasterProcessingParameterCapability > RasterProcessingParameterCapabilities
Raster layer processing parameter capabilities.
Definition qgis.h:6399
SldExportOption
SLD export options.
Definition qgis.h:715
VectorSimplificationAlgorithm
Simplification algorithms for vector features.
Definition qgis.h:3071
FilePathType
File path types.
Definition qgis.h:1734
CadConstraintType
Advanced digitizing constraint type.
Definition qgis.h:4133
AttributeFormPythonInitCodeSource
The Python init code source for attribute forms.
Definition qgis.h:5781
PointCountMethod
Methods which define the number of points randomly filling a polygon.
Definition qgis.h:3296
SldExportVendorExtension
SLD export vendor extensions, allow the use of vendor extensions when exporting to SLD.
Definition qgis.h:730
static const double DEFAULT_HIGHLIGHT_BUFFER_MM
Default highlight buffer in mm.
Definition qgis.h:6466
MapCanvasFlag
Flags controlling behavior of map canvases.
Definition qgis.h:3517
LayerTreeFilterFlag
Layer tree filter flags.
Definition qgis.h:4594
ExtrusionFace
Extrusion face types for the QgsTessellator.
Definition qgis.h:6422
AttributeFormLayout
Available form types for layout of the attribute form editor.
Definition qgis.h:5751
FeatureRequestFlag
Flags for controlling feature requests.
Definition qgis.h:2252
VertexType
Types of vertex.
Definition qgis.h:3124
ShaderInterpolationMethod
Color ramp shader interpolation methods.
Definition qgis.h:1483
JoinStyle3D
Join styles for 3D buffers.
Definition qgis.h:2192
DataProviderFlag
Generic data provider flags.
Definition qgis.h:2366
Q_ENUM(GpsNavigationStatus)
GdalResampleAlgorithm
Resampling algorithm to be used (equivalent to GDAL's enum GDALResampleAlg).
Definition qgis.h:5988
RasterResamplingMethod
Resampling method for raster provider-level resampling.
Definition qgis.h:1542
GeometryValidationEngine
Available engines for validating geometries.
Definition qgis.h:2142
static int geosVersionPatch()
GEOS Patch version number linked.
Definition qgis.cpp:770
TransactionMode
Transaction mode.
Definition qgis.h:4028
Q_ENUM(ScaleToTileZoomLevelMethod)
QFlags< FeatureRendererFlag > FeatureRendererFlags
Flags controlling behavior of vector feature renderers.
Definition qgis.h:857
static const QColor DEFAULT_HIGHLIGHT_COLOR
Default highlight color.
Definition qgis.h:6461
ElevationMapCombineMethod
Methods used to select the elevation when two elevation maps are combined.
Definition qgis.h:4987
static Q_DECL_DEPRECATED const double SCALE_PRECISION
Fudge factor used to compare two scales.
Definition qgis.h:6480
RasterDrawingStyle
Raster drawing styles.
Definition qgis.h:4851
GeosCreationFlag
Flags which control geos geometry creation behavior.
Definition qgis.h:2205
static const int MAXIMUM_LAYER_PREVIEW_TIME_MS
Maximum rendering time for a layer of a preview job.
Definition qgis.h:6529
MeshRangeExtent
Describes the extent used to compute mesh ranges (min/max values).
Definition qgis.h:6326
GpsInformationComponent
GPS information component.
Definition qgis.h:2014
ViewSyncModeFlag
Synchronization of 2D map canvas and 3D view.
Definition qgis.h:3536
ProcessingProviderFlag
Flags indicating how and when an processing provider operates and should be exposed to users.
Definition qgis.h:3617
FileOperationFlag
File operation flags.
Definition qgis.h:2322
QFlags< DataItemProviderCapability > DataItemProviderCapabilities
Capabilities for data item providers.
Definition qgis.h:1011
ProjectCapability
Flags which control project capabilities.
Definition qgis.h:4392
QFlags< BabelFormatCapability > BabelFormatCapabilities
Babel GPS format capabilities.
Definition qgis.h:2060
QFlags< SymbolLayerFlag > SymbolLayerFlags
Symbol layer flags.
Definition qgis.h:906
QFlags< RasterInterfaceCapability > RasterInterfaceCapabilities
Raster interface capabilities.
Definition qgis.h:4945
Q_ENUM(VectorProfileType)
AttributeActionType
Attribute action types.
Definition qgis.h:4747
TemporalNavigationMode
Temporal navigation modes.
Definition qgis.h:2592
ProcessingFieldParameterDataType
Processing field parameter data types.
Definition qgis.h:3875
AreaUnit
Units of area.
Definition qgis.h:5162
StringStatistic
Available string statistics.
Definition qgis.h:6176
FieldDomainMergePolicy
Merge policy for field domains.
Definition qgis.h:3982
ZonalStatistic
Statistics to be calculated during a zonal statistics operation.
Definition qgis.h:6029
MessageLevel
Level for messages This will be used both for message log and message bar in application.
Definition qgis.h:159
@ NoLevel
No level.
Definition qgis.h:164
@ Warning
Warning message.
Definition qgis.h:161
@ Critical
Critical/error message.
Definition qgis.h:162
@ Info
Information message.
Definition qgis.h:160
@ Success
Used for reporting a successful operation.
Definition qgis.h:163
MapGridBorderSide
Border sides for map grid annotations.
Definition qgis.h:5534
SqlKeywordCategory
SqlKeywordCategory enum represents the categories of the SQL keywords used by the SQL query editor.
Definition qgis.h:1127
QFlags< SnappingType > SnappingTypes
Snapping types.
Definition qgis.h:779
static Q_DECL_DEPRECATED QString geoWkt()
WKT string that represents a geographic coord system.
Definition qgis.h:6634
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:5585
GraduatedMethod
Methods for modifying symbols by range in a graduated symbol renderer.
Definition qgis.h:3365
QFlags< LabelLinePlacementFlag > LabelLinePlacementFlags
Line placement flags, which control how candidates are generated for a linear feature.
Definition qgis.h:1348
TiledSceneBoundingVolumeType
Tiled scene bounding volume types.
Definition qgis.h:5906
TextLayoutMode
Text layout modes.
Definition qgis.h:2959
PropertyType
Property types.
Definition qgis.h:701
QFlags< RenderContextFlag > RenderContextFlags
Render context flags.
Definition qgis.h:2832
LayerFilter
Filter for layers.
Definition qgis.h:212
Q_ENUM(ProviderStyleStorageCapability)
QFlags< SublayerFlag > SublayerFlags
Sublayer flags.
Definition qgis.h:1471
RasterRendererFlag
Flags which control behavior of raster renderers.
Definition qgis.h:1560
QFlags< ExtrusionFace > ExtrusionFaces
Tessellator extrusion face types.
Definition qgis.h:6434
static QString devVersion()
The development version.
Definition qgis.cpp:699
CrsType
Coordinate reference system types.
Definition qgis.h:2385
QFlags< GeosCreationFlag > GeosCreationFlags
Geos geometry creation behavior flags.
Definition qgis.h:2216
MapGridComponentVisibility
Visibility display settings for map grid annotations and frames.
Definition qgis.h:5464
SensorThingsEntity
OGC SensorThings API entity types.
Definition qgis.h:6232
MeshEditingErrorType
Type of error that can occur during mesh frame editing.
Definition qgis.h:1717
FieldDomainSplitPolicy
Split policy for field domains.
Definition qgis.h:3965
ArcGisRestServiceType
Available ArcGIS REST service types.
Definition qgis.h:4430
UriCleaningFlag
Flags for cleaning layer URIs.
Definition qgis.h:1429
RasterFileWriterResult
Raster file export results.
Definition qgis.h:1700
AnnotationItemEditOperationResult
Results from an edit operation on an annotation item.
Definition qgis.h:2577
ProcessingPropertyAvailability
Property availability, used for QgsProcessingAlgorithm::VectorProperties in order to determine if pro...
Definition qgis.h:3701
MapRecenteringMode
Modes for recentering map canvases.
Definition qgis.h:3549
RasterRangeAccuracy
Describes the accuracy used to compute raster ranges (min/max values).
Definition qgis.h:1633
ActionType
Action types.
Definition qgis.h:4682
ActionStart
Enum to determine when an operation would begin.
Definition qgis.h:1162
PlaybackOperation
Media playback operations.
Definition qgis.h:2621
QFlags< SymbolLayerUserFlag > SymbolLayerUserFlags
Symbol layer user flags.
Definition qgis.h:929
QFlags< TextRendererFlag > TextRendererFlags
Definition qgis.h:3470
QueryStorageBackend
Stored query storage backends.
Definition qgis.h:3576
ProviderStyleStorageCapability
The StorageCapability enum represents the style storage operations supported by the provider.
Definition qgis.h:5687
AvoidIntersectionsMode
Flags which control how intersections of pre-existing feature are handled when digitizing new feature...
Definition qgis.h:4332
MarkerShape
Marker shapes.
Definition qgis.h:3139
StacObjectType
Available types of stac objects.
Definition qgis.h:6376
LegendJsonRenderFlag
Legend JSON export flags.
Definition qgis.h:4667
BlendMode
Blending modes defining the available composition modes that can be used when painting.
Definition qgis.h:5002
RasterElevationMode
Raster layer elevation modes.
Definition qgis.h:4080
Capitalization
String capitalization options.
Definition qgis.h:3448
TemporalIntervalMatchMethod
Method to use when resolving a temporal range to a data provider layer or band.
Definition qgis.h:2695
PictureFormat
Picture formats.
Definition qgis.h:5344
QFlags< LabelPolygonPlacementFlag > LabelPolygonPlacementFlags
Polygon placement flags, which control how candidates are generated for a polygon feature.
Definition qgis.h:1370
static QString releaseName()
Release name.
Definition qgis.cpp:694
LabelQuadrantPosition
Label quadrant positions.
Definition qgis.h:1313
QFlags< PlotToolFlag > PlotToolFlags
Definition qgis.h:4171
ScaleToTileZoomLevelMethod
Available methods for converting map scales to tile zoom levels.
Definition qgis.h:3479
SublayerQueryFlag
Flags which control how data providers will scan for sublayers in a dataset.
Definition qgis.h:1449
QFlags< VectorFileWriterCapability > VectorFileWriterCapabilities
Capabilities supported by a QgsVectorFileWriter object.
Definition qgis.h:1102
TextOrientation
Text orientations.
Definition qgis.h:2944
TemporalUnit
Temporal units.
Definition qgis.h:5231
QFlags< RasterRendererCapability > RasterRendererCapabilities
Raster renderer capabilities.
Definition qgis.h:1591
QFlags< SymbolPreviewFlag > SymbolPreviewFlags
Symbol preview flags.
Definition qgis.h:886
UnplacedLabelVisibility
Unplaced label visibility.
Definition qgis.h:1174
CrsDefinitionFormat
CRS definition formats.
Definition qgis.h:3950
SpatialFilterType
Feature request spatial filter types.
Definition qgis.h:2309
VerticalAnchorPoint
Marker symbol vertical anchor points.
Definition qgis.h:833
QFlags< LayoutRenderFlag > LayoutRenderFlags
Flags for controlling how a layout is rendered.
Definition qgis.h:5333
static QString defaultProjectScales()
A string with default project scales.
Definition qgis.cpp:676
QFlags< ProcessingParameterTypeFlag > ProcessingParameterTypeFlags
Flags which dictate the behavior of Processing parameter types.
Definition qgis.h:3810
TileAvailability
Possible availability states for a tile within a tile matrix.
Definition qgis.h:5873
ProjectFlag
Flags which control the behavior of QgsProjects.
Definition qgis.h:4151
MapGridStyle
Map grid drawing styles.
Definition qgis.h:5448
FeatureRendererFlag
Flags controlling behavior of vector feature renderers.
Definition qgis.h:847
static Q_DECL_DEPRECATED QString geoProj4()
PROJ4 string that represents a geographic coord system.
Definition qgis.h:6645
BrowserItemType
Browser item types.
Definition qgis.h:938
QFlags< FeatureRequestFlag > FeatureRequestFlags
Flags for controlling feature requests.
Definition qgis.h:2269
static bool hasGeographicLib()
Returns true if the QGIS build contains GeographicLib.
Definition qgis.cpp:727
SettingsType
Types of settings entries.
Definition qgis.h:654
QFlags< SettingsOption > SettingsOptions
Definition qgis.h:748
RasterTemporalMode
Raster layer temporal modes.
Definition qgis.h:2679
RasterAttributeTableType
The RasterAttributeTableType enum represents the type of RAT.
Definition qgis.h:1674
LabelingFlag
Various flags that affect drawing and placement of labels.
Definition qgis.h:2899
GeometryType
The geometry types are used to group Qgis::WkbType in a coarse way.
Definition qgis.h:365
RelationshipType
Relationship types.
Definition qgis.h:4450
ScriptLanguageCapability
Script language capabilities.
Definition qgis.h:4560
RasterInterfaceCapability
Raster interface capabilities.
Definition qgis.h:4925
JoinStyle
Join styles for buffers.
Definition qgis.h:2179
PointCloudDrawOrder
Pointcloud rendering order for 2d views.
Definition qgis.h:4317
QFlags< RasterBandStatistic > RasterBandStatistics
Statistics to be calculated for raster bands.
Definition qgis.h:6223
ProcessingAlgorithmDocumentationFlag
Flags describing algorithm behavior for documentation purposes.
Definition qgis.h:3677
TextCharacterVerticalAlignment
Text vertical alignment for characters.
Definition qgis.h:3035
FieldDuplicatePolicy
Duplicate policy for fields.
Definition qgis.h:4002
UserProfileSelectionPolicy
User profile selection policy.
Definition qgis.h:5702
static const float DEFAULT_MAPTOPIXEL_THRESHOLD
Default threshold between map coordinates and device coordinates for map2pixel simplification.
Definition qgis.h:6454
QFlags< FileOperationFlag > FileOperationFlags
File operation flags.
Definition qgis.h:2327
DpiMode
DpiMode enum.
Definition qgis.h:3417
Q_ENUM(ProfileExportType)
BrowserLayerType
Browser item layer types.
Definition qgis.h:1020
QFlags< ProcessingAlgorithmFlag > ProcessingAlgorithmFlags
Flags indicating how and when an algorithm operates and should be exposed to users.
Definition qgis.h:3668
AltitudeBinding
Altitude binding.
Definition qgis.h:4054
QFlags< DataProviderReadFlag > DataProviderReadFlags
Flags which control data provider construction.
Definition qgis.h:505
Q_ENUM(ProcessingProviderFlag)
TiledSceneRendererFlag
Flags which control how tiled scene 2D renderers behave.
Definition qgis.h:5966
MapLayerActionTarget
Map layer action targets.
Definition qgis.h:4697
ShaderClassificationMethod
Color ramp shader classification methods.
Definition qgis.h:1498
MapLayerLegendFlag
Map layer legend flags.
Definition qgis.h:4613
ZonalStatisticResult
Zonal statistics result codes.
Definition qgis.h:6064
ScriptLanguage
Scripting languages.
Definition qgis.h:4537
QFlags< BrowserItemCapability > BrowserItemCapabilities
Browser item capabilities.
Definition qgis.h:984
QFlags< NetworkRequestFlag > NetworkRequestFlags
Flags controlling behavior of network requests.
Definition qgis.h:184
FeatureAvailability
Possible return value for QgsFeatureSource::hasFeatures() to determine if a source is empty.
Definition qgis.h:596
PlotAxisType
Plots axis types.
Definition qgis.h:3393
TiledSceneProviderCapability
Tiled scene data provider capabilities.
Definition qgis.h:5887
LabelMultiLineAlignment
Text alignment for multi-line labels.
Definition qgis.h:1396
RasterBandStatistic
Available raster band statistics.
Definition qgis.h:6205
QFlags< VectorTileProviderCapability > VectorTileProviderCapabilities
Vector tile data provider capabilities.
Definition qgis.h:5864
AuthConfigurationStorageCapability
Authentication configuration storage capabilities.
Definition qgis.h:105
QFlags< ZonalStatistic > ZonalStatistics
Statistics to be calculated during a zonal statistics operation.
Definition qgis.h:6055
VectorDataProviderTemporalMode
Vector data provider temporal handling modes.
Definition qgis.h:2666
TextRenderFormat
Options for rendering text.
Definition qgis.h:2884
DocumentationBrowser
Documentation API browser.
Definition qgis.h:6278
DataType
Raster data types.
Definition qgis.h:379
Q_ENUM(ProfileSurfaceSymbology)
QFlags< ViewSyncModeFlag > ViewSyncModeFlags
Definition qgis.h:3541
QFlags< SublayerQueryFlag > SublayerQueryFlags
Sublayer query flags.
Definition qgis.h:1457
SystemOfMeasurement
Systems of unit measurement.
Definition qgis.h:5038
RasterAttributeTableFieldUsage
The RasterAttributeTableFieldUsage enum represents the usage of a Raster Attribute Table field.
Definition qgis.h:1645
VerticalAxisInversion
Vertical axis inversion options for 3D views.
Definition qgis.h:4239
QFlags< CoordinateTransformationFlag > CoordinateTransformationFlags
Coordinate transformation flags.
Definition qgis.h:2752
RelationshipCapability
Relationship capabilities.
Definition qgis.h:4490
RasterBuildPyramidOption
Raster pyramid building options.
Definition qgis.h:4889
QFlags< VectorProviderCapability > VectorProviderCapabilities
Vector data provider capabilities.
Definition qgis.h:555
NavigationMode
The navigation mode used by 3D cameras.
Definition qgis.h:4214
static int geosVersionMajor()
GEOS Major version number linked.
Definition qgis.cpp:760
LinearReferencingPlacement
Defines how/where the labels should be placed in a linear referencing symbol layer.
Definition qgis.h:3208
TileChildrenAvailability
Possible availability states for a tile's children.
Definition qgis.h:5934
PointCloudZoomOutRenderBehavior
Point cloud zoom out options.
Definition qgis.h:6351
LayerType
Types of layers that can be added to a map.
Definition qgis.h:193
QFlags< AnnotationItemFlag > AnnotationItemFlags
Annotation item flags.
Definition qgis.h:2528
FieldOrigin
Field origin.
Definition qgis.h:1762
LinearReferencingLabelSource
Defines what quantity to use for the labels shown in a linear referencing symbol layer.
Definition qgis.h:3222
LabelWhitespaceCollisionHandling
Label whitespace collision handling.
Definition qgis.h:1199
RasterRangeExtent
Describes the extent used to compute raster ranges (min/max values).
Definition qgis.h:1618
QFlags< Statistic > Statistics
Statistics to be calculated for generic values.
Definition qgis.h:6142
PlotToolFlag
Flags that control the way the QgsPlotTools operate.
Definition qgis.h:4167
RenderUnit
Rendering size units.
Definition qgis.h:5255
static QString geographicCrsAuthId()
Geographic coordinate system auth:id string for a default geographic CRS (EPSG:4326).
Definition qgis.h:6625
CoordinateOrder
Order of coordinates.
Definition qgis.h:2460
SelectionFlag
Flags which control feature selection behavior.
Definition qgis.h:1855
QFlags< SettingsTreeNodeOption > SettingsTreeNodeOptions
Definition qgis.h:690
EndCapStyle
End cap styles for buffers.
Definition qgis.h:2166
ScaleCalculationMethod
Scale calculation logic.
Definition qgis.h:5357
QFlags< TiledSceneRequestFlag > TiledSceneRequestFlags
Flags which control how tiled scene requests behave.
Definition qgis.h:5957
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:4736
QFlags< MapLayerProperty > MapLayerProperties
Map layer properties.
Definition qgis.h:2343
QFlags< LoadStyleFlag > LoadStyleFlags
Flags for loading layer styles.
Definition qgis.h:249
BabelCommandFlag
Babel command flags, which control how commands and arguments are generated for executing GPSBabel pr...
Definition qgis.h:2071
QFlags< LabelingFlag > LabelingFlags
Flags that affect drawing and placement of labels.
Definition qgis.h:2919
FieldDomainType
Types of field domain.
Definition qgis.h:4015
MapLayerRendererFlag
Flags which control how map layer renderers behave.
Definition qgis.h:2842
RenderContextFlag
Flags which affect rendering operations.
Definition qgis.h:2806
RasterPipeInterfaceRole
Raster pipe interface roles.
Definition qgis.h:1511
CoverageValidityResult
Coverage validity results.
Definition qgis.h:2225
DataProviderReadFlag
Flags which control data provider construction.
Definition qgis.h:486
ScaleBarSegmentSizeMode
Modes for setting size for scale bar segments.
Definition qgis.h:5389
Aggregate
Available aggregates to calculate.
Definition qgis.h:6082
static int sfcgalVersionInt()
Returns the version of the SFCGAL library if QGIS is built with SFCGAL.
Definition qgis.cpp:718
SymbolPreviewFlag
Flags for controlling how symbol preview images are generated.
Definition qgis.h:881
static const double DEFAULT_SEARCH_RADIUS_MM
Identify search radius in mm.
Definition qgis.h:6451
AnnotationItemGuiFlag
Flags for controlling how an annotation item behaves in the GUI.
Definition qgis.h:2551
MapBoxGlStyleSourceType
Available MapBox GL style source types.
Definition qgis.h:4411
LayoutUnitType
Types of layout units.
Definition qgis.h:5295
VectorDataProviderAttributeEditCapability
Attribute editing capabilities which may be supported by vector data providers.
Definition qgis.h:609
DashPatternLineEndingRule
Dash pattern line ending rules.
Definition qgis.h:3335
FieldMetadataProperty
Standard field metadata values.
Definition qgis.h:1803
MapGridAnnotationType
Annotation coordinate type.
Definition qgis.h:5611
TiledSceneRequestFlag
Flags which control how tiled scene requests behave.
Definition qgis.h:5947
RasterRendererCapability
Raster renderer capabilities.
Definition qgis.h:1581
VertexMarkerType
Editing vertex markers, used for showing vertices during a edit operation.
Definition qgis.h:1891
HistoryProviderBackend
History provider backends.
Definition qgis.h:3562
static const double DEFAULT_SEGMENT_EPSILON
Default snapping tolerance for segments.
Definition qgis.h:6523
RasterExportType
Raster file export types.
Definition qgis.h:1687
SublayerPromptMode
Specifies how to handle layer sources with multiple sublayers.
Definition qgis.h:1746
TextVerticalAlignment
Text vertical alignment.
Definition qgis.h:3019
RelationshipCardinality
Relationship cardinality.
Definition qgis.h:4476
GradientType
Gradient types.
Definition qgis.h:3251
QFlags< ScriptLanguageCapability > ScriptLanguageCapabilities
Script language capabilities.
Definition qgis.h:4572
VectorProfileType
Types of elevation profiles to generate for vector sources.
Definition qgis.h:4265
GpsFeatureType
GPS feature types.
Definition qgis.h:2085
VectorLayerTypeFlag
Vector layer type flags.
Definition qgis.h:430
MakeValidMethod
Algorithms to use when repairing invalid geometries.
Definition qgis.h:2238
RangeLimits
Describes how the limits of a range are handled.
Definition qgis.h:4066
QFlags< ProjectFlag > ProjectFlags
Definition qgis.h:4158
VectorTemporalLimitMode
Mode for the handling of the limits of the filtering timeframe for vector features.
Definition qgis.h:2654
QFlags< ProcessingParameterFlag > ProcessingParameterFlags
Flags which dictate the behavior of Processing parameters.
Definition qgis.h:3836
SqlLayerDefinitionCapability
SqlLayerDefinitionCapability enum lists the arguments supported by the provider when creating SQL que...
Definition qgis.h:1110
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:1876
QFlags< VectorDataProviderAttributeEditCapability > VectorDataProviderAttributeEditCapabilities
Attribute editing capabilities which may be supported by vector data providers.
Definition qgis.h:621
NurbsMode
NURBS digitizing mode.
Definition qgis.h:419
Axis
Cartesian axes.
Definition qgis.h:2509
QFlags< ProcessingAlgorithmDocumentationFlag > ProcessingAlgorithmDocumentationFlags
Flags describing algorithm behavior for documentation purposes.
Definition qgis.h:3689
QFlags< RelationshipCapability > RelationshipCapabilities
Relationship capabilities.
Definition qgis.h:4502
QFlags< SymbolRenderHint > SymbolRenderHints
Symbol render hints.
Definition qgis.h:796
VolumeUnit
Units of volume.
Definition qgis.h:5187
CurvedTextFlag
Flags controlling behavior of curved text generation.
Definition qgis.h:3048
AttributeEditorType
Attribute editor types.
Definition qgis.h:5717
QFlags< LegendJsonRenderFlag > LegendJsonRenderFlags
Definition qgis.h:4671
QFlags< ProviderStyleStorageCapability > ProviderStyleStorageCapabilities
Definition qgis.h:5693
EmbeddedScriptMode
Authorisation to run script embedded in projects.
Definition qgis.h:443
SymbolLayerUserFlag
User-specified flags controlling behavior of symbol layers.
Definition qgis.h:919
InvalidGeometryCheck
Methods for handling of features with invalid geometries.
Definition qgis.h:2296
QFlags< SymbolFlag > SymbolFlags
Symbol flags.
Definition qgis.h:872
QFlags< ProcessingFeatureSourceDefinitionFlag > ProcessingFeatureSourceDefinitionFlags
Flags which control behavior for a Processing feature source.
Definition qgis.h:3758
MapGridFrameStyle
Style for map grid frames.
Definition qgis.h:5550
PointCloudAccessType
The access type of the data, local is for local files and remote for remote files (over HTTP).
Definition qgis.h:6340
ProfileExportType
Types of export for elevation profiles.
Definition qgis.h:4292
MeshElevationMode
Mesh layer elevation modes.
Definition qgis.h:4094
ProjectFileFormat
Flags which control project read behavior.
Definition qgis.h:4347
SnappingMode
SnappingMode defines on which layer the snapping is performed.
Definition qgis.h:756
SymbolType
Symbol types.
Definition qgis.h:629
RasterColorInterpretation
Raster color interpretation.
Definition qgis.h:4784
static const int USER_CRS_START_ID
Minimum ID number for a user-defined projection.
Definition qgis.h:6514
ProfileSurfaceSymbology
Surface symbology type for elevation profile plots.
Definition qgis.h:4252
LabelPlacementEngineVersion
Labeling placement engine version.
Definition qgis.h:2930
Q_ENUM(ProcessingAlgorithmFlag)
static int geosVersionMinor()
GEOS Minor version number linked.
Definition qgis.cpp:765
ColorModel
Color model types.
Definition qgis.h:6252
RendererUsage
Usage of the renderer.
Definition qgis.h:3504
SettingsTreeNodeOption
Options for named list nodes.
Definition qgis.h:685
BabelFormatCapability
Babel GPS format capabilities.
Definition qgis.h:2052
PostgresRelKind
Postgres database relkind options.
Definition qgis.h:5635
SegmentCalculationMethod
brief Method used to calculate the number of segments for circle approximation
Definition qgis.h:6363
GpsConnectionType
GPS connection types.
Definition qgis.h:1918
Q_ENUM(InputControllerType)
QFlags< DatabaseProviderConnectionCapability2 > DatabaseProviderConnectionCapabilities2
Definition qgis.h:5664
MouseHandlesAction
Action to be performed by the mouse handles.
Definition qgis.h:6290
ProcessingFeatureSourceDefinitionFlag
Flags which control behavior for a Processing feature source.
Definition qgis.h:3745
QFlags< TextComponent > TextComponents
Text components.
Definition qgis.h:2989
static QString geoNone()
Constant that holds the string representation for "No ellipse/No CRS".
Definition qgis.h:6615
DevToolsNodeRole
Dev tools node custom data roles.
Definition qgis.h:6407
LoadStyleFlag
Flags for loading layer styles.
Definition qgis.h:239
BetweenLineConstraint
Between line constraints which can be enabled.
Definition qgis.h:4107
QFlags< VectorTileProviderFlag > VectorTileProviderFlags
Vector tile data provider flags.
Definition qgis.h:5846
MetadataDateType
Date types for metadata.
Definition qgis.h:4765
QFlags< RasterTemporalCapabilityFlag > RasterTemporalCapabilityFlags
Flags for raster layer temporal capabilities.
Definition qgis.h:2720
ProcessingFeatureSourceFlag
Flags which control how QgsProcessingFeatureSource fetches features.
Definition qgis.h:3769
RasterIdentifyFormat
Raster identify formats.
Definition qgis.h:4904
MapGridAnnotationDirection
Direction of grid annotations.
Definition qgis.h:5494
TextHorizontalAlignment
Text horizontal alignment.
Definition qgis.h:3000
SymbolFlag
Flags controlling behavior of symbols.
Definition qgis.h:866
LineExtensionSide
Designates whether the line extension constraint is currently soft locked with the previous or next v...
Definition qgis.h:4120
HttpMethod
Different methods of HTTP requests.
Definition qgis.h:1056
WkbType
The WKB type describes the number of dimensions a geometry has.
Definition qgis.h:280
QFlags< SldExportOption > SldExportOptions
Definition qgis.h:721
SymbolCoordinateReference
Symbol coordinate reference modes.
Definition qgis.h:3266
QFlags< ProcessingProviderFlag > ProcessingProviderFlags
Flags indicating how and when an processing provider operates and should be exposed to users.
Definition qgis.h:3630
TileRefinementProcess
Tiled scene tile refinement processes.
Definition qgis.h:5922
QFlags< DateTimeStatistic > DateTimeStatistics
Statistics to be calculated for date/time values.
Definition qgis.h:6167
SelectionRenderingMode
Specifies how a selection should be rendered.
Definition qgis.h:1816
InputControllerType
Input controller types.
Definition qgis.h:5623
TextRendererFlag
Flags which control the behavior of rendering text.
Definition qgis.h:3466
SelectGeometryRelationship
Geometry relationship test to apply for selecting features.
Definition qgis.h:1843
CrsAxisDirection
Coordinate reference system axis directions.
Definition qgis.h:2410
ProcessingModelChildParameterSource
Processing model child parameter sources.
Definition qgis.h:3906
static int geosVersionInt()
GEOS version number linked.
Definition qgis.cpp:750
QFlags< MarkerLinePlacement > MarkerLinePlacements
Definition qgis.h:3199
QFlags< MapCanvasFlag > MapCanvasFlags
Flags controlling behavior of map canvases.
Definition qgis.h:3527
CrsWktVariant
Coordinate reference system WKT formatting variants.
Definition qgis.h:2490
QFlags< TiledSceneRendererFlag > TiledSceneRendererFlags
Flags which control how tiled scene 2D renderers behave.
Definition qgis.h:5979
MapGridAnnotationFormat
Format for displaying map grid annotations.
Definition qgis.h:5513
DocumentationApi
Documentation API.
Definition qgis.h:6264
AutoRefreshMode
Map layer automatic refresh modes.
Definition qgis.h:2353
AnnotationPlacementMode
Annotation item placement modes.
Definition qgis.h:2538
ProcessingAlgorithmFlag
Flags indicating how and when an algorithm operates and should be exposed to users.
Definition qgis.h:3641
SceneMode
The 3D scene mode used in 3D map views.
Definition qgis.h:4227
FieldConfigurationFlag
Configuration flags for fields These flags are meant to be user-configurable and are not describing a...
Definition qgis.h:1779
SettingsOrigin
The setting origin describes where a setting is stored.
Definition qgis.h:4524
HorizontalAnchorPoint
Marker symbol horizontal anchor points.
Definition qgis.h:819
QFlags< CurvedTextFlag > CurvedTextFlags
Flags controlling behavior of curved text generation.
Definition qgis.h:3061
ProcessingParameterFlag
Flags which dictate the behavior of Processing parameters.
Definition qgis.h:3821
LabelOverlapHandling
Label overlap handling.
Definition qgis.h:1186
static const double UI_SCALE_FACTOR
UI scaling factor.
Definition qgis.h:6499
FeatureSymbologyExport
Options for exporting features considering their symbology.
Definition qgis.h:5823
QFlags< LayerFilter > LayerFilters
Definition qgis.h:230
ProcessingDateTimeParameterDataType
Processing date time parameter data types.
Definition qgis.h:3893
CoordinateTransformationFlag
Flags which adjust the coordinate transformations behave.
Definition qgis.h:2741
TextComponent
Text components.
Definition qgis.h:2976
DateTimeStatistic
Available date/time statistics.
Definition qgis.h:6151
AnimationState
Animation states.
Definition qgis.h:2608
TransformDirection
Indicates the direction (forward or inverse) of a transform.
Definition qgis.h:2729
LightSourceType
Light source types for 3D scenes.
Definition qgis.h:4202
QFlags< ProcessingFeatureSourceFlag > ProcessingFeatureSourceFlags
Flags which control how QgsProcessingFeatureSource fetches features.
Definition qgis.h:3781
QFlags< HistoryProviderBackend > HistoryProviderBackends
Definition qgis.h:3567
LabelPredefinedPointPosition
Positions for labels when using the Qgis::LabelPlacement::OrderedPositionsAroundPoint placement mode.
Definition qgis.h:1260
QFlags< FieldConfigurationFlag > FieldConfigurationFlags
Configuration flags for fields These flags are meant to be user-configurable and are not describing a...
Definition qgis.h:1794
UpsideDownLabelHandling
Handling techniques for upside down labels.
Definition qgis.h:1381
static const double DEFAULT_POINT_SIZE
The default size (in millimeters) for point marker symbols.
Definition qgis.h:6517
DeviceConnectionStatus
GPS connection status.
Definition qgis.h:1932
ProcessingNumberParameterType
Processing numeric parameter data types.
Definition qgis.h:3861
MapSettingsFlag
Flags which adjust the way maps are rendered.
Definition qgis.h:2774
QFlags< SqlLayerDefinitionCapability > SqlLayerDefinitionCapabilities
SQL layer definition capabilities.
Definition qgis.h:1118
ProcessingLogLevel
Logging level for algorithms to use when pushing feedback messages.
Definition qgis.h:3715
SelectBehavior
Specifies how a selection should be applied.
Definition qgis.h:1829
LayoutRenderFlag
Flags for controlling how a layout is rendered.
Definition qgis.h:5309
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.
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:112
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:6764
Object * operator->()
Returns pointer to blocked QObject.
Definition qgis.h:6782
QgsSignalBlocker(Object *object)
Constructor for QgsSignalBlocker.
Definition qgis.h:6771
Abstract base class for simple marker symbol layers.
Stores configuration of snapping settings for the project.
Calculator for summary statistics for a list of doubles.
Calculator for summary statistics and aggregates for a list of strings.
Utility functions for working with strings.
Contains utility functions for working with symbols and symbol layers.
Abstract base class for all rendered symbols.
Definition qgssymbol.h:231
Base class for templated line symbols, e.g.
Implements a temporal controller based on a frame by frame navigation and animation.
Container for all settings relating to text rendering.
Utility functions for text rendering.
Handles rendering text using rich formatting options, including drop shadows, buffers and background ...
Provides calculations for tolerance values in map units.
Helper functions for various unit types.
Implementation of data provider temporal properties for QgsVectorDataProviders.
Base class for vector data providers.
A convenience class for writing vector layers to disk based formats (e.g.
A convenience class for exporting vector layers to a destination data provider.
Implementation of map layer temporal properties for vector layers.
Represents a vector layer which manages a vector based dataset.
Contains settings for simplifying geometries fetched from a vector layer.
Handles storage of information regarding WKB types and their properties.
Definition qgswkbtypes.h:42
FeatureCountState
Enumeration of feature count states.
Definition qgis.h:564
@ Points
Point based rendering, requires point data.
@ Lines
Line based rendering, requires line data.
As part of the API refactoring and improvements which landed in QGIS
Q_DECL_DEPRECATED const long GEOCRS_ID
Numeric ID for the EPSG:4326 geographic coordinate system in QGIS internal srs database.
Definition qgis.h:7404
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:7314
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:7397
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:7110
QString qgsDoubleToString(double a, int precision=17)
Returns a string representation of a double.
Definition qgis.h:6817
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:6974
QString qgsEnumValueToKey(const T &value, bool *returnOk=nullptr)
Returns the value for the given key of an enum.
Definition qgis.h:7091
QString qgsFlagValueToKeys(const T &value, bool *returnOk=nullptr)
Returns the value for the given keys of a flag.
Definition qgis.h:7149
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:6957
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:7171
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:7423
const QMap< T, QString > qgsEnumMap()
Returns a map of all enum entries.
Definition qgis.h:7074
bool qgsFloatNear(float a, float b, float epsilon=4 *FLT_EPSILON)
Compare two floats (but allow some difference).
Definition qgis.h:6911
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:6991
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:7057
double qgsRound(double number, int places)
Returns a double number, rounded (as close as possible) to the specified number of places.
Definition qgis.h:6941
bool qgsDoubleNear(double a, double b, double epsilon=4 *std::numeric_limits< double >::epsilon())
Compare two doubles (but allow some difference).
Definition qgis.h:6900
bool qgsNanCompatibleEquals(double a, double b)
Compare two doubles, treating nan values as equal.
Definition qgis.h:6862
QgsSignalBlocker< Object > whileBlocking(Object *object)
Temporarily blocks signals from a QObject while calling a single method from the object.
Definition qgis.h:6804
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:7413
Q_DECL_DEPRECATED const long GEO_EPSG_CRS_ID
Numeric ID for the EPSG:4326 geographic coordinate system.
Definition qgis.h:7411
bool qgsDoubleNearSig(double a, double b, int significantDigits=10)
Compare two doubles using specified number of significant digits.
Definition qgis.h:6917
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:6882
CORE_EXPORT qlonglong qgsPermissiveToLongLong(QString string, bool &ok)
Converts a string to an qlonglong in a permissive way, e.g., allowing for incorrect numbers of digits...
Definition qgis.cpp:105
CORE_EXPORT int qgsPermissiveToInt(QString string, bool &ok)
Converts a string to an integer in a permissive way, e.g., allowing for incorrect numbers of digits b...
Definition qgis.cpp:98
CORE_EXPORT bool qgsVariantLessThan(const QVariant &lhs, const QVariant &rhs)
Compares two QVariant values and returns whether the first is less than the second.
Definition qgis.cpp:596
#define QHASH_FOR_CLASS_ENUM(T)
Definition qgis.h:48
bool operator<(const QVariant &v1, const QVariant &v2)
Compares two QVariant values and returns whether the first is less than the second.
Definition qgis.h:7330
#define SIP_DEPRECATED
Definition qgis_sip.h:114
#define SIP_ENUM_BASETYPE(type)
Definition qgis_sip.h:275
#define SIP_SKIP
Definition qgis_sip.h:134
#define SIP_MONKEYPATCH_SCOPEENUM_UNNEST(OUTSIDE_CLASS, FORMERNAME)
Definition qgis_sip.h:268
#define SIP_MONKEYPATCH_FLAGS_UNNEST(OUTSIDE_CLASS, FORMERNAME)
Definition qgis_sip.h:269
#define SIP_MONKEYPATCH_SCOPEENUM
Definition qgis_sip.h:267
#define SIP_MONKEYPATCH_COMPAT_NAME(FORMERNAME)
Definition qgis_sip.h:270
Q_DECLARE_METATYPE(QgsDatabaseQueryLogEntry)
Q_DECLARE_OPERATORS_FOR_FLAGS(QgsProjectionSelectionWidget::CrsOptions)
Utility class for identifying a unique vertex within a geometry.
Definition qgsvertexid.h:34