Class: QgsProviderSublayerDetails

class qgis.core.QgsProviderSublayerDetails

Bases: sip.wrapper

Contains details about a sub layer available from a dataset.

This class encapsulates the properties of a single sublayer available from a dataset, according to a specific data provider.

Note

It is possible that multiple data providers may be able to utilize the same underlying sub layer in a single dataset, yet will interpret this layer differently. For instance, a layer in a GeoPDF document can be interpreted as either a vector layer by the OGR data provider or a raster layer by the GDAL provider. The providerKey() property can be used to determine the data provider associated with a QgsProviderSubLayerDetails instance.

New in version 3.22:

Methods

description

Returns the layer's description.

driverName

Returns the layer's driver name.

featureCount

Returns the layer's feature count.

flags

Returns the layer's flags, which indicate properties of the layer.

geometryColumnName

Returns the layer's geometry column name, or an empty string if not applicable.

layerNumber

Returns the associated layer number, for providers which order sublayers.

name

Returns the layer's name.

path

Returns the path to the sublayer.

providerKey

Returns the associated data provider key.

setDescription

Sets the layer's description.

setDriverName

Sets the layer's driver name.

setFeatureCount

Sets the layer's feature count.

setFlags

Sets the layer's flags, which indicate properties of the layer.

setGeometryColumnName

Sets the layer's geometry column name.

setLayerNumber

Sets the associated layer number, for providers which order sublayers.

setName

Sets the layer's name.

setPath

Sets the path to the sublayer.

setProviderKey

Sets the associated data provider key.

setSkippedContainerScan

Set to True if the layer is a potential dataset container and an in-depth scan of its contents was skipped.

setType

Sets the layer type.

setUri

Sets the layer's uri.

setWkbType

Set the layer's WKB type.

skippedContainerScan

Returns True if the layer is a potential dataset container and an in-depth scan of its contents was skipped.

toLayer

Creates a new QgsMapLayer object associated with the sublayer.

type

Returns the layer type.

uri

Returns the layer's URI.

wkbType

Returns the layer's WKB type, or QgsWkbTypes.Unknown if the WKB type is not application or unknown.

class LayerOptions(transformContext: QgsCoordinateTransformContext)

Bases: sip.wrapper

Constructor for LayerOptions with transformContext.

QgsProviderSublayerDetails.LayerOptions(QgsProviderSublayerDetails.LayerOptions)

loadDefaultStyle
transformContext
description(self) str

Returns the layer’s description.

See also

setDescription()

Return type:

str

driverName(self) str

Returns the layer’s driver name.

This is supported only for providers which handle multiple drivers.

See also

setDriverName()

Return type:

str

featureCount(self) int

Returns the layer’s feature count.

Will return Qgis.FeatureCountState.UnknownCount or Qgis.FeatureCountState.Uncounted if no feature count is applicable or available.

Return type:

int

flags(self) Qgis.SublayerFlags

Returns the layer’s flags, which indicate properties of the layer.

See also

setFlags()

Return type:

Qgis.SublayerFlags

geometryColumnName(self) str

Returns the layer’s geometry column name, or an empty string if not applicable.

Return type:

str

layerNumber(self) int

Returns the associated layer number, for providers which order sublayers.

See also

setLayerNumber()

Return type:

int

name(self) str

Returns the layer’s name.

See also

setName()

Return type:

str

path(self) List[str]

Returns the path to the sublayer.

This is an internal path, relative to the dataset itself. It can be used to encapsulate the hierarchy of a dataset which organises layers in schemas or in an internal folder structure.

See also

setPath()

Return type:

List[str]

providerKey(self) str

Returns the associated data provider key.

See also

setProviderKey()

Return type:

str

setDescription(self, description: str)

Sets the layer’s description.

See also

description()

Parameters:

description (str) –

setDriverName(self, driver: str)

Sets the layer’s driver name.

See also

driverName()

Parameters:

driver (str) –

setFeatureCount(self, count: int)

Sets the layer’s feature count.

Set to Qgis.FeatureCountState.UnknownCount or Qgis.FeatureCountState.Uncounted if no feature count is applicable or available.

See also

featureCount()

Parameters:

count (int) –

setFlags(self, newFlags: Qgis.SublayerFlags | Qgis.SublayerFlag)

Sets the layer’s flags, which indicate properties of the layer.

See also

flags()

Parameters:

newFlags (Union[Qgis.SublayerFlags) –

setGeometryColumnName(self, name: str)

Sets the layer’s geometry column name.

Set to an empty string if not applicable.

Parameters:

name (str) –

setLayerNumber(self, number: int)

Sets the associated layer number, for providers which order sublayers.

See also

layerNumber()

Parameters:

number (int) –

setName(self, name: str)

Sets the layer’s name.

See also

name()

Parameters:

name (str) –

setPath(self, path: Iterable[str])

Sets the path to the sublayer.

This is an internal path, relative to the dataset itself. It can be used to encapsulate the hierarchy of a dataset which organises layers in schemas or in an internal folder structure.

See also

path()

Parameters:

path (Iterable[str]) –

setProviderKey(self, key: str)

Sets the associated data provider key.

See also

providerKey()

Parameters:

key (str) –

setSkippedContainerScan(self, skipped: bool)

Set to True if the layer is a potential dataset container and an in-depth scan of its contents was skipped.

Parameters:

skipped (bool) –

setType(self, type: QgsMapLayerType)

Sets the layer type.

See also

type()

Parameters:

type (QgsMapLayerType) –

setUri(self, uri: str)

Sets the layer’s uri.

See also

uri()

Parameters:

uri (str) –

setWkbType(self, type: QgsWkbTypes.Type)

Set the layer’s WKB type.

Set to QgsWkbTypes.Unknown if the WKB type is not application or unknown.

See also

wkbType()

Parameters:

type (QgsWkbTypes.Type) –

skippedContainerScan(self) bool

Returns True if the layer is a potential dataset container and an in-depth scan of its contents was skipped.

Return type:

bool

toLayer(self, options: QgsProviderSublayerDetails.LayerOptions) QgsMapLayer

Creates a new QgsMapLayer object associated with the sublayer.

Caller takes ownership of the returned layer.

Parameters:

options (QgsProviderSublayerDetails.LayerOptions) –

Return type:

QgsMapLayer

type(self) QgsMapLayerType

Returns the layer type.

See also

setType()

Return type:

QgsMapLayerType

uri(self) str

Returns the layer’s URI.

See also

setUri()

Return type:

str

wkbType(self) QgsWkbTypes.Type

Returns the layer’s WKB type, or QgsWkbTypes.Unknown if the WKB type is not application or unknown.

See also

setWkbType()

Return type:

QgsWkbTypes.Type