QGIS API Documentation 4.3.0-Master (b031d471fbb)
Loading...
Searching...
No Matches
qgis.h
Go to the documentation of this file.
1/***************************************************************************
2 qgis.h - QGIS namespace
3 -------------------
4 begin : Sat Jun 30 2002
5 copyright : (C) 2002 by Gary E.Sherman
6 email : sherman at mrcc.com
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17
18#ifndef QGIS_H
19#define QGIS_H
20
21
22#include <cfloat>
23#include <cmath>
24#include <memory>
25
26#include "qgis_core.h"
27#include "qgis_sip.h"
28
29#include <QMetaEnum>
30#include <QString>
31#include <QTimeZone>
32
33using namespace Qt::StringLiterals;
34
35#ifdef SIP_RUN
36// clang-format off
37% ModuleHeaderCode
38#include <qgis.h>
39% End
40
41% ModuleCode
42int QgisEvent = QEvent::User + 1;
43% End
44// clang-format on
45#endif
46
47#ifndef SIP_RUN
48// qHash implementation for scoped enum type
49// https://gitlab.com/frostasm/programming-knowledge-base/-/snippets/20120
50#define QHASH_FOR_CLASS_ENUM( T ) \
51 inline size_t qHash( const T &t, size_t seed ) \
52 { \
53 return ::qHash( static_cast<typename std::underlying_type<T>::type>( t ), seed ); \
54 }
55#endif
56
61 class CORE_EXPORT Qgis
62{
63 Q_GADGET
64 Q_CLASSINFO( "RegisterEnumClassesUnscoped", "false" )
65
66 public:
72 static QString version();
73
79 static int versionInt();
80
86 static QString releaseName();
87
89 static const char *QGIS_DEV_VERSION;
90
96 static QString devVersion();
97
98 // Enumerations
99 //
100
107 {
108 ClearStorage = 1 << 0,
109
110 ReadConfiguration = 1 << 1,
111 UpdateConfiguration = 1 << 2,
112 DeleteConfiguration = 1 << 3,
113 CreateConfiguration = 1 << 4,
114
115 ReadCertificateIdentity = 1 << 5,
116 UpdateCertificateIdentity = 1 << 6,
117 DeleteCertificateIdentity = 1 << 7,
118 CreateCertificateIdentity = 1 << 8,
119
120 ReadSslCertificateCustomConfig = 1 << 9,
121 UpdateSslCertificateCustomConfig = 1 << 10,
122 DeleteSslCertificateCustomConfig = 1 << 11,
123 CreateSslCertificateCustomConfig = 1 << 12,
124
125 ReadCertificateAuthority = 1 << 13,
126 UpdateCertificateAuthority = 1 << 14,
127 DeleteCertificateAuthority = 1 << 15,
128 CreateCertificateAuthority = 1 << 16,
129
130 ReadCertificateTrustPolicy = 1 << 17,
131 UpdateCertificateTrustPolicy = 1 << 18,
132 DeleteCertificateTrustPolicy = 1 << 19,
133 CreateCertificateTrustPolicy = 1 << 20,
134
135 ReadMasterPassword = 1 << 21,
136 UpdateMasterPassword = 1 << 22,
137 DeleteMasterPassword = 1 << 23,
138 CreateMasterPassword = 1 << 24,
139
140 ReadSetting = 1 << 25,
141 UpdateSetting = 1 << 26,
142 DeleteSetting = 1 << 27,
143 CreateSetting = 1 << 28,
144
145 };
146 Q_ENUM( AuthConfigurationStorageCapability )
147
148
154
160 {
161 Info = 0,
166 };
167 Q_ENUM( MessageLevel )
168
169
175 {
176 PlainText SIP_MONKEYPATCH_COMPAT_NAME( MessageText ),
177 Html SIP_MONKEYPATCH_COMPAT_NAME( MessageHtml ),
178 };
179 Q_ENUM( StringFormat )
180
181
186 enum class NetworkRequestFlag : int SIP_ENUM_BASETYPE( IntFlag )
187 {
188 DisableMessageLogging = 1 << 0,
189 };
190 Q_ENUM( NetworkRequestFlag )
191
192
198 Q_FLAG( NetworkRequestFlags )
199
206 {
207 Vector SIP_MONKEYPATCH_COMPAT_NAME( VectorLayer ),
208 Raster SIP_MONKEYPATCH_COMPAT_NAME( RasterLayer ),
209 Plugin SIP_MONKEYPATCH_COMPAT_NAME( PluginLayer ),
210 Mesh SIP_MONKEYPATCH_COMPAT_NAME( MeshLayer ),
211 VectorTile SIP_MONKEYPATCH_COMPAT_NAME( VectorTileLayer ),
212 Annotation SIP_MONKEYPATCH_COMPAT_NAME( AnnotationLayer ),
213 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( PointCloudLayer ),
214 Group SIP_MONKEYPATCH_COMPAT_NAME( GroupLayer ),
215 TiledScene,
216 };
217 Q_ENUM( LayerType )
218
219
225 {
226 RasterLayer = 1,
227 NoGeometry = 2,
228 PointLayer = 4,
229 LineLayer = 8,
230 PolygonLayer = 16,
231 HasGeometry = PointLayer | LineLayer | PolygonLayer,
232 VectorLayer = NoGeometry | HasGeometry,
233 PluginLayer = 32,
234 WritableLayer = 64,
235 MeshLayer = 128,
236 VectorTileLayer = 256,
237 PointCloudLayer = 512,
238 AnnotationLayer = 1024,
239 TiledSceneLayer = 2048,
240 All = RasterLayer | VectorLayer | PluginLayer | MeshLayer | VectorTileLayer | PointCloudLayer | AnnotationLayer | TiledSceneLayer,
241 SpatialLayer = RasterLayer | HasGeometry | PluginLayer | MeshLayer | VectorTileLayer | PointCloudLayer | AnnotationLayer | TiledSceneLayer
242 };
243 Q_DECLARE_FLAGS( LayerFilters, LayerFilter )
244 Q_FLAG( LayerFilters )
245
246
251 enum class LoadStyleFlag : int SIP_ENUM_BASETYPE( IntFlag )
252 {
253 IgnoreMissingStyleErrors
254 = 1 << 0,
255 };
256 Q_ENUM( LoadStyleFlag )
257
258
263 Q_DECLARE_FLAGS( LoadStyleFlags, LoadStyleFlag )
264 Q_FLAG( LoadStyleFlags )
265
294 {
295 Unknown = 0,
296 Point = 1,
297 LineString = 2,
298 Polygon = 3,
299 Triangle = 17,
300 MultiPoint = 4,
301 MultiLineString = 5,
302 MultiPolygon = 6,
303 GeometryCollection = 7,
304 CircularString = 8,
305 CompoundCurve = 9,
306 CurvePolygon = 10,
307 MultiCurve = 11,
308 MultiSurface = 12,
309 PolyhedralSurface = 15,
310 TIN = 16,
311 NurbsCurve = 21,
312 NoGeometry = 100,
313 PointZ = 1001,
314 LineStringZ = 1002,
315 PolygonZ = 1003,
316 TriangleZ = 1017,
317 MultiPointZ = 1004,
318 MultiLineStringZ = 1005,
319 MultiPolygonZ = 1006,
320 GeometryCollectionZ = 1007,
321 CircularStringZ = 1008,
322 CompoundCurveZ = 1009,
323 CurvePolygonZ = 1010,
324 MultiCurveZ = 1011,
325 MultiSurfaceZ = 1012,
326 PolyhedralSurfaceZ = 1015,
327 TINZ = 1016,
328 NurbsCurveZ = 1021,
329 PointM = 2001,
330 LineStringM = 2002,
331 PolygonM = 2003,
332 TriangleM = 2017,
333 MultiPointM = 2004,
334 MultiLineStringM = 2005,
335 MultiPolygonM = 2006,
336 GeometryCollectionM = 2007,
337 CircularStringM = 2008,
338 CompoundCurveM = 2009,
339 CurvePolygonM = 2010,
340 MultiCurveM = 2011,
341 MultiSurfaceM = 2012,
342 PolyhedralSurfaceM = 2015,
343 TINM = 2016,
344 NurbsCurveM = 2021,
345 PointZM = 3001,
346 LineStringZM = 3002,
347 PolygonZM = 3003,
348 MultiPointZM = 3004,
349 MultiLineStringZM = 3005,
350 MultiPolygonZM = 3006,
351 GeometryCollectionZM = 3007,
352 CircularStringZM = 3008,
353 CompoundCurveZM = 3009,
354 CurvePolygonZM = 3010,
355 MultiCurveZM = 3011,
356 MultiSurfaceZM = 3012,
357 PolyhedralSurfaceZM = 3015,
358 TINZM = 3016,
359 TriangleZM = 3017,
360 NurbsCurveZM = 3021,
361 Point25D = 0x80000001,
362 LineString25D,
363 Polygon25D,
364 MultiPoint25D,
365 MultiLineString25D,
366 MultiPolygon25D
367 };
368 Q_ENUM( WkbType )
369
370
379 {
380 Point SIP_MONKEYPATCH_COMPAT_NAME( PointGeometry ),
381 Line SIP_MONKEYPATCH_COMPAT_NAME( LineGeometry ),
382 Polygon SIP_MONKEYPATCH_COMPAT_NAME( PolygonGeometry ),
383 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownGeometry ),
384 Null SIP_MONKEYPATCH_COMPAT_NAME( NullGeometry ),
385 };
386 Q_ENUM( GeometryType )
387
388
393 {
394 UnknownDataType = 0,
395 Byte = 1,
396 Int8 = 14,
397 UInt16 = 2,
398 Int16 = 3,
399 UInt32 = 4,
400 Int32 = 5,
401 Float32 = 6,
402 Float64 = 7,
403 CInt16 = 8,
404 CInt32 = 9,
405 CFloat32 = 10,
406 CFloat64 = 11,
407 ARGB32 = 12,
408 ARGB32_Premultiplied = 13
409 };
410 Q_ENUM( DataType )
411
412
417 enum class CaptureTechnique : int
418 {
419 StraightSegments,
420 CircularString,
421 Streaming,
422 Shape,
423 PolyBezier,
424 NurbsCurve,
425 };
426 Q_ENUM( CaptureTechnique )
427
428
429
434 enum class VectorLayerTypeFlag : int SIP_ENUM_BASETYPE( IntFlag )
435 {
436 SqlQuery = 1 << 0
437 };
438 Q_ENUM( VectorLayerTypeFlag )
441 Q_FLAG( VectorLayerTypeFlags )
442
447 enum class EmbeddedScriptMode SIP_MONKEYPATCH_SCOPEENUM_UNNEST( Qgis, PythonMacroMode ) : int
448 {
449 Never = 0,
450 Ask = 1,
451 SessionOnly = 2,
452 Always = 3,
453 NotForThisSession = 4,
454 NeverAsk = 5,
455 };
456 Q_ENUM( EmbeddedScriptMode )
457
458
462 enum class EmbeddedScriptType : int
463 {
464 Macro = 0,
465 ExpressionFunction = 1,
466 Action = 2,
467 FormInitCode = 3,
468 };
469 Q_ENUM( EmbeddedScriptType )
470
471
475 enum class ProjectTrustStatus : int
476 {
477 Undetermined = 0,
478 Trusted = 1,
479 Untrusted = 2,
480 };
481 Q_ENUM( ProjectTrustStatus )
482
483
491 {
492 TrustDataSource SIP_MONKEYPATCH_COMPAT_NAME( FlagTrustDataSource )
493 = 1 << 0,
494 SkipFeatureCount = 1 << 1,
495 LoadDefaultStyle SIP_MONKEYPATCH_COMPAT_NAME( FlagLoadDefaultStyle ) = 1 << 2,
496 SkipGetExtent = 1 << 3,
497 SkipFullScan = 1 << 4,
498 ForceReadOnly = 1 << 5,
499 SkipCredentialsRequest
500 = 1 << 6,
501 ParallelThreadLoading = 1 << 7,
502 };
503 Q_ENUM( DataProviderReadFlag )
504
505
513 Q_FLAG( DataProviderReadFlags )
514
515 // TODO QGIS 5 -- remove NoCapabilities and rely on VectorProviderCapabilities() instead
516
525 {
526 NoCapabilities = 0,
527 AddFeatures = 1,
528 DeleteFeatures = 1 << 1,
529 ChangeAttributeValues = 1 << 2,
530 AddAttributes = 1 << 3,
531 DeleteAttributes = 1 << 4,
532 CreateSpatialIndex = 1 << 6,
533 SelectAtId = 1 << 7,
534 ChangeGeometries = 1 << 8,
535 SelectEncoding = 1 << 13,
536 CreateAttributeIndex = 1 << 12,
537 SimplifyGeometries = 1 << 14,
538 SimplifyGeometriesWithTopologicalValidation = 1 << 15,
539 TransactionSupport = 1 << 16,
540 CircularGeometries = 1 << 17,
541 ChangeFeatures = 1 << 18,
542 RenameAttributes = 1 << 19,
543 FastTruncate = 1 << 20,
544 ReadLayerMetadata = 1 << 21,
545 WriteLayerMetadata = 1 << 22,
546 CancelSupport = 1 << 23,
547 CreateRenderer = 1 << 24,
548 CreateLabeling = 1 << 25,
549 ReloadData = 1 << 26,
550 FeatureSymbology = 1 << 27,
551 CacheData = 1 << 28,
552 ReadFieldDomains = 1 << 29,
553 EditingCapabilities = AddFeatures | DeleteFeatures | ChangeAttributeValues | ChangeGeometries | AddAttributes | DeleteAttributes | RenameAttributes,
554 };
555 Q_ENUM( VectorProviderCapability )
556
557
566
573 {
574 Abort,
575 CreateOrOverwriteFile,
576 CreateOrOverwriteLayer,
577 };
578 Q_ENUM( CreateLayerActionOnExisting )
579
580
586 {
587 Uncounted = -2,
588 UnknownCount = -1,
589 };
590 Q_ENUM( FeatureCountState )
591
592
599 {
600 Unknown SIP_MONKEYPATCH_COMPAT_NAME( SpatialIndexUnknown ) = 0,
601 NotPresent SIP_MONKEYPATCH_COMPAT_NAME( SpatialIndexNotPresent ) = 1,
602 Present SIP_MONKEYPATCH_COMPAT_NAME( SpatialIndexPresent ) = 2,
603 };
604 Q_ENUM( SpatialIndexPresence )
605
606
618 {
619 NoFeaturesAvailable = 0,
620 FeaturesAvailable,
621 FeaturesMaybeAvailable
622 };
623 Q_ENUM( FeatureAvailability )
624
625
631 {
632 EditAlias = 1 << 0,
633 EditComment = 1 << 1,
634 };
635
636 Q_ENUM( VectorDataProviderAttributeEditCapability )
637
638
645
651 {
652 Marker,
653 Line,
654 Fill,
655 Hybrid
656 };
657 Q_ENUM( SymbolType )
658
659
665 {
666 ScaleArea,
667 ScaleDiameter
668 };
669 Q_ENUM( ScaleMethod )
670
671
676 {
677 Custom,
678 Variant,
679 String,
680 StringList,
681 VariantMap,
682 Bool,
683 Integer,
684 Double,
685 EnumFlag,
686 Color
687 };
688 Q_ENUM( SettingsType )
689
690
695 {
696 Root,
697 Standard,
698 NamedList,
699 };
700 Q_ENUM( SettingsTreeNodeType )
701
702
706 enum class SettingsTreeNodeOption : int SIP_ENUM_BASETYPE( IntFlag )
707 {
708 NamedListSelectedItemSetting = 1 << 0,
709 };
710
711 Q_ENUM( SettingsTreeNodeOption )
714
723 {
724 Invalid SIP_MONKEYPATCH_COMPAT_NAME( InvalidProperty ),
725 Static SIP_MONKEYPATCH_COMPAT_NAME( StaticProperty ),
726 Field SIP_MONKEYPATCH_COMPAT_NAME( FieldBasedProperty ),
727 Expression SIP_MONKEYPATCH_COMPAT_NAME( ExpressionBasedProperty ),
728 };
729 Q_ENUM( PropertyType )
730
731
736 enum class SldExportOption : int SIP_ENUM_BASETYPE( IntFlag )
737 {
738 NoOptions = 0,
739 Svg = 1 << 0,
740 Png = 1 << 1,
741 };
742 Q_ENUM( SldExportOption )
744 Q_FLAG( SldExportOptions )
745
751 enum class SldExportVendorExtension : int SIP_ENUM_BASETYPE( IntFlag )
752 {
753 NoVendorExtension = 0,
754 GeoServerVendorExtension = 1 << 1,
755 DeegreeVendorExtension = 1 << 2,
756 };
757 Q_ENUM( SldExportVendorExtension )
758
759
760
764 enum class SettingsOption : int SIP_ENUM_BASETYPE( IntFlag )
765 {
766 SaveFormerValue = 1 << 1,
767 SaveEnumFlagAsInt = 1 << 2,
768 };
769 Q_ENUM( SettingsOption )
770 Q_DECLARE_FLAGS( SettingsOptions, SettingsOption )
771 Q_FLAG( SettingsOptions )
772
778 {
779 ActiveLayer = 1,
780 AllLayers = 2,
781 AdvancedConfiguration = 3,
782 };
783 Q_ENUM( SnappingMode )
784
785
790 {
791 NoSnap SIP_MONKEYPATCH_COMPAT_NAME( NoSnapFlag ) = 0,
792 Vertex SIP_MONKEYPATCH_COMPAT_NAME( VertexFlag ) = 1 << 0,
793 Segment SIP_MONKEYPATCH_COMPAT_NAME( SegmentFlag ) = 1 << 1,
794 Area SIP_MONKEYPATCH_COMPAT_NAME( AreaFlag ) = 1 << 2,
795 Centroid SIP_MONKEYPATCH_COMPAT_NAME( CentroidFlag ) = 1 << 3,
796 MiddleOfSegment SIP_MONKEYPATCH_COMPAT_NAME( MiddleOfSegmentFlag ) = 1 << 4,
797 LineEndpoint SIP_MONKEYPATCH_COMPAT_NAME( LineEndpointFlag ) = 1 << 5,
798 };
799 Q_ENUM( SnappingType )
802 Q_FLAG( SnappingTypes )
803
810 {
811 DynamicRotation = 1 << 1,
812 IsSymbolLayerSubSymbol = 1 << 2,
813 ForceVectorRendering = 1 << 3,
814 ExcludeSymbolBuffers = 1 << 4,
815 };
816 Q_ENUM( SymbolRenderHint )
819 Q_FLAG( SymbolRenderHints )
820
827 {
828 ReadSymbol = 1 << 0,
829 WriteSymbol = 1 << 1,
830 };
831
832 Q_ENUM( SymbolConverterCapability )
833
834
841
847 enum class SymbolRotationMode : int
848 {
849 RespectMapRotation,
850 IgnoreMapRotation,
851 };
852 Q_ENUM( SymbolRotationMode )
853
854
855
867 Q_ENUM( HorizontalAnchorPoint )
868
869
882 Q_ENUM( VerticalAnchorPoint )
883
884
889 enum class FeatureRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
890 {
891 AffectsLabeling = 1 << 0,
892 };
893 Q_ENUM( FeatureRendererFlag )
894
895
901 Q_FLAG( FeatureRendererFlags )
902
908 enum class SymbolFlag : int SIP_ENUM_BASETYPE( IntFlag )
909 {
910 RendererShouldUseSymbolLevels = 1 << 0,
911 AffectsLabeling = 1 << 1,
912 };
913 Q_ENUM( SymbolFlag )
915 Q_DECLARE_FLAGS( SymbolFlags, SymbolFlag )
916 Q_FLAG( SymbolFlags )
917
924 {
925 FlagIncludeCrosshairsForMarkerSymbols = 1 << 0,
926 };
927 Q_ENUM( SymbolPreviewFlag )
930 Q_FLAG( SymbolPreviewFlags )
931
941 enum class SymbolLayerFlag : int SIP_ENUM_BASETYPE( IntFlag )
942 {
943 DisableFeatureClipping = 1 << 0,
944 CanCalculateMaskGeometryPerFeature = 1 << 1,
945 AffectsLabeling = 1 << 2,
946 };
947 Q_ENUM( SymbolLayerFlag )
950 Q_FLAG( SymbolLayerFlags )
951
961 enum class SymbolLayerUserFlag : int SIP_ENUM_BASETYPE( IntFlag )
962 {
963 DisableSelectionRecoloring = 1 << 0,
964 };
965 Q_ENUM( SymbolLayerUserFlag )
966
967
973 Q_FLAG( SymbolLayerUserFlags )
974
981 {
982 Collection,
983 Directory,
984 Layer,
985 Error,
986 Favorites,
987 Project,
988 Custom,
989 Fields,
990 Field,
991 };
992 Q_ENUM( BrowserItemType )
993
994
1000 {
1001 NotPopulated,
1002 Populating,
1003 Populated,
1004 };
1005 Q_ENUM( BrowserItemState )
1006
1007
1013 {
1014 NoCapabilities = 0,
1015 SetCrs = 1 << 0,
1016 Fertile = 1 << 1,
1017 Fast = 1 << 2,
1018 Collapse = 1 << 3,
1019 Rename = 1 << 4,
1020 Delete = 1 << 5,
1021 ItemRepresentsFile = 1 << 6,
1022 RefreshChildrenWhenItemIsRefreshed = 1 << 7,
1023 ReadOnly = 1 << 8,
1024 };
1025 Q_ENUM( BrowserItemCapability )
1028 Q_FLAG( BrowserItemCapabilities )
1029
1035 enum class BrowserItemFilterFlag : int SIP_ENUM_BASETYPE( IntFlag )
1036 {
1037 HideWhenNotFilteringByLayerType = 1 << 0,
1038 };
1039 Q_ENUM( BrowserItemFilterFlag )
1040
1041
1047 Q_FLAG( BrowserItemFilterFlags )
1048
1057 {
1058 NoCapabilities SIP_MONKEYPATCH_COMPAT_NAME( NoDataCapabilities ) = 0,
1060 Directories SIP_MONKEYPATCH_COMPAT_NAME( Dir ) = 1 << 1,
1061 Databases SIP_MONKEYPATCH_COMPAT_NAME( Database ) = 1 << 2,
1062 NetworkSources SIP_MONKEYPATCH_COMPAT_NAME( Net ) = 1 << 3,
1063 };
1064 Q_ENUM( DataItemProviderCapability )
1065
1066
1075
1082 {
1083 NoType,
1084 Vector,
1085 Raster,
1086 Point,
1087 Line,
1088 Polygon,
1089 TableLayer,
1090 Database,
1091 Table,
1092 Plugin,
1093 Mesh,
1094 VectorTile,
1095 PointCloud,
1096 TiledScene,
1097 };
1098 Q_ENUM( BrowserLayerType )
1099
1100
1106 {
1107 Default,
1108 NeverMonitor,
1109 AlwaysMonitor,
1110 };
1111 Q_ENUM( BrowserDirectoryMonitoring )
1112
1113
1117 enum class HttpMethod : int
1118 {
1119 Get = 0,
1120 Post = 1,
1121 Head,
1122 Put,
1123 Delete,
1124 };
1125 Q_ENUM( HttpMethod )
1126
1127
1133 {
1135 ErrorCreatingDataSource SIP_MONKEYPATCH_COMPAT_NAME( ErrCreateDataSource ),
1136 ErrorCreatingLayer SIP_MONKEYPATCH_COMPAT_NAME( ErrCreateLayer ),
1137 ErrorAttributeTypeUnsupported SIP_MONKEYPATCH_COMPAT_NAME( ErrAttributeTypeUnsupported ),
1138 ErrorAttributeCreationFailed SIP_MONKEYPATCH_COMPAT_NAME( ErrAttributeCreationFailed ),
1139 ErrorProjectingFeatures SIP_MONKEYPATCH_COMPAT_NAME( ErrProjection ),
1140 ErrorFeatureWriteFailed SIP_MONKEYPATCH_COMPAT_NAME( ErrFeatureWriteFailed ),
1141 ErrorInvalidLayer SIP_MONKEYPATCH_COMPAT_NAME( ErrInvalidLayer ),
1142 ErrorInvalidProvider SIP_MONKEYPATCH_COMPAT_NAME( ErrInvalidProvider ),
1143 ErrorProviderUnsupportedFeature SIP_MONKEYPATCH_COMPAT_NAME( ErrProviderUnsupportedFeature ),
1144 ErrorConnectionFailed SIP_MONKEYPATCH_COMPAT_NAME( ErrConnectionFailed ),
1145 UserCanceled SIP_MONKEYPATCH_COMPAT_NAME( ErrUserCanceled ),
1146 };
1147 Q_ENUM( VectorExportResult )
1148
1149
1154 {
1155 FieldAliases = 1 << 0,
1156 FieldComments = 1 << 2,
1157 };
1158 Q_ENUM( VectorFileWriterCapability )
1159
1160
1166
1172 {
1173 SubsetStringFilter = 1 << 1,
1174 GeometryColumn = 1 << 2,
1175 PrimaryKeys = 1 << 3,
1176 UnstableFeatureIds = 1 << 4
1177 };
1178 Q_ENUM( SqlLayerDefinitionCapability )
1182
1188 enum class SqlKeywordCategory : int
1189 {
1190 Keyword,
1191 Constant,
1192 Function,
1193 Geospatial,
1194 Operator,
1195 Math,
1197 String,
1198 Identifier
1199 };
1200 Q_ENUM( SqlKeywordCategory )
1201
1202
1206 enum class DriveType : int
1207 {
1208 Unknown,
1209 Invalid,
1210 Removable,
1211 Fixed,
1212 Remote,
1213 CdRom,
1214 RamDisk,
1215 Cloud,
1216 };
1217 Q_ENUM( DriveType )
1218
1219
1224 {
1225 Deferred SIP_MONKEYPATCH_COMPAT_NAME( DownloadLater ),
1226 Immediate SIP_MONKEYPATCH_COMPAT_NAME( DownloadImmediately ),
1227 };
1228 Q_ENUM( ActionStart )
1229
1230
1236 {
1237 FollowEngineSetting,
1238 NeverShow,
1239 };
1240 Q_ENUM( UnplacedLabelVisibility )
1241
1242
1247 enum class LabelOverlapHandling : int
1248 {
1249 PreventOverlap,
1250 AllowOverlapIfRequired,
1251 AllowOverlapAtNoCost,
1252 };
1253 Q_ENUM( LabelOverlapHandling )
1254
1255
1261 {
1262 TreatWhitespaceAsCollision,
1263 IgnoreWhitespaceCollisions,
1264 };
1265 Q_ENUM( LabelWhitespaceCollisionHandling )
1266
1267
1272 enum class LabelPrioritization : int
1273 {
1274 PreferCloser,
1275 PreferPositionOrdering,
1276 };
1277 Q_ENUM( LabelPrioritization )
1278
1279
1287 {
1288 AroundPoint,
1289 OverPoint,
1290 Line,
1291 Curved,
1292 Horizontal,
1293 Free,
1294 OrderedPositionsAroundPoint,
1295 PerimeterCurved,
1296 OutsidePolygons,
1297 };
1298 Q_ENUM( LabelPlacement )
1299
1300
1305 enum class CurvedLabelMode : int
1306 {
1307 Default,
1308 PlaceCharactersAtVertices,
1309 StretchCharacterSpacingToFitLine,
1310 StretchWordSpacingToFitLine,
1311 };
1312 Q_ENUM( CurvedLabelMode )
1313
1314
1322 {
1323 TopLeft,
1324 TopSlightlyLeft,
1325 TopMiddle,
1326 TopSlightlyRight,
1327 TopRight,
1328 MiddleLeft,
1329 MiddleRight,
1330 BottomLeft,
1331 BottomSlightlyLeft,
1332 BottomMiddle,
1333 BottomSlightlyRight,
1334 BottomRight,
1335 OverPoint,
1336 };
1337 Q_ENUM( LabelPredefinedPointPosition )
1338
1339
1345 {
1346 LabelLargestPartOnly,
1347 LabelEveryPartWithEntireLabel,
1348 SplitLabelTextLinesOverParts,
1349 };
1350 Q_ENUM( MultiPartLabelingBehavior )
1351
1352
1361 {
1362 FromPoint,
1363 FromSymbolBounds,
1364 };
1365 Q_ENUM( LabelOffsetType )
1366
1367
1375 {
1376 AboveLeft SIP_MONKEYPATCH_COMPAT_NAME( QuadrantAboveLeft ),
1377 Above SIP_MONKEYPATCH_COMPAT_NAME( QuadrantAbove ),
1378 AboveRight SIP_MONKEYPATCH_COMPAT_NAME( QuadrantAboveRight ),
1380 Over SIP_MONKEYPATCH_COMPAT_NAME( QuadrantOver ),
1382 BelowLeft SIP_MONKEYPATCH_COMPAT_NAME( QuadrantBelowLeft ),
1383 Below SIP_MONKEYPATCH_COMPAT_NAME( QuadrantBelow ),
1384 BelowRight SIP_MONKEYPATCH_COMPAT_NAME( QuadrantBelowRight ),
1385 };
1386 Q_ENUM( LabelQuadrantPosition )
1387
1388
1395 {
1396 OnLine = 1,
1397 AboveLine = 2,
1398 BelowLine = 4,
1399 MapOrientation = 8,
1400 };
1401 Q_ENUM( LabelLinePlacementFlag )
1402
1403
1411 Q_FLAG( LabelLinePlacementFlags )
1412
1420 {
1421 AllowPlacementOutsideOfPolygon = 1 << 0,
1422 AllowPlacementInsideOfPolygon = 1 << 1,
1423 };
1424 Q_ENUM( LabelPolygonPlacementFlag )
1425
1426
1434
1443 {
1444 FlipUpsideDownLabels SIP_MONKEYPATCH_COMPAT_NAME( Upright ),
1445 AllowUpsideDownWhenRotationIsDefined SIP_MONKEYPATCH_COMPAT_NAME( ShowDefined ),
1446 AlwaysAllowUpsideDown SIP_MONKEYPATCH_COMPAT_NAME( ShowAll )
1447 };
1448 Q_ENUM( UpsideDownLabelHandling )
1449
1450
1458 {
1460 Center SIP_MONKEYPATCH_COMPAT_NAME( MultiCenter ),
1462 FollowPlacement SIP_MONKEYPATCH_COMPAT_NAME( MultiFollowPlacement ),
1463 Justify SIP_MONKEYPATCH_COMPAT_NAME( MultiJustify ),
1464 };
1465 Q_ENUM( LabelMultiLineAlignment )
1466
1467
1475 {
1476 StartOfText,
1477 CenterOfText,
1478 EndOfText,
1479 FollowPlacement,
1480 };
1481 Q_ENUM( TextAnchorPoint )
1482
1483
1490 {
1491 Vector SIP_MONKEYPATCH_COMPAT_NAME( FilterVector ) = 1,
1492 Raster SIP_MONKEYPATCH_COMPAT_NAME( FilterRaster ),
1493 Mesh SIP_MONKEYPATCH_COMPAT_NAME( FilterMesh ),
1494 MeshDataset SIP_MONKEYPATCH_COMPAT_NAME( FilterMeshDataset ),
1495 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( FilterPointCloud ),
1496 VectorTile,
1497 TiledScene,
1498 };
1499 Q_ENUM( FileFilterType )
1500
1501
1506 enum class UriCleaningFlag : int SIP_ENUM_BASETYPE( IntFlag )
1507 {
1508 RemoveCredentials = 1 << 0,
1509 RedactCredentials = 1 << 1,
1510 };
1511 Q_ENUM( UriCleaningFlag )
1512
1513
1519 Q_FLAG( UriCleaningFlags )
1520
1526 enum class SourceHierarchyLevel : int
1527 {
1528 Connection,
1529 Group,
1530 Object,
1531 };
1532 Q_ENUM( SourceHierarchyLevel )
1533
1534
1539 enum class SublayerQueryFlag : int SIP_ENUM_BASETYPE( IntFlag )
1540 {
1541 FastScan = 1 << 0,
1542 ResolveGeometryType = 1 << 1,
1543 CountFeatures = 1 << 2,
1544 IncludeSystemTables = 1 << 3,
1545 OpenLayersToResolveDescriptions = 1 << 4,
1546 };
1547
1550 Q_FLAG( SublayerQueryFlags )
1551
1552
1557 enum class SublayerFlag : int SIP_ENUM_BASETYPE( IntFlag )
1558 {
1559 SystemTable = 1 << 0,
1560 };
1561
1562 Q_DECLARE_FLAGS( SublayerFlags, SublayerFlag )
1564 Q_FLAG( SublayerFlags )
1565
1566
1574 {
1575 Linear SIP_MONKEYPATCH_COMPAT_NAME( Interpolated ) = 0,
1576 Discrete = 1,
1577 Exact = 2,
1578 };
1579 Q_ENUM( ShaderInterpolationMethod )
1580
1581
1589 {
1590 Continuous = 1,
1591 EqualInterval = 2,
1592 Quantile = 3,
1593 };
1594 Q_ENUM( ShaderClassificationMethod )
1595
1596
1602 {
1603 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownRole ) = 0,
1604 Provider SIP_MONKEYPATCH_COMPAT_NAME( ProviderRole ) = 1,
1605 Renderer SIP_MONKEYPATCH_COMPAT_NAME( RendererRole ) = 2,
1606 Brightness SIP_MONKEYPATCH_COMPAT_NAME( BrightnessRole ) = 3,
1607 Resampler SIP_MONKEYPATCH_COMPAT_NAME( ResamplerRole ) = 4,
1608 Projector SIP_MONKEYPATCH_COMPAT_NAME( ProjectorRole ) = 5,
1609 Nuller SIP_MONKEYPATCH_COMPAT_NAME( NullerRole ) = 6,
1610 HueSaturation SIP_MONKEYPATCH_COMPAT_NAME( HueSaturationRole ) = 7,
1611 };
1612 Q_ENUM( RasterPipeInterfaceRole )
1613
1614
1619 {
1620 ResampleFilter,
1621 Provider,
1622 };
1623 Q_ENUM( RasterResamplingStage )
1624
1625
1633 {
1634 Nearest,
1635 Bilinear,
1636 Cubic,
1637 CubicSpline,
1638 Lanczos,
1639 Average,
1640 Mode,
1641 Gauss
1642 };
1643 Q_ENUM( RasterResamplingMethod )
1644
1645
1650 enum class RasterRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
1651 {
1652 InternalLayerOpacityHandling = 1 << 0,
1653 UseNoDataForOutOfRangePixels
1654 = 1 << 1,
1655 };
1656
1663
1665 Q_FLAG( RasterRendererFlags )
1666
1667
1673 {
1674 UsesMultipleBands = 1 << 0,
1675 };
1676 Q_ENUM( RasterRendererCapability )
1677
1678
1685
1694 {
1696 MinimumMaximum SIP_MONKEYPATCH_COMPAT_NAME( MinMax ),
1697 StdDev,
1698 CumulativeCut
1699 };
1700 Q_ENUM( RasterRangeLimit )
1701
1702
1710 {
1711 WholeRaster SIP_MONKEYPATCH_COMPAT_NAME( None_ ),
1712 FixedCanvas SIP_MONKEYPATCH_COMPAT_NAME( CurrentCanvas ),
1713 UpdatedCanvas,
1714 };
1715 Q_ENUM( RasterRangeExtent )
1716
1717
1725 {
1726 Exact,
1727 Estimated,
1728 };
1729 Q_ENUM( RasterRangeAccuracy )
1730
1731
1737 {
1738 Generic = 0,
1739 PixelCount = 1,
1740 Name = 2,
1741 Min = 3,
1742 Max = 4,
1743 MinMax = 5,
1744 Red = 6,
1745 Green = 7,
1746 Blue = 8,
1747 Alpha = 9,
1748 RedMin = 10,
1749 GreenMin = 11,
1750 BlueMin = 12,
1751 AlphaMin = 13,
1752 RedMax = 14,
1753 GreenMax = 15,
1754 BlueMax = 16,
1755 AlphaMax = 17,
1756 MaxCount
1757 };
1758 Q_ENUM( RasterAttributeTableFieldUsage )
1759
1760
1766 {
1767 Thematic = 0,
1768 Athematic = 1
1769 };
1770 Q_ENUM( RasterAttributeTableType )
1771
1772
1779 {
1780 Raw = 0,
1781 RenderedImage SIP_MONKEYPATCH_COMPAT_NAME( Image ) = 1
1782 };
1783 Q_ENUM( RasterExportType )
1784
1785
1792 {
1794 SourceProviderError = 1,
1795 DestinationProviderError SIP_MONKEYPATCH_COMPAT_NAME( DestProviderError ) = 2,
1796 CreateDatasourceError = 3,
1797 WriteError = 4,
1798 NoDataConflict = 5,
1799 Canceled SIP_MONKEYPATCH_COMPAT_NAME( WriteCanceled ) = 6,
1800 };
1801 Q_ENUM( RasterFileWriterResult )
1802
1803
1808 enum class MeshEditingErrorType : int
1809 {
1810 NoError,
1811 InvalidFace,
1812 TooManyVerticesInFace,
1813 FlatFace,
1814 UniqueSharedVertex,
1815 InvalidVertex,
1816 ManifoldFace,
1817 };
1818 Q_ENUM( MeshEditingErrorType )
1819
1820
1825 enum class FilePathType : int
1826 {
1827 Absolute,
1828 Relative,
1829 };
1830 Q_ENUM( FilePathType )
1831
1832
1837 enum class SublayerPromptMode : int
1838 {
1839 AlwaysAsk,
1840 AskExcludingRasterBands,
1841 NeverAskSkip,
1842 NeverAskLoadAll,
1843 };
1844 Q_ENUM( SublayerPromptMode )
1845
1846
1854 {
1855 Unknown SIP_MONKEYPATCH_COMPAT_NAME( OriginUnknown ),
1856 Provider SIP_MONKEYPATCH_COMPAT_NAME( OriginProvider ),
1857 Join SIP_MONKEYPATCH_COMPAT_NAME( OriginJoin ),
1858 Edit SIP_MONKEYPATCH_COMPAT_NAME( OriginEdit ),
1859 Expression SIP_MONKEYPATCH_COMPAT_NAME( OriginExpression )
1860 };
1861 Q_ENUM( FieldOrigin )
1862
1863
1870 enum class FieldConfigurationFlag : int SIP_ENUM_BASETYPE( IntFlag )
1871 {
1872 NoFlag = 0,
1873 NotSearchable = 1 << 1,
1874 HideFromWms = 1 << 2,
1875 HideFromWfs = 1 << 3,
1876 };
1877 Q_ENUM( FieldConfigurationFlag )
1878
1879
1887 Q_FLAG( FieldConfigurationFlags )
1888
1894 enum class FieldMetadataProperty : int
1895 {
1896 GeometryCrs = 0x1000,
1897 GeometryWkbType = 0x1001,
1898 CustomProperty = 0x100000,
1899 };
1900 Q_ENUM( FieldMetadataProperty )
1901
1902
1907 enum class SelectionRenderingMode : int
1908 {
1909 Default,
1910 CustomColor,
1911 CustomSymbol,
1912 };
1913 Q_ENUM( SelectionRenderingMode )
1914
1915
1921 {
1922 SetSelection,
1923 AddToSelection,
1924 IntersectSelection,
1925 RemoveFromSelection,
1926 };
1927 Q_ENUM( SelectBehavior )
1928
1929
1935 {
1936 Intersect,
1937 Within,
1938 };
1939 Q_ENUM( SelectGeometryRelationship )
1940
1941
1946 enum class SelectionFlag : int SIP_ENUM_BASETYPE( IntFlag )
1947 {
1948 SingleFeatureSelection = 1 << 0,
1949 ToggleSelection = 1 << 1,
1950 };
1951
1957 Q_DECLARE_FLAGS( SelectionFlags, SelectionFlag )
1958
1960 Q_FLAG( SelectionFlags )
1961
1962
1968 {
1970 EmptyGeometry = 1,
1971 EditFailed = 2,
1972 FetchFeatureFailed = 3,
1973 InvalidLayer = 4,
1974 };
1975 Q_ENUM( VectorEditResult )
1976
1977
1983 {
1984 SemiTransparentCircle,
1985 Cross,
1986 NoMarker,
1987 };
1988 Q_ENUM( VertexMarkerType )
1989
1990
1994 enum class ContentStatus : int
1995 {
1996 NotStarted,
1997 Running,
1998 Finished,
1999 Failed,
2000 Canceled,
2001 };
2002 Q_ENUM( ContentStatus )
2003
2004
2009 enum class GpsConnectionType : int
2010 {
2011 Automatic,
2012 Internal,
2013 Serial,
2014 Gpsd,
2015 };
2016 Q_ENUM( GpsConnectionType )
2017
2018
2023 enum class DeviceConnectionStatus SIP_MONKEYPATCH_SCOPEENUM_UNNEST( Qgis, GpsConnectionStatus ) : int
2024 {
2025 Disconnected,
2026 Connecting,
2027 Connected,
2028 };
2029 Q_ENUM( DeviceConnectionStatus )
2030
2031
2039 {
2040 NoData,
2041 NoFix,
2042 Fix2D,
2043 Fix3D
2044 };
2046
2047
2054 {
2055 Unknown,
2056 Gps,
2057 Glonass,
2058 Galileo,
2059 BeiDou,
2060 Qzss,
2061 Navic,
2062 Sbas,
2063 };
2065
2072 {
2073 Unknown = -1,
2074 Invalid,
2075 GPS,
2076 DGPS,
2077 PPS,
2078 RTK,
2079 FloatRTK,
2080 Estimated,
2081 Manual,
2082 Simulation,
2083 };
2084 Q_ENUM( GpsQualityIndicator )
2085
2086
2091 enum class GpsNavigationStatus : int
2092 {
2093 NotValid,
2094 Safe,
2095 Caution,
2096 Unsafe,
2097 };
2099
2105 enum class GpsInformationComponent : int SIP_ENUM_BASETYPE( IntFlag )
2106 {
2107 Location = 1 << 0,
2108 Altitude = 1 << 1,
2109 GroundSpeed = 1 << 2,
2110 Bearing = 1 << 3,
2111 TotalTrackLength = 1 << 4,
2112 TrackDistanceFromStart = 1 << 5,
2113 Pdop = 1 << 6,
2114 Hdop = 1 << 7,
2115 Vdop = 1 << 8,
2116 HorizontalAccuracy = 1 << 9,
2117 VerticalAccuracy = 1 << 10,
2118 HvAccuracy = 1 << 11,
2119 SatellitesUsed = 1 << 12,
2120 Timestamp = 1 << 13,
2121 TrackStartTime = 1 << 14,
2122 TrackEndTime = 1 << 15,
2123 TrackDistanceSinceLastPoint = 1 << 16,
2124 TrackTimeSinceLastPoint = 1 << 17,
2125 GeoidalSeparation = 1 << 18,
2126 EllipsoidAltitude = 1 << 19,
2127 };
2128
2136 Q_FLAG( GpsInformationComponents )
2137
2138
2143 enum class BabelFormatCapability : int SIP_ENUM_BASETYPE( IntFlag )
2144 {
2145 Import = 1 << 0,
2146 Export = 1 << 1,
2147 Waypoints = 1 << 2,
2148 Routes = 1 << 3,
2149 Tracks = 1 << 4,
2150 };
2151
2154 Q_FLAG( BabelFormatCapabilities )
2155
2156
2162 enum class BabelCommandFlag : int SIP_ENUM_BASETYPE( IntFlag )
2163 {
2164 QuoteFilePaths = 1 << 0,
2165 };
2166
2169 Q_FLAG( BabelCommandFlags )
2170
2171
2176 enum class GpsFeatureType : int
2177 {
2178 Waypoint,
2179 Route,
2180 Track,
2181 };
2182 Q_ENUM( GpsFeatureType )
2183
2184
2192 {
2194 NothingHappened = 1000,
2195 InvalidBaseGeometry,
2196 InvalidInputGeometryType,
2197 SelectionIsEmpty,
2198 SelectionIsGreaterThanOne,
2199 GeometryEngineError,
2200 LayerNotEditable,
2201 // Add part issues
2202 AddPartSelectedGeometryNotFound,
2203 AddPartNotMultiGeometry,
2204 // Add ring issues
2205 AddRingNotClosed,
2206 AddRingNotValid,
2207 AddRingCrossesExistingRings,
2208 AddRingNotInExistingFeature,
2209 // Split features
2210 SplitCannotSplitPoint,
2211 GeometryTypeHasChanged,
2212 };
2213 Q_ENUM( GeometryOperationResult )
2214
2215
2221 {
2222 AllowSelfTouchingHoles SIP_MONKEYPATCH_COMPAT_NAME( FlagAllowSelfTouchingHoles )
2223 = 1 << 0,
2224 };
2225
2228 Q_FLAG( GeometryValidityFlags )
2229
2230
2235 {
2236 QgisInternal SIP_MONKEYPATCH_COMPAT_NAME( ValidatorQgisInternal ),
2237 Geos SIP_MONKEYPATCH_COMPAT_NAME( ValidatorGeos ),
2238 Sfcgal,
2239 };
2240 Q_ENUM( GeometryValidationEngine )
2241
2242
2252 Q_ENUM( BufferSide )
2253
2254
2265 Q_ENUM( EndCapStyle )
2266
2267
2273 {
2274 Round SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleRound ) = 1,
2275 Miter SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleMiter ),
2276 Bevel SIP_MONKEYPATCH_COMPAT_NAME( JoinStyleBevel ),
2277 };
2278 Q_ENUM( JoinStyle )
2279
2280
2285 enum class JoinStyle3D : int
2286 {
2287 Round = 1,
2288 Flat,
2289 CylindersAndSpheres,
2290 };
2291 Q_ENUM( JoinStyle3D )
2292
2293
2298 enum class GeometryBackend : int
2299 {
2300 QGIS = 1,
2301 GEOS,
2302 };
2303 Q_ENUM( GeometryBackend )
2304
2305
2310 enum class GeosCreationFlag : int SIP_ENUM_BASETYPE( IntFlag )
2311 {
2312 RejectOnInvalidSubGeometry = 1 << 0,
2313 SkipEmptyInteriorRings = 1 << 1,
2314 };
2315 Q_ENUM( GeosCreationFlag )
2316
2317
2323 Q_FLAG( GeosCreationFlags )
2324
2330 enum class CoverageValidityResult : int
2331 {
2332 Invalid = 0,
2333 Valid = 1,
2334 Error = 2,
2335 };
2336 Q_ENUM( CoverageValidityResult )
2337
2338
2343 enum class MakeValidMethod : int
2344 {
2345 Linework = 0,
2346 Structure = 1,
2347 };
2348 Q_ENUM( MakeValidMethod )
2349
2350
2358 {
2359 NoFlags = 0,
2360 NoGeometry = 1,
2361 SubsetOfAttributes = 2,
2362 ExactIntersect = 4,
2363 IgnoreStaticNodesDuringExpressionCompilation
2364 = 8,
2365 EmbeddedSymbols = 16,
2366 };
2367 Q_ENUM( FeatureRequestFlag )
2368
2369
2377 Q_FLAG( FeatureRequestFlags )
2378
2387 {
2388 NoFilter SIP_MONKEYPATCH_COMPAT_NAME( FilterNone ),
2390 Expression SIP_MONKEYPATCH_COMPAT_NAME( FilterExpression ),
2392 };
2393 Q_ENUM( FeatureRequestFilterType )
2394
2395
2403 {
2404 NoCheck SIP_MONKEYPATCH_COMPAT_NAME( GeometryNoCheck ) = 0,
2405 SkipInvalid SIP_MONKEYPATCH_COMPAT_NAME( GeometrySkipInvalid ) = 1,
2406 AbortOnInvalid SIP_MONKEYPATCH_COMPAT_NAME( GeometryAbortOnInvalid ) = 2,
2407 };
2408 Q_ENUM( InvalidGeometryCheck )
2409
2410
2415 enum class SpatialFilterType : int
2416 {
2417 NoFilter,
2418 BoundingBox,
2419 DistanceWithin,
2420 };
2421 Q_ENUM( SpatialFilterType )
2422
2423
2428 enum class FileOperationFlag : int SIP_ENUM_BASETYPE( IntFlag )
2429 {
2430 IncludeMetadataFile = 1 << 0,
2431 IncludeStyleFile = 1 << 1,
2432 };
2433
2436 Q_FLAG( FileOperationFlags )
2437
2438
2443 enum class MapLayerProperty : int SIP_ENUM_BASETYPE( IntFlag )
2444 {
2445 UsersCannotToggleEditing
2446 = 1 << 0,
2447 IsBasemapLayer = 1 << 1,
2448 Is3DBasemapLayer = 1 << 2,
2449 };
2450
2453 Q_FLAG( MapLayerProperties )
2454
2455
2460 enum class AutoRefreshMode : int
2461 {
2462 Disabled = 0,
2463 ReloadData = 1,
2464 RedrawOnly = 2,
2465 };
2466 Q_ENUM( AutoRefreshMode )
2467
2468
2473 enum class DataProviderFlag : int SIP_ENUM_BASETYPE( IntFlag )
2474 {
2475 IsBasemapSource = 1 << 1,
2476 FastExtent2D = 1 << 2,
2477 FastExtent3D = 1 << 3,
2478 Is3DBasemapSource = 1 << 4,
2479 };
2480
2483 Q_FLAG( DataProviderFlags )
2484
2485
2492 enum class CrsType : int
2493 {
2494 Unknown,
2495 Geodetic,
2496 Geocentric,
2497 Geographic2d,
2498 Geographic3d,
2499 Vertical,
2500 Projected,
2501 Compound,
2502 Temporal,
2503 Engineering,
2504 Bound,
2505 Other,
2506 DerivedProjected,
2507 };
2508 Q_ENUM( CrsType )
2509
2510
2517 enum class CrsAxisDirection : int
2518 {
2519 North,
2520 NorthNorthEast,
2521 NorthEast,
2522 EastNorthEast,
2523 East,
2524 EastSouthEast,
2525 SouthEast,
2526 SouthSouthEast,
2527 South,
2528 SouthSouthWest,
2529 SouthWest,
2530 WestSouthWest,
2531 West,
2532 WestNorthWest,
2533 NorthWest,
2534 NorthNorthWest,
2535 GeocentricX,
2536 GeocentricY,
2537 GeocentricZ,
2540 Forward,
2541 Aft,
2542 Port,
2543 Starboard,
2544 Clockwise,
2545 CounterClockwise,
2546 ColumnPositive,
2547 ColumnNegative,
2548 RowPositive,
2549 RowNegative,
2550 DisplayRight,
2551 DisplayLeft,
2552 DisplayUp,
2553 DisplayDown,
2554 Future,
2555 Past,
2556 Towards,
2557 AwayFrom,
2558 Unspecified,
2559 };
2560 Q_ENUM( CrsAxisDirection )
2561
2562
2567 enum class CoordinateOrder : int
2568 {
2569 Default,
2570 XY,
2571 YX,
2572 };
2573 Q_ENUM( CoordinateOrder )
2574
2575
2583 {
2584 ShortString,
2585 MediumString,
2586 FullString,
2587 };
2588 Q_ENUM( CrsIdentifierType )
2589
2590
2598 {
2600 WKT1_GDAL
2601 ),
2602 Wkt1Esri SIP_MONKEYPATCH_COMPAT_NAME( WKT1_ESRI ),
2603 Wkt2_2015 SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2015 ),
2604 Wkt2_2015Simplified SIP_MONKEYPATCH_COMPAT_NAME(
2605 WKT2_2015_SIMPLIFIED
2606 ),
2608 WKT2_2019
2609 ),
2610 Wkt2_2019Simplified SIP_MONKEYPATCH_COMPAT_NAME( WKT2_2019_SIMPLIFIED ),
2611 Preferred SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED ) = Wkt2_2019,
2612 PreferredSimplified SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED_SIMPLIFIED )
2613 = Wkt2_2019Simplified,
2614 PreferredGdal SIP_MONKEYPATCH_COMPAT_NAME( WKT_PREFERRED_GDAL ) = Wkt2_2019,
2615 };
2616 Q_ENUM( CrsWktVariant )
2617
2618
2624 {
2625 NoAction = 0,
2626 PromptUserForCrs = 1,
2627 UseProjectCrs = 2,
2628 UseDefaultCrs = 3,
2629 };
2630 Q_ENUM( UnknownLayerCrsBehavior )
2631
2632
2637 enum class Axis : int
2638 {
2639 X,
2640 Y,
2642 };
2643 Q_ENUM( Axis )
2644
2645
2650 enum class AnnotationItemFlag : int SIP_ENUM_BASETYPE( IntFlag )
2651 {
2652 ScaleDependentBoundingBox = 1 << 0,
2653 SupportsReferenceScale = 1 << 1,
2654 SupportsCallouts = 1 << 2,
2655 };
2656
2659 Q_FLAG( AnnotationItemFlags )
2660
2661
2667 {
2668 SpatialBounds = 0,
2669 FixedSize,
2670 RelativeToMapFrame,
2671 };
2672 Q_ENUM( AnnotationPlacementMode )
2673
2674
2679 enum class AnnotationItemGuiFlag : int SIP_ENUM_BASETYPE( IntFlag )
2680 {
2681 FlagNoCreationTools = 1 << 0,
2682 };
2683
2686 Q_FLAG( AnnotationItemGuiFlags )
2687
2688
2693 enum class AnnotationItemNodeType : int
2694 {
2695 VertexHandle,
2696 CalloutHandle,
2697 };
2698 Q_ENUM( AnnotationItemNodeType )
2699
2700
2706 {
2708 Invalid,
2709 ItemCleared,
2710 };
2711 Q_ENUM( AnnotationItemEditOperationResult )
2712
2713
2721 {
2722 Disabled SIP_MONKEYPATCH_COMPAT_NAME( NavigationOff ),
2723 Animated,
2724 FixedRange,
2725 Movie,
2726 };
2727 Q_ENUM( TemporalNavigationMode )
2728
2729
2742 Q_ENUM( AnimationState )
2743
2744
2749 enum class PlaybackOperation : int
2750 {
2751 SkipToStart,
2752 PreviousFrame,
2753 PlayReverse,
2754 Pause,
2755 PlayForward,
2756 NextFrame,
2757 SkipToEnd,
2758 };
2759 Q_ENUM( PlaybackOperation )
2760
2761
2767 {
2768 FixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ModeFixedTemporalRange ) = 0,
2769 FeatureDateTimeInstantFromField SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeInstantFromField ),
2770 FeatureDateTimeStartAndEndFromFields SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndEndFromFields ),
2771 FeatureDateTimeStartAndDurationFromFields SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndDurationFromFields ),
2772 FeatureDateTimeStartAndEndFromExpressions SIP_MONKEYPATCH_COMPAT_NAME( ModeFeatureDateTimeStartAndEndFromExpressions ),
2774 ModeRedrawLayerOnly
2775 ),
2776 };
2777 Q_ENUM( VectorTemporalMode )
2778
2779
2785 {
2786 IncludeBeginExcludeEnd = 0,
2787 IncludeBeginIncludeEnd,
2788 };
2789 Q_ENUM( VectorTemporalLimitMode )
2790
2791
2797 {
2798 HasFixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ProviderHasFixedTemporalRange ) = 0,
2799 StoresFeatureDateTimeInstantInField SIP_MONKEYPATCH_COMPAT_NAME( ProviderStoresFeatureDateTimeInstantInField ),
2800 StoresFeatureDateTimeStartAndEndInSeparateFields SIP_MONKEYPATCH_COMPAT_NAME( ProviderStoresFeatureDateTimeStartAndEndInSeparateFields ),
2801 };
2802 Q_ENUM( VectorDataProviderTemporalMode )
2803
2804
2810 {
2811 FixedTemporalRange SIP_MONKEYPATCH_COMPAT_NAME( ModeFixedTemporalRange ) = 0,
2812 TemporalRangeFromDataProvider SIP_MONKEYPATCH_COMPAT_NAME( ModeTemporalRangeFromDataProvider ) = 1,
2813 RedrawLayerOnly SIP_MONKEYPATCH_COMPAT_NAME( ModeRedrawLayerOnly )
2814 = 2,
2815 FixedRangePerBand = 3,
2816 RepresentsTemporalValues = 4,
2817 FixedDateTime = 5,
2818 };
2819 Q_ENUM( RasterTemporalMode )
2820
2821
2827 {
2828 MatchUsingWholeRange,
2829 MatchExactUsingStartOfRange,
2830 MatchExactUsingEndOfRange,
2831 FindClosestMatchToStartOfRange,
2832 FindClosestMatchToEndOfRange
2833 };
2834 Q_ENUM( TemporalIntervalMatchMethod )
2835
2836
2842 {
2843 RequestedTimesMustExactlyMatchAllAvailableTemporalRanges
2844 = 1 << 0,
2845 };
2846 Q_ENUM( RasterTemporalCapabilityFlag )
2847
2848
2855
2866 Q_ENUM( TransformDirection )
2867
2868
2874 {
2875 BallparkTransformsAreAppropriate
2876 = 1 << 0,
2877 IgnoreImpossibleTransformations
2878 = 1 << 1,
2879 };
2880 Q_ENUM( CoordinateTransformationFlag )
2881
2882
2889
2896 {
2897 Default,
2898 PreferVector,
2899 ForceVector,
2900 };
2901 Q_ENUM( RasterizedRenderingPolicy )
2902
2903
2909 {
2910 Antialiasing = 0x01,
2911 DrawEditingInfo = 0x02,
2912 ForceVectorOutput = 0x04,
2913 UseAdvancedEffects = 0x08,
2914 DrawLabeling = 0x10,
2915 UseRenderingOptimization = 0x20,
2916 DrawSelection = 0x40,
2917 DrawSymbolBounds = 0x80,
2918 RenderMapTile = 0x100,
2919 RenderPartialOutput = 0x200,
2920 RenderPreviewJob = 0x400,
2921 RenderBlocking = 0x800,
2922 LosslessImageRendering
2923 = 0x1000,
2924 Render3DMap = 0x2000,
2925 HighQualityImageTransforms = 0x4000,
2926 SkipSymbolRendering = 0x8000,
2927 ForceRasterMasks = 0x10000,
2928 RecordProfile = 0x20000,
2929 AlwaysUseGlobalMasks
2930 = 0x40000,
2931 };
2932
2935 Q_FLAG( MapSettingsFlags )
2936
2937
2943 {
2944 DrawEditingInfo = 0x01,
2945 ForceVectorOutput = 0x02,
2946 UseAdvancedEffects = 0x04,
2947 UseRenderingOptimization = 0x08,
2948 DrawSelection = 0x10,
2949 DrawSymbolBounds = 0x20,
2950 RenderMapTile = 0x40,
2951 Antialiasing = 0x80,
2952 RenderPartialOutput = 0x100,
2953 RenderPreviewJob = 0x200,
2954 RenderBlocking = 0x400,
2955 RenderSymbolPreview = 0x800,
2956 LosslessImageRendering = 0x1000,
2957 ApplyScalingWorkaroundForTextRendering = 0x2000,
2958 Render3DMap = 0x4000,
2959 ApplyClipAfterReprojection = 0x8000,
2960 RenderingSubSymbol = 0x10000,
2961 HighQualityImageTransforms = 0x20000,
2962 SkipSymbolRendering = 0x40000,
2963 RecordProfile = 0x80000,
2964 AlwaysUseGlobalMasks = 0x100000,
2965 DisableSymbolClippingToExtent = 0x200000,
2966 RenderLayerTree = 0x400000
2967 };
2968
2971 Q_FLAG( RenderContextFlags )
2972
2973
2978 enum class MapLayerRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
2979 {
2980 RenderPartialOutputs = 1 << 0,
2981 RenderPartialOutputOverPreviousCachedImage = 1 << 1,
2982 AffectsLabeling = 1 << 2,
2983 };
2984 Q_ENUM( MapLayerRendererFlag )
2985
2986
2992 Q_FLAG( MapLayerRendererFlags )
2993
2999 enum class PaintEffectFlag : int SIP_ENUM_BASETYPE( IntFlag )
3000 {
3001 RequiresRasterization = 1 << 0,
3002 };
3003 Q_ENUM( PaintEffectFlag )
3004
3005
3011 Q_FLAG( PaintEffectFlags )
3012
3013 // refs for below dox: https://github.com/qgis/QGIS/pull/1286#issuecomment-39806854
3014 // https://github.com/qgis/QGIS/pull/8573#issuecomment-445585826
3015
3021 {
3023 TextFormatAlwaysOutlines
3024 ),
3026 TextFormatAlwaysText
3027 ),
3028 PreferText,
3029 };
3030 Q_ENUM( TextRenderFormat )
3031
3032
3040 {
3041 UseAllLabels = 1 << 1,
3042 UsePartialCandidates = 1 << 2,
3043 // TODO QGIS 5.0: remove
3044 RenderOutlineLabels = 1 << 3,
3045 DrawLabelRectOnly = 1 << 4,
3046 DrawCandidates = 1 << 5,
3047 DrawUnplacedLabels = 1 << 6,
3048 CollectUnplacedLabels = 1 << 7,
3049 DrawLabelMetrics = 1 << 8,
3050 IgnoreObstacles = 1 << 9,
3051 SingleCandidateOnly = 1 << 10,
3052 IgnoreOverlaps = 1 << 11,
3053 DisableSearchTree = 1 << 12,
3054 };
3055 Q_ENUM( LabelingFlag )
3056
3057
3065 Q_FLAG( LabelingFlags )
3066
3075 {
3076 Version1 SIP_MONKEYPATCH_COMPAT_NAME( PlacementEngineVersion1 ),
3077 Version2 SIP_MONKEYPATCH_COMPAT_NAME( PlacementEngineVersion2 ),
3078 };
3079 Q_ENUM( LabelPlacementEngineVersion )
3080
3081
3089 {
3090 Horizontal SIP_MONKEYPATCH_COMPAT_NAME( HorizontalOrientation ),
3091 Vertical SIP_MONKEYPATCH_COMPAT_NAME( VerticalOrientation ),
3092 RotationBased SIP_MONKEYPATCH_COMPAT_NAME( RotationBasedOrientation ),
3093 };
3094 Q_ENUM( TextOrientation )
3095
3096
3104 {
3106 Point,
3108 RectangleCapHeightBased,
3109 RectangleAscentBased,
3110 };
3111 Q_ENUM( TextLayoutMode )
3112
3113
3121 {
3122 Text = 1 << 0,
3123 Buffer = 1 << 1,
3124 Background = 1 << 2,
3125 Shadow = 1 << 3,
3126 };
3127 Q_ENUM( TextComponent )
3128
3129
3134 Q_DECLARE_FLAGS( TextComponents, TextComponent )
3135 Q_FLAG( TextComponents )
3136
3151 Q_ENUM( TextHorizontalAlignment )
3152
3153
3164 {
3166 VerticalCenter SIP_MONKEYPATCH_COMPAT_NAME( AlignVCenter ),
3167 Bottom SIP_MONKEYPATCH_COMPAT_NAME( AlignBottom ),
3168 };
3169 Q_ENUM( TextVerticalAlignment )
3170
3171
3180 {
3181 Normal,
3182 SuperScript,
3183 SubScript,
3184 };
3185 Q_ENUM( TextCharacterVerticalAlignment )
3186
3187
3193 {
3194 TruncateStringWhenLineIsTooShort = 1 << 0,
3195 UseBaselinePlacement = 1 << 1,
3196 UprightCharactersOnly = 1 << 2,
3197 ExtendLineToFitText = 1 << 3,
3198 };
3199 Q_ENUM( CurvedTextFlag )
3200
3201
3207
3216 {
3217 Distance = 0,
3218 SnapToGrid = 1,
3219 Visvalingam = 2,
3220 SnappedToGridGlobal = 3,
3221 };
3222 Q_ENUM( VectorSimplificationAlgorithm )
3223
3224
3232 {
3233 NoSimplification = 0,
3234 GeometrySimplification = 1,
3235 AntialiasingSimplification = 2,
3236 FullSimplification = 3,
3237 };
3238 Q_ENUM( VectorRenderingSimplificationFlag )
3239
3240
3249
3256 {
3257 Generic,
3258 ShadowOffset,
3259 BlurSize,
3260 GlowSpread,
3261 };
3262 Q_ENUM( RenderSubcomponentProperty )
3263
3264
3270 {
3271 SymbolLayer,
3272 Label,
3273 };
3274 Q_ENUM( SelectiveMaskSourceType )
3275
3276
3281 {
3282 Segment SIP_MONKEYPATCH_COMPAT_NAME( SegmentVertex ) = 1,
3283 Curve SIP_MONKEYPATCH_COMPAT_NAME( CurveVertex ) = 2,
3284 ControlPoint SIP_MONKEYPATCH_COMPAT_NAME( ControlPointVertex ) = 3,
3285 };
3286 Q_ENUM( VertexType )
3287
3288
3296 {
3297 Square,
3298 Diamond,
3299 Pentagon,
3300 Hexagon,
3301 Triangle,
3302 EquilateralTriangle,
3303 Star,
3304 Arrow,
3305 Circle,
3306 Cross,
3307 CrossFill,
3308 Cross2,
3309 Line,
3310 ArrowHead,
3311 ArrowHeadFilled,
3312 SemiCircle,
3313 ThirdCircle,
3314 QuarterCircle,
3315 QuarterSquare,
3316 HalfSquare,
3317 DiagonalHalfSquare,
3318 RightHalfTriangle,
3319 LeftHalfTriangle,
3320 Octagon,
3321 SquareWithCorners,
3322 AsteriskFill,
3323 HalfArc,
3324 ThirdArc,
3325 QuarterArc,
3326 ParallelogramRight,
3327 ParallelogramLeft,
3328 Trapezoid,
3329 Shield,
3330 DiamondStar,
3331 Heart,
3332 Decagon,
3333 RoundedSquare,
3334 };
3335 Q_ENUM( MarkerShape )
3336
3337
3345 {
3346 Interval = 1 << 0,
3347 Vertex = 1 << 1,
3348 LastVertex = 1 << 2,
3349 FirstVertex = 1 << 3,
3350 CentralPoint = 1 << 4,
3351 CurvePoint = 1 << 5,
3352 SegmentCenter = 1 << 6,
3353 InnerVertices = 1 << 7,
3354 };
3355 Q_ENUM( MarkerLinePlacement )
3357 Q_FLAG( MarkerLinePlacements )
3358
3365 {
3366 IntervalCartesian2D = 1 << 0,
3367 IntervalZ = 1 << 1,
3368 IntervalM = 1 << 2,
3369 Vertex = 1 << 3,
3370 };
3371 Q_ENUM( LinearReferencingPlacement )
3372
3373
3379 {
3380 CartesianDistance2D,
3381 Z,
3382 M,
3383 };
3384 Q_ENUM( LinearReferencingLabelSource )
3385
3386
3394 {
3395 SimpleTwoColor,
3396 ColorRamp,
3397 };
3398 Q_ENUM( GradientColorSource )
3399
3400
3413 Q_ENUM( GradientType )
3414
3415
3423 {
3424 Feature,
3425 Viewport,
3426 };
3427 Q_ENUM( SymbolCoordinateReference )
3428
3429
3443 Q_ENUM( GradientSpread )
3444
3445
3453 {
3454 Absolute SIP_MONKEYPATCH_COMPAT_NAME( AbsoluteCount ),
3455 DensityBased SIP_MONKEYPATCH_COMPAT_NAME( DensityBasedCount ),
3456 };
3457 Q_ENUM( PointCountMethod )
3458
3459
3464 enum class MarkerClipMode : int
3465 {
3466 NoClipping,
3467 Shape,
3468 CentroidWithin,
3469 CompletelyWithin,
3470 };
3471 Q_ENUM( MarkerClipMode )
3472
3473
3478 enum class LineClipMode : int
3479 {
3480 ClipPainterOnly,
3481 ClipToIntersection,
3482 NoClipping,
3483 };
3484 Q_ENUM( LineClipMode )
3485
3486
3492 {
3493 NoRule,
3494 FullDash,
3495 HalfDash,
3496 FullGap,
3497 HalfGap,
3498 };
3499 Q_ENUM( DashPatternLineEndingRule )
3500
3501
3507 {
3508 ScaleBothDashAndGap,
3509 ScaleDashOnly,
3510 ScaleGapOnly,
3511 };
3512 Q_ENUM( DashPatternSizeAdjustment )
3513
3514
3526 Q_ENUM( GraduatedMethod )
3527
3528
3534 {
3535 NoLabels,
3536 EveryLabel,
3537 FirstLabel,
3538 LastLabel,
3539 FirstAndLastLabels,
3540 };
3541 Q_ENUM( PlotAxisSuffixPlacement )
3542
3543
3544
3549 enum class PlotAxisType
3550 {
3551 Interval,
3552 Categorical,
3553 };
3554 Q_ENUM( PlotAxisType )
3555
3556
3561 enum class PieChartLabelType : int
3562 {
3563 NoLabels,
3564 Categories,
3565 Values,
3566 };
3567 Q_ENUM( PieChartLabelType )
3568
3569
3573 enum class DpiMode
3574 {
3575 All = 7,
3576 Off = 0,
3577 QGIS = 1,
3578 UMN = 2,
3579 GeoServer = 4,
3580 };
3581 Q_ENUM( DpiMode )
3582
3583
3588 {
3589 Undefined = 0,
3590 StandardDpi = 1,
3591 HighDpi = 2,
3592 };
3593 Q_ENUM( TilePixelRatio )
3594
3595 // NOTE -- the hardcoded numbers here must match QFont::Capitalization!
3596
3597
3605 {
3606 MixedCase = 0,
3607 AllUppercase = 1,
3608 AllLowercase = 2,
3609 ForceFirstLetterToCapital = 4,
3610 SmallCaps = 5,
3611 TitleCase = 1004,
3612 UpperCamelCase = 1005,
3613 AllSmallCaps = 1006,
3614 };
3615 Q_ENUM( Capitalization )
3616
3617
3622 enum class TextRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
3623 {
3624 WrapLines = 1 << 0,
3625 };
3626 Q_ENUM( TextRendererFlag )
3628 Q_FLAG( TextRendererFlags )
3629
3636 {
3637 MapBox,
3638 Esri,
3639 };
3641
3648 {
3649 Clockwise,
3650 CounterClockwise,
3651 NoOrientation,
3652 };
3653 Q_ENUM( AngularDirection )
3654
3655
3660 enum class RendererUsage : int
3661 {
3662 View,
3663 Export,
3664 Unknown,
3665 };
3666 Q_ENUM( RendererUsage )
3667
3668
3673 enum class MapCanvasFlag : int SIP_ENUM_BASETYPE( IntFlag )
3674 {
3675 ShowMainAnnotationLayer = 1 << 0,
3676 };
3677 Q_ENUM( MapCanvasFlag )
3678
3679
3684 Q_DECLARE_FLAGS( MapCanvasFlags, MapCanvasFlag )
3685 Q_FLAG( MapCanvasFlags )
3686
3692 enum class ViewSyncModeFlag : int SIP_ENUM_BASETYPE( IntFlag )
3693 {
3694 Sync3DTo2D = 1 << 0,
3695 Sync2DTo3D = 1 << 1,
3696 };
3697 Q_ENUM( ViewSyncModeFlag )
3699
3706 {
3707 Always,
3708 WhenOutsideVisibleExtent,
3709 Never,
3710 };
3711 Q_ENUM( MapRecenteringMode )
3712
3713
3718 enum class HistoryProviderBackend : int SIP_ENUM_BASETYPE( IntFlag )
3719 {
3720 LocalProfile = 1 << 0,
3721 // Project = 1 << 1, //!< QGIS Project (not yet implemented)
3722 };
3723 Q_ENUM( HistoryProviderBackend )
3725 Q_FLAG( HistoryProviderBackends )
3726
3732 enum class QueryStorageBackend : int
3733 {
3734 LocalProfile,
3735 CurrentProject,
3736 };
3737 Q_ENUM( QueryStorageBackend )
3738
3739
3747 {
3748 MapLayer SIP_MONKEYPATCH_COMPAT_NAME( TypeMapLayer ) = -2,
3749 VectorAnyGeometry SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorAnyGeometry ) = -1,
3750 VectorPoint SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorPoint ) = 0,
3751 VectorLine SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorLine ) = 1,
3752 VectorPolygon SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorPolygon ) = 2,
3753 Raster SIP_MONKEYPATCH_COMPAT_NAME( TypeRaster ) = 3,
3754 File SIP_MONKEYPATCH_COMPAT_NAME( TypeFile ) = 4,
3755 Vector SIP_MONKEYPATCH_COMPAT_NAME( TypeVector ) = 5,
3756 Mesh SIP_MONKEYPATCH_COMPAT_NAME( TypeMesh ) = 6,
3757 Plugin SIP_MONKEYPATCH_COMPAT_NAME( TypePlugin ) = 7,
3758 PointCloud SIP_MONKEYPATCH_COMPAT_NAME( TypePointCloud ) = 8,
3759 Annotation SIP_MONKEYPATCH_COMPAT_NAME( TypeAnnotation ) = 9,
3760 VectorTile SIP_MONKEYPATCH_COMPAT_NAME( TypeVectorTile ) = 10,
3761 TiledScene = 11
3762 };
3763 Q_ENUM( ProcessingSourceType )
3764
3765
3766
3774 {
3775 DeemphasiseSearchResults SIP_MONKEYPATCH_COMPAT_NAME( FlagDeemphasiseSearchResults )
3776 = 1 << 1,
3777 CompatibleWithVirtualRaster SIP_MONKEYPATCH_COMPAT_NAME( FlagCompatibleWithVirtualRaster ) = 1 << 2,
3778 };
3780
3789 Q_FLAG( ProcessingProviderFlags )
3790
3791
3799 {
3800 HideFromToolbox SIP_MONKEYPATCH_COMPAT_NAME( FlagHideFromToolbox ) = 1 << 1,
3801 HideFromModeler SIP_MONKEYPATCH_COMPAT_NAME( FlagHideFromModeler ) = 1 << 2,
3802 SupportsBatch SIP_MONKEYPATCH_COMPAT_NAME( FlagSupportsBatch ) = 1 << 3,
3803 CanCancel SIP_MONKEYPATCH_COMPAT_NAME( FlagCanCancel ) = 1 << 4,
3804 RequiresMatchingCrs SIP_MONKEYPATCH_COMPAT_NAME( FlagRequiresMatchingCrs ) = 1 << 5,
3805 NoThreading SIP_MONKEYPATCH_COMPAT_NAME( FlagNoThreading ) = 1 << 6,
3806 DisplayNameIsLiteral SIP_MONKEYPATCH_COMPAT_NAME( FlagDisplayNameIsLiteral ) = 1 << 7,
3807 SupportsInPlaceEdits SIP_MONKEYPATCH_COMPAT_NAME( FlagSupportsInPlaceEdits ) = 1 << 8,
3808 KnownIssues SIP_MONKEYPATCH_COMPAT_NAME( FlagKnownIssues ) = 1 << 9,
3809 CustomException SIP_MONKEYPATCH_COMPAT_NAME( FlagCustomException ) = 1 << 10,
3810 PruneModelBranchesBasedOnAlgorithmResults SIP_MONKEYPATCH_COMPAT_NAME( FlagPruneModelBranchesBasedOnAlgorithmResults ) = 1 << 11,
3811 SkipGenericModelLogging SIP_MONKEYPATCH_COMPAT_NAME( FlagSkipGenericModelLogging ) = 1 << 12,
3812 NotAvailableInStandaloneTool SIP_MONKEYPATCH_COMPAT_NAME( FlagNotAvailableInStandaloneTool ) = 1 << 13,
3813 RequiresProject SIP_MONKEYPATCH_COMPAT_NAME( FlagRequiresProject ) = 1 << 14,
3814 SecurityRisk = 1 << 15,
3815 Deprecated SIP_MONKEYPATCH_COMPAT_NAME( FlagDeprecated ) = HideFromToolbox | HideFromModeler,
3816 };
3818
3827 Q_FLAG( ProcessingAlgorithmFlags )
3828
3829
3835 {
3836 RegeneratesPrimaryKey = 1 << 0,
3837 RegeneratesPrimaryKeyInSomeScenarios = 1 << 1,
3838 RespectsEllipsoid = 1 << 2,
3839 };
3840 Q_ENUM( ProcessingAlgorithmDocumentationFlag )
3841
3842
3849
3859 {
3860 NotAvailable,
3861 Available,
3862 };
3863 Q_ENUM( ProcessingPropertyAvailability )
3864
3865
3873 {
3874 DefaultLevel = 0,
3875 Verbose,
3876 ModelDebug,
3877 };
3878 Q_ENUM( ProcessingLogLevel )
3879
3880
3888 {
3889 Standard,
3890 Batch,
3891 Modeler,
3892 };
3893 Q_ENUM( ProcessingMode )
3894
3895
3903 {
3904 OverrideDefaultGeometryCheck SIP_MONKEYPATCH_COMPAT_NAME( FlagOverrideDefaultGeometryCheck )
3905 = 1 << 0,
3906 CreateIndividualOutputPerInputFeature SIP_MONKEYPATCH_COMPAT_NAME( FlagCreateIndividualOutputPerInputFeature )
3907 = 1 << 1,
3908 };
3909 Q_ENUM( ProcessingFeatureSourceDefinitionFlag )
3910
3911
3920
3929 {
3930 SkipGeometryValidityChecks SIP_MONKEYPATCH_COMPAT_NAME( FlagSkipGeometryValidityChecks ) = 1 << 1,
3931 };
3932 Q_ENUM( ProcessingFeatureSourceFlag )
3933
3934
3943
3955 {
3956 ExposeToModeler = 1
3957 };
3958 Q_ENUM( ProcessingParameterTypeFlag )
3959
3960
3972
3981 {
3982 Advanced SIP_MONKEYPATCH_COMPAT_NAME( FlagAdvanced ) = 1 << 1,
3983 Hidden SIP_MONKEYPATCH_COMPAT_NAME( FlagHidden ) = 1 << 2,
3984 Optional SIP_MONKEYPATCH_COMPAT_NAME( FlagOptional ) = 1 << 3,
3985 IsModelOutput SIP_MONKEYPATCH_COMPAT_NAME( FlagIsModelOutput ) = 1 << 4,
3986 };
3987 Q_ENUM( ProcessingParameterFlag )
3988
3989
3997 Q_FLAG( ProcessingParameterFlags )
3998
4011 Q_ENUM( ProcessingFileParameterBehavior )
4012
4013
4025 Q_ENUM( ProcessingNumberParameterType )
4026
4027
4035 {
4036 Any = -1,
4037 Numeric = 0,
4038 String = 1,
4039 DateTime = 2,
4040 Binary = 3,
4041 Boolean = 4,
4042 };
4043 Q_ENUM( ProcessingFieldParameterDataType )
4044
4045
4058 Q_ENUM( ProcessingDateTimeParameterDataType )
4059
4060
4066 {
4067 ModelParameter,
4068 ChildOutput,
4069 StaticValue,
4070 Expression,
4071 ExpressionText,
4072 ModelOutput,
4073 };
4074 Q_ENUM( ProcessingModelChildParameterSource )
4075
4076
4082 {
4083 NotExecuted,
4085 Failed,
4086 };
4087 Q_ENUM( ProcessingModelChildAlgorithmExecutionStatus )
4088
4089
4097 {
4098 Vertices,
4099 StructureLines,
4100 BreakLines
4101 };
4102 Q_ENUM( ProcessingTinInputLayerType )
4103
4104
4114 Q_ENUM( CrsDefinitionFormat )
4115
4116
4124 enum class FieldDomainSplitPolicy : int
4125 {
4126 DefaultValue,
4127 Duplicate,
4128 GeometryRatio,
4129 UnsetField,
4130 };
4131 Q_ENUM( FieldDomainSplitPolicy )
4132
4133
4141 enum class FieldDomainMergePolicy : int
4142 {
4143 DefaultValue,
4144 Sum,
4145 GeometryWeighted,
4146 UnsetField,
4147 LargestGeometry,
4148 MinimumValue,
4149 MaximumValue,
4150 SetToNull,
4151 };
4152 Q_ENUM( FieldDomainMergePolicy )
4153
4154
4161 enum class FieldDuplicatePolicy : int
4162 {
4163 DefaultValue,
4164 Duplicate,
4165 UnsetField,
4166 };
4167 Q_ENUM( FieldDuplicatePolicy )
4168
4169
4174 enum class FieldDomainType : int
4175 {
4176 Coded,
4177 Range,
4178 Glob,
4179 };
4180 Q_ENUM( FieldDomainType )
4181
4182
4187 enum class TransactionMode : int
4188 {
4189 Disabled = 0,
4190 AutomaticGroups = 1,
4191 BufferedGroups = 2,
4192 };
4193 Q_ENUM( TransactionMode )
4194
4195
4200 enum class AltitudeClamping : int
4201 {
4202 Absolute,
4203 Relative,
4204 Terrain,
4205 };
4206 Q_ENUM( AltitudeClamping )
4207
4208
4213 enum class AltitudeBinding : int
4214 {
4215 Vertex,
4216 Centroid,
4217 };
4218 Q_ENUM( AltitudeBinding )
4219
4220
4225 enum class RangeLimits : int
4226 {
4227 IncludeBoth = 0,
4228 IncludeLowerExcludeUpper,
4229 ExcludeLowerIncludeUpper,
4230 ExcludeBoth,
4231 };
4232 Q_ENUM( RangeLimits )
4233
4234
4239 enum class RasterElevationMode : int
4240 {
4241 FixedElevationRange = 0,
4242 RepresentsElevationSurface = 1,
4243 FixedRangePerBand = 2,
4244 DynamicRangePerBand = 3,
4245 };
4246 Q_ENUM( RasterElevationMode )
4247
4248
4253 enum class MeshElevationMode : int
4254 {
4255 FixedElevationRange = 0,
4256 FromVertices = 1,
4257 FixedRangePerGroup = 2,
4258 };
4259 Q_ENUM( MeshElevationMode )
4260
4261
4267 {
4268 NoConstraint,
4269 Perpendicular,
4270 Parallel
4271 };
4272 Q_ENUM( BetweenLineConstraint )
4273
4274
4279 enum class LineExtensionSide : int
4280 {
4281 BeforeVertex,
4282 AfterVertex,
4283 NoVertex,
4284 };
4285 Q_ENUM( LineExtensionSide )
4286
4287
4288
4292 enum class CadConstraintType : int
4293 {
4294 Generic,
4295 Angle,
4296 Distance,
4297 XCoordinate,
4298 YCoordinate,
4299 ZValue,
4300 MValue,
4301 };
4302 Q_ENUM( CadConstraintType )
4303
4304
4309 {
4310 Hidden,
4311 Cartesian,
4312 Ellipsoidal,
4313 };
4314 Q_ENUM( CadMeasurementDisplayType )
4315
4316
4321 enum class ProjectFlag : int SIP_ENUM_BASETYPE( IntFlag )
4322 {
4323 EvaluateDefaultValuesOnProviderSide = 1 << 0,
4324 TrustStoredLayerStatistics
4325 = 1 << 1,
4326 RememberLayerEditStatusBetweenSessions = 1 << 2,
4327 RememberAttributeTableWindowsBetweenSessions = 1 << 3,
4328 };
4329 Q_ENUM( ProjectFlag )
4330 Q_DECLARE_FLAGS( ProjectFlags, ProjectFlag )
4331 Q_FLAG( ProjectFlags )
4332
4338 enum class PlotToolFlag : int SIP_ENUM_BASETYPE( IntFlag )
4339 {
4340 ShowContextMenu = 1 << 0,
4341 };
4342 Q_ENUM( PlotToolFlag )
4343 Q_DECLARE_FLAGS( PlotToolFlags, PlotToolFlag )
4344 Q_FLAG( PlotToolFlags )
4345
4353 enum class Map3DDebugFlag : int SIP_ENUM_BASETYPE( IntFlag )
4354 {
4355 ShowTerrainBoundingBoxes = 1 << 0,
4356 ShowTerrainTileInfo = 1 << 1,
4357 ShowCameraViewCenter = 1 << 2,
4358 ShowCameraRotationCenter = 1 << 3,
4359 ShowLightSourceOrigins = 1 << 4,
4360 ShowFPS = 1 << 5,
4361 ShowDebugPanel = 1 << 6,
4362 };
4363 Q_ENUM( Map3DDebugFlag )
4365 Q_FLAG( Map3DDebugFlags )
4366
4372 enum class Map3DProjectionType : int
4373 {
4374 Orthographic = 0,
4375 Perspective = 1,
4376 };
4377 Q_ENUM( Map3DProjectionType )
4378
4379
4386 enum class Point3DShape : int
4387 {
4388 Cylinder,
4389 Sphere,
4390 Cone,
4391 Cube,
4392 Torus,
4393 Plane,
4394 ExtrudedText,
4395 Model,
4396 Billboard,
4397 };
4398 Q_ENUM( Point3DShape )
4399
4400
4409 {
4410 Triangles,
4411 Lines,
4412 InstancedPoints,
4413 Points,
4414 TrianglesWithFixedTexture,
4415 TrianglesFromModel,
4416 TrianglesDataDefined,
4417 Billboards,
4418 };
4419 Q_ENUM( MaterialRenderingTechnique )
4420
4421
4426 enum class InstancedMaterialFlag : int SIP_ENUM_BASETYPE( IntFlag )
4427 {
4428 DataDefinedScale = 1 << 0,
4429 DataDefinedRotation = 1 << 1,
4430 };
4431 Q_ENUM( InstancedMaterialFlag )
4433 Q_FLAG( InstancedMaterialFlags )
4434
4440 enum class BillboardScaleMode : int
4441 {
4442 ViewIndependent,
4443 Perspective
4444 };
4445 Q_ENUM( BillboardScaleMode )
4446
4447
4452 enum class TextureFilterQuality : int
4453 {
4454 Trilinear,
4455 Anisotropic2x,
4456 Anisotropic4x,
4457 Anisotropic8x,
4458 Anisotropic16x,
4459 };
4460 Q_ENUM( TextureFilterQuality )
4461
4462
4467 enum class ShadowQuality : int
4468 {
4469 Low,
4470 Medium,
4471 High,
4472 VeryHigh,
4473 Extreme,
4474 };
4475 Q_ENUM( ShadowQuality )
4476
4477
4482 enum class LightSourceType : int
4483 {
4484 Point,
4485 Directional,
4486 Sun,
4487 };
4488 Q_ENUM( LightSourceType )
4489
4490
4494 enum class Map3DBackgroundType : int
4495 {
4496 NoBackground,
4497 FixedGradientBackground,
4498 DistinctTextureSkybox,
4499 };
4500 Q_ENUM( Map3DBackgroundType )
4501
4502
4507 enum class SkyboxCubeMapping : int
4508 {
4509 NativeZUp,
4510 OpenGLYUp,
4511 GodotYUp,
4512 UnrealEngineZUp,
4513 LeftHandedYUpMirrored,
4514 };
4515 Q_ENUM( SkyboxCubeMapping )
4516
4517
4522 enum class NavigationMode : int
4523 {
4524 TerrainBased,
4525 Walk,
4526 GlobeTerrainBased
4527 };
4528 Q_ENUM( NavigationMode )
4529
4530
4535 enum class SceneMode : int
4536 {
4537 Local,
4538 Globe
4539 };
4540 Q_ENUM( SceneMode )
4541
4542
4547 enum class VerticalAxisInversion : int SIP_ENUM_BASETYPE( IntFlag )
4548 {
4549 WhenRotatingDragging = 1 << 0,
4550 WhenRotatingCaptured = 1 << 1,
4551 WhenPivoting = 1 << 2,
4552
4553 // Legacy aliases for old flying-only enum:
4554
4555 Never = WhenRotatingDragging | WhenRotatingCaptured | WhenPivoting,
4556 WhenDragging = WhenRotatingCaptured | WhenPivoting,
4557 Always = WhenPivoting,
4558 };
4559 Q_ENUM( VerticalAxisInversion )
4562
4569 enum class ToneMappingMethod : int
4570 {
4571 Clamp,
4572 Aces,
4573 };
4574 Q_ENUM( ToneMappingMethod )
4575
4576
4581 enum class Export3DSceneFormat : int
4582 {
4583 Obj,
4584 StlAscii
4585 };
4586 Q_ENUM( Export3DSceneFormat )
4587
4588
4594 {
4595 Line,
4596 FillBelow,
4597 FillAbove,
4598 };
4600
4606 enum class VectorProfileType : int
4607 {
4608 IndividualFeatures,
4609 ContinuousSurface,
4610 };
4612
4618 enum class PointCloudProfileType : int
4619 {
4620 IndividualPoints,
4621 TriangulatedSurface,
4622 };
4624
4630 enum class ProfileGeneratorFlag : int SIP_ENUM_BASETYPE( IntFlag )
4631 {
4632 RespectsMaximumErrorMapUnit = 1 << 0,
4633 RespectsDistanceRange = 1 << 1,
4634 RespectsElevationRange = 1 << 2,
4635 };
4636 Q_ENUM( ProfileGeneratorFlag )
4638 Q_FLAG( ProfileGeneratorFlags )
4639
4645 enum class ProfileExportType : int
4646 {
4647 Features3D,
4648 Profile2D,
4649 DistanceVsElevationTable,
4650 };
4652
4659 {
4660 Square,
4661 Circle,
4662 };
4663 Q_ENUM( PointCloudSymbol )
4664
4665
4671 {
4672 Default,
4673 BottomToTop,
4674 TopToBottom,
4675 };
4676 Q_ENUM( PointCloudDrawOrder )
4677
4678
4686 {
4687 AllowIntersections,
4688 AvoidIntersectionsCurrentLayer,
4689 AvoidIntersectionsLayers,
4690 };
4691 Q_ENUM( AvoidIntersectionsMode )
4692
4693
4701 {
4702 Qgz,
4703 Qgs,
4704 };
4705 Q_ENUM( ProjectFileFormat )
4706
4707
4715 {
4716 DontResolveLayers SIP_MONKEYPATCH_COMPAT_NAME( FlagDontResolveLayers )
4717 = 1 << 0,
4718 DontLoadLayouts SIP_MONKEYPATCH_COMPAT_NAME( FlagDontLoadLayouts )
4719 = 1 << 1,
4720 TrustLayerMetadata SIP_MONKEYPATCH_COMPAT_NAME( FlagTrustLayerMetadata )
4721 = 1 << 2,
4722 DontStoreOriginalStyles SIP_MONKEYPATCH_COMPAT_NAME( FlagDontStoreOriginalStyles ) = 1 << 3,
4723 DontLoad3DViews SIP_MONKEYPATCH_COMPAT_NAME( FlagDontLoad3DViews ) = 1 << 4,
4724 DontLoadProjectStyles = 1 << 5,
4725 ForceReadOnlyLayers = 1 << 6,
4726 DontUpgradeAnnotations = 1 << 7,
4727 };
4728 Q_ENUM( ProjectReadFlag )
4729
4730
4738 Q_FLAG( ProjectReadFlags )
4739
4748 enum class ProjectCapability : int SIP_ENUM_BASETYPE( IntFlag )
4749 {
4750 ProjectStyles = 1 << 0,
4751 };
4752 Q_ENUM( ProjectCapability )
4753
4754
4760 Q_FLAG( ProjectCapabilities )
4761
4768 {
4769 Vector,
4770 Raster,
4771 RasterDem,
4772 GeoJson,
4773 Image,
4774 Video,
4775 Unknown,
4776 };
4777 Q_ENUM( MapBoxGlStyleSourceType )
4778
4779
4787 {
4788 FeatureServer SIP_MONKEYPATCH_COMPAT_NAME( FeatureService ),
4789 MapServer SIP_MONKEYPATCH_COMPAT_NAME( MapService ),
4790 ImageServer SIP_MONKEYPATCH_COMPAT_NAME( ImageService ),
4791 GlobeServer,
4792 GPServer,
4793 GeocodeServer,
4794 Unknown,
4795 SceneServer,
4796 };
4797 Q_ENUM( ArcGisRestServiceType )
4798
4799
4808 {
4809 Map = 1 << 0,
4810 Query = 1 << 1,
4811 Update = 1 << 2,
4812 Delete = 1 << 3,
4813 Create = 1 << 4,
4814 Image = 1 << 5,
4815 TilesOnly = 1 << 6,
4816 };
4817 Q_ENUM( ArcGisRestServiceCapability )
4818
4819
4826
4835 {
4836 Normal,
4837 Generated,
4838 };
4839 Q_ENUM( RelationshipType )
4840
4841
4849 {
4850 Association,
4851 Composition,
4852 };
4853 Q_ENUM( RelationshipStrength )
4854
4855
4861 {
4862 OneToOne,
4863 OneToMany,
4864 ManyToOne,
4865 ManyToMany,
4866 };
4867 Q_ENUM( RelationshipCardinality )
4868
4869
4874 enum class RelationshipCapability : int SIP_ENUM_BASETYPE( IntFlag )
4875 {
4876 MultipleFieldKeys = 1 << 0,
4877 ForwardPathLabel = 1 << 1,
4878 BackwardPathLabel = 1 << 2,
4879 };
4880 Q_ENUM( RelationshipCapability )
4881
4882
4888 Q_FLAG( RelationshipCapabilities )
4889
4895 enum class CoordinateDisplayType : int
4896 {
4897 MapCrs,
4898 MapGeographic,
4899 CustomCrs,
4900 };
4901 Q_ENUM( CoordinateDisplayType )
4902
4903
4908 enum class SettingsOrigin : int
4909 {
4910 Any,
4911 Global,
4912 Local,
4913 };
4914 Q_ENUM( SettingsOrigin )
4915
4916
4921 enum class ScriptLanguage : int
4922 {
4923 Css,
4924 QgisExpression,
4925 Html,
4926 JavaScript,
4927 Json,
4928 Python,
4929 R,
4930 Sql,
4931 Batch,
4932 Bash,
4933 Unknown,
4934 };
4935 Q_ENUM( ScriptLanguage )
4936
4937
4945 {
4946 Reformat = 1 << 0,
4947 CheckSyntax = 1 << 1,
4948 ToggleComment = 1 << 2,
4949 };
4950 Q_ENUM( ScriptLanguageCapability )
4951
4952
4959
4966 {
4967 AboveInsertionPoint,
4968 TopOfTree,
4969 OptimalInInsertionGroup,
4970 };
4971 Q_ENUM( LayerTreeInsertionMethod )
4972
4973
4979 {
4980 LayerProperties = 0,
4981 AttributeTable = 1,
4982 LayerStyling = 2,
4983 };
4984 Q_ENUM( LegendLayerDoubleClickAction )
4985
4986
4991 enum class LayerTreeFilterFlag : int SIP_ENUM_BASETYPE( IntFlag )
4992 {
4993 SkipVisibilityCheck = 1 << 0,
4994 };
4995 Q_ENUM( LayerTreeFilterFlag )
4996
4997
5003 Q_FLAG( LayerTreeFilterFlags )
5004
5010 enum class MapLayerLegendFlag : int SIP_ENUM_BASETYPE( IntFlag )
5011 {
5012 ExcludeByDefault = 1 << 0,
5013 };
5014 Q_ENUM( MapLayerLegendFlag )
5015
5016
5022 Q_FLAG( MapLayerLegendFlags )
5023
5032 {
5033 Undefined,
5034 Hidden,
5035 Title,
5036 Group,
5037 Subgroup,
5038 Symbol,
5039 SymbolLabel,
5040 };
5041 // !!! WARNING: If adding new values to this enum, make sure you update QgsLegendSettings constructor accordingly!!
5042 Q_ENUM( LegendComponent )
5043
5044
5049 enum class LegendSyncMode : int
5050 {
5051 AllProjectLayers,
5052 VisibleLayers,
5053 Manual,
5054 };
5055 Q_ENUM( LegendSyncMode )
5056
5057
5064 enum class LegendJsonRenderFlag : int SIP_ENUM_BASETYPE( IntFlag )
5065 {
5066 ShowRuleDetails = 1 << 0,
5067 };
5068 Q_ENUM( LegendJsonRenderFlag )
5070 Q_FLAG( LegendJsonRenderFlags )
5071
5077 enum class GeoJsonProfile : int
5078 {
5079 Legacy,
5080 Rfc7946,
5081 JsonFg,
5082 JsonFgPlus,
5083 };
5084 Q_ENUM( GeoJsonProfile )
5085
5086
5093 enum class ActionType : int
5094 {
5095 Invalid,
5096 MapLayerAction,
5097 AttributeAction
5098 };
5099 Q_ENUM( ActionType )
5100
5101
5108 enum class MapLayerActionTarget : int SIP_ENUM_BASETYPE( IntFlag )
5109 {
5110 Layer = 1 << 0,
5111 SingleFeature = 1 << 1,
5112 MultipleFeatures = 1 << 2,
5113 AllActions = Layer | SingleFeature | MultipleFeatures
5114 };
5115 Q_ENUM( MapLayerActionTarget )
5116
5117
5125 Q_FLAG( MapLayerActionTargets )
5126
5134 enum class MapLayerActionFlag : int SIP_ENUM_BASETYPE( IntFlag )
5135 {
5136 EnabledOnlyWhenEditable = 1 << 1,
5137 EnableOnlyWhenHasGeometry = 1 << 2,
5138 };
5139 Q_ENUM( MapLayerActionFlag )
5140
5141
5149 Q_FLAG( MapLayerActionFlags )
5150
5159 {
5160 Generic,
5161 GenericPython,
5162 Mac,
5163 Windows,
5164 Unix,
5165 OpenUrl,
5166 SubmitUrlEncoded,
5167 SubmitUrlMultipart,
5168 };
5169 Q_ENUM( AttributeActionType )
5170
5171
5177 {
5178 Created,
5179 Published,
5180 Revised,
5181 Superseded,
5182 };
5183 Q_ENUM( MetadataDateType )
5184
5185
5189 enum class AcademicReferenceType : int
5190 {
5191 Unknown,
5192 Book,
5193 JournalArticle,
5194 Presentation,
5195 WebPage,
5196 Preprint
5197 };
5198 Q_ENUM( AcademicReferenceType )
5199
5200
5209
5211 {
5212 Undefined SIP_MONKEYPATCH_COMPAT_NAME( UndefinedColorInterpretation ) = 0,
5213 GrayIndex = 1,
5214 PaletteIndex = 2,
5215 RedBand = 3,
5216 GreenBand = 4,
5217 BlueBand = 5,
5218 AlphaBand = 6,
5219 HueBand = 7,
5220 SaturationBand = 8,
5221 LightnessBand = 9,
5222 CyanBand = 10,
5223 MagentaBand = 11,
5224 YellowBand = 12,
5225 BlackBand = 13,
5226 YCbCr_YBand = 14,
5227 YCbCr_CbBand = 15,
5228 YCbCr_CrBand = 16,
5229 ContinuousPalette = 17,
5230
5231 // Note: values between PanBand and SAR_P_Band match additions done in
5232 // GDAL 3.10, except that the numeric values of the constant don't match GDAL ones
5233
5234 PanBand = 18,
5235 CoastalBand = 19,
5236 RedEdgeBand = 20,
5237 NIRBand = 21,
5238 SWIRBand = 22,
5239 MWIRBand = 23,
5240 LWIRBand = 24,
5241 TIRBand = 25,
5242 OtherIRBand = 26,
5243 SAR_Ka_Band = 27,
5244 SAR_K_Band = 28,
5245 SAR_Ku_Band = 30,
5246 SAR_X_Band = 31,
5247 SAR_C_Band = 32,
5248 SAR_S_Band = 33,
5249 SAR_L_Band = 34,
5250 SAR_P_Band = 35,
5251 };
5252 Q_ENUM( RasterColorInterpretation )
5253
5254
5262 {
5263 GrayOrUndefined,
5264 Palette,
5265 MultiBand SIP_MONKEYPATCH_COMPAT_NAME( Multiband ),
5266 SingleBandColorData SIP_MONKEYPATCH_COMPAT_NAME( ColorLayer ),
5267 };
5268 Q_ENUM( RasterLayerType )
5269
5270
5278 {
5279 Undefined SIP_MONKEYPATCH_COMPAT_NAME( UndefinedDrawingStyle ),
5280 SingleBandGray,
5281 SingleBandPseudoColor,
5282 PalettedColor,
5283 PalettedSingleBandGray,
5284 PalettedSingleBandPseudoColor,
5285 PalettedMultiBandColor,
5286 MultiBandSingleBandGray,
5287 MultiBandSingleBandPseudoColor,
5288 MultiBandColor,
5289 SingleBandColorData SIP_MONKEYPATCH_COMPAT_NAME( SingleBandColorDataStyle ),
5290 };
5291 Q_ENUM( RasterDrawingStyle )
5292
5293
5300 enum class RasterPyramidFormat SIP_MONKEYPATCH_SCOPEENUM_UNNEST( QgsRaster, RasterPyramidsFormat ) : int
5301 {
5302 GeoTiff SIP_MONKEYPATCH_COMPAT_NAME( PyramidsGTiff ) = 0,
5303 Internal SIP_MONKEYPATCH_COMPAT_NAME( PyramidsInternal ) = 1,
5304 Erdas SIP_MONKEYPATCH_COMPAT_NAME( PyramidsErdas ) = 2
5305 };
5306 Q_ENUM( RasterPyramidFormat )
5307
5308
5316 {
5317 No SIP_MONKEYPATCH_COMPAT_NAME( PyramidsFlagNo ) = 0,
5318 Yes SIP_MONKEYPATCH_COMPAT_NAME( PyramidsFlagYes ) = 1,
5319 CopyExisting SIP_MONKEYPATCH_COMPAT_NAME( PyramidsCopyExisting ) = 2
5320 };
5321 Q_ENUM( RasterBuildPyramidOption )
5322
5323
5331 {
5332 Undefined SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatUndefined ) = 0,
5333 Value SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatValue ) = 1,
5334 Text SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatText ) = 1 << 1,
5335 Html SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatHtml ) = 1 << 2,
5336 Feature SIP_MONKEYPATCH_COMPAT_NAME( IdentifyFormatFeature ) = 1 << 3,
5337 };
5338 Q_ENUM( RasterIdentifyFormat )
5339
5340 // TODO QGIS 5 -- remove NoCapabilities and rely on RasterInterfaceCapabilities() instead
5341 // remove deprecated members
5342 // Remove "Identify" member, and replace with combinations of IdentifyValue/IdentifyText/etc
5343
5344
5352 {
5353 NoCapabilities = 0,
5354 Size = 1 << 1,
5355 Create = 1 << 2,
5356 Remove = 1 << 3,
5357 BuildPyramids = 1 << 4,
5358 Identify = 1 << 5,
5359 IdentifyValue = 1 << 6,
5360 IdentifyText = 1 << 7,
5361 IdentifyHtml = 1 << 8,
5362 IdentifyFeature = 1 << 9,
5363 Prefetch = 1 << 10,
5364 };
5365 Q_ENUM( RasterInterfaceCapability )
5366
5367
5374
5375 // TODO QGIS 5 -- remove NoProviderCapabilities and rely on RasterProviderCapabilities() instead
5376
5385 {
5386 NoProviderCapabilities = 0,
5387 ReadLayerMetadata = 1 << 1,
5388 WriteLayerMetadata = 1 << 2,
5389 ProviderHintBenefitsFromResampling = 1 << 3,
5390 ProviderHintCanPerformProviderResampling = 1 << 4,
5391 ReloadData = 1 << 5,
5392 DpiDependentData = 1 << 6,
5393 NativeRasterAttributeTable = 1 << 7,
5394 BuildPyramids = 1 << 8,
5395 };
5396 Q_ENUM( RasterProviderCapability )
5397
5398
5407
5414 {
5415 HighestElevation,
5416 NewerElevation,
5417 };
5418 Q_ENUM( ElevationMapCombineMethod )
5419
5420
5429 {
5430 Normal SIP_MONKEYPATCH_COMPAT_NAME( BlendNormal ),
5431 Lighten SIP_MONKEYPATCH_COMPAT_NAME( BlendLighten ),
5432 Screen SIP_MONKEYPATCH_COMPAT_NAME( BlendScreen ),
5433 Dodge SIP_MONKEYPATCH_COMPAT_NAME( BlendDodge ),
5434 Addition SIP_MONKEYPATCH_COMPAT_NAME( BlendAddition ),
5435 Darken SIP_MONKEYPATCH_COMPAT_NAME( BlendDarken ),
5436 Multiply SIP_MONKEYPATCH_COMPAT_NAME( BlendMultiply ),
5438 Overlay SIP_MONKEYPATCH_COMPAT_NAME( BlendOverlay ),
5439 SoftLight SIP_MONKEYPATCH_COMPAT_NAME( BlendSoftLight ),
5440 HardLight SIP_MONKEYPATCH_COMPAT_NAME( BlendHardLight ),
5441 Difference SIP_MONKEYPATCH_COMPAT_NAME( BlendDifference ),
5442 Subtract SIP_MONKEYPATCH_COMPAT_NAME( BlendSubtract ),
5443 Source SIP_MONKEYPATCH_COMPAT_NAME( BlendSource ),
5444 DestinationOver SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationOver ),
5445 Clear SIP_MONKEYPATCH_COMPAT_NAME( BlendClear ),
5446 Destination SIP_MONKEYPATCH_COMPAT_NAME( BlendDestination ),
5447 SourceIn SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceIn ),
5448 DestinationIn SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationIn ),
5449 SourceOut SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceOut ),
5450 DestinationOut SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationOut ),
5451 SourceAtop SIP_MONKEYPATCH_COMPAT_NAME( BlendSourceAtop ),
5452 DestinationAtop SIP_MONKEYPATCH_COMPAT_NAME( BlendDestinationAtop ),
5454 };
5455 Q_ENUM( BlendMode )
5456
5457
5465 {
5466 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownSystem ) = 0,
5467 Metric SIP_MONKEYPATCH_COMPAT_NAME( MetricSystem ),
5468 Imperial SIP_MONKEYPATCH_COMPAT_NAME( ImperialSystem ),
5469 USCS SIP_MONKEYPATCH_COMPAT_NAME( USCSSystem ),
5470 };
5471 Q_ENUM( SystemOfMeasurement )
5472
5473
5480 {
5481 Layer SIP_MONKEYPATCH_COMPAT_NAME( LayerUnits ),
5482 Pixels,
5483 Project SIP_MONKEYPATCH_COMPAT_NAME( ProjectUnits )
5484 };
5485 Q_ENUM( MapToolUnit )
5486
5487
5495 {
5496 Distance SIP_MONKEYPATCH_COMPAT_NAME( TypeDistance ) = 0,
5498 Volume SIP_MONKEYPATCH_COMPAT_NAME( TypeVolume ),
5499 Unknown SIP_MONKEYPATCH_COMPAT_NAME( TypeUnknown ),
5500 Temporal SIP_MONKEYPATCH_COMPAT_NAME( TypeTemporal ),
5501 };
5502 Q_ENUM( UnitType )
5503
5504
5512 {
5513 Meters SIP_MONKEYPATCH_COMPAT_NAME( DistanceMeters ),
5514 Kilometers SIP_MONKEYPATCH_COMPAT_NAME( DistanceKilometers ),
5515 Feet SIP_MONKEYPATCH_COMPAT_NAME( DistanceFeet ),
5516 NauticalMiles SIP_MONKEYPATCH_COMPAT_NAME( DistanceNauticalMiles ),
5517 Yards SIP_MONKEYPATCH_COMPAT_NAME( DistanceYards ),
5518 Miles SIP_MONKEYPATCH_COMPAT_NAME( DistanceMiles ),
5519 Degrees SIP_MONKEYPATCH_COMPAT_NAME( DistanceDegrees ),
5520 Centimeters SIP_MONKEYPATCH_COMPAT_NAME( DistanceCentimeters ),
5521 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( DistanceMillimeters ),
5522 Inches,
5523 ChainsInternational,
5524 ChainsBritishBenoit1895A,
5525 ChainsBritishBenoit1895B,
5526 ChainsBritishSears1922Truncated,
5527 ChainsBritishSears1922,
5528 ChainsClarkes,
5529 ChainsUSSurvey,
5530 FeetBritish1865,
5531 FeetBritish1936,
5532 FeetBritishBenoit1895A,
5533 FeetBritishBenoit1895B,
5534 FeetBritishSears1922Truncated,
5535 FeetBritishSears1922,
5536 FeetClarkes,
5537 FeetGoldCoast,
5538 FeetIndian,
5539 FeetIndian1937,
5540 FeetIndian1962,
5541 FeetIndian1975,
5542 FeetUSSurvey,
5543 LinksInternational,
5544 LinksBritishBenoit1895A,
5545 LinksBritishBenoit1895B,
5546 LinksBritishSears1922Truncated,
5547 LinksBritishSears1922,
5548 LinksClarkes,
5549 LinksUSSurvey,
5550 YardsBritishBenoit1895A,
5551 YardsBritishBenoit1895B,
5552 YardsBritishSears1922Truncated,
5553 YardsBritishSears1922,
5554 YardsClarkes,
5555 YardsIndian,
5556 YardsIndian1937,
5557 YardsIndian1962,
5558 YardsIndian1975,
5559 MilesUSSurvey,
5560 Fathoms,
5561 MetersGermanLegal,
5562 Unknown SIP_MONKEYPATCH_COMPAT_NAME( DistanceUnknownUnit ),
5563 };
5564 Q_ENUM( DistanceUnit )
5565
5566
5574 {
5575 Standard,
5576 Geographic,
5577 Unknown SIP_MONKEYPATCH_COMPAT_NAME( UnknownType ),
5578 };
5579 Q_ENUM( DistanceUnitType )
5580
5581
5589 {
5590 SquareMeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMeters ),
5591 SquareKilometers SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareKilometers ),
5592 SquareFeet SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareFeet ),
5593 SquareYards SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareYards ),
5594 SquareMiles SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMiles ),
5595 Hectares SIP_MONKEYPATCH_COMPAT_NAME( AreaHectares ),
5596 Acres SIP_MONKEYPATCH_COMPAT_NAME( AreaAcres ),
5597 SquareNauticalMiles SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareNauticalMiles ),
5598 SquareDegrees SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareDegrees ),
5599 SquareCentimeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareCentimeters ),
5600 SquareMillimeters SIP_MONKEYPATCH_COMPAT_NAME( AreaSquareMillimeters ),
5601 SquareInches,
5602 Unknown SIP_MONKEYPATCH_COMPAT_NAME( AreaUnknownUnit ),
5603 };
5604 Q_ENUM( AreaUnit )
5605
5606
5614 {
5615 CubicMeters SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicMeters ),
5616 CubicFeet SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicFeet ),
5617 CubicYards SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicYards ),
5618 Barrel SIP_MONKEYPATCH_COMPAT_NAME( VolumeBarrel ),
5619 CubicDecimeter SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicDecimeter ),
5620 Liters SIP_MONKEYPATCH_COMPAT_NAME( VolumeLiters ),
5621 GallonUS SIP_MONKEYPATCH_COMPAT_NAME( VolumeGallonUS ),
5622 CubicInch SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicInch ),
5623 CubicCentimeter SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicCentimeter ),
5624 CubicDegrees SIP_MONKEYPATCH_COMPAT_NAME( VolumeCubicDegrees ),
5625 Unknown SIP_MONKEYPATCH_COMPAT_NAME( VolumeUnknownUnit ),
5626 };
5627 Q_ENUM( VolumeUnit )
5628
5629
5637 {
5638 Degrees SIP_MONKEYPATCH_COMPAT_NAME( AngleDegrees ),
5639 Radians SIP_MONKEYPATCH_COMPAT_NAME( AngleRadians ),
5641 MinutesOfArc SIP_MONKEYPATCH_COMPAT_NAME( AngleMinutesOfArc ),
5642 SecondsOfArc SIP_MONKEYPATCH_COMPAT_NAME( AngleSecondsOfArc ),
5644 MilliradiansSI SIP_MONKEYPATCH_COMPAT_NAME( AngleMilliradiansSI ),
5645 MilNATO SIP_MONKEYPATCH_COMPAT_NAME( AngleMilNATO ),
5646 Unknown SIP_MONKEYPATCH_COMPAT_NAME( AngleUnknownUnit ),
5647 };
5648 Q_ENUM( AngleUnit )
5649
5650
5658 {
5659 Milliseconds SIP_MONKEYPATCH_COMPAT_NAME( TemporalMilliseconds ),
5660 Seconds SIP_MONKEYPATCH_COMPAT_NAME( TemporalSeconds ),
5661 Minutes SIP_MONKEYPATCH_COMPAT_NAME( TemporalMinutes ),
5662 Hours SIP_MONKEYPATCH_COMPAT_NAME( TemporalHours ),
5663 Days SIP_MONKEYPATCH_COMPAT_NAME( TemporalDays ),
5664 Weeks SIP_MONKEYPATCH_COMPAT_NAME( TemporalWeeks ),
5665 Months SIP_MONKEYPATCH_COMPAT_NAME( TemporalMonths ),
5666 Years SIP_MONKEYPATCH_COMPAT_NAME( TemporalYears ),
5667 Decades SIP_MONKEYPATCH_COMPAT_NAME( TemporalDecades ),
5668 Centuries SIP_MONKEYPATCH_COMPAT_NAME( TemporalCenturies ),
5669 IrregularStep SIP_MONKEYPATCH_COMPAT_NAME( TemporalIrregularStep ),
5670 Unknown SIP_MONKEYPATCH_COMPAT_NAME( TemporalUnknownUnit )
5671 };
5672 Q_ENUM( TemporalUnit )
5673
5674
5682 {
5683 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( RenderMillimeters ),
5684 MapUnits SIP_MONKEYPATCH_COMPAT_NAME( RenderMapUnits ),
5685 Pixels SIP_MONKEYPATCH_COMPAT_NAME( RenderPixels ),
5686 Percentage SIP_MONKEYPATCH_COMPAT_NAME( RenderPercentage ),
5687 Points SIP_MONKEYPATCH_COMPAT_NAME( RenderPoints ),
5688 Inches SIP_MONKEYPATCH_COMPAT_NAME( RenderInches ),
5689 Unknown SIP_MONKEYPATCH_COMPAT_NAME( RenderUnknownUnit ),
5690 MetersInMapUnits SIP_MONKEYPATCH_COMPAT_NAME( RenderMetersInMapUnits ),
5691 };
5692 Q_ENUM( RenderUnit )
5693
5694
5702 {
5703 Millimeters SIP_MONKEYPATCH_COMPAT_NAME( LayoutMillimeters ),
5704 Centimeters SIP_MONKEYPATCH_COMPAT_NAME( LayoutCentimeters ),
5705 Meters SIP_MONKEYPATCH_COMPAT_NAME( LayoutMeters ),
5706 Inches SIP_MONKEYPATCH_COMPAT_NAME( LayoutInches ),
5707 Feet SIP_MONKEYPATCH_COMPAT_NAME( LayoutFeet ),
5708 Points SIP_MONKEYPATCH_COMPAT_NAME( LayoutPoints ),
5709 Picas SIP_MONKEYPATCH_COMPAT_NAME( LayoutPicas ),
5710 Pixels SIP_MONKEYPATCH_COMPAT_NAME( LayoutPixels )
5711 };
5712 Q_ENUM( LayoutUnit )
5713
5714
5722 {
5723 PaperUnits SIP_MONKEYPATCH_COMPAT_NAME( LayoutPaperUnits ),
5724 ScreenUnits SIP_MONKEYPATCH_COMPAT_NAME( LayoutScreenUnits )
5725 };
5726 Q_ENUM( LayoutUnitType )
5727
5728
5736 {
5737 Debug SIP_MONKEYPATCH_COMPAT_NAME( FlagDebug ) = 1 << 1,
5738 OutlineOnly SIP_MONKEYPATCH_COMPAT_NAME( FlagOutlineOnly ) = 1 << 2,
5739 Antialiasing SIP_MONKEYPATCH_COMPAT_NAME( FlagAntialiasing ) = 1 << 3,
5740 UseAdvancedEffects SIP_MONKEYPATCH_COMPAT_NAME( FlagUseAdvancedEffects ) = 1 << 4,
5741 ForceVectorOutput SIP_MONKEYPATCH_COMPAT_NAME( FlagForceVectorOutput )
5742 = 1 << 5,
5743 HideCoverageLayer SIP_MONKEYPATCH_COMPAT_NAME( FlagHideCoverageLayer ) = 1 << 6,
5744 DrawSelection SIP_MONKEYPATCH_COMPAT_NAME( FlagDrawSelection ) = 1 << 7,
5745 DisableTiledRasterLayerRenders SIP_MONKEYPATCH_COMPAT_NAME( FlagDisableTiledRasterLayerRenders )
5746 = 1 << 8,
5747 RenderLabelsByMapLayer SIP_MONKEYPATCH_COMPAT_NAME( FlagRenderLabelsByMapLayer )
5748 = 1 << 9,
5749 LosslessImageRendering SIP_MONKEYPATCH_COMPAT_NAME( FlagLosslessImageRendering )
5750 = 1 << 10,
5751 SynchronousLegendGraphics SIP_MONKEYPATCH_COMPAT_NAME( FlagSynchronousLegendGraphics ) = 1 << 11,
5752 AlwaysUseGlobalMasks SIP_MONKEYPATCH_COMPAT_NAME( FlagAlwaysUseGlobalMasks )
5753 = 1 << 12,
5754 LimitCoverageLayerRenderToCurrentFeature = 1 << 13,
5755 };
5756 Q_ENUM( LayoutRenderFlag )
5757
5758
5766 Q_FLAG( LayoutRenderFlags )
5767
5776 {
5777 SVG SIP_MONKEYPATCH_COMPAT_NAME( FormatSVG ) = 0,
5778 Raster SIP_MONKEYPATCH_COMPAT_NAME( FormatRaster ),
5779 Unknown SIP_MONKEYPATCH_COMPAT_NAME( FormatUnknown ),
5780 };
5781 Q_ENUM( PictureFormat )
5782
5783
5788 enum class ScaleCalculationMethod : int
5789 {
5790 HorizontalTop = 0,
5791 HorizontalMiddle,
5792 HorizontalBottom,
5793 HorizontalAverage,
5794 AtEquator,
5795 };
5796 Q_ENUM( ScaleCalculationMethod )
5797
5798
5811 Q_ENUM( ScaleBarAlignment )
5812
5813
5821 {
5822 Fixed SIP_MONKEYPATCH_COMPAT_NAME( SegmentSizeFixed ) = 0,
5823 FitWidth SIP_MONKEYPATCH_COMPAT_NAME( SegmentSizeFitWidth ) = 1
5824 };
5825 Q_ENUM( ScaleBarSegmentSizeMode )
5826
5827
5835 {
5836 AboveSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelAboveSegment ) = 0,
5837 BelowSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelBelowSegment ),
5838 };
5839 Q_ENUM( ScaleBarDistanceLabelVerticalPlacement )
5840
5841
5849 {
5850 CenteredEdge SIP_MONKEYPATCH_COMPAT_NAME( LabelCenteredEdge ) = 0,
5851 CenteredSegment SIP_MONKEYPATCH_COMPAT_NAME( LabelCenteredSegment ),
5852 };
5853 Q_ENUM( ScaleBarDistanceLabelHorizontalPlacement )
5854
5855
5856
5864 {
5865 MapUnits SIP_MONKEYPATCH_COMPAT_NAME( MapUnit ),
5868 DynamicPageSizeBased,
5869 };
5870 Q_ENUM( MapGridUnit )
5871
5872
5880 {
5881 Lines SIP_MONKEYPATCH_COMPAT_NAME( Solid ) = 0,
5882 LineCrosses SIP_MONKEYPATCH_COMPAT_NAME( Cross ),
5883 Markers,
5884 FrameAndAnnotationsOnly SIP_MONKEYPATCH_COMPAT_NAME( FrameAnnotationsOnly )
5885 };
5886 Q_ENUM( MapGridStyle )
5887
5888
5896 {
5897 ShowAll = 0,
5898 LatitudeOnly,
5899 LongitudeOnly,
5900 HideAll
5901 };
5902 Q_ENUM( MapGridComponentVisibility )
5903
5904
5912 {
5913 InsideMapFrame = 0,
5914 OutsideMapFrame,
5915 };
5916 Q_ENUM( MapGridAnnotationPosition )
5917
5918
5926 {
5927 Horizontal = 0,
5928 Vertical,
5929 VerticalDescending,
5930 BoundaryDirection,
5931 AboveTick,
5932 OnTick,
5933 UnderTick,
5934 };
5935 Q_ENUM( MapGridAnnotationDirection )
5936
5937
5945 {
5946 Decimal = 0,
5947 DegreeMinute,
5948 DegreeMinuteSecond,
5949 DecimalWithSuffix,
5950 DegreeMinuteNoSuffix,
5951 DegreeMinutePadded,
5952 DegreeMinuteSecondNoSuffix,
5953 DegreeMinuteSecondPadded,
5954 CustomFormat
5955 };
5956 Q_ENUM( MapGridAnnotationFormat )
5957
5958
5972 Q_ENUM( MapGridBorderSide )
5973
5974
5982 {
5983 NoFrame = 0,
5984 Zebra,
5985 InteriorTicks,
5986 ExteriorTicks,
5987 InteriorExteriorTicks,
5988 LineBorder,
5989 LineBorderNautical,
5990 ZebraNautical,
5991 };
5992 Q_ENUM( MapGridFrameStyle )
5993
5994
6002 {
6003 OrthogonalTicks = 0,
6004 NormalizedTicks,
6005 };
6006 Q_ENUM( MapGridTickLengthMode )
6007
6008
6009
6017 {
6018 Left SIP_MONKEYPATCH_COMPAT_NAME( FrameLeft ) = 0x01,
6019 Right SIP_MONKEYPATCH_COMPAT_NAME( FrameRight ) = 0x02,
6020 Top SIP_MONKEYPATCH_COMPAT_NAME( FrameTop ) = 0x04,
6021 Bottom SIP_MONKEYPATCH_COMPAT_NAME( FrameBottom ) = 0x08
6022 };
6023 Q_ENUM( MapGridFrameSideFlag )
6024
6025
6033 Q_FLAG( MapGridFrameSideFlags )
6034
6043 {
6044 Longitude = 0,
6045 Latitude
6046 };
6047 Q_ENUM( MapGridAnnotationType )
6048
6049
6054 enum class InputControllerType : int
6055 {
6056 Map2D,
6057 Map3D
6058 };
6060
6067 {
6068 NotSet,
6069 Unknown,
6070 OrdinaryTable,
6071 Index,
6072 Sequence,
6073 View,
6074 MaterializedView,
6075 CompositeType,
6076 ToastTable,
6077 ForeignTable,
6078 PartitionedTable,
6079 };
6080 Q_ENUM( PostgresRelKind )
6081
6082
6088 {
6089 SetFieldComment = 1 << 0,
6090 SetFieldAlias = 1 << 1,
6091 SetTableComment = 1 << 2,
6092 EditFieldDomain = 1 << 3,
6093 DeleteFieldDomain = 1 << 4,
6094 };
6095 Q_ENUM( DatabaseProviderConnectionCapability2 )
6098
6105 {
6106 SetGeometryColumnName = 1 << 0,
6107 SetPrimaryKeyName = 1 << 1,
6108 };
6109 Q_ENUM( DatabaseProviderTableImportCapability )
6112
6119 {
6120 SaveToDatabase = 1 << 1,
6121 LoadFromDatabase = 1 << 2,
6122 DeleteFromDatabase = 1 << 3
6123 };
6127
6128
6134 {
6135 LastProfile,
6136 DefaultProfile,
6137 AskUser,
6138 };
6139 Q_ENUM( UserProfileSelectionPolicy )
6140
6141
6149 {
6150 Container SIP_MONKEYPATCH_COMPAT_NAME( AeTypeContainer ),
6151 Field SIP_MONKEYPATCH_COMPAT_NAME( AeTypeField ),
6152 Relation SIP_MONKEYPATCH_COMPAT_NAME( AeTypeRelation ),
6153 QmlElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeQmlElement ),
6154 HtmlElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeHtmlElement ),
6155 Action SIP_MONKEYPATCH_COMPAT_NAME( AeTypeAction ),
6156 TextElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeTextElement ),
6157 SpacerElement SIP_MONKEYPATCH_COMPAT_NAME( AeTypeSpacerElement ),
6158 Invalid SIP_MONKEYPATCH_COMPAT_NAME( AeTypeInvalid ),
6159 };
6160 Q_ENUM( AttributeEditorType )
6161
6162
6168 {
6169 GroupBox,
6170 Tab,
6171 Row,
6172 };
6173 Q_ENUM( AttributeEditorContainerType )
6174
6175
6183 {
6184 AutoGenerated SIP_MONKEYPATCH_COMPAT_NAME( GeneratedLayout ) = 0,
6185 DragAndDrop SIP_MONKEYPATCH_COMPAT_NAME( TabLayout ) = 1,
6186 UiFile SIP_MONKEYPATCH_COMPAT_NAME( UiFileLayout ) = 2
6187 };
6188 Q_ENUM( AttributeFormLayout )
6189
6190
6198 {
6199 Default SIP_MONKEYPATCH_COMPAT_NAME( SuppressDefault ) = 0,
6200 On SIP_MONKEYPATCH_COMPAT_NAME( SuppressOn ) = 1,
6201 Off SIP_MONKEYPATCH_COMPAT_NAME( SuppressOff ) = 2
6202 };
6203 Q_ENUM( AttributeFormSuppression )
6204
6205
6213 {
6214 NoSource SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceNone ) = 0,
6215 File SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceFile ) = 1,
6216 Dialog SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceDialog ) = 2,
6217 Environment SIP_MONKEYPATCH_COMPAT_NAME( CodeSourceEnvironment ) = 3
6218 };
6219 Q_ENUM( AttributeFormPythonInitCodeSource )
6220
6221
6227 {
6228 NotAllowed = 0,
6229 AllowedDefaultOn = 1,
6230 AllowedDefaultOff = 2,
6231 };
6232 Q_ENUM( AttributeFormReuseLastValuePolicy )
6233
6234
6240 {
6242 PointCloud,
6243 RasterCalculator,
6244 };
6245 Q_ENUM( ExpressionType )
6246
6247
6255 {
6256 NoSymbology = 0,
6257 PerFeature SIP_MONKEYPATCH_COMPAT_NAME( FeatureSymbology ),
6258 PerSymbolLayer SIP_MONKEYPATCH_COMPAT_NAME( SymbolLayerSymbology )
6259 };
6260 Q_ENUM( FeatureSymbologyExport )
6261
6262
6267 enum class VectorTileProviderFlag : int SIP_ENUM_BASETYPE( IntFlag )
6268 {
6269 AlwaysUseTileMatrixSetFromProvider = 1 << 1,
6270 };
6271 Q_ENUM( VectorTileProviderFlag )
6272
6273
6279 Q_FLAG( VectorTileProviderFlags )
6280
6286 {
6287 ReadLayerMetadata = 1 << 1,
6288 };
6289 Q_ENUM( VectorTileProviderCapability )
6290
6291
6298
6305 {
6306 Available,
6307 NotAvailable,
6308 AvailableNoChildren,
6309 UseLowerZoomLevelTile,
6310 };
6311 Q_ENUM( TileAvailability )
6312
6313
6319 {
6320 ReadLayerMetadata = 1 << 1,
6321 };
6322 Q_ENUM( TiledSceneProviderCapability )
6323
6324
6331
6338 {
6339 Region,
6340 OrientedBox,
6341 Sphere,
6342 };
6343 Q_ENUM( TiledSceneBoundingVolumeType )
6344
6345
6354 {
6355 Replacement,
6356 Additive,
6357 };
6358 Q_ENUM( TileRefinementProcess )
6359
6360
6366 {
6367 NoChildren,
6368 Available,
6369 NeedFetching,
6370 };
6371 Q_ENUM( TileChildrenAvailability )
6372
6373
6378 enum class TiledSceneRequestFlag : int SIP_ENUM_BASETYPE( IntFlag )
6379 {
6380 NoHierarchyFetch = 1 << 0,
6381 };
6382 Q_ENUM( TiledSceneRequestFlag )
6383
6384
6390 Q_FLAG( TiledSceneRequestFlags )
6391
6397 enum class TiledSceneRendererFlag : int SIP_ENUM_BASETYPE( IntFlag )
6398 {
6399 RequiresTextures = 1 << 0,
6400 ForceRasterRender = 1 << 1,
6401 RendersTriangles = 1 << 2,
6402 RendersLines = 1 << 3,
6403 };
6404 Q_ENUM( TiledSceneRendererFlag )
6405
6406
6412 Q_FLAG( TiledSceneRendererFlags )
6413
6419 enum class GdalResampleAlgorithm : int
6420 {
6421 RA_NearestNeighbour = 0,
6422 RA_Bilinear = 1,
6423 RA_Cubic = 2,
6424 RA_CubicSpline = 3,
6425 RA_Lanczos = 4,
6426 RA_Average = 5,
6427 RA_Mode = 6,
6428 RA_Max = 8,
6429 RA_Min = 9,
6430 RA_Median = 10,
6431 RA_Q1 = 11,
6432 RA_Q3 = 12,
6433 };
6434 Q_ENUM( GdalResampleAlgorithm )
6435
6436
6441 enum class VsiHandlerType : int
6442 {
6443 Invalid,
6444 Archive,
6445 Network,
6446 Cloud,
6447 Memory,
6448 Other,
6449 };
6450 Q_ENUM( VsiHandlerType )
6451
6452 // TODO QGIS 5: make All include all values (we can't do this before 4.0, as we need to keep
6453 // compatibility with code which expects all these statistics to give numeric results)
6454
6455
6460 enum class ZonalStatistic : int SIP_ENUM_BASETYPE( IntFlag )
6461 {
6462 Count = 1 << 0,
6463 Sum = 1 << 1,
6464 Mean = 1 << 2,
6465 Median = 1 << 3,
6466 StDev = 1 << 4,
6467 Min = 1 << 5,
6468 Max = 1 << 6,
6469 Range = 1 << 7,
6470 Minority = 1 << 8,
6471 Majority = 1 << 9,
6472 Variety = 1 << 10,
6473 Variance = 1 << 11,
6474 MinimumPoint = 1 << 12,
6475 MaximumPoint = 1 << 13,
6476 // clang-format off
6477 All = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
6478 // clang-format on
6479 AllNumeric = Count | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | Variance,
6480 Default = Count | Sum | Mean,
6481 };
6482 Q_ENUM( ZonalStatistic )
6483
6484
6490 Q_FLAG( ZonalStatistics )
6491
6497 enum class ZonalStatisticResult : int
6498 {
6500 LayerTypeWrong = 1,
6501 LayerInvalid,
6502 RasterInvalid,
6503 RasterBandInvalid,
6504 FailedToCreateField = 8,
6505 Canceled = 9
6506 };
6507 Q_ENUM( ZonalStatisticResult )
6508
6509
6516 {
6517 Count,
6518 CountDistinct,
6519 CountMissing,
6520 Min,
6521 Max,
6522 Sum,
6523 Mean,
6524 Median,
6525 StDev,
6526 StDevSample,
6527 Range,
6528 Minority,
6529 Majority,
6530 FirstQuartile,
6531 ThirdQuartile,
6532 InterQuartileRange,
6533 StringMinimumLength,
6534 StringMaximumLength,
6535 StringConcatenate,
6536 GeometryCollect,
6537 ArrayAggregate,
6538 StringConcatenateUnique
6539 };
6540 Q_ENUM( Aggregate )
6541
6542
6548 {
6549 Count = 1 << 0,
6550 CountMissing = 1 << 15,
6551 Sum = 1 << 1,
6552 Mean = 1 << 2,
6553 Median = 1 << 3,
6554 StDev = 1 << 4,
6555 StDevSample = 1 << 5,
6556 Min = 1 << 6,
6557 Max = 1 << 7,
6558 Range = 1 << 8,
6559 Minority = 1 << 9,
6560 Majority = 1 << 10,
6561 Variety = 1 << 11,
6562 FirstQuartile = 1 << 12,
6563 ThirdQuartile = 1 << 13,
6564 InterQuartileRange = 1 << 14,
6565 First = 1 << 16,
6566 Last = 1 << 17,
6567 All = Count | CountMissing | Sum | Mean | Median | StDev | Max | Min | Range | Minority | Majority | Variety | FirstQuartile | ThirdQuartile | InterQuartileRange | First | Last
6568 };
6569 Q_ENUM( Statistic )
6570
6571
6577 Q_FLAG( Statistics )
6578
6585 {
6586 Count = 1,
6587 CountDistinct = 2,
6588 CountMissing = 4,
6589 Min = 8,
6590 Max = 16,
6591 Range = 32,
6592 All = Count | CountDistinct | CountMissing | Min | Max | Range,
6593 };
6594 Q_ENUM( DateTimeStatistic )
6595
6596
6602 Q_FLAG( DateTimeStatistics )
6603
6610 {
6611 Count = 1,
6612 CountDistinct = 2,
6613 CountMissing = 4,
6614 Min = 8,
6615 Max = 16,
6616 MinimumLength = 32,
6617 MaximumLength = 64,
6618 MeanLength = 128,
6619 Minority = 256,
6620 Majority = 512,
6621 All = Count | CountDistinct | CountMissing | Min | Max | MinimumLength | MaximumLength | MeanLength | Minority | Majority,
6622 };
6623 Q_ENUM( StringStatistic )
6624
6625
6631 Q_FLAG( StringStatistics )
6632
6639 {
6640 NoStatistic = 0,
6641 Min = 1,
6642 Max = 1 << 1,
6643 Range = 1 << 2,
6644 Sum = 1 << 3,
6645 Mean = 1 << 4,
6646 StdDev = 1 << 5,
6647 SumOfSquares = 1 << 6,
6648 All = Min | Max | Range | Sum | Mean | StdDev | SumOfSquares
6649 };
6650 Q_ENUM( RasterBandStatistic )
6651
6652
6658 Q_FLAG( RasterBandStatistics )
6659
6666 {
6667 Points,
6668 StructureLines,
6669 BreakLines,
6670 };
6671 Q_ENUM( InterpolationSourceType )
6672
6673
6679 {
6680 Attribute,
6681 Z,
6682 M,
6683 };
6684 Q_ENUM( InterpolationValueSource )
6685
6686
6691 enum class SensorThingsVersion : int
6692 {
6693 Version1_1,
6694 Version2_0,
6695 };
6697
6703 enum class SensorThingsExtension : int SIP_ENUM_BASETYPE( IntFlag )
6704 {
6705 MultiDatastream = 1 << 0,
6706 SensingExtensionObservationsMeasurements = 1 << 1,
6707 SensingExtensionSampling = 1 << 2,
6708 SensingExtensionRelations = 1 << 3,
6709 };
6711
6718 Q_FLAG( SensorThingsExtensions )
6719
6720
6725 enum class SensorThingsEntity : int
6726 {
6727 Invalid,
6728 Thing,
6729 Location,
6730 HistoricalLocation,
6731 Datastream,
6732 Sensor,
6733 ObservedProperty,
6734 Observation,
6735 FeatureOfInterest,
6736 MultiDatastream,
6737 // version 2.0
6738 Feature,
6739 FeatureType,
6740 Deployment,
6741 ObservingProcedure,
6742 Sampling,
6743 SamplingProcedure,
6744 Sampler,
6745 PreparationStep,
6746 PreparationProcedure,
6747 ThingRelation,
6748 RelationRole,
6749 FeatureRelation,
6750 DatastreamRelation,
6751 ObservationRelation,
6752 };
6753 Q_ENUM( SensorThingsEntity )
6754
6755
6760 enum class ColorModel : int
6761 {
6762 Rgb,
6763 Cmyk,
6764 };
6765 Q_ENUM( ColorModel )
6766
6767
6772 enum class DocumentationApi : int
6773 {
6774 PyQgis,
6775 PyQgisSearch,
6776 CppQgis,
6777 Qt,
6778 };
6779 Q_ENUM( DocumentationApi )
6780
6781
6786 enum class DocumentationBrowser : int
6787 {
6788 DeveloperToolsPanel,
6789 SystemWebBrowser,
6790 };
6791 Q_ENUM( DocumentationBrowser )
6792
6793
6798 enum class MouseHandlesAction : int
6799 {
6800 MoveItem,
6801 ResizeUp,
6802 ResizeDown,
6803 ResizeLeft,
6804 ResizeRight,
6805 ResizeLeftUp,
6806 ResizeRightUp,
6807 ResizeLeftDown,
6808 ResizeRightDown,
6809 RotateTopLeft,
6810 RotateTopRight,
6811 RotateBottomLeft,
6812 RotateBottomRight,
6813 SelectItem,
6814 NoAction
6815 };
6816 Q_ENUM( MouseHandlesAction )
6817
6818
6822 enum class MeshRangeLimit : int
6823 {
6824 NotSet,
6825 MinimumMaximum,
6826 };
6827 Q_ENUM( MeshRangeLimit )
6828
6829
6834 enum class MeshRangeExtent : int
6835 {
6836 WholeMesh,
6837 FixedCanvas,
6838 UpdatedCanvas,
6839 };
6840 Q_ENUM( MeshRangeExtent )
6841
6842
6848 enum class PointCloudAccessType : int
6849 {
6850 Local,
6851 Remote
6852 };
6853 Q_ENUM( PointCloudAccessType )
6854
6855
6860 {
6861 RenderExtents,
6862 RenderOverview,
6863 RenderOverviewAndExtents
6864 };
6865 Q_ENUM( PointCloudZoomOutRenderBehavior )
6866
6867
6872 {
6873 Standard = 0,
6874 Adaptive,
6875 AreaError,
6876 ConstantDensity
6877 };
6878 Q_ENUM( SegmentCalculationMethod )
6879
6880
6884 enum class StacObjectType : int
6885 {
6886 Unknown,
6887 Catalog,
6888 Collection,
6889 Item,
6890 };
6891 Q_ENUM( StacObjectType )
6892
6893
6898 {
6899 WmsScale = 1 << 0,
6900 WmsDpi = 1 << 1,
6901 };
6902 Q_ENUM( RasterProcessingParameterCapability )
6903
6904
6910
6916 {
6917 Status = Qt::UserRole + 1,
6918 Id,
6919 ElapsedTime,
6920 MaximumTime,
6921 Sort,
6922 };
6923 Q_ENUM( DevToolsNodeRole )
6924
6925
6930 enum class ExtrusionFace : int SIP_ENUM_BASETYPE( IntFlag )
6931 {
6932 NoFace = 0,
6933 Walls = 1 << 0,
6934 Roof = 1 << 1,
6935 Floor = 1 << 2
6936 };
6937 Q_ENUM( ExtrusionFace )
6938
6939
6943 Q_DECLARE_FLAGS( ExtrusionFaces, ExtrusionFace )
6944 Q_FLAG( ExtrusionFaces )
6945
6950 enum class TriangulationAlgorithm : int SIP_ENUM_BASETYPE( IntFlag )
6951 {
6952 ConstrainedDelaunay = 0,
6953 Earcut = 1 << 0
6954 };
6955 Q_ENUM( TriangulationAlgorithm )
6956
6957
6968 enum class WmsGroupRequestMode : int
6969 {
6970 Normal,
6971 Opaque,
6972 };
6973 Q_ENUM( WmsGroupRequestMode )
6974
6975
6981 {
6982 RestorePreviousState,
6983 ForceDocked,
6984 ForceDialog,
6985 };
6986 Q_ENUM( DockableWidgetInitialState )
6987
6988
6994 {
6995 LongestBorder = 0,
6996 MaximumArea = 1,
6997 MinimumArea = 2,
6998 MinimumIndex = 3,
6999 };
7000 Q_ENUM( CoverageCleanOverlapMergeStrategy )
7001
7002
7007 enum class PdfRenderFlag : int SIP_ENUM_BASETYPE( IntFlag )
7008 {
7009 RenderTextAsText = 1 << 0,
7010 };
7011 Q_ENUM( PdfRenderFlag )
7012
7013
7018 Q_DECLARE_FLAGS( PdfRenderFlags, PdfRenderFlag )
7019 Q_FLAG( PdfRenderFlags )
7020
7021
7030 {
7031 AllValues = 0,
7032 MinValue = 1,
7033 MaxValue = 2,
7034 ReferenceValue = 3,
7035 };
7036 Q_ENUM( WmsDimensionDefaultDisplay )
7037
7038
7043 enum class RubberBandIconType : int
7044 {
7045 NoIcon,
7046 CrossPlus,
7047 CrossX,
7048 Box,
7049 Circle,
7050 BoxFilled,
7051 Diamond,
7052 DiamondFilled,
7053 SVG
7054 };
7055 Q_ENUM( RubberBandIconType )
7056
7057
7062 enum class RubberBandComponent : int SIP_ENUM_BASETYPE( IntFlag )
7063 {
7064 Symbol = 1 << 0,
7065 PreviewItems = 1 << 1,
7066 };
7067 Q_ENUM( RubberBandComponent )
7068
7069
7075 Q_FLAG( RubberBandComponents )
7076
7082 enum class UserInterfaceIconType : int
7083 {
7084 MainWindowToolbar,
7085 DockedToolbar,
7086 };
7088
7094 enum class LinearMatrixMethod : int
7095 {
7096 Lu = 0,
7097 Svd = 1,
7098 LuWithSvdFallback = 2
7099 };
7101
7105 static const double DEFAULT_SEARCH_RADIUS_MM;
7106
7109
7115 static const QColor DEFAULT_HIGHLIGHT_COLOR;
7116
7120 static const double DEFAULT_HIGHLIGHT_BUFFER_MM;
7121
7126
7134 Q_DECL_DEPRECATED static const double SCALE_PRECISION;
7135
7140 static const double DEFAULT_Z_COORDINATE;
7141
7147 static const double DEFAULT_M_COORDINATE;
7148
7153 static const double UI_SCALE_FACTOR;
7154
7158 static const double DEFAULT_SNAP_TOLERANCE;
7159
7164
7168 static const int USER_CRS_START_ID;
7169
7171 static const double DEFAULT_POINT_SIZE;
7172
7174 static const double DEFAULT_LINE_WIDTH;
7175
7177 static const double DEFAULT_SEGMENT_EPSILON;
7178
7181
7184
7190 static QString defaultProjectScales();
7191
7197 static int geosVersionInt();
7198
7204 static int geosVersionMajor();
7205
7211 static int geosVersionMinor();
7212
7218 static int geosVersionPatch();
7219
7225 static QString geosVersion();
7226
7232 static bool hasSfcgal();
7233
7240 static int sfcgalVersionInt();
7241
7247 static bool hasGeographicLib();
7248
7255 static int geographicLibVersion();
7256
7262 Q_DECL_DEPRECATED static bool hasQtWebkit();
7263
7269 static QString geoNone() { return u"NONE"_s; }
7270
7276 static QString geographicCrsAuthId() { return u"EPSG:4326"_s; }
7277
7282 Q_DECL_DEPRECATED static QString geoWkt()
7283 {
7284 return QStringLiteral(
7285 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]] )"""
7286 );
7287 }
7288
7293 Q_DECL_DEPRECATED static QString geoProj4() { return u"+proj=longlat +datum=WGS84 +no_defs"_s; }
7294};
7295
7298
7399Q_DECLARE_METATYPE( QTimeZone )
7400
7401// hack to workaround warnings when casting void pointers
7402// retrieved from QLibrary::resolve to function pointers.
7403// It's assumed that this works on all systems supporting
7404// QLibrary
7405#define cast_to_fptr( f ) f
7406
7407
7415// based on Boojum's code from http://stackoverflow.com/questions/3556687/prevent-firing-signals-in-qt
7416template<class Object> class QgsSignalBlocker SIP_SKIP SIP_SKIP // clazy:exclude=rule-of-three
7417{
7418 public:
7423 explicit QgsSignalBlocker( Object *object )
7424 : mObject( object )
7425 , mPreviousState( object->blockSignals( true ) )
7426 {}
7427
7428 ~QgsSignalBlocker() { mObject->blockSignals( mPreviousState ); }
7429
7431 Object *operator->() { return mObject; }
7432
7433 private:
7434 Object *mObject = nullptr;
7435 bool mPreviousState;
7436};
7437
7450// based on Boojum's code from http://stackoverflow.com/questions/3556687/prevent-firing-signals-in-qt
7451template<class Object> inline QgsSignalBlocker<Object> whileBlocking( Object *object ) SIP_SKIP SIP_SKIP
7452{
7453 return QgsSignalBlocker<Object>( object );
7454}
7455
7457CORE_EXPORT size_t qHash( const QVariant &variant );
7458
7464inline QString qgsDoubleToString( double a, int precision = 17 )
7465{
7466 QString str;
7467 if ( precision )
7468 {
7469 if ( precision < 0 )
7470 {
7471 const double roundFactor = std::pow( 10, -precision );
7472 str = QString::number( static_cast< long long >( std::round( a / roundFactor ) * roundFactor ) );
7473 }
7474 else
7475 {
7476 str = QString::number( a, 'f', precision );
7477 if ( str.contains( '.'_L1 ) )
7478 {
7479 // remove ending 0s
7480 int idx = str.length() - 1;
7481 while ( str.at( idx ) == '0' && idx > 1 )
7482 {
7483 idx--;
7484 }
7485 if ( idx < str.length() - 1 )
7486 str.truncate( str.at( idx ) == '.' ? idx : idx + 1 );
7487 }
7488 }
7489 }
7490 else
7491 {
7492 str = QString::number( a, 'f', precision );
7493 }
7494 // avoid printing -0
7495 // see https://bugreports.qt.io/browse/QTBUG-71439
7496 if ( str == "-0"_L1 )
7497 {
7498 return "0"_L1;
7499 }
7500 return str;
7501}
7502
7509inline bool qgsNanCompatibleEquals( double a, double b )
7510{
7511 if ( a == b )
7512 return true;
7513
7514 if ( std::isnan( a ) && std::isnan( b ) ) [[unlikely]]
7515 return true;
7516
7517 return false;
7518}
7519
7520#ifndef SIP_RUN
7521
7529template<typename T> inline bool qgsNumberNear( T a, T b, T epsilon = std::numeric_limits<T>::epsilon() * 4 )
7530{
7531 static_assert( std::is_floating_point<T>::value, "qgsNumberNear requires floating-point types" );
7532
7533 if ( a == b )
7534 return true;
7535
7536 // if either 'a' or 'b' is NaN, 'diff' becomes NaN.
7537 // comparisons (>= or <=) against NaN evaluate to false, which will fallback
7538 // to the nan related logic at the end of this function
7539 const T diff = a - b;
7540 if ( diff >= -epsilon && diff <= epsilon )
7541 return true;
7542
7543 // defer expensive nan checks to last -- calling std::isnan is NOT cheap!
7544 if ( std::isnan( a ) && std::isnan( b ) ) [[unlikely]]
7545 return true;
7546
7547 return false;
7548}
7549#endif
7550
7557inline bool qgsDoubleNear( double a, double b, double epsilon = 4 * std::numeric_limits<double>::epsilon() )
7558{
7559 return qgsNumberNear<double>( a, b, epsilon );
7560}
7561
7570inline bool qgsDoubleLessThanOrNear( double a, double b, double epsilon = 4 * std::numeric_limits<double>::epsilon() )
7571{
7572 // fast check first
7573 if ( a <= b )
7574 return true;
7575
7576 // => a > b
7577 // => a - b > 0
7578 // we only need to check the upper epsilon bound for the fuzzy equality
7579 if ( a - b <= epsilon )
7580 return true;
7581
7582 // defer expensive nan checks to last -- calling std::isnan is NOT cheap!
7583 if ( std::isnan( a ) && std::isnan( b ) ) [[unlikely]]
7584 return true;
7585
7586 return false;
7587}
7588
7597inline bool qgsDoubleGreaterThanOrNear( double a, double b, double epsilon = 4 * std::numeric_limits<double>::epsilon() )
7598{
7599 // fast check first
7600 if ( a >= b )
7601 return true;
7602
7603 // => a < b
7604 // => b - a > 0
7605 // we only need to check the upper epsilon bound for the fuzzy equality
7606 if ( b - a <= epsilon )
7607 return true;
7608
7609 // defer expensive nan checks to last -- calling std::isnan is NOT cheap!
7610 if ( std::isnan( a ) && std::isnan( b ) ) [[unlikely]]
7611 return true;
7612
7613 return false;
7614}
7615
7622inline bool qgsFloatNear( float a, float b, float epsilon = 4 * FLT_EPSILON )
7623{
7624 return qgsNumberNear<float>( a, b, epsilon );
7625}
7626
7628inline bool qgsDoubleNearSig( double a, double b, int significantDigits = 10 )
7629{
7630 const bool aIsNan = std::isnan( a );
7631 const bool bIsNan = std::isnan( b );
7632 if ( aIsNan || bIsNan )
7633 return aIsNan && bIsNan;
7634
7635 // The most simple would be to print numbers as %.xe and compare as strings
7636 // but that is probably too costly
7637 // Then the fastest would be to set some bits directly, but little/big endian
7638 // has to be considered (maybe TODO)
7639 // Is there a better way?
7640 int aexp, bexp;
7641 const double ar = std::frexp( a, &aexp );
7642 const double br = std::frexp( b, &bexp );
7643
7644 return aexp == bexp && std::round( ar * std::pow( 10.0, significantDigits ) ) == std::round( br * std::pow( 10.0, significantDigits ) );
7645}
7646
7651inline double qgsRound( double number, int places )
7652{
7653 const double m = ( number < 0.0 ) ? -1.0 : 1.0;
7654 const double scaleFactor = std::pow( 10.0, places );
7655 return ( std::round( number * m * scaleFactor ) / scaleFactor ) * m;
7656}
7657
7658#ifndef SIP_RUN
7659
7666template<class Key, class Value> QString qgsMapJoinKeys( const QMap<Key, Value> &map, const QString &separator )
7667{
7668 QString result;
7669 for ( auto it = map.constBegin(); it != map.constEnd(); it++ )
7670 result += QString( "%1%2" ).arg( it.key() ).arg( separator );
7671
7672 result.chop( separator.size() );
7673 return result;
7674}
7675
7682template<class Key, class Value> QString qgsMapJoinValues( const QMap<Key, Value> &map, const QString &separator )
7683{
7684 QString result;
7685 for ( auto it = map.constBegin(); it != map.constEnd(); it++ )
7686 result += QString( "%1%2" ).arg( it.value() ).arg( separator );
7687
7688 result.chop( separator.size() );
7689 return result;
7690}
7691
7698template<class T> QString qgsSetJoin( const QSet<T> &set, const QString &separator )
7699{
7700 QString result;
7701 for ( auto it = set.constBegin(); it != set.constEnd(); it++ )
7702 result += QString( "%1%2" ).arg( *it ).arg( separator );
7703
7704 result.chop( separator.size() );
7705 return result;
7706}
7707
7709
7719namespace qgis
7720{
7721
7734 template<typename To, typename From> inline To down_cast( From *f )
7735 {
7736 static_assert( ( std::is_base_of<From, typename std::remove_pointer<To>::type>::value ), "target type not derived from source type" );
7737 Q_ASSERT( f == nullptr || dynamic_cast<To>( f ) != nullptr );
7738 return static_cast<To>( f );
7739 }
7740
7741 template<class T> QSet<T> listToSet( const QList<T> &list )
7742 {
7743 return QSet<T>( list.begin(), list.end() );
7744 }
7745
7746 template<class T> QList<T> setToList( const QSet<T> &set )
7747 {
7748 return QList<T>( set.begin(), set.end() );
7749 }
7750} //namespace qgis
7751
7753#endif
7754
7759template<class T> const QList<T> qgsEnumList() SIP_SKIP
7760{
7761 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7762 Q_ASSERT( metaEnum.isValid() );
7763 QList<T> enumList;
7764 for ( int idx = 0; idx < metaEnum.keyCount(); ++idx )
7765 {
7766 enumList.append( static_cast<T>( metaEnum.value( idx ) ) );
7767 }
7768 return enumList;
7769}
7770
7776template<class T> const QMap<T, QString> qgsEnumMap() SIP_SKIP
7777{
7778 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7779 Q_ASSERT( metaEnum.isValid() );
7780 QMap<T, QString> enumMap;
7781 for ( int idx = 0; idx < metaEnum.keyCount(); ++idx )
7782 {
7783 enumMap.insert( static_cast<T>( metaEnum.value( idx ) ), QString( metaEnum.key( idx ) ) );
7784 }
7785 return enumMap;
7786}
7787
7793template<class T> QString qgsEnumValueToKey( const T &value, bool *returnOk = nullptr ) SIP_SKIP
7794{
7795 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7796 Q_ASSERT( metaEnum.isValid() );
7797 const char *key = metaEnum.valueToKey( static_cast<int>( value ) );
7798 if ( returnOk )
7799 {
7800 *returnOk = key ? true : false;
7801 }
7802 return QString::fromUtf8( key );
7803}
7804
7812template<class T> T qgsEnumKeyToValue( const QString &key, const T &defaultValue, bool tryValueAsKey = true, bool *returnOk = nullptr ) SIP_SKIP
7813{
7814 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7815 Q_ASSERT( metaEnum.isValid() );
7816 bool ok = false;
7817 T v = static_cast<T>( metaEnum.keyToValue( key.toUtf8().data(), &ok ) );
7818 if ( returnOk )
7819 {
7820 *returnOk = ok;
7821 }
7822 if ( ok )
7823 {
7824 return v;
7825 }
7826 else
7827 {
7828 // if conversion has failed, try with conversion from int value
7829 if ( tryValueAsKey )
7830 {
7831 bool canConvert = false;
7832 const int intValue = key.toInt( &canConvert );
7833 if ( canConvert && metaEnum.valueToKey( intValue ) )
7834 {
7835 if ( returnOk )
7836 {
7837 *returnOk = true;
7838 }
7839 return static_cast<T>( intValue );
7840 }
7841 }
7842 }
7843 return defaultValue;
7844}
7845
7851template<class T> QString qgsFlagValueToKeys( const T &value, bool *returnOk = nullptr ) SIP_SKIP
7852{
7853 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7854 Q_ASSERT( metaEnum.isValid() );
7855 int intValue = static_cast<int>( value );
7856 if ( intValue == 0 )
7857 {
7858 if ( returnOk )
7859 *returnOk = true;
7860 return u"0"_s;
7861 }
7862
7863 const QByteArray ba = metaEnum.valueToKeys( intValue );
7864 // check that the int value does correspond to a flag
7865 // see https://stackoverflow.com/a/68495949/1548052
7866 const int intValueCheck = metaEnum.keysToValue( ba );
7867 bool ok = intValue == intValueCheck;
7868 if ( returnOk )
7869 *returnOk = ok;
7870 return ok ? QString::fromUtf8( ba ) : QString();
7871}
7872
7880template<class T> T qgsFlagKeysToValue( const QString &keys, const T &defaultValue, bool tryValueAsKey = true, bool *returnOk = nullptr ) SIP_SKIP
7881{
7882 if ( keys.isEmpty() )
7883 {
7884 if ( returnOk )
7885 {
7886 *returnOk = false;
7887 }
7888 return defaultValue;
7889 }
7890 else if ( keys == "0"_L1 )
7891 {
7892 if ( returnOk )
7893 {
7894 *returnOk = true;
7895 }
7896 return T();
7897 }
7898 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
7899 Q_ASSERT( metaEnum.isValid() );
7900 bool ok = false;
7901 T v = static_cast<T>( metaEnum.keysToValue( keys.toUtf8().constData(), &ok ) );
7902 if ( returnOk )
7903 {
7904 *returnOk = ok;
7905 }
7906 if ( ok )
7907 {
7908 return v;
7909 }
7910 else
7911 {
7912 // if conversion has failed, try with conversion from int value
7913 if ( tryValueAsKey )
7914 {
7915 bool canConvert = false;
7916 const int intValue = keys.toInt( &canConvert );
7917 if ( canConvert )
7918 {
7919 const QByteArray keyArray = metaEnum.valueToKeys( intValue );
7920 const int intValueCheck = metaEnum.keysToValue( keyArray );
7921 if ( !keyArray.isEmpty() && intValue == intValueCheck )
7922 {
7923 if ( returnOk )
7924 {
7925 *returnOk = true;
7926 }
7927 return T( intValue );
7928 }
7929 }
7930 }
7931 }
7932 return defaultValue;
7933}
7934
7935
7944CORE_EXPORT double qgsPermissiveToDouble( QString string, bool &ok );
7945
7954CORE_EXPORT int qgsPermissiveToInt( QString string, bool &ok );
7955
7965CORE_EXPORT qlonglong qgsPermissiveToLongLong( QString string, bool &ok );
7966
7986CORE_EXPORT int qgsVariantCompare( const QVariant &lhs, const QVariant &rhs, bool strictTypeCheck = false );
7987
7998CORE_EXPORT bool qgsVariantLessThan( const QVariant &lhs, const QVariant &rhs );
7999
8008CORE_EXPORT bool qgsVariantEqual( const QVariant &lhs, const QVariant &rhs );
8009
8018CORE_EXPORT bool qgsVariantGreaterThan( const QVariant &lhs, const QVariant &rhs );
8019
8031inline bool operator>( const QVariant &v1, const QVariant &v2 )
8032{
8033 return qgsVariantCompare( v1, v2, true ) > 0;
8034}
8035
8047inline bool operator<( const QVariant &v1, const QVariant &v2 )
8048{
8049 return qgsVariantCompare( v1, v2, true ) < 0;
8050}
8051
8058Q_DECL_DEPRECATED CORE_EXPORT QString qgsVsiPrefix( const QString &path ) SIP_DEPRECATED;
8059
8065void CORE_EXPORT *qgsMalloc( size_t size ) SIP_SKIP;
8066
8071void CORE_EXPORT qgsFree( void *ptr ) SIP_SKIP;
8072
8073#ifndef SIP_RUN
8074
8076class ScopedIntIncrementor
8077{
8078 public:
8079 ScopedIntIncrementor( int *variable )
8080 : mVariable( variable )
8081 {
8082 ( *mVariable )++;
8083 }
8084
8085 ScopedIntIncrementor( const ScopedIntIncrementor &other ) = delete;
8086 ScopedIntIncrementor &operator=( const ScopedIntIncrementor &other ) = delete;
8087
8088 void release()
8089 {
8090 if ( mVariable )
8091 ( *mVariable )--;
8092
8093 mVariable = nullptr;
8094 }
8095
8096 ~ScopedIntIncrementor() { release(); }
8097
8098 private:
8099 int *mVariable = nullptr;
8100};
8102
8103#endif
8104
8110Q_DECL_DEPRECATED const long GEOSRID = 4326;
8111
8117Q_DECL_DEPRECATED const long GEOCRS_ID = 3452;
8118
8124Q_DECL_DEPRECATED const long GEO_EPSG_CRS_ID = 4326;
8125
8126typedef QMap<QString, QString> QgsStringMap SIP_SKIP;
8127
8136typedef unsigned long long qgssize;
8137
8138#ifndef SIP_RUN
8139#if ( __GNUC__ > 4 || ( __GNUC__ == 4 && __GNUC_MINOR__ >= 6 ) ) || defined( __clang__ )
8140
8141#define Q_NOWARN_DEPRECATED_PUSH _Pragma( "GCC diagnostic push" ) _Pragma( "GCC diagnostic ignored \"-Wdeprecated-declarations\"" );
8142#define Q_NOWARN_DEPRECATED_POP _Pragma( "GCC diagnostic pop" );
8143#define Q_NOWARN_UNREACHABLE_PUSH
8144#define Q_NOWARN_UNREACHABLE_POP
8145
8146#elif defined( _MSC_VER )
8147
8148#define Q_NOWARN_DEPRECATED_PUSH __pragma( warning( push ) ) __pragma( warning( disable : 4996 ) )
8149#define Q_NOWARN_DEPRECATED_POP __pragma( warning( pop ) )
8150#define Q_NOWARN_UNREACHABLE_PUSH __pragma( warning( push ) ) __pragma( warning( disable : 4702 ) )
8151#define Q_NOWARN_UNREACHABLE_POP __pragma( warning( pop ) )
8152#else
8153
8154#define Q_NOWARN_DEPRECATED_PUSH
8155#define Q_NOWARN_DEPRECATED_POP
8156#define Q_NOWARN_UNREACHABLE_PUSH
8157#define Q_NOWARN_UNREACHABLE_POP
8158
8159#endif
8160#endif
8161
8162#ifndef QGISEXTERN
8163#ifdef Q_OS_WIN
8164#define QGISEXTERN extern "C" __declspec( dllexport )
8165#else
8166#if defined( __GNUC__ ) || defined( __clang__ )
8167#define QGISEXTERN extern "C" __attribute__( ( visibility( "default" ) ) )
8168#else
8169#define QGISEXTERN extern "C"
8170#endif
8171#endif
8172#endif
8173#endif
8174
8175#ifndef SIP_RUN
8176#ifdef _MSC_VER
8177#define BUILTIN_UNREACHABLE __assume( false );
8178#elif defined( __GNUC__ ) && !defined( __clang__ )
8179// Workaround a GCC bug where a -Wreturn-type warning is emitted in constructs
8180// like:
8181// switch( mVariableThatCanOnlyBeXorY )
8182// {
8183// case X:
8184// return "foo";
8185// case Y:
8186// return "foo";
8187// }
8188// See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87951
8189#define BUILTIN_UNREACHABLE __builtin_unreachable();
8190#else
8191#define BUILTIN_UNREACHABLE
8192#endif
8193#endif // SIP_RUN
Provides global constants and enumerations for use throughout the application.
Definition qgis.h:62
MapGridTickLengthMode
Map grid tick length mode (useful for rotated grids).
Definition qgis.h:6002
DistanceUnitType
Types of distance units.
Definition qgis.h:5574
PieChartLabelType
Pie chart label types.
Definition qgis.h:3562
GnssConstellation
GNSS constellation.
Definition qgis.h:2054
SettingsOption
Settings options.
Definition qgis.h:765
EmbeddedScriptType
Type of Python Embedded in projects.
Definition qgis.h:463
ProfileGeneratorFlag
Flags that control the way the QgsAbstractProfileGenerator operate.
Definition qgis.h:4631
GeometryBackend
Geometry backend for QgsGeometry.
Definition qgis.h:2299
ProcessingSourceType
Processing data source types.
Definition qgis.h:3747
static const Qgis::MapToolUnit DEFAULT_SNAP_UNITS
Default snapping distance units.
Definition qgis.h:7163
GpsQualityIndicator
GPS signal quality indicator.
Definition qgis.h:2072
QFlags< MapGridFrameSideFlag > MapGridFrameSideFlags
Flags for controlling which side of the map a frame is drawn on.
Definition qgis.h:6032
DataItemProviderCapability
Capabilities for data item providers.
Definition qgis.h:1057
ProcessingFileParameterBehavior
Flags which dictate the behavior of QgsProcessingParameterFile.
Definition qgis.h:4007
RasterizedRenderingPolicy
Policies controlling when rasterisation of content during renders is permitted.
Definition qgis.h:2896
QFlags< MapLayerRendererFlag > MapLayerRendererFlags
Flags which control how map layer renderers behave.
Definition qgis.h:2991
ProjectReadFlag
Flags which control project read behavior.
Definition qgis.h:4715
QFlags< DatabaseProviderTableImportCapability > DatabaseProviderTableImportCapabilities
Definition qgis.h:6110
QFlags< BabelCommandFlag > BabelCommandFlags
Babel command flags.
Definition qgis.h:2167
CurvedLabelMode
Modes which determine how curved labels are generated and placed.
Definition qgis.h:1306
MapToolUnit
Type of unit of tolerance value from settings.
Definition qgis.h:5480
PlotAxisSuffixPlacement
Placement options for suffixes in the labels for axis of plots.
Definition qgis.h:3534
static const double DEFAULT_LINE_WIDTH
The default width (in millimeters) for line symbols.
Definition qgis.h:7174
ProcessingModelChildAlgorithmExecutionStatus
Reflects the status of a child algorithm in a Processing model.
Definition qgis.h:4082
QFlags< GpsInformationComponent > GpsInformationComponents
GPS information component.
Definition qgis.h:2134
ScaleBarDistanceLabelHorizontalPlacement
Scale bar distance label horizontal placement.
Definition qgis.h:5849
PointCloudSymbol
Rendering symbols for point cloud points.
Definition qgis.h:4659
SymbolRotationMode
Modes for handling how symbol and text entity rotation is handled when maps are rotated.
Definition qgis.h:848
static const double DEFAULT_HIGHLIGHT_MIN_WIDTH_MM
Default highlight line/stroke minimum width in mm.
Definition qgis.h:7125
QFlags< PdfRenderFlag > PdfRenderFlags
PDF rendering flags.
Definition qgis.h:7018
static QString version()
Version string.
Definition qgis.cpp:682
GeometryValidityFlag
Geometry validity check flags.
Definition qgis.h:2221
QFlags< RasterProviderCapability > RasterProviderCapabilities
Raster data provider capabilities.
Definition qgis.h:5405
ExpressionType
Expression types.
Definition qgis.h:6240
MapLayerActionFlag
Map layer action flags.
Definition qgis.h:5135
ScaleBarDistanceLabelVerticalPlacement
Scale bar distance label vertical placement.
Definition qgis.h:5835
MapLayerProperty
Generic map layer properties.
Definition qgis.h:2444
VectorProviderCapability
Vector data provider capabilities.
Definition qgis.h:525
RasterProcessingParameterCapability
Capabilities of a raster layer processing parameter.
Definition qgis.h:6898
BufferSide
Side of line to buffer.
Definition qgis.h:2248
RasterResamplingStage
Stage at which raster resampling occurs.
Definition qgis.h:1619
WmsGroupRequestMode
Request mode of groups in a WMS context.
Definition qgis.h:6969
QFlags< MapLayerActionTarget > MapLayerActionTargets
Map layer action targets.
Definition qgis.h:5124
VectorTileProviderCapability
Enumeration with capabilities that vector tile data providers might implement.
Definition qgis.h:6286
ProjectTrustStatus
Project trust status.
Definition qgis.h:476
MultiPartLabelingBehavior
Behavior modifier for labeling features with multi-part geometries.
Definition qgis.h:1345
AltitudeClamping
Altitude clamping.
Definition qgis.h:4201
static const int PREVIEW_JOB_DELAY_MS
Delay between the scheduling of 2 preview jobs.
Definition qgis.h:7180
VectorTileProviderFlag
Flags for vector tile data providers.
Definition qgis.h:6268
VectorTemporalMode
Vector layer temporal feature modes.
Definition qgis.h:2767
SublayerFlag
Flags which reflect the properties of sublayers in a dataset.
Definition qgis.h:1558
QFlags< ProjectCapability > ProjectCapabilities
Flags which control project capabilities.
Definition qgis.h:4759
LabelLinePlacementFlag
Line placement flags, which control how candidates are generated for a linear feature.
Definition qgis.h:1395
QFlags< UriCleaningFlag > UriCleaningFlags
Flags for cleaning layer URIs.
Definition qgis.h:1518
CoordinateDisplayType
Formats for displaying coordinates.
Definition qgis.h:4896
ProcessingParameterTypeFlag
Flags which dictate the behavior of Processing parameter types.
Definition qgis.h:3955
QFlags< VectorRenderingSimplificationFlag > VectorRenderingSimplificationFlags
Simplification flags for vector feature rendering.
Definition qgis.h:3247
DashPatternSizeAdjustment
Dash pattern size adjustment options.
Definition qgis.h:3507
InterpolationSourceType
Interpolation source types.
Definition qgis.h:6666
static const double DEFAULT_Z_COORDINATE
Default Z coordinate value.
Definition qgis.h:7140
CoverageCleanOverlapMergeStrategy
Merge strategies for coverage cleaning operations.
Definition qgis.h:6994
GpsFixStatus
GPS fix status.
Definition qgis.h:2039
AnnotationItemNodeType
Annotation item node types.
Definition qgis.h:2694
static const char * QGIS_DEV_VERSION
The development version.
Definition qgis.h:89
VectorFileWriterCapability
Capabilities supported by a QgsVectorFileWriter object.
Definition qgis.h:1154
QFlags< MapSettingsFlag > MapSettingsFlags
Map settings flags.
Definition qgis.h:2933
InterpolationValueSource
Source for interpolated values from features.
Definition qgis.h:6679
CrsIdentifierType
Available identifier string types for representing coordinate reference systems.
Definition qgis.h:2583
QFlags< RasterRendererFlag > RasterRendererFlags
Flags which control behavior of raster renderers.
Definition qgis.h:1662
AngularDirection
Angular directions.
Definition qgis.h:3648
DriveType
Drive types.
Definition qgis.h:1207
UnitType
Unit types.
Definition qgis.h:5495
ContentStatus
Status for fetched or stored content.
Definition qgis.h:1995
UserInterfaceIconType
Icon types for icons shown in the user interface.
Definition qgis.h:7083
QFlags< SelectionFlag > SelectionFlags
Flags which control feature selection behavior.
Definition qgis.h:1957
SnappingType
SnappingTypeFlag defines on what object the snapping is performed.
Definition qgis.h:790
Map3DBackgroundType
Background types for 3D map view.
Definition qgis.h:4495
LayoutUnit
Layout measurement units.
Definition qgis.h:5702
Q_ENUM(GpsFixStatus)
RelationshipStrength
Relationship strength.
Definition qgis.h:4849
Q_ENUM(GnssConstellation)
PaintEffectFlag
Flags which control how paint effects behave.
Definition qgis.h:3000
MarkerLinePlacement
Defines how/where the symbols should be placed on a line.
Definition qgis.h:3345
QFlags< ProjectReadFlag > ProjectReadFlags
Project load flags.
Definition qgis.h:4737
LegendComponent
Component of legends which can be styled.
Definition qgis.h:5032
Point3DShape
3D point shape types.
Definition qgis.h:4387
GeometryOperationResult
Success or failure of a geometry operation.
Definition qgis.h:2192
QFlags< StringStatistic > StringStatistics
Statistics to be calculated for string values.
Definition qgis.h:6630
BrowserItemState
Browser item states.
Definition qgis.h:1000
AttributeEditorContainerType
Attribute editor container types.
Definition qgis.h:6168
QFlags< TiledSceneProviderCapability > TiledSceneProviderCapabilities
Tiled scene data provider capabilities.
Definition qgis.h:6329
QFlags< SensorThingsExtension > SensorThingsExtensions
OGC SensorThings extensions.
Definition qgis.h:6717
FeatureRequestFilterType
Types of feature request filters.
Definition qgis.h:2387
MarkerClipMode
Marker clipping modes.
Definition qgis.h:3465
GpsNavigationStatus
GPS navigation status.
Definition qgis.h:2092
AnnotationItemFlag
Flags for annotation items.
Definition qgis.h:2651
AttributeFormReuseLastValuePolicy
Attribute form policy for reusing last entered values.
Definition qgis.h:6227
RenderSubcomponentProperty
Rendering subcomponent properties.
Definition qgis.h:3256
ProcessingTinInputLayerType
Defines the type of input layer for a Processing TIN input.
Definition qgis.h:4097
QFlags< DataProviderFlag > DataProviderFlags
Data provider flags.
Definition qgis.h:2481
TextureFilterQuality
Texture filtering qualities.
Definition qgis.h:4453
Statistic
Available generic statistics.
Definition qgis.h:6548
TriangulationAlgorithm
Triangulation algorithms.
Definition qgis.h:6951
SymbolRenderHint
Flags controlling behavior of symbols during rendering.
Definition qgis.h:810
AngleUnit
Units of angles.
Definition qgis.h:5637
ToneMappingMethod
Defines the method used to map High Dynamic Range (HDR) scene colors to the Standard Dynamic Range (S...
Definition qgis.h:4570
MapGridAnnotationPosition
Position for map grid annotations.
Definition qgis.h:5912
CaptureTechnique
Capture technique.
Definition qgis.h:418
static QString geosVersion()
GEOS string version linked.
Definition qgis.cpp:704
SpatialIndexPresence
Enumeration of spatial index presence states.
Definition qgis.h:599
BrowserItemCapability
Browser item capabilities.
Definition qgis.h:1013
AttributeFormSuppression
Available form types for layout of the attribute form editor.
Definition qgis.h:6198
QFlags< AuthConfigurationStorageCapability > AuthConfigurationStorageCapabilities
Authentication configuration storage capabilities.
Definition qgis.h:152
QFlags< LayerTreeFilterFlag > LayerTreeFilterFlags
Layer tree filter flags.
Definition qgis.h:5002
LayerTreeInsertionMethod
Layer tree insertion methods.
Definition qgis.h:4966
RasterProviderCapability
Raster data provider capabilities.
Definition qgis.h:5385
DatabaseProviderTableImportCapability
Represents capabilities of a database provider connection when importing table data.
Definition qgis.h:6105
LineClipMode
Line clipping modes.
Definition qgis.h:3479
static const double DEFAULT_SNAP_TOLERANCE
Default snapping distance tolerance.
Definition qgis.h:7158
VectorRenderingSimplificationFlag
Simplification flags for vector feature rendering.
Definition qgis.h:3232
QFlags< GeometryValidityFlag > GeometryValidityFlags
Geometry validity flags.
Definition qgis.h:2226
BrowserDirectoryMonitoring
Browser directory item monitoring switches.
Definition qgis.h:1106
VsiHandlerType
GDAL VSI handler types.
Definition qgis.h:6442
NetworkRequestFlag
Flags controlling behavior of network requests.
Definition qgis.h:187
static int geographicLibVersion()
Returns the version of the GeographicLib library if QGIS is built with GeographicLib support.
Definition qgis.cpp:736
SettingsTreeNodeType
Type of tree node.
Definition qgis.h:695
TilePixelRatio
DpiMode enum.
Definition qgis.h:3588
DatabaseProviderConnectionCapability2
The Capability enum represents the extended operations supported by the connection.
Definition qgis.h:6088
QFlags< PaintEffectFlag > PaintEffectFlags
Flags which control how paint effects behave.
Definition qgis.h:3010
LabelOffsetType
Behavior modifier for label offset and distance, only applies in some label placement modes.
Definition qgis.h:1361
QFlags< ProfileGeneratorFlag > ProfileGeneratorFlags
Definition qgis.h:4637
QFlags< MapLayerLegendFlag > MapLayerLegendFlags
Map layer legend flags.
Definition qgis.h:5021
MapGridUnit
Units for map grid values.
Definition qgis.h:5864
LabelPrioritization
Label prioritization.
Definition qgis.h:1273
GradientColorSource
Gradient color sources.
Definition qgis.h:3394
FileFilterType
Type of file filters.
Definition qgis.h:1490
LabelPlacement
Placement modes which determine how label candidates are generated for a feature.
Definition qgis.h:1287
RasterLayerType
Raster layer types.
Definition qgis.h:5262
static const double DEFAULT_M_COORDINATE
Default M coordinate value.
Definition qgis.h:7147
QFlags< VectorLayerTypeFlag > VectorLayerTypeFlags
Vector layer type flags.
Definition qgis.h:440
ScaleBarAlignment
Scalebar alignment.
Definition qgis.h:5806
LegendLayerDoubleClickAction
Action performed when double-clicking a layer in the legend.
Definition qgis.h:4979
RasterPyramidFormat
Raster pyramid formats.
Definition qgis.h:5301
ProcessingMode
Types of modes which Processing widgets can be created for.
Definition qgis.h:3888
VectorExportResult
Vector layer export result codes.
Definition qgis.h:1133
ShadowQuality
Shadow texture quality.
Definition qgis.h:4468
PdfRenderFlag
PDF rendering flags.
Definition qgis.h:7008
DistanceUnit
Units of distance.
Definition qgis.h:5512
RasterTemporalCapabilityFlag
Flags for raster layer temporal capabilities.
Definition qgis.h:2842
SymbolLayerFlag
Flags controlling behavior of symbol layers.
Definition qgis.h:942
MeshRangeLimit
Describes the limits used to compute mesh ranges (min/max values).
Definition qgis.h:6823
GradientSpread
Gradient spread options, which control how gradients are rendered outside of their start and end poin...
Definition qgis.h:3438
LegendSyncMode
Legend synchronization mode.
Definition qgis.h:5050
QFlags< AnnotationItemGuiFlag > AnnotationItemGuiFlags
Annotation item GUI flags.
Definition qgis.h:2684
LabelPolygonPlacementFlag
Polygon placement flags, which control how candidates are generated for a polygon feature.
Definition qgis.h:1420
RasterRangeLimit
Describes the limits used to compute raster ranges (min/max values).
Definition qgis.h:1694
ScaleMethod
Scale methods.
Definition qgis.h:665
QFlags< RasterProcessingParameterCapability > RasterProcessingParameterCapabilities
Raster layer processing parameter capabilities.
Definition qgis.h:6908
SldExportOption
SLD export options.
Definition qgis.h:737
VectorSimplificationAlgorithm
Simplification algorithms for vector features.
Definition qgis.h:3216
FilePathType
File path types.
Definition qgis.h:1826
CadConstraintType
Advanced digitizing constraint type.
Definition qgis.h:4293
AttributeFormPythonInitCodeSource
The Python init code source for attribute forms.
Definition qgis.h:6213
PointCountMethod
Methods which define the number of points randomly filling a polygon.
Definition qgis.h:3453
SldExportVendorExtension
SLD export vendor extensions, allow the use of vendor extensions when exporting to SLD.
Definition qgis.h:752
static const double DEFAULT_HIGHLIGHT_BUFFER_MM
Default highlight buffer in mm.
Definition qgis.h:7120
MapCanvasFlag
Flags controlling behavior of map canvases.
Definition qgis.h:3674
LayerTreeFilterFlag
Layer tree filter flags.
Definition qgis.h:4992
TextAnchorPoint
Anchor point of label text.
Definition qgis.h:1475
ExtrusionFace
Extrusion face types for the QgsTessellator.
Definition qgis.h:6931
AttributeFormLayout
Available form types for layout of the attribute form editor.
Definition qgis.h:6183
FeatureRequestFlag
Flags for controlling feature requests.
Definition qgis.h:2358
Map3DDebugFlag
Flags that control debug options for 3D maps.
Definition qgis.h:4354
VertexType
Types of vertex.
Definition qgis.h:3281
ShaderInterpolationMethod
Color ramp shader interpolation methods.
Definition qgis.h:1574
JoinStyle3D
Join styles for 3D buffers.
Definition qgis.h:2286
DataProviderFlag
Generic data provider flags.
Definition qgis.h:2474
Q_ENUM(GpsNavigationStatus)
GdalResampleAlgorithm
Resampling algorithm to be used (equivalent to GDAL's enum GDALResampleAlg).
Definition qgis.h:6420
RasterResamplingMethod
Resampling method for raster provider-level resampling.
Definition qgis.h:1633
GeometryValidationEngine
Available engines for validating geometries.
Definition qgis.h:2235
static int geosVersionPatch()
GEOS Patch version number linked.
Definition qgis.cpp:766
TransactionMode
Transaction mode.
Definition qgis.h:4188
Q_ENUM(ScaleToTileZoomLevelMethod)
QFlags< FeatureRendererFlag > FeatureRendererFlags
Flags controlling behavior of vector feature renderers.
Definition qgis.h:900
static const QColor DEFAULT_HIGHLIGHT_COLOR
Default highlight color.
Definition qgis.h:7115
ElevationMapCombineMethod
Methods used to select the elevation when two elevation maps are combined.
Definition qgis.h:5414
static Q_DECL_DEPRECATED const double SCALE_PRECISION
Fudge factor used to compare two scales.
Definition qgis.h:7134
RasterDrawingStyle
Raster drawing styles.
Definition qgis.h:5278
GeosCreationFlag
Flags which control geos geometry creation behavior.
Definition qgis.h:2311
Q_ENUM(SensorThingsExtension)
static const int MAXIMUM_LAYER_PREVIEW_TIME_MS
Maximum rendering time for a layer of a preview job.
Definition qgis.h:7183
QFlags< RubberBandComponent > RubberBandComponents
Rubber band components.
Definition qgis.h:7074
MeshRangeExtent
Describes the extent used to compute mesh ranges (min/max values).
Definition qgis.h:6835
GpsInformationComponent
GPS information component.
Definition qgis.h:2106
Q_ENUM(PointCloudProfileType)
ViewSyncModeFlag
Synchronization of 2D map canvas and 3D view.
Definition qgis.h:3693
ProcessingProviderFlag
Flags indicating how and when an processing provider operates and should be exposed to users.
Definition qgis.h:3774
FileOperationFlag
File operation flags.
Definition qgis.h:2429
QFlags< DataItemProviderCapability > DataItemProviderCapabilities
Capabilities for data item providers.
Definition qgis.h:1073
ProjectCapability
Flags which control project capabilities.
Definition qgis.h:4749
QFlags< BabelFormatCapability > BabelFormatCapabilities
Babel GPS format capabilities.
Definition qgis.h:2152
QFlags< SymbolLayerFlag > SymbolLayerFlags
Symbol layer flags.
Definition qgis.h:949
QFlags< RasterInterfaceCapability > RasterInterfaceCapabilities
Raster interface capabilities.
Definition qgis.h:5372
Q_ENUM(VectorProfileType)
AttributeActionType
Attribute action types.
Definition qgis.h:5159
TemporalNavigationMode
Temporal navigation modes.
Definition qgis.h:2721
ProcessingFieldParameterDataType
Processing field parameter data types.
Definition qgis.h:4035
AreaUnit
Units of area.
Definition qgis.h:5589
StringStatistic
Available string statistics.
Definition qgis.h:6610
SelectiveMaskSourceType
Selective masking source types.
Definition qgis.h:3270
FieldDomainMergePolicy
Merge policy for field domains.
Definition qgis.h:4142
ZonalStatistic
Statistics to be calculated during a zonal statistics operation.
Definition qgis.h:6461
MessageLevel
Level for messages This will be used both for message log and message bar in application.
Definition qgis.h:160
@ NoLevel
No level.
Definition qgis.h:165
@ Warning
Warning message.
Definition qgis.h:162
@ Critical
Critical/error message.
Definition qgis.h:163
@ Info
Information message.
Definition qgis.h:161
@ Success
Used for reporting a successful operation.
Definition qgis.h:164
MapGridBorderSide
Border sides for map grid annotations.
Definition qgis.h:5966
SqlKeywordCategory
SqlKeywordCategory enum represents the categories of the SQL keywords used by the SQL query editor.
Definition qgis.h:1189
QFlags< SnappingType > SnappingTypes
Snapping types.
Definition qgis.h:801
static Q_DECL_DEPRECATED QString geoWkt()
WKT string that represents a geographic coord system.
Definition qgis.h:7282
static Q_DECL_DEPRECATED bool hasQtWebkit()
Returns false.
Definition qgis.cpp:745
MapGridFrameSideFlag
Flags for controlling which side of the map a frame is drawn on.
Definition qgis.h:6017
GraduatedMethod
Methods for modifying symbols by range in a graduated symbol renderer.
Definition qgis.h:3522
QFlags< LabelLinePlacementFlag > LabelLinePlacementFlags
Line placement flags, which control how candidates are generated for a linear feature.
Definition qgis.h:1410
TiledSceneBoundingVolumeType
Tiled scene bounding volume types.
Definition qgis.h:6338
TextLayoutMode
Text layout modes.
Definition qgis.h:3104
PropertyType
Property types.
Definition qgis.h:723
QFlags< RenderContextFlag > RenderContextFlags
Render context flags.
Definition qgis.h:2969
LayerFilter
Filter for layers.
Definition qgis.h:225
Q_ENUM(ProviderStyleStorageCapability)
QFlags< SublayerFlag > SublayerFlags
Sublayer flags.
Definition qgis.h:1562
RasterRendererFlag
Flags which control behavior of raster renderers.
Definition qgis.h:1651
QFlags< ExtrusionFace > ExtrusionFaces
Tessellator extrusion face types.
Definition qgis.h:6943
static QString devVersion()
The development version.
Definition qgis.cpp:699
CrsType
Coordinate reference system types.
Definition qgis.h:2493
QFlags< GeosCreationFlag > GeosCreationFlags
Geos geometry creation behavior flags.
Definition qgis.h:2322
MapGridComponentVisibility
Visibility display settings for map grid annotations and frames.
Definition qgis.h:5896
SensorThingsEntity
OGC SensorThings API entity types.
Definition qgis.h:6726
MeshEditingErrorType
Type of error that can occur during mesh frame editing.
Definition qgis.h:1809
FieldDomainSplitPolicy
Split policy for field domains.
Definition qgis.h:4125
ArcGisRestServiceType
Available ArcGIS REST service types.
Definition qgis.h:4787
UriCleaningFlag
Flags for cleaning layer URIs.
Definition qgis.h:1507
RasterFileWriterResult
Raster file export results.
Definition qgis.h:1792
AnnotationItemEditOperationResult
Results from an edit operation on an annotation item.
Definition qgis.h:2706
ProcessingPropertyAvailability
Property availability, used for QgsProcessingAlgorithm::VectorProperties in order to determine if pro...
Definition qgis.h:3859
GeoJsonProfile
GeoJson export Profile according to OGC Features and Geometries JSON - Part 1: Core https://docs....
Definition qgis.h:5078
MapRecenteringMode
Modes for recentering map canvases.
Definition qgis.h:3706
RasterRangeAccuracy
Describes the accuracy used to compute raster ranges (min/max values).
Definition qgis.h:1725
ActionType
Action types.
Definition qgis.h:5094
ActionStart
Enum to determine when an operation would begin.
Definition qgis.h:1224
PlaybackOperation
Media playback operations.
Definition qgis.h:2750
QFlags< SymbolLayerUserFlag > SymbolLayerUserFlags
Symbol layer user flags.
Definition qgis.h:972
QFlags< TextRendererFlag > TextRendererFlags
Definition qgis.h:3627
SensorThingsExtension
OGC SensorThings extensions.
Definition qgis.h:6704
QueryStorageBackend
Stored query storage backends.
Definition qgis.h:3733
ProviderStyleStorageCapability
The StorageCapability enum represents the style storage operations supported by the provider.
Definition qgis.h:6119
AvoidIntersectionsMode
Flags which control how intersections of pre-existing feature are handled when digitizing new feature...
Definition qgis.h:4686
MarkerShape
Marker shapes.
Definition qgis.h:3296
StacObjectType
Available types of stac objects.
Definition qgis.h:6885
LegendJsonRenderFlag
Legend JSON export flags.
Definition qgis.h:5065
BlendMode
Blending modes defining the available composition modes that can be used when painting.
Definition qgis.h:5429
RasterElevationMode
Raster layer elevation modes.
Definition qgis.h:4240
Capitalization
String capitalization options.
Definition qgis.h:3605
TemporalIntervalMatchMethod
Method to use when resolving a temporal range to a data provider layer or band.
Definition qgis.h:2827
PictureFormat
Picture formats.
Definition qgis.h:5776
QFlags< LabelPolygonPlacementFlag > LabelPolygonPlacementFlags
Polygon placement flags, which control how candidates are generated for a polygon feature.
Definition qgis.h:1432
static QString releaseName()
Release name.
Definition qgis.cpp:694
LabelQuadrantPosition
Label quadrant positions.
Definition qgis.h:1375
QFlags< PlotToolFlag > PlotToolFlags
Definition qgis.h:4343
ScaleToTileZoomLevelMethod
Available methods for converting map scales to tile zoom levels.
Definition qgis.h:3636
SublayerQueryFlag
Flags which control how data providers will scan for sublayers in a dataset.
Definition qgis.h:1540
QFlags< VectorFileWriterCapability > VectorFileWriterCapabilities
Capabilities supported by a QgsVectorFileWriter object.
Definition qgis.h:1164
TextOrientation
Text orientations.
Definition qgis.h:3089
TemporalUnit
Temporal units.
Definition qgis.h:5658
QFlags< RasterRendererCapability > RasterRendererCapabilities
Raster renderer capabilities.
Definition qgis.h:1683
QFlags< SymbolPreviewFlag > SymbolPreviewFlags
Symbol preview flags.
Definition qgis.h:929
UnplacedLabelVisibility
Unplaced label visibility.
Definition qgis.h:1236
CrsDefinitionFormat
CRS definition formats.
Definition qgis.h:4110
SpatialFilterType
Feature request spatial filter types.
Definition qgis.h:2416
VerticalAnchorPoint
Marker symbol vertical anchor points.
Definition qgis.h:876
QFlags< LayoutRenderFlag > LayoutRenderFlags
Flags for controlling how a layout is rendered.
Definition qgis.h:5765
static QString defaultProjectScales()
A string with default project scales.
Definition qgis.cpp:674
QFlags< ProcessingParameterTypeFlag > ProcessingParameterTypeFlags
Flags which dictate the behavior of Processing parameter types.
Definition qgis.h:3970
TileAvailability
Possible availability states for a tile within a tile matrix.
Definition qgis.h:6305
ProjectFlag
Flags which control the behavior of QgsProjects.
Definition qgis.h:4322
MapGridStyle
Map grid drawing styles.
Definition qgis.h:5880
SensorThingsVersion
OGC SensorThings API versions.
Definition qgis.h:6692
FeatureRendererFlag
Flags controlling behavior of vector feature renderers.
Definition qgis.h:890
static Q_DECL_DEPRECATED QString geoProj4()
PROJ4 string that represents a geographic coord system.
Definition qgis.h:7293
AcademicReferenceType
Type of academic reference.
Definition qgis.h:5190
BrowserItemType
Browser item types.
Definition qgis.h:981
QFlags< FeatureRequestFlag > FeatureRequestFlags
Flags for controlling feature requests.
Definition qgis.h:2376
static bool hasGeographicLib()
Returns true if the QGIS build contains GeographicLib.
Definition qgis.cpp:727
SettingsType
Types of settings entries.
Definition qgis.h:676
QFlags< SettingsOption > SettingsOptions
Definition qgis.h:770
RasterTemporalMode
Raster layer temporal modes.
Definition qgis.h:2810
RasterAttributeTableType
The RasterAttributeTableType enum represents the type of RAT.
Definition qgis.h:1766
RubberBandIconType
Rubber band icon type.
Definition qgis.h:7044
LabelingFlag
Various flags that affect drawing and placement of labels.
Definition qgis.h:3040
GeometryType
The geometry types are used to group Qgis::WkbType in a coarse way.
Definition qgis.h:379
RelationshipType
Relationship types.
Definition qgis.h:4835
ScriptLanguageCapability
Script language capabilities.
Definition qgis.h:4945
RasterInterfaceCapability
Raster interface capabilities.
Definition qgis.h:5352
JoinStyle
Join styles for buffers.
Definition qgis.h:2273
PointCloudDrawOrder
Pointcloud rendering order for 2d views.
Definition qgis.h:4671
QFlags< RasterBandStatistic > RasterBandStatistics
Statistics to be calculated for raster bands.
Definition qgis.h:6657
CadMeasurementDisplayType
Advanced digitizing measurement display types.
Definition qgis.h:4309
ProcessingAlgorithmDocumentationFlag
Flags describing algorithm behavior for documentation purposes.
Definition qgis.h:3835
TextCharacterVerticalAlignment
Text vertical alignment for characters.
Definition qgis.h:3180
FieldDuplicatePolicy
Duplicate policy for fields.
Definition qgis.h:4162
UserProfileSelectionPolicy
User profile selection policy.
Definition qgis.h:6134
static const float DEFAULT_MAPTOPIXEL_THRESHOLD
Default threshold between map coordinates and device coordinates for map2pixel simplification.
Definition qgis.h:7108
QFlags< FileOperationFlag > FileOperationFlags
File operation flags.
Definition qgis.h:2434
DpiMode
DpiMode enum.
Definition qgis.h:3574
Q_ENUM(ProfileExportType)
Q_ENUM(UserInterfaceIconType)
BrowserLayerType
Browser item layer types.
Definition qgis.h:1082
QFlags< ProcessingAlgorithmFlag > ProcessingAlgorithmFlags
Flags indicating how and when an algorithm operates and should be exposed to users.
Definition qgis.h:3826
AltitudeBinding
Altitude binding.
Definition qgis.h:4214
QFlags< DataProviderReadFlag > DataProviderReadFlags
Flags which control data provider construction.
Definition qgis.h:512
StringFormat
Format of log message.
Definition qgis.h:175
Q_ENUM(ProcessingProviderFlag)
TiledSceneRendererFlag
Flags which control how tiled scene 2D renderers behave.
Definition qgis.h:6398
MapLayerActionTarget
Map layer action targets.
Definition qgis.h:5109
ShaderClassificationMethod
Color ramp shader classification methods.
Definition qgis.h:1589
MapLayerLegendFlag
Map layer legend flags.
Definition qgis.h:5011
ZonalStatisticResult
Zonal statistics result codes.
Definition qgis.h:6498
ScriptLanguage
Scripting languages.
Definition qgis.h:4922
QFlags< BrowserItemCapability > BrowserItemCapabilities
Browser item capabilities.
Definition qgis.h:1027
QFlags< NetworkRequestFlag > NetworkRequestFlags
Flags controlling behavior of network requests.
Definition qgis.h:197
Export3DSceneFormat
The file format used when exporting a 3D scene.
Definition qgis.h:4582
FeatureAvailability
Possible return value for QgsFeatureSource::hasFeatures() to determine if a source is empty.
Definition qgis.h:618
PlotAxisType
Plots axis types.
Definition qgis.h:3550
TiledSceneProviderCapability
Tiled scene data provider capabilities.
Definition qgis.h:6319
LabelMultiLineAlignment
Text alignment for multi-line labels.
Definition qgis.h:1458
PointCloudProfileType
Types of elevation profiles to generate for point cloud sources.
Definition qgis.h:4619
RasterBandStatistic
Available raster band statistics.
Definition qgis.h:6639
QFlags< VectorTileProviderCapability > VectorTileProviderCapabilities
Vector tile data provider capabilities.
Definition qgis.h:6296
Q_ENUM(SensorThingsVersion)
AuthConfigurationStorageCapability
Authentication configuration storage capabilities.
Definition qgis.h:107
QFlags< ZonalStatistic > ZonalStatistics
Statistics to be calculated during a zonal statistics operation.
Definition qgis.h:6489
VectorDataProviderTemporalMode
Vector data provider temporal handling modes.
Definition qgis.h:2797
TextRenderFormat
Options for rendering text.
Definition qgis.h:3021
DocumentationBrowser
Documentation API browser.
Definition qgis.h:6787
DataType
Raster data types.
Definition qgis.h:393
Q_ENUM(ProfileSurfaceSymbology)
QFlags< ViewSyncModeFlag > ViewSyncModeFlags
Definition qgis.h:3698
QFlags< SublayerQueryFlag > SublayerQueryFlags
Sublayer query flags.
Definition qgis.h:1548
SystemOfMeasurement
Systems of unit measurement.
Definition qgis.h:5465
RasterAttributeTableFieldUsage
The RasterAttributeTableFieldUsage enum represents the usage of a Raster Attribute Table field.
Definition qgis.h:1737
VerticalAxisInversion
Vertical axis inversion options for 3D views.
Definition qgis.h:4548
QFlags< CoordinateTransformationFlag > CoordinateTransformationFlags
Coordinate transformation flags.
Definition qgis.h:2887
RelationshipCapability
Relationship capabilities.
Definition qgis.h:4875
SkyboxCubeMapping
Skybox texture cube mapping for distinct texture skyboxes.
Definition qgis.h:4508
RasterBuildPyramidOption
Raster pyramid building options.
Definition qgis.h:5316
QFlags< VectorProviderCapability > VectorProviderCapabilities
Vector data provider capabilities.
Definition qgis.h:564
NavigationMode
The navigation mode used by 3D cameras.
Definition qgis.h:4523
static int geosVersionMajor()
GEOS Major version number linked.
Definition qgis.cpp:756
LinearReferencingPlacement
Defines how/where the labels should be placed in a linear referencing symbol layer.
Definition qgis.h:3365
TileChildrenAvailability
Possible availability states for a tile's children.
Definition qgis.h:6366
PointCloudZoomOutRenderBehavior
Point cloud zoom out options.
Definition qgis.h:6860
QFlags< SymbolConverterCapability > SymbolConverterCapabilities
Symbol converter capabilities.
Definition qgis.h:839
LayerType
Types of layers that can be added to a map.
Definition qgis.h:206
QFlags< AnnotationItemFlag > AnnotationItemFlags
Annotation item flags.
Definition qgis.h:2657
FieldOrigin
Field origin.
Definition qgis.h:1854
BillboardScaleMode
3D billboard scaling modes.
Definition qgis.h:4441
LinearReferencingLabelSource
Defines what quantity to use for the labels shown in a linear referencing symbol layer.
Definition qgis.h:3379
QFlags< BrowserItemFilterFlag > BrowserItemFilterFlags
Browser item filter flags.
Definition qgis.h:1046
LabelWhitespaceCollisionHandling
Label whitespace collision handling.
Definition qgis.h:1261
RasterRangeExtent
Describes the extent used to compute raster ranges (min/max values).
Definition qgis.h:1710
QFlags< Statistic > Statistics
Statistics to be calculated for generic values.
Definition qgis.h:6576
PlotToolFlag
Flags that control the way the QgsPlotTools operate.
Definition qgis.h:4339
RenderUnit
Rendering size units.
Definition qgis.h:5682
QFlags< ArcGisRestServiceCapability > ArcGisRestServiceCapabilities
Available ArcGIS REST service capabilities.
Definition qgis.h:4824
static QString geographicCrsAuthId()
Geographic coordinate system auth:id string for a default geographic CRS (EPSG:4326).
Definition qgis.h:7276
CoordinateOrder
Order of coordinates.
Definition qgis.h:2568
SelectionFlag
Flags which control feature selection behavior.
Definition qgis.h:1947
QFlags< SettingsTreeNodeOption > SettingsTreeNodeOptions
Definition qgis.h:712
EndCapStyle
End cap styles for buffers.
Definition qgis.h:2260
ScaleCalculationMethod
Scale calculation logic.
Definition qgis.h:5789
QFlags< TiledSceneRequestFlag > TiledSceneRequestFlags
Flags which control how tiled scene requests behave.
Definition qgis.h:6389
static bool hasSfcgal()
Returns true if the QGIS build contains SFCGAL.
Definition qgis.cpp:709
QFlags< MapLayerActionFlag > MapLayerActionFlags
Map layer action flags.
Definition qgis.h:5148
QFlags< MapLayerProperty > MapLayerProperties
Map layer properties.
Definition qgis.h:2451
QFlags< LoadStyleFlag > LoadStyleFlags
Flags for loading layer styles.
Definition qgis.h:263
BabelCommandFlag
Babel command flags, which control how commands and arguments are generated for executing GPSBabel pr...
Definition qgis.h:2163
QFlags< LabelingFlag > LabelingFlags
Flags that affect drawing and placement of labels.
Definition qgis.h:3064
QFlags< VerticalAxisInversion > VerticalAxisInversionFlags
Definition qgis.h:4560
FieldDomainType
Types of field domain.
Definition qgis.h:4175
MapLayerRendererFlag
Flags which control how map layer renderers behave.
Definition qgis.h:2979
RenderContextFlag
Flags which affect rendering operations.
Definition qgis.h:2943
RasterPipeInterfaceRole
Raster pipe interface roles.
Definition qgis.h:1602
CoverageValidityResult
Coverage validity results.
Definition qgis.h:2331
DataProviderReadFlag
Flags which control data provider construction.
Definition qgis.h:491
ScaleBarSegmentSizeMode
Modes for setting size for scale bar segments.
Definition qgis.h:5821
Aggregate
Available aggregates to calculate.
Definition qgis.h:6516
static int sfcgalVersionInt()
Returns the version of the SFCGAL library if QGIS is built with SFCGAL.
Definition qgis.cpp:718
UnknownLayerCrsBehavior
Behavior to use when encountering a layer with an unknown (invalid) CRS.
Definition qgis.h:2624
BrowserItemFilterFlag
Browser item filter flags.
Definition qgis.h:1036
SymbolPreviewFlag
Flags for controlling how symbol preview images are generated.
Definition qgis.h:924
static const double DEFAULT_SEARCH_RADIUS_MM
Identify search radius in mm.
Definition qgis.h:7105
AnnotationItemGuiFlag
Flags for controlling how an annotation item behaves in the GUI.
Definition qgis.h:2680
MapBoxGlStyleSourceType
Available MapBox GL style source types.
Definition qgis.h:4768
LayoutUnitType
Types of layout units.
Definition qgis.h:5722
VectorDataProviderAttributeEditCapability
Attribute editing capabilities which may be supported by vector data providers.
Definition qgis.h:631
DashPatternLineEndingRule
Dash pattern line ending rules.
Definition qgis.h:3492
FieldMetadataProperty
Standard field metadata values.
Definition qgis.h:1895
MapGridAnnotationType
Annotation coordinate type.
Definition qgis.h:6043
TiledSceneRequestFlag
Flags which control how tiled scene requests behave.
Definition qgis.h:6379
RasterRendererCapability
Raster renderer capabilities.
Definition qgis.h:1673
VertexMarkerType
Editing vertex markers, used for showing vertices during a edit operation.
Definition qgis.h:1983
Q_ENUM(LinearMatrixMethod)
HistoryProviderBackend
History provider backends.
Definition qgis.h:3719
static const double DEFAULT_SEGMENT_EPSILON
Default snapping tolerance for segments.
Definition qgis.h:7177
RasterExportType
Raster file export types.
Definition qgis.h:1779
SublayerPromptMode
Specifies how to handle layer sources with multiple sublayers.
Definition qgis.h:1838
TextVerticalAlignment
Text vertical alignment.
Definition qgis.h:3164
RelationshipCardinality
Relationship cardinality.
Definition qgis.h:4861
GradientType
Gradient types.
Definition qgis.h:3408
QFlags< ScriptLanguageCapability > ScriptLanguageCapabilities
Script language capabilities.
Definition qgis.h:4957
VectorProfileType
Types of elevation profiles to generate for vector sources.
Definition qgis.h:4607
GpsFeatureType
GPS feature types.
Definition qgis.h:2177
SourceHierarchyLevel
Defines the structural levels within a data source hierarchy.
Definition qgis.h:1527
VectorLayerTypeFlag
Vector layer type flags.
Definition qgis.h:435
MakeValidMethod
Algorithms to use when repairing invalid geometries.
Definition qgis.h:2344
QFlags< Map3DDebugFlag > Map3DDebugFlags
Definition qgis.h:4364
RangeLimits
Describes how the limits of a range are handled.
Definition qgis.h:4226
QFlags< ProjectFlag > ProjectFlags
Definition qgis.h:4330
VectorTemporalLimitMode
Mode for the handling of the limits of the filtering timeframe for vector features.
Definition qgis.h:2785
QFlags< ProcessingParameterFlag > ProcessingParameterFlags
Flags which dictate the behavior of Processing parameters.
Definition qgis.h:3996
SqlLayerDefinitionCapability
SqlLayerDefinitionCapability enum lists the arguments supported by the provider when creating SQL que...
Definition qgis.h:1172
static int versionInt()
Version number used for comparing versions using the "Check QGIS Version" function.
Definition qgis.cpp:687
VectorEditResult
Specifies the result of a vector layer edit operation.
Definition qgis.h:1968
QFlags< VectorDataProviderAttributeEditCapability > VectorDataProviderAttributeEditCapabilities
Attribute editing capabilities which may be supported by vector data providers.
Definition qgis.h:643
Map3DProjectionType
3D map projection type
Definition qgis.h:4373
Axis
Cartesian axes.
Definition qgis.h:2638
QFlags< ProcessingAlgorithmDocumentationFlag > ProcessingAlgorithmDocumentationFlags
Flags describing algorithm behavior for documentation purposes.
Definition qgis.h:3847
QFlags< RelationshipCapability > RelationshipCapabilities
Relationship capabilities.
Definition qgis.h:4887
ArcGisRestServiceCapability
Available ArcGIS REST service capabilities.
Definition qgis.h:4808
QFlags< SymbolRenderHint > SymbolRenderHints
Symbol render hints.
Definition qgis.h:818
VolumeUnit
Units of volume.
Definition qgis.h:5614
CurvedTextFlag
Flags controlling behavior of curved text generation.
Definition qgis.h:3193
AttributeEditorType
Attribute editor types.
Definition qgis.h:6149
QFlags< LegendJsonRenderFlag > LegendJsonRenderFlags
Definition qgis.h:5069
QFlags< ProviderStyleStorageCapability > ProviderStyleStorageCapabilities
Definition qgis.h:6125
RubberBandComponent
Rubber band components.
Definition qgis.h:7063
EmbeddedScriptMode
Authorisation to run script embedded in projects.
Definition qgis.h:448
SymbolLayerUserFlag
User-specified flags controlling behavior of symbol layers.
Definition qgis.h:962
InvalidGeometryCheck
Methods for handling of features with invalid geometries.
Definition qgis.h:2403
QFlags< SymbolFlag > SymbolFlags
Symbol flags.
Definition qgis.h:915
QFlags< ProcessingFeatureSourceDefinitionFlag > ProcessingFeatureSourceDefinitionFlags
Flags which control behavior for a Processing feature source.
Definition qgis.h:3918
MapGridFrameStyle
Style for map grid frames.
Definition qgis.h:5982
PointCloudAccessType
The access type of the data, local is for local files and remote for remote files (over HTTP).
Definition qgis.h:6849
ProfileExportType
Types of export for elevation profiles.
Definition qgis.h:4646
MeshElevationMode
Mesh layer elevation modes.
Definition qgis.h:4254
ProjectFileFormat
Flags which control project read behavior.
Definition qgis.h:4701
SnappingMode
SnappingMode defines on which layer the snapping is performed.
Definition qgis.h:778
SymbolType
Symbol types.
Definition qgis.h:651
RasterColorInterpretation
Raster color interpretation.
Definition qgis.h:5211
static const int USER_CRS_START_ID
Minimum ID number for a user-defined projection.
Definition qgis.h:7168
ProfileSurfaceSymbology
Surface symbology type for elevation profile plots.
Definition qgis.h:4594
LabelPlacementEngineVersion
Labeling placement engine version.
Definition qgis.h:3075
Q_ENUM(ProcessingAlgorithmFlag)
static int geosVersionMinor()
GEOS Minor version number linked.
Definition qgis.cpp:761
MaterialRenderingTechnique
Material rendering techniques.
Definition qgis.h:4409
ColorModel
Color model types.
Definition qgis.h:6761
RendererUsage
Usage of the renderer.
Definition qgis.h:3661
SettingsTreeNodeOption
Options for named list nodes.
Definition qgis.h:707
BabelFormatCapability
Babel GPS format capabilities.
Definition qgis.h:2144
PostgresRelKind
Postgres database relkind options.
Definition qgis.h:6067
SegmentCalculationMethod
brief Method used to calculate the number of segments for circle approximation
Definition qgis.h:6872
WmsDimensionDefaultDisplay
QGIS Server WMS Dimension default display types.
Definition qgis.h:7030
GpsConnectionType
GPS connection types.
Definition qgis.h:2010
Q_ENUM(InputControllerType)
QFlags< DatabaseProviderConnectionCapability2 > DatabaseProviderConnectionCapabilities2
Definition qgis.h:6096
MouseHandlesAction
Action to be performed by the mouse handles.
Definition qgis.h:6799
ProcessingFeatureSourceDefinitionFlag
Flags which control behavior for a Processing feature source.
Definition qgis.h:3903
QFlags< TextComponent > TextComponents
Text components.
Definition qgis.h:3134
static QString geoNone()
Constant that holds the string representation for "No ellipse/No CRS".
Definition qgis.h:7269
DevToolsNodeRole
Dev tools node custom data roles.
Definition qgis.h:6916
LoadStyleFlag
Flags for loading layer styles.
Definition qgis.h:252
BetweenLineConstraint
Between line constraints which can be enabled.
Definition qgis.h:4267
QFlags< VectorTileProviderFlag > VectorTileProviderFlags
Vector tile data provider flags.
Definition qgis.h:6278
SymbolConverterCapability
Symbol converter capabilities.
Definition qgis.h:827
MetadataDateType
Date types for metadata.
Definition qgis.h:5177
QFlags< RasterTemporalCapabilityFlag > RasterTemporalCapabilityFlags
Flags for raster layer temporal capabilities.
Definition qgis.h:2853
ProcessingFeatureSourceFlag
Flags which control how QgsProcessingFeatureSource fetches features.
Definition qgis.h:3929
RasterIdentifyFormat
Raster identify formats.
Definition qgis.h:5331
MapGridAnnotationDirection
Direction of grid annotations.
Definition qgis.h:5926
TextHorizontalAlignment
Text horizontal alignment.
Definition qgis.h:3145
SymbolFlag
Flags controlling behavior of symbols.
Definition qgis.h:909
LineExtensionSide
Designates whether the line extension constraint is currently soft locked with the previous or next v...
Definition qgis.h:4280
HttpMethod
Different methods of HTTP requests.
Definition qgis.h:1118
WkbType
The WKB type describes the number of dimensions a geometry has.
Definition qgis.h:294
QFlags< SldExportOption > SldExportOptions
Definition qgis.h:743
SymbolCoordinateReference
Symbol coordinate reference modes.
Definition qgis.h:3423
QFlags< ProcessingProviderFlag > ProcessingProviderFlags
Flags indicating how and when an processing provider operates and should be exposed to users.
Definition qgis.h:3788
TileRefinementProcess
Tiled scene tile refinement processes.
Definition qgis.h:6354
QFlags< DateTimeStatistic > DateTimeStatistics
Statistics to be calculated for date/time values.
Definition qgis.h:6601
SelectionRenderingMode
Specifies how a selection should be rendered.
Definition qgis.h:1908
InputControllerType
Input controller types.
Definition qgis.h:6055
TextRendererFlag
Flags which control the behavior of rendering text.
Definition qgis.h:3623
SelectGeometryRelationship
Geometry relationship test to apply for selecting features.
Definition qgis.h:1935
CrsAxisDirection
Coordinate reference system axis directions.
Definition qgis.h:2518
ProcessingModelChildParameterSource
Processing model child parameter sources.
Definition qgis.h:4066
static int geosVersionInt()
GEOS version number linked.
Definition qgis.cpp:750
QFlags< MarkerLinePlacement > MarkerLinePlacements
Definition qgis.h:3356
QFlags< MapCanvasFlag > MapCanvasFlags
Flags controlling behavior of map canvases.
Definition qgis.h:3684
CrsWktVariant
Coordinate reference system WKT formatting variants.
Definition qgis.h:2598
QFlags< TiledSceneRendererFlag > TiledSceneRendererFlags
Flags which control how tiled scene 2D renderers behave.
Definition qgis.h:6411
MapGridAnnotationFormat
Format for displaying map grid annotations.
Definition qgis.h:5945
DocumentationApi
Documentation API.
Definition qgis.h:6773
AutoRefreshMode
Map layer automatic refresh modes.
Definition qgis.h:2461
AnnotationPlacementMode
Annotation item placement modes.
Definition qgis.h:2667
ProcessingAlgorithmFlag
Flags indicating how and when an algorithm operates and should be exposed to users.
Definition qgis.h:3799
QFlags< InstancedMaterialFlag > InstancedMaterialFlags
Definition qgis.h:4432
SceneMode
The 3D scene mode used in 3D map views.
Definition qgis.h:4536
InstancedMaterialFlag
Optional per-instance properties of instanced materials.
Definition qgis.h:4427
FieldConfigurationFlag
Configuration flags for fields These flags are meant to be user-configurable and are not describing a...
Definition qgis.h:1871
SettingsOrigin
The setting origin describes where a setting is stored.
Definition qgis.h:4909
HorizontalAnchorPoint
Marker symbol horizontal anchor points.
Definition qgis.h:862
QFlags< CurvedTextFlag > CurvedTextFlags
Flags controlling behavior of curved text generation.
Definition qgis.h:3206
ProcessingParameterFlag
Flags which dictate the behavior of Processing parameters.
Definition qgis.h:3981
LabelOverlapHandling
Label overlap handling.
Definition qgis.h:1248
static const double UI_SCALE_FACTOR
UI scaling factor.
Definition qgis.h:7153
FeatureSymbologyExport
Options for exporting features considering their symbology.
Definition qgis.h:6255
QFlags< LayerFilter > LayerFilters
Definition qgis.h:243
ProcessingDateTimeParameterDataType
Processing date time parameter data types.
Definition qgis.h:4053
DockableWidgetInitialState
Dockable widget initial states.
Definition qgis.h:6981
CoordinateTransformationFlag
Flags which adjust the coordinate transformations behave.
Definition qgis.h:2874
TextComponent
Text components.
Definition qgis.h:3121
DateTimeStatistic
Available date/time statistics.
Definition qgis.h:6585
AnimationState
Animation states.
Definition qgis.h:2737
TransformDirection
Indicates the direction (forward or inverse) of a transform.
Definition qgis.h:2862
LightSourceType
Light source types for 3D scenes.
Definition qgis.h:4483
QFlags< ProcessingFeatureSourceFlag > ProcessingFeatureSourceFlags
Flags which control how QgsProcessingFeatureSource fetches features.
Definition qgis.h:3941
QFlags< HistoryProviderBackend > HistoryProviderBackends
Definition qgis.h:3724
LabelPredefinedPointPosition
Positions for labels when using the Qgis::LabelPlacement::OrderedPositionsAroundPoint placement mode.
Definition qgis.h:1322
QFlags< FieldConfigurationFlag > FieldConfigurationFlags
Configuration flags for fields These flags are meant to be user-configurable and are not describing a...
Definition qgis.h:1886
UpsideDownLabelHandling
Handling techniques for upside down labels.
Definition qgis.h:1443
LinearMatrixMethod
Mathematical methods to use for solving linear matrix equations.
Definition qgis.h:7095
static const double DEFAULT_POINT_SIZE
The default size (in millimeters) for point marker symbols.
Definition qgis.h:7171
DeviceConnectionStatus
GPS connection status.
Definition qgis.h:2024
ProcessingNumberParameterType
Processing numeric parameter data types.
Definition qgis.h:4021
MapSettingsFlag
Flags which adjust the way maps are rendered.
Definition qgis.h:2909
QFlags< SqlLayerDefinitionCapability > SqlLayerDefinitionCapabilities
SQL layer definition capabilities.
Definition qgis.h:1180
ProcessingLogLevel
Logging level for algorithms to use when pushing feedback messages.
Definition qgis.h:3873
SelectBehavior
Specifies how a selection should be applied.
Definition qgis.h:1921
LayoutRenderFlag
Flags for controlling how a layout is rendered.
Definition qgis.h:5736
Utility class that encapsulates an action based on vector attributes.
Definition qgsaction.h:38
Utility class for calculating aggregates for a field (or expression) over the features from a vector ...
Utility functions for working with ArcGIS REST services.
An abstract base class for any elements of a drag and drop form.
A ramp shader will color a raster pixel based on a list of values ranges in a ramp.
Represents a coordinate reference system (CRS).
Handles coordinate transforms between two coordinate systems.
Abstract base class for curved geometry type.
Definition qgscurve.h:36
Base class for all items in the model.
Definition qgsdataitem.h:50
Abstract base class for spatial data provider implementations.
Calculator for summary statistics and aggregates for a list of datetimes.
Contains configuration settings for an editor form.
Wraps a request for features to a vector layer (or directly its vector data provider).
An interface for objects which provide features via a getFeatures method.
Container of fields for a vector layer.
Definition qgsfields.h:45
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.
Contains settings related to how the label engine places and formats labels for line features (or pol...
Stores global configuration for labeling engine.
Contains constants and enums relating to labeling.
Definition qgslabeling.h:33
A browser item that represents a layer that can be opened with one of the providers.
An individual grid which is drawn above the map content in a QgsLayoutItemMap.
A layout item subclass that displays SVG files or raster format images (jpg, png, ....
Stores information relating to the current rendering settings for a layout.
Contains detailed styling information relating to how a layout legend should be rendered.
A proxy model which provides an easy to use model to display the list of layers in widgets.
Base class for all map layer types.
Definition qgsmaplayer.h:83
Contains configuration for rendering maps.
Abstract base class for marker symbol layers.
Interface for showing messages from QGIS in GUI independent way.
Registry for temporary fetched files.
Contains miscellaneous painting utility functions.
Definition qgspainting.h:32
Contains settings for how a map layer will be labeled.
Abstract base class for 2d point cloud renderers.
Abstract base class for processing algorithms.
Contains information about the context in which a processing algorithm is executed.
Encapsulates settings relating to a feature source input to a processing algorithm.
QgsFeatureSource subclass which proxies methods to an underlying QgsFeatureSource,...
A datetime (or pure date or time) parameter for processing algorithms.
Base class for the definition of processing parameters.
A vector layer or feature source field parameter for processing algorithms.
An input file or folder parameter for processing algorithms.
A numeric parameter for processing algorithms.
A parameter for processing algorithms that need a list of input vector layers to construct a TIN.
Makes metadata of processing parameters available.
Abstract base class for processing providers.
Contains enumerations and other constants for use in processing algorithms and parameters.
Encapsulates a QGIS project, including sets of map layers and their styles, layouts,...
Definition qgsproject.h:114
A store for object properties.
Holds data provider key, description, and associated shared library file or function pointer informat...
A fill symbol layer which places markers at random locations within polygons.
The RasterBandStats struct is a container for statistics about a single raster band.
Implementation of data provider temporal properties for QgsRasterDataProviders.
Base class for raster data providers.
The raster file writer which allows you to save a raster to a new file.
Base class for processing filters like renderers, reprojector, resampler etc.
Implementation of map layer temporal properties for raster layers.
Represents a raster layer.
Describes the origin of minimum and maximum values in a raster.
Contains a pipeline of raster interfaces for sequential raster processing.
Raster namespace.
Definition qgsraster.h:32
Represents a relationship between two vector layers.
Definition qgsrelation.h:42
Contains information about the context of a rendering operation.
Stores the appearance and layout settings for scalebar drawing with QgsScaleBarRenderer.
Represents a settings entry and provides methods for reading and writing settings values.
RAII signal blocking class.
Definition qgis.h:7417
Object * operator->()
Returns pointer to blocked QObject.
Definition qgis.h:7431
QgsSignalBlocker(Object *object)
Constructor for QgsSignalBlocker.
Definition qgis.h:7423
Abstract base class for simple marker symbol layers.
Stores configuration of snapping settings for the project.
Calculator for summary statistics for a list of doubles.
Calculator for summary statistics and aggregates for a list of strings.
Utility functions for working with strings.
Contains utility functions for working with symbols and symbol layers.
Abstract base class for all rendered symbols.
Definition qgssymbol.h:227
Base class for templated line symbols, e.g.
Implements a temporal controller based on a frame by frame navigation and animation.
Container for all settings relating to text rendering.
Utility functions for text rendering.
Handles rendering text using rich formatting options, including drop shadows, buffers and background ...
Provides calculations for tolerance values in map units.
Helper functions for various unit types.
Implementation of data provider temporal properties for QgsVectorDataProviders.
Base class for vector data providers.
A convenience class for writing vector layers to disk based formats (e.g.
A convenience class for exporting vector layers to a destination data provider.
Implementation of map layer temporal properties for vector layers.
Represents a vector layer which manages a vector based dataset.
Contains settings for simplifying geometries fetched from a vector layer.
Handles storage of information regarding WKB types and their properties.
Definition qgswkbtypes.h:42
FeatureCountState
Enumeration of feature count states.
Definition qgis.h:586
CreateLayerActionOnExisting
Actions to take when attempting to create a layer on an existing datasource.
Definition qgis.h:573
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:8117
Q_DECL_DEPRECATED CORE_EXPORT QString qgsVsiPrefix(const QString &path)
Returns a the vsi prefix which corresponds to a file path, or an empty string if the path is not asso...
Definition qgis.cpp:606
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:8031
CORE_EXPORT bool qgsVariantEqual(const QVariant &lhs, const QVariant &rhs)
Compares two QVariant values and returns whether they are equal, two NULL values are always treated a...
Definition qgis.cpp:657
Q_DECL_DEPRECATED const long GEOSRID
Numeric ID for the EPSG:4326 geographic coordinate system.
Definition qgis.h:8110
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:7812
QString qgsDoubleToString(double a, int precision=17)
Returns a string representation of a double.
Definition qgis.h:7464
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:7682
QString qgsEnumValueToKey(const T &value, bool *returnOk=nullptr)
Returns the value for the given key of an enum.
Definition qgis.h:7793
QString qgsFlagValueToKeys(const T &value, bool *returnOk=nullptr)
Returns the value for the given keys of a flag.
Definition qgis.h:7851
CORE_EXPORT size_t qHash(const QVariant &variant)
Hash for QVariant.
Definition qgis.cpp:611
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:7666
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:7880
CORE_EXPORT bool qgsVariantGreaterThan(const QVariant &lhs, const QVariant &rhs)
Compares two QVariant values and returns whether the first is greater than the second.
Definition qgis.cpp:601
unsigned long long qgssize
Qgssize is used instead of size_t, because size_t is stdlib type, unknown by SIP, and it would be har...
Definition qgis.h:8136
const QMap< T, QString > qgsEnumMap()
Returns a map of all enum entries.
Definition qgis.h:7776
bool qgsFloatNear(float a, float b, float epsilon=4 *FLT_EPSILON)
Compare two floats (but allow some difference).
Definition qgis.h:7622
CORE_EXPORT int qgsVariantCompare(const QVariant &lhs, const QVariant &rhs, bool strictTypeCheck=false)
Compares two QVariant values.
Definition qgis.cpp:139
QString qgsSetJoin(const QSet< T > &set, const QString &separator)
Joins all the set values into a single string with each element separated by the given separator.
Definition qgis.h:7698
CORE_EXPORT double qgsPermissiveToDouble(QString string, bool &ok)
Converts a string to a double in a permissive way, e.g., allowing for incorrect numbers of digits bet...
Definition qgis.cpp:91
const QList< T > qgsEnumList()
Returns a list all enum entries.
Definition qgis.h:7759
double qgsRound(double number, int places)
Returns a double number, rounded (as close as possible) to the specified number of places.
Definition qgis.h:7651
bool qgsDoubleNear(double a, double b, double epsilon=4 *std::numeric_limits< double >::epsilon())
Compare two doubles (but allow some difference).
Definition qgis.h:7557
bool qgsNanCompatibleEquals(double a, double b)
Compare two doubles, treating nan values as equal.
Definition qgis.h:7509
QgsSignalBlocker< Object > whileBlocking(Object *object)
Temporarily blocks signals from a QObject while calling a single method from the object.
Definition qgis.h:7451
void CORE_EXPORT * qgsMalloc(size_t size)
Allocates size bytes and returns a pointer to the allocated memory.
Definition qgis.cpp:112
QMap< QString, QString > QgsStringMap
Definition qgis.h:8126
Q_DECL_DEPRECATED const long GEO_EPSG_CRS_ID
Numeric ID for the EPSG:4326 geographic coordinate system.
Definition qgis.h:8124
bool qgsDoubleNearSig(double a, double b, int significantDigits=10)
Compare two doubles using specified number of significant digits.
Definition qgis.h:7628
void CORE_EXPORT qgsFree(void *ptr)
Frees the memory space pointed to by ptr.
Definition qgis.cpp:134
bool qgsNumberNear(T a, T b, T epsilon=std::numeric_limits< T >::epsilon() *4)
Compare two numbers of type T (but allow some difference).
Definition qgis.h:7529
CORE_EXPORT qlonglong qgsPermissiveToLongLong(QString string, bool &ok)
Converts a string to an qlonglong in a permissive way, e.g., allowing for incorrect numbers of digits...
Definition qgis.cpp:105
CORE_EXPORT int qgsPermissiveToInt(QString string, bool &ok)
Converts a string to an integer in a permissive way, e.g., allowing for incorrect numbers of digits b...
Definition qgis.cpp:98
CORE_EXPORT bool qgsVariantLessThan(const QVariant &lhs, const QVariant &rhs)
Compares two QVariant values and returns whether the first is less than the second.
Definition qgis.cpp:596
bool qgsDoubleGreaterThanOrNear(double a, double b, double epsilon=4 *std::numeric_limits< double >::epsilon())
Compare two doubles to see if one is greater than the other or very near to the other.
Definition qgis.h:7597
#define QHASH_FOR_CLASS_ENUM(T)
Definition qgis.h:50
bool qgsDoubleLessThanOrNear(double a, double b, double epsilon=4 *std::numeric_limits< double >::epsilon())
Compare two doubles to see if one is less than the other or very near to the other.
Definition qgis.h:7570
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:8047
#define SIP_DEPRECATED
Definition qgis_sip.h:113
#define SIP_ENUM_BASETYPE(type)
Definition qgis_sip.h:277
#define SIP_SKIP
Definition qgis_sip.h:138
#define SIP_MONKEYPATCH_SCOPEENUM_UNNEST(OUTSIDE_CLASS, FORMERNAME)
Definition qgis_sip.h:270
#define SIP_MONKEYPATCH_FLAGS_UNNEST(OUTSIDE_CLASS, FORMERNAME)
Definition qgis_sip.h:271
#define SIP_MONKEYPATCH_SCOPEENUM
Definition qgis_sip.h:269
#define SIP_MONKEYPATCH_COMPAT_NAME(FORMERNAME)
Definition qgis_sip.h:272
Q_DECLARE_METATYPE(QgsDatabaseQueryLogEntry)
Q_DECLARE_OPERATORS_FOR_FLAGS(QgsProjectionSelectionWidget::CrsOptions)
Utility class for identifying a unique vertex within a geometry.
Definition qgsvertexid.h:35