Moved autofocus plugin to its own module

This commit is contained in:
Joel Collins 2019-01-30 13:51:20 +00:00
parent a6791d55ac
commit 4450ee132e
5 changed files with 4 additions and 27 deletions

View file

@ -0,0 +1,26 @@
import numpy as np
from openflexure_microscope.api.v1.views import MicroscopeViewPlugin
from openflexure_microscope.api.utilities import JsonPayload
from flask import request, Response, escape, jsonify
import logging
class MeasureSharpnessAPI(MicroscopeViewPlugin):
def post(self):
payload = JsonPayload(request)
return jsonify({'sharpness': self.plugin.measure_sharpness()})
class AutofocusAPI(MicroscopeViewPlugin):
def post(self):
payload = JsonPayload(request)
# Figure out the range of z values to use
dz = payload.param("dz", default=np.linspace(-300,300,7), convert=np.array)
print("Running autofocus...")
task = self.microscope.task.start(self.plugin.autofocus, dz)
# return a handle on the autofocus task
return jsonify(task.state, 202)