QGIS API Documentation 3.99.0-Master (b3fe4c4eded)
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
3125 {
3126 SymbolLayer,
3127 Label,
3128 };
3129 Q_ENUM( SelectiveMaskSourceType )
3130
3131
3136 {
3137 Segment SIP_MONKEYPATCH_COMPAT_NAME( SegmentVertex ) = 1,
3138 Curve SIP_MONKEYPATCH_COMPAT_NAME( CurveVertex ) = 2,
3139 ControlPoint SIP_MONKEYPATCH_COMPAT_NAME( ControlPointVertex ) = 3,
3140 };
3141 Q_ENUM( VertexType )
3142
3143
3151 {
3152 Square,
3153 Diamond,
3154 Pentagon,
3155 Hexagon,
3156 Triangle,
3157 EquilateralTriangle,
3158 Star,
3159 Arrow,
3160 Circle,
3161 Cross,
3162 CrossFill,
3163 Cross2,
3164 Line,
3165 ArrowHead,
3166 ArrowHeadFilled,
3167 SemiCircle,
3168 ThirdCircle,
3169 QuarterCircle,
3170 QuarterSquare,
3171 HalfSquare,
3172 DiagonalHalfSquare,
3173 RightHalfTriangle,
3174 LeftHalfTriangle,
3175 Octagon,
3176 SquareWithCorners,
3177 AsteriskFill,
3178 HalfArc,
3179 ThirdArc,
3180 QuarterArc,
3181 ParallelogramRight,
3182 ParallelogramLeft,
3183 Trapezoid,
3184 Shield,
3185 DiamondStar,
3186 Heart,
3187 Decagon,
3188 RoundedSquare,
3189 };
3190 Q_ENUM( MarkerShape )
3191
3192
3200 {
3201 Interval = 1 << 0,
3202 Vertex = 1 << 1,
3203 LastVertex = 1 << 2,
3204 FirstVertex = 1 << 3,
3205 CentralPoint = 1 << 4,
3206 CurvePoint = 1 << 5,
3207 SegmentCenter = 1 << 6,
3208 InnerVertices = 1 << 7,
3209 };
3210 Q_ENUM( MarkerLinePlacement )
3212 Q_FLAG( MarkerLinePlacements )
3213
3220 {
3221 IntervalCartesian2D = 1 << 0,
3222 IntervalZ = 1 << 1,
3223 IntervalM = 1 << 2,
3224 Vertex = 1 << 3,
3225 };
3226 Q_ENUM( LinearReferencingPlacement )
3227
3228
3234 {
3235 CartesianDistance2D,
3236 Z,
3237 M,
3238 };
3239 Q_ENUM( LinearReferencingLabelSource )
3240
3241
3249 {
3250 SimpleTwoColor,
3251 ColorRamp,
3252 };
3253 Q_ENUM( GradientColorSource )
3254
3255
3268 Q_ENUM( GradientType )
3269
3270
3278 {
3279 Feature,
3280 Viewport,
3281 };
3282 Q_ENUM( SymbolCoordinateReference )
3283
3284
3298 Q_ENUM( GradientSpread )
3299
3300
3308 {
3309 Absolute SIP_MONKEYPATCH_COMPAT_NAME( AbsoluteCount ),
3310 DensityBased SIP_MONKEYPATCH_COMPAT_NAME( DensityBasedCount ),
3311 };
3312 Q_ENUM( PointCountMethod )
3313
3314
3319 enum class MarkerClipMode : int
3320 {
3321 NoClipping,
3322 Shape,
3323 CentroidWithin,
3324 CompletelyWithin,
3325 };
3326 Q_ENUM( MarkerClipMode )
3327
3328
3333 enum class LineClipMode : int
3334 {
3335 ClipPainterOnly,
3336 ClipToIntersection,
3337 NoClipping,
3338 };
3339 Q_ENUM( LineClipMode )
3340
3341
3347 {
3348 NoRule,
3349 FullDash,
3350 HalfDash,
3351 FullGap,
3352 HalfGap,
3353 };
3354 Q_ENUM( DashPatternLineEndingRule )
3355
3356
3362 {
3363 ScaleBothDashAndGap,
3364 ScaleDashOnly,
3365 ScaleGapOnly,
3366 };
3367 Q_ENUM( DashPatternSizeAdjustment )
3368
3369
3381 Q_ENUM( GraduatedMethod )
3382
3383
3389 {
3390 NoLabels,
3391 EveryLabel,
3392 FirstLabel,
3393 LastLabel,
3394 FirstAndLastLabels,
3395 };
3396 Q_ENUM( PlotAxisSuffixPlacement )
3397
3398
3399
3404 enum class PlotAxisType
3405 {
3406 Interval,
3407 Categorical,
3408 };
3409 Q_ENUM( PlotAxisType )
3410
3411
3416 enum class PieChartLabelType : int
3417 {
3418 NoLabels,
3419 Categories,
3420 Values,
3421 };
3422 Q_ENUM( PieChartLabelType )
3423
3424
3428 enum class DpiMode
3429 {
3430 All = 7,
3431 Off = 0,
3432 QGIS = 1,
3433 UMN = 2,
3434 GeoServer = 4,
3435 };
3436 Q_ENUM( DpiMode )
3437
3438
3443 {
3444 Undefined = 0,
3445 StandardDpi = 1,
3446 HighDpi = 2,
3447 };
3448 Q_ENUM( TilePixelRatio )
3449
3450 // NOTE -- the hardcoded numbers here must match QFont::Capitalization!
3451
3452
3460 {
3461 MixedCase = 0,
3462 AllUppercase = 1,
3463 AllLowercase = 2,
3464 ForceFirstLetterToCapital = 4,
3465 SmallCaps = 5,
3466 TitleCase = 1004,
3467 UpperCamelCase = 1005,
3468 AllSmallCaps = 1006,
3469 };
3470 Q_ENUM( Capitalization )
3471
3472
3477 enum class TextRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
3478 {
3479 WrapLines = 1 << 0,
3480 };
3481 Q_ENUM( TextRendererFlag )
3483 Q_FLAG( TextRendererFlags )
3484
3491 {
3492 MapBox,
3493 Esri,
3494 };
3496
3503 {
3504 Clockwise,
3505 CounterClockwise,
3506 NoOrientation,
3507 };
3508 Q_ENUM( AngularDirection )
3509
3510
3515 enum class RendererUsage : int
3516 {
3517 View,
3518 Export,
3519 Unknown,
3520 };
3521 Q_ENUM( RendererUsage )
3522
3523
3528 enum class MapCanvasFlag : int SIP_ENUM_BASETYPE( IntFlag )
3529 {
3530 ShowMainAnnotationLayer = 1 << 0,
3531 };
3532 Q_ENUM( MapCanvasFlag )
3533
3534
3539 Q_DECLARE_FLAGS( MapCanvasFlags, MapCanvasFlag )
3540 Q_FLAG( MapCanvasFlags )
3541
3547 enum class ViewSyncModeFlag : int SIP_ENUM_BASETYPE( IntFlag )
3548 {
3549 Sync3DTo2D = 1 << 0,
3550 Sync2DTo3D = 1 << 1,
3551 };
3552 Q_ENUM( ViewSyncModeFlag )
3554
3561 {
3562 Always,
3563 WhenOutsideVisibleExtent,
3564 Never,
3565 };
3566 Q_ENUM( MapRecenteringMode )
3567
3568
3573 enum class HistoryProviderBackend : int SIP_ENUM_BASETYPE( IntFlag )
3574 {
3575 LocalProfile = 1 << 0,
3576// Project = 1 << 1, //!< QGIS Project (not yet implemented)
3577 };
3578 Q_ENUM( HistoryProviderBackend )
3580 Q_FLAG( HistoryProviderBackends )
3581
3587 enum class QueryStorageBackend : int
3588 {
3589 LocalProfile,
3590 CurrentProject,
3591 };
3592 Q_ENUM( QueryStorageBackend )
3593
3594
3602 {
3603 MapLayer SIP_MONKEYPATCH_COMPAT_NAME( TypeMapLayer ) = -2,
3604 VectorAnyGeometry SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorAnyGeometry ) = -1,
3605 VectorPoint SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorPoint ) = 0,
3606 VectorLine SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorLine ) = 1,
3607 VectorPolygon SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorPolygon ) = 2,
3608 Raster SIP_MONKEYPATCH_COMPAT_NAME( TypeRaster ) = 3,
3609 File SIP_MONKEYPATCH_COMPAT_NAME( TypeFile ) = 4,
3610 Vector SIP_MONKEYPATCH_COMPAT_NAME( TypeVector ) = 5,
3611 Mesh SIP_MONKEYPATCH_COMPAT_NAME( TypeMesh ) = 6,
3612 Plugin SIP_MONKEYPATCH_COMPAT_NAME( TypePlugin ) = 7,
3613 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( TypePointCloud ) = 8,
3614 Annotation SIP_MONKEYPATCH_COMPAT_NAME( TypeAnnotation ) = 9,
3615 VectorTile SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorTile ) = 10,
3616 TiledScene = 11
3617 };
3618 Q_ENUM( ProcessingSourceType )
3619
3620
3621
3629 {
3630 DeemphasiseSearchResults SIP_MONKEYPATCH_COMPAT_NAME( FlagDeemphasiseSearchResults ) = 1 << 1,
3631 CompatibleWithVirtualRaster SIP_MONKEYPATCH_COMPAT_NAME( FlagCompatibleWithVirtualRaster ) = 1 << 2,
3632 };
3634
3643 Q_FLAG( ProcessingProviderFlags )
3644
3645
3653 {
3654 HideFromToolbox SIP_MONKEYPATCH_COMPAT_NAME( FlagHideFromToolbox ) = 1 << 1,
3655 HideFromModeler SIP_MONKEYPATCH_COMPAT_NAME( FlagHideFromModeler ) = 1 << 2,
3656 SupportsBatch SIP_MONKEYPATCH_COMPAT_NAME( FlagSupportsBatch ) = 1 << 3,
3657 CanCancel SIP_MONKEYPATCH_COMPAT_NAME( FlagCanCancel ) = 1 << 4,
3658 RequiresMatchingCrs SIP_MONKEYPATCH_COMPAT_NAME( FlagRequiresMatchingCrs ) = 1 << 5,
3659 NoThreading SIP_MONKEYPATCH_COMPAT_NAME( FlagNoThreading ) = 1 << 6,
3660 DisplayNameIsLiteral SIP_MONKEYPATCH_COMPAT_NAME( FlagDisplayNameIsLiteral ) = 1 << 7,
3661 SupportsInPlaceEdits SIP_MONKEYPATCH_COMPAT_NAME( FlagSupportsInPlaceEdits ) = 1 << 8,
3662 KnownIssues SIP_MONKEYPATCH_COMPAT_NAME( FlagKnownIssues ) = 1 << 9,
3663 CustomException SIP_MONKEYPATCH_COMPAT_NAME( FlagCustomException ) = 1 << 10,
3664 PruneModelBranchesBasedOnAlgorithmResults SIP_MONKEYPATCH_COMPAT_NAME( FlagPruneModelBranchesBasedOnAlgorithmResults ) = 1 << 11,
3665 SkipGenericModelLogging SIP_MONKEYPATCH_COMPAT_NAME( FlagSkipGenericModelLogging ) = 1 << 12,
3666 NotAvailableInStandaloneTool SIP_MONKEYPATCH_COMPAT_NAME( FlagNotAvailableInStandaloneTool ) = 1 << 13,
3667 RequiresProject SIP_MONKEYPATCH_COMPAT_NAME( FlagRequiresProject ) = 1 << 14,
3668 SecurityRisk = 1 << 15,
3669 Deprecated SIP_MONKEYPATCH_COMPAT_NAME( FlagDeprecated ) = HideFromToolbox | HideFromModeler,
3670 };
3672
3681 Q_FLAG( ProcessingAlgorithmFlags )
3682
3683
3689 {
3690 RegeneratesPrimaryKey = 1 << 0,
3691 RegeneratesPrimaryKeyInSomeScenarios = 1 << 1,
3692 RespectsEllipsoid = 1 << 2,
3693 };
3694 Q_ENUM( ProcessingAlgorithmDocumentationFlag )
3695
3696
3703
3713 {
3714 NotAvailable,
3715 Available,
3716 };
3717 Q_ENUM( ProcessingPropertyAvailability )
3718
3719
3727 {
3728 DefaultLevel = 0,
3729 Verbose,
3730 ModelDebug,
3731 };
3732 Q_ENUM( ProcessingLogLevel )
3733
3734
3742 {
3743 Standard,
3744 Batch,
3745 Modeler,
3746 };
3747 Q_ENUM( ProcessingMode )
3748
3749
3757 {
3758 OverrideDefaultGeometryCheck SIP_MONKEYPATCH_COMPAT_NAME( FlagOverrideDefaultGeometryCheck ) = 1 << 0,
3759 CreateIndividualOutputPerInputFeature SIP_MONKEYPATCH_COMPAT_NAME( FlagCreateIndividualOutputPerInputFeature ) = 1 << 1,
3760 };
3761 Q_ENUM( ProcessingFeatureSourceDefinitionFlag )
3762
3763
3772
3781 {
3782 SkipGeometryValidityChecks SIP_MONKEYPATCH_COMPAT_NAME( FlagSkipGeometryValidityChecks ) = 1 << 1,
3783 };
3784 Q_ENUM( ProcessingFeatureSourceFlag )
3785
3786
3795
3807 {
3808 ExposeToModeler = 1
3809 };
3810 Q_ENUM( ProcessingParameterTypeFlag )
3811
3812
3824
3833 {
3834 Advanced SIP_MONKEYPATCH_COMPAT_NAME( FlagAdvanced ) = 1 << 1,
3835 Hidden SIP_MONKEYPATCH_COMPAT_NAME( FlagHidden ) = 1 << 2,
3836 Optional SIP_MONKEYPATCH_COMPAT_NAME( FlagOptional ) = 1 << 3,
3837 IsModelOutput SIP_MONKEYPATCH_COMPAT_NAME( FlagIsModelOutput ) = 1 << 4,
3838 };
3839 Q_ENUM( ProcessingParameterFlag )
3840
3841
3849 Q_FLAG( ProcessingParameterFlags )
3850
3863 Q_ENUM( ProcessingFileParameterBehavior )
3864
3865
3877 Q_ENUM( ProcessingNumberParameterType )
3878
3879
3887 {
3888 Any = -1,
3889 Numeric = 0,
3890 String = 1,
3891 DateTime = 2,
3892 Binary = 3,
3893 Boolean = 4,
3894 };
3895 Q_ENUM( ProcessingFieldParameterDataType )
3896
3897
3910 Q_ENUM( ProcessingDateTimeParameterDataType )
3911
3912
3918 {
3919 ModelParameter,
3920 ChildOutput,
3921 StaticValue,
3922 Expression,
3923 ExpressionText,
3924 ModelOutput,
3925 };
3926 Q_ENUM( ProcessingModelChildParameterSource )
3927
3928
3934 {
3935 NotExecuted,
3937 Failed,
3938 };
3939 Q_ENUM( ProcessingModelChildAlgorithmExecutionStatus )
3940
3941
3949 {
3950 Vertices,
3951 StructureLines,
3952 BreakLines
3953 };
3954 Q_ENUM( ProcessingTinInputLayerType )
3955
3956
3966 Q_ENUM( CrsDefinitionFormat )
3967
3968
3976 enum class FieldDomainSplitPolicy : int
3977 {
3978 DefaultValue,
3979 Duplicate,
3980 GeometryRatio,
3981 UnsetField,
3982 };
3983 Q_ENUM( FieldDomainSplitPolicy )
3984
3985
3993 enum class FieldDomainMergePolicy : int
3994 {
3995 DefaultValue,
3996 Sum,
3997 GeometryWeighted,
3998 UnsetField,
3999 LargestGeometry,
4000 MinimumValue,
4001 MaximumValue,
4002 SetToNull,
4003 };
4004 Q_ENUM( FieldDomainMergePolicy )
4005
4006
4013 enum class FieldDuplicatePolicy : int
4014 {
4015 DefaultValue,
4016 Duplicate,
4017 UnsetField,
4018 };
4019 Q_ENUM( FieldDuplicatePolicy )
4020
4021
4026 enum class FieldDomainType : int
4027 {
4028 Coded,
4029 Range,
4030 Glob,
4031 };
4032 Q_ENUM( FieldDomainType )
4033
4034
4039 enum class TransactionMode : int
4040 {
4041 Disabled = 0,
4042 AutomaticGroups = 1,
4043 BufferedGroups = 2,
4044 };
4045 Q_ENUM( TransactionMode )
4046
4047
4052 enum class AltitudeClamping : int
4053 {
4054 Absolute,
4055 Relative,
4056 Terrain,
4057 };
4058 Q_ENUM( AltitudeClamping )
4059
4060
4065 enum class AltitudeBinding : int
4066 {
4067 Vertex,
4068 Centroid,
4069 };
4070 Q_ENUM( AltitudeBinding )
4071
4072
4077 enum class RangeLimits : int
4078 {
4079 IncludeBoth = 0,
4080 IncludeLowerExcludeUpper,
4081 ExcludeLowerIncludeUpper,
4082 ExcludeBoth,
4083 };
4084 Q_ENUM( RangeLimits )
4085
4086
4091 enum class RasterElevationMode : int
4092 {
4093 FixedElevationRange = 0,
4094 RepresentsElevationSurface = 1,
4095 FixedRangePerBand = 2,
4096 DynamicRangePerBand = 3,
4097 };
4098 Q_ENUM( RasterElevationMode )
4099
4100
4105 enum class MeshElevationMode : int
4106 {
4107 FixedElevationRange = 0,
4108 FromVertices = 1,
4109 FixedRangePerGroup = 2,
4110 };
4111 Q_ENUM( MeshElevationMode )
4112
4113
4119 {
4120 NoConstraint,
4121 Perpendicular,
4122 Parallel
4123 };
4124 Q_ENUM( BetweenLineConstraint )
4125
4126
4131 enum class LineExtensionSide : int
4132 {
4133 BeforeVertex,
4134 AfterVertex,
4135 NoVertex,
4136 };
4137 Q_ENUM( LineExtensionSide )
4138
4139
4140
4144 enum class CadConstraintType : int
4145 {
4146 Generic,
4147 Angle,
4148 Distance,
4149 XCoordinate,
4150 YCoordinate,
4151 ZValue,
4152 MValue,
4153 };
4154 Q_ENUM( CadConstraintType )
4155
4156
4161 {
4162 Hidden,
4163 Cartesian,
4164 Ellipsoidal,
4165 };
4166 Q_ENUM( CadMeasurementDisplayType )
4167
4168
4173 enum class ProjectFlag : int SIP_ENUM_BASETYPE( IntFlag )
4174 {
4175 EvaluateDefaultValuesOnProviderSide = 1 << 0,
4176 TrustStoredLayerStatistics = 1 << 1,
4177 RememberLayerEditStatusBetweenSessions = 1 << 2,
4178 RememberAttributeTableWindowsBetweenSessions = 1 << 3,
4179 };
4180 Q_ENUM( ProjectFlag )
4181 Q_DECLARE_FLAGS( ProjectFlags, ProjectFlag )
4182 Q_FLAG( ProjectFlags )
4183
4189 enum class PlotToolFlag : int SIP_ENUM_BASETYPE( IntFlag )
4190 {
4191 ShowContextMenu = 1 << 0,
4192 };
4193 Q_ENUM( PlotToolFlag )
4194 Q_DECLARE_FLAGS( PlotToolFlags, PlotToolFlag )
4195 Q_FLAG( PlotToolFlags )
4196
4197
4205 enum class Point3DShape : int
4206 {
4207 Cylinder,
4208 Sphere,
4209 Cone,
4210 Cube,
4211 Torus,
4212 Plane,
4213 ExtrudedText,
4214 Model,
4215 Billboard,
4216 };
4217 Q_ENUM( Point3DShape )
4218
4219
4224 enum class LightSourceType : int
4225 {
4226 Point,
4227 Directional,
4228 };
4229 Q_ENUM( LightSourceType )
4230
4231
4236 enum class NavigationMode : int
4237 {
4238 TerrainBased,
4239 Walk,
4240 GlobeTerrainBased
4241 };
4242 Q_ENUM( NavigationMode )
4243
4244
4249 enum class SceneMode : int
4250 {
4251 Local,
4252 Globe
4253 };
4254 Q_ENUM( SceneMode )
4255
4256
4261 enum class VerticalAxisInversion : int
4262 {
4263 Never,
4264 WhenDragging,
4265 Always,
4266 };
4267 Q_ENUM( VerticalAxisInversion )
4268
4269
4275 {
4276 Line,
4277 FillBelow,
4278 FillAbove,
4279 };
4281
4287 enum class VectorProfileType : int
4288 {
4289 IndividualFeatures,
4290 ContinuousSurface,
4291 };
4293
4299 enum class PointCloudProfileType : int
4300 {
4301 IndividualPoints,
4302 TriangulatedSurface,
4303 };
4305
4311 enum class ProfileGeneratorFlag : int SIP_ENUM_BASETYPE( IntFlag )
4312 {
4313 RespectsMaximumErrorMapUnit = 1 << 0,
4314 RespectsDistanceRange = 1 << 1,
4315 RespectsElevationRange = 1 << 2,
4316 };
4317 Q_ENUM( ProfileGeneratorFlag )
4319 Q_FLAG( ProfileGeneratorFlags )
4320
4326 enum class ProfileExportType : int
4327 {
4328 Features3D,
4329 Profile2D,
4330 DistanceVsElevationTable,
4331 };
4333
4340 {
4341 Square,
4342 Circle,
4343 };
4344 Q_ENUM( PointCloudSymbol )
4345
4346
4352 {
4353 Default,
4354 BottomToTop,
4355 TopToBottom,
4356 };
4357 Q_ENUM( PointCloudDrawOrder )
4358
4359
4367 {
4368 AllowIntersections,
4369 AvoidIntersectionsCurrentLayer,
4370 AvoidIntersectionsLayers,
4371 };
4372 Q_ENUM( AvoidIntersectionsMode )
4373
4374
4382 {
4383 Qgz,
4384 Qgs,
4385 };
4386 Q_ENUM( ProjectFileFormat )
4387
4388
4396 {
4397 DontResolveLayers SIP_MONKEYPATCH_COMPAT_NAME( FlagDontResolveLayers ) = 1 << 0,
4398 DontLoadLayouts SIP_MONKEYPATCH_COMPAT_NAME( FlagDontLoadLayouts ) = 1 << 1,
4399 TrustLayerMetadata SIP_MONKEYPATCH_COMPAT_NAME( FlagTrustLayerMetadata ) = 1 << 2,
4400 DontStoreOriginalStyles SIP_MONKEYPATCH_COMPAT_NAME( FlagDontStoreOriginalStyles ) = 1 << 3,
4401 DontLoad3DViews SIP_MONKEYPATCH_COMPAT_NAME( FlagDontLoad3DViews ) = 1 << 4,
4402 DontLoadProjectStyles = 1 << 5,
4403 ForceReadOnlyLayers = 1 << 6,
4404 DontUpgradeAnnotations = 1 << 7,
4405 };
4406 Q_ENUM( ProjectReadFlag )
4407
4408
4416 Q_FLAG( ProjectReadFlags )
4417
4426 enum class ProjectCapability : int SIP_ENUM_BASETYPE( IntFlag )
4427 {
4428 ProjectStyles = 1 << 0,
4429 };
4430 Q_ENUM( ProjectCapability )
4431
4432
4438 Q_FLAG( ProjectCapabilities )
4439
4446 {
4447 Vector,
4448 Raster,
4449 RasterDem,
4450 GeoJson,
4451 Image,
4452 Video,
4453 Unknown,
4454 };
4455 Q_ENUM( MapBoxGlStyleSourceType )
4456
4457
4465 {
4466 FeatureServer SIP_MONKEYPATCH_COMPAT_NAME( FeatureService ),
4467 MapServer SIP_MONKEYPATCH_COMPAT_NAME( MapService ),
4468 ImageServer SIP_MONKEYPATCH_COMPAT_NAME( ImageService ),
4469 GlobeServer,
4470 GPServer,
4471 GeocodeServer,
4472 Unknown,
4473 SceneServer,
4474 };
4475 Q_ENUM( ArcGisRestServiceType )
4476
4477
4485 {
4486 Normal,
4487 Generated,
4488 };
4489 Q_ENUM( RelationshipType )
4490
4491
4499 {
4500 Association,
4501 Composition,
4502 };
4503 Q_ENUM( RelationshipStrength )
4504
4505
4511 {
4512 OneToOne,
4513 OneToMany,
4514 ManyToOne,
4515 ManyToMany,
4516 };
4517 Q_ENUM( RelationshipCardinality )
4518
4519
4524 enum class RelationshipCapability : int SIP_ENUM_BASETYPE( IntFlag )
4525 {
4526 MultipleFieldKeys = 1 << 0,
4527 ForwardPathLabel = 1 << 1,
4528 BackwardPathLabel = 1 << 2,
4529 };
4530 Q_ENUM( RelationshipCapability )
4531
4532
4538 Q_FLAG( RelationshipCapabilities )
4539
4545 enum class CoordinateDisplayType : int
4546 {
4547 MapCrs,
4548 MapGeographic,
4549 CustomCrs,
4550 };
4551 Q_ENUM( CoordinateDisplayType )
4552
4553
4558 enum class SettingsOrigin : int
4559 {
4560 Any,
4561 Global,
4562 Local,
4563 };
4564 Q_ENUM( SettingsOrigin )
4565
4566
4571 enum class ScriptLanguage : int
4572 {
4573 Css,
4574 QgisExpression,
4575 Html,
4576 JavaScript,
4577 Json,
4578 Python,
4579 R,
4580 Sql,
4581 Batch,
4582 Bash,
4583 Unknown,
4584 };
4585 Q_ENUM( ScriptLanguage )
4586
4587
4595 {
4596 Reformat = 1 << 0,
4597 CheckSyntax = 1 << 1,
4598 ToggleComment = 1 << 2,
4599 };
4600 Q_ENUM( ScriptLanguageCapability )
4601
4602
4609
4616 {
4617 AboveInsertionPoint,
4618 TopOfTree,
4619 OptimalInInsertionGroup,
4620 };
4621 Q_ENUM( LayerTreeInsertionMethod )
4622
4623
4628 enum class LayerTreeFilterFlag : int SIP_ENUM_BASETYPE( IntFlag )
4629 {
4630 SkipVisibilityCheck = 1 << 0,
4631 };
4632 Q_ENUM( LayerTreeFilterFlag )
4633
4634
4640 Q_FLAG( LayerTreeFilterFlags )
4641
4647 enum class MapLayerLegendFlag : int SIP_ENUM_BASETYPE( IntFlag )
4648 {
4649 ExcludeByDefault = 1 << 0,
4650 };
4651 Q_ENUM( MapLayerLegendFlag )
4652
4653
4659 Q_FLAG( MapLayerLegendFlags )
4660
4669 {
4670 Undefined,
4671 Hidden,
4672 Title,
4673 Group,
4674 Subgroup,
4675 Symbol,
4676 SymbolLabel,
4677 };
4678 // !!! WARNING: If adding new values to this enum, make sure you update QgsLegendSettings constructor accordingly!!
4679 Q_ENUM( LegendComponent )
4680
4681
4686 enum class LegendSyncMode : int
4687 {
4688 AllProjectLayers,
4689 VisibleLayers,
4690 Manual,
4691 };
4692 Q_ENUM( LegendSyncMode )
4693
4694
4701 enum class LegendJsonRenderFlag : int SIP_ENUM_BASETYPE( IntFlag )
4702 {
4703 ShowRuleDetails = 1 << 0,
4704 };
4705 Q_ENUM( LegendJsonRenderFlag )
4707 Q_FLAG( LegendJsonRenderFlags )
4708
4716 enum class ActionType : int
4717 {
4718 Invalid,
4719 MapLayerAction,
4720 AttributeAction
4721 };
4722 Q_ENUM( ActionType )
4723
4724
4731 enum class MapLayerActionTarget : int SIP_ENUM_BASETYPE( IntFlag )
4732 {
4733 Layer = 1 << 0,
4734 SingleFeature = 1 << 1,
4735 MultipleFeatures = 1 << 2,
4736 AllActions = Layer | SingleFeature | MultipleFeatures
4737 };
4738 Q_ENUM( MapLayerActionTarget )
4739
4740
4748 Q_FLAG( MapLayerActionTargets )
4749
4757 enum class MapLayerActionFlag : int SIP_ENUM_BASETYPE( IntFlag )
4758 {
4759 EnabledOnlyWhenEditable = 1 << 1,
4760 EnableOnlyWhenHasGeometry = 1 << 2,
4761 };
4762 Q_ENUM( MapLayerActionFlag )
4763
4764
4772 Q_FLAG( MapLayerActionFlags )
4773
4782 {
4783 Generic,
4784 GenericPython,
4785 Mac,
4786 Windows,
4787 Unix,
4788 OpenUrl,
4789 SubmitUrlEncoded,
4790 SubmitUrlMultipart,
4791 };
4792 Q_ENUM( AttributeActionType )
4793
4794
4800 {
4801 Created,
4802 Published,
4803 Revised,
4804 Superseded,
4805 };
4806 Q_ENUM( MetadataDateType )
4807
4808
4817
4819 {
4820 Undefined SIP_MONKEYPATCH_COMPAT_NAME( UndefinedColorInterpretation ) = 0,
4821 GrayIndex = 1,
4822 PaletteIndex = 2,
4823 RedBand = 3,
4824 GreenBand = 4,
4825 BlueBand = 5,
4826 AlphaBand = 6,
4827 HueBand = 7,
4828 SaturationBand = 8,
4829 LightnessBand = 9,
4830 CyanBand = 10,
4831 MagentaBand = 11,
4832 YellowBand = 12,
4833 BlackBand = 13,
4834 YCbCr_YBand = 14,
4835 YCbCr_CbBand = 15,
4836 YCbCr_CrBand = 16,
4837 ContinuousPalette = 17,
4838
4839 // Note: values between PanBand and SAR_P_Band match additions done in
4840 // GDAL 3.10, except that the numeric values of the constant don't match GDAL ones
4841
4842 PanBand = 18,
4843 CoastalBand = 19,
4844 RedEdgeBand = 20,
4845 NIRBand = 21,
4846 SWIRBand = 22,
4847 MWIRBand = 23,
4848 LWIRBand = 24,
4849 TIRBand = 25,
4850 OtherIRBand = 26,
4851 SAR_Ka_Band = 27,
4852 SAR_K_Band = 28,
4853 SAR_Ku_Band = 30,
4854 SAR_X_Band = 31,
4855 SAR_C_Band = 32,
4856 SAR_S_Band = 33,
4857 SAR_L_Band = 34,
4858 SAR_P_Band = 35,
4859 };
4860 Q_ENUM( RasterColorInterpretation )
4861
4862
4870 {
4871 GrayOrUndefined,
4872 Palette,
4873 MultiBand SIP_MONKEYPATCH_COMPAT_NAME( Multiband ),
4874 SingleBandColorData SIP_MONKEYPATCH_COMPAT_NAME( ColorLayer ),
4875 };
4876 Q_ENUM( RasterLayerType )
4877
4878
4886 {
4887 Undefined SIP_MONKEYPATCH_COMPAT_NAME( UndefinedDrawingStyle ),
4888 SingleBandGray,
4889 SingleBandPseudoColor,
4890 PalettedColor,
4891 PalettedSingleBandGray,
4892 PalettedSingleBandPseudoColor,
4893 PalettedMultiBandColor,
4894 MultiBandSingleBandGray,
4895 MultiBandSingleBandPseudoColor,
4896 MultiBandColor,
4897 SingleBandColorData SIP_MONKEYPATCH_COMPAT_NAME( SingleBandColorDataStyle ),
4898 };
4899 Q_ENUM( RasterDrawingStyle )
4900
4901
4908 enum class RasterPyramidFormat SIP_MONKEYPATCH_SCOPEENUM_UNNEST( QgsRaster, RasterPyramidsFormat ) : int
4909 {
4910 GeoTiff SIP_MONKEYPATCH_COMPAT_NAME( PyramidsGTiff ) = 0,
4911 Internal SIP_MONKEYPATCH_COMPAT_NAME( PyramidsInternal ) = 1,
4912 Erdas SIP_MONKEYPATCH_COMPAT_NAME( PyramidsErdas ) = 2
4913 };
4914 Q_ENUM( RasterPyramidFormat )
4915
4916
4924 {
4925 No SIP_MONKEYPATCH_COMPAT_NAME( PyramidsFlagNo ) = 0,
4926 Yes SIP_MONKEYPATCH_COMPAT_NAME( PyramidsFlagYes ) = 1,
4927 CopyExisting SIP_MONKEYPATCH_COMPAT_NAME( PyramidsCopyExisting ) = 2
4928 };
4929 Q_ENUM( RasterBuildPyramidOption )
4930
4931
4939 {
4940 Undefined SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatUndefined ) = 0,
4941 Value SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatValue ) = 1,
4942 Text SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatText ) = 1 << 1,
4943 Html SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatHtml ) = 1 << 2,
4944 Feature SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatFeature ) = 1 << 3,
4945 };
4946 Q_ENUM( RasterIdentifyFormat )
4947
4948 // TODO QGIS 5 -- remove NoCapabilities and rely on RasterInterfaceCapabilities() instead
4949 // remove deprecated members
4950 // Remove "Identify" member, and replace with combinations of IdentifyValue/IdentifyText/etc
4951
4952
4960 {
4961 NoCapabilities = 0,
4962 Size = 1 << 1,
4963 Create = 1 << 2,
4964 Remove = 1 << 3,
4965 BuildPyramids = 1 << 4,
4966 Identify = 1 << 5,
4967 IdentifyValue = 1 << 6,
4968 IdentifyText = 1 << 7,
4969 IdentifyHtml = 1 << 8,
4970 IdentifyFeature = 1 << 9,
4971 Prefetch = 1 << 10,
4972 };
4973 Q_ENUM( RasterInterfaceCapability )
4974
4975
4982
4983 // TODO QGIS 5 -- remove NoProviderCapabilities and rely on RasterProviderCapabilities() instead
4984
4993 {
4994 NoProviderCapabilities = 0,
4995 ReadLayerMetadata = 1 << 1,
4996 WriteLayerMetadata = 1 << 2,
4997 ProviderHintBenefitsFromResampling = 1 << 3,
4998 ProviderHintCanPerformProviderResampling = 1 << 4,
4999 ReloadData = 1 << 5,
5000 DpiDependentData = 1 << 6,
5001 NativeRasterAttributeTable = 1 << 7,
5002 BuildPyramids = 1 << 8,
5003 };
5004 Q_ENUM( RasterProviderCapability )
5005
5006
5015
5022 {
5023 HighestElevation,
5024 NewerElevation,
5025 };
5026 Q_ENUM( ElevationMapCombineMethod )
5027
5028
5037 {
5038 Normal SIP_MONKEYPATCH_COMPAT_NAME( BlendNormal ),
5039 Lighten SIP_MONKEYPATCH_COMPAT_NAME( BlendLighten ),
5040 Screen SIP_MONKEYPATCH_COMPAT_NAME( BlendScreen ),
5041 Dodge SIP_MONKEYPATCH_COMPAT_NAME( BlendDodge ),
5042 Addition SIP_MONKEYPATCH_COMPAT_NAME( BlendAddition ),
5043 Darken SIP_MONKEYPATCH_COMPAT_NAME( BlendDarken ),
5044 Multiply SIP_MONKEYPATCH_COMPAT_NAME( BlendMultiply ),
5046 Overlay SIP_MONKEYPATCH_COMPAT_NAME( BlendOverlay ),
5047 SoftLight SIP_MONKEYPATCH_COMPAT_NAME( BlendSoftLight ),
5048 HardLight SIP_MONKEYPATCH_COMPAT_NAME( BlendHardLight ),
5049 Difference SIP_MONKEYPATCH_COMPAT_NAME( BlendDifference ),
5050 Subtract SIP_MONKEYPATCH_COMPAT_NAME( BlendSubtract ),
5051 Source SIP_MONKEYPATCH_COMPAT_NAME( BlendSource ),
5052 DestinationOver SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationOver ),
5053 Clear SIP_MONKEYPATCH_COMPAT_NAME( BlendClear ),
5054 Destination SIP_MONKEYPATCH_COMPAT_NAME( BlendDestination ),
5055 SourceIn SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceIn ),
5056 DestinationIn SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationIn ),
5057 SourceOut SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceOut ),
5058 DestinationOut SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationOut ),
5059 SourceAtop SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceAtop ),
5060 DestinationAtop SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationAtop ),
5062 };
5063 Q_ENUM( BlendMode )
5064
5065
5073 {
5074 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownSystem ) = 0,
5075 Metric SIP_MONKEYPATCH_COMPAT_NAME( MetricSystem ),
5076 Imperial SIP_MONKEYPATCH_COMPAT_NAME( ImperialSystem ),
5077 USCS SIP_MONKEYPATCH_COMPAT_NAME( USCSSystem ),
5078 };
5079 Q_ENUM( SystemOfMeasurement )
5080
5081
5088 {
5089 Layer SIP_MONKEYPATCH_COMPAT_NAME( LayerUnits ),
5090 Pixels,
5091 Project SIP_MONKEYPATCH_COMPAT_NAME( ProjectUnits )
5092 };
5093 Q_ENUM( MapToolUnit )
5094
5095
5103 {
5104 Distance SIP_MONKEYPATCH_COMPAT_NAME( TypeDistance ) = 0,
5106 Volume SIP_MONKEYPATCH_COMPAT_NAME( TypeVolume ),
5107 Unknown SIP_MONKEYPATCH_COMPAT_NAME( TypeUnknown ),
5108 Temporal SIP_MONKEYPATCH_COMPAT_NAME( TypeTemporal ),
5109 };
5110 Q_ENUM( UnitType )
5111
5112
5120 {
5121 Meters SIP_MONKEYPATCH_COMPAT_NAME( DistanceMeters ),
5122 Kilometers SIP_MONKEYPATCH_COMPAT_NAME( DistanceKilometers ),
5123 Feet SIP_MONKEYPATCH_COMPAT_NAME( DistanceFeet ),
5124 NauticalMiles SIP_MONKEYPATCH_COMPAT_NAME( DistanceNauticalMiles ),
5125 Yards SIP_MONKEYPATCH_COMPAT_NAME( DistanceYards ),
5126 Miles SIP_MONKEYPATCH_COMPAT_NAME( DistanceMiles ),
5127 Degrees SIP_MONKEYPATCH_COMPAT_NAME( DistanceDegrees ),
5128 Centimeters SIP_MONKEYPATCH_COMPAT_NAME( DistanceCentimeters ),
5129 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( DistanceMillimeters ),
5130 Inches,
5131 ChainsInternational,
5132 ChainsBritishBenoit1895A,
5133 ChainsBritishBenoit1895B,
5134 ChainsBritishSears1922Truncated,
5135 ChainsBritishSears1922,
5136 ChainsClarkes,
5137 ChainsUSSurvey,
5138 FeetBritish1865,
5139 FeetBritish1936,
5140 FeetBritishBenoit1895A,
5141 FeetBritishBenoit1895B,
5142 FeetBritishSears1922Truncated,
5143 FeetBritishSears1922,
5144 FeetClarkes,
5145 FeetGoldCoast,
5146 FeetIndian,
5147 FeetIndian1937,
5148 FeetIndian1962,
5149 FeetIndian1975,
5150 FeetUSSurvey,
5151 LinksInternational,
5152 LinksBritishBenoit1895A,
5153 LinksBritishBenoit1895B,
5154 LinksBritishSears1922Truncated,
5155 LinksBritishSears1922,
5156 LinksClarkes,
5157 LinksUSSurvey,
5158 YardsBritishBenoit1895A,
5159 YardsBritishBenoit1895B,
5160 YardsBritishSears1922Truncated,
5161 YardsBritishSears1922,
5162 YardsClarkes,
5163 YardsIndian,
5164 YardsIndian1937,
5165 YardsIndian1962,
5166 YardsIndian1975,
5167 MilesUSSurvey,
5168 Fathoms,
5169 MetersGermanLegal,
5170 Unknown SIP_MONKEYPATCH_COMPAT_NAME( DistanceUnknownUnit ),
5171 };
5172 Q_ENUM( DistanceUnit )
5173
5174
5182 {
5183 Standard,
5184 Geographic,
5185 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownType ),
5186 };
5187 Q_ENUM( DistanceUnitType )
5188
5189
5197 {
5198 SquareMeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMeters ),
5199 SquareKilometers SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareKilometers ),
5200 SquareFeet SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareFeet ),
5201 SquareYards SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareYards ),
5202 SquareMiles SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMiles ),
5203 Hectares SIP_MONKEYPATCH_COMPAT_NAME( AreaHectares ),
5204 Acres SIP_MONKEYPATCH_COMPAT_NAME( AreaAcres ),
5205 SquareNauticalMiles SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareNauticalMiles ),
5206 SquareDegrees SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareDegrees ),
5207 SquareCentimeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareCentimeters ),
5208 SquareMillimeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMillimeters ),
5209 SquareInches,
5210 Unknown SIP_MONKEYPATCH_COMPAT_NAME( AreaUnknownUnit ),
5211 };
5212 Q_ENUM( AreaUnit )
5213
5214
5222 {
5223 CubicMeters SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicMeters ),
5224 CubicFeet SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicFeet ),
5225 CubicYards SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicYards ),
5226 Barrel SIP_MONKEYPATCH_COMPAT_NAME( VolumeBarrel ),
5227 CubicDecimeter SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicDecimeter ),
5228 Liters SIP_MONKEYPATCH_COMPAT_NAME( VolumeLiters ),
5229 GallonUS SIP_MONKEYPATCH_COMPAT_NAME( VolumeGallonUS ),
5230 CubicInch SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicInch ),
5231 CubicCentimeter SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicCentimeter ),
5232 CubicDegrees SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicDegrees ),
5233 Unknown SIP_MONKEYPATCH_COMPAT_NAME( VolumeUnknownUnit ),
5234 };
5235 Q_ENUM( VolumeUnit )
5236
5237
5245 {
5246 Degrees SIP_MONKEYPATCH_COMPAT_NAME( AngleDegrees ),
5247 Radians SIP_MONKEYPATCH_COMPAT_NAME( AngleRadians ),
5249 MinutesOfArc SIP_MONKEYPATCH_COMPAT_NAME( AngleMinutesOfArc ),
5250 SecondsOfArc SIP_MONKEYPATCH_COMPAT_NAME( AngleSecondsOfArc ),
5252 MilliradiansSI SIP_MONKEYPATCH_COMPAT_NAME( AngleMilliradiansSI ),
5253 MilNATO SIP_MONKEYPATCH_COMPAT_NAME( AngleMilNATO ),
5254 Unknown SIP_MONKEYPATCH_COMPAT_NAME( AngleUnknownUnit ),
5255 };
5256 Q_ENUM( AngleUnit )
5257
5258
5266 {
5267 Milliseconds SIP_MONKEYPATCH_COMPAT_NAME( TemporalMilliseconds ),
5268 Seconds SIP_MONKEYPATCH_COMPAT_NAME( TemporalSeconds ),
5269 Minutes SIP_MONKEYPATCH_COMPAT_NAME( TemporalMinutes ),
5270 Hours SIP_MONKEYPATCH_COMPAT_NAME( TemporalHours ),
5271 Days SIP_MONKEYPATCH_COMPAT_NAME( TemporalDays ),
5272 Weeks SIP_MONKEYPATCH_COMPAT_NAME( TemporalWeeks ),
5273 Months SIP_MONKEYPATCH_COMPAT_NAME( TemporalMonths ),
5274 Years SIP_MONKEYPATCH_COMPAT_NAME( TemporalYears ),
5275 Decades SIP_MONKEYPATCH_COMPAT_NAME( TemporalDecades ),
5276 Centuries SIP_MONKEYPATCH_COMPAT_NAME( TemporalCenturies ),
5277 IrregularStep SIP_MONKEYPATCH_COMPAT_NAME( TemporalIrregularStep ),
5278 Unknown SIP_MONKEYPATCH_COMPAT_NAME( TemporalUnknownUnit )
5279 };
5280 Q_ENUM( TemporalUnit )
5281
5282
5290 {
5291 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( RenderMillimeters ),
5292 MapUnits SIP_MONKEYPATCH_COMPAT_NAME( RenderMapUnits ),
5293 Pixels SIP_MONKEYPATCH_COMPAT_NAME( RenderPixels ),
5294 Percentage SIP_MONKEYPATCH_COMPAT_NAME( RenderPercentage ),
5296 Inches SIP_MONKEYPATCH_COMPAT_NAME( RenderInches ),
5297 Unknown SIP_MONKEYPATCH_COMPAT_NAME( RenderUnknownUnit ),
5298 MetersInMapUnits SIP_MONKEYPATCH_COMPAT_NAME( RenderMetersInMapUnits ),
5299 };
5300 Q_ENUM( RenderUnit )
5301
5302
5310 {
5311 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( LayoutMillimeters ),
5312 Centimeters SIP_MONKEYPATCH_COMPAT_NAME( LayoutCentimeters ),
5313 Meters SIP_MONKEYPATCH_COMPAT_NAME( LayoutMeters ),
5314 Inches SIP_MONKEYPATCH_COMPAT_NAME( LayoutInches ),
5315 Feet SIP_MONKEYPATCH_COMPAT_NAME( LayoutFeet ),
5317 Picas SIP_MONKEYPATCH_COMPAT_NAME( LayoutPicas ),
5318 Pixels SIP_MONKEYPATCH_COMPAT_NAME( LayoutPixels )
5319 };
5320 Q_ENUM( LayoutUnit )
5321
5322
5330 {
5331 PaperUnits SIP_MONKEYPATCH_COMPAT_NAME( LayoutPaperUnits ),
5332 ScreenUnits SIP_MONKEYPATCH_COMPAT_NAME( LayoutScreenUnits )
5333 };
5334 Q_ENUM( LayoutUnitType )
5335
5336
5344 {
5345 Debug SIP_MONKEYPATCH_COMPAT_NAME( FlagDebug ) = 1 << 1,
5346 OutlineOnly SIP_MONKEYPATCH_COMPAT_NAME( FlagOutlineOnly ) = 1 << 2,
5347 Antialiasing SIP_MONKEYPATCH_COMPAT_NAME( FlagAntialiasing ) = 1 << 3,
5348 UseAdvancedEffects SIP_MONKEYPATCH_COMPAT_NAME( FlagUseAdvancedEffects ) = 1 << 4,
5349 ForceVectorOutput SIP_MONKEYPATCH_COMPAT_NAME( FlagForceVectorOutput ) = 1 << 5,
5350 HideCoverageLayer SIP_MONKEYPATCH_COMPAT_NAME( FlagHideCoverageLayer ) = 1 << 6,
5351 DrawSelection SIP_MONKEYPATCH_COMPAT_NAME( FlagDrawSelection ) = 1 << 7,
5352 DisableTiledRasterLayerRenders SIP_MONKEYPATCH_COMPAT_NAME( FlagDisableTiledRasterLayerRenders ) = 1 << 8,
5353 RenderLabelsByMapLayer SIP_MONKEYPATCH_COMPAT_NAME( FlagRenderLabelsByMapLayer ) = 1 << 9,
5354 LosslessImageRendering SIP_MONKEYPATCH_COMPAT_NAME( FlagLosslessImageRendering ) = 1 << 10,
5355 SynchronousLegendGraphics SIP_MONKEYPATCH_COMPAT_NAME( FlagSynchronousLegendGraphics ) = 1 << 11,
5356 AlwaysUseGlobalMasks SIP_MONKEYPATCH_COMPAT_NAME( FlagAlwaysUseGlobalMasks ) = 1 << 12,
5357 LimitCoverageLayerRenderToCurrentFeature = 1 << 13,
5358 };
5359 Q_ENUM( LayoutRenderFlag )
5360
5361
5369 Q_FLAG( LayoutRenderFlags )
5370
5379 {
5380 SVG SIP_MONKEYPATCH_COMPAT_NAME( FormatSVG ) = 0,
5381 Raster SIP_MONKEYPATCH_COMPAT_NAME( FormatRaster ),
5382 Unknown SIP_MONKEYPATCH_COMPAT_NAME( FormatUnknown ),
5383 };
5384 Q_ENUM( PictureFormat )
5385
5386
5391 enum class ScaleCalculationMethod : int
5392 {
5393 HorizontalTop = 0,
5394 HorizontalMiddle,
5395 HorizontalBottom,
5396 HorizontalAverage,
5397 AtEquator,
5398 };
5399 Q_ENUM( ScaleCalculationMethod )
5400
5401
5414 Q_ENUM( ScaleBarAlignment )
5415
5416
5424 {
5425 Fixed SIP_MONKEYPATCH_COMPAT_NAME( SegmentSizeFixed ) = 0,
5426 FitWidth SIP_MONKEYPATCH_COMPAT_NAME( SegmentSizeFitWidth ) = 1
5427 };
5428 Q_ENUM( ScaleBarSegmentSizeMode )
5429
5430
5438 {
5439 AboveSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelAboveSegment ) = 0,
5440 BelowSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelBelowSegment ),
5441 };
5442 Q_ENUM( ScaleBarDistanceLabelVerticalPlacement )
5443
5444
5452 {
5453 CenteredEdge SIP_MONKEYPATCH_COMPAT_NAME( LabelCenteredEdge ) = 0,
5454 CenteredSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelCenteredSegment ),
5455 };
5456 Q_ENUM( ScaleBarDistanceLabelHorizontalPlacement )
5457
5458
5459
5467 {
5468 MapUnits SIP_MONKEYPATCH_COMPAT_NAME( MapUnit ),
5471 DynamicPageSizeBased,
5472 };
5473 Q_ENUM( MapGridUnit )
5474
5475
5483 {
5485 LineCrosses SIP_MONKEYPATCH_COMPAT_NAME( Cross ),
5486 Markers,
5487 FrameAndAnnotationsOnly SIP_MONKEYPATCH_COMPAT_NAME( FrameAnnotationsOnly )
5488 };
5489 Q_ENUM( MapGridStyle )
5490
5491
5499 {
5500 ShowAll = 0,
5501 LatitudeOnly,
5502 LongitudeOnly,
5503 HideAll
5504 };
5505 Q_ENUM( MapGridComponentVisibility )
5506
5507
5515 {
5516 InsideMapFrame = 0,
5517 OutsideMapFrame,
5518 };
5519 Q_ENUM( MapGridAnnotationPosition )
5520
5521
5529 {
5530 Horizontal = 0,
5531 Vertical,
5532 VerticalDescending,
5533 BoundaryDirection,
5534 AboveTick,
5535 OnTick,
5536 UnderTick,
5537 };
5538 Q_ENUM( MapGridAnnotationDirection )
5539
5540
5548 {
5549 Decimal = 0,
5550 DegreeMinute,
5551 DegreeMinuteSecond,
5552 DecimalWithSuffix,
5553 DegreeMinuteNoSuffix,
5554 DegreeMinutePadded,
5555 DegreeMinuteSecondNoSuffix,
5556 DegreeMinuteSecondPadded,
5557 CustomFormat
5558 };
5559 Q_ENUM( MapGridAnnotationFormat )
5560
5561
5575 Q_ENUM( MapGridBorderSide )
5576
5577
5585 {
5586 NoFrame = 0,
5587 Zebra,
5588 InteriorTicks,
5589 ExteriorTicks,
5590 InteriorExteriorTicks,
5591 LineBorder,
5592 LineBorderNautical,
5593 ZebraNautical,
5594 };
5595 Q_ENUM( MapGridFrameStyle )
5596
5597
5605 {
5606 OrthogonalTicks = 0,
5607 NormalizedTicks,
5608 };
5609 Q_ENUM( MapGridTickLengthMode )
5610
5611
5612
5620 {
5621 Left SIP_MONKEYPATCH_COMPAT_NAME( FrameLeft ) = 0x01,
5622 Right SIP_MONKEYPATCH_COMPAT_NAME( FrameRight ) = 0x02,
5623 Top SIP_MONKEYPATCH_COMPAT_NAME( FrameTop ) = 0x04,
5624 Bottom SIP_MONKEYPATCH_COMPAT_NAME( FrameBottom ) = 0x08
5625 };
5626 Q_ENUM( MapGridFrameSideFlag )
5627
5628
5636 Q_FLAG( MapGridFrameSideFlags )
5637
5646 {
5647 Longitude = 0,
5648 Latitude
5649 };
5650 Q_ENUM( MapGridAnnotationType )
5651
5652
5657 enum class InputControllerType : int
5658 {
5659 Map2D,
5660 Map3D
5661 };
5663
5670 {
5671 NotSet,
5672 Unknown,
5673 OrdinaryTable,
5674 Index,
5675 Sequence,
5676 View,
5677 MaterializedView,
5678 CompositeType,
5679 ToastTable,
5680 ForeignTable,
5681 PartitionedTable,
5682 };
5683 Q_ENUM( PostgresRelKind )
5684
5685
5691 {
5692 SetFieldComment = 1 << 0,
5693 SetFieldAlias = 1 << 1,
5694 SetTableComment = 1 << 2,
5695 EditFieldDomain = 1 << 3,
5696 DeleteFieldDomain = 1 << 4,
5697 };
5698 Q_ENUM( DatabaseProviderConnectionCapability2 )
5701
5708 {
5709 SetGeometryColumnName = 1 << 0,
5710 SetPrimaryKeyName = 1 << 1,
5711 };
5712 Q_ENUM( DatabaseProviderTableImportCapability )
5715
5722 {
5723 SaveToDatabase = 1 << 1,
5724 LoadFromDatabase = 1 << 2,
5725 DeleteFromDatabase = 1 << 3
5726 };
5730
5731
5737 {
5738 LastProfile,
5739 DefaultProfile,
5740 AskUser,
5741 };
5742 Q_ENUM( UserProfileSelectionPolicy )
5743
5744
5752 {
5753 Container SIP_MONKEYPATCH_COMPAT_NAME( AeTypeContainer ),
5754 Field SIP_MONKEYPATCH_COMPAT_NAME( AeTypeField ),
5755 Relation SIP_MONKEYPATCH_COMPAT_NAME( AeTypeRelation ),
5756 QmlElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeQmlElement ),
5757 HtmlElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeHtmlElement ),
5758 Action SIP_MONKEYPATCH_COMPAT_NAME( AeTypeAction ),
5759 TextElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeTextElement ),
5760 SpacerElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeSpacerElement ),
5761 Invalid SIP_MONKEYPATCH_COMPAT_NAME( AeTypeInvalid ),
5762 };
5763 Q_ENUM( AttributeEditorType )
5764
5765
5771 {
5772 GroupBox,
5773 Tab,
5774 Row,
5775 };
5776 Q_ENUM( AttributeEditorContainerType )
5777
5778
5786 {
5787 AutoGenerated SIP_MONKEYPATCH_COMPAT_NAME( GeneratedLayout ) = 0,
5788 DragAndDrop SIP_MONKEYPATCH_COMPAT_NAME( TabLayout ) = 1,
5789 UiFile SIP_MONKEYPATCH_COMPAT_NAME( UiFileLayout ) = 2
5790 };
5791 Q_ENUM( AttributeFormLayout )
5792
5793
5801 {
5802 Default SIP_MONKEYPATCH_COMPAT_NAME( SuppressDefault ) = 0,
5803 On SIP_MONKEYPATCH_COMPAT_NAME( SuppressOn ) = 1,
5804 Off SIP_MONKEYPATCH_COMPAT_NAME( SuppressOff ) = 2
5805 };
5806 Q_ENUM( AttributeFormSuppression )
5807
5808
5816 {
5817 NoSource SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceNone ) = 0,
5818 File SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceFile ) = 1,
5819 Dialog SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceDialog ) = 2,
5820 Environment SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceEnvironment ) = 3
5821 };
5822 Q_ENUM( AttributeFormPythonInitCodeSource )
5823
5824
5830 {
5831 NotAllowed = 0,
5832 AllowedDefaultOn = 1,
5833 AllowedDefaultOff = 2,
5834 };
5835 Q_ENUM( AttributeFormReuseLastValuePolicy )
5836
5837
5843 {
5845 PointCloud,
5846 RasterCalculator,
5847 };
5848 Q_ENUM( ExpressionType )
5849
5850
5858 {
5859 NoSymbology = 0,
5860 PerFeature SIP_MONKEYPATCH_COMPAT_NAME( FeatureSymbology ),
5861 PerSymbolLayer SIP_MONKEYPATCH_COMPAT_NAME( SymbolLayerSymbology )
5862 };
5863 Q_ENUM( FeatureSymbologyExport )
5864
5865
5870 enum class VectorTileProviderFlag : int SIP_ENUM_BASETYPE( IntFlag )
5871 {
5872 AlwaysUseTileMatrixSetFromProvider = 1 << 1,
5873 };
5874 Q_ENUM( VectorTileProviderFlag )
5875
5876
5882 Q_FLAG( VectorTileProviderFlags )
5883
5889 {
5890 ReadLayerMetadata = 1 << 1,
5891 };
5892 Q_ENUM( VectorTileProviderCapability )
5893
5894
5901
5908 {
5909 Available,
5910 NotAvailable,
5911 AvailableNoChildren,
5912 UseLowerZoomLevelTile,
5913 };
5914 Q_ENUM( TileAvailability )
5915
5916
5922 {
5923 ReadLayerMetadata = 1 << 1,
5924 };
5925 Q_ENUM( TiledSceneProviderCapability )
5926
5927
5934
5941 {
5942 Region,
5943 OrientedBox,
5944 Sphere,
5945 };
5946 Q_ENUM( TiledSceneBoundingVolumeType )
5947
5948
5957 {
5958 Replacement,
5959 Additive,
5960 };
5961 Q_ENUM( TileRefinementProcess )
5962
5963
5969 {
5970 NoChildren,
5971 Available,
5972 NeedFetching,
5973 };
5974 Q_ENUM( TileChildrenAvailability )
5975
5976
5981 enum class TiledSceneRequestFlag : int SIP_ENUM_BASETYPE( IntFlag )
5982 {
5983 NoHierarchyFetch = 1 << 0,
5984 };
5985 Q_ENUM( TiledSceneRequestFlag )
5986
5987
5993 Q_FLAG( TiledSceneRequestFlags )
5994
6000 enum class TiledSceneRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
6001 {
6002 RequiresTextures = 1 << 0,
6003 ForceRasterRender = 1 << 1,
6004 RendersTriangles = 1 << 2,
6005 RendersLines = 1 << 3,
6006 };
6007 Q_ENUM( TiledSceneRendererFlag )
6008
6009
6015 Q_FLAG( TiledSceneRendererFlags )
6016
6022 enum class GdalResampleAlgorithm : int
6023 {
6024 RA_NearestNeighbour = 0,
6025 RA_Bilinear = 1,
6026 RA_Cubic = 2,
6027 RA_CubicSpline = 3,
6028 RA_Lanczos = 4,
6029 RA_Average = 5,
6030 RA_Mode = 6,
6031 RA_Max = 8,
6032 RA_Min = 9,
6033 RA_Median = 10,
6034 RA_Q1 = 11,
6035 RA_Q3 = 12,
6036 };
6037 Q_ENUM( GdalResampleAlgorithm )
6038
6039
6044 enum class VsiHandlerType : int
6045 {
6046 Invalid,
6047 Archive,
6048 Network,
6049 Cloud,
6050 Memory,
6051 Other,
6052 };
6053 Q_ENUM( VsiHandlerType )
6054
6055 // TODO QGIS 5: make All include all values (we can't do this before 4.0, as we need to keep
6056 // compatibility with code which expects all these statistics to give numeric results)
6057
6058
6063 enum class ZonalStatistic : int SIP_ENUM_BASETYPE( IntFlag )
6064 {
6065 Count = 1 << 0,
6066 Sum = 1 << 1,
6067 Mean = 1 << 2,
6068 Median = 1 << 3,
6069 StDev = 1 << 4,
6070 Min = 1 << 5,
6071 Max = 1 << 6,
6072 Range = 1 << 7,
6073 Minority = 1 << 8,
6074 Majority = 1 << 9,
6075 Variety = 1 << 10,
6076 Variance = 1 << 11,
6077 MinimumPoint = 1 << 12,
6078 MaximumPoint = 1 << 13,
6079 All = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
6080 AllNumeric = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
6081 Default = Count | Sum | Mean,
6082 };
6083 Q_ENUM( ZonalStatistic )
6084
6085
6091 Q_FLAG( ZonalStatistics )
6092
6098 enum class ZonalStatisticResult : int
6099 {
6101 LayerTypeWrong = 1,
6102 LayerInvalid,
6103 RasterInvalid,
6104 RasterBandInvalid,
6105 FailedToCreateField = 8,
6106 Canceled = 9
6107 };
6108 Q_ENUM( ZonalStatisticResult )
6109
6110
6117 {
6118 Count,
6119 CountDistinct,
6120 CountMissing,
6121 Min,
6122 Max,
6123 Sum,
6124 Mean,
6125 Median,
6126 StDev,
6127 StDevSample,
6128 Range,
6129 Minority,
6130 Majority,
6131 FirstQuartile,
6132 ThirdQuartile,
6133 InterQuartileRange,
6134 StringMinimumLength,
6135 StringMaximumLength,
6136 StringConcatenate,
6137 GeometryCollect,
6138 ArrayAggregate,
6139 StringConcatenateUnique
6140 };
6141 Q_ENUM( Aggregate )
6142
6143
6149 {
6150 Count = 1 << 0,
6151 CountMissing = 1 << 15,
6152 Sum = 1 << 1,
6153 Mean = 1 << 2,
6154 Median = 1 << 3,
6155 StDev = 1 << 4,
6156 StDevSample = 1 << 5,
6157 Min = 1 << 6,
6158 Max = 1 << 7,
6159 Range = 1 << 8,
6160 Minority = 1 << 9,
6161 Majority = 1 << 10,
6162 Variety = 1 << 11,
6163 FirstQuartile = 1 << 12,
6164 ThirdQuartile = 1 << 13,
6165 InterQuartileRange = 1 << 14,
6166 First = 1 << 16,
6167 Last = 1 << 17,
6168 All = Count | CountMissing | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | FirstQuartile | ThirdQuartile | InterQuartileRange | First | Last
6169 };
6170 Q_ENUM( Statistic )
6171
6172
6178 Q_FLAG( Statistics )
6179
6186 {
6187 Count = 1,
6188 CountDistinct = 2,
6189 CountMissing = 4,
6190 Min = 8,
6191 Max = 16,
6192 Range = 32,
6193 All = Count | CountDistinct | CountMissing | Min | Max | Range,
6194 };
6195 Q_ENUM( DateTimeStatistic )
6196
6197
6203 Q_FLAG( DateTimeStatistics )
6204
6211 {
6212 Count = 1,
6213 CountDistinct = 2,
6214 CountMissing = 4,
6215 Min = 8,
6216 Max = 16,
6217 MinimumLength = 32,
6218 MaximumLength = 64,
6219 MeanLength = 128,
6220 Minority = 256,
6221 Majority = 512,
6222 All = Count | CountDistinct | CountMissing | Min | Max | MinimumLength | MaximumLength | MeanLength | Minority | Majority,
6223 };
6224 Q_ENUM( StringStatistic )
6225
6226
6232 Q_FLAG( StringStatistics )
6233
6240 {
6241 NoStatistic = 0,
6242 Min = 1,
6243 Max = 1 << 1,
6244 Range = 1 << 2,
6245 Sum = 1 << 3,
6246 Mean = 1 << 4,
6247 StdDev = 1 << 5,
6248 SumOfSquares = 1 << 6,
6249 All = Min | Max | Range | Sum | Mean | StdDev | SumOfSquares
6250 };
6251 Q_ENUM( RasterBandStatistic )
6252
6253
6259 Q_FLAG( RasterBandStatistics )
6260
6266 enum class SensorThingsEntity : int
6267 {
6268 Invalid,
6269 Thing,
6270 Location,
6271 HistoricalLocation,
6272 Datastream,
6273 Sensor,
6274 ObservedProperty,
6275 Observation,
6276 FeatureOfInterest,
6277 MultiDatastream,
6278 };
6279 Q_ENUM( SensorThingsEntity )
6280
6281
6286 enum class ColorModel : int
6287 {
6288 Rgb,
6289 Cmyk,
6290 };
6291 Q_ENUM( ColorModel )
6292
6293
6298 enum class DocumentationApi : int
6299 {
6300 PyQgis,
6301 PyQgisSearch,
6302 CppQgis,
6303 Qt,
6304 };
6305 Q_ENUM( DocumentationApi )
6306
6307
6312 enum class DocumentationBrowser : int
6313 {
6314 DeveloperToolsPanel,
6315 SystemWebBrowser,
6316 };
6317 Q_ENUM( DocumentationBrowser )
6318
6319
6324 enum class MouseHandlesAction : int
6325 {
6326 MoveItem,
6327 ResizeUp,
6328 ResizeDown,
6329 ResizeLeft,
6330 ResizeRight,
6331 ResizeLeftUp,
6332 ResizeRightUp,
6333 ResizeLeftDown,
6334 ResizeRightDown,
6335 RotateTopLeft,
6336 RotateTopRight,
6337 RotateBottomLeft,
6338 RotateBottomRight,
6339 SelectItem,
6340 NoAction
6341 };
6342 Q_ENUM( MouseHandlesAction )
6343
6344
6348 enum class MeshRangeLimit : int
6349 {
6350 NotSet,
6351 MinimumMaximum,
6352 };
6353 Q_ENUM( MeshRangeLimit )
6354
6355
6360 enum class MeshRangeExtent : int
6361 {
6362 WholeMesh,
6363 FixedCanvas,
6364 UpdatedCanvas,
6365 };
6366 Q_ENUM( MeshRangeExtent )
6367
6368
6374 enum class PointCloudAccessType : int
6375 {
6376 Local,
6377 Remote
6378 };
6379 Q_ENUM( PointCloudAccessType )
6380
6381
6386 {
6387 RenderExtents,
6388 RenderOverview,
6389 RenderOverviewAndExtents
6390 };
6391 Q_ENUM( PointCloudZoomOutRenderBehavior )
6392
6393
6398 {
6399 Standard = 0,
6400 Adaptive,
6401 AreaError,
6402 ConstantDensity
6403 };
6404 Q_ENUM( SegmentCalculationMethod )
6405
6406
6410 enum class StacObjectType : int
6411 {
6412 Unknown,
6413 Catalog,
6414 Collection,
6415 Item,
6416 };
6417 Q_ENUM( StacObjectType )
6418
6419
6424 {
6425 WmsScale = 1 << 0,
6426 WmsDpi = 1 << 1,
6427 };
6428 Q_ENUM( RasterProcessingParameterCapability )
6429
6430
6436
6442 {
6443 Status = Qt::UserRole + 1,
6444 Id,
6445 ElapsedTime,
6446 MaximumTime,
6447 Sort,
6448 };
6449 Q_ENUM( DevToolsNodeRole )
6450
6451
6456 enum class ExtrusionFace : int SIP_ENUM_BASETYPE( IntFlag )
6457 {
6458 NoFace = 0,
6459 Walls = 1 << 0,
6460 Roof = 1 << 1,
6461 Floor = 1 << 2
6462 };
6463 Q_ENUM( ExtrusionFace )
6464
6465
6469 Q_DECLARE_FLAGS( ExtrusionFaces, ExtrusionFace )
6470 Q_FLAG( ExtrusionFaces )
6471
6476 enum class TriangulationAlgorithm : int SIP_ENUM_BASETYPE( IntFlag )
6477 {
6478 ConstrainedDelaunay = 0,
6479 Earcut = 1 << 0
6480 };
6481 Q_ENUM( TriangulationAlgorithm )
6482
6483
6486 static const double DEFAULT_SEARCH_RADIUS_MM;
6487
6490
6496 static const QColor DEFAULT_HIGHLIGHT_COLOR;
6497
6501 static const double DEFAULT_HIGHLIGHT_BUFFER_MM;
6502
6507
6515 Q_DECL_DEPRECATED static const double SCALE_PRECISION;
6516
6521 static const double DEFAULT_Z_COORDINATE;
6522
6528 static const double DEFAULT_M_COORDINATE;
6529
6534 static const double UI_SCALE_FACTOR;
6535
6539 static const double DEFAULT_SNAP_TOLERANCE;
6540
6545
6549 static const int USER_CRS_START_ID;
6550
6552 static const double DEFAULT_POINT_SIZE;
6553
6555 static const double DEFAULT_LINE_WIDTH;
6556
6558 static const double DEFAULT_SEGMENT_EPSILON;
6559
6562
6565
6571 static QString defaultProjectScales();
6572
6578 static int geosVersionInt();
6579
6585 static int geosVersionMajor();
6586
6592 static int geosVersionMinor();
6593
6599 static int geosVersionPatch();
6600
6606 static QString geosVersion();
6607
6613 static bool hasSfcgal();
6614
6621 static int sfcgalVersionInt();
6622
6628 static bool hasGeographicLib();
6629
6636 static int geographicLibVersion();
6637
6643 Q_DECL_DEPRECATED static bool hasQtWebkit();
6644
6650 static QString geoNone()
6651 {
6652 return u"NONE"_s;
6653 }
6654
6660 static QString geographicCrsAuthId()
6661 {
6662 return u"EPSG:4326"_s;
6663 }
6664
6669 Q_DECL_DEPRECATED static QString geoWkt()
6670 {
6671 return QStringLiteral(
6672 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]] )"""
6673 );
6674 }
6675
6680 Q_DECL_DEPRECATED static QString geoProj4()
6681 {
6682 return u"+proj=longlat +datum=WGS84 +no_defs"_s;
6683 }
6684
6685};
6686
6689
6781Q_DECLARE_METATYPE( QTimeZone )
6782
6783// hack to workaround warnings when casting void pointers
6784// retrieved from QLibrary::resolve to function pointers.
6785// It's assumed that this works on all systems supporting
6786// QLibrary
6787#define cast_to_fptr(f) f
6788
6789
6797// based on Boojum's code from http://stackoverflow.com/questions/3556687/prevent-firing-signals-in-qt
6798template<class Object> class QgsSignalBlocker SIP_SKIP SIP_SKIP // clazy:exclude=rule-of-three
6799{
6800 public:
6801
6806 explicit QgsSignalBlocker( Object *object )
6807 : mObject( object )
6808 , mPreviousState( object->blockSignals( true ) )
6809 {}
6810
6812 {
6813 mObject->blockSignals( mPreviousState );
6814 }
6815
6817 Object *operator->() { return mObject; }
6818
6819 private:
6820
6821 Object *mObject = nullptr;
6822 bool mPreviousState;
6823
6824};
6825
6838// based on Boojum's code from http://stackoverflow.com/questions/3556687/prevent-firing-signals-in-qt
6839template<class Object> inline QgsSignalBlocker<Object> whileBlocking( Object *object ) SIP_SKIP SIP_SKIP
6840{
6841 return QgsSignalBlocker<Object>( object );
6842}
6843
6845CORE_EXPORT uint qHash( const QVariant &variant );
6846
6852inline QString qgsDoubleToString( double a, int precision = 17 )
6853{
6854 QString str;
6855 if ( precision )
6856 {
6857 if ( precision < 0 )
6858 {
6859 const double roundFactor = std::pow( 10, -precision );
6860 str = QString::number( static_cast< long long >( std::round( a / roundFactor ) * roundFactor ) );
6861 }
6862 else
6863 {
6864 str = QString::number( a, 'f', precision );
6865 if ( str.contains( '.'_L1 ) )
6866 {
6867 // remove ending 0s
6868 int idx = str.length() - 1;
6869 while ( str.at( idx ) == '0' && idx > 1 )
6870 {
6871 idx--;
6872 }
6873 if ( idx < str.length() - 1 )
6874 str.truncate( str.at( idx ) == '.' ? idx : idx + 1 );
6875 }
6876 }
6877 }
6878 else
6879 {
6880 str = QString::number( a, 'f', precision );
6881 }
6882 // avoid printing -0
6883 // see https://bugreports.qt.io/browse/QTBUG-71439
6884 if ( str == "-0"_L1 )
6885 {
6886 return "0"_L1;
6887 }
6888 return str;
6889}
6890
6897inline bool qgsNanCompatibleEquals( double a, double b )
6898{
6899 const bool aIsNan = std::isnan( a );
6900 const bool bIsNan = std::isnan( b );
6901 if ( aIsNan || bIsNan )
6902 return aIsNan && bIsNan;
6903
6904 return a == b;
6905}
6906
6907#ifndef SIP_RUN
6908
6916template<typename T>
6917inline bool qgsNumberNear( T a, T b, T epsilon = std::numeric_limits<T>::epsilon() * 4 )
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 const T diff = a - b;
6925 return diff >= -epsilon && diff <= epsilon;
6926}
6927#endif
6928
6935inline bool qgsDoubleNear( double a, double b, double epsilon = 4 * std::numeric_limits<double>::epsilon() )
6936{
6937 return qgsNumberNear<double>( a, b, epsilon );
6938}
6939
6946inline bool qgsFloatNear( float a, float b, float epsilon = 4 * FLT_EPSILON )
6947{
6948 return qgsNumberNear<float>( a, b, epsilon );
6949}
6950
6952inline bool qgsDoubleNearSig( double a, double b, int significantDigits = 10 )
6953{
6954 const bool aIsNan = std::isnan( a );
6955 const bool bIsNan = std::isnan( b );
6956 if ( aIsNan || bIsNan )
6957 return aIsNan && bIsNan;
6958
6959 // The most simple would be to print numbers as %.xe and compare as strings
6960 // but that is probably too costly
6961 // Then the fastest would be to set some bits directly, but little/big endian
6962 // has to be considered (maybe TODO)
6963 // Is there a better way?
6964 int aexp, bexp;
6965 const double ar = std::frexp( a, &aexp );
6966 const double br = std::frexp( b, &bexp );
6967
6968 return aexp == bexp &&
6969 std::round( ar * std::pow( 10.0, significantDigits ) ) == std::round( br * std::pow( 10.0, significantDigits ) );
6970}
6971
6976inline double qgsRound( double number, int places )
6977{
6978 const double m = ( number < 0.0 ) ? -1.0 : 1.0;
6979 const double scaleFactor = std::pow( 10.0, places );
6980 return ( std::round( number * m * scaleFactor ) / scaleFactor ) * m;
6981}
6982
6983#ifndef SIP_RUN
6984
6991template<class Key, class Value>
6992QString qgsMapJoinKeys( const QMap<Key, Value> &map, const QString &separator )
6993{
6994 QString result;
6995 for ( auto it = map.constBegin(); it != map.constEnd(); it++ )
6996 result += QString( "%1%2" ).arg( it.key() ).arg( separator );
6997
6998 result.chop( separator.size() );
6999 return result;
7000}
7001
7008template<class Key, class Value>
7009QString qgsMapJoinValues( const QMap<Key, Value> &map, const QString &separator )
7010{
7011 QString result;
7012 for ( auto it = map.constBegin(); it != map.constEnd(); it++ )
7013 result += QString( "%1%2" ).arg( it.value() ).arg( separator );
7014
7015 result.chop( separator.size() );
7016 return result;
7017}
7018
7025template<class T>
7026QString qgsSetJoin( const QSet<T> &set, const QString &separator )
7027{
7028 QString result;
7029 for ( auto it = set.constBegin(); it != set.constEnd(); it++ )
7030 result += QString( "%1%2" ).arg( *it ).arg( separator );
7031
7032 result.chop( separator.size() );
7033 return result;
7034}
7035
7037
7047namespace qgis
7048{
7049
7062 template<typename To, typename From> inline To down_cast( From *f )
7063 {
7064 static_assert(
7065 ( std::is_base_of<From,
7066 typename std::remove_pointer<To>::type>::value ),
7067 "target type not derived from source type" );
7068 Q_ASSERT( f == nullptr || dynamic_cast<To>( f ) != nullptr );
7069 return static_cast<To>( f );
7070 }
7071
7072 template<class T>
7073 QSet<T> listToSet( const QList<T> &list )
7074 {
7075 return QSet<T>( list.begin(), list.end() );
7076 }
7077
7078 template<class T>
7079 QList<T> setToList( const QSet<T> &set )
7080 {
7081 return QList<T>( set.begin(), set.end() );
7082 }
7083}
7084
7086#endif
7087
7092template<class T> const QList<T> qgsEnumList() SIP_SKIP
7093{
7094 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7095 Q_ASSERT( metaEnum.isValid() );
7096 QList<T> enumList;
7097 for ( int idx = 0; idx < metaEnum.keyCount(); ++idx )
7098 {
7099 enumList.append( static_cast<T>( metaEnum.value( idx ) ) );
7100 }
7101 return enumList;
7102}
7103
7109template<class T> const QMap<T, QString> qgsEnumMap() SIP_SKIP
7110{
7111 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7112 Q_ASSERT( metaEnum.isValid() );
7113 QMap<T, QString> enumMap;
7114 for ( int idx = 0; idx < metaEnum.keyCount(); ++idx )
7115 {
7116 enumMap.insert( static_cast<T>( metaEnum.value( idx ) ), QString( metaEnum.key( idx ) ) );
7117 }
7118 return enumMap;
7119}
7120
7126template<class T> QString qgsEnumValueToKey( const T &value, bool *returnOk = nullptr ) SIP_SKIP
7127{
7128 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7129 Q_ASSERT( metaEnum.isValid() );
7130 const char *key = metaEnum.valueToKey( static_cast<int>( value ) );
7131 if ( returnOk )
7132 {
7133 *returnOk = key ? true : false;
7134 }
7135 return QString::fromUtf8( key );
7136}
7137
7145template<class T> T qgsEnumKeyToValue( const QString &key, const T &defaultValue, bool tryValueAsKey = true, bool *returnOk = nullptr ) SIP_SKIP
7146{
7147 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7148 Q_ASSERT( metaEnum.isValid() );
7149 bool ok = false;
7150 T v = static_cast<T>( metaEnum.keyToValue( key.toUtf8().data(), &ok ) );
7151 if ( returnOk )
7152 {
7153 *returnOk = ok;
7154 }
7155 if ( ok )
7156 {
7157 return v;
7158 }
7159 else
7160 {
7161 // if conversion has failed, try with conversion from int value
7162 if ( tryValueAsKey )
7163 {
7164 bool canConvert = false;
7165 const int intValue = key.toInt( &canConvert );
7166 if ( canConvert && metaEnum.valueToKey( intValue ) )
7167 {
7168 if ( returnOk )
7169 {
7170 *returnOk = true;
7171 }
7172 return static_cast<T>( intValue );
7173 }
7174 }
7175 }
7176 return defaultValue;
7177}
7178
7184template<class T> QString qgsFlagValueToKeys( const T &value, bool *returnOk = nullptr ) SIP_SKIP
7185{
7186 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7187 Q_ASSERT( metaEnum.isValid() );
7188 int intValue = static_cast<int>( value );
7189 const QByteArray ba = metaEnum.valueToKeys( intValue );
7190 // check that the int value does correspond to a flag
7191 // see https://stackoverflow.com/a/68495949/1548052
7192 const int intValueCheck = metaEnum.keysToValue( ba );
7193 bool ok = intValue == intValueCheck;
7194 if ( returnOk )
7195 *returnOk = ok;
7196 return ok ? QString::fromUtf8( ba ) : QString();
7197}
7198
7206template<class T> T qgsFlagKeysToValue( const QString &keys, const T &defaultValue, bool tryValueAsKey = true, bool *returnOk = nullptr ) SIP_SKIP
7207{
7208 if ( keys.isEmpty() )
7209 {
7210 if ( returnOk )
7211 {
7212 *returnOk = false;
7213 }
7214 return defaultValue;
7215 }
7216 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7217 Q_ASSERT( metaEnum.isValid() );
7218 bool ok = false;
7219 T v = static_cast<T>( metaEnum.keysToValue( keys.toUtf8().constData(), &ok ) );
7220 if ( returnOk )
7221 {
7222 *returnOk = ok;
7223 }
7224 if ( ok )
7225 {
7226 return v;
7227 }
7228 else
7229 {
7230 // if conversion has failed, try with conversion from int value
7231 if ( tryValueAsKey )
7232 {
7233 bool canConvert = false;
7234 const int intValue = keys.toInt( &canConvert );
7235 if ( canConvert )
7236 {
7237 const QByteArray keyArray = metaEnum.valueToKeys( intValue );
7238 const int intValueCheck = metaEnum.keysToValue( keyArray );
7239 if ( !keyArray.isEmpty() && intValue == intValueCheck )
7240 {
7241 if ( returnOk )
7242 {
7243 *returnOk = true;
7244 }
7245 return T( intValue );
7246 }
7247 }
7248 }
7249 }
7250 return defaultValue;
7251}
7252
7253
7262CORE_EXPORT double qgsPermissiveToDouble( QString string, bool &ok );
7263
7272CORE_EXPORT int qgsPermissiveToInt( QString string, bool &ok );
7273
7283CORE_EXPORT qlonglong qgsPermissiveToLongLong( QString string, bool &ok );
7284
7304CORE_EXPORT int qgsVariantCompare( const QVariant &lhs, const QVariant &rhs, bool strictTypeCheck = false );
7305
7316CORE_EXPORT bool qgsVariantLessThan( const QVariant &lhs, const QVariant &rhs );
7317
7326CORE_EXPORT bool qgsVariantEqual( const QVariant &lhs, const QVariant &rhs );
7327
7336CORE_EXPORT bool qgsVariantGreaterThan( const QVariant &lhs, const QVariant &rhs );
7337
7349inline bool operator> ( const QVariant &v1, const QVariant &v2 )
7350{
7351 return qgsVariantCompare( v1, v2, true ) > 0;
7352}
7353
7365inline bool operator< ( const QVariant &v1, const QVariant &v2 )
7366{
7367 return qgsVariantCompare( v1, v2, true ) < 0;
7368}
7369
7376Q_DECL_DEPRECATED CORE_EXPORT QString qgsVsiPrefix( const QString &path ) SIP_DEPRECATED;
7377
7383void CORE_EXPORT *qgsMalloc( size_t size ) SIP_SKIP;
7384
7389void CORE_EXPORT qgsFree( void *ptr ) SIP_SKIP;
7390
7391#ifndef SIP_RUN
7392
7394class ScopedIntIncrementor
7395{
7396 public:
7397
7398 ScopedIntIncrementor( int *variable )
7399 : mVariable( variable )
7400 {
7401 ( *mVariable )++;
7402 }
7403
7404 ScopedIntIncrementor( const ScopedIntIncrementor &other ) = delete;
7405 ScopedIntIncrementor &operator=( const ScopedIntIncrementor &other ) = delete;
7406
7407 void release()
7408 {
7409 if ( mVariable )
7410 ( *mVariable )--;
7411
7412 mVariable = nullptr;
7413 }
7414
7415 ~ScopedIntIncrementor()
7416 {
7417 release();
7418 }
7419
7420 private:
7421 int *mVariable = nullptr;
7422};
7424
7425#endif
7426
7432Q_DECL_DEPRECATED const long GEOSRID = 4326;
7433
7439Q_DECL_DEPRECATED const long GEOCRS_ID = 3452;
7440
7446Q_DECL_DEPRECATED const long GEO_EPSG_CRS_ID = 4326;
7447
7448typedef QMap<QString, QString> QgsStringMap SIP_SKIP;
7449
7458typedef unsigned long long qgssize;
7459
7460#ifndef SIP_RUN
7461#if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) || defined(__clang__)
7462
7463#define Q_NOWARN_DEPRECATED_PUSH \
7464 _Pragma("GCC diagnostic push") \
7465 _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"");
7466#define Q_NOWARN_DEPRECATED_POP \
7467 _Pragma("GCC diagnostic pop");
7468#define Q_NOWARN_UNREACHABLE_PUSH
7469#define Q_NOWARN_UNREACHABLE_POP
7470
7471#elif defined(_MSC_VER)
7472
7473#define Q_NOWARN_DEPRECATED_PUSH \
7474 __pragma(warning(push)) \
7475 __pragma(warning(disable:4996))
7476#define Q_NOWARN_DEPRECATED_POP \
7477 __pragma(warning(pop))
7478#define Q_NOWARN_UNREACHABLE_PUSH \
7479 __pragma(warning(push)) \
7480 __pragma(warning(disable:4702))
7481#define Q_NOWARN_UNREACHABLE_POP \
7482 __pragma(warning(pop))
7483#else
7484
7485#define Q_NOWARN_DEPRECATED_PUSH
7486#define Q_NOWARN_DEPRECATED_POP
7487#define Q_NOWARN_UNREACHABLE_PUSH
7488#define Q_NOWARN_UNREACHABLE_POP
7489
7490#endif
7491#endif
7492
7493#ifndef QGISEXTERN
7494#ifdef Q_OS_WIN
7495# define QGISEXTERN extern "C" __declspec( dllexport )
7496#else
7497# if defined(__GNUC__) || defined(__clang__)
7498# define QGISEXTERN extern "C" __attribute__ ((visibility ("default")))
7499# else
7500# define QGISEXTERN extern "C"
7501# endif
7502#endif
7503#endif
7504#endif
7505
7506#ifndef SIP_RUN
7507#ifdef _MSC_VER
7508#define BUILTIN_UNREACHABLE \
7509 __assume(false);
7510#elif defined(__GNUC__) && !defined(__clang__)
7511// Workaround a GCC bug where a -Wreturn-type warning is emitted in constructs
7512// like:
7513// switch( mVariableThatCanOnlyBeXorY )
7514// {
7515// case X:
7516// return "foo";
7517// case Y:
7518// return "foo";
7519// }
7520// See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87951
7521#define BUILTIN_UNREACHABLE \
7522 __builtin_unreachable();
7523#else
7524#define BUILTIN_UNREACHABLE
7525#endif
7526#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:5605
DistanceUnitType
Types of distance units.
Definition qgis.h:5182
PieChartLabelType
Pie chart label types.
Definition qgis.h:3417
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:4312
ProcessingSourceType
Processing data source types.
Definition qgis.h:3602
static const Qgis::MapToolUnit DEFAULT_SNAP_UNITS
Default snapping distance units.
Definition qgis.h:6544
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:5635
DataItemProviderCapability
Capabilities for data item providers.
Definition qgis.h:995
ProcessingFileParameterBehavior
Flags which dictate the behavior of QgsProcessingParameterFile.
Definition qgis.h:3859
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:4396
QFlags< DatabaseProviderTableImportCapability > DatabaseProviderTableImportCapabilities
Definition qgis.h:5713
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:5088
PlotAxisSuffixPlacement
Placement options for suffixes in the labels for axis of plots.
Definition qgis.h:3389
static const double DEFAULT_LINE_WIDTH
The default width (in millimeters) for line symbols.
Definition qgis.h:6555
ProcessingModelChildAlgorithmExecutionStatus
Reflects the status of a child algorithm in a Processing model.
Definition qgis.h:3934
QFlags< GpsInformationComponent > GpsInformationComponents
GPS information component.
Definition qgis.h:2042
ScaleBarDistanceLabelHorizontalPlacement
Scale bar distance label horizontal placement.
Definition qgis.h:5452
PointCloudSymbol
Rendering symbols for point cloud points.
Definition qgis.h:4340
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:6506
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:5013
ExpressionType
Expression types.
Definition qgis.h:5843
MapLayerActionFlag
Map layer action flags.
Definition qgis.h:4758
ScaleBarDistanceLabelVerticalPlacement
Scale bar distance label vertical placement.
Definition qgis.h:5438
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:6424
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:4747
VectorTileProviderCapability
Enumeration with capabilities that vector tile data providers might implement.
Definition qgis.h:5889
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:4053
static const int PREVIEW_JOB_DELAY_MS
Delay between the scheduling of 2 preview jobs.
Definition qgis.h:6561
VectorTileProviderFlag
Flags for vector tile data providers.
Definition qgis.h:5871
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:4437
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:4546
ProcessingParameterTypeFlag
Flags which dictate the behavior of Processing parameter types.
Definition qgis.h:3807
QFlags< VectorRenderingSimplificationFlag > VectorRenderingSimplificationFlags
Simplification flags for vector feature rendering.
Definition qgis.h:3102
DashPatternSizeAdjustment
Dash pattern size adjustment options.
Definition qgis.h:3362
static const double DEFAULT_Z_COORDINATE
Default Z coordinate value.
Definition qgis.h:6521
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:3503
DriveType
Drive types.
Definition qgis.h:1145
UnitType
Unit types.
Definition qgis.h:5103
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:5310
Q_ENUM(GpsFixStatus)
RelationshipStrength
Relationship strength.
Definition qgis.h:4499
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:3200
QFlags< ProjectReadFlag > ProjectReadFlags
Project load flags.
Definition qgis.h:4415
LegendComponent
Component of legends which can be styled.
Definition qgis.h:4669
Point3DShape
3D point shape types.
Definition qgis.h:4206
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:6231
BrowserItemState
Browser item states.
Definition qgis.h:957
AttributeEditorContainerType
Attribute editor container types.
Definition qgis.h:5771
QFlags< TiledSceneProviderCapability > TiledSceneProviderCapabilities
Tiled scene data provider capabilities.
Definition qgis.h:5932
FeatureRequestFilterType
Types of feature request filters.
Definition qgis.h:2280
MarkerClipMode
Marker clipping modes.
Definition qgis.h:3320
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:5830
RenderSubcomponentProperty
Rendering subcomponent properties.
Definition qgis.h:3111
ProcessingTinInputLayerType
Defines the type of input layer for a Processing TIN input.
Definition qgis.h:3949
QFlags< DataProviderFlag > DataProviderFlags
Data provider flags.
Definition qgis.h:2373
Statistic
Available generic statistics.
Definition qgis.h:6149
TriangulationAlgorithm
Triangulation algorithms.
Definition qgis.h:6477
SymbolRenderHint
Flags controlling behavior of symbols during rendering.
Definition qgis.h:788
AngleUnit
Units of angles.
Definition qgis.h:5245
MapGridAnnotationPosition
Position for map grid annotations.
Definition qgis.h:5515
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:5801
QFlags< AuthConfigurationStorageCapability > AuthConfigurationStorageCapabilities
Authentication configuration storage capabilities.
Definition qgis.h:150
QFlags< LayerTreeFilterFlag > LayerTreeFilterFlags
Layer tree filter flags.
Definition qgis.h:4639
LayerTreeInsertionMethod
Layer tree insertion methods.
Definition qgis.h:4616
RasterProviderCapability
Raster data provider capabilities.
Definition qgis.h:4993
DatabaseProviderTableImportCapability
Represents capabilities of a database provider connection when importing table data.
Definition qgis.h:5708
LineClipMode
Line clipping modes.
Definition qgis.h:3334
static const double DEFAULT_SNAP_TOLERANCE
Default snapping distance tolerance.
Definition qgis.h:6539
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:6045
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:3443
DatabaseProviderConnectionCapability2
The Capability enum represents the extended operations supported by the connection.
Definition qgis.h:5691
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:4318
QFlags< MapLayerLegendFlag > MapLayerLegendFlags
Map layer legend flags.
Definition qgis.h:4658
MapGridUnit
Units for map grid values.
Definition qgis.h:5467
LabelPrioritization
Label prioritization.
Definition qgis.h:1211
GradientColorSource
Gradient color sources.
Definition qgis.h:3249
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:4870
static const double DEFAULT_M_COORDINATE
Default M coordinate value.
Definition qgis.h:6528
QFlags< VectorLayerTypeFlag > VectorLayerTypeFlags
Vector layer type flags.
Definition qgis.h:435
ScaleBarAlignment
Scalebar alignment.
Definition qgis.h:5409
RasterPyramidFormat
Raster pyramid formats.
Definition qgis.h:4909
ProcessingMode
Types of modes which Processing widgets can be created for.
Definition qgis.h:3742
VectorExportResult
Vector layer export result codes.
Definition qgis.h:1071
DistanceUnit
Units of distance.
Definition qgis.h:5120
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:6349
GradientSpread
Gradient spread options, which control how gradients are rendered outside of their start and end poin...
Definition qgis.h:3293
LegendSyncMode
Legend synchronization mode.
Definition qgis.h:4687
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:6434
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:4145
AttributeFormPythonInitCodeSource
The Python init code source for attribute forms.
Definition qgis.h:5816
PointCountMethod
Methods which define the number of points randomly filling a polygon.
Definition qgis.h:3308
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:6501
MapCanvasFlag
Flags controlling behavior of map canvases.
Definition qgis.h:3529
LayerTreeFilterFlag
Layer tree filter flags.
Definition qgis.h:4629
ExtrusionFace
Extrusion face types for the QgsTessellator.
Definition qgis.h:6457
AttributeFormLayout
Available form types for layout of the attribute form editor.
Definition qgis.h:5786
FeatureRequestFlag
Flags for controlling feature requests.
Definition qgis.h:2252
VertexType
Types of vertex.
Definition qgis.h:3136
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:6023
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:4040
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:6496
ElevationMapCombineMethod
Methods used to select the elevation when two elevation maps are combined.
Definition qgis.h:5022
static Q_DECL_DEPRECATED const double SCALE_PRECISION
Fudge factor used to compare two scales.
Definition qgis.h:6515
RasterDrawingStyle
Raster drawing styles.
Definition qgis.h:4886
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:6564
MeshRangeExtent
Describes the extent used to compute mesh ranges (min/max values).
Definition qgis.h:6361
GpsInformationComponent
GPS information component.
Definition qgis.h:2014
Q_ENUM(PointCloudProfileType)
ViewSyncModeFlag
Synchronization of 2D map canvas and 3D view.
Definition qgis.h:3548
ProcessingProviderFlag
Flags indicating how and when an processing provider operates and should be exposed to users.
Definition qgis.h:3629
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:4427
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:4980
Q_ENUM(VectorProfileType)
AttributeActionType
Attribute action types.
Definition qgis.h:4782
TemporalNavigationMode
Temporal navigation modes.
Definition qgis.h:2592
ProcessingFieldParameterDataType
Processing field parameter data types.
Definition qgis.h:3887
AreaUnit
Units of area.
Definition qgis.h:5197
StringStatistic
Available string statistics.
Definition qgis.h:6211
SelectiveMaskSourceType
Selective masking source types.
Definition qgis.h:3125
FieldDomainMergePolicy
Merge policy for field domains.
Definition qgis.h:3994
ZonalStatistic
Statistics to be calculated during a zonal statistics operation.
Definition qgis.h:6064
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:5569
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:6669
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:5620
GraduatedMethod
Methods for modifying symbols by range in a graduated symbol renderer.
Definition qgis.h:3377
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:5941
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:6469
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:5499
SensorThingsEntity
OGC SensorThings API entity types.
Definition qgis.h:6267
MeshEditingErrorType
Type of error that can occur during mesh frame editing.
Definition qgis.h:1717
FieldDomainSplitPolicy
Split policy for field domains.
Definition qgis.h:3977
ArcGisRestServiceType
Available ArcGIS REST service types.
Definition qgis.h:4465
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:3713
MapRecenteringMode
Modes for recentering map canvases.
Definition qgis.h:3561
RasterRangeAccuracy
Describes the accuracy used to compute raster ranges (min/max values).
Definition qgis.h:1633
ActionType
Action types.
Definition qgis.h:4717
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:3482
QueryStorageBackend
Stored query storage backends.
Definition qgis.h:3588
ProviderStyleStorageCapability
The StorageCapability enum represents the style storage operations supported by the provider.
Definition qgis.h:5722
AvoidIntersectionsMode
Flags which control how intersections of pre-existing feature are handled when digitizing new feature...
Definition qgis.h:4367
MarkerShape
Marker shapes.
Definition qgis.h:3151
StacObjectType
Available types of stac objects.
Definition qgis.h:6411
LegendJsonRenderFlag
Legend JSON export flags.
Definition qgis.h:4702
BlendMode
Blending modes defining the available composition modes that can be used when painting.
Definition qgis.h:5037
RasterElevationMode
Raster layer elevation modes.
Definition qgis.h:4092
Capitalization
String capitalization options.
Definition qgis.h:3460
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:5379
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:4194
ScaleToTileZoomLevelMethod
Available methods for converting map scales to tile zoom levels.
Definition qgis.h:3491
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:5266
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:3962
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:5368
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:3822
TileAvailability
Possible availability states for a tile within a tile matrix.
Definition qgis.h:5908
ProjectFlag
Flags which control the behavior of QgsProjects.
Definition qgis.h:4174
MapGridStyle
Map grid drawing styles.
Definition qgis.h:5483
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:6680
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:4485
ScriptLanguageCapability
Script language capabilities.
Definition qgis.h:4595
RasterInterfaceCapability
Raster interface capabilities.
Definition qgis.h:4960
JoinStyle
Join styles for buffers.
Definition qgis.h:2179
PointCloudDrawOrder
Pointcloud rendering order for 2d views.
Definition qgis.h:4352
QFlags< RasterBandStatistic > RasterBandStatistics
Statistics to be calculated for raster bands.
Definition qgis.h:6258
CadMeasurementDisplayType
Advanced digitizing measurement display types.
Definition qgis.h:4161
ProcessingAlgorithmDocumentationFlag
Flags describing algorithm behavior for documentation purposes.
Definition qgis.h:3689
TextCharacterVerticalAlignment
Text vertical alignment for characters.
Definition qgis.h:3035
FieldDuplicatePolicy
Duplicate policy for fields.
Definition qgis.h:4014
UserProfileSelectionPolicy
User profile selection policy.
Definition qgis.h:5737
static const float DEFAULT_MAPTOPIXEL_THRESHOLD
Default threshold between map coordinates and device coordinates for map2pixel simplification.
Definition qgis.h:6489
QFlags< FileOperationFlag > FileOperationFlags
File operation flags.
Definition qgis.h:2327
DpiMode
DpiMode enum.
Definition qgis.h:3429
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:3680
AltitudeBinding
Altitude binding.
Definition qgis.h:4066
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:6001
MapLayerActionTarget
Map layer action targets.
Definition qgis.h:4732
ShaderClassificationMethod
Color ramp shader classification methods.
Definition qgis.h:1498
MapLayerLegendFlag
Map layer legend flags.
Definition qgis.h:4648
ZonalStatisticResult
Zonal statistics result codes.
Definition qgis.h:6099
ScriptLanguage
Scripting languages.
Definition qgis.h:4572
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:3405
TiledSceneProviderCapability
Tiled scene data provider capabilities.
Definition qgis.h:5922
LabelMultiLineAlignment
Text alignment for multi-line labels.
Definition qgis.h:1396
PointCloudProfileType
Types of elevation profiles to generate for point cloud sources.
Definition qgis.h:4300
RasterBandStatistic
Available raster band statistics.
Definition qgis.h:6240
QFlags< VectorTileProviderCapability > VectorTileProviderCapabilities
Vector tile data provider capabilities.
Definition qgis.h:5899
AuthConfigurationStorageCapability
Authentication configuration storage capabilities.
Definition qgis.h:105
QFlags< ZonalStatistic > ZonalStatistics
Statistics to be calculated during a zonal statistics operation.
Definition qgis.h:6090
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:6313
DataType
Raster data types.
Definition qgis.h:379
Q_ENUM(ProfileSurfaceSymbology)
QFlags< ViewSyncModeFlag > ViewSyncModeFlags
Definition qgis.h:3553
QFlags< SublayerQueryFlag > SublayerQueryFlags
Sublayer query flags.
Definition qgis.h:1457
SystemOfMeasurement
Systems of unit measurement.
Definition qgis.h:5073
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:4262
QFlags< CoordinateTransformationFlag > CoordinateTransformationFlags
Coordinate transformation flags.
Definition qgis.h:2752
RelationshipCapability
Relationship capabilities.
Definition qgis.h:4525
RasterBuildPyramidOption
Raster pyramid building options.
Definition qgis.h:4924
QFlags< VectorProviderCapability > VectorProviderCapabilities
Vector data provider capabilities.
Definition qgis.h:555
NavigationMode
The navigation mode used by 3D cameras.
Definition qgis.h:4237
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:3220
TileChildrenAvailability
Possible availability states for a tile's children.
Definition qgis.h:5969
PointCloudZoomOutRenderBehavior
Point cloud zoom out options.
Definition qgis.h:6386
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:3234
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:6177
PlotToolFlag
Flags that control the way the QgsPlotTools operate.
Definition qgis.h:4190
RenderUnit
Rendering size units.
Definition qgis.h:5290
static QString geographicCrsAuthId()
Geographic coordinate system auth:id string for a default geographic CRS (EPSG:4326).
Definition qgis.h:6660
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:5392
QFlags< TiledSceneRequestFlag > TiledSceneRequestFlags
Flags which control how tiled scene requests behave.
Definition qgis.h:5992
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:4771
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:4027
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:5424
Aggregate
Available aggregates to calculate.
Definition qgis.h:6117
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:6486
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:4446
LayoutUnitType
Types of layout units.
Definition qgis.h:5330
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:3347
FieldMetadataProperty
Standard field metadata values.
Definition qgis.h:1803
MapGridAnnotationType
Annotation coordinate type.
Definition qgis.h:5646
TiledSceneRequestFlag
Flags which control how tiled scene requests behave.
Definition qgis.h:5982
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:3574
static const double DEFAULT_SEGMENT_EPSILON
Default snapping tolerance for segments.
Definition qgis.h:6558
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:4511
GradientType
Gradient types.
Definition qgis.h:3263
QFlags< ScriptLanguageCapability > ScriptLanguageCapabilities
Script language capabilities.
Definition qgis.h:4607
VectorProfileType
Types of elevation profiles to generate for vector sources.
Definition qgis.h:4288
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:4078
QFlags< ProjectFlag > ProjectFlags
Definition qgis.h:4181
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:3848
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:3701
QFlags< RelationshipCapability > RelationshipCapabilities
Relationship capabilities.
Definition qgis.h:4537
QFlags< SymbolRenderHint > SymbolRenderHints
Symbol render hints.
Definition qgis.h:796
VolumeUnit
Units of volume.
Definition qgis.h:5222
CurvedTextFlag
Flags controlling behavior of curved text generation.
Definition qgis.h:3048
AttributeEditorType
Attribute editor types.
Definition qgis.h:5752
QFlags< LegendJsonRenderFlag > LegendJsonRenderFlags
Definition qgis.h:4706
QFlags< ProviderStyleStorageCapability > ProviderStyleStorageCapabilities
Definition qgis.h:5728
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:3770
MapGridFrameStyle
Style for map grid frames.
Definition qgis.h:5585
PointCloudAccessType
The access type of the data, local is for local files and remote for remote files (over HTTP).
Definition qgis.h:6375
ProfileExportType
Types of export for elevation profiles.
Definition qgis.h:4327
MeshElevationMode
Mesh layer elevation modes.
Definition qgis.h:4106
ProjectFileFormat
Flags which control project read behavior.
Definition qgis.h:4382
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:4819
static const int USER_CRS_START_ID
Minimum ID number for a user-defined projection.
Definition qgis.h:6549
ProfileSurfaceSymbology
Surface symbology type for elevation profile plots.
Definition qgis.h:4275
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:6287
RendererUsage
Usage of the renderer.
Definition qgis.h:3516
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:5670
SegmentCalculationMethod
brief Method used to calculate the number of segments for circle approximation
Definition qgis.h:6398
GpsConnectionType
GPS connection types.
Definition qgis.h:1918
Q_ENUM(InputControllerType)
QFlags< DatabaseProviderConnectionCapability2 > DatabaseProviderConnectionCapabilities2
Definition qgis.h:5699
MouseHandlesAction
Action to be performed by the mouse handles.
Definition qgis.h:6325
ProcessingFeatureSourceDefinitionFlag
Flags which control behavior for a Processing feature source.
Definition qgis.h:3757
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:6650
DevToolsNodeRole
Dev tools node custom data roles.
Definition qgis.h:6442
LoadStyleFlag
Flags for loading layer styles.
Definition qgis.h:239
BetweenLineConstraint
Between line constraints which can be enabled.
Definition qgis.h:4119
QFlags< VectorTileProviderFlag > VectorTileProviderFlags
Vector tile data provider flags.
Definition qgis.h:5881
MetadataDateType
Date types for metadata.
Definition qgis.h:4800
QFlags< RasterTemporalCapabilityFlag > RasterTemporalCapabilityFlags
Flags for raster layer temporal capabilities.
Definition qgis.h:2720
ProcessingFeatureSourceFlag
Flags which control how QgsProcessingFeatureSource fetches features.
Definition qgis.h:3781
RasterIdentifyFormat
Raster identify formats.
Definition qgis.h:4939
MapGridAnnotationDirection
Direction of grid annotations.
Definition qgis.h:5529
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:4132
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:3278
QFlags< ProcessingProviderFlag > ProcessingProviderFlags
Flags indicating how and when an processing provider operates and should be exposed to users.
Definition qgis.h:3642
TileRefinementProcess
Tiled scene tile refinement processes.
Definition qgis.h:5957
QFlags< DateTimeStatistic > DateTimeStatistics
Statistics to be calculated for date/time values.
Definition qgis.h:6202
SelectionRenderingMode
Specifies how a selection should be rendered.
Definition qgis.h:1816
InputControllerType
Input controller types.
Definition qgis.h:5658
TextRendererFlag
Flags which control the behavior of rendering text.
Definition qgis.h:3478
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:3918
static int geosVersionInt()
GEOS version number linked.
Definition qgis.cpp:750
QFlags< MarkerLinePlacement > MarkerLinePlacements
Definition qgis.h:3211
QFlags< MapCanvasFlag > MapCanvasFlags
Flags controlling behavior of map canvases.
Definition qgis.h:3539
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:6014
MapGridAnnotationFormat
Format for displaying map grid annotations.
Definition qgis.h:5548
DocumentationApi
Documentation API.
Definition qgis.h:6299
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:3653
SceneMode
The 3D scene mode used in 3D map views.
Definition qgis.h:4250
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:4559
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:3833
LabelOverlapHandling
Label overlap handling.
Definition qgis.h:1186
static const double UI_SCALE_FACTOR
UI scaling factor.
Definition qgis.h:6534
FeatureSymbologyExport
Options for exporting features considering their symbology.
Definition qgis.h:5858
QFlags< LayerFilter > LayerFilters
Definition qgis.h:230
ProcessingDateTimeParameterDataType
Processing date time parameter data types.
Definition qgis.h:3905
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:6186
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:4225
QFlags< ProcessingFeatureSourceFlag > ProcessingFeatureSourceFlags
Flags which control how QgsProcessingFeatureSource fetches features.
Definition qgis.h:3793
QFlags< HistoryProviderBackend > HistoryProviderBackends
Definition qgis.h:3579
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:6552
DeviceConnectionStatus
GPS connection status.
Definition qgis.h:1932
ProcessingNumberParameterType
Processing numeric parameter data types.
Definition qgis.h:3873
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:3727
SelectBehavior
Specifies how a selection should be applied.
Definition qgis.h:1829
LayoutRenderFlag
Flags for controlling how a layout is rendered.
Definition qgis.h:5344
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:113
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:6799
Object * operator->()
Returns pointer to blocked QObject.
Definition qgis.h:6817
QgsSignalBlocker(Object *object)
Constructor for QgsSignalBlocker.
Definition qgis.h:6806
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:7439
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:7349
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:7432
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:7145
QString qgsDoubleToString(double a, int precision=17)
Returns a string representation of a double.
Definition qgis.h:6852
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:7009
QString qgsEnumValueToKey(const T &value, bool *returnOk=nullptr)
Returns the value for the given key of an enum.
Definition qgis.h:7126
QString qgsFlagValueToKeys(const T &value, bool *returnOk=nullptr)
Returns the value for the given keys of a flag.
Definition qgis.h:7184
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:6992
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:7206
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:7458
const QMap< T, QString > qgsEnumMap()
Returns a map of all enum entries.
Definition qgis.h:7109
bool qgsFloatNear(float a, float b, float epsilon=4 *FLT_EPSILON)
Compare two floats (but allow some difference).
Definition qgis.h:6946
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:7026
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:7092
double qgsRound(double number, int places)
Returns a double number, rounded (as close as possible) to the specified number of places.
Definition qgis.h:6976
bool qgsDoubleNear(double a, double b, double epsilon=4 *std::numeric_limits< double >::epsilon())
Compare two doubles (but allow some difference).
Definition qgis.h:6935
bool qgsNanCompatibleEquals(double a, double b)
Compare two doubles, treating nan values as equal.
Definition qgis.h:6897
QgsSignalBlocker< Object > whileBlocking(Object *object)
Temporarily blocks signals from a QObject while calling a single method from the object.
Definition qgis.h:6839
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:7448
Q_DECL_DEPRECATED const long GEO_EPSG_CRS_ID
Numeric ID for the EPSG:4326 geographic coordinate system.
Definition qgis.h:7446
bool qgsDoubleNearSig(double a, double b, int significantDigits=10)
Compare two doubles using specified number of significant digits.
Definition qgis.h:6952
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:6917
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:7365
#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