diff --git a/selfdrive/car/__init__.py b/selfdrive/car/__init__.py index 75b85cab2f..3b749101c9 100644 --- a/selfdrive/car/__init__.py +++ b/selfdrive/car/__init__.py @@ -246,7 +246,7 @@ class CanSignalRateCalculator: CarInfos = CarInfo | list[CarInfo] -@dataclass(kw_only=True) +@dataclass(frozen=True, kw_only=True) class CarSpecs: mass: float wheelbase: float @@ -256,7 +256,7 @@ class CarSpecs: minEnableSpeed: float = field(default=-1.) -@dataclass(order=True) +@dataclass(frozen=True, order=True) class PlatformConfig: platform_str: str car_info: CarInfos diff --git a/selfdrive/car/ford/values.py b/selfdrive/car/ford/values.py index ef99cf5f34..caa3eb0d37 100644 --- a/selfdrive/car/ford/values.py +++ b/selfdrive/car/ford/values.py @@ -63,7 +63,7 @@ class FordCarInfo(CarInfo): self.car_parts = CarParts([Device.threex, harness]) -@dataclass +@dataclass(frozen=True) class FordPlatformConfig(PlatformConfig): dbc_dict: DbcDict = field(default_factory=lambda: dbc_dict('ford_lincoln_base_pt', RADAR.DELPHI_MRR)) diff --git a/selfdrive/car/gm/values.py b/selfdrive/car/gm/values.py index 53dbde87f4..35fdf3fb92 100644 --- a/selfdrive/car/gm/values.py +++ b/selfdrive/car/gm/values.py @@ -79,7 +79,7 @@ class GMCarInfo(CarInfo): self.footnotes.append(Footnote.OBD_II) -@dataclass +@dataclass(frozen=True) class GMPlatformConfig(PlatformConfig): dbc_dict: DbcDict = field(default_factory=lambda: dbc_dict('gm_global_a_powertrain_generated', 'gm_global_a_object', chassis_dbc='gm_global_a_chassis')) diff --git a/selfdrive/car/subaru/values.py b/selfdrive/car/subaru/values.py index 0fd7ab9c13..a296550b12 100644 --- a/selfdrive/car/subaru/values.py +++ b/selfdrive/car/subaru/values.py @@ -89,7 +89,7 @@ class SubaruCarInfo(CarInfo): self.footnotes.append(Footnote.EXP_LONG) -@dataclass +@dataclass(frozen=True) class SubaruPlatformConfig(PlatformConfig): dbc_dict: DbcDict = field(default_factory=lambda: dbc_dict('subaru_global_2017_generated', None)) diff --git a/selfdrive/car/volkswagen/values.py b/selfdrive/car/volkswagen/values.py index f029740284..4dff9205d6 100644 --- a/selfdrive/car/volkswagen/values.py +++ b/selfdrive/car/volkswagen/values.py @@ -112,15 +112,15 @@ class CANBUS: class VolkswagenFlags(IntFlag): STOCK_HCA_PRESENT = 1 -@dataclass +@dataclass(frozen=True) class VolkswagenMQBPlatformConfig(PlatformConfig): dbc_dict: DbcDict = field(default_factory=lambda: dbc_dict('vw_mqb_2010', None)) -@dataclass +@dataclass(frozen=True) class VolkswagenPQPlatformConfig(PlatformConfig): dbc_dict: DbcDict = field(default_factory=lambda: dbc_dict('vw_golf_mk4', None)) -@dataclass(kw_only=True) +@dataclass(frozen=True, kw_only=True) class VolkswagenCarSpecs(CarSpecs): steerRatio: float = field(default=15.6)