add CAR.print_debug (#31652)

print debug
pull/31655/head
Justin Newberry 1 year ago committed by GitHub
parent 5d291cb64d
commit ac16c5518a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  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