Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
software:micro-manager [2024/05/21 23:52]
Jon Daniels [Runnables in the plugin]
software:micro-manager [2025/03/12 00:22] (current)
Jon Daniels [Scripting the plugin]
Line 89: Line 89:
 ==== Scripting the plugin ==== ==== Scripting the plugin ====
  
-The Micro-Manager plugin has an API that allows most of its functionality to be accessed via Beanshell scripts run from within Micro-Manager.  This allows users to orchestrate complex acquisitions and even use the plugin for adaptive microscopy where automated image analysis guides acquisition.  The best way to see what functionality is exposed via the API is to look at the [[https://github.com/micro-manager/micro-manager/blob/mm1/plugins/ASIdiSPIM/src/org/micromanager/asidispim/api/ASIdiSPIMInterface.java|source code of the Java interface]] which defines the API.  The API includes are methods to get and set the most commonly changed settings within the plugin, launch acquisitions, move the microscope, and more.  The API can be augmented if needed but every effort is made not to change the documented functionality.  Furthermore there is support for Java RMI which allows the plugin API to be access from a completely separate Java VM.+The Micro-Manager plugin has an API that allows most of its functionality to be accessed via Beanshell scripts run from within Micro-Manager.  This allows users to orchestrate complex acquisitions and even use the plugin for adaptive microscopy where automated image analysis guides acquisition.  The best way to see what functionality is exposed via the API is to look at the [[https://github.com/jondaniels/micro-manager/blob/mm1.4/plugins/ASIdiSPIM/src/org/micromanager/asidispim/api/ASIdiSPIMInterface.java|source code of the Java interface]] which defines the API.  The API includes are methods to get and set the most commonly changed settings within the plugin, launch acquisitions, move the microscope, and more.  The API can be augmented if needed but every effort is made not to change the documented functionality.  Furthermore there is support for Java RMI which allows the plugin API to be access from a completely separate Java VM.
  
 Here is a bare-bones example script: Here is a bare-bones example script:
Line 127: Line 127:
 // gets a reference to the plugin; use this to call the plugin's API methods // gets a reference to the plugin; use this to call the plugin's API methods
 // API documented in ASIdiSPIMInterface.java in source code  // API documented in ASIdiSPIMInterface.java in source code 
-//   (https://valelab4.ucsf.edu/trac/micromanager/browser/plugins/ASIdiSPIM/src/org/micromanager/asidispim/api/ASIdiSPIMInterface.java)+//   (https://github.com/jondaniels/micro-manager/blob/mm1.4/plugins/ASIdiSPIM/src/org/micromanager/asidispim/api/ASIdiSPIMInterface.java)
 // note that the plugin must be launched // note that the plugin must be launched
 ASIdiSPIMInterface diSPIM = new ASIdiSPIMImplementation(); ASIdiSPIMInterface diSPIM = new ASIdiSPIMImplementation();