eda_plugin.actuators.micro_manager.DirectMMAcquisition

class eda_plugin.actuators.micro_manager.DirectMMAcquisition(*args: Any, **kwargs: Any)

Bases: MMAcquisition

Directly take images from the microscope by using the snap() function.

This is the most straight-forward approach to take images, but it would be necessary to handle channel switching etc. So pursued any further.

__init__()

Set up the event to break the while loop.

Methods

__init__()

Set up the event to break the while loop.

acquire()

Full acquisition loop.

change_interval()

If in fast_react mode, interrupt the wait of the while loop for the next frame.

get_channel_information()

Get channel information from the MM table and count how many channels are active.

start()

Start the QThread first, then yourself.

start_acq()

To be implemented by the subclass.

Attributes

acquisition_ended

acquire()

Full acquisition loop.

It could be interesting to also implement this with a QTimer to have a more consistent frame rate. Problem is, that with inserting images into the pipeline it works well with the image injector (MMplugin), but an actual image would have to be taken e.g. with snap() for a real acquisition and this does not handle changing channels etc. So using an already set up acquisition as in TimerMMAcquisition or even a Pycromanager Acquisition seems like the better way in the moment.

change_interval()

If in fast_react mode, interrupt the wait of the while loop for the next frame.

get_channel_information()

Get channel information from the MM table and count how many channels are active.

start()

Start the QThread first, then yourself.

start_acq()

To be implemented by the subclass.