From 06b1dfe62b2001662863b7bff94363ea6a6fb96f Mon Sep 17 00:00:00 2001 From: David Hammer <dhammer@mailbox.org> Date: Tue, 25 Jan 2022 10:42:04 +0100 Subject: [PATCH] Tweak manager to support new assembler --- src/calng/CalibrationManager.py | 29 +++++++++++------------------ 1 file changed, 11 insertions(+), 18 deletions(-) diff --git a/src/calng/CalibrationManager.py b/src/calng/CalibrationManager.py index 59f485f0..07f12772 100644 --- a/src/calng/CalibrationManager.py +++ b/src/calng/CalibrationManager.py @@ -82,14 +82,6 @@ class ClassIdsNode(Configurable): accessMode=AccessMode.INITONLY, assignment=Assignment.MANDATORY) - previewMatcherClass = String( - displayedName='Preview matcher class', - description='Device class to use for matching the output of a preview ' - 'layer.', - defaultValue='ModuleStacker', - accessMode=AccessMode.INITONLY, - assignment=Assignment.MANDATORY) - assemblerClass = String( displayedName='Assembler class', description='Device class to use for assembling the matched output of ' @@ -125,14 +117,6 @@ class DeviceIdsNode(Configurable): accessMode=AccessMode.INITONLY, assignment=Assignment.MANDATORY) - previewMatcherSuffix = String( - displayedName='Preview matcher suffix', - description='Suffix for preview layer matching device IDs. The ' - 'formatting placeholder \'layer\' may be used.', - defaultValue='MATCH_{layer}', - accessMode=AccessMode.INITONLY, - assignment=Assignment.MANDATORY) - assemblerSuffix = String( displayedName='Assembler suffix', description='Suffix for assembler device IDs. The formatting ' @@ -408,6 +392,13 @@ class CalibrationManager(DeviceClientBase, Device): self.deviceServers = value self._servers_changed = True + imageDataPath = String( + displayedName='Image data path', + description='Path in DAQ hash to actual image data, used for preview', + accessMode=AccessMode.RECONFIGURABLE, + assignment=Assignment.OPTIONAL, + defaultValue='image.data') + geometryDevice = String( displayedName='Geometry device', description='[NYI] Device ID for a geometry device defining the ' @@ -1055,7 +1046,7 @@ class CalibrationManager(DeviceClientBase, Device): device_id_templates = {} class_args = (self.detectorType.value.lower().capitalize(),) - for role in ['correction', 'groupMatcher', 'bridge', 'previewMatcher', + for role in ['correction', 'groupMatcher', 'bridge', 'assembler']: class_ids[role] = getattr( self.classIds, f'{role}Class').value.format(*class_args) @@ -1194,13 +1185,15 @@ class CalibrationManager(DeviceClientBase, Device): background(_activate_bridge(bridge_device_id)) - # Instantiate preview assemblers. + # Instantiate preview layer assemblers. geometry_device_id = self.geometryDevice.value for layer, output_pipeline, server in self.previewLayers.value: assembler_device_id = device_id_templates['assembler'].format( layer=layer) config = Hash() + # TODO: put _image_data_path in corr dev schema, get from there + config['pathToStack'] = self.imageDataPath.value config['fastSources'] = [ Hash('fsSelect', True, 'fsSource', -- GitLab