It seems that there is an increase in scripting interface to MM. As some of you know, I’ve been working on matlab toolbox that will allow very flexible yet powerful microscopy control.
The toolbox uses Matlab’s object oriented capabilities and the main class in the Scope class. In each script we define a global rS object of class Scope and changing its properties using set/get changes the filters, move the stage etc. The Scope class has a container of Task objects, each task defines a specific x,y,z filter set etc. The Scope main method is “run” that just goes through these Tasks.
The Tasks objects inherits from a MetaData class that is really similar to what Shalin called acquisition states in his post and I figured that although the code is not as mature as I would like it to be, if it would be helpful to others I might as well set it loose… Once everything is installed properly writing the script that go through these tasks is very easy. I’m attaching an example script that creates 25 tasks in a grid. In this example all Tasks have the same channels, but it would be very easy to change that by just adding an additional set(rS…) on the loop that defines the Tasks.
The toolbox includes other features such as the ability of the rS object to decide by its own on the order of Tasks based in heuristic optimizations that minimized the travel distance and metadata management that can save data in the tiff file header such as the well and plates data and so on.
Anyway, I will post again when it will be a ‘real’ release, but I figured since there were a discussion on scripting and micro-manager I should post this update.
The code can be accessed at: http://microscopytoolbox.googlecode.com
svn checkout http://microscopytoolbox.googlecode.com/svn/trunk/ microscopytoolbox-read-only
to checkout the code.