config package

Submodules

config.helper module

Module de configuration des données.

Ce module permet de charger les données de configuration à partir d’un fichier TOML.

config.helper.load_config(config_file)[source]

Retournes les données de configuration du fichier TOML.

Paramètres:

config_file (Optional[Path]) – Le chemin du fichier de configuration.

Renvoie:

Les données de configuration.

Type renvoyé:

DataConfigDict

config.iwls_api_config module

Module de configuration de l’API IWLS.

Ce module contient les classes et fonctions nécessaires pour charger et valider la configuration de l’API IWLS.

class config.iwls_api_config.CacheConfig(*, cache_path: Path | None, ttl: int | None = 86400)[source]

Bases : BaseModel

Classe de configuration pour le cache.

Paramètres:
  • cache_path (Path) – Le répertoire du cache.

  • ttl (int) – Le temps de vie du cache en secondes.

classmethod validate_cache_path(value)[source]

Valide le répertoire du cache.

Paramètres:

value (Path) – Le répertoire du cache.

Type renvoyé:

Path

Renvoie:

Le répertoire du cache.

classmethod validate_ttl(value)[source]

Valide le temps de vie de la cache.

Paramètres:

value (int) – Le temps de vie du cache.

Renvoie:

Le temps de vie du cache.

Type renvoyé:

int

Lève:

ValueError – Si le temps de vie du cache est négatif.

cache_path: Path | None

Le répertoire du cache.

ttl: int | None

Le temps de vie du cache en secondes.

class config.iwls_api_config.IWLSAPIConfig(**data)[source]

Bases : BaseModel

Classe de configuration pour l’API IWLS.

Paramètres:
  • dev (iwls.APIEnvironment | None) – L’environnement de développement.

  • prod (iwls.APIEnvironment | None) – L’environnement de production.

  • public (iwls.APIEnvironment | None) – L’environnement public.

  • time_series (TimeSeriesConfig) – La configuration des séries temporelles.

  • profile (iwls.APIProfile) – Le profil actif de l’API.

  • cache (CacheConfig) – La configuration du cache.

cache: CacheConfig

Configuration du cache.

dev: APIEnvironment | None

Environnement de développement.

prod: APIEnvironment | None

Environnement de production.

profile: APIProfile | None

Profil actif de l’API.

public: APIEnvironment | None

Environnement public.

time_series: TimeSeriesConfig

Configuration des séries temporelles.

class config.iwls_api_config.TimeSeriesConfig(**data)[source]

Bases : BaseModel

Classe de configuration pour les séries temporelles.

Paramètres:
  • priority (list[iwls.TimeSeries]) – La liste des séries temporelles à garder par ordre de priorité.

  • max_time_gap (Optional[str]) – Le temps maximal permit entre deux points.

  • threshold_interpolation_filling (Optional[str]) – Le seuil de remplissage ou d’interpolation.

  • wlo_qc_flag_filter (Optional[list[str]]) – Les filtres de qualité à filtrer.

  • buffer_time (Optional[timedelta]) – Le temps de buffer à ajouter s’il manque des données pour l’interpolation.

classmethod validate_str_time(value)[source]

Valide le time gap.

Paramètres:

value (str | None) – Le time gap.

Renvoie:

Le time gap.

Type renvoyé:

str | None

Lève:

ValueError – Si le time gap n’est pas au bon format.

buffer_time: str | None

Le temps de buffer à ajouter s’il manque des données pour l’interpolation.

max_time_gap: str | None

Le temps maximal permit entre deux points.

priority: list[TimeSeries]

La liste des séries temporelles à garder par ordre de priorité.

threshold_interpolation_filling: str | None

Le seuil de remplissage ou d’interpolation.

wlo_qc_flag_filter: list[str] | None

Les filtres de qualité à filtrer.

config.iwls_api_config.get_api_config(config_file)[source]

Retournes la configuration de l’API IWLS

Paramètres:

config_file (Path) – Le fichier de configuration.

Renvoie:

Un objet APIConfig.

Type renvoyé:

APIConfig

config.processing_config module

Module de configuration des données.

Ce module contient les classes et fonctions nécessaires pour charger et valider les configurations de filtrage des données.

class config.processing_config.CSBprocessingConfig(**data)[source]

Bases : BaseModel

Classe de configuration pour la transformation des données et le géoréférencement.

Paramètres:
  • filter (DataFilterConfig) – Configuration pour le filtrage des données.

  • georeference (DataGeoreferenceConfig) – Configuration pour le géoréférencement des données.

  • vessel_manager (Optional[VesselManagerConfig]) – Configuration pour le gestionnaire de navires.

  • export (ExportConfig) – Configuration pour l’exportation des données.

  • options (OptionsConfig) – Configuration pour les options de traitement.

export: ExportConfig

Configuration pour l’exportation des données.

filter: DataFilterConfig

Configuration pour le filtrage des données.

georeference: DataGeoreferenceConfig

Configuration pour le géoréférencement des données.

options: OptionsConfig

Configuration pour les options de traitement.

plot: PlotConfig

Configuration pour les options de visualisation.

vessel_manager: VesselManagerConfig | None

Configuration pour le gestionnaire de navires.

class config.processing_config.DataFilterConfig(**data)[source]

Bases : BaseModel

Classe de configuration pour le filtrage des données.

Paramètres:
  • min_latitude (int | float) – La latitude minimale.

  • max_latitude (int | float) – La latitude maximale.

  • min_longitude (int | float) – La longitude minimale.

  • max_longitude (int | float) – La longitude maximale.

  • min_depth (int | float) – La profondeur minimale.

  • max_depth (int | float | None) – La profondeur maximale.

classmethod validate_depth(value)[source]

Valide la profondeur.

Paramètres:

value (int | float | None) – La valeur de la profondeur.

Renvoie:

La valeur de la profondeur.

Type renvoyé:

int | float | None

Lève:

ValueError – Si la profondeur est inférieure à MIN_DEPTH.

classmethod validate_latitude(value)[source]

Valide la latitude.

Paramètres:

value (int | float) – La valeur de la latitude.

Renvoie:

La valeur de la latitude.

Type renvoyé:

int | float

Lève:

ValueError – Si la latitude n’est pas comprise entre MIN_LATITUDE et MAX_LATITUDE.

classmethod validate_longitude(value)[source]

Valide la longitude.

Paramètres:

value (int | float) – La valeur de la longitude.

Renvoie:

La valeur de la longitude.

Type renvoyé:

int | float

Lève:

ValueError – Si la longitude n’est pas comprise entre MIN_LONGITUDE et MAX_LONGITUDE.

filter_to_apply: list[Filter] | None

Les filtres à appliquer.

max_depth: int | float | None

La profondeur maximale.

max_latitude: int | float | None

La latitude maximale.

max_longitude: int | float | None

La longitude maximale.

max_speed: int | float | None

La vitesse maximale.

min_depth: int | float | None

La profondeur minimale.

min_latitude: int | float | None

La latitude minimale.

min_longitude: int | float | None

La longitude minimale.

min_speed: int | float | None

La vitesse minimale.

class config.processing_config.DataGeoreferenceConfig(**data)[source]

Bases : BaseModel

Classe de configuration pour le géoréférencement des données.

Paramètres:
  • tide (GeoreferenceTideConfig) – Configuration pour le géoréférencement des données avec les niveaux d’eau.

  • uncertainty (Optional[UncertaintyConfig]) – Configuration pour le calcul de l’incertitude.

tide: GeoreferenceTideConfig

Configuration pour le géoréférencement des données avec les niveaux d’eau.

uncertainty: UncertaintyConfig | None

Configuration pour le calcul de l’incertitude.

class config.processing_config.ExportConfig(**data)[source]

Bases : BaseModel

Classe de configuration pour l’exportation des données.

classmethod validate_resolution(value)[source]
Type renvoyé:

Union[int, float, None]

export_format: list[FileTypes]

Les formats de fichiers pour l’exportation.

group_by_iho_order: bool

Grouper les données par ordre IHO pour l’exportation.

resolution: int | float | None

La résolution pour l’exportation en GeoTIFF.

class config.processing_config.FileTypes(value)[source]

Bases : StrEnum

Enumération des types de fichiers de sortie.

CSAR = 'csar'
CSV = 'csv'
FEATHER = 'feather'
GEOJSON = 'geojson'
GEOTIFF = 'geotiff'
GPKG = 'gpkg'
PARQUET = 'parquet'
class config.processing_config.Filter(value)[source]

Bases : StrEnum

Enum for status codes.

DEPTH_FILTER = 'DEPTH_FILTER'
LATITUDE_FILTER = 'LATITUDE_FILTER'
LONGITUDE_FILTER = 'LONGITUDE_FILTER'
SPEED_FILTER = 'SPEED_FILTER'
TIME_FILTER = 'TIME_FILTER'
class config.processing_config.GeoreferenceTideConfig(**data)[source]

Bases : BaseModel

Classe de configuration pour le géoréférencement des données.

Paramètres:

water_level_tolerance (str) – Écart maximal en minutes entre les données et les niveaux d’eau à récupérer pour le géoréférencement.

classmethod validate_water_level_tolerance(value)[source]

Valide la tolérance pour water level.

Paramètres:

value (str | None) – La tolérance pour water level.

Renvoie:

La tolérance pour water level.

Type renvoyé:

str

Lève:

ValueError – Si la tolérance pour water level n’est pas au bon format.

water_level_tolerance: Timedelta | str | None

La tolérance en minutes pour les données de marée à récupérer pour le géoréférencement.

class config.processing_config.OptionsConfig(**data)[source]

Bases : BaseModel

Classe de configuration pour les options de traitement.

classmethod validate_decimal_precision(value)[source]

Valide que decimal_precision est plus grand ou égale à 0.

Paramètres:

value (int) – La valeur de decimal_precision.

Renvoie:

La valeur de decimal_precision.

Type renvoyé:

int

Lève:

ValueError – Si decimal_precision est inférieur ou égal à 0.

classmethod validate_max_iterations(value)[source]

Valide que max_iterations est plus grand que 0.

Paramètres:

value (int) – La valeur de max_iterations.

Renvoie:

La valeur de max_iterations.

Type renvoyé:

int

Lève:

ValueError – Si max_iterations est inférieur ou égal à 0.

decimal_precision: int

La précision décimale pour les calculs.

log_level: str

Le niveau de log.

max_iterations: int

Le nombre maximal d’itérations pour le traitement.

class config.processing_config.PlotConfig(**data)[source]

Bases : BaseModel

Classe de configuration pour les options de visualisation.

Paramètres:
  • nbin_x (int) – Le nombre de bins en X pour les heatmanps.

  • nbin_y (int) – Le nombre de bins en Y pour les heatmanps.

classmethod validate_nbin(value)[source]

Valide que nbin_x et nbin_y sont plus grand que 0.

Paramètres:

value (int) – La valeur de nbin_x ou nbin_y.

Renvoie:

La valeur de nbin_x ou nbin_y.

Type renvoyé:

int

Lève:

ValueError – Si nbin_x ou nbin_y est inférieur ou égal à 0.

nbin_x: int

Le nombre de bins en X pour les heatmanps.

nbin_y: int

Le nombre de bins en Y pour les heatmanps.

class config.processing_config.THUConfig(**data)[source]

Bases : BaseModel

Classe de configuration pour le calcul du THU.

Paramètres:
  • cone_angle_sonar (Optional[float]) – L’angle de cône du sonar pour le calcul du THU.

  • constant_thu (Optional[float]) – La constante du THU.

classmethod validate_positive(value)[source]
Type renvoyé:

Optional[float]

cone_angle_sonar: int | float | None

L’angle de cône du sonar pour le calcul du THU.

constant_thu: int | float | None

La constante du THU.

class config.processing_config.TVUConfig(**data)[source]

Bases : BaseModel

Classe de configuration pour le calcul du TVU.

Paramètres:
  • constant_tvu_wlo (Optional[float]) – La constante du TVU pour les niveaux d’eau WLO.

  • default_constant_tvu_wlp (Optional[float]) – La constante du TVU pour les niveaux d’eau WLP.

  • depth_coefficient_tvu (Optional[float]) – Le coefficient de profondeur pour le calcul du TVU.

classmethod validate_positive(value)[source]
Type renvoyé:

Optional[float]

constant_tvu_wlo: int | float | None

La constante du TVU pour les niveaux d’eau WLO.

default_constant_tvu_wlp: int | float | None

La constante du TVU pour les niveaux d’eau WLP.

default_depth_ssp_error_coefficient: int | float | None

Le coefficient d’erreur SSP par défaut.

depth_coefficient_tvu: int | float | None

Le coefficient de profondeur pour le calcul du TVU.

max_distance_ssp: int | float | None

La distance maximale pour liée une valeur de SSP.

class config.processing_config.UncertaintyConfig(**data)[source]

Bases : BaseModel

Classe de configuration pour le calcul de l’incertitude.

Paramètres:
  • tvu (Optional[TVUConfig]) – Configuration pour le calcul du TVU.

  • thu (Optional[THUConfig]) – Configuration pour le calcul du THU.

thu: THUConfig | None

Configuration pour le calcul du THU.

tvu: TVUConfig | None

Configuration pour le calcul du TVU.

class config.processing_config.VesselConfigManagerType(value)[source]

Bases : StrEnum

Enumération des types de gestionnaire de configuration de navires.

VesselConfigJsonManager = 'VesselConfigJsonManager'

Gestionnaire de configuration de navires en JSON.

VesselConfigSQLiteManager = 'VesselConfigSQLiteManager'

Gestionnaire de configuration de navires en SQLite.

class config.processing_config.VesselManagerConfig(**data)[source]

Bases : BaseModel

Classe de configuration pour le gestionnaire de navires.

Paramètres:
  • manager_type (VesselConfigManagerType) – Le type de gestionnaire de configuration de navires.

  • kwargs (dict[str, Any]) – Les arguments pour le gestionnaire de configuration de navires.

kwargs: dict[str, Any] | None

Les arguments pour le gestionnaire de configuration de navires.

manager_type: VesselConfigManagerType | None

Le type de gestionnaire de configuration de navires.

config.processing_config.get_data_config(config_file)[source]

Retournes la configuration pour la transformation des données et le géoréférencement.

Paramètres:

config_file (Path) – Le chemin du fichier de configuration.

Renvoie:

La configuration pour la transformation des données et le géoréférencement.

Type renvoyé:

tuple[DataFilterConfig, DataGeoreferenceConfig]

Module contents

Ce package contient les configurations nécessaires pour l’application.

exception config.CarisConfigError(config_file)[source]

Bases : Exception

config_file: Path
class config.CSBprocessingConfig(**data)[source]

Bases : BaseModel

Classe de configuration pour la transformation des données et le géoréférencement.

Paramètres:
  • filter (DataFilterConfig) – Configuration pour le filtrage des données.

  • georeference (DataGeoreferenceConfig) – Configuration pour le géoréférencement des données.

  • vessel_manager (Optional[VesselManagerConfig]) – Configuration pour le gestionnaire de navires.

  • export (ExportConfig) – Configuration pour l’exportation des données.

  • options (OptionsConfig) – Configuration pour les options de traitement.

export: ExportConfig

Configuration pour l’exportation des données.

filter: DataFilterConfig

Configuration pour le filtrage des données.

georeference: DataGeoreferenceConfig

Configuration pour le géoréférencement des données.

options: OptionsConfig

Configuration pour les options de traitement.

plot: PlotConfig

Configuration pour les options de visualisation.

vessel_manager: VesselManagerConfig | None

Configuration pour le gestionnaire de navires.

class config.CarisAPIConfig(**values)[source]

Bases : BaseModel

Classe de configuration pour Caris.

Paramètres:
  • base_path (str) – Le chemin de base de Caris.

  • software (str) – Le logiciel de Caris.

  • version (str) – La version du logiciel de Caris.

  • python_version (str) – La version de Python.

  • python_path (Path) – Le chemin de l’API Python de Caris.

Lève:

ValueError – Si l’API Python de Caris n’existe pas à l’emplacement spécifié.

args: list[str]
base_path: str
caris_batch: Path
python_path: Path
python_version: str
software: str
version: str
class config.DataFilterConfig(**data)[source]

Bases : BaseModel

Classe de configuration pour le filtrage des données.

Paramètres:
  • min_latitude (int | float) – La latitude minimale.

  • max_latitude (int | float) – La latitude maximale.

  • min_longitude (int | float) – La longitude minimale.

  • max_longitude (int | float) – La longitude maximale.

  • min_depth (int | float) – La profondeur minimale.

  • max_depth (int | float | None) – La profondeur maximale.

classmethod validate_depth(value)[source]

Valide la profondeur.

Paramètres:

value (int | float | None) – La valeur de la profondeur.

Renvoie:

La valeur de la profondeur.

Type renvoyé:

int | float | None

Lève:

ValueError – Si la profondeur est inférieure à MIN_DEPTH.

classmethod validate_latitude(value)[source]

Valide la latitude.

Paramètres:

value (int | float) – La valeur de la latitude.

Renvoie:

La valeur de la latitude.

Type renvoyé:

int | float

Lève:

ValueError – Si la latitude n’est pas comprise entre MIN_LATITUDE et MAX_LATITUDE.

classmethod validate_longitude(value)[source]

Valide la longitude.

Paramètres:

value (int | float) – La valeur de la longitude.

Renvoie:

La valeur de la longitude.

Type renvoyé:

int | float

Lève:

ValueError – Si la longitude n’est pas comprise entre MIN_LONGITUDE et MAX_LONGITUDE.

filter_to_apply: list[Filter] | None

Les filtres à appliquer.

max_depth: int | float | None

La profondeur maximale.

max_latitude: int | float | None

La latitude maximale.

max_longitude: int | float | None

La longitude maximale.

max_speed: int | float | None

La vitesse maximale.

min_depth: int | float | None

La profondeur minimale.

min_latitude: int | float | None

La latitude minimale.

min_longitude: int | float | None

La longitude minimale.

min_speed: int | float | None

La vitesse minimale.

class config.DataGeoreferenceConfig(**data)[source]

Bases : BaseModel

Classe de configuration pour le géoréférencement des données.

Paramètres:
  • tide (GeoreferenceTideConfig) – Configuration pour le géoréférencement des données avec les niveaux d’eau.

  • uncertainty (Optional[UncertaintyConfig]) – Configuration pour le calcul de l’incertitude.

tide: GeoreferenceTideConfig

Configuration pour le géoréférencement des données avec les niveaux d’eau.

uncertainty: UncertaintyConfig | None

Configuration pour le calcul de l’incertitude.

class config.FileTypes(value)[source]

Bases : StrEnum

Enumération des types de fichiers de sortie.

CSAR = 'csar'
CSV = 'csv'
FEATHER = 'feather'
GEOJSON = 'geojson'
GEOTIFF = 'geotiff'
GPKG = 'gpkg'
PARQUET = 'parquet'
class config.IWLSAPIConfig(**data)[source]

Bases : BaseModel

Classe de configuration pour l’API IWLS.

Paramètres:
  • dev (iwls.APIEnvironment | None) – L’environnement de développement.

  • prod (iwls.APIEnvironment | None) – L’environnement de production.

  • public (iwls.APIEnvironment | None) – L’environnement public.

  • time_series (TimeSeriesConfig) – La configuration des séries temporelles.

  • profile (iwls.APIProfile) – Le profil actif de l’API.

  • cache (CacheConfig) – La configuration du cache.

cache: CacheConfig

Configuration du cache.

dev: APIEnvironment | None

Environnement de développement.

prod: APIEnvironment | None

Environnement de production.

profile: APIProfile | None

Profil actif de l’API.

public: APIEnvironment | None

Environnement public.

time_series: TimeSeriesConfig

Configuration des séries temporelles.

class config.VesselManagerConfig(**data)[source]

Bases : BaseModel

Classe de configuration pour le gestionnaire de navires.

Paramètres:
  • manager_type (VesselConfigManagerType) – Le type de gestionnaire de configuration de navires.

  • kwargs (dict[str, Any]) – Les arguments pour le gestionnaire de configuration de navires.

kwargs: dict[str, Any] | None

Les arguments pour le gestionnaire de configuration de navires.

manager_type: VesselConfigManagerType | None

Le type de gestionnaire de configuration de navires.

config.get_api_config(config_file)[source]

Retournes la configuration de l’API IWLS

Paramètres:

config_file (Path) – Le fichier de configuration.

Renvoie:

Un objet APIConfig.

Type renvoyé:

APIConfig

config.get_caris_api_config(config_file)[source]

Retournes la configuration pour Caris.

Paramètres:

config_file (Path) – Le chemin du fichier de configuration.

Renvoie:

La configuration pour Caris.

Type renvoyé:

CarisAPIConfig

config.get_data_config(config_file)[source]

Retournes la configuration pour la transformation des données et le géoréférencement.

Paramètres:

config_file (Path) – Le chemin du fichier de configuration.

Renvoie:

La configuration pour la transformation des données et le géoréférencement.

Type renvoyé:

tuple[DataFilterConfig, DataGeoreferenceConfig]