Исходный код soniks_client.antenna.tracking

"""Выбор стратегии слежения по значению ``ANTENNA__ROTATOR__MODE``."""

from core.configs import settings
from core.configs.antenna import RotatorMode
from soniks_client.antenna.tracking.base import TrackingStrategy
from soniks_client.antenna.tracking.flip import FlipStrategy
from soniks_client.antenna.tracking.normal import NormalStrategy
from soniks_client.antenna.tracking.range_250 import Range250Strategy


[документация] def create_tracking_strategy() -> TrackingStrategy: """Создать стратегию слежения по ``ANTENNA__ROTATOR__MODE``.""" cfg = settings.antenna.rotator if cfg.MODE is RotatorMode.FLIP: return FlipStrategy(cfg.MIN_ELEVATION, cfg.THRESHOLD) if cfg.MODE is RotatorMode.RANGE_250: return Range250Strategy(cfg.MIN_ELEVATION, cfg.THRESHOLD) return NormalStrategy(cfg.MIN_ELEVATION, cfg.THRESHOLD)