mirror of
				https://github.com/qgis/QGIS.git
				synced 2025-11-04 00:04:25 -05:00 
			
		
		
		
	
		
			
				
	
	
		
			241 lines
		
	
	
		
			6.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			241 lines
		
	
	
		
			6.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
/************************************************************************
 | 
						|
 * This file has been generated automatically from                      *
 | 
						|
 *                                                                      *
 | 
						|
 * src/core/qgsvirtuallayerdefinition.h                                 *
 | 
						|
 *                                                                      *
 | 
						|
 * Do not edit manually ! Edit header and run scripts/sipify.pl again   *
 | 
						|
 ************************************************************************/
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
class QgsVirtualLayerDefinition
 | 
						|
{
 | 
						|
%Docstring
 | 
						|
Class to manipulate the definition of a virtual layer
 | 
						|
 | 
						|
It is used to extract parameters from an initial virtual layer definition as well as
 | 
						|
to store the complete, expanded definition once types have been detected.
 | 
						|
%End
 | 
						|
 | 
						|
%TypeHeaderCode
 | 
						|
#include "qgsvirtuallayerdefinition.h"
 | 
						|
%End
 | 
						|
  public:
 | 
						|
 | 
						|
    class SourceLayer
 | 
						|
{
 | 
						|
%Docstring
 | 
						|
A SourceLayer is either a reference to a live layer in the registry
 | 
						|
or all the parameters needed to load it (provider key, source, etc.)
 | 
						|
%End
 | 
						|
 | 
						|
%TypeHeaderCode
 | 
						|
#include "qgsvirtuallayerdefinition.h"
 | 
						|
%End
 | 
						|
      public:
 | 
						|
        SourceLayer( const QString &name, const QString &ref );
 | 
						|
%Docstring
 | 
						|
Constructor variant to build a live layer reference
 | 
						|
%End
 | 
						|
        SourceLayer( const QString &name, const QString &source, const QString &provider, const QString &encoding );
 | 
						|
%Docstring
 | 
						|
Constructor variant to build a layer with a provider and a source
 | 
						|
%End
 | 
						|
 | 
						|
        bool isReferenced() const;
 | 
						|
%Docstring
 | 
						|
Is it a live layer or not ?
 | 
						|
%End
 | 
						|
 | 
						|
        QString reference() const;
 | 
						|
%Docstring
 | 
						|
The reference (id) of the live layer
 | 
						|
%End
 | 
						|
 | 
						|
        QString name() const;
 | 
						|
%Docstring
 | 
						|
Name of the layer
 | 
						|
%End
 | 
						|
 | 
						|
        QString provider() const;
 | 
						|
%Docstring
 | 
						|
Provider key
 | 
						|
%End
 | 
						|
 | 
						|
        QString source() const;
 | 
						|
%Docstring
 | 
						|
The source url used by the provider to build the layer
 | 
						|
%End
 | 
						|
 | 
						|
        QString encoding() const;
 | 
						|
%Docstring
 | 
						|
Optional encoding for the provider
 | 
						|
%End
 | 
						|
 | 
						|
    };
 | 
						|
 | 
						|
    QgsVirtualLayerDefinition( const QString &filePath = "" );
 | 
						|
%Docstring
 | 
						|
Constructor with an optional file path
 | 
						|
%End
 | 
						|
 | 
						|
    static QgsVirtualLayerDefinition fromUrl( const QUrl &url );
 | 
						|
%Docstring
 | 
						|
Constructor to build a definition from a QUrl
 | 
						|
The path part of the URL is extracted as well as the following optional keys:
 | 
						|
layer_ref=layer_id[:name]               represents a live layer referenced by its ID. An optional name can be given
 | 
						|
layer=provider:source[:name[:encoding]] represents a layer given by its provider key, its source url (URL-encoded).
 | 
						|
An optional name and encoding can be given
 | 
						|
geometry=column_name[:type:srid]        gives the definition of the geometry column.
 | 
						|
Type can be either a WKB type code or a string (point, linestring, etc.)
 | 
						|
srid is an integer
 | 
						|
uid=column_name                         is the name of a column with unique integer values.
 | 
						|
nogeometry                              is a flag to force the layer to be a non-geometry layer
 | 
						|
query=sql                               represents the SQL query. Must be URL-encoded
 | 
						|
field=column_name:[int|real|text]       represents a field with its name and its type
 | 
						|
%End
 | 
						|
 | 
						|
    QUrl toUrl() const;
 | 
						|
%Docstring
 | 
						|
Convert the definition into a QUrl
 | 
						|
%End
 | 
						|
 | 
						|
    QString toString() const;
 | 
						|
%Docstring
 | 
						|
Convert into a QString that can be read by the virtual layer provider
 | 
						|
%End
 | 
						|
 | 
						|
    void addSource( const QString &name, const QString &ref );
 | 
						|
%Docstring
 | 
						|
Add a live layer source layer
 | 
						|
%End
 | 
						|
 | 
						|
    void addSource( const QString &name, const QString &source, const QString &provider, const QString &encoding = "" );
 | 
						|
%Docstring
 | 
						|
Add a layer with a source, a provider and an encoding
 | 
						|
%End
 | 
						|
 | 
						|
    typedef QList<QgsVirtualLayerDefinition::SourceLayer> SourceLayers;
 | 
						|
 | 
						|
    const QgsVirtualLayerDefinition::SourceLayers &sourceLayers() const;
 | 
						|
%Docstring
 | 
						|
Gets access to the source layers
 | 
						|
%End
 | 
						|
 | 
						|
    QString query() const;
 | 
						|
%Docstring
 | 
						|
Gets the SQL query
 | 
						|
%End
 | 
						|
    void setQuery( const QString &query );
 | 
						|
%Docstring
 | 
						|
Sets the SQL query
 | 
						|
%End
 | 
						|
 | 
						|
    QString filePath() const;
 | 
						|
%Docstring
 | 
						|
Gets the file path. May be empty
 | 
						|
%End
 | 
						|
    void setFilePath( const QString &filePath );
 | 
						|
%Docstring
 | 
						|
Sets the file path
 | 
						|
%End
 | 
						|
 | 
						|
    QString uid() const;
 | 
						|
%Docstring
 | 
						|
Gets the name of the field with unique identifiers
 | 
						|
%End
 | 
						|
    void setUid( const QString &uid );
 | 
						|
%Docstring
 | 
						|
Sets the name of the field with unique identifiers
 | 
						|
%End
 | 
						|
 | 
						|
    void setLazy( bool lazy );
 | 
						|
%Docstring
 | 
						|
Sets the lazy mode. If ``lazy`` is true, then the loading is
 | 
						|
delayed until an explicit reloading of the layer.
 | 
						|
 | 
						|
:param lazy: True to delay the loading, false otherwise
 | 
						|
 | 
						|
.. seealso:: :py:func:`QgsDataProvider.reloadData`
 | 
						|
 | 
						|
.. seealso:: :py:func:`isLazy`
 | 
						|
 | 
						|
.. versionadded:: 3.2
 | 
						|
%End
 | 
						|
 | 
						|
    bool isLazy() const;
 | 
						|
%Docstring
 | 
						|
Returns the lazy mode.
 | 
						|
 | 
						|
:return: True if the loading is delayed, false otherwise.
 | 
						|
 | 
						|
.. seealso:: :py:func:`setLazy`
 | 
						|
 | 
						|
.. versionadded:: 3.2
 | 
						|
%End
 | 
						|
 | 
						|
    QString geometryField() const;
 | 
						|
%Docstring
 | 
						|
Gets the name of the geometry field. Empty if no geometry field
 | 
						|
%End
 | 
						|
    void setGeometryField( const QString &geometryField );
 | 
						|
%Docstring
 | 
						|
Sets the name of the geometry field
 | 
						|
%End
 | 
						|
 | 
						|
    QgsWkbTypes::Type geometryWkbType() const;
 | 
						|
%Docstring
 | 
						|
Gets the type of the geometry
 | 
						|
QgsWkbTypes.NoGeometry to hide any geometry
 | 
						|
QgsWkbTypes.Unknown for unknown types
 | 
						|
%End
 | 
						|
    void setGeometryWkbType( QgsWkbTypes::Type t );
 | 
						|
%Docstring
 | 
						|
Sets the type of the geometry
 | 
						|
%End
 | 
						|
 | 
						|
    long geometrySrid() const;
 | 
						|
%Docstring
 | 
						|
Gets the SRID of the geometry
 | 
						|
%End
 | 
						|
    void setGeometrySrid( long srid );
 | 
						|
%Docstring
 | 
						|
Sets the SRID of the geometry
 | 
						|
%End
 | 
						|
 | 
						|
    QgsFields fields() const;
 | 
						|
%Docstring
 | 
						|
Gets field definitions
 | 
						|
%End
 | 
						|
    void setFields( const QgsFields &fields );
 | 
						|
%Docstring
 | 
						|
Sets field definitions
 | 
						|
%End
 | 
						|
 | 
						|
    bool hasSourceLayer( const QString &name ) const;
 | 
						|
%Docstring
 | 
						|
Convenience method to test if a given source layer is part of the definition
 | 
						|
%End
 | 
						|
 | 
						|
    bool hasReferencedLayers() const;
 | 
						|
%Docstring
 | 
						|
Convenience method to test whether the definition has referenced (live) layers
 | 
						|
%End
 | 
						|
 | 
						|
    bool hasDefinedGeometry() const;
 | 
						|
%Docstring
 | 
						|
Convenient method to test if the geometry is defined (not NoGeometry and not Unknown)
 | 
						|
%End
 | 
						|
 | 
						|
};
 | 
						|
 | 
						|
 | 
						|
/************************************************************************
 | 
						|
 * This file has been generated automatically from                      *
 | 
						|
 *                                                                      *
 | 
						|
 * src/core/qgsvirtuallayerdefinition.h                                 *
 | 
						|
 *                                                                      *
 | 
						|
 * Do not edit manually ! Edit header and run scripts/sipify.pl again   *
 | 
						|
 ************************************************************************/
 |