sec_interp.core.services.export.orchestrator module

Export orchestrator — thin facade delegating to handlers.

class sec_interp.core.services.export.orchestrator.ExportService(controller: Any | None = None, access_control: AccessControlService | None = None, map_settings_factory: Callable[[...], Any] | None = None)

Bases: ExportServiceCompatMixin

Service to orchestrate all export operations.

__init__(controller: Any | None = None, access_control: AccessControlService | None = None, map_settings_factory: Callable[[...], Any] | None = None) → None

Initialize the export service.

Parameters:
  • controller – Optional reference to ProfileController for data access.

  • access_control – Optional access control service; core defaults to an in-memory store, the plugin injects the QgsSettings adapter.

  • map_settings_factory – QGIS-free injection for the image/PDF/SVG exporter; the composition root supplies create_map_settings.

export_data(output_folder: Path, params: PreviewParams, profile_data: list[tuple], geol_data: list[Any] | None, struct_data: list[Any] | None, drillhole_data: list[Any] | None = None, interp_data: list[Any] | None = None, export_options: dict[str, bool] | None = None) → list[str]

Export generated data to CSV and Shapefile formats.

get_map_settings(layers: list[Any], extent: Any, size: Any | None, background_color: Any) → Any

Create map settings through the injected QGIS factory.

tr(message: str) → str

Translate a message using the injected translator.