should save ~3% CPU (still 4% above baseline)

pull/33208/head
Shane Smiskol 1 year ago
parent d398f38dbe
commit a29227618f
  1. 4
      selfdrive/car/card.py

@ -79,7 +79,7 @@ def asdict(obj) -> dict[str, any]:
def convert_to_capnp(struct: structs.CarParams | structs.CarState | structs.CarControl.Actuators) -> capnp.lib.capnp._DynamicStructBuilder: def convert_to_capnp(struct: structs.CarParams | structs.CarState | structs.CarControl.Actuators) -> capnp.lib.capnp._DynamicStructBuilder:
struct_dict = dataclasses.asdict(struct) struct_dict = asdict(struct)
if isinstance(struct, structs.CarParams): if isinstance(struct, structs.CarParams):
del struct_dict['lateralTuning'] del struct_dict['lateralTuning']
@ -88,7 +88,7 @@ def convert_to_capnp(struct: structs.CarParams | structs.CarState | structs.CarC
# this is the only union, special handling # this is the only union, special handling
which = struct.lateralTuning.which() which = struct.lateralTuning.which()
struct_capnp.lateralTuning.init(which) struct_capnp.lateralTuning.init(which)
lateralTuning_dict = dataclasses.asdict(getattr(struct.lateralTuning, which)) lateralTuning_dict = asdict(getattr(struct.lateralTuning, which))
setattr(struct_capnp.lateralTuning, which, lateralTuning_dict) setattr(struct_capnp.lateralTuning, which, lateralTuning_dict)
elif isinstance(struct, structs.CarState): elif isinstance(struct, structs.CarState):
struct_capnp = car.CarState.new_message(**struct_dict) struct_capnp = car.CarState.new_message(**struct_dict)

Loading…
Cancel
Save