QGIS API Documentation 3.41.0-Master (45a0abf3bec)
|
Handles exports of elevation profiles in various formats in a background task. More...
#include <qgsprofileexporter.h>
Public Types | |
enum class | ExportResult { Success , Empty , DeviceError , DxfExportFailed , LayerExportFailed , Canceled } |
Results of exporting the profile. More... | |
Public Types inherited from QgsTask | |
enum | Flag { CanCancel = 1 << 1 , CancelWithoutPrompt = 1 << 2 , Hidden = 1 << 3 , Silent = 1 << 4 , AllFlags = CanCancel } |
Task flags. More... | |
typedef QFlags< Flag > | Flags |
enum | SubTaskDependency { SubTaskIndependent = 0 , ParentDependsOnSubTask } |
Controls how subtasks relate to their parent task. More... | |
enum | TaskStatus { Queued , OnHold , Running , Complete , Terminated } |
Status of tasks. More... | |
Public Member Functions | |
QgsProfileExporterTask (const QList< QgsAbstractProfileSource * > &sources, const QgsProfileRequest &request, Qgis::ProfileExportType type, const QString &destination, const QgsCoordinateTransformContext &transformContext) | |
Constructor for QgsProfileExporterTask, saving results to the specified destination file. | |
void | cancel () override |
Notifies the task that it should terminate. | |
QStringList | createdFiles () const |
Returns a list of layer files created during the export. | |
QString | error () const |
Returns a descriptive error message, if available. | |
Q_ENUM (ExportResult) | |
QgsProfileExporterTask::ExportResult | result () const |
Returns the result of the export operation. | |
bool | run () override |
Performs the task's operation. | |
QList< QgsVectorLayer * > | takeLayers () |
Returns a list of vector layer containing the exported profile results. | |
Public Member Functions inherited from QgsTask | |
QgsTask (const QString &description=QString(), QgsTask::Flags flags=AllFlags) | |
Constructor for QgsTask. | |
~QgsTask () override | |
void | addSubTask (QgsTask *subTask, const QgsTaskList &dependencies=QgsTaskList(), SubTaskDependency subTaskDependency=SubTaskIndependent) |
Adds a subtask to this task. | |
bool | canCancel () const |
Returns true if the task can be canceled. | |
QList< QgsMapLayer * > | dependentLayers () const |
Returns the list of layers on which the task depends. | |
QString | description () const |
Returns the task's description. | |
qint64 | elapsedTime () const |
Returns the elapsed time since the task commenced, in milliseconds. | |
Flags | flags () const |
Returns the flags associated with the task. | |
void | hold () |
Places the task on hold. | |
bool | isActive () const |
Returns true if the task is active, ie it is not complete and has not been canceled. | |
double | progress () const |
Returns the task's progress (between 0.0 and 100.0) | |
void | setDependentLayers (const QList< QgsMapLayer * > &dependentLayers) |
Sets a list of layers on which the task depends. | |
void | setDescription (const QString &description) |
Sets the task's description. | |
TaskStatus | status () const |
Returns the current task status. | |
void | unhold () |
Releases the task from being held. | |
bool | waitForFinished (int timeout=30000) |
Blocks the current thread until the task finishes or a maximum of timeout milliseconds. | |
Additional Inherited Members | |
Signals inherited from QgsTask | |
void | begun () |
Will be emitted by task to indicate its commencement. | |
void | progressChanged (double progress) |
Will be emitted by task when its progress changes. | |
void | statusChanged (int status) |
Will be emitted by task when its status changes. | |
void | taskCompleted () |
Will be emitted by task to indicate its successful completion. | |
void | taskTerminated () |
Will be emitted by task if it has terminated for any reason other then completion (e.g., when a task has been canceled or encountered an internal error). | |
Protected Slots inherited from QgsTask | |
void | setProgress (double progress) |
Sets the task's current progress. | |
Protected Member Functions inherited from QgsTask | |
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). | |
bool | isCanceled () const |
Will return true if task should terminate ASAP. | |
Handles exports of elevation profiles in various formats in a background task.
Definition at line 93 of file qgsprofileexporter.h.
|
strong |
Results of exporting the profile.
Definition at line 102 of file qgsprofileexporter.h.
QgsProfileExporterTask::QgsProfileExporterTask | ( | const QList< QgsAbstractProfileSource * > & | sources, |
const QgsProfileRequest & | request, | ||
Qgis::ProfileExportType | type, | ||
const QString & | destination, | ||
const QgsCoordinateTransformContext & | transformContext | ||
) |
Constructor for QgsProfileExporterTask, saving results to the specified destination file.
If destination is an empty string then the profile results will be generated only and can be retrieved by calling takeLayers().
Definition at line 134 of file qgsprofileexporter.cpp.
|
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.
Reimplemented from QgsTask.
Definition at line 289 of file qgsprofileexporter.cpp.
|
inline |
Returns a list of layer files created during the export.
Definition at line 148 of file qgsprofileexporter.h.
|
inline |
Returns a descriptive error message, if available.
Definition at line 153 of file qgsprofileexporter.h.
QgsProfileExporterTask::Q_ENUM | ( | ExportResult | ) |
QgsProfileExporterTask::ExportResult QgsProfileExporterTask::result | ( | ) | const |
Returns the result of the export operation.
Definition at line 310 of file qgsprofileexporter.cpp.
|
overridevirtual |
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 147 of file qgsprofileexporter.cpp.
QList< QgsVectorLayer * > QgsProfileExporterTask::takeLayers | ( | ) |
Returns a list of vector layer containing the exported profile results.
While this method attempts to condense all results into a single layer, multiple layers may be returned when the geometry types of exported features differs.
Ownership of the returned layers is transferred to the caller.
Definition at line 297 of file qgsprofileexporter.cpp.