Class: QgsTaskManager¶
- class qgis.core.QgsTaskManager¶
Bases:
PyQt5.QtCore.QObject
Task manager for managing a set of long-running
QgsTask
tasks. This class can be created directly, or accessed viaQgsApplication.taskManager()
.New in version 3.0.
QgsTaskManager(parent: QObject = None) Constructor for QgsTaskManager.
- Parameters:
parent –
parent QObject
Methods
Returns a list of the active (queued or running) tasks.
Adds a task to the manager.
Instructs all tasks tracked by the manager to terminate.
Returns the number of tasks tracked by the manager.
Returns the number of active (queued or running) tasks.
Returns
True
if all dependencies for the specified task are satisfiedReturns a list of layers on which as task is dependent.
Returns the task with matching ID.
Returns the unique task ID corresponding to a task managed by the class.
Returns all tasks tracked by the manager.
Returns a list of tasks which depend on a layer.
Triggers a task, e.g.
Signals
pyqtSignal(*types, name: str = ..., revision: int = ..., arguments: Sequence = ...) -> PYQT_SIGNAL
pyqtSignal(*types, name: str = ..., revision: int = ..., arguments: Sequence = ...) -> PYQT_SIGNAL
pyqtSignal(*types, name: str = ..., revision: int = ..., arguments: Sequence = ...) -> PYQT_SIGNAL
pyqtSignal(*types, name: str = ..., revision: int = ..., arguments: Sequence = ...) -> PYQT_SIGNAL
pyqtSignal(*types, name: str = ..., revision: int = ..., arguments: Sequence = ...) -> PYQT_SIGNAL
pyqtSignal(*types, name: str = ..., revision: int = ..., arguments: Sequence = ...) -> PYQT_SIGNAL
pyqtSignal(*types, name: str = ..., revision: int = ..., arguments: Sequence = ...) -> PYQT_SIGNAL
pyqtSignal(*types, name: str = ..., revision: int = ..., arguments: Sequence = ...) -> PYQT_SIGNAL
- class TaskDefinition(task: QgsTask, dependentTasks: Iterable[QgsTask] = [])¶
Bases:
sip.wrapper
Constructor for TaskDefinition. Ownership of the task is not transferred to the definition, but will be transferred to a QgsTaskManager.
QgsTaskManager.TaskDefinition(QgsTaskManager.TaskDefinition)
- dependentTasks¶
- task¶
- activeTasks(self) List[QgsTask] ¶
Returns a list of the active (queued or running) tasks.
See also
- Return type:
List[QgsTask]
- addTask(self, task: QgsTask, priority: int = 0) int ¶
Adds a task to the manager. Ownership of the task is transferred to the manager, and the task manager will be responsible for starting the task. The priority argument can be used to control the run queue’s order of execution, with larger numbers taking precedence over lower priority numbers.
- Returns:
unique task ID, or 0 if task could not be added
addTask(self, task: QgsTaskManager.TaskDefinition, priority: int = 0) -> int Adds a task to the manager, using a full task definition (including dependency handling). Ownership of the task is transferred to the manager, and the task manager will be responsible for starting the task. The priority argument can be used to control the run queue’s order of execution, with larger numbers taking precedence over lower priority numbers.
- Return type:
int
- Returns:
unique task ID, or 0 if task could not be added
- Parameters:
task (QgsTask) –
priority (int = 0) –
- allTasksFinished¶
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- Parameters:
name (str = ...) –
revision (int = ...) –
arguments (Sequence = ...) –
- Return type:
PYQT_SIGNAL
- cancelAll(self)¶
Instructs all tasks tracked by the manager to terminate. Individual tasks may take some time to cancel, or may totally ignore this instruction. Calling this does not block but will instead signal the tasks to cancel and then return immediately.
- childEvent(self, QChildEvent)¶
- connectNotify(self, QMetaMethod)¶
- count(self) int ¶
Returns the number of tasks tracked by the manager.
- Return type:
int
- countActiveTasks(self, includeHidden: bool = True) int ¶
Returns the number of active (queued or running) tasks.
The
includeHidden
argument dictates whether hidden tasks should be shown.See also
See also
- Parameters:
includeHidden (bool = True) –
- Return type:
int
- countActiveTasksChanged¶
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- Parameters:
name (str = ...) –
revision (int = ...) –
arguments (Sequence = ...) –
- Return type:
PYQT_SIGNAL
- customEvent(self, QEvent)¶
- dependenciesSatisfied(self, taskId: int) bool ¶
Returns
True
if all dependencies for the specified task are satisfied- Parameters:
taskId (int) –
- Return type:
bool
- dependentLayers(self, taskId: int) List[QgsMapLayer] ¶
Returns a list of layers on which as task is dependent. The task will automatically be canceled if any of these layers are about to be removed.
- Parameters:
taskId (int) – task ID
- Return type:
List[QgsMapLayer]
- Returns:
list of layers
See also
- disconnectNotify(self, QMetaMethod)¶
- finalTaskProgressChanged¶
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- Parameters:
name (str = ...) –
revision (int = ...) –
arguments (Sequence = ...) –
- Return type:
PYQT_SIGNAL
- isSignalConnected(self, QMetaMethod) bool ¶
- progressChanged¶
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- Parameters:
name (str = ...) –
revision (int = ...) –
arguments (Sequence = ...) –
- Return type:
PYQT_SIGNAL
- receivers(self, PYQT_SIGNAL) int ¶
- sender(self) QObject ¶
- senderSignalIndex(self) int ¶
- statusChanged¶
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- Parameters:
name (str = ...) –
revision (int = ...) –
arguments (Sequence = ...) –
- Return type:
PYQT_SIGNAL
- task(self, id: int) QgsTask ¶
Returns the task with matching ID.
- Parameters:
id (int) – task ID
- Return type:
- Returns:
task if found, or
None
- taskAboutToBeDeleted¶
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- Parameters:
name (str = ...) –
revision (int = ...) –
arguments (Sequence = ...) –
- Return type:
PYQT_SIGNAL
- taskAdded¶
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- Parameters:
name (str = ...) –
revision (int = ...) –
arguments (Sequence = ...) –
- Return type:
PYQT_SIGNAL
- taskId(self, task: QgsTask) int ¶
Returns the unique task ID corresponding to a task managed by the class.
- Parameters:
task (QgsTask) – task to find
- Return type:
int
- Returns:
task ID, or -1 if task not found
- taskTriggered¶
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- Parameters:
name (str = ...) –
revision (int = ...) –
arguments (Sequence = ...) –
- Return type:
PYQT_SIGNAL
- tasksDependentOnLayer(self, layer: QgsMapLayer) List[QgsTask] ¶
Returns a list of tasks which depend on a layer.
See also
- Parameters:
layer (QgsMapLayer) –
- Return type:
List[QgsTask]
- timerEvent(self, QTimerEvent)¶