Added temporary support to scans
This commit is contained in:
parent
f9fb6dc721
commit
915958885b
2 changed files with 9 additions and 42 deletions
|
|
@ -10,6 +10,7 @@ class TileScanAPI(MicroscopeViewPlugin):
|
||||||
|
|
||||||
# Get params
|
# Get params
|
||||||
filename = payload.param('filename')
|
filename = payload.param('filename')
|
||||||
|
temporary = payload.param('temporary', default=False, convert=bool)
|
||||||
|
|
||||||
step_size = payload.param('step_size', default=[2000, 1500, 100], convert=list)
|
step_size = payload.param('step_size', default=[2000, 1500, 100], convert=list)
|
||||||
step_size = [int(i) for i in step_size]
|
step_size = [int(i) for i in step_size]
|
||||||
|
|
@ -36,6 +37,7 @@ class TileScanAPI(MicroscopeViewPlugin):
|
||||||
task = self.microscope.task.start(
|
task = self.microscope.task.start(
|
||||||
self.plugin.tile,
|
self.plugin.tile,
|
||||||
basename=filename,
|
basename=filename,
|
||||||
|
temporary=temporary,
|
||||||
step_size=step_size,
|
step_size=step_size,
|
||||||
grid=grid,
|
grid=grid,
|
||||||
style=style,
|
style=style,
|
||||||
|
|
@ -49,43 +51,3 @@ class TileScanAPI(MicroscopeViewPlugin):
|
||||||
|
|
||||||
# return a handle on the autofocus task
|
# return a handle on the autofocus task
|
||||||
return jsonify(task.state), 202
|
return jsonify(task.state), 202
|
||||||
|
|
||||||
|
|
||||||
class ZStackAPI(MicroscopeViewPlugin):
|
|
||||||
def post(self):
|
|
||||||
payload = JsonPayload(request)
|
|
||||||
|
|
||||||
# Get params
|
|
||||||
name = payload.param('name')
|
|
||||||
step_size = payload.param('step_size', default=100, convert=int)
|
|
||||||
steps = payload.param('steps', default=5, convert=int)
|
|
||||||
center = payload.param('center', default=True, convert=bool)
|
|
||||||
|
|
||||||
use_video_port = payload.param('use_video_port', default=False, convert=bool)
|
|
||||||
resize = payload.param('size', default=None)
|
|
||||||
if resize:
|
|
||||||
if ('width' in resize) and ('height' in resize):
|
|
||||||
resize = (int(resize['width']), int(resize['height'])) # Convert dict to tuple
|
|
||||||
else:
|
|
||||||
abort(404)
|
|
||||||
|
|
||||||
bayer = payload.param('bayer', default=True, convert=bool)
|
|
||||||
metadata = payload.param('metadata', default={}, convert=dict)
|
|
||||||
tags = payload.param('tags', default=[], convert=list)
|
|
||||||
|
|
||||||
print("Running tile scan...")
|
|
||||||
task = self.microscope.task.start(
|
|
||||||
self.plugin.stack,
|
|
||||||
basename=name,
|
|
||||||
step_size=step_size,
|
|
||||||
steps=steps,
|
|
||||||
center=center,
|
|
||||||
use_video_port=use_video_port,
|
|
||||||
resize=resize,
|
|
||||||
bayer=bayer,
|
|
||||||
metadata=metadata,
|
|
||||||
tags=tags
|
|
||||||
)
|
|
||||||
|
|
||||||
# return a handle on the autofocus task
|
|
||||||
return jsonify(task.state), 202
|
|
||||||
|
|
|
||||||
|
|
@ -48,12 +48,12 @@ class ScanPlugin(MicroscopePlugin):
|
||||||
|
|
||||||
api_views = {
|
api_views = {
|
||||||
'/tile': TileScanAPI,
|
'/tile': TileScanAPI,
|
||||||
'/stack': ZStackAPI,
|
|
||||||
}
|
}
|
||||||
|
|
||||||
def capture(self,
|
def capture(self,
|
||||||
basename,
|
basename,
|
||||||
scan_id,
|
scan_id,
|
||||||
|
temporary: bool = False,
|
||||||
use_video_port: bool = False,
|
use_video_port: bool = False,
|
||||||
resize: Tuple[int, int] = None,
|
resize: Tuple[int, int] = None,
|
||||||
bayer: bool = False,
|
bayer: bool = False,
|
||||||
|
|
@ -67,7 +67,7 @@ class ScanPlugin(MicroscopePlugin):
|
||||||
# Create output object
|
# Create output object
|
||||||
output = self.microscope.camera.new_image(
|
output = self.microscope.camera.new_image(
|
||||||
write_to_file=True,
|
write_to_file=True,
|
||||||
temporary=False,
|
temporary=temporary,
|
||||||
filename=filename,
|
filename=filename,
|
||||||
folder=foldername)
|
folder=foldername)
|
||||||
|
|
||||||
|
|
@ -94,6 +94,7 @@ class ScanPlugin(MicroscopePlugin):
|
||||||
def tile(
|
def tile(
|
||||||
self,
|
self,
|
||||||
basename: str = None,
|
basename: str = None,
|
||||||
|
temporary: bool = False,
|
||||||
step_size: int = [2000, 1500, 100],
|
step_size: int = [2000, 1500, 100],
|
||||||
grid: list = [3, 3, 5],
|
grid: list = [3, 3, 5],
|
||||||
style='raster',
|
style='raster',
|
||||||
|
|
@ -159,6 +160,7 @@ class ScanPlugin(MicroscopePlugin):
|
||||||
self.capture(
|
self.capture(
|
||||||
basename,
|
basename,
|
||||||
scan_id,
|
scan_id,
|
||||||
|
temporary=temporary,
|
||||||
use_video_port=use_video_port,
|
use_video_port=use_video_port,
|
||||||
resize=resize,
|
resize=resize,
|
||||||
bayer=bayer,
|
bayer=bayer,
|
||||||
|
|
@ -169,6 +171,7 @@ class ScanPlugin(MicroscopePlugin):
|
||||||
logging.debug("Entering z-stack")
|
logging.debug("Entering z-stack")
|
||||||
self.stack(
|
self.stack(
|
||||||
basename=basename,
|
basename=basename,
|
||||||
|
temporary=temporary,
|
||||||
scan_id=scan_id,
|
scan_id=scan_id,
|
||||||
step_size=step_size[2],
|
step_size=step_size[2],
|
||||||
steps=grid[2],
|
steps=grid[2],
|
||||||
|
|
@ -186,6 +189,7 @@ class ScanPlugin(MicroscopePlugin):
|
||||||
def stack(
|
def stack(
|
||||||
self,
|
self,
|
||||||
basename: str = None,
|
basename: str = None,
|
||||||
|
temporary: bool = False,
|
||||||
scan_id: str = None,
|
scan_id: str = None,
|
||||||
step_size: int = 100,
|
step_size: int = 100,
|
||||||
steps: int = 5,
|
steps: int = 5,
|
||||||
|
|
@ -224,6 +228,7 @@ class ScanPlugin(MicroscopePlugin):
|
||||||
self.capture(
|
self.capture(
|
||||||
basename,
|
basename,
|
||||||
scan_id,
|
scan_id,
|
||||||
|
temporary=temporary,
|
||||||
use_video_port=use_video_port,
|
use_video_port=use_video_port,
|
||||||
resize=resize,
|
resize=resize,
|
||||||
bayer=bayer,
|
bayer=bayer,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue