# sec_interp.core.interfaces.geology_interface module

Interface for Geology services.

class sec_interp.core.interfaces.geology_interface.IGeologyService

  Bases: `ABC`

  Abstract interface for the Geological Profiling Service.

  abstractmethod generate_geological_profile(line_data: Any, raster_data: Any, outcrop_data: list[dict[str, Any]], outcrop_name_field: str, band_number: int = 1) → Any

    Generate geological profile data using detached structures.

    Parameters:

      - line_data – Section line orientation data.

      - raster_data – DEM elevation data.

      - outcrop_data – List of detached outcrop entities.

      - outcrop_name_field – Field name for unit names.

      - band_number – Raster band to use.

    Returns:

      List of GeologySegment objects.

    Return type:

      GeologyData