sec_interp.gui.adapters.layer_resolver module
Layer resolution adapter (Extract phase).
Resolves layer references (ID, name, or object) to QgsMapLayer objects using
the QGIS project. Lives in the GUI adapters layer because it depends on
QgsProject.instance(); the core layer no longer resolves layers itself.
- class sec_interp.gui.adapters.layer_resolver.LayerResolver
Bases:
objectCentralized service to resolve and cache QgsMapLayer references.
Acts as a singleton/cache to avoid repeated
project.mapLayer()calls within the same processing transaction.- classmethod clear_cache() None
Clear the internal layer cache.
- classmethod invalidate(layer_id: str) None
Remove a specific layer from the cache.
- classmethod resolve(layer_ref: Any, use_cache: bool = True) QgsMapLayer | None
Resolve a layer reference (ID, name, or object) to a QgsMapLayer.
- Parameters:
layer_ref – A string (layer ID or name) or a QgsMapLayer object.
use_cache – If True, uses the internal dict cache for faster lookups.
- Returns:
The resolved QgsMapLayer object if valid, else None.
- sec_interp.gui.adapters.layer_resolver.resolve_layer(layer_ref: Any) QgsMapLayer | None
Resolve a layer reference. (Legacy wrapper).
Delegates to LayerResolver for backward compatibility.