Skip to content

Commit

Permalink
reviewing documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
IvoVellekoop committed Oct 11, 2024
1 parent 7e119d0 commit fb7472b
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 52 deletions.
4 changes: 2 additions & 2 deletions docs/source/micromanager.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@
OpenWFS in Micro-Manager
==============================================

To smoothly enable end-user interaction with wavefront shaping algorithms, the Micro-Manager device adapter PyDevice was developed :cite:`PyDevice`. Micro-Manager is a widely-used open-source microscopy control software package. In essence, PyDevice is a Micro-Manager adapter that imports objects from a Python script and integrates them as devices, e.g. a camera or stage. OpenWFS was written in compliance with the templates required for PyDevice, which means OpenWFS cameras, scanners and algorithms can be loaded into Micro-Manager as devices. Examples of this are found in the example gallery :cite:`readthedocsOpenWFS`, and a more detailed description of PyDevice can be found in the mmCoreAndDevices source tree :cite:`mmCoreAndDevices`.
For end users of microscopes, it is important to have a user-friendly interface to control the wavefront shaping algorithms. For this reason, we developed an adapter for the Micro-Manager is a widely-used open-source microscopy control software package Micro-Manger :cite:`micromanager,MMoverview`. Our adapter, called PyDevice :cite:`PyDevice`, allows any Python object to be loaded in the Micro-Manager graphical user interface (GUI). Objects that can be loaded include cameras, stages, wavefront shaping algorithms, and generic Python objects that expose attributes to the GUI. PyDevice allows the user to control the wavefront shaping algorithms from the Micro-Manager GUI, and to see feedback on the performance of the algorithms. Examples of this can be found in the example gallery :cite:`readthedocsOpenWFS`. At the time of writing, PyDevice is included as an experimental feature in the Micro-Manager nightly builds. A more detailed description of PyDevice can be found in the mmCoreAndDevices source tree :cite:`mmCoreAndDevices`.

An example of this integration can be found in :class:`micro_manager_microscope.py`. In this file, a simulated microscope is set up using the tools in :class:`openwfs.simulation`. In order to expose this to PyDevice, a :class:`dict` object is created named :class:`devices` containing the OpenWFS objects from the simulated microscope. These objects can then be manipulated from Micro-Manager, as seen in figure :numref:`micromanagerconnection`.
An example of this integration can be found in the online example ``micro_manager_microscope.py``. In this file, a simulated microscope is set up using the OpenWFS simulation tools. In order to expose this to PyDevice, a :class:`dict` object is created named ``devices`` containing the OpenWFS objects from the simulated microscope. These objects can then be used as an ordinary camera and translation stage from Micro-Manager, as seen in figure :numref:`micromanagerconnection`.


.. _micromanagerconnection:
Expand Down
9 changes: 9 additions & 0 deletions docs/source/references.bib
Original file line number Diff line number Diff line change
Expand Up @@ -462,6 +462,15 @@ @article{Anderson2016
year = {2016},
}

@article{micromanager,
title = {Advanced methods of microscope control using $\mu$Manager software},
author = {Edelstein, Arthur D and Tsuchida, Mark A and Amodaj, Nenad and Pinkard, Henry and Vale, Ronald D and Stuurman, Nico},
journal = {Journal of biological methods},
volume = {1},
number = {2},
year = {2014},
publisher = {NIH Public Access}
}

@misc{mmCoreAndDevices,
author = {Mark Tsuchida and Sam Griffin},
Expand Down
Loading

0 comments on commit fb7472b

Please sign in to comment.