(self)
| 32 | return self._base_path / f"led_map_2d_{string_time}.csv" |
| 33 | |
| 34 | def run(self): |
| 35 | views: dict[int, list[LED2D]] = {} |
| 36 | view_id_to_filename: dict[int, Path] = {} |
| 37 | |
| 38 | while not self._exit_event.is_set(): |
| 39 | |
| 40 | if not self._input_queue_3d.empty(): |
| 41 | leds = self._input_queue_3d.get() |
| 42 | write_3d_leds_to_file(leds, self._base_path / "led_map_3d.csv") |
| 43 | |
| 44 | if not self._input_queue_2d.empty(): |
| 45 | control, data = self._input_queue_2d.get() |
| 46 | |
| 47 | if control == DetectionControlEnum.DONE: |
| 48 | view_id = data |
| 49 | write_2d_leds_to_file(views[view_id], view_id_to_filename[view_id]) |
| 50 | |
| 51 | if control == DetectionControlEnum.DETECT: |
| 52 | led = data |
| 53 | |
| 54 | if led.view_id not in view_id_to_filename: |
| 55 | view_id_to_filename[led.view_id] = self.get_new_filename() |
| 56 | views[led.view_id] = [] |
| 57 | |
| 58 | views[led.view_id].append(led) |
| 59 | |
| 60 | if control == DetectionControlEnum.DELETE: |
| 61 | view_id = data |
| 62 | del views[view_id] |
| 63 | del view_id_to_filename[view_id] |
nothing calls this directly
no test coverage detected