27#include <gdalwarper.h>
29#include "cpl_string.h"
48 void CORE_EXPORT
operator()( OGRDataSourceH source )
const;
61 void CORE_EXPORT
operator()( OGRGeometryH geometry )
const;
74 void CORE_EXPORT
operator()( OGRFieldDefnH definition )
const;
87 void CORE_EXPORT
operator()( OGRFeatureH feature )
const;
113 void CORE_EXPORT
operator()( GDALWarpOptions *options )
const;
175 static QVariant OGRFieldtoVariant(
const OGRField *value, OGRFieldType type );
182 static std::unique_ptr<OGRField> variantToOGRField(
const QVariant &value );
191 static QgsFeature readOgrFeature( OGRFeatureH ogrFet,
const QgsFields &fields, QTextCodec *encoding );
199 static QgsFields readOgrFields( OGRFeatureH ogrFet, QTextCodec *encoding );
211 static QVariant getOgrFeatureAttribute( OGRFeatureH ogrFet,
const QgsFields &fields,
int attIndex, QTextCodec *encoding,
bool *ok =
nullptr );
225 static QVariant getOgrFeatureAttribute( OGRFeatureH ogrFet,
const QgsField &
field,
int attIndex, QTextCodec *encoding,
bool *ok =
nullptr );
236 static bool readOgrFeatureAttributes( OGRFeatureH ogrFet,
const QgsFields &fields,
QgsFeature &feature, QTextCodec *encoding );
246 static bool readOgrFeatureGeometry( OGRFeatureH ogrFet,
QgsFeature &feature );
255 static QgsGeometry ogrGeometryToQgsGeometry( OGRGeometryH geom );
266 static QgsFeatureList stringToFeatureList(
const QString &
string,
const QgsFields &fields, QTextCodec *encoding );
275 static QgsFields stringToFields(
const QString &
string, QTextCodec *encoding );
282 static QStringList cStringListToQStringList(
char **stringList );
289 static QgsWkbTypes::Type ogrGeometryTypeToQgsWkbType( OGRwkbGeometryType ogrGeomType );
328 static QString readShapefileEncoding(
const QString &path );
339 static QString readShapefileEncodingFromCpg(
const QString &path );
350 static QString readShapefileEncodingFromLdid(
const QString &path );
357 static QVariantMap parseStyleString(
const QString &
string );
377 static void ogrFieldTypeToQVariantType( OGRFieldType ogrType, OGRFieldSubType ogrSubType, QVariant::Type &variantType, QVariant::Type &variantSubType )
SIP_SKIP;
389 static void variantTypeToOgrFieldType( QVariant::Type variantType, OGRFieldType &ogrType, OGRFieldSubType &ogrSubType )
SIP_SKIP;
398 static QVariant stringToVariant( OGRFieldType type, OGRFieldSubType subType,
const QString &
string )
SIP_SKIP;
405 static QList<QgsVectorDataProvider::NativeType> nativeFieldTypesForDriver( GDALDriverH driver )
SIP_SKIP;
408#if GDAL_VERSION_NUM >= GDAL_COMPUTE_VERSION(3,3,0)
417 static std::unique_ptr< QgsFieldDomain > convertFieldDomain( OGRFieldDomainH domain );
426 static OGRFieldDomainH convertFieldDomain(
const QgsFieldDomain *domain );
This class represents a coordinate reference system (CRS).
The feature class encapsulates a single feature including its unique ID, geometry and a list of field...
Base class for field domains.
Encapsulate a field in an attribute table or data source.
Container of fields for a vector layer.
A geometry is the spatial representation of a feature.
Utilities for working with OGR features and layers.
Type
The WKB type describes the number of dimensions a geometry has.
void CORE_EXPORT fast_delete_and_close(dataset_unique_ptr &dataset, GDALDriverH driver, const QString &path)
Performs a fast close of an unwanted GDAL dataset handle by deleting the underlying data store.
std::unique_ptr< std::remove_pointer< OGRFeatureH >::type, OGRFeatureDeleter > ogr_feature_unique_ptr
Scoped OGR feature.
std::unique_ptr< std::remove_pointer< GDALDatasetH >::type, GDALDatasetCloser > dataset_unique_ptr
Scoped GDAL dataset.
std::unique_ptr< std::remove_pointer< OGRDataSourceH >::type, OGRDataSourceDeleter > ogr_datasource_unique_ptr
Scoped OGR data source.
std::unique_ptr< std::remove_pointer< OGRFieldDefnH >::type, OGRFldDeleter > ogr_field_def_unique_ptr
Scoped OGR field definition.
std::unique_ptr< std::remove_pointer< OGRGeometryH >::type, OGRGeometryDeleter > ogr_geometry_unique_ptr
Scoped OGR geometry.
std::unique_ptr< GDALWarpOptions, GDALWarpOptionsDeleter > warp_options_unique_ptr
Scoped GDAL warp options.
void * OGRSpatialReferenceH
QList< QgsFeature > QgsFeatureList
const QgsCoordinateReferenceSystem & crs
Closes and cleanups GDAL dataset.
void CORE_EXPORT operator()(GDALDatasetH datasource) const
Destroys an gdal dataset, using the correct gdal calls.
Closes and cleanups GDAL warp options.
void CORE_EXPORT operator()(GDALWarpOptions *options) const
Destroys GDAL warp options, using the correct gdal calls.
Destroys OGR data sources.
void CORE_EXPORT operator()(OGRDataSourceH source) const
Destroys an OGR data source, using the correct gdal calls.
void CORE_EXPORT operator()(OGRFeatureH feature) const
Destroys an OGR feature, using the correct gdal calls.
Destroys OGR field definition.
void CORE_EXPORT operator()(OGRFieldDefnH definition) const
Destroys an OGR field definition, using the correct gdal calls.
void CORE_EXPORT operator()(OGRGeometryH geometry) const
Destroys an OGR geometry, using the correct gdal calls.