add CAR.print_debug (#31652)

print debug
old-commit-hash: ac16c5518a
chrysler-long2
Justin Newberry 1 year ago committed by GitHub
parent a254be8fe3
commit b3bb450e4a
  1. 14
      selfdrive/car/__init__.py
  2. 4
      selfdrive/car/subaru/values.py

@ -1,5 +1,5 @@
# functions common among cars # functions common among cars
from collections import namedtuple from collections import defaultdict, namedtuple
from dataclasses import dataclass from dataclasses import dataclass
from enum import IntFlag, ReprEnum from enum import IntFlag, ReprEnum
from dataclasses import replace from dataclasses import replace
@ -301,3 +301,15 @@ class Platforms(str, ReprEnum):
@classmethod @classmethod
def with_flags(cls, flags: IntFlag) -> set['Platforms']: def with_flags(cls, flags: IntFlag) -> set['Platforms']:
return {p for p in cls if p.config.flags & flags} return {p for p in cls if p.config.flags & flags}
@classmethod
def print_debug(cls, flags):
platforms_with_flag = defaultdict(list)
for flag in flags:
for platform in cls:
if platform.config.flags & flag:
assert flag.name is not None
platforms_with_flag[flag.name].append(platform)
for flag, platforms in platforms_with_flag.items():
print(f"{flag:20s}: {', '.join(p.name for p in platforms)}")

@ -262,3 +262,7 @@ FW_QUERY_CONFIG = FwQueryConfig(
CAR_INFO = CAR.create_carinfo_map() CAR_INFO = CAR.create_carinfo_map()
DBC = CAR.create_dbc_map() DBC = CAR.create_dbc_map()
if __name__ == "__main__":
CAR.print_debug(SubaruFlags)

Loading…
Cancel
Save