From 297f5abed8324974ec639cdf4853a5cdb6f4fe4e Mon Sep 17 00:00:00 2001 From: Shane Smiskol Date: Thu, 15 Aug 2024 23:44:33 -0700 Subject: [PATCH] add a which enum --- selfdrive/car/nissan/carstate.py | 2 +- selfdrive/car/structs.py | 15 +++++++++------ 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/selfdrive/car/nissan/carstate.py b/selfdrive/car/nissan/carstate.py index 78d57b7e2e..59c3ddec46 100644 --- a/selfdrive/car/nissan/carstate.py +++ b/selfdrive/car/nissan/carstate.py @@ -20,7 +20,7 @@ class CarState(CarStateBase): self.lkas_hud_msg = {} self.lkas_hud_info_msg = {} - self.steeringTorqueSamples = deque(TORQUE_SAMPLES*[0], TORQUE_SAMPLES) + self.steeringTorqueSamples = deque(TORQUE_SAMPLES*[0.0], TORQUE_SAMPLES) self.shifter_values = can_define.dv["GEARBOX"]["GEAR_SHIFTER"] self.distance_button = 0 diff --git a/selfdrive/car/structs.py b/selfdrive/car/structs.py index fb91541666..3c2f652875 100644 --- a/selfdrive/car/structs.py +++ b/selfdrive/car/structs.py @@ -318,14 +318,17 @@ class CarParams: @auto_dataclass class LateralTuning: - def init(self, _which: str): - assert _which in ('pid', 'torque'), 'Invalid union type' - self._which = _which + def init(self, which: str): + self.which = CarParams.LateralTuning.Which(which) - def which(self): - return self._which + class Which(StrEnum): + pid = auto() + torque = auto() + + def __call__(self): + return self.value - _which: str = 'pid' + which: 'CarParams.LateralTuning.Which' = field(default_factory=lambda: CarParams.LateralTuning.Which.torque) pid: 'CarParams.LateralPIDTuning' = field(default_factory=lambda: CarParams.LateralPIDTuning()) torque: 'CarParams.LateralTorqueTuning' = field(default_factory=lambda: CarParams.LateralTorqueTuning())