lpcore.capture.timedimagecapture のソースコード

import time
from typing import Any
from lpcore import TaskStatus
from lpcore.capture.capturebase import CaptureBase


[ドキュメント] class TimedImageCapture(CaptureBase): runtime_parameters_required = {"capture_duration_ms": float} def _custom_execute(self, **kwargs: Any) -> tuple[TaskStatus, int]: capture_duration_ms = self.parameters["capture_duration_ms"] time_start = time.time() while (time.time() - time_start) * 1e3 < capture_duration_ms: self.devices["camera"].trigger() assert ( time.time() - time_start ) * 1e3 >= capture_duration_ms, f"Expected {capture_duration_ms} ms, but got {(time.time() - time_start) * 1e3} ms." number_of_images = self._image_buffer.qsize() return TaskStatus.SUCCESS, number_of_images