mirror of
https://github.com/qgis/QGIS.git
synced 2025-02-27 00:33:48 -05:00
213 lines
7.0 KiB
Plaintext
213 lines
7.0 KiB
Plaintext
/************************************************************************
|
|
* This file has been generated automatically from *
|
|
* *
|
|
* src/core/qgsvectorlayerexporter.h *
|
|
* *
|
|
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
|
|
************************************************************************/
|
|
|
|
|
|
|
|
|
|
|
|
class QgsVectorLayerExporter : QgsFeatureSink
|
|
{
|
|
%Docstring
|
|
A convenience class for exporting vector layers to a destination data provider.
|
|
|
|
QgsVectorLayerExporter can be used in two ways:
|
|
|
|
1. Using a static call to QgsVectorLayerExporter.exportLayer(...) which exports the
|
|
entire layer to the destination provider.
|
|
|
|
2. Create an instance of the class and issue calls to addFeature(...)
|
|
|
|
.. versionadded:: 3.0
|
|
%End
|
|
|
|
%TypeHeaderCode
|
|
#include "qgsvectorlayerexporter.h"
|
|
%End
|
|
public:
|
|
|
|
enum ExportError
|
|
{
|
|
NoError,
|
|
ErrCreateDataSource,
|
|
ErrCreateLayer,
|
|
ErrAttributeTypeUnsupported,
|
|
ErrAttributeCreationFailed,
|
|
ErrProjection,
|
|
ErrFeatureWriteFailed,
|
|
ErrInvalidLayer,
|
|
ErrInvalidProvider,
|
|
ErrProviderUnsupportedFeature,
|
|
ErrConnectionFailed,
|
|
ErrUserCanceled,
|
|
};
|
|
|
|
static ExportError exportLayer( QgsVectorLayer *layer,
|
|
const QString &uri,
|
|
const QString &providerKey,
|
|
const QgsCoordinateReferenceSystem &destCRS,
|
|
bool onlySelected = false,
|
|
QString *errorMessage /Out/ = 0,
|
|
const QMap<QString, QVariant> &options = QMap<QString, QVariant>(),
|
|
QgsFeedback *feedback = 0
|
|
);
|
|
%Docstring
|
|
Writes the contents of vector layer to a different datasource.
|
|
|
|
:param layer: source layer
|
|
:param uri: URI for destination data source
|
|
:param providerKey: string key for destination data provider
|
|
:param destCRS: destination CRS, or an invalid (default constructed) CRS if
|
|
not available
|
|
:param onlySelected: set to true to export only selected features
|
|
:param errorMessage: if non-null, will be set to any error messages
|
|
:param options: optional provider dataset options
|
|
:param feedback: optional feedback object to show progress and cancelation of export
|
|
|
|
:return: NoError for a successful export, or encountered error
|
|
%End
|
|
|
|
QgsVectorLayerExporter( const QString &uri,
|
|
const QString &provider,
|
|
const QgsFields &fields,
|
|
QgsWkbTypes::Type geometryType,
|
|
const QgsCoordinateReferenceSystem &crs,
|
|
bool overwrite = false,
|
|
const QMap<QString, QVariant> &options = QMap<QString, QVariant>() );
|
|
%Docstring
|
|
Constructor for QgsVectorLayerExporter.
|
|
|
|
:param uri: URI for destination data source
|
|
:param provider: string key for destination data provider
|
|
:param fields: fields to include in created layer
|
|
:param geometryType: destination geometry type
|
|
:param crs: desired CRS, or an invalid (default constructed) CRS if
|
|
not available
|
|
:param overwrite: set to true to overwrite any existing data source
|
|
:param options: optional provider dataset options
|
|
%End
|
|
|
|
|
|
ExportError errorCode() const;
|
|
%Docstring
|
|
Returns any encountered error code, or false if no error was encountered.
|
|
|
|
.. seealso:: :py:func:`errorMessage`
|
|
|
|
.. seealso:: :py:func:`errorCount`
|
|
%End
|
|
|
|
QString errorMessage() const;
|
|
%Docstring
|
|
Returns any error message encountered during the export.
|
|
|
|
.. seealso:: :py:func:`errorCount`
|
|
|
|
.. seealso:: :py:func:`errorCode`
|
|
%End
|
|
|
|
int errorCount() const;
|
|
%Docstring
|
|
Returns the number of error messages encountered during the export.
|
|
|
|
.. seealso:: :py:func:`errorMessage`
|
|
|
|
.. seealso:: :py:func:`errorCode`
|
|
%End
|
|
|
|
virtual bool addFeatures( QgsFeatureList &features, QgsFeatureSink::Flags flags = 0 );
|
|
|
|
virtual bool addFeature( QgsFeature &feature, QgsFeatureSink::Flags flags = 0 );
|
|
|
|
|
|
~QgsVectorLayerExporter();
|
|
|
|
virtual bool flushBuffer();
|
|
|
|
|
|
private:
|
|
QgsVectorLayerExporter( const QgsVectorLayerExporter &rh );
|
|
};
|
|
|
|
|
|
class QgsVectorLayerExporterTask : QgsTask
|
|
{
|
|
%Docstring
|
|
QgsTask task which performs a QgsVectorLayerExporter layer export operation as a background
|
|
task. This can be used to export a vector layer out to a provider without blocking the
|
|
QGIS interface.
|
|
|
|
.. versionadded:: 3.0
|
|
|
|
.. seealso:: :py:class:`QgsVectorFileWriterTask`
|
|
|
|
.. seealso:: :py:class:`QgsRasterFileWriterTask`
|
|
%End
|
|
|
|
%TypeHeaderCode
|
|
#include "qgsvectorlayerexporter.h"
|
|
%End
|
|
public:
|
|
|
|
QgsVectorLayerExporterTask( QgsVectorLayer *layer,
|
|
const QString &uri,
|
|
const QString &providerKey,
|
|
const QgsCoordinateReferenceSystem &destinationCrs,
|
|
const QMap<QString, QVariant> &options = QMap<QString, QVariant>(),
|
|
bool ownsLayer = false );
|
|
%Docstring
|
|
Constructor for QgsVectorLayerExporterTask. Takes a source ``layer``, destination ``uri``
|
|
and ``providerKey``, and various export related parameters such as destination CRS
|
|
and export ``options``. ``ownsLayer`` has to be set to true if the task should take ownership
|
|
of the layer and delete it after export.
|
|
%End
|
|
|
|
static QgsVectorLayerExporterTask *withLayerOwnership( QgsVectorLayer *layer /Transfer/,
|
|
const QString &uri,
|
|
const QString &providerKey,
|
|
const QgsCoordinateReferenceSystem &destinationCrs,
|
|
const QMap<QString, QVariant> &options = QMap<QString, QVariant>() ) /Factory/;
|
|
%Docstring
|
|
Creates a new QgsVectorLayerExporterTask which has ownership over a source ``layer``.
|
|
When the export task has completed (successfully or otherwise) ``layer`` will be
|
|
deleted. The destination ``uri`` and ``providerKey``, and various export related parameters such as destination CRS
|
|
and export ``options`` must be specified.
|
|
%End
|
|
|
|
virtual void cancel();
|
|
|
|
|
|
signals:
|
|
|
|
void exportComplete();
|
|
%Docstring
|
|
Emitted when exporting the layer is successfully completed.
|
|
%End
|
|
|
|
void errorOccurred( int error, const QString &errorMessage );
|
|
%Docstring
|
|
Emitted when an error occurs which prevented the layer being exported (or if
|
|
the task is canceled). The export ``error`` and ``errorMessage`` will be reported.
|
|
%End
|
|
|
|
protected:
|
|
|
|
virtual bool run();
|
|
|
|
virtual void finished( bool result );
|
|
|
|
|
|
};
|
|
|
|
/************************************************************************
|
|
* This file has been generated automatically from *
|
|
* *
|
|
* src/core/qgsvectorlayerexporter.h *
|
|
* *
|
|
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
|
|
************************************************************************/
|