Class: QgsProviderSublayerDetails

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 Geospatial PDF 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.

Added in version 3.22.

class qgis.core.QgsProviderSublayerDetails[source]

Bases: object

class LayerOptions

Bases: object

Setting options for loading layers.

loadAllStoredStyle: bool
loadDefaultStyle: bool
transformContext: QgsCoordinateTransformContext
description(self) str[source]

Returns the layer’s description.

See also

setDescription()

Return type:

str

driverName(self) str[source]

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[source]

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

See also

setFlags()

Return type:

Qgis.SublayerFlags

geometryColumnName(self) str[source]

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

Return type:

str

layerNumber(self) int[source]

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

See also

setLayerNumber()

Return type:

int

name(self) str[source]

Returns the layer’s name.

See also

setName()

Return type:

str

path(self) List[str][source]

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[source]

Returns the associated data provider key.

See also

setProviderKey()

Return type:

str

setDescription(self, description: str | None)[source]

Sets the layer’s description.

See also

description()

Parameters:

description (Optional[str])

setDriverName(self, driver: str | None)[source]

Sets the layer’s driver name.

See also

driverName()

Parameters:

driver (Optional[str])

setFeatureCount(self, count: int)[source]

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)[source]

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

See also

flags()

Parameters:

newFlags (Union[Qgis.SublayerFlags, Qgis.SublayerFlag])

setGeometryColumnName(self, name: str | None)[source]

Sets the layer’s geometry column name.

Set to an empty string if not applicable.

Parameters:

name (Optional[str])

setLayerNumber(self, number: int)[source]

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

See also

layerNumber()

Parameters:

number (int)

setName(self, name: str | None)[source]

Sets the layer’s name.

See also

name()

Parameters:

name (Optional[str])

setPath(self, path: Iterable[str | None])[source]

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[Optional[str]])

setProviderKey(self, key: str | None)[source]

Sets the associated data provider key.

See also

providerKey()

Parameters:

key (Optional[str])

setSkippedContainerScan(self, skipped: bool)[source]

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: Qgis.LayerType)[source]

Sets the layer type.

See also

type()

Parameters:

type (Qgis.LayerType)

setUri(self, uri: str | None)[source]

Sets the layer’s uri.

See also

uri()

Parameters:

uri (Optional[str])

setWkbType(self, type: Qgis.WkbType)[source]

Set the layer’s WKB type.

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

See also

wkbType()

Parameters:

type (Qgis.WkbType)

skippedContainerScan(self) bool[source]

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 | None[source]

Creates a new QgsMapLayer object associated with the sublayer.

Caller takes ownership of the returned layer.

Parameters:

options (QgsProviderSublayerDetails.LayerOptions)

Return type:

Optional[QgsMapLayer]

toMimeUri(self) QgsMimeDataUtils.Uri[source]

Converts the sublayer details to a QgsMimeDataUtils.Uri representing the sublayer.

Added in version 3.28.

Return type:

QgsMimeDataUtils.Uri

type(self) Qgis.LayerType[source]

Returns the layer type.

See also

setType()

Return type:

Qgis.LayerType

uri(self) str[source]

Returns the layer’s URI.

See also

setUri()

Return type:

str

wkbType(self) Qgis.WkbType[source]

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

See also

setWkbType()

Return type:

Qgis.WkbType