QGIS API Documentation 3.99.0-Master (a26b91b364d)
qgis.h
Go to the documentation of this file.
1/***************************************************************************
2 qgis.h - QGIS namespace
3 -------------------
4 begin : Sat Jun 30 2002
5 copyright : (C) 2002 by Gary E.Sherman
6 email : sherman at mrcc.com
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17
18#ifndef QGIS_H
19#define QGIS_H
20
21
22#include <QMetaEnum>
23#include <cfloat>
24#include <memory>
25#include <cmath>
26
27#include "qgis_core.h"
28#include "qgis_sip.h"
29
30#ifdef SIP_RUN
31% ModuleHeaderCode
32#include <qgis.h>
33% End
34
35% ModuleCode
36int QgisEvent = QEvent::User + 1;
37% End
38#endif
39
40#ifndef SIP_RUN
41// qHash implementation for scoped enum type
42// https://gitlab.com/frostasm/programming-knowledge-base/-/snippets/20120
43#define QHASH_FOR_CLASS_ENUM(T) \
44 inline uint qHash(const T &t, uint seed) { \
45 return ::qHash(static_cast<typename std::underlying_type<T>::type>(t), seed); \
46 }
47#endif
48
53class CORE_EXPORT Qgis
54{
55 Q_GADGET
56 Q_CLASSINFO( "RegisterEnumClassesUnscoped", "false" )
57
58 public:
59
65 static QString version();
66
72 static int versionInt();
73
79 static QString releaseName();
80
82 static const char *QGIS_DEV_VERSION;
83
89 static QString devVersion();
90
91 // Enumerations
92 //
93
100 {
101 ClearStorage = 1 << 0,
102
103 ReadConfiguration = 1 << 1,
104 UpdateConfiguration = 1 << 2,
105 DeleteConfiguration = 1 << 3,
106 CreateConfiguration = 1 << 4,
107
108 ReadCertificateIdentity = 1 << 5,
109 UpdateCertificateIdentity = 1 << 6,
110 DeleteCertificateIdentity = 1 << 7,
111 CreateCertificateIdentity = 1 << 8,
112
113 ReadSslCertificateCustomConfig = 1 << 9,
114 UpdateSslCertificateCustomConfig = 1 << 10,
115 DeleteSslCertificateCustomConfig = 1 << 11,
116 CreateSslCertificateCustomConfig = 1 << 12,
117
118 ReadCertificateAuthority = 1 << 13,
119 UpdateCertificateAuthority = 1 << 14,
120 DeleteCertificateAuthority = 1 << 15,
121 CreateCertificateAuthority = 1 << 16,
122
123 ReadCertificateTrustPolicy = 1 << 17,
124 UpdateCertificateTrustPolicy = 1 << 18,
125 DeleteCertificateTrustPolicy = 1 << 19,
126 CreateCertificateTrustPolicy = 1 << 20,
127
128 ReadMasterPassword = 1 << 21,
129 UpdateMasterPassword = 1 << 22,
130 DeleteMasterPassword = 1 << 23,
131 CreateMasterPassword = 1 << 24,
132
133 ReadSetting = 1 << 25,
134 UpdateSetting = 1 << 26,
135 DeleteSetting = 1 << 27,
136 CreateSetting = 1 << 28,
137
138 };
139 Q_ENUM( AuthConfigurationStorageCapability )
140
141
147
148
154 {
155 Info = 0,
156 Warning = 1,
157 Critical = 2,
158 Success = 3,
159 NoLevel = 4,
160 };
161 Q_ENUM( MessageLevel )
162
163
169 {
170 Vector SIP_MONKEYPATCH_COMPAT_NAME( VectorLayer ),
171 Raster SIP_MONKEYPATCH_COMPAT_NAME( RasterLayer ),
172 Plugin SIP_MONKEYPATCH_COMPAT_NAME( PluginLayer ),
173 Mesh SIP_MONKEYPATCH_COMPAT_NAME( MeshLayer ),
174 VectorTile SIP_MONKEYPATCH_COMPAT_NAME( VectorTileLayer ),
175 Annotation SIP_MONKEYPATCH_COMPAT_NAME( AnnotationLayer ),
176 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( PointCloudLayer ),
177 Group SIP_MONKEYPATCH_COMPAT_NAME( GroupLayer ),
178 TiledScene,
179 };
180 Q_ENUM( LayerType )
181
182
188 {
189 RasterLayer = 1,
190 NoGeometry = 2,
191 PointLayer = 4,
192 LineLayer = 8,
193 PolygonLayer = 16,
194 HasGeometry = PointLayer | LineLayer | PolygonLayer,
195 VectorLayer = NoGeometry | HasGeometry,
196 PluginLayer = 32,
197 WritableLayer = 64,
198 MeshLayer = 128,
199 VectorTileLayer = 256,
200 PointCloudLayer = 512,
201 AnnotationLayer = 1024,
202 TiledSceneLayer = 2048,
203 All = RasterLayer | VectorLayer | PluginLayer | MeshLayer | VectorTileLayer | PointCloudLayer | AnnotationLayer | TiledSceneLayer,
204 SpatialLayer = RasterLayer | HasGeometry | PluginLayer | MeshLayer | VectorTileLayer | PointCloudLayer | AnnotationLayer | TiledSceneLayer
205 };
206 Q_DECLARE_FLAGS( LayerFilters, LayerFilter )
207 Q_FLAG( LayerFilters )
208
209
214 enum class LoadStyleFlag : int SIP_ENUM_BASETYPE( IntFlag )
215 {
216 IgnoreMissingStyleErrors = 1 << 0,
217 };
218 Q_ENUM( LoadStyleFlag )
219
220
225 Q_DECLARE_FLAGS( LoadStyleFlags, LoadStyleFlag )
226 Q_FLAG( LoadStyleFlags )
227
256 {
257 Unknown = 0,
258 Point = 1,
259 LineString = 2,
260 Polygon = 3,
261 Triangle = 17,
262 MultiPoint = 4,
263 MultiLineString = 5,
264 MultiPolygon = 6,
265 GeometryCollection = 7,
266 CircularString = 8,
267 CompoundCurve = 9,
268 CurvePolygon = 10,
269 MultiCurve = 11,
270 MultiSurface = 12,
271 PolyhedralSurface = 15,
272 TIN = 16,
273 NoGeometry = 100,
274 PointZ = 1001,
275 LineStringZ = 1002,
276 PolygonZ = 1003,
277 TriangleZ = 1017,
278 MultiPointZ = 1004,
279 MultiLineStringZ = 1005,
280 MultiPolygonZ = 1006,
281 GeometryCollectionZ = 1007,
282 CircularStringZ = 1008,
283 CompoundCurveZ = 1009,
284 CurvePolygonZ = 1010,
285 MultiCurveZ = 1011,
286 MultiSurfaceZ = 1012,
287 PolyhedralSurfaceZ = 1015,
288 TINZ = 1016,
289 PointM = 2001,
290 LineStringM = 2002,
291 PolygonM = 2003,
292 TriangleM = 2017,
293 MultiPointM = 2004,
294 MultiLineStringM = 2005,
295 MultiPolygonM = 2006,
296 GeometryCollectionM = 2007,
297 CircularStringM = 2008,
298 CompoundCurveM = 2009,
299 CurvePolygonM = 2010,
300 MultiCurveM = 2011,
301 MultiSurfaceM = 2012,
302 PolyhedralSurfaceM = 2015,
303 TINM = 2016,
304 PointZM = 3001,
305 LineStringZM = 3002,
306 PolygonZM = 3003,
307 MultiPointZM = 3004,
308 MultiLineStringZM = 3005,
309 MultiPolygonZM = 3006,
310 GeometryCollectionZM = 3007,
311 CircularStringZM = 3008,
312 CompoundCurveZM = 3009,
313 CurvePolygonZM = 3010,
314 MultiCurveZM = 3011,
315 MultiSurfaceZM = 3012,
316 PolyhedralSurfaceZM = 3015,
317 TINZM = 3016,
318 TriangleZM = 3017,
319 Point25D = 0x80000001,
320 LineString25D,
321 Polygon25D,
322 MultiPoint25D,
323 MultiLineString25D,
324 MultiPolygon25D
325 };
326 Q_ENUM( WkbType )
327
328
337 {
338 Point SIP_MONKEYPATCH_COMPAT_NAME( PointGeometry ),
339 Line SIP_MONKEYPATCH_COMPAT_NAME( LineGeometry ),
340 Polygon SIP_MONKEYPATCH_COMPAT_NAME( PolygonGeometry ),
341 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownGeometry ),
342 Null SIP_MONKEYPATCH_COMPAT_NAME( NullGeometry ),
343 };
344 Q_ENUM( GeometryType )
345
346
351 {
352 UnknownDataType = 0,
353 Byte = 1,
354 Int8 = 14,
355 UInt16 = 2,
356 Int16 = 3,
357 UInt32 = 4,
358 Int32 = 5,
359 Float32 = 6,
360 Float64 = 7,
361 CInt16 = 8,
362 CInt32 = 9,
363 CFloat32 = 10,
364 CFloat64 = 11,
365 ARGB32 = 12,
366 ARGB32_Premultiplied = 13
367 };
368 Q_ENUM( DataType )
369
370
375 enum class CaptureTechnique : int
376 {
377 StraightSegments,
378 CircularString,
379 Streaming,
380 Shape,
381 };
382 Q_ENUM( CaptureTechnique )
383
384
389 enum class VectorLayerTypeFlag : int SIP_ENUM_BASETYPE( IntFlag )
390 {
391 SqlQuery = 1 << 0
392 };
393 Q_ENUM( VectorLayerTypeFlag )
396 Q_FLAG( VectorLayerTypeFlags )
397
402 enum class PythonEmbeddedMode SIP_MONKEYPATCH_SCOPEENUM_UNNEST( Qgis, PythonMacroMode ) : int
403 {
404 Never = 0,
405 Ask = 1,
406 SessionOnly = 2,
407 Always = 3,
408 NotForThisSession,
409 };
410 Q_ENUM( PythonEmbeddedMode )
411
412
416 enum class PythonEmbeddedType : int
417 {
418 Macro = 0,
419 ExpressionFunction = 1,
420 };
421 Q_ENUM( PythonEmbeddedType )
422
423
431 {
432 TrustDataSource SIP_MONKEYPATCH_COMPAT_NAME( FlagTrustDataSource ) = 1 << 0,
433 SkipFeatureCount = 1 << 1,
434 LoadDefaultStyle SIP_MONKEYPATCH_COMPAT_NAME( FlagLoadDefaultStyle ) = 1 << 2,
435 SkipGetExtent = 1 << 3,
436 SkipFullScan = 1 << 4,
437 ForceReadOnly = 1 << 5,
438 SkipCredentialsRequest = 1 << 6,
439 ParallelThreadLoading = 1 << 7,
440 };
441 Q_ENUM( DataProviderReadFlag )
442
443
451 Q_FLAG( DataProviderReadFlags )
452
453 // TODO QGIS 4 -- remove NoCapabilities and rely on VectorProviderCapabilities() instead
454
463 {
464 NoCapabilities = 0,
465 AddFeatures = 1,
466 DeleteFeatures = 1 << 1,
467 ChangeAttributeValues = 1 << 2,
468 AddAttributes = 1 << 3,
469 DeleteAttributes = 1 << 4,
470 CreateSpatialIndex = 1 << 6,
471 SelectAtId = 1 << 7,
472 ChangeGeometries = 1 << 8,
473 SelectEncoding = 1 << 13,
474 CreateAttributeIndex = 1 << 12,
475 SimplifyGeometries = 1 << 14,
476 SimplifyGeometriesWithTopologicalValidation = 1 << 15,
477 TransactionSupport = 1 << 16,
478 CircularGeometries = 1 << 17,
479 ChangeFeatures = 1 << 18,
480 RenameAttributes = 1 << 19,
481 FastTruncate = 1 << 20,
482 ReadLayerMetadata = 1 << 21,
483 WriteLayerMetadata = 1 << 22,
484 CancelSupport = 1 << 23,
485 CreateRenderer = 1 << 24,
486 CreateLabeling = 1 << 25,
487 ReloadData = 1 << 26,
488 FeatureSymbology = 1 << 27,
489 EditingCapabilities = AddFeatures | DeleteFeatures | ChangeAttributeValues | ChangeGeometries | AddAttributes | DeleteAttributes | RenameAttributes,
490 };
491 Q_ENUM( VectorProviderCapability )
492
493
502
509 {
510 Uncounted = -2,
511 UnknownCount = -1,
512 };
513 Q_ENUM( FeatureCountState )
514
515
522 {
523 Unknown SIP_MONKEYPATCH_COMPAT_NAME( SpatialIndexUnknown ) = 0,
524 NotPresent SIP_MONKEYPATCH_COMPAT_NAME( SpatialIndexNotPresent ) = 1,
525 Present SIP_MONKEYPATCH_COMPAT_NAME( SpatialIndexPresent ) = 2,
526 };
527 Q_ENUM( SpatialIndexPresence )
528
529
541 {
542 NoFeaturesAvailable = 0,
543 FeaturesAvailable,
544 FeaturesMaybeAvailable
545 };
546 Q_ENUM( FeatureAvailability )
547
548
554 {
555 EditAlias = 1 << 0,
556 EditComment = 1 << 1,
557 };
558
559 Q_ENUM( VectorDataProviderAttributeEditCapability )
560
561
568
574 {
575 Marker,
576 Line,
577 Fill,
578 Hybrid
579 };
580 Q_ENUM( SymbolType )
581
582
588 {
589 ScaleArea,
590 ScaleDiameter
591 };
592 Q_ENUM( ScaleMethod )
593
594
599 {
600 Custom,
601 Variant,
602 String,
603 StringList,
604 VariantMap,
605 Bool,
606 Integer,
607 Double,
608 EnumFlag,
609 Color
610 };
611 Q_ENUM( SettingsType )
612
613
618 {
619 Root,
620 Standard,
621 NamedList,
622 };
623 Q_ENUM( SettingsTreeNodeType )
624
625
629 enum class SettingsTreeNodeOption : int SIP_ENUM_BASETYPE( IntFlag )
630 {
631 NamedListSelectedItemSetting = 1 << 0,
632 };
633
634 Q_ENUM( SettingsTreeNodeOption )
637
646 {
647 Invalid SIP_MONKEYPATCH_COMPAT_NAME( InvalidProperty ),
648 Static SIP_MONKEYPATCH_COMPAT_NAME( StaticProperty ),
649 Field SIP_MONKEYPATCH_COMPAT_NAME( FieldBasedProperty ),
650 Expression SIP_MONKEYPATCH_COMPAT_NAME( ExpressionBasedProperty ),
651 };
652 Q_ENUM( PropertyType )
653
654
659 enum class SldExportOption : int SIP_ENUM_BASETYPE( IntFlag )
660 {
661 NoOptions = 0,
662 Svg = 1 << 0,
663 Png = 1 << 1,
664 };
665 Q_ENUM( SldExportOption )
667 Q_FLAG( SldExportOptions )
668
674 enum class SldExportVendorExtension : int SIP_ENUM_BASETYPE( IntFlag )
675 {
676 NoVendorExtension = 0,
677 GeoServerVendorExtension = 1 << 1,
678 DeegreeVendorExtension = 1 << 2,
679 };
680 Q_ENUM( SldExportVendorExtension )
681
682
683
687 enum class SettingsOption : int SIP_ENUM_BASETYPE( IntFlag )
688 {
689 SaveFormerValue = 1 << 1,
690 SaveEnumFlagAsInt = 1 << 2,
691 };
692 Q_ENUM( SettingsOption )
693 Q_DECLARE_FLAGS( SettingsOptions, SettingsOption )
694 Q_FLAG( SettingsOptions )
695
701 {
702 ActiveLayer = 1,
703 AllLayers = 2,
704 AdvancedConfiguration = 3,
705 };
706 Q_ENUM( SnappingMode )
707
708
713 {
714 NoSnap SIP_MONKEYPATCH_COMPAT_NAME( NoSnapFlag ) = 0,
715 Vertex SIP_MONKEYPATCH_COMPAT_NAME( VertexFlag ) = 1 << 0,
716 Segment SIP_MONKEYPATCH_COMPAT_NAME( SegmentFlag ) = 1 << 1,
717 Area SIP_MONKEYPATCH_COMPAT_NAME( AreaFlag ) = 1 << 2,
718 Centroid SIP_MONKEYPATCH_COMPAT_NAME( CentroidFlag ) = 1 << 3,
719 MiddleOfSegment SIP_MONKEYPATCH_COMPAT_NAME( MiddleOfSegmentFlag ) = 1 << 4,
720 LineEndpoint SIP_MONKEYPATCH_COMPAT_NAME( LineEndpointFlag ) = 1 << 5,
721 };
722 Q_ENUM( SnappingType )
725 Q_FLAG( SnappingTypes )
726
733 {
734 DynamicRotation = 1 << 1,
735 IsSymbolLayerSubSymbol = 1 << 2,
736 ForceVectorRendering = 1 << 3,
737 ExcludeSymbolBuffers = 1 << 4,
738 };
739 Q_ENUM( SymbolRenderHint )
742 Q_FLAG( SymbolRenderHints )
743
749 enum class SymbolRotationMode : int
750 {
751 RespectMapRotation,
752 IgnoreMapRotation,
753 };
754 Q_ENUM( SymbolRotationMode )
755
756
757
769 Q_ENUM( HorizontalAnchorPoint )
770
771
778 {
779 Top,
780 Center SIP_MONKEYPATCH_COMPAT_NAME( VCenter ),
781 Bottom,
782 Baseline,
783 };
784 Q_ENUM( VerticalAnchorPoint )
785
786
791 enum class FeatureRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
792 {
793 AffectsLabeling = 1 << 0,
794 };
795 Q_ENUM( FeatureRendererFlag )
796
797
803 Q_FLAG( FeatureRendererFlags )
804
810 enum class SymbolFlag : int SIP_ENUM_BASETYPE( IntFlag )
811 {
812 RendererShouldUseSymbolLevels = 1 << 0,
813 AffectsLabeling = 1 << 1,
814 };
815 Q_ENUM( SymbolFlag )
817 Q_DECLARE_FLAGS( SymbolFlags, SymbolFlag )
818 Q_FLAG( SymbolFlags )
819
826 {
827 FlagIncludeCrosshairsForMarkerSymbols = 1 << 0,
828 };
829 Q_ENUM( SymbolPreviewFlag )
832 Q_FLAG( SymbolPreviewFlags )
833
843 enum class SymbolLayerFlag : int SIP_ENUM_BASETYPE( IntFlag )
844 {
845 DisableFeatureClipping = 1 << 0,
846 CanCalculateMaskGeometryPerFeature = 1 << 1,
847 AffectsLabeling = 1 << 2,
848 };
849 Q_ENUM( SymbolLayerFlag )
852 Q_FLAG( SymbolLayerFlags )
853
863 enum class SymbolLayerUserFlag : int SIP_ENUM_BASETYPE( IntFlag )
864 {
865 DisableSelectionRecoloring = 1 << 0,
866 };
867 Q_ENUM( SymbolLayerUserFlag )
868
869
875 Q_FLAG( SymbolLayerUserFlags )
876
883 {
884 Collection,
885 Directory,
886 Layer,
887 Error,
888 Favorites,
889 Project,
890 Custom,
891 Fields,
892 Field,
893 };
894 Q_ENUM( BrowserItemType )
895
896
902 {
903 NotPopulated,
904 Populating,
905 Populated,
906 };
907 Q_ENUM( BrowserItemState )
908
909
915 {
916 NoCapabilities = 0,
917 SetCrs = 1 << 0,
918 Fertile = 1 << 1,
919 Fast = 1 << 2,
920 Collapse = 1 << 3,
921 Rename = 1 << 4,
922 Delete = 1 << 5,
923 ItemRepresentsFile = 1 << 6,
924 RefreshChildrenWhenItemIsRefreshed = 1 << 7,
925 ReadOnly = 1 << 8,
926 };
927 Q_ENUM( BrowserItemCapability )
931
940 {
941 NoCapabilities SIP_MONKEYPATCH_COMPAT_NAME( NoDataCapabilities ) = 0,
942 Files SIP_MONKEYPATCH_COMPAT_NAME( File ) = 1,
943 Directories SIP_MONKEYPATCH_COMPAT_NAME( Dir ) = 1 << 1,
944 Databases SIP_MONKEYPATCH_COMPAT_NAME( Database ) = 1 << 2,
945 NetworkSources SIP_MONKEYPATCH_COMPAT_NAME( Net ) = 1 << 3,
946 };
947 Q_ENUM( DataItemProviderCapability )
948
949
958
965 {
966 NoType,
967 Vector,
968 Raster,
969 Point,
970 Line,
971 Polygon,
972 TableLayer,
973 Database,
974 Table,
975 Plugin,
976 Mesh,
977 VectorTile,
978 PointCloud,
979 TiledScene,
980 };
981 Q_ENUM( BrowserLayerType )
982
983
989 {
990 Default,
991 NeverMonitor,
992 AlwaysMonitor,
993 };
994 Q_ENUM( BrowserDirectoryMonitoring )
995
996
1000 enum class HttpMethod : int
1001 {
1002 Get = 0,
1003 Post = 1,
1004 Head,
1005 Put,
1006 Delete,
1007 };
1008 Q_ENUM( HttpMethod )
1009
1010
1016 {
1017 Success SIP_MONKEYPATCH_COMPAT_NAME( NoError ) = 0,
1018 ErrorCreatingDataSource SIP_MONKEYPATCH_COMPAT_NAME( ErrCreateDataSource ),
1019 ErrorCreatingLayer SIP_MONKEYPATCH_COMPAT_NAME( ErrCreateLayer ),
1020 ErrorAttributeTypeUnsupported SIP_MONKEYPATCH_COMPAT_NAME( ErrAttributeTypeUnsupported ),
1021 ErrorAttributeCreationFailed SIP_MONKEYPATCH_COMPAT_NAME( ErrAttributeCreationFailed ),
1022 ErrorProjectingFeatures SIP_MONKEYPATCH_COMPAT_NAME( ErrProjection ),
1023 ErrorFeatureWriteFailed SIP_MONKEYPATCH_COMPAT_NAME( ErrFeatureWriteFailed ),
1024 ErrorInvalidLayer SIP_MONKEYPATCH_COMPAT_NAME( ErrInvalidLayer ),
1025 ErrorInvalidProvider SIP_MONKEYPATCH_COMPAT_NAME( ErrInvalidProvider ),
1026 ErrorProviderUnsupportedFeature SIP_MONKEYPATCH_COMPAT_NAME( ErrProviderUnsupportedFeature ),
1027 ErrorConnectionFailed SIP_MONKEYPATCH_COMPAT_NAME( ErrConnectionFailed ),
1028 UserCanceled SIP_MONKEYPATCH_COMPAT_NAME( ErrUserCanceled ),
1029 };
1030 Q_ENUM( VectorExportResult )
1031
1032
1037 {
1038 FieldAliases = 1 << 0,
1039 FieldComments = 1 << 2,
1040 };
1041 Q_ENUM( VectorFileWriterCapability )
1042
1043
1049
1055 {
1056 SubsetStringFilter = 1 << 1,
1057 GeometryColumn = 1 << 2,
1058 PrimaryKeys = 1 << 3,
1059 UnstableFeatureIds = 1 << 4
1060 };
1061 Q_ENUM( SqlLayerDefinitionCapability )
1065
1071 enum class SqlKeywordCategory : int
1072 {
1073 Keyword,
1074 Constant,
1075 Function,
1076 Geospatial,
1077 Operator,
1078 Math,
1079 Aggregate,
1080 String,
1081 Identifier
1082 };
1083 Q_ENUM( SqlKeywordCategory )
1084
1085
1089 enum class DriveType : int
1090 {
1091 Unknown,
1092 Invalid,
1093 Removable,
1094 Fixed,
1095 Remote,
1096 CdRom,
1097 RamDisk,
1098 Cloud,
1099 };
1100 Q_ENUM( DriveType )
1101
1102
1107 {
1108 Deferred SIP_MONKEYPATCH_COMPAT_NAME( DownloadLater ),
1109 Immediate SIP_MONKEYPATCH_COMPAT_NAME( DownloadImmediately ),
1110 };
1111 Q_ENUM( ActionStart )
1112
1113
1119 {
1120 FollowEngineSetting,
1121 NeverShow,
1122 };
1123 Q_ENUM( UnplacedLabelVisibility )
1124
1125
1130 enum class LabelOverlapHandling : int
1131 {
1132 PreventOverlap,
1133 AllowOverlapIfRequired,
1134 AllowOverlapAtNoCost,
1135 };
1136 Q_ENUM( LabelOverlapHandling )
1137
1138
1143 enum class LabelPrioritization : int
1144 {
1145 PreferCloser,
1146 PreferPositionOrdering,
1147 };
1148 Q_ENUM( LabelPrioritization )
1149
1150
1158 {
1159 AroundPoint,
1160 OverPoint,
1161 Line,
1162 Curved,
1163 Horizontal,
1164 Free,
1165 OrderedPositionsAroundPoint,
1166 PerimeterCurved,
1167 OutsidePolygons,
1168 };
1169 Q_ENUM( LabelPlacement )
1170
1171
1179 {
1180 TopLeft,
1181 TopSlightlyLeft,
1182 TopMiddle,
1183 TopSlightlyRight,
1184 TopRight,
1185 MiddleLeft,
1186 MiddleRight,
1187 BottomLeft,
1188 BottomSlightlyLeft,
1189 BottomMiddle,
1190 BottomSlightlyRight,
1191 BottomRight,
1192 OverPoint,
1193 };
1194 Q_ENUM( LabelPredefinedPointPosition )
1195
1196
1205 {
1206 FromPoint,
1207 FromSymbolBounds,
1208 };
1209 Q_ENUM( LabelOffsetType )
1210
1211
1219 {
1220 AboveLeft SIP_MONKEYPATCH_COMPAT_NAME( QuadrantAboveLeft ),
1221 Above SIP_MONKEYPATCH_COMPAT_NAME( QuadrantAbove ),
1222 AboveRight SIP_MONKEYPATCH_COMPAT_NAME( QuadrantAboveRight ),
1223 Left SIP_MONKEYPATCH_COMPAT_NAME( QuadrantLeft ),
1224 Over SIP_MONKEYPATCH_COMPAT_NAME( QuadrantOver ),
1225 Right SIP_MONKEYPATCH_COMPAT_NAME( QuadrantRight ),
1226 BelowLeft SIP_MONKEYPATCH_COMPAT_NAME( QuadrantBelowLeft ),
1227 Below SIP_MONKEYPATCH_COMPAT_NAME( QuadrantBelow ),
1228 BelowRight SIP_MONKEYPATCH_COMPAT_NAME( QuadrantBelowRight ),
1229 };
1230 Q_ENUM( LabelQuadrantPosition )
1231
1232
1239 {
1240 OnLine = 1,
1241 AboveLine = 2,
1242 BelowLine = 4,
1243 MapOrientation = 8,
1244 };
1245 Q_ENUM( LabelLinePlacementFlag )
1246
1247
1255 Q_FLAG( LabelLinePlacementFlags )
1256
1264 {
1265 AllowPlacementOutsideOfPolygon = 1 << 0,
1266 AllowPlacementInsideOfPolygon = 1 << 1,
1267 };
1268 Q_ENUM( LabelPolygonPlacementFlag )
1269
1270
1278
1287 {
1288 FlipUpsideDownLabels SIP_MONKEYPATCH_COMPAT_NAME( Upright ),
1289 AllowUpsideDownWhenRotationIsDefined SIP_MONKEYPATCH_COMPAT_NAME( ShowDefined ),
1290 AlwaysAllowUpsideDown SIP_MONKEYPATCH_COMPAT_NAME( ShowAll )
1291 };
1292 Q_ENUM( UpsideDownLabelHandling )
1293
1294
1302 {
1303 Left SIP_MONKEYPATCH_COMPAT_NAME( MultiLeft ) = 0,
1304 Center SIP_MONKEYPATCH_COMPAT_NAME( MultiCenter ),
1305 Right SIP_MONKEYPATCH_COMPAT_NAME( MultiRight ),
1306 FollowPlacement SIP_MONKEYPATCH_COMPAT_NAME( MultiFollowPlacement ),
1307 Justify SIP_MONKEYPATCH_COMPAT_NAME( MultiJustify ),
1308 };
1309 Q_ENUM( LabelMultiLineAlignment )
1310
1311
1318 {
1319 Vector SIP_MONKEYPATCH_COMPAT_NAME( FilterVector ) = 1,
1320 Raster SIP_MONKEYPATCH_COMPAT_NAME( FilterRaster ),
1321 Mesh SIP_MONKEYPATCH_COMPAT_NAME( FilterMesh ),
1322 MeshDataset SIP_MONKEYPATCH_COMPAT_NAME( FilterMeshDataset ),
1323 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( FilterPointCloud ),
1324 VectorTile,
1325 TiledScene,
1326 };
1327 Q_ENUM( FileFilterType )
1328
1329
1334 enum class UriCleaningFlag : int SIP_ENUM_BASETYPE( IntFlag )
1335 {
1336 RemoveCredentials = 1 << 0,
1337 RedactCredentials = 1 << 1,
1338 };
1339 Q_ENUM( UriCleaningFlag )
1340
1341
1347 Q_FLAG( UriCleaningFlags )
1348
1354 enum class SublayerQueryFlag : int SIP_ENUM_BASETYPE( IntFlag )
1355 {
1356 FastScan = 1 << 0,
1357 ResolveGeometryType = 1 << 1,
1358 CountFeatures = 1 << 2,
1359 IncludeSystemTables = 1 << 3,
1360 };
1363 Q_ENUM( SublayerQueryFlag )
1364 Q_FLAG( SublayerQueryFlags )
1365
1366
1371 enum class SublayerFlag : int SIP_ENUM_BASETYPE( IntFlag )
1372 {
1373 SystemTable = 1 << 0,
1374 };
1376 Q_DECLARE_FLAGS( SublayerFlags, SublayerFlag )
1377 Q_ENUM( SublayerFlag )
1378 Q_FLAG( SublayerFlags )
1379
1380
1388 {
1389 Linear SIP_MONKEYPATCH_COMPAT_NAME( Interpolated ) = 0,
1390 Discrete = 1,
1391 Exact = 2,
1392 };
1393 Q_ENUM( ShaderInterpolationMethod )
1394
1395
1403 {
1404 Continuous = 1,
1405 EqualInterval = 2,
1406 Quantile = 3,
1407 };
1408 Q_ENUM( ShaderClassificationMethod )
1409
1410
1416 {
1417 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownRole ) = 0,
1418 Provider SIP_MONKEYPATCH_COMPAT_NAME( ProviderRole ) = 1,
1419 Renderer SIP_MONKEYPATCH_COMPAT_NAME( RendererRole ) = 2,
1420 Brightness SIP_MONKEYPATCH_COMPAT_NAME( BrightnessRole ) = 3,
1421 Resampler SIP_MONKEYPATCH_COMPAT_NAME( ResamplerRole ) = 4,
1422 Projector SIP_MONKEYPATCH_COMPAT_NAME( ProjectorRole ) = 5,
1423 Nuller SIP_MONKEYPATCH_COMPAT_NAME( NullerRole ) = 6,
1424 HueSaturation SIP_MONKEYPATCH_COMPAT_NAME( HueSaturationRole ) = 7,
1425 };
1426 Q_ENUM( RasterPipeInterfaceRole )
1427
1428
1433 {
1434 ResampleFilter,
1435 Provider,
1436 };
1437 Q_ENUM( RasterResamplingStage )
1438
1439
1447 {
1448 Nearest,
1449 Bilinear,
1450 Cubic,
1451 CubicSpline,
1452 Lanczos,
1453 Average,
1454 Mode,
1455 Gauss
1456 };
1457 Q_ENUM( RasterResamplingMethod )
1458
1459
1464 enum class RasterRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
1465 {
1466 InternalLayerOpacityHandling = 1 << 0,
1467 UseNoDataForOutOfRangePixels = 1 << 1,
1468 };
1469
1476
1477 Q_ENUM( RasterRendererFlag )
1478 Q_FLAG( RasterRendererFlags )
1479
1480
1486 {
1487 UsesMultipleBands = 1 << 0,
1488 };
1489 Q_ENUM( RasterRendererCapability )
1490
1491
1498
1507 {
1508 NotSet SIP_MONKEYPATCH_COMPAT_NAME( None_ ),
1509 MinimumMaximum SIP_MONKEYPATCH_COMPAT_NAME( MinMax ),
1510 StdDev,
1511 CumulativeCut
1512 };
1513 Q_ENUM( RasterRangeLimit )
1514
1515
1523 {
1524 WholeRaster SIP_MONKEYPATCH_COMPAT_NAME( None_ ),
1525 FixedCanvas SIP_MONKEYPATCH_COMPAT_NAME( CurrentCanvas ),
1526 UpdatedCanvas,
1527 };
1528 Q_ENUM( RasterRangeExtent )
1529
1530
1538 {
1539 Exact,
1540 Estimated,
1541 };
1542 Q_ENUM( RasterRangeAccuracy )
1543
1544
1550 {
1551 Generic = 0,
1552 PixelCount = 1,
1553 Name = 2,
1554 Min = 3,
1555 Max = 4,
1556 MinMax = 5,
1557 Red = 6,
1558 Green = 7,
1559 Blue = 8,
1560 Alpha = 9,
1561 RedMin = 10,
1562 GreenMin = 11,
1563 BlueMin = 12,
1564 AlphaMin = 13,
1565 RedMax = 14,
1566 GreenMax = 15,
1567 BlueMax = 16,
1568 AlphaMax = 17,
1569 MaxCount
1570 };
1571 Q_ENUM( RasterAttributeTableFieldUsage )
1572
1573
1579 {
1580 Thematic = 0,
1581 Athematic = 1
1582 };
1583 Q_ENUM( RasterAttributeTableType )
1584
1585
1592 {
1593 Raw = 0,
1594 RenderedImage SIP_MONKEYPATCH_COMPAT_NAME( Image ) = 1
1595 };
1596 Q_ENUM( RasterExportType )
1597
1598
1605 {
1606 Success SIP_MONKEYPATCH_COMPAT_NAME( NoError ) = 0,
1607 SourceProviderError = 1,
1608 DestinationProviderError SIP_MONKEYPATCH_COMPAT_NAME( DestProviderError ) = 2,
1609 CreateDatasourceError = 3,
1610 WriteError = 4,
1611 NoDataConflict = 5,
1612 Canceled SIP_MONKEYPATCH_COMPAT_NAME( WriteCanceled ) = 6,
1613 };
1614 Q_ENUM( RasterFileWriterResult )
1615
1616
1621 enum class MeshEditingErrorType : int
1622 {
1623 NoError,
1624 InvalidFace,
1625 TooManyVerticesInFace,
1626 FlatFace,
1627 UniqueSharedVertex,
1628 InvalidVertex,
1629 ManifoldFace,
1630 };
1631 Q_ENUM( MeshEditingErrorType )
1632
1633
1638 enum class FilePathType : int
1639 {
1640 Absolute,
1641 Relative,
1642 };
1643 Q_ENUM( FilePathType )
1644
1645
1650 enum class SublayerPromptMode : int
1651 {
1652 AlwaysAsk,
1653 AskExcludingRasterBands,
1654 NeverAskSkip,
1655 NeverAskLoadAll,
1656 };
1657 Q_ENUM( SublayerPromptMode )
1658
1659
1667 {
1668 Unknown SIP_MONKEYPATCH_COMPAT_NAME( OriginUnknown ),
1669 Provider SIP_MONKEYPATCH_COMPAT_NAME( OriginProvider ),
1670 Join SIP_MONKEYPATCH_COMPAT_NAME( OriginJoin ),
1671 Edit SIP_MONKEYPATCH_COMPAT_NAME( OriginEdit ),
1672 Expression SIP_MONKEYPATCH_COMPAT_NAME( OriginExpression )
1673 };
1674 Q_ENUM( FieldOrigin )
1675
1676
1683 enum class FieldConfigurationFlag : int SIP_ENUM_BASETYPE( IntFlag )
1684 {
1685 NoFlag = 0,
1686 NotSearchable = 1 << 1,
1687 HideFromWms = 1 << 2,
1688 HideFromWfs = 1 << 3,
1689 };
1690 Q_ENUM( FieldConfigurationFlag )
1691
1692
1700 Q_FLAG( FieldConfigurationFlags )
1701
1707 enum class FieldMetadataProperty : int
1708 {
1709 GeometryCrs = 0x1000,
1710 GeometryWkbType = 0x1001,
1711 CustomProperty = 0x100000,
1712 };
1713 Q_ENUM( FieldMetadataProperty )
1714
1715
1720 enum class SelectionRenderingMode : int
1721 {
1722 Default,
1723 CustomColor,
1724 CustomSymbol,
1725 };
1726 Q_ENUM( SelectionRenderingMode )
1727
1728
1734 {
1735 SetSelection,
1736 AddToSelection,
1737 IntersectSelection,
1738 RemoveFromSelection,
1739 };
1740 Q_ENUM( SelectBehavior )
1741
1742
1748 {
1749 Intersect,
1750 Within,
1751 };
1752 Q_ENUM( SelectGeometryRelationship )
1753
1754
1759 enum class SelectionFlag : int SIP_ENUM_BASETYPE( IntFlag )
1760 {
1761 SingleFeatureSelection = 1 << 0,
1762 ToggleSelection = 1 << 1,
1763 };
1764
1770 Q_DECLARE_FLAGS( SelectionFlags, SelectionFlag )
1771
1772 Q_ENUM( SelectionFlag )
1773 Q_FLAG( SelectionFlags )
1774
1775
1781 {
1782 Success = 0,
1783 EmptyGeometry = 1,
1784 EditFailed = 2,
1785 FetchFeatureFailed = 3,
1786 InvalidLayer = 4,
1787 };
1788 Q_ENUM( VectorEditResult )
1789
1790
1796 {
1797 SemiTransparentCircle,
1798 Cross,
1799 NoMarker,
1800 };
1801 Q_ENUM( VertexMarkerType )
1802
1803
1807 enum class ContentStatus : int
1808 {
1809 NotStarted,
1810 Running,
1811 Finished,
1812 Failed,
1813 Canceled,
1814 };
1815 Q_ENUM( ContentStatus )
1816
1817
1822 enum class GpsConnectionType : int
1823 {
1824 Automatic,
1825 Internal,
1826 Serial,
1827 Gpsd,
1828 };
1829 Q_ENUM( GpsConnectionType )
1830
1831
1836 enum class DeviceConnectionStatus SIP_MONKEYPATCH_SCOPEENUM_UNNEST( Qgis, GpsConnectionStatus ) : int
1837 {
1838 Disconnected,
1839 Connecting,
1840 Connected,
1841 };
1842 Q_ENUM( DeviceConnectionStatus )
1843
1844
1852 {
1853 NoData,
1854 NoFix,
1855 Fix2D,
1856 Fix3D
1857 };
1859
1860
1867 {
1868 Unknown,
1869 Gps,
1870 Glonass,
1871 Galileo,
1872 BeiDou,
1873 Qzss,
1874 Navic,
1875 Sbas,
1876 };
1878
1885 {
1886 Unknown = -1,
1887 Invalid,
1888 GPS,
1889 DGPS,
1890 PPS,
1891 RTK,
1892 FloatRTK,
1893 Estimated,
1894 Manual,
1895 Simulation,
1896 };
1897 Q_ENUM( GpsQualityIndicator )
1898
1899
1904 enum class GpsNavigationStatus : int
1905 {
1906 NotValid,
1907 Safe,
1908 Caution,
1909 Unsafe,
1910 };
1912
1918 enum class GpsInformationComponent : int SIP_ENUM_BASETYPE( IntFlag )
1919 {
1920 Location = 1 << 0,
1921 Altitude = 1 << 1,
1922 GroundSpeed = 1 << 2,
1923 Bearing = 1 << 3,
1924 TotalTrackLength = 1 << 4,
1925 TrackDistanceFromStart = 1 << 5,
1926 Pdop = 1 << 6,
1927 Hdop = 1 << 7,
1928 Vdop = 1 << 8,
1929 HorizontalAccuracy = 1 << 9,
1930 VerticalAccuracy = 1 << 10,
1931 HvAccuracy = 1 << 11,
1932 SatellitesUsed = 1 << 12,
1933 Timestamp = 1 << 13,
1934 TrackStartTime = 1 << 14,
1935 TrackEndTime = 1 << 15,
1936 TrackDistanceSinceLastPoint = 1 << 16,
1937 TrackTimeSinceLastPoint = 1 << 17,
1938 GeoidalSeparation = 1 << 18,
1939 EllipsoidAltitude = 1 << 19,
1940 };
1941
1948 Q_ENUM( GpsInformationComponent )
1949 Q_FLAG( GpsInformationComponents )
1950
1951
1956 enum class BabelFormatCapability : int SIP_ENUM_BASETYPE( IntFlag )
1957 {
1958 Import = 1 << 0,
1959 Export = 1 << 1,
1960 Waypoints = 1 << 2,
1961 Routes = 1 << 3,
1962 Tracks = 1 << 4,
1963 };
1966 Q_ENUM( BabelFormatCapability )
1967 Q_FLAG( BabelFormatCapabilities )
1968
1969
1975 enum class BabelCommandFlag : int SIP_ENUM_BASETYPE( IntFlag )
1976 {
1977 QuoteFilePaths = 1 << 0,
1978 };
1981 Q_ENUM( BabelCommandFlag )
1982 Q_FLAG( BabelCommandFlags )
1983
1984
1989 enum class GpsFeatureType : int
1990 {
1991 Waypoint,
1992 Route,
1993 Track,
1994 };
1995 Q_ENUM( GpsFeatureType )
1996
1997
2005 {
2006 Success = 0,
2007 NothingHappened = 1000,
2008 InvalidBaseGeometry,
2009 InvalidInputGeometryType,
2010 SelectionIsEmpty,
2011 SelectionIsGreaterThanOne,
2012 GeometryEngineError,
2013 LayerNotEditable,
2014 // Add part issues
2015 AddPartSelectedGeometryNotFound,
2016 AddPartNotMultiGeometry,
2017 // Add ring issues
2018 AddRingNotClosed,
2019 AddRingNotValid,
2020 AddRingCrossesExistingRings,
2021 AddRingNotInExistingFeature,
2022 // Split features
2023 SplitCannotSplitPoint,
2024 GeometryTypeHasChanged,
2025 };
2026 Q_ENUM( GeometryOperationResult )
2027
2028
2034 {
2035 AllowSelfTouchingHoles SIP_MONKEYPATCH_COMPAT_NAME( FlagAllowSelfTouchingHoles ) = 1 << 0,
2036 };
2039 Q_ENUM( GeometryValidityFlag )
2040 Q_FLAG( GeometryValidityFlags )
2041
2042
2047 {
2048 QgisInternal SIP_MONKEYPATCH_COMPAT_NAME( ValidatorQgisInternal ),
2049 Geos SIP_MONKEYPATCH_COMPAT_NAME( ValidatorGeos ),
2050 };
2051 Q_ENUM( GeometryValidationEngine )
2052
2053
2063 Q_ENUM( BufferSide )
2064
2065
2071 {
2072 Round SIP_MONKEYPATCH_COMPAT_NAME( CapRound ) = 1,
2073 Flat SIP_MONKEYPATCH_COMPAT_NAME( CapFlat ),
2074 Square SIP_MONKEYPATCH_COMPAT_NAME( CapSquare ),
2075 };
2076 Q_ENUM( EndCapStyle )
2077
2078
2084 {
2085 Round SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleRound ) = 1,
2086 Miter SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleMiter ),
2087 Bevel SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleBevel ),
2088 };
2089 Q_ENUM( JoinStyle )
2090
2091
2096 enum class GeosCreationFlag : int SIP_ENUM_BASETYPE( IntFlag )
2097 {
2098 RejectOnInvalidSubGeometry = 1 << 0,
2099 SkipEmptyInteriorRings = 1 << 1,
2100 };
2101 Q_ENUM( GeosCreationFlag )
2102
2103
2109 Q_FLAG( GeosCreationFlags )
2110
2116 enum class CoverageValidityResult : int
2117 {
2118 Invalid = 0,
2119 Valid = 1,
2120 Error = 2,
2121 };
2122 Q_ENUM( CoverageValidityResult )
2123
2124
2129 enum class MakeValidMethod : int
2130 {
2131 Linework = 0,
2132 Structure = 1,
2133 };
2134 Q_ENUM( MakeValidMethod )
2135
2136
2144 {
2145 NoFlags = 0,
2146 NoGeometry = 1,
2147 SubsetOfAttributes = 2,
2148 ExactIntersect = 4,
2149 IgnoreStaticNodesDuringExpressionCompilation = 8,
2150 EmbeddedSymbols = 16,
2151 };
2152 Q_ENUM( FeatureRequestFlag )
2153
2154
2162 Q_FLAG( FeatureRequestFlags )
2163
2172 {
2173 NoFilter SIP_MONKEYPATCH_COMPAT_NAME( FilterNone ),
2174 Fid SIP_MONKEYPATCH_COMPAT_NAME( FilterFid ),
2175 Expression SIP_MONKEYPATCH_COMPAT_NAME( FilterExpression ),
2176 Fids SIP_MONKEYPATCH_COMPAT_NAME( FilterFids )
2177 };
2178 Q_ENUM( FeatureRequestFilterType )
2179
2180
2188 {
2189 NoCheck SIP_MONKEYPATCH_COMPAT_NAME( GeometryNoCheck ) = 0,
2190 SkipInvalid SIP_MONKEYPATCH_COMPAT_NAME( GeometrySkipInvalid ) = 1,
2191 AbortOnInvalid SIP_MONKEYPATCH_COMPAT_NAME( GeometryAbortOnInvalid ) = 2,
2192 };
2193 Q_ENUM( InvalidGeometryCheck )
2194
2195
2200 enum class SpatialFilterType : int
2201 {
2202 NoFilter,
2203 BoundingBox,
2204 DistanceWithin,
2205 };
2206 Q_ENUM( SpatialFilterType )
2207
2208
2213 enum class FileOperationFlag : int SIP_ENUM_BASETYPE( IntFlag )
2214 {
2215 IncludeMetadataFile = 1 << 0,
2216 IncludeStyleFile = 1 << 1,
2217 };
2220 Q_ENUM( FileOperationFlag )
2221 Q_FLAG( FileOperationFlags )
2222
2223
2228 enum class MapLayerProperty : int SIP_ENUM_BASETYPE( IntFlag )
2229 {
2230 UsersCannotToggleEditing = 1 << 0,
2231 IsBasemapLayer = 1 << 1,
2232 Is3DBasemapLayer = 1 << 2,
2233 };
2236 Q_ENUM( MapLayerProperty )
2237 Q_FLAG( MapLayerProperties )
2238
2239
2244 enum class AutoRefreshMode : int
2245 {
2246 Disabled = 0,
2247 ReloadData = 1,
2248 RedrawOnly = 2,
2249 };
2250 Q_ENUM( AutoRefreshMode )
2251
2252
2257 enum class DataProviderFlag : int SIP_ENUM_BASETYPE( IntFlag )
2258 {
2259 IsBasemapSource = 1 << 1,
2260 FastExtent2D = 1 << 2,
2261 FastExtent3D = 1 << 3,
2262 Is3DBasemapSource = 1 << 4,
2263 };
2266 Q_ENUM( DataProviderFlag )
2267 Q_FLAG( DataProviderFlags )
2268
2269
2276 enum class CrsType : int
2277 {
2278 Unknown,
2279 Geodetic,
2280 Geocentric,
2281 Geographic2d,
2282 Geographic3d,
2283 Vertical,
2284 Projected,
2285 Compound,
2286 Temporal,
2287 Engineering,
2288 Bound,
2289 Other,
2290 DerivedProjected,
2291 };
2292 Q_ENUM( CrsType )
2293
2294
2301 enum class CrsAxisDirection : int
2302 {
2303 North,
2304 NorthNorthEast,
2305 NorthEast,
2306 EastNorthEast,
2307 East,
2308 EastSouthEast,
2309 SouthEast,
2310 SouthSouthEast,
2311 South,
2312 SouthSouthWest,
2313 SouthWest,
2314 WestSouthWest,
2315 West,
2316 WestNorthWest,
2317 NorthWest,
2318 NorthNorthWest,
2319 GeocentricX,
2320 GeocentricY,
2321 GeocentricZ,
2322 Up,
2323 Down,
2324 Forward,
2325 Aft,
2326 Port,
2327 Starboard,
2328 Clockwise,
2329 CounterClockwise,
2330 ColumnPositive,
2331 ColumnNegative,
2332 RowPositive,
2333 RowNegative,
2334 DisplayRight,
2335 DisplayLeft,
2336 DisplayUp,
2337 DisplayDown,
2338 Future,
2339 Past,
2340 Towards,
2341 AwayFrom,
2342 Unspecified,
2343 };
2344 Q_ENUM( CrsAxisDirection )
2345
2346
2351 enum class CoordinateOrder : int
2352 {
2353 Default,
2354 XY,
2355 YX,
2356 };
2357 Q_ENUM( CoordinateOrder )
2358
2359
2367 {
2368 ShortString,
2369 MediumString,
2370 FullString,
2371 };
2372 Q_ENUM( CrsIdentifierType )
2373
2374
2382 {
2383 Wkt1Gdal SIP_MONKEYPATCH_COMPAT_NAME( WKT1_GDAL ),
2384 Wkt1Esri SIP_MONKEYPATCH_COMPAT_NAME( WKT1_ESRI ),
2385 Wkt2_2015 SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2015 ),
2386 Wkt2_2015Simplified SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2015_SIMPLIFIED ),
2387 Wkt2_2019 SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2019 ),
2388 Wkt2_2019Simplified SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2019_SIMPLIFIED ),
2389 Preferred SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED ) = Wkt2_2019,
2390 PreferredSimplified SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED_SIMPLIFIED ) = Wkt2_2019Simplified,
2391 PreferredGdal SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED_GDAL ) = Wkt2_2019,
2392 };
2393 Q_ENUM( CrsWktVariant )
2394
2395
2400 enum class Axis : int
2401 {
2402 X,
2403 Y,
2404 Z
2405 };
2406 Q_ENUM( Axis )
2407
2408
2413 enum class AnnotationItemFlag : int SIP_ENUM_BASETYPE( IntFlag )
2414 {
2415 ScaleDependentBoundingBox = 1 << 0,
2416 SupportsReferenceScale = 1 << 1,
2417 SupportsCallouts = 1 << 2,
2418 };
2421 Q_ENUM( AnnotationItemFlag )
2422 Q_FLAG( AnnotationItemFlags )
2423
2424
2430 {
2431 SpatialBounds = 0,
2432 FixedSize,
2433 RelativeToMapFrame,
2434 };
2435 Q_ENUM( AnnotationPlacementMode )
2436
2437
2442 enum class AnnotationItemGuiFlag : int SIP_ENUM_BASETYPE( IntFlag )
2443 {
2444 FlagNoCreationTools = 1 << 0,
2445 };
2448 Q_ENUM( AnnotationItemGuiFlag )
2449 Q_FLAG( AnnotationItemGuiFlags )
2450
2451
2456 enum class AnnotationItemNodeType : int
2457 {
2458 VertexHandle,
2459 CalloutHandle,
2460 };
2461 Q_ENUM( AnnotationItemNodeType )
2462
2463
2469 {
2470 Success,
2471 Invalid,
2472 ItemCleared,
2473 };
2474 Q_ENUM( AnnotationItemEditOperationResult )
2475
2476
2484 {
2485 Disabled SIP_MONKEYPATCH_COMPAT_NAME( NavigationOff ),
2486 Animated,
2487 FixedRange,
2488 Movie,
2489 };
2490 Q_ENUM( TemporalNavigationMode )
2491
2492
2500 {
2501 Forward,
2502 Reverse,
2503 Idle,
2504 };
2505 Q_ENUM( AnimationState )
2506
2507
2512 enum class PlaybackOperation : int
2513 {
2514 SkipToStart,
2515 PreviousFrame,
2516 PlayReverse,
2517 Pause,
2518 PlayForward,
2519 NextFrame,
2520 SkipToEnd,
2521 };
2522 Q_ENUM( PlaybackOperation )
2523
2524
2530 {
2531 FixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ModeFixedTemporalRange ) = 0,
2532 FeatureDateTimeInstantFromField SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeInstantFromField ),
2533 FeatureDateTimeStartAndEndFromFields SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndEndFromFields ),
2534 FeatureDateTimeStartAndDurationFromFields SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndDurationFromFields ),
2535 FeatureDateTimeStartAndEndFromExpressions SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndEndFromExpressions ),
2536 RedrawLayerOnly SIP_MONKEYPATCH_COMPAT_NAME( ModeRedrawLayerOnly ),
2537 };
2538 Q_ENUM( VectorTemporalMode )
2539
2540
2546 {
2547 IncludeBeginExcludeEnd = 0,
2548 IncludeBeginIncludeEnd,
2549 };
2550 Q_ENUM( VectorTemporalLimitMode )
2551
2552
2558 {
2559 HasFixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ProviderHasFixedTemporalRange ) = 0,
2560 StoresFeatureDateTimeInstantInField SIP_MONKEYPATCH_COMPAT_NAME( ProviderStoresFeatureDateTimeInstantInField ),
2561 StoresFeatureDateTimeStartAndEndInSeparateFields SIP_MONKEYPATCH_COMPAT_NAME( ProviderStoresFeatureDateTimeStartAndEndInSeparateFields ),
2562 };
2563 Q_ENUM( VectorDataProviderTemporalMode )
2564
2565
2571 {
2572 FixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ModeFixedTemporalRange ) = 0,
2573 TemporalRangeFromDataProvider SIP_MONKEYPATCH_COMPAT_NAME( ModeTemporalRangeFromDataProvider ) = 1,
2574 RedrawLayerOnly SIP_MONKEYPATCH_COMPAT_NAME( ModeRedrawLayerOnly ) = 2,
2575 FixedRangePerBand = 3,
2576 RepresentsTemporalValues = 4,
2577 FixedDateTime = 5,
2578 };
2579 Q_ENUM( RasterTemporalMode )
2580
2581
2587 {
2588 MatchUsingWholeRange,
2589 MatchExactUsingStartOfRange,
2590 MatchExactUsingEndOfRange,
2591 FindClosestMatchToStartOfRange,
2592 FindClosestMatchToEndOfRange
2593 };
2594 Q_ENUM( TemporalIntervalMatchMethod )
2595
2596
2602 {
2603 RequestedTimesMustExactlyMatchAllAvailableTemporalRanges = 1 << 0,
2604 };
2605 Q_ENUM( RasterTemporalCapabilityFlag )
2606
2607
2614
2621 {
2622 Forward SIP_MONKEYPATCH_COMPAT_NAME( ForwardTransform ),
2623 Reverse SIP_MONKEYPATCH_COMPAT_NAME( ReverseTransform )
2624 };
2625 Q_ENUM( TransformDirection )
2626
2627
2633 {
2634 BallparkTransformsAreAppropriate = 1 << 0,
2635 IgnoreImpossibleTransformations = 1 << 1,
2636 };
2637 Q_ENUM( CoordinateTransformationFlag )
2638
2639
2646
2653 {
2654 Default,
2655 PreferVector,
2656 ForceVector,
2657 };
2658 Q_ENUM( RasterizedRenderingPolicy )
2659
2660
2666 {
2667 Antialiasing = 0x01,
2668 DrawEditingInfo = 0x02,
2669 ForceVectorOutput = 0x04,
2670 UseAdvancedEffects = 0x08,
2671 DrawLabeling = 0x10,
2672 UseRenderingOptimization = 0x20,
2673 DrawSelection = 0x40,
2674 DrawSymbolBounds = 0x80,
2675 RenderMapTile = 0x100,
2676 RenderPartialOutput = 0x200,
2677 RenderPreviewJob = 0x400,
2678 RenderBlocking = 0x800,
2679 LosslessImageRendering = 0x1000,
2680 Render3DMap = 0x2000,
2681 HighQualityImageTransforms = 0x4000,
2682 SkipSymbolRendering = 0x8000,
2683 ForceRasterMasks = 0x10000,
2684 RecordProfile = 0x20000,
2685 AlwaysUseGlobalMasks = 0x40000,
2686 };
2689 Q_ENUM( MapSettingsFlag )
2690 Q_FLAG( MapSettingsFlags )
2691
2692
2698 {
2699 DrawEditingInfo = 0x01,
2700 ForceVectorOutput = 0x02,
2701 UseAdvancedEffects = 0x04,
2702 UseRenderingOptimization = 0x08,
2703 DrawSelection = 0x10,
2704 DrawSymbolBounds = 0x20,
2705 RenderMapTile = 0x40,
2706 Antialiasing = 0x80,
2707 RenderPartialOutput = 0x100,
2708 RenderPreviewJob = 0x200,
2709 RenderBlocking = 0x400,
2710 RenderSymbolPreview = 0x800,
2711 LosslessImageRendering = 0x1000,
2712 ApplyScalingWorkaroundForTextRendering = 0x2000,
2713 Render3DMap = 0x4000,
2714 ApplyClipAfterReprojection = 0x8000,
2715 RenderingSubSymbol = 0x10000,
2716 HighQualityImageTransforms = 0x20000,
2717 SkipSymbolRendering = 0x40000,
2718 RecordProfile = 0x80000,
2719 AlwaysUseGlobalMasks = 0x100000,
2720 DisableSymbolClippingToExtent = 0x200000,
2721 RenderLayerTree = 0x400000
2722 };
2725 Q_ENUM( RenderContextFlag )
2726 Q_FLAG( RenderContextFlags )
2727
2728
2733 enum class MapLayerRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
2734 {
2735 RenderPartialOutputs = 1 << 0,
2736 RenderPartialOutputOverPreviousCachedImage = 1 << 1,
2737 AffectsLabeling = 1 << 2,
2738 };
2739 Q_ENUM( MapLayerRendererFlag )
2740
2741
2747 Q_FLAG( MapLayerRendererFlags )
2748
2754 enum class PaintEffectFlag : int SIP_ENUM_BASETYPE( IntFlag )
2755 {
2756 RequiresRasterization = 1 << 0,
2757 };
2758 Q_ENUM( PaintEffectFlag )
2759
2760
2766 Q_FLAG( PaintEffectFlags )
2767
2768 // refs for below dox: https://github.com/qgis/QGIS/pull/1286#issuecomment-39806854
2769 // https://github.com/qgis/QGIS/pull/8573#issuecomment-445585826
2770
2776 {
2777 AlwaysOutlines SIP_MONKEYPATCH_COMPAT_NAME( TextFormatAlwaysOutlines ),
2778 AlwaysText SIP_MONKEYPATCH_COMPAT_NAME( TextFormatAlwaysText ),
2779 PreferText,
2780 };
2781 Q_ENUM( TextRenderFormat )
2782
2783
2791 {
2792 UseAllLabels = 1 << 1,
2793 UsePartialCandidates = 1 << 2,
2794 // TODO QGIS 4.0: remove
2795 RenderOutlineLabels = 1 << 3,
2796 DrawLabelRectOnly = 1 << 4,
2797 DrawCandidates = 1 << 5,
2798 DrawUnplacedLabels = 1 << 6,
2799 CollectUnplacedLabels = 1 << 7,
2800 DrawLabelMetrics = 1 << 8,
2801 };
2802 Q_ENUM( LabelingFlag )
2803
2804
2812 Q_FLAG( LabelingFlags )
2813
2822 {
2823 Version1 SIP_MONKEYPATCH_COMPAT_NAME( PlacementEngineVersion1 ),
2824 Version2 SIP_MONKEYPATCH_COMPAT_NAME( PlacementEngineVersion2 ),
2825 };
2826 Q_ENUM( LabelPlacementEngineVersion )
2827
2828
2836 {
2837 Horizontal SIP_MONKEYPATCH_COMPAT_NAME( HorizontalOrientation ),
2838 Vertical SIP_MONKEYPATCH_COMPAT_NAME( VerticalOrientation ),
2839 RotationBased SIP_MONKEYPATCH_COMPAT_NAME( RotationBasedOrientation ),
2840 };
2841 Q_ENUM( TextOrientation )
2842
2843
2851 {
2852 Rectangle SIP_MONKEYPATCH_COMPAT_NAME( Rect ),
2853 Point,
2854 Labeling SIP_MONKEYPATCH_COMPAT_NAME( Label ),
2855 RectangleCapHeightBased,
2856 RectangleAscentBased,
2857 };
2858 Q_ENUM( TextLayoutMode )
2859
2860
2868 {
2869 Text = 1 << 0,
2870 Buffer = 1 << 1,
2871 Background = 1 << 2,
2872 Shadow = 1 << 3,
2873 };
2874 Q_ENUM( TextComponent )
2875
2876
2881 Q_DECLARE_FLAGS( TextComponents, TextComponent )
2882 Q_FLAG( TextComponents )
2883
2892 {
2893 Left SIP_MONKEYPATCH_COMPAT_NAME( AlignLeft ),
2894 Center SIP_MONKEYPATCH_COMPAT_NAME( AlignCenter ),
2895 Right SIP_MONKEYPATCH_COMPAT_NAME( AlignRight ),
2896 Justify SIP_MONKEYPATCH_COMPAT_NAME( AlignJustify ),
2897 };
2898 Q_ENUM( TextHorizontalAlignment )
2899
2900
2911 {
2912 Top SIP_MONKEYPATCH_COMPAT_NAME( AlignTop ),
2913 VerticalCenter SIP_MONKEYPATCH_COMPAT_NAME( AlignVCenter ),
2914 Bottom SIP_MONKEYPATCH_COMPAT_NAME( AlignBottom ),
2915 };
2916 Q_ENUM( TextVerticalAlignment )
2917
2918
2927 {
2928 Normal,
2929 SuperScript,
2930 SubScript,
2931 };
2932 Q_ENUM( TextCharacterVerticalAlignment )
2933
2934
2942 {
2943 Distance = 0,
2944 SnapToGrid = 1,
2945 Visvalingam = 2,
2946 SnappedToGridGlobal = 3,
2947 };
2948 Q_ENUM( VectorSimplificationAlgorithm )
2949
2950
2958 {
2959 NoSimplification = 0,
2960 GeometrySimplification = 1,
2961 AntialiasingSimplification = 2,
2962 FullSimplification = 3,
2963 };
2964 Q_ENUM( VectorRenderingSimplificationFlag )
2965
2966
2975
2982 {
2983 Generic,
2984 ShadowOffset,
2985 BlurSize,
2986 GlowSpread,
2987 };
2988 Q_ENUM( RenderSubcomponentProperty )
2989
2990
2995 {
2996 Segment SIP_MONKEYPATCH_COMPAT_NAME( SegmentVertex ) = 1,
2997 Curve SIP_MONKEYPATCH_COMPAT_NAME( CurveVertex ) = 2,
2998 };
2999 Q_ENUM( VertexType )
3000
3001
3009 {
3010 Square,
3011 Diamond,
3012 Pentagon,
3013 Hexagon,
3014 Triangle,
3015 EquilateralTriangle,
3016 Star,
3017 Arrow,
3018 Circle,
3019 Cross,
3020 CrossFill,
3021 Cross2,
3022 Line,
3023 ArrowHead,
3024 ArrowHeadFilled,
3025 SemiCircle,
3026 ThirdCircle,
3027 QuarterCircle,
3028 QuarterSquare,
3029 HalfSquare,
3030 DiagonalHalfSquare,
3031 RightHalfTriangle,
3032 LeftHalfTriangle,
3033 Octagon,
3034 SquareWithCorners,
3035 AsteriskFill,
3036 HalfArc,
3037 ThirdArc,
3038 QuarterArc,
3039 ParallelogramRight,
3040 ParallelogramLeft,
3041 Trapezoid,
3042 Shield,
3043 DiamondStar,
3044 Heart,
3045 Decagon,
3046 RoundedSquare,
3047 };
3048 Q_ENUM( MarkerShape )
3049
3050
3058 {
3059 Interval = 1 << 0,
3060 Vertex = 1 << 1,
3061 LastVertex = 1 << 2,
3062 FirstVertex = 1 << 3,
3063 CentralPoint = 1 << 4,
3064 CurvePoint = 1 << 5,
3065 SegmentCenter = 1 << 6,
3066 InnerVertices = 1 << 7,
3067 };
3068 Q_ENUM( MarkerLinePlacement )
3070 Q_FLAG( MarkerLinePlacements )
3071
3078 {
3079 IntervalCartesian2D = 1 << 0,
3080 IntervalZ = 1 << 1,
3081 IntervalM = 1 << 2,
3082 Vertex = 1 << 3,
3083 };
3084 Q_ENUM( LinearReferencingPlacement )
3085
3086
3092 {
3093 CartesianDistance2D,
3094 Z,
3095 M,
3096 };
3097 Q_ENUM( LinearReferencingLabelSource )
3098
3099
3107 {
3108 SimpleTwoColor,
3109 ColorRamp,
3110 };
3111 Q_ENUM( GradientColorSource )
3112
3113
3121 {
3122 Linear,
3123 Radial,
3124 Conical,
3125 };
3126 Q_ENUM( GradientType )
3127
3128
3136 {
3137 Feature,
3138 Viewport,
3139 };
3140 Q_ENUM( SymbolCoordinateReference )
3141
3142
3151 {
3152 Pad,
3153 Reflect,
3154 Repeat,
3155 };
3156 Q_ENUM( GradientSpread )
3157
3158
3166 {
3167 Absolute SIP_MONKEYPATCH_COMPAT_NAME( AbsoluteCount ),
3168 DensityBased SIP_MONKEYPATCH_COMPAT_NAME( DensityBasedCount ),
3169 };
3170 Q_ENUM( PointCountMethod )
3171
3172
3177 enum class MarkerClipMode : int
3178 {
3179 NoClipping,
3180 Shape,
3181 CentroidWithin,
3182 CompletelyWithin,
3183 };
3184 Q_ENUM( MarkerClipMode )
3185
3186
3191 enum class LineClipMode : int
3192 {
3193 ClipPainterOnly,
3194 ClipToIntersection,
3195 NoClipping,
3196 };
3197 Q_ENUM( LineClipMode )
3198
3199
3205 {
3206 NoRule,
3207 FullDash,
3208 HalfDash,
3209 FullGap,
3210 HalfGap,
3211 };
3212 Q_ENUM( DashPatternLineEndingRule )
3213
3214
3220 {
3221 ScaleBothDashAndGap,
3222 ScaleDashOnly,
3223 ScaleGapOnly,
3224 };
3225 Q_ENUM( DashPatternSizeAdjustment )
3226
3227
3235 {
3236 Color SIP_MONKEYPATCH_COMPAT_NAME( GraduatedColor ),
3237 Size SIP_MONKEYPATCH_COMPAT_NAME( GraduatedSize ),
3238 };
3239 Q_ENUM( GraduatedMethod )
3240
3241
3247 {
3248 NoLabels,
3249 EveryLabel,
3250 FirstLabel,
3251 LastLabel,
3252 FirstAndLastLabels,
3253 };
3254 Q_ENUM( PlotAxisSuffixPlacement )
3255
3256
3260 enum class DpiMode
3261 {
3262 All = 7,
3263 Off = 0,
3264 QGIS = 1,
3265 UMN = 2,
3266 GeoServer = 4,
3267 };
3268 Q_ENUM( DpiMode )
3269
3270
3275 {
3276 Undefined = 0,
3277 StandardDpi = 1,
3278 HighDpi = 2,
3279 };
3280 Q_ENUM( TilePixelRatio )
3281
3282 // NOTE -- the hardcoded numbers here must match QFont::Capitalization!
3283
3284
3292 {
3293 MixedCase = 0,
3294 AllUppercase = 1,
3295 AllLowercase = 2,
3296 ForceFirstLetterToCapital = 4,
3297 SmallCaps = 5,
3298 TitleCase = 1004,
3299 UpperCamelCase = 1005,
3300 AllSmallCaps = 1006,
3301 };
3302 Q_ENUM( Capitalization )
3303
3304
3309 enum class TextRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
3310 {
3311 WrapLines = 1 << 0,
3312 };
3313 Q_ENUM( TextRendererFlag )
3315 Q_FLAG( TextRendererFlags )
3316
3323 {
3324 MapBox,
3325 Esri,
3326 };
3328
3335 {
3336 Clockwise,
3337 CounterClockwise,
3338 NoOrientation,
3339 };
3340 Q_ENUM( AngularDirection )
3341
3342
3347 enum class RendererUsage : int
3348 {
3349 View,
3350 Export,
3351 Unknown,
3352 };
3353 Q_ENUM( RendererUsage )
3354
3355
3360 enum class MapCanvasFlag : int SIP_ENUM_BASETYPE( IntFlag )
3361 {
3362 ShowMainAnnotationLayer = 1 << 0,
3363 };
3364 Q_ENUM( MapCanvasFlag )
3365
3366
3371 Q_DECLARE_FLAGS( MapCanvasFlags, MapCanvasFlag )
3372 Q_FLAG( MapCanvasFlags )
3373
3379 enum class ViewSyncModeFlag : int SIP_ENUM_BASETYPE( IntFlag )
3380 {
3381 Sync3DTo2D = 1 << 0,
3382 Sync2DTo3D = 1 << 1,
3383 };
3384 Q_ENUM( ViewSyncModeFlag )
3386
3393 {
3394 Always,
3395 WhenOutsideVisibleExtent,
3396 Never,
3397 };
3398 Q_ENUM( MapRecenteringMode )
3399
3400
3405 enum class HistoryProviderBackend : int SIP_ENUM_BASETYPE( IntFlag )
3406 {
3407 LocalProfile = 1 << 0,
3408// Project = 1 << 1, //!< QGIS Project (not yet implemented)
3409 };
3410 Q_ENUM( HistoryProviderBackend )
3412 Q_FLAG( HistoryProviderBackends )
3413
3419 enum class QueryStorageBackend : int
3420 {
3421 LocalProfile,
3422 CurrentProject,
3423 };
3424 Q_ENUM( QueryStorageBackend )
3425
3426
3434 {
3435 MapLayer SIP_MONKEYPATCH_COMPAT_NAME( TypeMapLayer ) = -2,
3436 VectorAnyGeometry SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorAnyGeometry ) = -1,
3437 VectorPoint SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorPoint ) = 0,
3438 VectorLine SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorLine ) = 1,
3439 VectorPolygon SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorPolygon ) = 2,
3440 Raster SIP_MONKEYPATCH_COMPAT_NAME( TypeRaster ) = 3,
3441 File SIP_MONKEYPATCH_COMPAT_NAME( TypeFile ) = 4,
3442 Vector SIP_MONKEYPATCH_COMPAT_NAME( TypeVector ) = 5,
3443 Mesh SIP_MONKEYPATCH_COMPAT_NAME( TypeMesh ) = 6,
3444 Plugin SIP_MONKEYPATCH_COMPAT_NAME( TypePlugin ) = 7,
3445 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( TypePointCloud ) = 8,
3446 Annotation SIP_MONKEYPATCH_COMPAT_NAME( TypeAnnotation ) = 9,
3447 VectorTile SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorTile ) = 10
3448 };
3449 Q_ENUM( ProcessingSourceType )
3450
3451
3452
3460 {
3461 DeemphasiseSearchResults SIP_MONKEYPATCH_COMPAT_NAME( FlagDeemphasiseSearchResults ) = 1 << 1,
3462 CompatibleWithVirtualRaster SIP_MONKEYPATCH_COMPAT_NAME( FlagCompatibleWithVirtualRaster ) = 1 << 2,
3463 };
3465
3474 Q_FLAG( ProcessingProviderFlags )
3475
3476
3484 {
3485 HideFromToolbox SIP_MONKEYPATCH_COMPAT_NAME( FlagHideFromToolbox ) = 1 << 1,
3486 HideFromModeler SIP_MONKEYPATCH_COMPAT_NAME( FlagHideFromModeler ) = 1 << 2,
3487 SupportsBatch SIP_MONKEYPATCH_COMPAT_NAME( FlagSupportsBatch ) = 1 << 3,
3488 CanCancel SIP_MONKEYPATCH_COMPAT_NAME( FlagCanCancel ) = 1 << 4,
3489 RequiresMatchingCrs SIP_MONKEYPATCH_COMPAT_NAME( FlagRequiresMatchingCrs ) = 1 << 5,
3490 NoThreading SIP_MONKEYPATCH_COMPAT_NAME( FlagNoThreading ) = 1 << 6,
3491 DisplayNameIsLiteral SIP_MONKEYPATCH_COMPAT_NAME( FlagDisplayNameIsLiteral ) = 1 << 7,
3492 SupportsInPlaceEdits SIP_MONKEYPATCH_COMPAT_NAME( FlagSupportsInPlaceEdits ) = 1 << 8,
3493 KnownIssues SIP_MONKEYPATCH_COMPAT_NAME( FlagKnownIssues ) = 1 << 9,
3494 CustomException SIP_MONKEYPATCH_COMPAT_NAME( FlagCustomException ) = 1 << 10,
3495 PruneModelBranchesBasedOnAlgorithmResults SIP_MONKEYPATCH_COMPAT_NAME( FlagPruneModelBranchesBasedOnAlgorithmResults ) = 1 << 11,
3496 SkipGenericModelLogging SIP_MONKEYPATCH_COMPAT_NAME( FlagSkipGenericModelLogging ) = 1 << 12,
3497 NotAvailableInStandaloneTool SIP_MONKEYPATCH_COMPAT_NAME( FlagNotAvailableInStandaloneTool ) = 1 << 13,
3498 RequiresProject SIP_MONKEYPATCH_COMPAT_NAME( FlagRequiresProject ) = 1 << 14,
3499 SecurityRisk = 1 << 15,
3500 Deprecated SIP_MONKEYPATCH_COMPAT_NAME( FlagDeprecated ) = HideFromToolbox | HideFromModeler,
3501 };
3503
3512 Q_FLAG( ProcessingAlgorithmFlags )
3513
3514
3520 {
3521 RegeneratesPrimaryKey = 1 << 0,
3522 RegeneratesPrimaryKeyInSomeScenarios = 1 << 1,
3523 };
3524 Q_ENUM( ProcessingAlgorithmDocumentationFlag )
3525
3526
3533
3543 {
3544 NotAvailable,
3545 Available,
3546 };
3547 Q_ENUM( ProcessingPropertyAvailability )
3548
3549
3557 {
3558 DefaultLevel = 0,
3559 Verbose,
3560 ModelDebug,
3561 };
3562 Q_ENUM( ProcessingLogLevel )
3563
3564
3572 {
3573 Standard,
3574 Batch,
3575 Modeler,
3576 };
3577 Q_ENUM( ProcessingMode )
3578
3579
3587 {
3588 OverrideDefaultGeometryCheck SIP_MONKEYPATCH_COMPAT_NAME( FlagOverrideDefaultGeometryCheck ) = 1 << 0,
3589 CreateIndividualOutputPerInputFeature SIP_MONKEYPATCH_COMPAT_NAME( FlagCreateIndividualOutputPerInputFeature ) = 1 << 1,
3590 };
3591 Q_ENUM( ProcessingFeatureSourceDefinitionFlag )
3592
3593
3602
3611 {
3612 SkipGeometryValidityChecks SIP_MONKEYPATCH_COMPAT_NAME( FlagSkipGeometryValidityChecks ) = 1 << 1,
3613 };
3614 Q_ENUM( ProcessingFeatureSourceFlag )
3615
3616
3625
3637 {
3638 ExposeToModeler = 1
3639 };
3640 Q_ENUM( ProcessingParameterTypeFlag )
3641
3642
3654
3663 {
3664 Advanced SIP_MONKEYPATCH_COMPAT_NAME( FlagAdvanced ) = 1 << 1,
3665 Hidden SIP_MONKEYPATCH_COMPAT_NAME( FlagHidden ) = 1 << 2,
3666 Optional SIP_MONKEYPATCH_COMPAT_NAME( FlagOptional ) = 1 << 3,
3667 IsModelOutput SIP_MONKEYPATCH_COMPAT_NAME( FlagIsModelOutput ) = 1 << 4,
3668 };
3669 Q_ENUM( ProcessingParameterFlag )
3670
3671
3679 Q_FLAG( ProcessingParameterFlags )
3680
3689 {
3690 File = 0,
3691 Folder,
3692 };
3693 Q_ENUM( ProcessingFileParameterBehavior )
3694
3695
3703 {
3704 Integer,
3705 Double,
3706 };
3707 Q_ENUM( ProcessingNumberParameterType )
3708
3709
3717 {
3718 Any = -1,
3719 Numeric = 0,
3720 String = 1,
3721 DateTime = 2,
3722 Binary = 3,
3723 Boolean = 4,
3724 };
3725 Q_ENUM( ProcessingFieldParameterDataType )
3726
3727
3735 {
3736 DateTime,
3737 Date,
3738 Time,
3739 };
3740 Q_ENUM( ProcessingDateTimeParameterDataType )
3741
3742
3748 {
3749 ModelParameter,
3750 ChildOutput,
3751 StaticValue,
3752 Expression,
3753 ExpressionText,
3754 ModelOutput,
3755 };
3756 Q_ENUM( ProcessingModelChildParameterSource )
3757
3758
3764 {
3765 NotExecuted,
3766 Success,
3767 Failed,
3768 };
3769 Q_ENUM( ProcessingModelChildAlgorithmExecutionStatus )
3770
3771
3779 {
3780 Vertices,
3781 StructureLines,
3782 BreakLines
3783 };
3784 Q_ENUM( ProcessingTinInputLayerType )
3785
3786
3792 {
3793 Wkt SIP_MONKEYPATCH_COMPAT_NAME( FormatWkt ),
3794 Proj SIP_MONKEYPATCH_COMPAT_NAME( FormatProj ),
3795 };
3796 Q_ENUM( CrsDefinitionFormat )
3797
3798
3806 enum class FieldDomainSplitPolicy : int
3807 {
3808 DefaultValue,
3809 Duplicate,
3810 GeometryRatio,
3811 UnsetField,
3812 };
3813 Q_ENUM( FieldDomainSplitPolicy )
3814
3815
3823 enum class FieldDomainMergePolicy : int
3824 {
3825 DefaultValue,
3826 Sum,
3827 GeometryWeighted,
3828 UnsetField,
3829 LargestGeometry,
3830 MinimumValue,
3831 MaximumValue,
3832 SetToNull,
3833 };
3834 Q_ENUM( FieldDomainMergePolicy )
3835
3836
3843 enum class FieldDuplicatePolicy : int
3844 {
3845 DefaultValue,
3846 Duplicate,
3847 UnsetField,
3848 };
3849 Q_ENUM( FieldDuplicatePolicy )
3850
3851
3856 enum class FieldDomainType : int
3857 {
3858 Coded,
3859 Range,
3860 Glob,
3861 };
3862 Q_ENUM( FieldDomainType )
3863
3864
3869 enum class TransactionMode : int
3870 {
3871 Disabled = 0,
3872 AutomaticGroups = 1,
3873 BufferedGroups = 2,
3874 };
3875 Q_ENUM( TransactionMode )
3876
3877
3882 enum class AltitudeClamping : int
3883 {
3884 Absolute,
3885 Relative,
3886 Terrain,
3887 };
3888 Q_ENUM( AltitudeClamping )
3889
3890
3895 enum class AltitudeBinding : int
3896 {
3897 Vertex,
3898 Centroid,
3899 };
3900 Q_ENUM( AltitudeBinding )
3901
3902
3907 enum class RangeLimits : int
3908 {
3909 IncludeBoth = 0,
3910 IncludeLowerExcludeUpper,
3911 ExcludeLowerIncludeUpper,
3912 ExcludeBoth,
3913 };
3914 Q_ENUM( RangeLimits )
3915
3916
3921 enum class RasterElevationMode : int
3922 {
3923 FixedElevationRange = 0,
3924 RepresentsElevationSurface = 1,
3925 FixedRangePerBand = 2,
3926 DynamicRangePerBand = 3,
3927 };
3928 Q_ENUM( RasterElevationMode )
3929
3930
3935 enum class MeshElevationMode : int
3936 {
3937 FixedElevationRange = 0,
3938 FromVertices = 1,
3939 FixedRangePerGroup = 2,
3940 };
3941 Q_ENUM( MeshElevationMode )
3942
3943
3949 {
3950 NoConstraint,
3951 Perpendicular,
3952 Parallel
3953 };
3954 Q_ENUM( BetweenLineConstraint )
3955
3956
3961 enum class LineExtensionSide : int
3962 {
3963 BeforeVertex,
3964 AfterVertex,
3965 NoVertex,
3966 };
3967 Q_ENUM( LineExtensionSide )
3968
3969
3970
3974 enum class CadConstraintType : int
3975 {
3976 Generic,
3977 Angle,
3978 Distance,
3979 XCoordinate,
3980 YCoordinate,
3981 ZValue,
3982 MValue,
3983 };
3984 Q_ENUM( CadConstraintType )
3985
3986
3987
3992 enum class ProjectFlag : int SIP_ENUM_BASETYPE( IntFlag )
3993 {
3994 EvaluateDefaultValuesOnProviderSide = 1 << 0,
3995 TrustStoredLayerStatistics = 1 << 1,
3996 RememberLayerEditStatusBetweenSessions = 1 << 2,
3997 RememberAttributeTableWindowsBetweenSessions = 1 << 3,
3998 };
3999 Q_ENUM( ProjectFlag )
4000 Q_DECLARE_FLAGS( ProjectFlags, ProjectFlag )
4001 Q_FLAG( ProjectFlags )
4002
4008 enum class PlotToolFlag : int SIP_ENUM_BASETYPE( IntFlag )
4009 {
4010 ShowContextMenu = 1 << 0,
4011 };
4012 Q_ENUM( PlotToolFlag )
4013 Q_DECLARE_FLAGS( PlotToolFlags, PlotToolFlag )
4014 Q_FLAG( PlotToolFlags )
4015
4016
4024 enum class Point3DShape : int
4025 {
4026 Cylinder,
4027 Sphere,
4028 Cone,
4029 Cube,
4030 Torus,
4031 Plane,
4032 ExtrudedText,
4033 Model,
4034 Billboard,
4035 };
4036 Q_ENUM( Point3DShape )
4037
4038
4043 enum class LightSourceType : int
4044 {
4045 Point,
4046 Directional,
4047 };
4048 Q_ENUM( LightSourceType )
4049
4050
4055 enum class NavigationMode : int
4056 {
4057 TerrainBased,
4058 Walk,
4059 GlobeTerrainBased
4060 };
4061 Q_ENUM( NavigationMode )
4062
4063
4068 enum class SceneMode : int
4069 {
4070 Local,
4071 Globe
4072 };
4073 Q_ENUM( SceneMode )
4074
4075
4080 enum class VerticalAxisInversion : int
4081 {
4082 Never,
4083 WhenDragging,
4084 Always,
4085 };
4086 Q_ENUM( VerticalAxisInversion )
4087
4088
4094 {
4095 Line,
4096 FillBelow,
4097 FillAbove,
4098 };
4100
4106 enum class VectorProfileType : int
4107 {
4108 IndividualFeatures,
4109 ContinuousSurface,
4110 };
4112
4118 enum class ProfileGeneratorFlag : int SIP_ENUM_BASETYPE( IntFlag )
4119 {
4120 RespectsMaximumErrorMapUnit = 1 << 0,
4121 RespectsDistanceRange = 1 << 1,
4122 RespectsElevationRange = 1 << 2,
4123 };
4124 Q_ENUM( ProfileGeneratorFlag )
4126 Q_FLAG( ProfileGeneratorFlags )
4127
4133 enum class ProfileExportType : int
4134 {
4135 Features3D,
4136 Profile2D,
4137 DistanceVsElevationTable,
4138 };
4140
4147 {
4148 Square,
4149 Circle,
4150 };
4151 Q_ENUM( PointCloudSymbol )
4152
4153
4159 {
4160 Default,
4161 BottomToTop,
4162 TopToBottom,
4163 };
4164 Q_ENUM( PointCloudDrawOrder )
4165
4166
4174 {
4175 AllowIntersections,
4176 AvoidIntersectionsCurrentLayer,
4177 AvoidIntersectionsLayers,
4178 };
4179 Q_ENUM( AvoidIntersectionsMode )
4180
4181
4189 {
4190 Qgz,
4191 Qgs,
4192 };
4193 Q_ENUM( ProjectFileFormat )
4194
4195
4203 {
4204 DontResolveLayers SIP_MONKEYPATCH_COMPAT_NAME( FlagDontResolveLayers ) = 1 << 0,
4205 DontLoadLayouts SIP_MONKEYPATCH_COMPAT_NAME( FlagDontLoadLayouts ) = 1 << 1,
4206 TrustLayerMetadata SIP_MONKEYPATCH_COMPAT_NAME( FlagTrustLayerMetadata ) = 1 << 2,
4207 DontStoreOriginalStyles SIP_MONKEYPATCH_COMPAT_NAME( FlagDontStoreOriginalStyles ) = 1 << 3,
4208 DontLoad3DViews SIP_MONKEYPATCH_COMPAT_NAME( FlagDontLoad3DViews ) = 1 << 4,
4209 DontLoadProjectStyles = 1 << 5,
4210 ForceReadOnlyLayers = 1 << 6,
4211 DontUpgradeAnnotations = 1 << 7,
4212 };
4213 Q_ENUM( ProjectReadFlag )
4214
4215
4223 Q_FLAG( ProjectReadFlags )
4224
4233 enum class ProjectCapability : int SIP_ENUM_BASETYPE( IntFlag )
4234 {
4235 ProjectStyles = 1 << 0,
4236 };
4237 Q_ENUM( ProjectCapability )
4238
4239
4245 Q_FLAG( ProjectCapabilities )
4246
4253 {
4254 Vector,
4255 Raster,
4256 RasterDem,
4257 GeoJson,
4258 Image,
4259 Video,
4260 Unknown,
4261 };
4262 Q_ENUM( MapBoxGlStyleSourceType )
4263
4264
4272 {
4273 FeatureServer SIP_MONKEYPATCH_COMPAT_NAME( FeatureService ),
4274 MapServer SIP_MONKEYPATCH_COMPAT_NAME( MapService ),
4275 ImageServer SIP_MONKEYPATCH_COMPAT_NAME( ImageService ),
4276 GlobeServer,
4277 GPServer,
4278 GeocodeServer,
4279 Unknown,
4280 };
4281 Q_ENUM( ArcGisRestServiceType )
4282
4283
4291 {
4292 Normal,
4293 Generated,
4294 };
4295 Q_ENUM( RelationshipType )
4296
4297
4305 {
4306 Association,
4307 Composition,
4308 };
4309 Q_ENUM( RelationshipStrength )
4310
4311
4317 {
4318 OneToOne,
4319 OneToMany,
4320 ManyToOne,
4321 ManyToMany,
4322 };
4323 Q_ENUM( RelationshipCardinality )
4324
4325
4330 enum class RelationshipCapability : int SIP_ENUM_BASETYPE( IntFlag )
4331 {
4332 MultipleFieldKeys = 1 << 0,
4333 ForwardPathLabel = 1 << 1,
4334 BackwardPathLabel = 1 << 2,
4335 };
4336 Q_ENUM( RelationshipCapability )
4337
4338
4344 Q_FLAG( RelationshipCapabilities )
4345
4351 enum class CoordinateDisplayType : int
4352 {
4353 MapCrs,
4354 MapGeographic,
4355 CustomCrs,
4356 };
4357 Q_ENUM( CoordinateDisplayType )
4358
4359
4364 enum class SettingsOrigin : int
4365 {
4366 Any,
4367 Global,
4368 Local,
4369 };
4370 Q_ENUM( SettingsOrigin )
4371
4372
4377 enum class ScriptLanguage : int
4378 {
4379 Css,
4380 QgisExpression,
4381 Html,
4382 JavaScript,
4383 Json,
4384 Python,
4385 R,
4386 Sql,
4387 Batch,
4388 Bash,
4389 Unknown,
4390 };
4391 Q_ENUM( ScriptLanguage )
4392
4393
4401 {
4402 Reformat = 1 << 0,
4403 CheckSyntax = 1 << 1,
4404 ToggleComment = 1 << 2,
4405 };
4406 Q_ENUM( ScriptLanguageCapability )
4407
4408
4415
4422 {
4423 AboveInsertionPoint,
4424 TopOfTree,
4425 OptimalInInsertionGroup,
4426 };
4427 Q_ENUM( LayerTreeInsertionMethod )
4428
4429
4434 enum class LayerTreeFilterFlag : int SIP_ENUM_BASETYPE( IntFlag )
4435 {
4436 SkipVisibilityCheck = 1 << 0,
4437 };
4438 Q_ENUM( LayerTreeFilterFlag )
4439
4440
4446 Q_FLAG( LayerTreeFilterFlags )
4447
4456 {
4457 Undefined,
4458 Hidden,
4459 Title,
4460 Group,
4461 Subgroup,
4462 Symbol,
4463 SymbolLabel,
4464 };
4465 // !!! WARNING: If adding new values to this enum, make sure you update QgsLegendSettings constructor accordingly!!
4466 Q_ENUM( LegendComponent )
4467
4468
4475 enum class LegendJsonRenderFlag : int SIP_ENUM_BASETYPE( IntFlag )
4476 {
4477 ShowRuleDetails = 1 << 0,
4478 };
4479 Q_ENUM( LegendJsonRenderFlag )
4481 Q_FLAG( LegendJsonRenderFlags )
4482
4490 enum class ActionType : int
4491 {
4492 Invalid,
4493 MapLayerAction,
4494 AttributeAction
4495 };
4496 Q_ENUM( ActionType )
4497
4498
4505 enum class MapLayerActionTarget : int SIP_ENUM_BASETYPE( IntFlag )
4506 {
4507 Layer = 1 << 0,
4508 SingleFeature = 1 << 1,
4509 MultipleFeatures = 1 << 2,
4510 AllActions = Layer | SingleFeature | MultipleFeatures
4511 };
4512 Q_ENUM( MapLayerActionTarget )
4513
4514
4522 Q_FLAG( MapLayerActionTargets )
4523
4531 enum class MapLayerActionFlag : int SIP_ENUM_BASETYPE( IntFlag )
4532 {
4533 EnabledOnlyWhenEditable = 1 << 1,
4534 EnableOnlyWhenHasGeometry = 1 << 2,
4535 };
4536 Q_ENUM( MapLayerActionFlag )
4537
4538
4546 Q_FLAG( MapLayerActionFlags )
4547
4556 {
4557 Generic,
4558 GenericPython,
4559 Mac,
4560 Windows,
4561 Unix,
4562 OpenUrl,
4563 SubmitUrlEncoded,
4564 SubmitUrlMultipart,
4565 };
4566 Q_ENUM( AttributeActionType )
4567
4568
4574 {
4575 Created,
4576 Published,
4577 Revised,
4578 Superseded,
4579 };
4580 Q_ENUM( MetadataDateType )
4581
4582
4593 {
4594 Undefined SIP_MONKEYPATCH_COMPAT_NAME( UndefinedColorInterpretation ) = 0,
4595 GrayIndex = 1,
4596 PaletteIndex = 2,
4597 RedBand = 3,
4598 GreenBand = 4,
4599 BlueBand = 5,
4600 AlphaBand = 6,
4601 HueBand = 7,
4602 SaturationBand = 8,
4603 LightnessBand = 9,
4604 CyanBand = 10,
4605 MagentaBand = 11,
4606 YellowBand = 12,
4607 BlackBand = 13,
4608 YCbCr_YBand = 14,
4609 YCbCr_CbBand = 15,
4610 YCbCr_CrBand = 16,
4611 ContinuousPalette = 17,
4612
4613 // Note: values between PanBand and SAR_P_Band match additions done in
4614 // GDAL 3.10, except that the numeric values of the constant don't match GDAL ones
4615
4616 PanBand = 18,
4617 CoastalBand = 19,
4618 RedEdgeBand = 20,
4619 NIRBand = 21,
4620 SWIRBand = 22,
4621 MWIRBand = 23,
4622 LWIRBand = 24,
4623 TIRBand = 25,
4624 OtherIRBand = 26,
4625 SAR_Ka_Band = 27,
4626 SAR_K_Band = 28,
4627 SAR_Ku_Band = 30,
4628 SAR_X_Band = 31,
4629 SAR_C_Band = 32,
4630 SAR_S_Band = 33,
4631 SAR_L_Band = 34,
4632 SAR_P_Band = 35,
4633 };
4634 Q_ENUM( RasterColorInterpretation )
4635
4636
4644 {
4645 GrayOrUndefined,
4646 Palette,
4647 MultiBand SIP_MONKEYPATCH_COMPAT_NAME( Multiband ),
4648 SingleBandColorData SIP_MONKEYPATCH_COMPAT_NAME( ColorLayer ),
4649 };
4650 Q_ENUM( RasterLayerType )
4651
4652
4660 {
4661 Undefined SIP_MONKEYPATCH_COMPAT_NAME( UndefinedDrawingStyle ),
4662 SingleBandGray,
4663 SingleBandPseudoColor,
4664 PalettedColor,
4665 PalettedSingleBandGray,
4666 PalettedSingleBandPseudoColor,
4667 PalettedMultiBandColor,
4668 MultiBandSingleBandGray,
4669 MultiBandSingleBandPseudoColor,
4670 MultiBandColor,
4671 SingleBandColorData SIP_MONKEYPATCH_COMPAT_NAME( SingleBandColorDataStyle ),
4672 };
4673 Q_ENUM( RasterDrawingStyle )
4674
4675
4682 enum class RasterPyramidFormat SIP_MONKEYPATCH_SCOPEENUM_UNNEST( QgsRaster, RasterPyramidsFormat ) : int
4683 {
4684 GeoTiff SIP_MONKEYPATCH_COMPAT_NAME( PyramidsGTiff ) = 0,
4685 Internal SIP_MONKEYPATCH_COMPAT_NAME( PyramidsInternal ) = 1,
4686 Erdas SIP_MONKEYPATCH_COMPAT_NAME( PyramidsErdas ) = 2
4687 };
4688 Q_ENUM( RasterPyramidFormat )
4689
4690
4698 {
4699 No SIP_MONKEYPATCH_COMPAT_NAME( PyramidsFlagNo ) = 0,
4700 Yes SIP_MONKEYPATCH_COMPAT_NAME( PyramidsFlagYes ) = 1,
4701 CopyExisting SIP_MONKEYPATCH_COMPAT_NAME( PyramidsCopyExisting ) = 2
4702 };
4703 Q_ENUM( RasterBuildPyramidOption )
4704
4705
4713 {
4714 Undefined SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatUndefined ) = 0,
4715 Value SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatValue ) = 1,
4716 Text SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatText ) = 1 << 1,
4717 Html SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatHtml ) = 1 << 2,
4718 Feature SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatFeature ) = 1 << 3,
4719 };
4720 Q_ENUM( RasterIdentifyFormat )
4721
4722 // TODO QGIS 4 -- remove NoCapabilities and rely on RasterInterfaceCapabilities() instead
4723 // remove deprecated members
4724 // Remove "Identify" member, and replace with combinations of IdentifyValue/IdentifyText/etc
4725
4726
4734 {
4735 NoCapabilities = 0,
4736 Size = 1 << 1,
4737 Create = 1 << 2,
4738 Remove = 1 << 3,
4739 BuildPyramids = 1 << 4,
4740 Identify = 1 << 5,
4741 IdentifyValue = 1 << 6,
4742 IdentifyText = 1 << 7,
4743 IdentifyHtml = 1 << 8,
4744 IdentifyFeature = 1 << 9,
4745 Prefetch = 1 << 10,
4746 };
4747 Q_ENUM( RasterInterfaceCapability )
4748
4749
4756
4757 // TODO QGIS 4 -- remove NoProviderCapabilities and rely on RasterProviderCapabilities() instead
4758
4767 {
4768 NoProviderCapabilities = 0,
4769 ReadLayerMetadata = 1 << 1,
4770 WriteLayerMetadata = 1 << 2,
4771 ProviderHintBenefitsFromResampling = 1 << 3,
4772 ProviderHintCanPerformProviderResampling = 1 << 4,
4773 ReloadData = 1 << 5,
4774 DpiDependentData = 1 << 6,
4775 NativeRasterAttributeTable = 1 << 7,
4776 BuildPyramids = 1 << 8,
4777 };
4778 Q_ENUM( RasterProviderCapability )
4779
4780
4789
4796 {
4797 HighestElevation,
4798 NewerElevation,
4799 };
4800 Q_ENUM( ElevationMapCombineMethod )
4801
4802
4811 {
4812 Normal SIP_MONKEYPATCH_COMPAT_NAME( BlendNormal ),
4813 Lighten SIP_MONKEYPATCH_COMPAT_NAME( BlendLighten ),
4814 Screen SIP_MONKEYPATCH_COMPAT_NAME( BlendScreen ),
4815 Dodge SIP_MONKEYPATCH_COMPAT_NAME( BlendDodge ),
4816 Addition SIP_MONKEYPATCH_COMPAT_NAME( BlendAddition ),
4817 Darken SIP_MONKEYPATCH_COMPAT_NAME( BlendDarken ),
4818 Multiply SIP_MONKEYPATCH_COMPAT_NAME( BlendMultiply ),
4819 Burn SIP_MONKEYPATCH_COMPAT_NAME( BlendBurn ),
4820 Overlay SIP_MONKEYPATCH_COMPAT_NAME( BlendOverlay ),
4821 SoftLight SIP_MONKEYPATCH_COMPAT_NAME( BlendSoftLight ),
4822 HardLight SIP_MONKEYPATCH_COMPAT_NAME( BlendHardLight ),
4823 Difference SIP_MONKEYPATCH_COMPAT_NAME( BlendDifference ),
4824 Subtract SIP_MONKEYPATCH_COMPAT_NAME( BlendSubtract ),
4825 Source SIP_MONKEYPATCH_COMPAT_NAME( BlendSource ),
4826 DestinationOver SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationOver ),
4827 Clear SIP_MONKEYPATCH_COMPAT_NAME( BlendClear ),
4828 Destination SIP_MONKEYPATCH_COMPAT_NAME( BlendDestination ),
4829 SourceIn SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceIn ),
4830 DestinationIn SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationIn ),
4831 SourceOut SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceOut ),
4832 DestinationOut SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationOut ),
4833 SourceAtop SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceAtop ),
4834 DestinationAtop SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationAtop ),
4835 Xor SIP_MONKEYPATCH_COMPAT_NAME( BlendXor ),
4836 };
4837 Q_ENUM( BlendMode )
4838
4839
4847 {
4848 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownSystem ) = 0,
4849 Metric SIP_MONKEYPATCH_COMPAT_NAME( MetricSystem ),
4850 Imperial SIP_MONKEYPATCH_COMPAT_NAME( ImperialSystem ),
4851 USCS SIP_MONKEYPATCH_COMPAT_NAME( USCSSystem ),
4852 };
4853 Q_ENUM( SystemOfMeasurement )
4854
4855
4862 {
4863 Layer SIP_MONKEYPATCH_COMPAT_NAME( LayerUnits ),
4864 Pixels,
4865 Project SIP_MONKEYPATCH_COMPAT_NAME( ProjectUnits )
4866 };
4867 Q_ENUM( MapToolUnit )
4868
4869
4877 {
4878 Distance SIP_MONKEYPATCH_COMPAT_NAME( TypeDistance ) = 0,
4879 Area SIP_MONKEYPATCH_COMPAT_NAME( TypeArea ),
4880 Volume SIP_MONKEYPATCH_COMPAT_NAME( TypeVolume ),
4881 Unknown SIP_MONKEYPATCH_COMPAT_NAME( TypeUnknown ),
4882 Temporal SIP_MONKEYPATCH_COMPAT_NAME( TypeTemporal ),
4883 };
4884 Q_ENUM( UnitType )
4885
4886
4894 {
4895 Meters SIP_MONKEYPATCH_COMPAT_NAME( DistanceMeters ),
4896 Kilometers SIP_MONKEYPATCH_COMPAT_NAME( DistanceKilometers ),
4897 Feet SIP_MONKEYPATCH_COMPAT_NAME( DistanceFeet ),
4898 NauticalMiles SIP_MONKEYPATCH_COMPAT_NAME( DistanceNauticalMiles ),
4899 Yards SIP_MONKEYPATCH_COMPAT_NAME( DistanceYards ),
4900 Miles SIP_MONKEYPATCH_COMPAT_NAME( DistanceMiles ),
4901 Degrees SIP_MONKEYPATCH_COMPAT_NAME( DistanceDegrees ),
4902 Centimeters SIP_MONKEYPATCH_COMPAT_NAME( DistanceCentimeters ),
4903 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( DistanceMillimeters ),
4904 Inches,
4905 ChainsInternational,
4906 ChainsBritishBenoit1895A,
4907 ChainsBritishBenoit1895B,
4908 ChainsBritishSears1922Truncated,
4909 ChainsBritishSears1922,
4910 ChainsClarkes,
4911 ChainsUSSurvey,
4912 FeetBritish1865,
4913 FeetBritish1936,
4914 FeetBritishBenoit1895A,
4915 FeetBritishBenoit1895B,
4916 FeetBritishSears1922Truncated,
4917 FeetBritishSears1922,
4918 FeetClarkes,
4919 FeetGoldCoast,
4920 FeetIndian,
4921 FeetIndian1937,
4922 FeetIndian1962,
4923 FeetIndian1975,
4924 FeetUSSurvey,
4925 LinksInternational,
4926 LinksBritishBenoit1895A,
4927 LinksBritishBenoit1895B,
4928 LinksBritishSears1922Truncated,
4929 LinksBritishSears1922,
4930 LinksClarkes,
4931 LinksUSSurvey,
4932 YardsBritishBenoit1895A,
4933 YardsBritishBenoit1895B,
4934 YardsBritishSears1922Truncated,
4935 YardsBritishSears1922,
4936 YardsClarkes,
4937 YardsIndian,
4938 YardsIndian1937,
4939 YardsIndian1962,
4940 YardsIndian1975,
4941 MilesUSSurvey,
4942 Fathoms,
4943 MetersGermanLegal,
4944 Unknown SIP_MONKEYPATCH_COMPAT_NAME( DistanceUnknownUnit ),
4945 };
4946 Q_ENUM( DistanceUnit )
4947
4948
4956 {
4957 Standard,
4958 Geographic,
4959 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownType ),
4960 };
4961 Q_ENUM( DistanceUnitType )
4962
4963
4971 {
4972 SquareMeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMeters ),
4973 SquareKilometers SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareKilometers ),
4974 SquareFeet SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareFeet ),
4975 SquareYards SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareYards ),
4976 SquareMiles SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMiles ),
4977 Hectares SIP_MONKEYPATCH_COMPAT_NAME( AreaHectares ),
4978 Acres SIP_MONKEYPATCH_COMPAT_NAME( AreaAcres ),
4979 SquareNauticalMiles SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareNauticalMiles ),
4980 SquareDegrees SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareDegrees ),
4981 SquareCentimeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareCentimeters ),
4982 SquareMillimeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMillimeters ),
4983 SquareInches,
4984 Unknown SIP_MONKEYPATCH_COMPAT_NAME( AreaUnknownUnit ),
4985 };
4986 Q_ENUM( AreaUnit )
4987
4988
4996 {
4997 CubicMeters SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicMeters ),
4998 CubicFeet SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicFeet ),
4999 CubicYards SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicYards ),
5000 Barrel SIP_MONKEYPATCH_COMPAT_NAME( VolumeBarrel ),
5001 CubicDecimeter SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicDecimeter ),
5002 Liters SIP_MONKEYPATCH_COMPAT_NAME( VolumeLiters ),
5003 GallonUS SIP_MONKEYPATCH_COMPAT_NAME( VolumeGallonUS ),
5004 CubicInch SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicInch ),
5005 CubicCentimeter SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicCentimeter ),
5006 CubicDegrees SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicDegrees ),
5007 Unknown SIP_MONKEYPATCH_COMPAT_NAME( VolumeUnknownUnit ),
5008 };
5009 Q_ENUM( VolumeUnit )
5010
5011
5019 {
5020 Degrees SIP_MONKEYPATCH_COMPAT_NAME( AngleDegrees ),
5021 Radians SIP_MONKEYPATCH_COMPAT_NAME( AngleRadians ),
5022 Gon SIP_MONKEYPATCH_COMPAT_NAME( AngleGon ),
5023 MinutesOfArc SIP_MONKEYPATCH_COMPAT_NAME( AngleMinutesOfArc ),
5024 SecondsOfArc SIP_MONKEYPATCH_COMPAT_NAME( AngleSecondsOfArc ),
5025 Turn SIP_MONKEYPATCH_COMPAT_NAME( AngleTurn ),
5026 MilliradiansSI SIP_MONKEYPATCH_COMPAT_NAME( AngleMilliradiansSI ),
5027 MilNATO SIP_MONKEYPATCH_COMPAT_NAME( AngleMilNATO ),
5028 Unknown SIP_MONKEYPATCH_COMPAT_NAME( AngleUnknownUnit ),
5029 };
5030 Q_ENUM( AngleUnit )
5031
5032
5040 {
5041 Milliseconds SIP_MONKEYPATCH_COMPAT_NAME( TemporalMilliseconds ),
5042 Seconds SIP_MONKEYPATCH_COMPAT_NAME( TemporalSeconds ),
5043 Minutes SIP_MONKEYPATCH_COMPAT_NAME( TemporalMinutes ),
5044 Hours SIP_MONKEYPATCH_COMPAT_NAME( TemporalHours ),
5045 Days SIP_MONKEYPATCH_COMPAT_NAME( TemporalDays ),
5046 Weeks SIP_MONKEYPATCH_COMPAT_NAME( TemporalWeeks ),
5047 Months SIP_MONKEYPATCH_COMPAT_NAME( TemporalMonths ),
5048 Years SIP_MONKEYPATCH_COMPAT_NAME( TemporalYears ),
5049 Decades SIP_MONKEYPATCH_COMPAT_NAME( TemporalDecades ),
5050 Centuries SIP_MONKEYPATCH_COMPAT_NAME( TemporalCenturies ),
5051 IrregularStep SIP_MONKEYPATCH_COMPAT_NAME( TemporalIrregularStep ),
5052 Unknown SIP_MONKEYPATCH_COMPAT_NAME( TemporalUnknownUnit )
5053 };
5054 Q_ENUM( TemporalUnit )
5055
5056
5064 {
5065 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( RenderMillimeters ),
5066 MapUnits SIP_MONKEYPATCH_COMPAT_NAME( RenderMapUnits ),
5067 Pixels SIP_MONKEYPATCH_COMPAT_NAME( RenderPixels ),
5068 Percentage SIP_MONKEYPATCH_COMPAT_NAME( RenderPercentage ),
5069 Points SIP_MONKEYPATCH_COMPAT_NAME( RenderPoints ),
5070 Inches SIP_MONKEYPATCH_COMPAT_NAME( RenderInches ),
5071 Unknown SIP_MONKEYPATCH_COMPAT_NAME( RenderUnknownUnit ),
5072 MetersInMapUnits SIP_MONKEYPATCH_COMPAT_NAME( RenderMetersInMapUnits ),
5073 };
5074 Q_ENUM( RenderUnit )
5075
5076
5084 {
5085 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( LayoutMillimeters ),
5086 Centimeters SIP_MONKEYPATCH_COMPAT_NAME( LayoutCentimeters ),
5087 Meters SIP_MONKEYPATCH_COMPAT_NAME( LayoutMeters ),
5088 Inches SIP_MONKEYPATCH_COMPAT_NAME( LayoutInches ),
5089 Feet SIP_MONKEYPATCH_COMPAT_NAME( LayoutFeet ),
5090 Points SIP_MONKEYPATCH_COMPAT_NAME( LayoutPoints ),
5091 Picas SIP_MONKEYPATCH_COMPAT_NAME( LayoutPicas ),
5092 Pixels SIP_MONKEYPATCH_COMPAT_NAME( LayoutPixels )
5093 };
5094 Q_ENUM( LayoutUnit )
5095
5096
5104 {
5105 PaperUnits SIP_MONKEYPATCH_COMPAT_NAME( LayoutPaperUnits ),
5106 ScreenUnits SIP_MONKEYPATCH_COMPAT_NAME( LayoutScreenUnits )
5107 };
5108 Q_ENUM( LayoutUnitType )
5109
5110
5118 {
5119 Debug SIP_MONKEYPATCH_COMPAT_NAME( FlagDebug ) = 1 << 1,
5120 OutlineOnly SIP_MONKEYPATCH_COMPAT_NAME( FlagOutlineOnly ) = 1 << 2,
5121 Antialiasing SIP_MONKEYPATCH_COMPAT_NAME( FlagAntialiasing ) = 1 << 3,
5122 UseAdvancedEffects SIP_MONKEYPATCH_COMPAT_NAME( FlagUseAdvancedEffects ) = 1 << 4,
5123 ForceVectorOutput SIP_MONKEYPATCH_COMPAT_NAME( FlagForceVectorOutput ) = 1 << 5,
5124 HideCoverageLayer SIP_MONKEYPATCH_COMPAT_NAME( FlagHideCoverageLayer ) = 1 << 6,
5125 DrawSelection SIP_MONKEYPATCH_COMPAT_NAME( FlagDrawSelection ) = 1 << 7,
5126 DisableTiledRasterLayerRenders SIP_MONKEYPATCH_COMPAT_NAME( FlagDisableTiledRasterLayerRenders ) = 1 << 8,
5127 RenderLabelsByMapLayer SIP_MONKEYPATCH_COMPAT_NAME( FlagRenderLabelsByMapLayer ) = 1 << 9,
5128 LosslessImageRendering SIP_MONKEYPATCH_COMPAT_NAME( FlagLosslessImageRendering ) = 1 << 10,
5129 SynchronousLegendGraphics SIP_MONKEYPATCH_COMPAT_NAME( FlagSynchronousLegendGraphics ) = 1 << 11,
5130 AlwaysUseGlobalMasks SIP_MONKEYPATCH_COMPAT_NAME( FlagAlwaysUseGlobalMasks ) = 1 << 12,
5131 LimitCoverageLayerRenderToCurrentFeature = 1 << 13,
5132 };
5133 Q_ENUM( LayoutRenderFlag )
5134
5135
5143 Q_FLAG( LayoutRenderFlags )
5144
5153 {
5154 SVG SIP_MONKEYPATCH_COMPAT_NAME( FormatSVG ) = 0,
5155 Raster SIP_MONKEYPATCH_COMPAT_NAME( FormatRaster ),
5156 Unknown SIP_MONKEYPATCH_COMPAT_NAME( FormatUnknown ),
5157 };
5158 Q_ENUM( PictureFormat )
5159
5160
5165 enum class ScaleCalculationMethod : int
5166 {
5167 HorizontalTop = 0,
5168 HorizontalMiddle,
5169 HorizontalBottom,
5170 HorizontalAverage,
5171 AtEquator,
5172 };
5173 Q_ENUM( ScaleCalculationMethod )
5174
5175
5183 {
5184 Left SIP_MONKEYPATCH_COMPAT_NAME( AlignLeft ) = 0,
5185 Middle SIP_MONKEYPATCH_COMPAT_NAME( AlignMiddle ),
5186 Right SIP_MONKEYPATCH_COMPAT_NAME( AlignRight ),
5187 };
5188 Q_ENUM( ScaleBarAlignment )
5189
5190
5198 {
5199 Fixed SIP_MONKEYPATCH_COMPAT_NAME( SegmentSizeFixed ) = 0,
5200 FitWidth SIP_MONKEYPATCH_COMPAT_NAME( SegmentSizeFitWidth ) = 1
5201 };
5202 Q_ENUM( ScaleBarSegmentSizeMode )
5203
5204
5212 {
5213 AboveSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelAboveSegment ) = 0,
5214 BelowSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelBelowSegment ),
5215 };
5216 Q_ENUM( ScaleBarDistanceLabelVerticalPlacement )
5217
5218
5226 {
5227 CenteredEdge SIP_MONKEYPATCH_COMPAT_NAME( LabelCenteredEdge ) = 0,
5228 CenteredSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelCenteredSegment ),
5229 };
5230 Q_ENUM( ScaleBarDistanceLabelHorizontalPlacement )
5231
5232
5237 enum class InputControllerType : int
5238 {
5239 Map2D,
5240 Map3D
5241 };
5243
5250 {
5251 NotSet,
5252 Unknown,
5253 OrdinaryTable,
5254 Index,
5255 Sequence,
5256 View,
5257 MaterializedView,
5258 CompositeType,
5259 ToastTable,
5260 ForeignTable,
5261 PartitionedTable,
5262 };
5263 Q_ENUM( PostgresRelKind )
5264
5265
5271 {
5272 SetFieldComment = 1 << 0,
5273 SetFieldAlias = 1 << 1,
5274 SetTableComment = 1 << 2,
5275 };
5276 Q_ENUM( DatabaseProviderConnectionCapability2 )
5279
5286 {
5287 SetGeometryColumnName = 1 << 0,
5288 SetPrimaryKeyName = 1 << 1,
5289 };
5290 Q_ENUM( DatabaseProviderTableImportCapability )
5293
5300 {
5301 SaveToDatabase = 1 << 1,
5302 LoadFromDatabase = 1 << 2,
5303 DeleteFromDatabase = 1 << 3
5304 };
5308
5309
5315 {
5316 LastProfile,
5317 DefaultProfile,
5318 AskUser,
5319 };
5320 Q_ENUM( UserProfileSelectionPolicy )
5321
5322
5330 {
5331 Container SIP_MONKEYPATCH_COMPAT_NAME( AeTypeContainer ),
5332 Field SIP_MONKEYPATCH_COMPAT_NAME( AeTypeField ),
5333 Relation SIP_MONKEYPATCH_COMPAT_NAME( AeTypeRelation ),
5334 QmlElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeQmlElement ),
5335 HtmlElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeHtmlElement ),
5336 Action SIP_MONKEYPATCH_COMPAT_NAME( AeTypeAction ),
5337 TextElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeTextElement ),
5338 SpacerElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeSpacerElement ),
5339 Invalid SIP_MONKEYPATCH_COMPAT_NAME( AeTypeInvalid ),
5340 };
5341 Q_ENUM( AttributeEditorType )
5342
5343
5349 {
5350 GroupBox,
5351 Tab,
5352 Row,
5353 };
5354 Q_ENUM( AttributeEditorContainerType )
5355
5356
5364 {
5365 AutoGenerated SIP_MONKEYPATCH_COMPAT_NAME( GeneratedLayout ) = 0,
5366 DragAndDrop SIP_MONKEYPATCH_COMPAT_NAME( TabLayout ) = 1,
5367 UiFile SIP_MONKEYPATCH_COMPAT_NAME( UiFileLayout ) = 2
5368 };
5369 Q_ENUM( AttributeFormLayout )
5370
5371
5379 {
5380 Default SIP_MONKEYPATCH_COMPAT_NAME( SuppressDefault ) = 0,
5381 On SIP_MONKEYPATCH_COMPAT_NAME( SuppressOn ) = 1,
5382 Off SIP_MONKEYPATCH_COMPAT_NAME( SuppressOff ) = 2
5383 };
5384 Q_ENUM( AttributeFormSuppression )
5385
5386
5394 {
5395 NoSource SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceNone ) = 0,
5396 File SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceFile ) = 1,
5397 Dialog SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceDialog ) = 2,
5398 Environment SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceEnvironment ) = 3
5399 };
5400 Q_ENUM( AttributeFormPythonInitCodeSource )
5401
5402
5408 {
5409 Qgis,
5410 PointCloud,
5411 RasterCalculator,
5412 };
5413 Q_ENUM( ExpressionType )
5414
5415
5423 {
5424 NoSymbology = 0,
5425 PerFeature SIP_MONKEYPATCH_COMPAT_NAME( FeatureSymbology ),
5426 PerSymbolLayer SIP_MONKEYPATCH_COMPAT_NAME( SymbolLayerSymbology )
5427 };
5428 Q_ENUM( FeatureSymbologyExport )
5429
5430
5435 enum class VectorTileProviderFlag : int SIP_ENUM_BASETYPE( IntFlag )
5436 {
5437 AlwaysUseTileMatrixSetFromProvider = 1 << 1,
5438 };
5439 Q_ENUM( VectorTileProviderFlag )
5440
5441
5447 Q_FLAG( VectorTileProviderFlags )
5448
5454 {
5455 ReadLayerMetadata = 1 << 1,
5456 };
5457 Q_ENUM( VectorTileProviderCapability )
5458
5459
5466
5473 {
5474 Available,
5475 NotAvailable,
5476 AvailableNoChildren,
5477 UseLowerZoomLevelTile,
5478 };
5479 Q_ENUM( TileAvailability )
5480
5481
5487 {
5488 ReadLayerMetadata = 1 << 1,
5489 };
5490 Q_ENUM( TiledSceneProviderCapability )
5491
5492
5499
5506 {
5507 Region,
5508 OrientedBox,
5509 Sphere,
5510 };
5511 Q_ENUM( TiledSceneBoundingVolumeType )
5512
5513
5522 {
5523 Replacement,
5524 Additive,
5525 };
5526 Q_ENUM( TileRefinementProcess )
5527
5528
5534 {
5535 NoChildren,
5536 Available,
5537 NeedFetching,
5538 };
5539 Q_ENUM( TileChildrenAvailability )
5540
5541
5546 enum class TiledSceneRequestFlag : int SIP_ENUM_BASETYPE( IntFlag )
5547 {
5548 NoHierarchyFetch = 1 << 0,
5549 };
5550 Q_ENUM( TiledSceneRequestFlag )
5551
5552
5558 Q_FLAG( TiledSceneRequestFlags )
5559
5565 enum class TiledSceneRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
5566 {
5567 RequiresTextures = 1 << 0,
5568 ForceRasterRender = 1 << 1,
5569 RendersTriangles = 1 << 2,
5570 RendersLines = 1 << 3,
5571 };
5572 Q_ENUM( TiledSceneRendererFlag )
5573
5574
5580 Q_FLAG( TiledSceneRendererFlags )
5581
5587 enum class GdalResampleAlgorithm : int
5588 {
5589 RA_NearestNeighbour = 0,
5590 RA_Bilinear = 1,
5591 RA_Cubic = 2,
5592 RA_CubicSpline = 3,
5593 RA_Lanczos = 4,
5594 RA_Average = 5,
5595 RA_Mode = 6,
5596 RA_Max = 8,
5597 RA_Min = 9,
5598 RA_Median = 10,
5599 RA_Q1 = 11,
5600 RA_Q3 = 12,
5601 };
5602 Q_ENUM( GdalResampleAlgorithm )
5603
5604
5609 enum class VsiHandlerType : int
5610 {
5611 Invalid,
5612 Archive,
5613 Network,
5614 Cloud,
5615 Memory,
5616 Other,
5617 };
5618 Q_ENUM( VsiHandlerType )
5619
5620 // TODO QGIS 4: make All include all values (we can't do this before 4.0, as we need to keep
5621 // compatibility with code which expects all these statistics to give numeric results)
5622
5623
5628 enum class ZonalStatistic : int SIP_ENUM_BASETYPE( IntFlag )
5629 {
5630 Count = 1 << 0,
5631 Sum = 1 << 1,
5632 Mean = 1 << 2,
5633 Median = 1 << 3,
5634 StDev = 1 << 4,
5635 Min = 1 << 5,
5636 Max = 1 << 6,
5637 Range = 1 << 7,
5638 Minority = 1 << 8,
5639 Majority = 1 << 9,
5640 Variety = 1 << 10,
5641 Variance = 1 << 11,
5642 MinimumPoint = 1 << 12,
5643 MaximumPoint = 1 << 13,
5644 All = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
5645 AllNumeric = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
5646 Default = Count | Sum | Mean,
5647 };
5648 Q_ENUM( ZonalStatistic )
5649
5650
5656 Q_FLAG( ZonalStatistics )
5657
5663 enum class ZonalStatisticResult : int
5664 {
5665 Success = 0,
5666 LayerTypeWrong = 1,
5667 LayerInvalid,
5668 RasterInvalid,
5669 RasterBandInvalid,
5670 FailedToCreateField = 8,
5671 Canceled = 9
5672 };
5673 Q_ENUM( ZonalStatisticResult )
5674
5675
5682 {
5683 Count,
5684 CountDistinct,
5685 CountMissing,
5686 Min,
5687 Max,
5688 Sum,
5689 Mean,
5690 Median,
5691 StDev,
5692 StDevSample,
5693 Range,
5694 Minority,
5695 Majority,
5696 FirstQuartile,
5697 ThirdQuartile,
5698 InterQuartileRange,
5699 StringMinimumLength,
5700 StringMaximumLength,
5701 StringConcatenate,
5702 GeometryCollect,
5703 ArrayAggregate,
5704 StringConcatenateUnique
5705 };
5706 Q_ENUM( Aggregate )
5707
5708
5714 {
5715 Count = 1 << 0,
5716 CountMissing = 1 << 15,
5717 Sum = 1 << 1,
5718 Mean = 1 << 2,
5719 Median = 1 << 3,
5720 StDev = 1 << 4,
5721 StDevSample = 1 << 5,
5722 Min = 1 << 6,
5723 Max = 1 << 7,
5724 Range = 1 << 8,
5725 Minority = 1 << 9,
5726 Majority = 1 << 10,
5727 Variety = 1 << 11,
5728 FirstQuartile = 1 << 12,
5729 ThirdQuartile = 1 << 13,
5730 InterQuartileRange = 1 << 14,
5731 First = 1 << 16,
5732 Last = 1 << 17,
5733 All = Count | CountMissing | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | FirstQuartile | ThirdQuartile | InterQuartileRange | First | Last
5734 };
5735 Q_ENUM( Statistic )
5736
5737
5743 Q_FLAG( Statistics )
5744
5751 {
5752 Count = 1,
5753 CountDistinct = 2,
5754 CountMissing = 4,
5755 Min = 8,
5756 Max = 16,
5757 Range = 32,
5758 All = Count | CountDistinct | CountMissing | Min | Max | Range,
5759 };
5760 Q_ENUM( DateTimeStatistic )
5761
5762
5768 Q_FLAG( DateTimeStatistics )
5769
5776 {
5777 Count = 1,
5778 CountDistinct = 2,
5779 CountMissing = 4,
5780 Min = 8,
5781 Max = 16,
5782 MinimumLength = 32,
5783 MaximumLength = 64,
5784 MeanLength = 128,
5785 Minority = 256,
5786 Majority = 512,
5787 All = Count | CountDistinct | CountMissing | Min | Max | MinimumLength | MaximumLength | MeanLength | Minority | Majority,
5788 };
5789 Q_ENUM( StringStatistic )
5790
5791
5797 Q_FLAG( StringStatistics )
5798
5805 {
5806 NoStatistic = 0,
5807 Min = 1,
5808 Max = 1 << 1,
5809 Range = 1 << 2,
5810 Sum = 1 << 3,
5811 Mean = 1 << 4,
5812 StdDev = 1 << 5,
5813 SumOfSquares = 1 << 6,
5814 All = Min | Max | Range | Sum | Mean | StdDev | SumOfSquares
5815 };
5816 Q_ENUM( RasterBandStatistic )
5817
5818
5824 Q_FLAG( RasterBandStatistics )
5825
5831 enum class SensorThingsEntity : int
5832 {
5833 Invalid,
5834 Thing,
5835 Location,
5836 HistoricalLocation,
5837 Datastream,
5838 Sensor,
5839 ObservedProperty,
5840 Observation,
5841 FeatureOfInterest,
5842 MultiDatastream,
5843 };
5844 Q_ENUM( SensorThingsEntity )
5845
5846
5851 enum class ColorModel : int
5852 {
5853 Rgb,
5854 Cmyk,
5855 };
5856 Q_ENUM( ColorModel )
5857
5858
5863 enum class DocumentationApi : int
5864 {
5865 PyQgis,
5866 PyQgisSearch,
5867 CppQgis,
5868 Qt,
5869 };
5870 Q_ENUM( DocumentationApi )
5871
5872
5877 enum class DocumentationBrowser : int
5878 {
5879 DeveloperToolsPanel,
5880 SystemWebBrowser,
5881 };
5882 Q_ENUM( DocumentationBrowser )
5883
5884
5889 enum class MouseHandlesAction : int
5890 {
5891 MoveItem,
5892 ResizeUp,
5893 ResizeDown,
5894 ResizeLeft,
5895 ResizeRight,
5896 ResizeLeftUp,
5897 ResizeRightUp,
5898 ResizeLeftDown,
5899 ResizeRightDown,
5900 RotateTopLeft,
5901 RotateTopRight,
5902 RotateBottomLeft,
5903 RotateBottomRight,
5904 SelectItem,
5905 NoAction
5906 };
5907 Q_ENUM( MouseHandlesAction )
5908
5909
5913 enum class MeshRangeLimit : int
5914 {
5915 NotSet,
5916 MinimumMaximum,
5917 };
5918 Q_ENUM( MeshRangeLimit )
5919
5920
5925 enum class MeshRangeExtent : int
5926 {
5927 WholeMesh,
5928 FixedCanvas,
5929 UpdatedCanvas,
5930 };
5931 Q_ENUM( MeshRangeExtent )
5932
5933
5939 enum class PointCloudAccessType : int
5940 {
5941 Local,
5942 Remote
5943 };
5944 Q_ENUM( PointCloudAccessType )
5945
5946
5951 {
5952 RenderExtents,
5953 RenderOverview,
5954 RenderOverviewAndExtents
5955 };
5956 Q_ENUM( PointCloudZoomOutRenderBehavior )
5957
5958
5963 {
5964 Standard = 0,
5965 Adaptive,
5966 AreaError,
5967 ConstantDensity
5968 };
5969 Q_ENUM( SegmentCalculationMethod )
5970
5971
5975 enum class StacObjectType : int
5976 {
5977 Unknown,
5978 Catalog,
5979 Collection,
5980 Item,
5981 };
5982 Q_ENUM( StacObjectType )
5983
5984
5987 static const double DEFAULT_SEARCH_RADIUS_MM;
5988
5990 static const float DEFAULT_MAPTOPIXEL_THRESHOLD;
5991
5997 static const QColor DEFAULT_HIGHLIGHT_COLOR;
5998
6002 static const double DEFAULT_HIGHLIGHT_BUFFER_MM;
6003
6007 static const double DEFAULT_HIGHLIGHT_MIN_WIDTH_MM;
6008
6016 Q_DECL_DEPRECATED static const double SCALE_PRECISION;
6017
6022 static const double DEFAULT_Z_COORDINATE;
6023
6029 static const double DEFAULT_M_COORDINATE;
6030
6035 static const double UI_SCALE_FACTOR;
6036
6040 static const double DEFAULT_SNAP_TOLERANCE;
6041
6045 static const Qgis::MapToolUnit DEFAULT_SNAP_UNITS;
6046
6050 static const int USER_CRS_START_ID;
6051
6053 static const double DEFAULT_POINT_SIZE;
6054
6056 static const double DEFAULT_LINE_WIDTH;
6057
6059 static const double DEFAULT_SEGMENT_EPSILON;
6060
6062 SIP_SKIP static const int PREVIEW_JOB_DELAY_MS;
6063
6065 SIP_SKIP static const int MAXIMUM_LAYER_PREVIEW_TIME_MS;
6066
6072 static QString defaultProjectScales();
6073
6079 static int geosVersionInt();
6080
6086 static int geosVersionMajor();
6087
6093 static int geosVersionMinor();
6094
6100 static int geosVersionPatch();
6101
6107 static QString geosVersion();
6108
6114 static QString geoNone()
6115 {
6116 return QStringLiteral( "NONE" );
6117 }
6118
6124 static QString geographicCrsAuthId()
6125 {
6126 return QStringLiteral( "EPSG:4326" );
6127 }
6128
6133 Q_DECL_DEPRECATED static QString geoWkt()
6134 {
6135 return QStringLiteral(
6136 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]] )"""
6137 );
6138 }
6139
6144 Q_DECL_DEPRECATED static QString geoProj4()
6145 {
6146 return QStringLiteral( "+proj=longlat +datum=WGS84 +no_defs" );
6147 }
6148
6149};
6150
6153
6239
6240// hack to workaround warnings when casting void pointers
6241// retrieved from QLibrary::resolve to function pointers.
6242// It's assumed that this works on all systems supporting
6243// QLibrary
6244#define cast_to_fptr(f) f
6245
6246
6254// based on Boojum's code from http://stackoverflow.com/questions/3556687/prevent-firing-signals-in-qt
6255template<class Object> class QgsSignalBlocker SIP_SKIP SIP_SKIP // clazy:exclude=rule-of-three
6256{
6257 public:
6258
6263 explicit QgsSignalBlocker( Object *object )
6264 : mObject( object )
6265 , mPreviousState( object->blockSignals( true ) )
6266 {}
6267
6269 {
6270 mObject->blockSignals( mPreviousState );
6271 }
6272
6274 Object *operator->() { return mObject; }
6275
6276 private:
6277
6278 Object *mObject = nullptr;
6279 bool mPreviousState;
6280
6281};
6282
6295// based on Boojum's code from http://stackoverflow.com/questions/3556687/prevent-firing-signals-in-qt
6296template<class Object> inline QgsSignalBlocker<Object> whileBlocking( Object *object ) SIP_SKIP SIP_SKIP
6297{
6298 return QgsSignalBlocker<Object>( object );
6299}
6300
6302CORE_EXPORT uint qHash( const QVariant &variant );
6303
6309inline QString qgsDoubleToString( double a, int precision = 17 )
6310{
6311 QString str;
6312 if ( precision )
6313 {
6314 if ( precision < 0 )
6315 {
6316 const double roundFactor = std::pow( 10, -precision );
6317 str = QString::number( static_cast< long long >( std::round( a / roundFactor ) * roundFactor ) );
6318 }
6319 else
6320 {
6321 str = QString::number( a, 'f', precision );
6322 if ( str.contains( QLatin1Char( '.' ) ) )
6323 {
6324 // remove ending 0s
6325 int idx = str.length() - 1;
6326 while ( str.at( idx ) == '0' && idx > 1 )
6327 {
6328 idx--;
6329 }
6330 if ( idx < str.length() - 1 )
6331 str.truncate( str.at( idx ) == '.' ? idx : idx + 1 );
6332 }
6333 }
6334 }
6335 else
6336 {
6337 str = QString::number( a, 'f', precision );
6338 }
6339 // avoid printing -0
6340 // see https://bugreports.qt.io/browse/QTBUG-71439
6341 if ( str == QLatin1String( "-0" ) )
6342 {
6343 return QLatin1String( "0" );
6344 }
6345 return str;
6346}
6347
6354inline bool qgsNanCompatibleEquals( double a, double b )
6355{
6356 const bool aIsNan = std::isnan( a );
6357 const bool bIsNan = std::isnan( b );
6358 if ( aIsNan || bIsNan )
6359 return aIsNan && bIsNan;
6360
6361 return a == b;
6362}
6363
6364#ifndef SIP_RUN
6365
6373template<typename T>
6374inline bool qgsNumberNear( T a, T b, T epsilon = std::numeric_limits<T>::epsilon() * 4 )
6375{
6376 const bool aIsNan = std::isnan( a );
6377 const bool bIsNan = std::isnan( b );
6378 if ( aIsNan || bIsNan )
6379 return aIsNan && bIsNan;
6380
6381 const T diff = a - b;
6382 return diff >= -epsilon && diff <= epsilon;
6383}
6384#endif
6385
6392inline bool qgsDoubleNear( double a, double b, double epsilon = 4 * std::numeric_limits<double>::epsilon() )
6393{
6394 return qgsNumberNear<double>( a, b, epsilon );
6395}
6396
6403inline bool qgsFloatNear( float a, float b, float epsilon = 4 * FLT_EPSILON )
6404{
6405 return qgsNumberNear<float>( a, b, epsilon );
6406}
6407
6409inline bool qgsDoubleNearSig( double a, double b, int significantDigits = 10 )
6410{
6411 const bool aIsNan = std::isnan( a );
6412 const bool bIsNan = std::isnan( b );
6413 if ( aIsNan || bIsNan )
6414 return aIsNan && bIsNan;
6415
6416 // The most simple would be to print numbers as %.xe and compare as strings
6417 // but that is probably too costly
6418 // Then the fastest would be to set some bits directly, but little/big endian
6419 // has to be considered (maybe TODO)
6420 // Is there a better way?
6421 int aexp, bexp;
6422 const double ar = std::frexp( a, &aexp );
6423 const double br = std::frexp( b, &bexp );
6424
6425 return aexp == bexp &&
6426 std::round( ar * std::pow( 10.0, significantDigits ) ) == std::round( br * std::pow( 10.0, significantDigits ) );
6427}
6428
6433inline double qgsRound( double number, int places )
6434{
6435 const double m = ( number < 0.0 ) ? -1.0 : 1.0;
6436 const double scaleFactor = std::pow( 10.0, places );
6437 return ( std::round( number * m * scaleFactor ) / scaleFactor ) * m;
6438}
6439
6440#ifndef SIP_RUN
6441
6448template<class Key, class Value>
6449QString qgsMapJoinKeys( const QMap<Key, Value> &map, const QString &separator )
6450{
6451 QString result;
6452 for ( auto it = map.constBegin(); it != map.constEnd(); it++ )
6453 result += QString( "%1%2" ).arg( it.key() ).arg( separator );
6454
6455 result.chop( separator.size() );
6456 return result;
6457}
6458
6465template<class Key, class Value>
6466QString qgsMapJoinValues( const QMap<Key, Value> &map, const QString &separator )
6467{
6468 QString result;
6469 for ( auto it = map.constBegin(); it != map.constEnd(); it++ )
6470 result += QString( "%1%2" ).arg( it.value() ).arg( separator );
6471
6472 result.chop( separator.size() );
6473 return result;
6474}
6475
6482template<class T>
6483QString qgsSetJoin( const QSet<T> &set, const QString &separator )
6484{
6485 QString result;
6486 for ( auto it = set.constBegin(); it != set.constEnd(); it++ )
6487 result += QString( "%1%2" ).arg( *it ).arg( separator );
6488
6489 result.chop( separator.size() );
6490 return result;
6491}
6492
6494
6504namespace qgis
6505{
6506
6519 template<typename To, typename From> inline To down_cast( From *f )
6520 {
6521 static_assert(
6522 ( std::is_base_of<From,
6523 typename std::remove_pointer<To>::type>::value ),
6524 "target type not derived from source type" );
6525 Q_ASSERT( f == nullptr || dynamic_cast<To>( f ) != nullptr );
6526 return static_cast<To>( f );
6527 }
6528
6529 template<class T>
6530 QSet<T> listToSet( const QList<T> &list )
6531 {
6532 return QSet<T>( list.begin(), list.end() );
6533 }
6534
6535 template<class T>
6536 QList<T> setToList( const QSet<T> &set )
6537 {
6538 return QList<T>( set.begin(), set.end() );
6539 }
6540}
6541
6543#endif
6544
6549template<class T> const QList<T> qgsEnumList() SIP_SKIP
6550{
6551 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6552 Q_ASSERT( metaEnum.isValid() );
6553 QList<T> enumList;
6554 for ( int idx = 0; idx < metaEnum.keyCount(); ++idx )
6555 {
6556 enumList.append( static_cast<T>( metaEnum.value( idx ) ) );
6557 }
6558 return enumList;
6559}
6560
6566template<class T> const QMap<T, QString> qgsEnumMap() SIP_SKIP
6567{
6568 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6569 Q_ASSERT( metaEnum.isValid() );
6570 QMap<T, QString> enumMap;
6571 for ( int idx = 0; idx < metaEnum.keyCount(); ++idx )
6572 {
6573 enumMap.insert( static_cast<T>( metaEnum.value( idx ) ), QString( metaEnum.key( idx ) ) );
6574 }
6575 return enumMap;
6576}
6577
6583template<class T> QString qgsEnumValueToKey( const T &value, bool *returnOk = nullptr ) SIP_SKIP
6584{
6585 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6586 Q_ASSERT( metaEnum.isValid() );
6587 const char *key = metaEnum.valueToKey( static_cast<int>( value ) );
6588 if ( returnOk )
6589 {
6590 *returnOk = key ? true : false;
6591 }
6592 return QString::fromUtf8( key );
6593}
6594
6602template<class T> T qgsEnumKeyToValue( const QString &key, const T &defaultValue, bool tryValueAsKey = true, bool *returnOk = nullptr ) SIP_SKIP
6603{
6604 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6605 Q_ASSERT( metaEnum.isValid() );
6606 bool ok = false;
6607 T v = static_cast<T>( metaEnum.keyToValue( key.toUtf8().data(), &ok ) );
6608 if ( returnOk )
6609 {
6610 *returnOk = ok;
6611 }
6612 if ( ok )
6613 {
6614 return v;
6615 }
6616 else
6617 {
6618 // if conversion has failed, try with conversion from int value
6619 if ( tryValueAsKey )
6620 {
6621 bool canConvert = false;
6622 const int intValue = key.toInt( &canConvert );
6623 if ( canConvert && metaEnum.valueToKey( intValue ) )
6624 {
6625 if ( returnOk )
6626 {
6627 *returnOk = true;
6628 }
6629 return static_cast<T>( intValue );
6630 }
6631 }
6632 }
6633 return defaultValue;
6634}
6635
6641template<class T> QString qgsFlagValueToKeys( const T &value, bool *returnOk = nullptr ) SIP_SKIP
6642{
6643 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6644 Q_ASSERT( metaEnum.isValid() );
6645 int intValue = static_cast<int>( value );
6646 const QByteArray ba = metaEnum.valueToKeys( intValue );
6647 // check that the int value does correspond to a flag
6648 // see https://stackoverflow.com/a/68495949/1548052
6649 const int intValueCheck = metaEnum.keysToValue( ba );
6650 bool ok = intValue == intValueCheck;
6651 if ( returnOk )
6652 *returnOk = ok;
6653 return ok ? QString::fromUtf8( ba ) : QString();
6654}
6655
6663template<class T> T qgsFlagKeysToValue( const QString &keys, const T &defaultValue, bool tryValueAsKey = true, bool *returnOk = nullptr ) SIP_SKIP
6664{
6665 if ( keys.isEmpty() )
6666 {
6667 if ( returnOk )
6668 {
6669 *returnOk = false;
6670 }
6671 return defaultValue;
6672 }
6673 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
6674 Q_ASSERT( metaEnum.isValid() );
6675 bool ok = false;
6676 T v = static_cast<T>( metaEnum.keysToValue( keys.toUtf8().constData(), &ok ) );
6677 if ( returnOk )
6678 {
6679 *returnOk = ok;
6680 }
6681 if ( ok )
6682 {
6683 return v;
6684 }
6685 else
6686 {
6687 // if conversion has failed, try with conversion from int value
6688 if ( tryValueAsKey )
6689 {
6690 bool canConvert = false;
6691 const int intValue = keys.toInt( &canConvert );
6692 if ( canConvert )
6693 {
6694 const QByteArray keyArray = metaEnum.valueToKeys( intValue );
6695 const int intValueCheck = metaEnum.keysToValue( keyArray );
6696 if ( !keyArray.isEmpty() && intValue == intValueCheck )
6697 {
6698 if ( returnOk )
6699 {
6700 *returnOk = true;
6701 }
6702 return T( intValue );
6703 }
6704 }
6705 }
6706 }
6707 return defaultValue;
6708}
6709
6710
6719CORE_EXPORT double qgsPermissiveToDouble( QString string, bool &ok );
6720
6729CORE_EXPORT int qgsPermissiveToInt( QString string, bool &ok );
6730
6740CORE_EXPORT qlonglong qgsPermissiveToLongLong( QString string, bool &ok );
6741
6757CORE_EXPORT int qgsVariantCompare( const QVariant &lhs, const QVariant &rhs );
6758
6769CORE_EXPORT bool qgsVariantLessThan( const QVariant &lhs, const QVariant &rhs );
6770
6779CORE_EXPORT bool qgsVariantEqual( const QVariant &lhs, const QVariant &rhs );
6780
6789CORE_EXPORT bool qgsVariantGreaterThan( const QVariant &lhs, const QVariant &rhs );
6790
6791#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
6792
6799inline bool operator> ( const QVariant &v1, const QVariant &v2 )
6800{
6801 return qgsVariantGreaterThan( v1, v2 );
6802}
6803
6813inline bool operator< ( const QVariant &v1, const QVariant &v2 )
6814{
6815 return qgsVariantLessThan( v1, v2 );
6816}
6817#endif
6818
6819
6820#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
6821
6825template<> CORE_EXPORT bool qMapLessThanKey<QVariantList>( const QVariantList &key1, const QVariantList &key2 ) SIP_SKIP;
6826#endif
6827
6834Q_DECL_DEPRECATED CORE_EXPORT QString qgsVsiPrefix( const QString &path ) SIP_DEPRECATED;
6835
6841void CORE_EXPORT *qgsMalloc( size_t size ) SIP_SKIP;
6842
6847void CORE_EXPORT qgsFree( void *ptr ) SIP_SKIP;
6848
6849#ifndef SIP_RUN
6850
6852class ScopedIntIncrementor
6853{
6854 public:
6855
6856 ScopedIntIncrementor( int *variable )
6857 : mVariable( variable )
6858 {
6859 ( *mVariable )++;
6860 }
6861
6862 ScopedIntIncrementor( const ScopedIntIncrementor &other ) = delete;
6863 ScopedIntIncrementor &operator=( const ScopedIntIncrementor &other ) = delete;
6864
6865 void release()
6866 {
6867 if ( mVariable )
6868 ( *mVariable )--;
6869
6870 mVariable = nullptr;
6871 }
6872
6873 ~ScopedIntIncrementor()
6874 {
6875 release();
6876 }
6877
6878 private:
6879 int *mVariable = nullptr;
6880};
6882
6883#endif
6884
6890Q_DECL_DEPRECATED const long GEOSRID = 4326;
6891
6897Q_DECL_DEPRECATED const long GEOCRS_ID = 3452;
6898
6904Q_DECL_DEPRECATED const long GEO_EPSG_CRS_ID = 4326;
6905
6906typedef QMap<QString, QString> QgsStringMap SIP_SKIP;
6907
6916typedef unsigned long long qgssize;
6917
6918#ifndef SIP_RUN
6919#if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) || defined(__clang__)
6920
6921#define Q_NOWARN_DEPRECATED_PUSH \
6922 _Pragma("GCC diagnostic push") \
6923 _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"");
6924#define Q_NOWARN_DEPRECATED_POP \
6925 _Pragma("GCC diagnostic pop");
6926#define Q_NOWARN_UNREACHABLE_PUSH
6927#define Q_NOWARN_UNREACHABLE_POP
6928
6929#elif defined(_MSC_VER)
6930
6931#define Q_NOWARN_DEPRECATED_PUSH \
6932 __pragma(warning(push)) \
6933 __pragma(warning(disable:4996))
6934#define Q_NOWARN_DEPRECATED_POP \
6935 __pragma(warning(pop))
6936#define Q_NOWARN_UNREACHABLE_PUSH \
6937 __pragma(warning(push)) \
6938 __pragma(warning(disable:4702))
6939#define Q_NOWARN_UNREACHABLE_POP \
6940 __pragma(warning(pop))
6941
6942#else
6943
6944#define Q_NOWARN_DEPRECATED_PUSH
6945#define Q_NOWARN_DEPRECATED_POP
6946#define Q_NOWARN_UNREACHABLE_PUSH
6947#define Q_NOWARN_UNREACHABLE_POP
6948
6949#endif
6950#endif
6951
6952#ifndef QGISEXTERN
6953#ifdef Q_OS_WIN
6954# define QGISEXTERN extern "C" __declspec( dllexport )
6955#else
6956# if defined(__GNUC__) || defined(__clang__)
6957# define QGISEXTERN extern "C" __attribute__ ((visibility ("default")))
6958# else
6959# define QGISEXTERN extern "C"
6960# endif
6961#endif
6962#endif
6963#endif
6964
6965// see https://infektor.net/posts/2017-01-19-using-cpp17-attributes-today.html#using-the-nodiscard-attribute
6966#if __cplusplus >= 201703L
6967#define NODISCARD [[nodiscard]]
6968#elif defined(__clang__)
6969#define NODISCARD [[nodiscard]]
6970#elif defined(_MSC_VER)
6971#define NODISCARD // no support
6972#elif defined(__has_cpp_attribute)
6973#if __has_cpp_attribute(nodiscard)
6974#define NODISCARD [[nodiscard]]
6975#elif __has_cpp_attribute(gnu::warn_unused_result)
6976#define NODISCARD [[gnu::warn_unused_result]]
6977#else
6978#define NODISCARD Q_REQUIRED_RESULT
6979#endif
6980#else
6981#define NODISCARD Q_REQUIRED_RESULT
6982#endif
6983
6984#if __cplusplus >= 201703L
6985#define MAYBE_UNUSED [[maybe_unused]]
6986#elif defined(__clang__)
6987#define MAYBE_UNUSED [[maybe_unused]]
6988#elif defined(_MSC_VER)
6989#define MAYBE_UNUSED // no support
6990#elif defined(__has_cpp_attribute)
6991#if __has_cpp_attribute(gnu::unused)
6992#define MAYBE_UNUSED [[gnu::unused]]
6993#else
6994#define MAYBE_UNUSED
6995#endif
6996#else
6997#define MAYBE_UNUSED
6998#endif
6999
7000#ifndef FINAL
7001#define FINAL final
7002#endif
7003
7004#ifndef SIP_RUN
7005#ifdef _MSC_VER
7006#define BUILTIN_UNREACHABLE \
7007 __assume(false);
7008#elif defined(__GNUC__) && !defined(__clang__)
7009// Workaround a GCC bug where a -Wreturn-type warning is emitted in constructs
7010// like:
7011// switch( mVariableThatCanOnlyBeXorY )
7012// {
7013// case X:
7014// return "foo";
7015// case Y:
7016// return "foo";
7017// }
7018// See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87951
7019#define BUILTIN_UNREACHABLE \
7020 __builtin_unreachable();
7021#else
7022#define BUILTIN_UNREACHABLE
7023#endif
7024#endif // SIP_RUN
Provides global constants and enumerations for use throughout the application.
Definition qgis.h:54
DistanceUnitType
Types of distance units.
Definition qgis.h:4956
GnssConstellation
GNSS constellation.
Definition qgis.h:1867
SettingsOption
Settings options.
Definition qgis.h:688
ProfileGeneratorFlag
Flags that control the way the QgsAbstractProfileGenerator operate.
Definition qgis.h:4119
ProcessingSourceType
Processing data source types.
Definition qgis.h:3434
GpsQualityIndicator
GPS signal quality indicator.
Definition qgis.h:1885
DataItemProviderCapability
Capabilities for data item providers.
Definition qgis.h:940
ProcessingFileParameterBehavior
Flags which dictate the behavior of QgsProcessingParameterFile.
Definition qgis.h:3689
RasterizedRenderingPolicy
Policies controlling when rasterisation of content during renders is permitted.
Definition qgis.h:2653
QFlags< MapLayerRendererFlag > MapLayerRendererFlags
Flags which control how map layer renderers behave.
Definition qgis.h:2746
ProjectReadFlag
Flags which control project read behavior.
Definition qgis.h:4203
QFlags< DatabaseProviderTableImportCapability > DatabaseProviderTableImportCapabilities
Definition qgis.h:5291
QFlags< BabelCommandFlag > BabelCommandFlags
Babel command flags.
Definition qgis.h:1980
MapToolUnit
Type of unit of tolerance value from settings.
Definition qgis.h:4862
PlotAxisSuffixPlacement
Placement options for suffixes in the labels for axis of plots.
Definition qgis.h:3247
ProcessingModelChildAlgorithmExecutionStatus
Reflects the status of a child algorithm in a Processing model.
Definition qgis.h:3764
QFlags< GpsInformationComponent > GpsInformationComponents
GPS information component.
Definition qgis.h:1947
ScaleBarDistanceLabelHorizontalPlacement
Scale bar distance label horizontal placement.
Definition qgis.h:5226
PointCloudSymbol
Rendering symbols for point cloud points.
Definition qgis.h:4147
SymbolRotationMode
Modes for handling how symbol and text entity rotation is handled when maps are rotated.
Definition qgis.h:750
GeometryValidityFlag
Geometry validity check flags.
Definition qgis.h:2034
QFlags< RasterProviderCapability > RasterProviderCapabilities
Raster data provider capabilities.
Definition qgis.h:4787
ExpressionType
Expression types.
Definition qgis.h:5408
MapLayerActionFlag
Map layer action flags.
Definition qgis.h:4532
ScaleBarDistanceLabelVerticalPlacement
Scale bar distance label vertical placement.
Definition qgis.h:5212
MapLayerProperty
Generic map layer properties.
Definition qgis.h:2229
VectorProviderCapability
Vector data provider capabilities.
Definition qgis.h:463
BufferSide
Side of line to buffer.
Definition qgis.h:2059
RasterResamplingStage
Stage at which raster resampling occurs.
Definition qgis.h:1433
QFlags< MapLayerActionTarget > MapLayerActionTargets
Map layer action targets.
Definition qgis.h:4521
VectorTileProviderCapability
Enumeration with capabilities that vector tile data providers might implement.
Definition qgis.h:5454
AltitudeClamping
Altitude clamping.
Definition qgis.h:3883
VectorTileProviderFlag
Flags for vector tile data providers.
Definition qgis.h:5436
VectorTemporalMode
Vector layer temporal feature modes.
Definition qgis.h:2530
SublayerFlag
Flags which reflect the properties of sublayers in a dataset.
Definition qgis.h:1372
QFlags< ProjectCapability > ProjectCapabilities
Flags which control project capabilities.
Definition qgis.h:4244
LabelLinePlacementFlag
Line placement flags, which control how candidates are generated for a linear feature.
Definition qgis.h:1239
QFlags< UriCleaningFlag > UriCleaningFlags
Flags for cleaning layer URIs.
Definition qgis.h:1346
CoordinateDisplayType
Formats for displaying coordinates.
Definition qgis.h:4352
ProcessingParameterTypeFlag
Flags which dictate the behavior of Processing parameter types.
Definition qgis.h:3637
QFlags< VectorRenderingSimplificationFlag > VectorRenderingSimplificationFlags
Simplification flags for vector feature rendering.
Definition qgis.h:2973
DashPatternSizeAdjustment
Dash pattern size adjustment options.
Definition qgis.h:3220
GpsFixStatus
GPS fix status.
Definition qgis.h:1852
AnnotationItemNodeType
Annotation item node types.
Definition qgis.h:2457
static const char * QGIS_DEV_VERSION
The development version.
Definition qgis.h:82
VectorFileWriterCapability
Capabilities supported by a QgsVectorFileWriter object.
Definition qgis.h:1037
QFlags< MapSettingsFlag > MapSettingsFlags
Map settings flags.
Definition qgis.h:2688
CrsIdentifierType
Available identifier string types for representing coordinate reference systems.
Definition qgis.h:2367
QFlags< RasterRendererFlag > RasterRendererFlags
Flags which control behavior of raster renderers.
Definition qgis.h:1475
AngularDirection
Angular directions.
Definition qgis.h:3335
DriveType
Drive types.
Definition qgis.h:1090
UnitType
Unit types.
Definition qgis.h:4877
ContentStatus
Status for fetched or stored content.
Definition qgis.h:1808
QFlags< SelectionFlag > SelectionFlags
Flags which control feature selection behavior.
Definition qgis.h:1770
SnappingType
SnappingTypeFlag defines on what object the snapping is performed.
Definition qgis.h:713
LayoutUnit
Layout measurement units.
Definition qgis.h:5084
Q_ENUM(GpsFixStatus)
RelationshipStrength
Relationship strength.
Definition qgis.h:4305
Q_ENUM(GnssConstellation)
PaintEffectFlag
Flags which control how paint effects behave.
Definition qgis.h:2755
MarkerLinePlacement
Defines how/where the symbols should be placed on a line.
Definition qgis.h:3058
QFlags< ProjectReadFlag > ProjectReadFlags
Project load flags.
Definition qgis.h:4222
LegendComponent
Component of legends which can be styled.
Definition qgis.h:4456
Point3DShape
3D point shape types.
Definition qgis.h:4025
GeometryOperationResult
Success or failure of a geometry operation.
Definition qgis.h:2005
QFlags< StringStatistic > StringStatistics
Statistics to be calculated for string values.
Definition qgis.h:5796
BrowserItemState
Browser item states.
Definition qgis.h:902
AttributeEditorContainerType
Attribute editor container types.
Definition qgis.h:5349
QFlags< TiledSceneProviderCapability > TiledSceneProviderCapabilities
Tiled scene data provider capabilities.
Definition qgis.h:5497
FeatureRequestFilterType
Types of feature request filters.
Definition qgis.h:2172
MarkerClipMode
Marker clipping modes.
Definition qgis.h:3178
GpsNavigationStatus
GPS navigation status.
Definition qgis.h:1905
AnnotationItemFlag
Flags for annotation items.
Definition qgis.h:2414
RenderSubcomponentProperty
Rendering subcomponent properties.
Definition qgis.h:2982
ProcessingTinInputLayerType
Defines the type of input layer for a Processing TIN input.
Definition qgis.h:3779
QFlags< DataProviderFlag > DataProviderFlags
Data provider flags.
Definition qgis.h:2265
Statistic
Available generic statistics.
Definition qgis.h:5714
SymbolRenderHint
Flags controlling behavior of symbols during rendering.
Definition qgis.h:733
AngleUnit
Units of angles.
Definition qgis.h:5019
CaptureTechnique
Capture technique.
Definition qgis.h:376
SpatialIndexPresence
Enumeration of spatial index presence states.
Definition qgis.h:522
BrowserItemCapability
Browser item capabilities.
Definition qgis.h:915
AttributeFormSuppression
Available form types for layout of the attribute form editor.
Definition qgis.h:5379
QFlags< AuthConfigurationStorageCapability > AuthConfigurationStorageCapabilities
Authentication configuration storage capabilities.
Definition qgis.h:145
QFlags< LayerTreeFilterFlag > LayerTreeFilterFlags
Layer tree filter flags.
Definition qgis.h:4445
LayerTreeInsertionMethod
Layer tree insertion methods.
Definition qgis.h:4422
RasterProviderCapability
Raster data provider capabilities.
Definition qgis.h:4767
DatabaseProviderTableImportCapability
Represents capabilities of a database provider connection when importing table data.
Definition qgis.h:5286
LineClipMode
Line clipping modes.
Definition qgis.h:3192
VectorRenderingSimplificationFlag
Simplification flags for vector feature rendering.
Definition qgis.h:2958
QFlags< GeometryValidityFlag > GeometryValidityFlags
Geometry validity flags.
Definition qgis.h:2038
BrowserDirectoryMonitoring
Browser directory item monitoring switches.
Definition qgis.h:989
VsiHandlerType
GDAL VSI handler types.
Definition qgis.h:5610
SettingsTreeNodeType
Type of tree node.
Definition qgis.h:618
TilePixelRatio
DpiMode enum.
Definition qgis.h:3275
DatabaseProviderConnectionCapability2
The Capability enum represents the extended operations supported by the connection.
Definition qgis.h:5271
QFlags< PaintEffectFlag > PaintEffectFlags
Flags which control how paint effects behave.
Definition qgis.h:2765
LabelOffsetType
Behavior modifier for label offset and distance, only applies in some label placement modes.
Definition qgis.h:1205
QFlags< ProfileGeneratorFlag > ProfileGeneratorFlags
Definition qgis.h:4125
LabelPrioritization
Label prioritization.
Definition qgis.h:1144
GradientColorSource
Gradient color sources.
Definition qgis.h:3107
FileFilterType
Type of file filters.
Definition qgis.h:1318
LabelPlacement
Placement modes which determine how label candidates are generated for a feature.
Definition qgis.h:1158
RasterLayerType
Raster layer types.
Definition qgis.h:4644
QFlags< VectorLayerTypeFlag > VectorLayerTypeFlags
Vector layer type flags.
Definition qgis.h:395
ScaleBarAlignment
Scalebar alignment.
Definition qgis.h:5183
RasterPyramidFormat
Raster pyramid formats.
Definition qgis.h:4683
ProcessingMode
Types of modes which Processing widgets can be created for.
Definition qgis.h:3572
VectorExportResult
Vector layer export result codes.
Definition qgis.h:1016
DistanceUnit
Units of distance.
Definition qgis.h:4894
RasterTemporalCapabilityFlag
Flags for raster layer temporal capabilities.
Definition qgis.h:2602
SymbolLayerFlag
Flags controlling behavior of symbol layers.
Definition qgis.h:844
MeshRangeLimit
Describes the limits used to compute mesh ranges (min/max values).
Definition qgis.h:5914
GradientSpread
Gradient spread options, which control how gradients are rendered outside of their start and end poin...
Definition qgis.h:3151
QFlags< AnnotationItemGuiFlag > AnnotationItemGuiFlags
Annotation item GUI flags.
Definition qgis.h:2447
LabelPolygonPlacementFlag
Polygon placement flags, which control how candidates are generated for a polygon feature.
Definition qgis.h:1264
RasterRangeLimit
Describes the limits used to compute raster ranges (min/max values).
Definition qgis.h:1507
ScaleMethod
Scale methods.
Definition qgis.h:588
SldExportOption
SLD export options.
Definition qgis.h:660
VectorSimplificationAlgorithm
Simplification algorithms for vector features.
Definition qgis.h:2942
FilePathType
File path types.
Definition qgis.h:1639
CadConstraintType
Advanced digitizing constraint type.
Definition qgis.h:3975
AttributeFormPythonInitCodeSource
The Python init code source for attribute forms.
Definition qgis.h:5394
PointCountMethod
Methods which define the number of points randomly filling a polygon.
Definition qgis.h:3166
SldExportVendorExtension
SLD export vendor extensions, allow the use of vendor extensions when exporting to SLD.
Definition qgis.h:675
MapCanvasFlag
Flags controlling behavior of map canvases.
Definition qgis.h:3361
LayerTreeFilterFlag
Layer tree filter flags.
Definition qgis.h:4435
AttributeFormLayout
Available form types for layout of the attribute form editor.
Definition qgis.h:5364
FeatureRequestFlag
Flags for controlling feature requests.
Definition qgis.h:2144
VertexType
Types of vertex.
Definition qgis.h:2995
ShaderInterpolationMethod
Color ramp shader interpolation methods.
Definition qgis.h:1388
DataProviderFlag
Generic data provider flags.
Definition qgis.h:2258
Q_ENUM(GpsNavigationStatus)
GdalResampleAlgorithm
Resampling algorithm to be used (equivalent to GDAL's enum GDALResampleAlg)
Definition qgis.h:5588
RasterResamplingMethod
Resampling method for raster provider-level resampling.
Definition qgis.h:1447
GeometryValidationEngine
Available engines for validating geometries.
Definition qgis.h:2047
TransactionMode
Transaction mode.
Definition qgis.h:3870
Q_ENUM(ScaleToTileZoomLevelMethod)
QFlags< FeatureRendererFlag > FeatureRendererFlags
Flags controlling behavior of vector feature renderers.
Definition qgis.h:802
ElevationMapCombineMethod
Methods used to select the elevation when two elevation maps are combined.
Definition qgis.h:4796
RasterDrawingStyle
Raster drawing styles.
Definition qgis.h:4660
GeosCreationFlag
Flags which control geos geometry creation behavior.
Definition qgis.h:2097
MeshRangeExtent
Describes the extent used to compute mesh ranges (min/max values).
Definition qgis.h:5926
GpsInformationComponent
GPS information component.
Definition qgis.h:1919
ViewSyncModeFlag
Synchronization of 2D map canvas and 3D view.
Definition qgis.h:3380
ProcessingProviderFlag
Flags indicating how and when an processing provider operates and should be exposed to users.
Definition qgis.h:3460
FileOperationFlag
File operation flags.
Definition qgis.h:2214
QFlags< DataItemProviderCapability > DataItemProviderCapabilities
Capabilities for data item providers.
Definition qgis.h:956
ProjectCapability
Flags which control project capabilities.
Definition qgis.h:4234
QFlags< BabelFormatCapability > BabelFormatCapabilities
Babel GPS format capabilities.
Definition qgis.h:1965
QFlags< SymbolLayerFlag > SymbolLayerFlags
Symbol layer flags.
Definition qgis.h:851
QFlags< RasterInterfaceCapability > RasterInterfaceCapabilities
Raster interface capabilities.
Definition qgis.h:4754
Q_ENUM(VectorProfileType)
AttributeActionType
Attribute action types.
Definition qgis.h:4556
TemporalNavigationMode
Temporal navigation modes.
Definition qgis.h:2484
ProcessingFieldParameterDataType
Processing field parameter data types.
Definition qgis.h:3717
AreaUnit
Units of area.
Definition qgis.h:4971
StringStatistic
Available string statistics.
Definition qgis.h:5776
FieldDomainMergePolicy
Merge policy for field domains.
Definition qgis.h:3824
ZonalStatistic
Statistics to be calculated during a zonal statistics operation.
Definition qgis.h:5629
MessageLevel
Level for messages This will be used both for message log and message bar in application.
Definition qgis.h:154
SqlKeywordCategory
SqlKeywordCategory enum represents the categories of the SQL keywords used by the SQL query editor.
Definition qgis.h:1072
QFlags< SnappingType > SnappingTypes
Snapping types.
Definition qgis.h:724
static Q_DECL_DEPRECATED QString geoWkt()
WKT string that represents a geographic coord system.
Definition qgis.h:6133
GraduatedMethod
Methods for modifying symbols by range in a graduated symbol renderer.
Definition qgis.h:3235
QFlags< LabelLinePlacementFlag > LabelLinePlacementFlags
Line placement flags, which control how candidates are generated for a linear feature.
Definition qgis.h:1254
TiledSceneBoundingVolumeType
Tiled scene bounding volume types.
Definition qgis.h:5506
TextLayoutMode
Text layout modes.
Definition qgis.h:2851
PropertyType
Property types.
Definition qgis.h:646
QFlags< RenderContextFlag > RenderContextFlags
Render context flags.
Definition qgis.h:2724
LayerFilter
Filter for layers.
Definition qgis.h:188
Q_ENUM(ProviderStyleStorageCapability)
QFlags< SublayerFlag > SublayerFlags
Sublayer flags.
Definition qgis.h:1376
RasterRendererFlag
Flags which control behavior of raster renderers.
Definition qgis.h:1465
PythonEmbeddedMode
Authorisation to run Python Embedded in projects.
Definition qgis.h:403
CrsType
Coordinate reference system types.
Definition qgis.h:2277
QFlags< GeosCreationFlag > GeosCreationFlags
Geos geometry creation behavior flags.
Definition qgis.h:2108
SensorThingsEntity
OGC SensorThings API entity types.
Definition qgis.h:5832
MeshEditingErrorType
Type of error that can occur during mesh frame editing.
Definition qgis.h:1622
FieldDomainSplitPolicy
Split policy for field domains.
Definition qgis.h:3807
ArcGisRestServiceType
Available ArcGIS REST service types.
Definition qgis.h:4272
UriCleaningFlag
Flags for cleaning layer URIs.
Definition qgis.h:1335
RasterFileWriterResult
Raster file export results.
Definition qgis.h:1605
AnnotationItemEditOperationResult
Results from an edit operation on an annotation item.
Definition qgis.h:2469
ProcessingPropertyAvailability
Property availability, used for QgsProcessingAlgorithm::VectorProperties in order to determine if pro...
Definition qgis.h:3543
MapRecenteringMode
Modes for recentering map canvases.
Definition qgis.h:3393
RasterRangeAccuracy
Describes the accuracy used to compute raster ranges (min/max values).
Definition qgis.h:1538
ActionType
Action types.
Definition qgis.h:4491
ActionStart
Enum to determine when an operation would begin.
Definition qgis.h:1107
PlaybackOperation
Media playback operations.
Definition qgis.h:2513
QFlags< SymbolLayerUserFlag > SymbolLayerUserFlags
Symbol layer user flags.
Definition qgis.h:874
QFlags< TextRendererFlag > TextRendererFlags
Definition qgis.h:3314
QueryStorageBackend
Stored query storage backends.
Definition qgis.h:3420
ProviderStyleStorageCapability
The StorageCapability enum represents the style storage operations supported by the provider.
Definition qgis.h:5300
AvoidIntersectionsMode
Flags which control how intersections of pre-existing feature are handled when digitizing new feature...
Definition qgis.h:4174
MarkerShape
Marker shapes.
Definition qgis.h:3009
StacObjectType
Available types of stac objects.
Definition qgis.h:5976
LegendJsonRenderFlag
Legend JSON export flags.
Definition qgis.h:4476
BlendMode
Blending modes defining the available composition modes that can be used when painting.
Definition qgis.h:4811
RasterElevationMode
Raster layer elevation modes.
Definition qgis.h:3922
Capitalization
String capitalization options.
Definition qgis.h:3292
TemporalIntervalMatchMethod
Method to use when resolving a temporal range to a data provider layer or band.
Definition qgis.h:2587
PictureFormat
Picture formats.
Definition qgis.h:5153
QFlags< LabelPolygonPlacementFlag > LabelPolygonPlacementFlags
Polygon placement flags, which control how candidates are generated for a polygon feature.
Definition qgis.h:1276
LabelQuadrantPosition
Label quadrant positions.
Definition qgis.h:1219
QFlags< PlotToolFlag > PlotToolFlags
Definition qgis.h:4013
ScaleToTileZoomLevelMethod
Available methods for converting map scales to tile zoom levels.
Definition qgis.h:3323
SublayerQueryFlag
Flags which control how data providers will scan for sublayers in a dataset.
Definition qgis.h:1355
QFlags< VectorFileWriterCapability > VectorFileWriterCapabilities
Capabilities supported by a QgsVectorFileWriter object.
Definition qgis.h:1047
TextOrientation
Text orientations.
Definition qgis.h:2836
TemporalUnit
Temporal units.
Definition qgis.h:5040
QFlags< RasterRendererCapability > RasterRendererCapabilities
Raster renderer capabilities.
Definition qgis.h:1496
QFlags< SymbolPreviewFlag > SymbolPreviewFlags
Symbol preview flags.
Definition qgis.h:831
UnplacedLabelVisibility
Unplaced label visibility.
Definition qgis.h:1119
CrsDefinitionFormat
CRS definition formats.
Definition qgis.h:3792
SpatialFilterType
Feature request spatial filter types.
Definition qgis.h:2201
VerticalAnchorPoint
Marker symbol vertical anchor points.
Definition qgis.h:778
QFlags< LayoutRenderFlag > LayoutRenderFlags
Flags for controlling how a layout is rendered.
Definition qgis.h:5142
QFlags< ProcessingParameterTypeFlag > ProcessingParameterTypeFlags
Flags which dictate the behavior of Processing parameter types.
Definition qgis.h:3652
TileAvailability
Possible availability states for a tile within a tile matrix.
Definition qgis.h:5473
ProjectFlag
Flags which control the behavior of QgsProjects.
Definition qgis.h:3993
FeatureRendererFlag
Flags controlling behavior of vector feature renderers.
Definition qgis.h:792
static Q_DECL_DEPRECATED QString geoProj4()
PROJ4 string that represents a geographic coord system.
Definition qgis.h:6144
BrowserItemType
Browser item types.
Definition qgis.h:883
QFlags< FeatureRequestFlag > FeatureRequestFlags
Flags for controlling feature requests.
Definition qgis.h:2161
SettingsType
Types of settings entries.
Definition qgis.h:599
QFlags< SettingsOption > SettingsOptions
Definition qgis.h:693
RasterTemporalMode
Raster layer temporal modes.
Definition qgis.h:2571
RasterAttributeTableType
The RasterAttributeTableType enum represents the type of RAT.
Definition qgis.h:1579
LabelingFlag
Various flags that affect drawing and placement of labels.
Definition qgis.h:2791
GeometryType
The geometry types are used to group Qgis::WkbType in a coarse way.
Definition qgis.h:337
RelationshipType
Relationship types.
Definition qgis.h:4291
ScriptLanguageCapability
Script language capabilities.
Definition qgis.h:4401
RasterInterfaceCapability
Raster interface capabilities.
Definition qgis.h:4734
JoinStyle
Join styles for buffers.
Definition qgis.h:2084
PointCloudDrawOrder
Pointcloud rendering order for 2d views.
Definition qgis.h:4159
QFlags< RasterBandStatistic > RasterBandStatistics
Statistics to be calculated for raster bands.
Definition qgis.h:5823
ProcessingAlgorithmDocumentationFlag
Flags describing algorithm behavior for documentation purposes.
Definition qgis.h:3520
TextCharacterVerticalAlignment
Text vertical alignment for characters.
Definition qgis.h:2927
FieldDuplicatePolicy
Duplicate policy for fields.
Definition qgis.h:3844
UserProfileSelectionPolicy
User profile selection policy.
Definition qgis.h:5315
QFlags< FileOperationFlag > FileOperationFlags
File operation flags.
Definition qgis.h:2219
DpiMode
DpiMode enum.
Definition qgis.h:3261
Q_ENUM(ProfileExportType)
BrowserLayerType
Browser item layer types.
Definition qgis.h:965
QFlags< ProcessingAlgorithmFlag > ProcessingAlgorithmFlags
Flags indicating how and when an algorithm operates and should be exposed to users.
Definition qgis.h:3511
AltitudeBinding
Altitude binding.
Definition qgis.h:3896
QFlags< DataProviderReadFlag > DataProviderReadFlags
Flags which control data provider construction.
Definition qgis.h:450
Q_ENUM(ProcessingProviderFlag)
TiledSceneRendererFlag
Flags which control how tiled scene 2D renderers behave.
Definition qgis.h:5566
MapLayerActionTarget
Map layer action targets.
Definition qgis.h:4506
ShaderClassificationMethod
Color ramp shader classification methods.
Definition qgis.h:1403
ZonalStatisticResult
Zonal statistics result codes.
Definition qgis.h:5664
ScriptLanguage
Scripting languages.
Definition qgis.h:4378
QFlags< BrowserItemCapability > BrowserItemCapabilities
Browser item capabilities.
Definition qgis.h:929
FeatureAvailability
Possible return value for QgsFeatureSource::hasFeatures() to determine if a source is empty.
Definition qgis.h:541
TiledSceneProviderCapability
Tiled scene data provider capabilities.
Definition qgis.h:5487
LabelMultiLineAlignment
Text alignment for multi-line labels.
Definition qgis.h:1302
RasterBandStatistic
Available raster band statistics.
Definition qgis.h:5805
QFlags< VectorTileProviderCapability > VectorTileProviderCapabilities
Vector tile data provider capabilities.
Definition qgis.h:5464
AuthConfigurationStorageCapability
Authentication configuration storage capabilities.
Definition qgis.h:100
PythonEmbeddedType
Type of Python Embedded in projects.
Definition qgis.h:417
QFlags< ZonalStatistic > ZonalStatistics
Statistics to be calculated during a zonal statistics operation.
Definition qgis.h:5655
VectorDataProviderTemporalMode
Vector data provider temporal handling modes.
Definition qgis.h:2558
TextRenderFormat
Options for rendering text.
Definition qgis.h:2776
DocumentationBrowser
Documentation API browser.
Definition qgis.h:5878
DataType
Raster data types.
Definition qgis.h:351
Q_ENUM(ProfileSurfaceSymbology)
QFlags< ViewSyncModeFlag > ViewSyncModeFlags
Definition qgis.h:3385
QFlags< SublayerQueryFlag > SublayerQueryFlags
Sublayer query flags.
Definition qgis.h:1362
SystemOfMeasurement
Systems of unit measurement.
Definition qgis.h:4847
RasterAttributeTableFieldUsage
The RasterAttributeTableFieldUsage enum represents the usage of a Raster Attribute Table field.
Definition qgis.h:1550
VerticalAxisInversion
Vertical axis inversion options for 3D views.
Definition qgis.h:4081
QFlags< CoordinateTransformationFlag > CoordinateTransformationFlags
Coordinate transformation flags.
Definition qgis.h:2644
RelationshipCapability
Relationship capabilities.
Definition qgis.h:4331
RasterBuildPyramidOption
Raster pyramid building options.
Definition qgis.h:4698
QFlags< VectorProviderCapability > VectorProviderCapabilities
Vector data provider capabilities.
Definition qgis.h:500
NavigationMode
The navigation mode used by 3D cameras.
Definition qgis.h:4056
LinearReferencingPlacement
Defines how/where the labels should be placed in a linear referencing symbol layer.
Definition qgis.h:3078
TileChildrenAvailability
Possible availability states for a tile's children.
Definition qgis.h:5534
PointCloudZoomOutRenderBehavior
Point cloud zoom out options.
Definition qgis.h:5951
LayerType
Types of layers that can be added to a map.
Definition qgis.h:169
QFlags< AnnotationItemFlag > AnnotationItemFlags
Annotation item flags.
Definition qgis.h:2420
FieldOrigin
Field origin.
Definition qgis.h:1667
LinearReferencingLabelSource
Defines what quantity to use for the labels shown in a linear referencing symbol layer.
Definition qgis.h:3092
RasterRangeExtent
Describes the extent used to compute raster ranges (min/max values).
Definition qgis.h:1523
QFlags< Statistic > Statistics
Statistics to be calculated for generic values.
Definition qgis.h:5742
PlotToolFlag
Flags that control the way the QgsPlotTools operate.
Definition qgis.h:4009
RenderUnit
Rendering size units.
Definition qgis.h:5064
static QString geographicCrsAuthId()
Geographic coordinate system auth:id string for a default geographic CRS (EPSG:4326).
Definition qgis.h:6124
CoordinateOrder
Order of coordinates.
Definition qgis.h:2352
SelectionFlag
Flags which control feature selection behavior.
Definition qgis.h:1760
QFlags< SettingsTreeNodeOption > SettingsTreeNodeOptions
Definition qgis.h:635
EndCapStyle
End cap styles for buffers.
Definition qgis.h:2071
ScaleCalculationMethod
Scale calculation logic.
Definition qgis.h:5166
QFlags< TiledSceneRequestFlag > TiledSceneRequestFlags
Flags which control how tiled scene requests behave.
Definition qgis.h:5557
QFlags< MapLayerActionFlag > MapLayerActionFlags
Map layer action flags.
Definition qgis.h:4545
QFlags< MapLayerProperty > MapLayerProperties
Map layer properties.
Definition qgis.h:2235
QFlags< LoadStyleFlag > LoadStyleFlags
Flags for loading layer styles.
Definition qgis.h:225
BabelCommandFlag
Babel command flags, which control how commands and arguments are generated for executing GPSBabel pr...
Definition qgis.h:1976
QFlags< LabelingFlag > LabelingFlags
Flags that affect drawing and placement of labels.
Definition qgis.h:2811
FieldDomainType
Types of field domain.
Definition qgis.h:3857
MapLayerRendererFlag
Flags which control how map layer renderers behave.
Definition qgis.h:2734
RenderContextFlag
Flags which affect rendering operations.
Definition qgis.h:2698
RasterPipeInterfaceRole
Raster pipe interface roles.
Definition qgis.h:1416
CoverageValidityResult
Coverage validity results.
Definition qgis.h:2117
DataProviderReadFlag
Flags which control data provider construction.
Definition qgis.h:431
ScaleBarSegmentSizeMode
Modes for setting size for scale bar segments.
Definition qgis.h:5198
Aggregate
Available aggregates to calculate.
Definition qgis.h:5682
SymbolPreviewFlag
Flags for controlling how symbol preview images are generated.
Definition qgis.h:826
AnnotationItemGuiFlag
Flags for controlling how an annotation item behaves in the GUI.
Definition qgis.h:2443
MapBoxGlStyleSourceType
Available MapBox GL style source types.
Definition qgis.h:4253
LayoutUnitType
Types of layout units.
Definition qgis.h:5104
VectorDataProviderAttributeEditCapability
Attribute editing capabilities which may be supported by vector data providers.
Definition qgis.h:554
DashPatternLineEndingRule
Dash pattern line ending rules.
Definition qgis.h:3205
FieldMetadataProperty
Standard field metadata values.
Definition qgis.h:1708
TiledSceneRequestFlag
Flags which control how tiled scene requests behave.
Definition qgis.h:5547
RasterRendererCapability
Raster renderer capabilities.
Definition qgis.h:1486
VertexMarkerType
Editing vertex markers, used for showing vertices during a edit operation.
Definition qgis.h:1796
HistoryProviderBackend
History provider backends.
Definition qgis.h:3406
RasterExportType
Raster file export types.
Definition qgis.h:1592
SublayerPromptMode
Specifies how to handle layer sources with multiple sublayers.
Definition qgis.h:1651
TextVerticalAlignment
Text vertical alignment.
Definition qgis.h:2911
RelationshipCardinality
Relationship cardinality.
Definition qgis.h:4317
GradientType
Gradient types.
Definition qgis.h:3121
QFlags< ScriptLanguageCapability > ScriptLanguageCapabilities
Script language capabilities.
Definition qgis.h:4413
VectorProfileType
Types of elevation profiles to generate for vector sources.
Definition qgis.h:4107
GpsFeatureType
GPS feature types.
Definition qgis.h:1990
VectorLayerTypeFlag
Vector layer type flags.
Definition qgis.h:390
MakeValidMethod
Algorithms to use when repairing invalid geometries.
Definition qgis.h:2130
RangeLimits
Describes how the limits of a range are handled.
Definition qgis.h:3908
QFlags< ProjectFlag > ProjectFlags
Definition qgis.h:4000
VectorTemporalLimitMode
Mode for the handling of the limits of the filtering timeframe for vector features.
Definition qgis.h:2546
QFlags< ProcessingParameterFlag > ProcessingParameterFlags
Flags which dictate the behavior of Processing parameters.
Definition qgis.h:3678
SqlLayerDefinitionCapability
SqlLayerDefinitionCapability enum lists the arguments supported by the provider when creating SQL que...
Definition qgis.h:1055
VectorEditResult
Specifies the result of a vector layer edit operation.
Definition qgis.h:1781
QFlags< VectorDataProviderAttributeEditCapability > VectorDataProviderAttributeEditCapabilities
Attribute editing capabilities which may be supported by vector data providers.
Definition qgis.h:566
Axis
Cartesian axes.
Definition qgis.h:2401
QFlags< ProcessingAlgorithmDocumentationFlag > ProcessingAlgorithmDocumentationFlags
Flags describing algorithm behavior for documentation purposes.
Definition qgis.h:3531
QFlags< RelationshipCapability > RelationshipCapabilities
Relationship capabilities.
Definition qgis.h:4343
QFlags< SymbolRenderHint > SymbolRenderHints
Symbol render hints.
Definition qgis.h:741
VolumeUnit
Units of volume.
Definition qgis.h:4996
AttributeEditorType
Attribute editor types.
Definition qgis.h:5330
QFlags< LegendJsonRenderFlag > LegendJsonRenderFlags
Definition qgis.h:4480
QFlags< ProviderStyleStorageCapability > ProviderStyleStorageCapabilities
Definition qgis.h:5306
SymbolLayerUserFlag
User-specified flags controlling behavior of symbol layers.
Definition qgis.h:864
InvalidGeometryCheck
Methods for handling of features with invalid geometries.
Definition qgis.h:2188
QFlags< SymbolFlag > SymbolFlags
Symbol flags.
Definition qgis.h:817
QFlags< ProcessingFeatureSourceDefinitionFlag > ProcessingFeatureSourceDefinitionFlags
Flags which control behavior for a Processing feature source.
Definition qgis.h:3600
PointCloudAccessType
The access type of the data, local is for local files and remote for remote files (over HTTP).
Definition qgis.h:5940
ProfileExportType
Types of export for elevation profiles.
Definition qgis.h:4134
MeshElevationMode
Mesh layer elevation modes.
Definition qgis.h:3936
ProjectFileFormat
Flags which control project read behavior.
Definition qgis.h:4189
SnappingMode
SnappingMode defines on which layer the snapping is performed.
Definition qgis.h:701
SymbolType
Symbol types.
Definition qgis.h:574
RasterColorInterpretation
Raster color interpretation.
Definition qgis.h:4593
ProfileSurfaceSymbology
Surface symbology type for elevation profile plots.
Definition qgis.h:4094
LabelPlacementEngineVersion
Labeling placement engine version.
Definition qgis.h:2822
Q_ENUM(ProcessingAlgorithmFlag)
ColorModel
Color model types.
Definition qgis.h:5852
RendererUsage
Usage of the renderer.
Definition qgis.h:3348
SettingsTreeNodeOption
Options for named list nodes.
Definition qgis.h:630
BabelFormatCapability
Babel GPS format capabilities.
Definition qgis.h:1957
PostgresRelKind
Postgres database relkind options.
Definition qgis.h:5250
SegmentCalculationMethod
brief Method used to calculate the number of segments for circle approximation
Definition qgis.h:5963
GpsConnectionType
GPS connection types.
Definition qgis.h:1823
Q_ENUM(InputControllerType)
QFlags< DatabaseProviderConnectionCapability2 > DatabaseProviderConnectionCapabilities2
Definition qgis.h:5277
MouseHandlesAction
Action to be performed by the mouse handles.
Definition qgis.h:5890
ProcessingFeatureSourceDefinitionFlag
Flags which control behavior for a Processing feature source.
Definition qgis.h:3587
QFlags< TextComponent > TextComponents
Text components.
Definition qgis.h:2881
LoadStyleFlag
Flags for loading layer styles.
Definition qgis.h:215
BetweenLineConstraint
Between line constraints which can be enabled.
Definition qgis.h:3949
QFlags< VectorTileProviderFlag > VectorTileProviderFlags
Vector tile data provider flags.
Definition qgis.h:5446
MetadataDateType
Date types for metadata.
Definition qgis.h:4574
QFlags< RasterTemporalCapabilityFlag > RasterTemporalCapabilityFlags
Flags for raster layer temporal capabilities.
Definition qgis.h:2612
ProcessingFeatureSourceFlag
Flags which control how QgsProcessingFeatureSource fetches features.
Definition qgis.h:3611
RasterIdentifyFormat
Raster identify formats.
Definition qgis.h:4713
TextHorizontalAlignment
Text horizontal alignment.
Definition qgis.h:2892
SymbolFlag
Flags controlling behavior of symbols.
Definition qgis.h:811
LineExtensionSide
Designates whether the line extension constraint is currently soft locked with the previous or next v...
Definition qgis.h:3962
HttpMethod
Different methods of HTTP requests.
Definition qgis.h:1001
WkbType
The WKB type describes the number of dimensions a geometry has.
Definition qgis.h:256
QFlags< SldExportOption > SldExportOptions
Definition qgis.h:666
SymbolCoordinateReference
Symbol coordinate reference modes.
Definition qgis.h:3136
QFlags< ProcessingProviderFlag > ProcessingProviderFlags
Flags indicating how and when an processing provider operates and should be exposed to users.
Definition qgis.h:3473
TileRefinementProcess
Tiled scene tile refinement processes.
Definition qgis.h:5522
QFlags< DateTimeStatistic > DateTimeStatistics
Statistics to be calculated for date/time values.
Definition qgis.h:5767
SelectionRenderingMode
Specifies how a selection should be rendered.
Definition qgis.h:1721
InputControllerType
Input controller types.
Definition qgis.h:5238
TextRendererFlag
Flags which control the behavior of rendering text.
Definition qgis.h:3310
SelectGeometryRelationship
Geometry relationship test to apply for selecting features.
Definition qgis.h:1748
CrsAxisDirection
Coordinate reference system axis directions.
Definition qgis.h:2302
ProcessingModelChildParameterSource
Processing model child parameter sources.
Definition qgis.h:3748
QFlags< MarkerLinePlacement > MarkerLinePlacements
Definition qgis.h:3069
QFlags< MapCanvasFlag > MapCanvasFlags
Flags controlling behavior of map canvases.
Definition qgis.h:3371
CrsWktVariant
Coordinate reference system WKT formatting variants.
Definition qgis.h:2382
QFlags< TiledSceneRendererFlag > TiledSceneRendererFlags
Flags which control how tiled scene 2D renderers behave.
Definition qgis.h:5579
DocumentationApi
Documentation API.
Definition qgis.h:5864
AutoRefreshMode
Map layer automatic refresh modes.
Definition qgis.h:2245
AnnotationPlacementMode
Annotation item placement modes.
Definition qgis.h:2430
ProcessingAlgorithmFlag
Flags indicating how and when an algorithm operates and should be exposed to users.
Definition qgis.h:3484
SceneMode
The 3D scene mode used in 3D map views.
Definition qgis.h:4069
FieldConfigurationFlag
Configuration flags for fields These flags are meant to be user-configurable and are not describing a...
Definition qgis.h:1684
SettingsOrigin
The setting origin describes where a setting is stored.
Definition qgis.h:4365
HorizontalAnchorPoint
Marker symbol horizontal anchor points.
Definition qgis.h:764
ProcessingParameterFlag
Flags which dictate the behavior of Processing parameters.
Definition qgis.h:3663
LabelOverlapHandling
Label overlap handling.
Definition qgis.h:1131
FeatureSymbologyExport
Options for exporting features considering their symbology.
Definition qgis.h:5423
QFlags< LayerFilter > LayerFilters
Definition qgis.h:206
ProcessingDateTimeParameterDataType
Processing date time parameter data types.
Definition qgis.h:3735
CoordinateTransformationFlag
Flags which adjust the coordinate transformations behave.
Definition qgis.h:2633
TextComponent
Text components.
Definition qgis.h:2868
DateTimeStatistic
Available date/time statistics.
Definition qgis.h:5751
AnimationState
Animation states.
Definition qgis.h:2500
TransformDirection
Indicates the direction (forward or inverse) of a transform.
Definition qgis.h:2621
LightSourceType
Light source types for 3D scenes.
Definition qgis.h:4044
QFlags< ProcessingFeatureSourceFlag > ProcessingFeatureSourceFlags
Flags which control how QgsProcessingFeatureSource fetches features.
Definition qgis.h:3623
QFlags< HistoryProviderBackend > HistoryProviderBackends
Definition qgis.h:3411
LabelPredefinedPointPosition
Positions for labels when using the Qgis::LabelPlacement::OrderedPositionsAroundPoint placement mode.
Definition qgis.h:1179
QFlags< FieldConfigurationFlag > FieldConfigurationFlags
Configuration flags for fields These flags are meant to be user-configurable and are not describing a...
Definition qgis.h:1699
UpsideDownLabelHandling
Handling techniques for upside down labels.
Definition qgis.h:1287
DeviceConnectionStatus
GPS connection status.
Definition qgis.h:1837
ProcessingNumberParameterType
Processing numeric parameter data types.
Definition qgis.h:3703
MapSettingsFlag
Flags which adjust the way maps are rendered.
Definition qgis.h:2666
QFlags< SqlLayerDefinitionCapability > SqlLayerDefinitionCapabilities
SQL layer definition capabilities.
Definition qgis.h:1063
ProcessingLogLevel
Logging level for algorithms to use when pushing feedback messages.
Definition qgis.h:3557
SelectBehavior
Specifies how a selection should be applied.
Definition qgis.h:1734
LayoutRenderFlag
Flags for controlling how a layout is rendered.
Definition qgis.h:5118
Utility class that encapsulates an action based on vector attributes.
Definition qgsaction.h:37
Utility class for calculating aggregates for a field (or expression) over the features from a vector ...
Utility functions for working with ArcGIS REST services.
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:35
Base class for all items in the model.
Definition qgsdataitem.h:46
Abstract base class for spatial data provider implementations.
Calculator for summary statistics and aggregates for a list of datetimes.
Contains configuration settings for an editor form.
Wraps a request for features to a vector layer (or directly its vector data provider).
An interface for objects which provide features via a getFeatures method.
Container of fields for a vector layer.
Definition qgsfields.h:46
A geometry is the spatial representation of a feature.
Encapsulates information relating to a GPS position fix.
A fill symbol layer which draws a smooth color gradient over a polygon.
A vector feature renderer which uses numeric attributes to classify features into different ranges.
Stores global configuration for labeling engine.
Contains constants and enums relating to labeling.
Definition qgslabeling.h:32
A browser item that represents a layer that can be opened with one of the providers.
A layout item subclass that displays SVG files or raster format images (jpg, png, ....
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:78
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:107
A store for object properties.
Holds data provider key, description, and associated shared library file or function pointer informat...
A fill symbol layer which places markers at random locations within polygons.
The RasterBandStats struct is a container for statistics about a single raster band.
Implementation of data provider temporal properties for QgsRasterDataProviders.
Base class for raster data providers.
The raster file writer which allows you to save a raster to a new file.
Base class for processing filters like renderers, reprojector, resampler etc.
Implementation of map layer temporal properties for raster layers.
Represents a raster layer.
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:44
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:6256
Object * operator->()
Returns pointer to blocked QObject.
Definition qgis.h:6274
QgsSignalBlocker(Object *object)
Constructor for QgsSignalBlocker.
Definition qgis.h:6263
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.
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:509
@ Points
Point based rendering, requires point 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:6897
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:297
CORE_EXPORT uint qHash(const QVariant &variant)
Hash for QVariant.
Definition qgis.cpp:302
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:6799
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:351
Q_DECL_DEPRECATED const long GEOSRID
Numeric ID for the EPSG:4326 geographic coordinate system.
Definition qgis.h:6890
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:6602
QString qgsDoubleToString(double a, int precision=17)
Returns a string representation of a double.
Definition qgis.h:6309
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:6466
QString qgsEnumValueToKey(const T &value, bool *returnOk=nullptr)
Returns the value for the given key of an enum.
Definition qgis.h:6583
QString qgsFlagValueToKeys(const T &value, bool *returnOk=nullptr)
Returns the value for the given keys of a flag.
Definition qgis.h:6641
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:6449
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:6663
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:291
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:6916
const QMap< T, QString > qgsEnumMap()
Returns a map of all enum entries.
Definition qgis.h:6566
bool qgsFloatNear(float a, float b, float epsilon=4 *FLT_EPSILON)
Compare two floats (but allow some difference)
Definition qgis.h:6403
CORE_EXPORT int qgsVariantCompare(const QVariant &lhs, const QVariant &rhs)
Compares two QVariant values.
Definition qgis.cpp:129
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:6483
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:81
const QList< T > qgsEnumList()
Returns a list all enum entries.
Definition qgis.h:6549
double qgsRound(double number, int places)
Returns a double number, rounded (as close as possible) to the specified number of places.
Definition qgis.h:6433
bool qgsDoubleNear(double a, double b, double epsilon=4 *std::numeric_limits< double >::epsilon())
Compare two doubles (but allow some difference)
Definition qgis.h:6392
bool qgsNanCompatibleEquals(double a, double b)
Compare two doubles, treating nan values as equal.
Definition qgis.h:6354
QgsSignalBlocker< Object > whileBlocking(Object *object)
Temporarily blocks signals from a QObject while calling a single method from the object.
Definition qgis.h:6296
void CORE_EXPORT * qgsMalloc(size_t size)
Allocates size bytes and returns a pointer to the allocated memory.
Definition qgis.cpp:102
QMap< QString, QString > QgsStringMap
Definition qgis.h:6906
Q_DECL_DEPRECATED const long GEO_EPSG_CRS_ID
Numeric ID for the EPSG:4326 geographic coordinate system.
Definition qgis.h:6904
bool qgsDoubleNearSig(double a, double b, int significantDigits=10)
Compare two doubles using specified number of significant digits.
Definition qgis.h:6409
void CORE_EXPORT qgsFree(void *ptr)
Frees the memory space pointed to by ptr.
Definition qgis.cpp:124
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:6374
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:95
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:88
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:286
#define QHASH_FOR_CLASS_ENUM(T)
Definition qgis.h:43
bool operator<(const QVariant &v1, const QVariant &v2)
Compares two QVariant values and returns whether the first is less than the second.
Definition qgis.h:6813
#define SIP_DEPRECATED
Definition qgis_sip.h:106
#define SIP_ENUM_BASETYPE(type)
Definition qgis_sip.h:278
#define SIP_SKIP
Definition qgis_sip.h:126
#define SIP_MONKEYPATCH_SCOPEENUM_UNNEST(OUTSIDE_CLASS, FORMERNAME)
Definition qgis_sip.h:271
#define SIP_MONKEYPATCH_FLAGS_UNNEST(OUTSIDE_CLASS, FORMERNAME)
Definition qgis_sip.h:272
#define SIP_MONKEYPATCH_SCOPEENUM
Definition qgis_sip.h:270
#define SIP_MONKEYPATCH_COMPAT_NAME(FORMERNAME)
Definition qgis_sip.h:273
Q_DECLARE_METATYPE(QgsDatabaseQueryLogEntry)
Q_DECLARE_OPERATORS_FOR_FLAGS(QgsTextRendererUtils::CurvedTextFlags)
int precision
Utility class for identifying a unique vertex within a geometry.
Definition qgsvertexid.h:30