diff --git a/src/main/java/org/micromanager/lightsheetmanager/api/AcquisitionManager.java b/src/main/java/org/micromanager/lightsheetmanager/api/AcquisitionManager.java index 5262df03..7c0ef593 100644 --- a/src/main/java/org/micromanager/lightsheetmanager/api/AcquisitionManager.java +++ b/src/main/java/org/micromanager/lightsheetmanager/api/AcquisitionManager.java @@ -1,9 +1,20 @@ package org.micromanager.lightsheetmanager.api; +import org.micromanager.acqj.main.Acquisition; + import java.util.concurrent.Future; public interface AcquisitionManager { + /** + * Return the acquisition currently being set up or running. + * + * @return the current acquisition, or null. Null before setup constructs it and again + * once the run finishes. Callers needing it after the run, for example to call + * checkForExceptions(), must retain their own reference. + */ + Acquisition current(); + /** * Request that an acquisition is run. * diff --git a/src/main/java/org/micromanager/lightsheetmanager/model/acquisitions/AcquisitionEngine.java b/src/main/java/org/micromanager/lightsheetmanager/model/acquisitions/AcquisitionEngine.java index 2a5edfa0..133f07cc 100644 --- a/src/main/java/org/micromanager/lightsheetmanager/model/acquisitions/AcquisitionEngine.java +++ b/src/main/java/org/micromanager/lightsheetmanager/model/acquisitions/AcquisitionEngine.java @@ -487,6 +487,11 @@ public AutofocusAdapter autofocus() { return autofocus_; } + @Override + public Acquisition current() { + return currentAcquisition_; + } + //////////////////////// AcquisitionControl Callback methods //////////////////////// @Override public void stop(boolean interrupted) {