def _extract_all_data( source_frames: Iterator[Tuple[Frame, ULID]], pbar: Tqdm, ) -> FrameDataGenerator: for frame, frame_id in source_frames: for sensor_name, data in frame.items(): if isinstance(data, RemoteData): pbar.update() continue yield data, sensor_name, frame_id.str
def _extract_unuploaded_data( source_frames: Iterator[Tuple[Frame, ULID]], pbar: Tqdm, *, done_frames: Dict[float, Frame]) -> FrameDataGenerator: for frame, frame_id in source_frames: done_frame = done_frames.get(frame_id.timestamp().timestamp) if done_frame: frame_id = done_frame.frame_id for sensor_name, data in frame.items(): if isinstance(data, RemoteData): pbar.update() continue if (done_frame and sensor_name in done_frame and done_frame[sensor_name].path == data.target_remote_path): pbar.update() continue yield data, sensor_name, frame_id.str