Updated signature

This commit is contained in:
gac-x05la
2024-11-05 14:15:11 +01:00
committed by mohacsi_i
parent 83d6ec699a
commit 75c1627e93
2 changed files with 27 additions and 25 deletions
@@ -445,6 +445,12 @@ class GigaFrostCamera(PSIDetectorBase):
prefix="",
*,
name,
kind=None,
read_attrs=None,
configuration_attrs=None,
parent=None,
device_manager=None,
sim_mode=False,
auto_soft_enable=False,
backend_url=const.BE999_DAFL_CLIENT,
**kwargs,
@@ -455,7 +461,7 @@ class GigaFrostCamera(PSIDetectorBase):
self._signals_to_be_set['backend_url'] = backend_url
# super() will call the mixin class
super().__init__(prefix=prefix, name=name, **kwargs)
super().__init__(prefix=prefix, name=name, kind=kind, read_attrs=read_attrs, configuration_attrs=configuration_attrs, parent=parent, device_manager=device_manager, **kwargs)
def _init(self):
"""Ugly hack: values must be set before on_init() is called"""
@@ -586,15 +592,6 @@ class GigaFrostCamera(PSIDetectorBase):
else:
raise RuntimeError(f"Unsupported trigger mode: {trigger_mode}")
def stage(self):
""" Standard stage command"""
if not self._initialized:
logger.warning(
f"[{self.name}] Ophyd device havent ran the initialization sequence,"
"IOC might be in unknown configuration."
)
return super().stage()
@property
def exposure_mode(self):
"""Returns the current exposure mode of the GigaFRost camera.
+20 -15
View File
@@ -36,7 +36,7 @@ class StdDaqMixin(CustomDeviceMixin):
# Fish out our configuration from scaninfo (via explicit or generic addressing)
scanparam = self.parent.scaninfo.scan_msg.info
alias = self.parent.parent.name if self.parent.parent is not None else self.parent.name
logger.warning(f"[{alias}] Scan parameters:\n{self.parent.scaninfo}")
logger.warning(f"[{alias}] Scan parameters:\n{scanparam}")
d = {}
if 'kwargs' in scanparam:
scanargs = scanparam['kwargs']
@@ -173,15 +173,23 @@ class StdDaqClient(PSIDeviceBase):
cfg_pixel_height = Component(Signal, kind=Kind.config)
cfg_pixel_width = Component(Signal, kind=Kind.config)
def __init__(
self,
*args,
prefix="",
*,
name,
kind=None,
read_attrs=None,
configuration_attrs=None,
parent=None,
device_manager=None,
sim_mode=False,
ws_url: str = "ws://localhost:8080",
rest_url: str = "http://localhost:5000",
parent: Device = None,
**kwargs
**kwargs,
) -> None:
super().__init__(*args, parent=parent, **kwargs)
super().__init__(prefix=prefix, name=name, kind=kind, read_attrs=read_attrs, configuration_attrs=configuration_attrs, parent=parent, device_manager=device_manager, **kwargs)
self.status._metadata["write_access"] = False
self.ws_url._metadata["write_access"] = False
self.ws_url.set(ws_url, force=True).wait()
@@ -294,14 +302,10 @@ class StdDaqClient(PSIDeviceBase):
cfg = self.get_daq_config()
if cfg['image_pixel_height'] != self.cfg_pixel_height.get() or cfg['image_pixel_width'] != self.cfg_pixel_width.get():
# Stop running acquisition
self.safestop()
sleep(1)
cfg = self.get_daq_config()
changes = {
'image_pixel_height': int(self.cfg_pixel_height.get()),
'image_pixel_width': int(self.cfg_pixel_width.get()),
}
cfg = cfg.update(changes)
self.unstage()
# Update retrieved config
cfg['image_pixel_height'] = int(self.cfg_pixel_height.get())
cfg['image_pixel_width'] = int(self.cfg_pixel_width.get())
self.set_daq_config(cfg)
self.read_daq_config()
@@ -330,8 +334,9 @@ class StdDaqClient(PSIDeviceBase):
def set_daq_config(self, config):
"""Write a full configuration to the DAQ
"""
url = self.rest_url.get() + '/api/config/set'
r = requests.post(
self.rest_url.get() + '/api/config/set',
url,
params={"user": "ioc"},
json=config,
timeout=2,
@@ -358,7 +363,7 @@ class StdDaqClient(PSIDeviceBase):
try:
if self._wsclient is not None:
self._wsclient.close()
self._wsclient = connect(self._ws_url)
self._wsclient = connect(self.ws_url.get())
msg = json.dumps({"command": "stop"})
self._wsclient.send(msg)
except (ConnectionClosedError, ConnectionClosedOK, ConnectionRefusedError):