python-microscope / microscope

Python library for control of microscope devices, supporting hardware triggers and distribution of devices over the network for performance and flexibility.
https://www.python-microscope.org
GNU General Public License v3.0
66 stars 39 forks source link

Add Andor set_transform #228

Open gjover opened 2 years ago

gjover commented 2 years ago

In order to set transformations as flips and rotations, set_transform method is needed.

carandraug commented 1 year ago

The transform logic is implemented in the ABC (Camera.set_transform and Camera.get_transform and then used in Camera._process_data). Is that not working for you?

I've looked into your proposed fix at cf592a39793f29ac1987b8b792d9d1bbcb90e7c7 where you use ATMCD's SetImageFlip and SetImageRotate functions. I'm guessing you're want to use the vendor library (because it's faster?). That's fine but this breaks Camera.get_transform (you need to overload it as well). How this plays with the rest of the functions that check Camera._client_transform, Client._readout_transform, and Client._transform should also be checked.