Exemplo n.º 1
0
    def __init__(
        self,
        stop_event: LoggedEvent,
        saving_signal: LoggedEvent,
        wait_signal: LoggedEvent,
        noise_subtraction_on: Event,
        camera_queue: ArrayQueue,
        saver_queue: ArrayQueue,
        max_queue_size=1200,
    ):
        super().__init__(name="dispatcher")
        self.stop_event = stop_event
        self.saving_signal = saving_signal.new_reference(self.logger)
        self.wait_signal = wait_signal.new_reference(self.logger)
        self.noise_subtraction_active = noise_subtraction_on.new_reference(
            self.logger)

        self.camera_queue = camera_queue
        self.saver_queue = saver_queue
        self.n_planes_queue = Queue()
        self.viewer_queue = ArrayQueue(max_mbytes=max_queue_size)
        self.calibration_ref_queue = ArrayQueue()

        self.volume_buffer = None
        self.calibration_ref = None

        self.n_planes = 1
        self.i_plane = 0
        self.first_volume = True