45 lines
1.4 KiB
Python
45 lines
1.4 KiB
Python
from typing import Optional
|
|
|
|
from ..services.gnss import GNSSService
|
|
from ..services.logs import LogService
|
|
from ..services.tiles import TileService
|
|
from ..services.vector_mbtiles import VectorMBTilesService
|
|
|
|
_gnss_service: Optional[GNSSService] = None
|
|
_tile_service: Optional[TileService] = None
|
|
_log_service: Optional[LogService] = None
|
|
_vector_mbtiles_service: Optional[VectorMBTilesService] = None
|
|
|
|
|
|
def set_services(
|
|
gnss: GNSSService, tiles: TileService, logger: LogService, vector_mbtiles: VectorMBTilesService
|
|
) -> None:
|
|
global _gnss_service, _tile_service, _log_service, _vector_mbtiles_service
|
|
_gnss_service = gnss
|
|
_tile_service = tiles
|
|
_log_service = logger
|
|
_vector_mbtiles_service = vector_mbtiles
|
|
|
|
|
|
def get_gnss_service() -> GNSSService:
|
|
if _gnss_service is None:
|
|
raise RuntimeError("GNSS service is not initialized")
|
|
return _gnss_service
|
|
|
|
|
|
def get_tile_service() -> TileService:
|
|
if _tile_service is None:
|
|
raise RuntimeError("Tile service is not initialized")
|
|
return _tile_service
|
|
|
|
|
|
def get_log_service() -> LogService:
|
|
if _log_service is None:
|
|
raise RuntimeError("Log service is not initialized")
|
|
return _log_service
|
|
|
|
|
|
def get_vector_mbtiles_service() -> VectorMBTilesService:
|
|
if _vector_mbtiles_service is None:
|
|
raise RuntimeError("Vector MBTiles service is not initialized")
|
|
return _vector_mbtiles_service
|