QGIS API Documentation 3.28.0-Firenze (ed3ad0430f)
Public Member Functions | List of all members
QgsVirtualLayerTask Class Reference

Initializes a virtual layer with postpone mode activated and reloads the data in a separated thread. More...

#include <qgsvirtuallayertask.h>

Inheritance diagram for QgsVirtualLayerTask:
Inheritance graph
[legend]

Public Member Functions

 QgsVirtualLayerTask (const QgsVirtualLayerDefinition &definition)
 Constructor. More...
 
void cancel () override
 Cancels the pending query and the parent task. More...
 
QgsVirtualLayerDefinition definition () const
 Returns the virtual layer definition. More...
 
QString exceptionText () const
 Returns the exception text or an empty string if no exceptions were raised. More...
 
QgsVectorLayerlayer ()
 Returns the underlying virtual layer. More...
 
bool run () override
 Reloads the data. More...
 
void setExceptionText (const QString &exceptionText)
 Sets the exceptionText. More...
 
QgsVectorLayertakeLayer ()
 Returns the underlying virtual layer and ownership. More...
 
- Public Member Functions inherited from QgsTask
 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...
 

Additional Inherited Members

- Public Types inherited from QgsTask
enum  Flag {
  CanCancel = 1 << 1 , CancelWithoutPrompt = 1 << 2 , Hidden = 1 << 3 , Silent = 1 << 4 ,
  AllFlags = CanCancel
}
 Task flags. More...
 
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...
 
- Signals inherited from QgsTask
void begun ()
 Will be emitted by task to indicate its commencement. More...
 
void progressChanged (double progress)
 Will be emitted by task when its progress changes. More...
 
void statusChanged (int status)
 Will be emitted by task when its status changes. More...
 
void taskCompleted ()
 Will be emitted by task to indicate its successful completion. More...
 
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). More...
 
- Protected Slots inherited from QgsTask
void setProgress (double progress)
 Sets the task's current progress. More...
 
- 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). More...
 
bool isCanceled () const
 Will return true if task should terminate ASAP. More...
 
virtual bool run ()=0
 Performs the task's operation. More...
 

Detailed Description

Initializes a virtual layer with postpone mode activated and reloads the data in a separated thread.

Since
QGIS 3.2

Definition at line 33 of file qgsvirtuallayertask.h.

Constructor & Destructor Documentation

◆ QgsVirtualLayerTask()

QgsVirtualLayerTask::QgsVirtualLayerTask ( const QgsVirtualLayerDefinition definition)

Constructor.

Parameters
definitionThe definition to use for initializing the virtual layer

Definition at line 22 of file qgsvirtuallayertask.cpp.

Member Function Documentation

◆ cancel()

void QgsVirtualLayerTask::cancel ( )
overridevirtual

Cancels the pending query and the parent task.

Reimplemented from QgsTask.

Definition at line 62 of file qgsvirtuallayertask.cpp.

◆ definition()

QgsVirtualLayerDefinition QgsVirtualLayerTask::definition ( ) const

Returns the virtual layer definition.

Definition at line 47 of file qgsvirtuallayertask.cpp.

◆ exceptionText()

QString QgsVirtualLayerTask::exceptionText ( ) const

Returns the exception text or an empty string if no exceptions were raised.

Since
QGIS 3.4

Definition at line 68 of file qgsvirtuallayertask.cpp.

◆ layer()

QgsVectorLayer * QgsVirtualLayerTask::layer ( )

Returns the underlying virtual layer.

Definition at line 52 of file qgsvirtuallayertask.cpp.

◆ run()

bool QgsVirtualLayerTask::run ( )
overridevirtual

Reloads the data.

Returns
true if the virtual layer is valid, false otherwise.

Implements QgsTask.

Definition at line 30 of file qgsvirtuallayertask.cpp.

◆ setExceptionText()

void QgsVirtualLayerTask::setExceptionText ( const QString &  exceptionText)

Sets the exceptionText.

Since
QGIS 3.4

Definition at line 73 of file qgsvirtuallayertask.cpp.

◆ takeLayer()

QgsVectorLayer * QgsVirtualLayerTask::takeLayer ( )

Returns the underlying virtual layer and ownership.

Definition at line 57 of file qgsvirtuallayertask.cpp.


The documentation for this class was generated from the following files: