Merge branch 'master' of gitlab.psi.ch:/bec/ophyd_devices
This commit is contained in:
commit
c30df21c21
@ -107,6 +107,8 @@ class RtLamniController(Controller):
|
||||
logger.info("The connection has already been established.")
|
||||
# warnings.warn(f"The connection has already been established.", stacklevel=2)
|
||||
|
||||
self._update_flyer_device_info()
|
||||
|
||||
def off(self) -> None:
|
||||
"""Close the socket connection to the controller"""
|
||||
if self.connected:
|
||||
@ -305,6 +307,29 @@ class RtLamniController(Controller):
|
||||
readout = threading.Thread(target=self.read_positions_from_sampler)
|
||||
readout.start()
|
||||
|
||||
def _update_flyer_device_info(self):
|
||||
flyer_info = self._get_flyer_device_info()
|
||||
self.get_device_manager().producer.set(
|
||||
MessageEndpoints.device_info("rt_scan"),
|
||||
BECMessage.DeviceInfoMessage(device="rt_scan", info=flyer_info).dumps(),
|
||||
)
|
||||
|
||||
def _get_flyer_device_info(self) -> dict:
|
||||
return {
|
||||
"device_name": self.name,
|
||||
"device_attr_name": getattr(self, "attr_name", ""),
|
||||
"device_dotted_name": getattr(self, "dotted_name", ""),
|
||||
"device_info": {
|
||||
"device_base_class": "ophydobject",
|
||||
"signals": [],
|
||||
"hints": {"fields": ["average_x_st_fzp", "average_y_st_fzp"]},
|
||||
"describe": {},
|
||||
"describe_configuration": {},
|
||||
"sub_devices": [],
|
||||
"custom_user_access": [],
|
||||
},
|
||||
}
|
||||
|
||||
def kickoff(self, metadata):
|
||||
self.readout_metadata = metadata
|
||||
while not self._min_scan_buffer_reached:
|
||||
|
@ -383,6 +383,10 @@ class SynFlyer(Device, PositionerBase):
|
||||
|
||||
super().__init__(name=name, parent=parent, labels=labels, kind=kind, **kwargs)
|
||||
|
||||
@property
|
||||
def hints(self):
|
||||
return {"fields": ["flyer_samx", "flyer_samy"]}
|
||||
|
||||
def kickoff(self, metadata, num_pos, positions, exp_time: float = 0):
|
||||
positions = np.asarray(positions)
|
||||
|
||||
@ -394,8 +398,10 @@ class SynFlyer(Device, PositionerBase):
|
||||
bundle.append(
|
||||
BECMessage.DeviceMessage(
|
||||
signals={
|
||||
"flyer_samx": {"value": positions[ii, 0], "timestamp": 0},
|
||||
"flyer_samy": {"value": positions[ii, 1], "timestamp": 0},
|
||||
self.name: {
|
||||
"flyer_samx": {"value": positions[ii, 0], "timestamp": 0},
|
||||
"flyer_samy": {"value": positions[ii, 1], "timestamp": 0},
|
||||
}
|
||||
},
|
||||
metadata={"pointID": ii, **metadata},
|
||||
).dumps()
|
||||
|
Loading…
x
Reference in New Issue
Block a user