QGIS/python/core/auto_generated/qgslayerdefinition.sip.in
Vincent Cloarec e2fa27e4a6
Load layers in parallel threads when opening project (#53069)
* load layers in parallel threads when opening project

* parallel loading by default and settingsin advanced settings

* fix freezing when no layer supports parallel loading

* clean leftover

* fix unwanted remove and typo

* typo

* fix flake8

* load OGR metadata under global mutex

* Revert "load OGR metadata under global mutex"

This reverts commit adcaf9e66ca432ee35143c45af2b383108770a63.

* remove parallel loading capability for OGR

* start application in server test

* import start_app

* fix flake8
2023-05-18 16:11:43 +02:00

163 lines
5.9 KiB
Plaintext

/************************************************************************
* This file has been generated automatically from *
* *
* src/core/qgslayerdefinition.h *
* *
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
************************************************************************/
class QgsLayerDefinition
{
%Docstring(signature="appended")
The :py:class:`QgsLayerDefinition` class holds generic methods for loading/exporting QLR files.
QLR files are an export of the layer xml including the style and datasource location. There is no link
to the QLR file once loaded. Consider the QLR file a mini project file for layers and styles. QLR
files also store the layer tree info for the exported layers, including group information.
%End
%TypeHeaderCode
#include "qgslayerdefinition.h"
%End
public:
static bool loadLayerDefinition( const QString &path, QgsProject *project, QgsLayerTreeGroup *rootGroup, QString &errorMessage /Out/ );
%Docstring
Loads the QLR at path into QGIS. New layers are added to given project into layer tree specified by rootGroup
%End
static bool loadLayerDefinition( QDomDocument doc, QgsProject *project, QgsLayerTreeGroup *rootGroup, QString &errorMessage /Out/, QgsReadWriteContext &context );
%Docstring
Loads the QLR from the XML document. New layers are added to given project into layer tree specified by rootGroup
%End
static bool exportLayerDefinition( const QString &path, const QList<QgsLayerTreeNode *> &selectedTreeNodes, QString &errorMessage /Out/ );
%Docstring
Exports the selected layer tree nodes to a QLR file.
This method uses the :py:func:`QgsProject.instance()`'s file path setting to determine whether absolute
or relative paths are written. Use the variant with an explicit argument for file path type
for control over this setting.
:param path: file path for exported QLR file
:param selectedTreeNodes: layer tree nodes to include in the QLR file
:return: - ``True`` if the export was successful
- errorMessage: will be set to any error messages generated during the export
%End
static bool exportLayerDefinition( const QString &path, const QList<QgsLayerTreeNode *> &selectedTreeNodes, Qgis::FilePathType pathType, QString &errorMessage /Out/ );
%Docstring
Exports the selected layer tree nodes to a QLR file.
:param path: file path for exported QLR file
:param selectedTreeNodes: layer tree nodes to include in the QLR file
:param pathType: specifies whether absolute or relative file paths should be used.
:return: - ``True`` if the export was successful
- errorMessage: will be set to any error messages generated during the export
.. versionadded:: 3.22
%End
static bool exportLayerDefinition( QDomDocument doc, const QList<QgsLayerTreeNode *> &selectedTreeNodes, QString &errorMessage /Out/, const QgsReadWriteContext &context );
%Docstring
Exports the selected layer tree nodes to a QLR XML document.
%End
static QDomDocument exportLayerDefinitionLayers( const QList<QgsMapLayer *> &layers, const QgsReadWriteContext &context );
%Docstring
Returns the given layer as a layer definition document
Layer definitions store the data source as well as styling and custom properties.
Layer definitions can be used to load a layer and styling all from a single file.
This is a low-level routine that does not write layer tree.
.. seealso:: :py:func:`exportLayerDefinition`
%End
static QList<QgsMapLayer *> loadLayerDefinitionLayers( QDomDocument &document, QgsReadWriteContext &context ) /Factory/;
%Docstring
Creates new layers from a layer definition document.
This is a low-level routine that does not resolve layer ID conflicts, dependencies and joins
.. seealso:: :py:func:`loadLayerDefinition`
%End
static QList<QgsMapLayer *> loadLayerDefinitionLayers( const QString &qlrfile ) /Factory/;
%Docstring
Creates new layers from a layer definition file (.QLR)
This is a low-level routine that does not resolve layer ID conflicts, dependencies and joins
.. seealso:: :py:func:`loadLayerDefinition`
%End
class DependencySorter
{
%Docstring(signature="appended")
Class used to work with layer dependencies stored in a XML project or layer definition file
%End
%TypeHeaderCode
#include "qgslayerdefinition.h"
%End
public:
explicit DependencySorter( const QDomDocument &doc );
%Docstring
Constructor
:param doc: The XML document containing maplayer elements
%End
explicit DependencySorter( const QString &fileName );
%Docstring
Constructor
:param fileName: The filename where the XML document is stored
%End
QVector<QDomNode> sortedLayerNodes() const;
%Docstring
Gets the layer nodes in an order where they can be loaded incrementally without dependency break
%End
QStringList sortedLayerIds() const;
%Docstring
Gets the layer IDs in an order where they can be loaded incrementally without dependency break
%End
bool hasCycle() const;
%Docstring
Whether some cyclic dependency has been detected
%End
bool hasMissingDependency() const;
%Docstring
Whether some dependency is missing
%End
bool isLayerDependent( const QString &layerId ) const;
%Docstring
Returns whether the layer associated with the``layerId`` is dependent from another layer
.. versionadded:: 3.32
%End
};
};
/************************************************************************
* This file has been generated automatically from *
* *
* src/core/qgslayerdefinition.h *
* *
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
************************************************************************/