QgsTask task which performs a QgsVectorLayerExporter layer export operation as a background task.
More...
#include <qgsvectorlayerexporter.h>
|
| QgsVectorLayerExporterTask (QgsVectorLayer *layer, const QString &uri, const QString &providerKey, const QgsCoordinateReferenceSystem &destinationCrs, const QMap< QString, QVariant > &options=QMap< QString, QVariant >(), bool ownsLayer=false) |
| Constructor for QgsVectorLayerExporterTask. More...
|
|
void | cancel () override |
| Notifies the task that it should terminate. More...
|
|
| QgsTask (const QString &description=QString(), QgsTask::Flags flags=AllFlags) |
| Constructor for QgsTask. More...
|
|
| ~QgsTask () override |
|
void | addSubTask (QgsTask *subTask, const QgsTaskList &dependencies=QgsTaskList(), SubTaskDependency subTaskDependency=SubTaskIndependent) |
| Adds a subtask to this task. More...
|
|
bool | canCancel () const |
| Returns true if the task can be canceled. More...
|
|
virtual void | cancel () |
| Notifies the task that it should terminate. More...
|
|
QList< QgsMapLayer * > | dependentLayers () const |
| Returns the list of layers on which the task depends. More...
|
|
QString | description () const |
| Returns the task's description. More...
|
|
qint64 | elapsedTime () const |
| Returns the elapsed time since the task commenced, in milliseconds. More...
|
|
Flags | flags () const |
| Returns the flags associated with the task. More...
|
|
void | hold () |
| Places the task on hold. More...
|
|
bool | isActive () const |
| Returns true if the task is active, ie it is not complete and has not been canceled. More...
|
|
double | progress () const |
| Returns the task's progress (between 0.0 and 100.0) More...
|
|
void | setDependentLayers (const QList< QgsMapLayer * > &dependentLayers) |
| Sets a list of layers on which the task depends. More...
|
|
void | setDescription (const QString &description) |
| Sets the task's description. More...
|
|
TaskStatus | status () const |
| Returns the current task status. More...
|
|
void | unhold () |
| Releases the task from being held. More...
|
|
bool | waitForFinished (int timeout=30000) |
| Blocks the current thread until the task finishes or a maximum of timeout milliseconds. More...
|
|
|
void | finished (bool result) override |
| If the task is managed by a QgsTaskManager, this will be called after the task has finished (whether through successful completion or via early termination). More...
|
|
bool | run () override |
| Performs the task's operation. More...
|
|
virtual void | finished (bool result) |
| If the task is managed by a QgsTaskManager, this will be called after the task has finished (whether through successful completion or via early termination). More...
|
|
bool | isCanceled () const |
| Will return true if task should terminate ASAP. More...
|
|
virtual bool | run ()=0 |
| Performs the task's operation. More...
|
|
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.
- See also
- QgsVectorFileWriterTask
-
QgsRasterFileWriterTask
- Since
- QGIS 3.0
Definition at line 173 of file qgsvectorlayerexporter.h.
◆ QgsVectorLayerExporterTask()
QgsVectorLayerExporterTask::QgsVectorLayerExporterTask |
( |
QgsVectorLayer * |
layer, |
|
|
const QString & |
uri, |
|
|
const QString & |
providerKey, |
|
|
const QgsCoordinateReferenceSystem & |
destinationCrs, |
|
|
const QMap< QString, QVariant > & |
options = QMap<QString, QVariant>() , |
|
|
bool |
ownsLayer = false |
|
) |
| |
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.
Definition at line 529 of file qgsvectorlayerexporter.cpp.
◆ cancel()
void QgsVectorLayerExporterTask::cancel |
( |
| ) |
|
|
overridevirtual |
Notifies the task that it should terminate.
Calling this is not guaranteed to immediately end the task, rather it sets the isCanceled() flag which task subclasses can check and terminate their operations at an appropriate time. Any subtasks owned by this task will also be canceled. Derived classes must ensure that the base class implementation is called from any overridden version.
- See also
- isCanceled()
Reimplemented from QgsTask.
Definition at line 550 of file qgsvectorlayerexporter.cpp.
◆ errorOccurred
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.
◆ exportComplete
void QgsVectorLayerExporterTask::exportComplete |
( |
| ) |
|
|
signal |
Emitted when exporting the layer is successfully completed.
◆ finished()
void QgsVectorLayerExporterTask::finished |
( |
bool |
result | ) |
|
|
overrideprotectedvirtual |
If the task is managed by a QgsTaskManager, this will be called after the task has finished (whether through successful completion or via early termination).
The result argument reflects whether the task was successfully completed or not. This method is always called from the main thread, so it is safe to create widgets and perform other operations which require the main thread. However, the GUI will be blocked for the duration of this method so tasks should avoid performing any lengthy operations here.
Reimplemented from QgsTask.
Definition at line 571 of file qgsvectorlayerexporter.cpp.
◆ run()
bool QgsVectorLayerExporterTask::run |
( |
| ) |
|
|
overrideprotectedvirtual |
Performs the task's operation.
This method will be called when the task commences (ie via calling start() ), and subclasses should implement the operation they wish to perform in the background within this method.
A task must return a boolean value to indicate whether the task was completed successfully or terminated before completion.
Implements QgsTask.
Definition at line 556 of file qgsvectorlayerexporter.cpp.
◆ withLayerOwnership()
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.
Definition at line 543 of file qgsvectorlayerexporter.cpp.
The documentation for this class was generated from the following files: