                                          ProcessorStack SequenceSettings
                                          MMAcquisition
                                          TaggedImageStorageRam]
+           [org.micromanager.navigation PositionList]
            [org.micromanager.utils ReportingUtils]
            [mmcorej TaggedImage Configuration Metadata]
            (java.util.concurrent Executors TimeUnit)


;; generic metadata

(defn convert-settings [^SequenceSettings settings]
  (def seqSettings settings)
  (into (sorted-map)
        (-> settings


(defn -run
  ([this acq-settings cleanup? position-list autofocus-device]
    (let [settings (convert-settings acq-settings position-list)]
      (run this settings cleanup? position-list autofocus-device)))
  ([this acq-settings cleanup?]
    (let [position-list (.getPositionList gui)
          settings (convert-settings acq-settings position-list)]
      (run this settings cleanup? position-list (.. gui getAutofocusManager getDevice))))
  ([this acq-settings]
    (-run this acq-settings true)))

