fix: format online changes via black
This commit is contained in:
parent
c418b87ad6
commit
f221f9e88e
@ -369,7 +369,7 @@ class DelayGeneratorDG645(Device):
|
|||||||
f"{name}_set_high_on_exposure": False,
|
f"{name}_set_high_on_exposure": False,
|
||||||
f"{name}_set_high_on_stage": False,
|
f"{name}_set_high_on_stage": False,
|
||||||
f"{name}_set_trigger_source": "SINGLE_SHOT",
|
f"{name}_set_trigger_source": "SINGLE_SHOT",
|
||||||
f"{name}_trigger_width": None, # This somehow duplicates the logic of fixed_ttl_width
|
f"{name}_trigger_width": None, # This somehow duplicates the logic of fixed_ttl_width
|
||||||
}
|
}
|
||||||
if ddg_config is not None:
|
if ddg_config is not None:
|
||||||
[self.ddg_config.update({f"{name}_{key}": value}) for key, value in ddg_config.items()]
|
[self.ddg_config.update({f"{name}_{key}": value}) for key, value in ddg_config.items()]
|
||||||
@ -475,9 +475,7 @@ class DelayGeneratorDG645(Device):
|
|||||||
return status.set_finished()
|
return status.set_finished()
|
||||||
while True:
|
while True:
|
||||||
self.trigger_burst_readout.put(1, use_complete=True)
|
self.trigger_burst_readout.put(1, use_complete=True)
|
||||||
if (
|
if self.burst_cycle_finished.read()[self.burst_cycle_finished.name]["value"] == 1:
|
||||||
self.burst_cycle_finished.read()[self.burst_cycle_finished.name]["value"] == 1
|
|
||||||
):
|
|
||||||
self._acquisition_done = True
|
self._acquisition_done = True
|
||||||
status.set_finished()
|
status.set_finished()
|
||||||
return
|
return
|
||||||
@ -515,9 +513,9 @@ class DelayGeneratorDG645(Device):
|
|||||||
else:
|
else:
|
||||||
self.set_channels("width", self.trigger_width.get())
|
self.set_channels("width", self.trigger_width.get())
|
||||||
for value, channel in zip(self.fixed_ttl_width.get(), self._all_channels):
|
for value, channel in zip(self.fixed_ttl_width.get(), self._all_channels):
|
||||||
logger.info(f'{value}')
|
logger.info(f"{value}")
|
||||||
if value !=0:
|
if value != 0:
|
||||||
logger.info(f'Setting {value}')
|
logger.info(f"Setting {value}")
|
||||||
self.set_channels("width", value, channels=[channel])
|
self.set_channels("width", value, channels=[channel])
|
||||||
else:
|
else:
|
||||||
self._set_trigger(getattr(TriggerSource, self.set_trigger_source.get()))
|
self._set_trigger(getattr(TriggerSource, self.set_trigger_source.get()))
|
||||||
@ -555,9 +553,9 @@ class DelayGeneratorDG645(Device):
|
|||||||
else:
|
else:
|
||||||
self.set_channels("width", self.trigger_width.get())
|
self.set_channels("width", self.trigger_width.get())
|
||||||
for value, channel in zip(self.fixed_ttl_width.get(), self._all_channels):
|
for value, channel in zip(self.fixed_ttl_width.get(), self._all_channels):
|
||||||
logger.info(f'{value}')
|
logger.info(f"{value}")
|
||||||
if value !=0:
|
if value != 0:
|
||||||
logger.info(f'Setting {value}')
|
logger.info(f"Setting {value}")
|
||||||
self.set_channels("width", value, channels=[channel])
|
self.set_channels("width", value, channels=[channel])
|
||||||
else:
|
else:
|
||||||
# define parameters
|
# define parameters
|
||||||
|
@ -104,9 +104,10 @@ class Eiger9mCsaxs(DetectorBase):
|
|||||||
prefix (str): PV prefix (X12SA-ES-EIGER9M:)
|
prefix (str): PV prefix (X12SA-ES-EIGER9M:)
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
USER_ACCESS = [
|
USER_ACCESS = [
|
||||||
"describe",
|
"describe",
|
||||||
]
|
]
|
||||||
|
|
||||||
cam = ADCpt(SlsDetectorCam, "cam1:")
|
cam = ADCpt(SlsDetectorCam, "cam1:")
|
||||||
|
|
||||||
@ -193,7 +194,7 @@ class Eiger9mCsaxs(DetectorBase):
|
|||||||
self.std_client = StdDaqClient(url_base=self.std_rest_server_url)
|
self.std_client = StdDaqClient(url_base=self.std_rest_server_url)
|
||||||
self.std_client.stop_writer()
|
self.std_client.stop_writer()
|
||||||
timeout = 0
|
timeout = 0
|
||||||
#TODO put back change of e-account!
|
# TODO put back change of e-account!
|
||||||
# self._update_std_cfg("writer_user_id", int(self.scaninfo.username.strip(" e")))
|
# self._update_std_cfg("writer_user_id", int(self.scaninfo.username.strip(" e")))
|
||||||
# time.sleep(5)
|
# time.sleep(5)
|
||||||
while not self.std_client.get_status()["state"] == "READY":
|
while not self.std_client.get_status()["state"] == "READY":
|
||||||
@ -321,7 +322,7 @@ class Eiger9mCsaxs(DetectorBase):
|
|||||||
logger.info(f"Old scanID: {old_scanID}, ")
|
logger.info(f"Old scanID: {old_scanID}, ")
|
||||||
if self.scaninfo.scanID != old_scanID:
|
if self.scaninfo.scanID != old_scanID:
|
||||||
self._stopped = True
|
self._stopped = True
|
||||||
if self._stopped ==True:
|
if self._stopped == True:
|
||||||
return super().unstage()
|
return super().unstage()
|
||||||
self._eiger9M_finished()
|
self._eiger9M_finished()
|
||||||
# Message to BEC
|
# Message to BEC
|
||||||
|
@ -46,7 +46,7 @@ class EpicsMotorEx(EpicsMotor):
|
|||||||
# print out attributes that are being configured
|
# print out attributes that are being configured
|
||||||
print("setting ", key, "=", value)
|
print("setting ", key, "=", value)
|
||||||
getattr(self, key).put(value)
|
getattr(self, key).put(value)
|
||||||
|
|
||||||
# self.motor_done_move.subscribe(self._progress_update, run=False)
|
# self.motor_done_move.subscribe(self._progress_update, run=False)
|
||||||
|
|
||||||
# def kickoff(self) -> DeviceStatus:
|
# def kickoff(self) -> DeviceStatus:
|
||||||
@ -62,4 +62,4 @@ class EpicsMotorEx(EpicsMotor):
|
|||||||
# sub_type=self.SUB_PROGRESS,
|
# sub_type=self.SUB_PROGRESS,
|
||||||
# value=value ,
|
# value=value ,
|
||||||
# done= 1,
|
# done= 1,
|
||||||
# )
|
# )
|
||||||
|
@ -238,7 +238,7 @@ class FalconCsaxs(Device):
|
|||||||
self.scaninfo.load_scan_metadata()
|
self.scaninfo.load_scan_metadata()
|
||||||
logger.info(f"Old scanID: {old_scanID}, ")
|
logger.info(f"Old scanID: {old_scanID}, ")
|
||||||
if self.scaninfo.scanID != old_scanID:
|
if self.scaninfo.scanID != old_scanID:
|
||||||
self._stopped = True
|
self._stopped = True
|
||||||
if self._stopped:
|
if self._stopped:
|
||||||
return super().unstage()
|
return super().unstage()
|
||||||
self._falcon_finished()
|
self._falcon_finished()
|
||||||
@ -257,7 +257,7 @@ class FalconCsaxs(Device):
|
|||||||
"""Function with 10s timeout"""
|
"""Function with 10s timeout"""
|
||||||
timer = 0
|
timer = 0
|
||||||
while True:
|
while True:
|
||||||
det_ctrl = self.state.read()[self.state.name]['value']
|
det_ctrl = self.state.read()[self.state.name]["value"]
|
||||||
writer_ctrl = self.hdf5.capture.get()
|
writer_ctrl = self.hdf5.capture.get()
|
||||||
received_frames = self.dxp.current_pixel.get()
|
received_frames = self.dxp.current_pixel.get()
|
||||||
total_frames = int(self.scaninfo.num_points * self.scaninfo.frames_per_trigger)
|
total_frames = int(self.scaninfo.num_points * self.scaninfo.frames_per_trigger)
|
||||||
|
@ -97,8 +97,7 @@ class SIS38XX(Device):
|
|||||||
|
|
||||||
|
|
||||||
class McsCsaxs(SIS38XX):
|
class McsCsaxs(SIS38XX):
|
||||||
USER_ACCESS = [
|
USER_ACCESS = ["_init_mcs"]
|
||||||
"_init_mcs"]
|
|
||||||
SUB_PROGRESS = "progress"
|
SUB_PROGRESS = "progress"
|
||||||
SUB_VALUE = "value"
|
SUB_VALUE = "value"
|
||||||
_default_sub = SUB_VALUE
|
_default_sub = SUB_VALUE
|
||||||
@ -231,7 +230,7 @@ class McsCsaxs(SIS38XX):
|
|||||||
max_value = self.scaninfo.num_points
|
max_value = self.scaninfo.num_points
|
||||||
self._run_subs(
|
self._run_subs(
|
||||||
sub_type=self.SUB_PROGRESS,
|
sub_type=self.SUB_PROGRESS,
|
||||||
value=self.counter * int(self.scaninfo.num_points / num_lines) + value ,
|
value=self.counter * int(self.scaninfo.num_points / num_lines) + value,
|
||||||
max_value=max_value,
|
max_value=max_value,
|
||||||
done=bool(max_value == self.counter),
|
done=bool(max_value == self.counter),
|
||||||
)
|
)
|
||||||
@ -240,14 +239,14 @@ class McsCsaxs(SIS38XX):
|
|||||||
def _on_mca_data(self, *args, obj=None, **kwargs) -> None:
|
def _on_mca_data(self, *args, obj=None, **kwargs) -> None:
|
||||||
if not isinstance(kwargs["value"], (list, np.ndarray)):
|
if not isinstance(kwargs["value"], (list, np.ndarray)):
|
||||||
return
|
return
|
||||||
#self.mca_data[obj.attr_name] = kwargs["value"][1:]
|
# self.mca_data[obj.attr_name] = kwargs["value"][1:]
|
||||||
self.mca_data[obj.attr_name] = kwargs["value"]
|
self.mca_data[obj.attr_name] = kwargs["value"]
|
||||||
if len(self.mca_names) != len(self.mca_data):
|
if len(self.mca_names) != len(self.mca_data):
|
||||||
return
|
return
|
||||||
#logger.info("Entered _on_mca_data")
|
# logger.info("Entered _on_mca_data")
|
||||||
# self._updated = True
|
# self._updated = True
|
||||||
# self.counter += 1
|
# self.counter += 1
|
||||||
#logger.info(f'data from mca {self.mca_data["mca1"]} and {self.mca_data["mca4"]}')
|
# logger.info(f'data from mca {self.mca_data["mca1"]} and {self.mca_data["mca4"]}')
|
||||||
# if (self.scaninfo.scan_type == "fly" and self.counter == self.num_lines.get()) or (
|
# if (self.scaninfo.scan_type == "fly" and self.counter == self.num_lines.get()) or (
|
||||||
# self.scaninfo.scan_type == "step" and self.counter == self.scaninfo.num_points
|
# self.scaninfo.scan_type == "step" and self.counter == self.scaninfo.num_points
|
||||||
# ):
|
# ):
|
||||||
@ -298,7 +297,7 @@ class McsCsaxs(SIS38XX):
|
|||||||
if self.scaninfo.scan_type == "step":
|
if self.scaninfo.scan_type == "step":
|
||||||
self.n_points = int(self.scaninfo.frames_per_trigger)
|
self.n_points = int(self.scaninfo.frames_per_trigger)
|
||||||
elif self.scaninfo.scan_type == "fly":
|
elif self.scaninfo.scan_type == "fly":
|
||||||
self.n_points = int(self.scaninfo.num_points)# / int(self.num_lines.get()))
|
self.n_points = int(self.scaninfo.num_points) # / int(self.num_lines.get()))
|
||||||
else:
|
else:
|
||||||
raise McsError(f"Scantype {self.scaninfo} not implemented for MCS card")
|
raise McsError(f"Scantype {self.scaninfo} not implemented for MCS card")
|
||||||
if self.n_points > 10000:
|
if self.n_points > 10000:
|
||||||
@ -357,7 +356,7 @@ class McsCsaxs(SIS38XX):
|
|||||||
self.scaninfo.load_scan_metadata()
|
self.scaninfo.load_scan_metadata()
|
||||||
logger.info(f"Old scanID: {old_scanID}, ")
|
logger.info(f"Old scanID: {old_scanID}, ")
|
||||||
if self.scaninfo.scanID != old_scanID:
|
if self.scaninfo.scanID != old_scanID:
|
||||||
self._stopped = True
|
self._stopped = True
|
||||||
if self._stopped is True:
|
if self._stopped is True:
|
||||||
logger.info("Entered unstage _stopped =True")
|
logger.info("Entered unstage _stopped =True")
|
||||||
return super().unstage()
|
return super().unstage()
|
||||||
|
@ -163,7 +163,7 @@ class PilatusCsaxs(DetectorBase):
|
|||||||
|
|
||||||
self.filewriter = FileWriterMixin(self.service_cfg)
|
self.filewriter = FileWriterMixin(self.service_cfg)
|
||||||
self.readout = 1e-3 # 3 ms
|
self.readout = 1e-3 # 3 ms
|
||||||
|
|
||||||
# TODO maybe needed
|
# TODO maybe needed
|
||||||
# self._close_file_writer()
|
# self._close_file_writer()
|
||||||
|
|
||||||
@ -210,16 +210,16 @@ class PilatusCsaxs(DetectorBase):
|
|||||||
a zmq service is running on xbl-daq-34 that is waiting
|
a zmq service is running on xbl-daq-34 that is waiting
|
||||||
for a zmq message to start the writer for the pilatus_2 x12sa-pd-2
|
for a zmq message to start the writer for the pilatus_2 x12sa-pd-2
|
||||||
"""
|
"""
|
||||||
#TODO worked reliable with time.sleep(2)
|
# TODO worked reliable with time.sleep(2)
|
||||||
# self._close_file_writer()
|
# self._close_file_writer()
|
||||||
# time.sleep(2)
|
# time.sleep(2)
|
||||||
# self._stop_file_writer()
|
# self._stop_file_writer()
|
||||||
# time.sleep(2)
|
# time.sleep(2)
|
||||||
self._close_file_writer()
|
self._close_file_writer()
|
||||||
time.sleep(.1)
|
time.sleep(0.1)
|
||||||
self._stop_file_writer()
|
self._stop_file_writer()
|
||||||
time.sleep(.1)
|
time.sleep(0.1)
|
||||||
|
|
||||||
self.filepath_h5 = self.filewriter.compile_full_filename(
|
self.filepath_h5 = self.filewriter.compile_full_filename(
|
||||||
self.scaninfo.scan_number, "pilatus_2.h5", 1000, 5, True
|
self.scaninfo.scan_number, "pilatus_2.h5", 1000, 5, True
|
||||||
)
|
)
|
||||||
@ -369,7 +369,7 @@ class PilatusCsaxs(DetectorBase):
|
|||||||
self.scaninfo.load_scan_metadata()
|
self.scaninfo.load_scan_metadata()
|
||||||
logger.info(f"Old scanID: {old_scanID}, ")
|
logger.info(f"Old scanID: {old_scanID}, ")
|
||||||
if self.scaninfo.scanID != old_scanID:
|
if self.scaninfo.scanID != old_scanID:
|
||||||
self._stopped = True
|
self._stopped = True
|
||||||
if self._stopped:
|
if self._stopped:
|
||||||
return super().unstage()
|
return super().unstage()
|
||||||
self._pilatus_finished()
|
self._pilatus_finished()
|
||||||
@ -398,7 +398,7 @@ class PilatusCsaxs(DetectorBase):
|
|||||||
# while True:
|
# while True:
|
||||||
# # rtr = self.cam.status_message_camserver.get()
|
# # rtr = self.cam.status_message_camserver.get()
|
||||||
# #if self.cam.acquire.get() == 0 and rtr == "Camserver returned OK":
|
# #if self.cam.acquire.get() == 0 and rtr == "Camserver returned OK":
|
||||||
# # if rtr == "Camserver returned OK":
|
# # if rtr == "Camserver returned OK":
|
||||||
# # break
|
# # break
|
||||||
# if self._stopped == True:
|
# if self._stopped == True:
|
||||||
# break
|
# break
|
||||||
@ -411,7 +411,7 @@ class PilatusCsaxs(DetectorBase):
|
|||||||
# # raise PilatusTimeoutError(
|
# # raise PilatusTimeoutError(
|
||||||
# # f"Pilatus timeout with detector state {self.cam.acquire.get()} and camserver return status: {rtr} "
|
# # f"Pilatus timeout with detector state {self.cam.acquire.get()} and camserver return status: {rtr} "
|
||||||
# # )
|
# # )
|
||||||
|
|
||||||
self._stop_file_writer()
|
self._stop_file_writer()
|
||||||
time.sleep(2)
|
time.sleep(2)
|
||||||
self._close_file_writer()
|
self._close_file_writer()
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
from ophyd import Component as Cpt, EpicsSignal, EpicsSignalRO, Device
|
from ophyd import Component as Cpt, EpicsSignal, EpicsSignalRO, Device
|
||||||
|
|
||||||
|
|
||||||
class SequencerX12SA(Device):
|
class SequencerX12SA(Device):
|
||||||
"""Sequencer for flyscans with epics motor controller and owis stages
|
"""Sequencer for flyscans with epics motor controller and owis stages"""
|
||||||
"""
|
|
||||||
|
|
||||||
desired_output_link_1 = Cpt(Signal, "DOL1")
|
desired_output_link_1 = Cpt(Signal, "DOL1")
|
||||||
desired_output_value_1 = Cpt(EpicsSignal, "DO1")
|
desired_output_value_1 = Cpt(EpicsSignal, "DO1")
|
||||||
@ -20,7 +20,6 @@ class SequencerX12SA(Device):
|
|||||||
status = Cpt(EpicsSignalRO, "STAT", string=True)
|
status = Cpt(EpicsSignalRO, "STAT", string=True)
|
||||||
processing_active = Cpt(EpicsSignalRO, "PACT")
|
processing_active = Cpt(EpicsSignalRO, "PACT")
|
||||||
|
|
||||||
|
|
||||||
# def __init__(
|
# def __init__(
|
||||||
# self,
|
# self,
|
||||||
# prefix="",
|
# prefix="",
|
||||||
@ -32,26 +31,26 @@ class SequencerX12SA(Device):
|
|||||||
# parent=None,
|
# parent=None,
|
||||||
# **kwargs
|
# **kwargs
|
||||||
# ):
|
# ):
|
||||||
# # get configuration attributes from kwargs and then remove them
|
# # get configuration attributes from kwargs and then remove them
|
||||||
# attrs = {}
|
# attrs = {}
|
||||||
# for key, value in kwargs.items():
|
# for key, value in kwargs.items():
|
||||||
# if hasattr(EpicsMotorEx, key) and isinstance(getattr(EpicsMotorEx, key), Cpt):
|
# if hasattr(EpicsMotorEx, key) and isinstance(getattr(EpicsMotorEx, key), Cpt):
|
||||||
# attrs[key] = value
|
# attrs[key] = value
|
||||||
# for key in attrs:
|
# for key in attrs:
|
||||||
# kwargs.pop(key)
|
# kwargs.pop(key)
|
||||||
|
|
||||||
# super().__init__(
|
# super().__init__(
|
||||||
# prefix,
|
# prefix,
|
||||||
# name=name,
|
# name=name,
|
||||||
# kind=kind,
|
# kind=kind,
|
||||||
# read_attrs=read_attrs,
|
# read_attrs=read_attrs,
|
||||||
# configuration_attrs=configuration_attrs,
|
# configuration_attrs=configuration_attrs,
|
||||||
# parent=parent,
|
# parent=parent,
|
||||||
# **kwargs
|
# **kwargs
|
||||||
# )
|
# )
|
||||||
|
|
||||||
# # set configuration attributes
|
# # set configuration attributes
|
||||||
# for key, value in attrs.items():
|
# for key, value in attrs.items():
|
||||||
# # print out attributes that are being configured
|
# # print out attributes that are being configured
|
||||||
# print("setting ", key, "=", value)
|
# print("setting ", key, "=", value)
|
||||||
# getattr(self, key).put(value)
|
# getattr(self, key).put(value)
|
||||||
|
@ -212,7 +212,7 @@ class EnergyKev(VirtualEpicsSignalRO):
|
|||||||
)
|
)
|
||||||
|
|
||||||
offs = np.interp(energy_keV, self._th2_offsets[:, 0], self._th2_offsets[:, 1])
|
offs = np.interp(energy_keV, self._th2_offsets[:, 0], self._th2_offsets[:, 1])
|
||||||
#print(offs)
|
# print(offs)
|
||||||
return offs
|
return offs
|
||||||
|
|
||||||
def calc(self, val):
|
def calc(self, val):
|
||||||
|
@ -315,10 +315,10 @@ class GalilController(Controller):
|
|||||||
self.socket_put_and_receive("XQ#SCANG")
|
self.socket_put_and_receive("XQ#SCANG")
|
||||||
# self._block_while_active(3)
|
# self._block_while_active(3)
|
||||||
# time.sleep(0.1)
|
# time.sleep(0.1)
|
||||||
threading.Thread(target=self._block_while_active, args=(3,status), daemon=True).start()
|
threading.Thread(target=self._block_while_active, args=(3, status), daemon=True).start()
|
||||||
# self._while_in_motion(3, n_samples)
|
# self._while_in_motion(3, n_samples)
|
||||||
|
|
||||||
def _block_while_active(self,thread_id:int, status) -> None:
|
def _block_while_active(self, thread_id: int, status) -> None:
|
||||||
while self.is_thread_active(thread_id):
|
while self.is_thread_active(thread_id):
|
||||||
time.sleep(1)
|
time.sleep(1)
|
||||||
time.sleep(1)
|
time.sleep(1)
|
||||||
@ -691,10 +691,10 @@ class SGalilMotor(Device, PositionerBase):
|
|||||||
|
|
||||||
def stop(self, *, success=False):
|
def stop(self, *, success=False):
|
||||||
self.controller.stop_all_axes()
|
self.controller.stop_all_axes()
|
||||||
#last_speed = self.controller.socket_put_and_receive("MG")
|
# last_speed = self.controller.socket_put_and_receive("MG")
|
||||||
rtr = self.controller.socket_put_and_receive(f'SPC={2*10000}')
|
rtr = self.controller.socket_put_and_receive(f"SPC={2*10000}")
|
||||||
logger.info(f"{rtr}")
|
logger.info(f"{rtr}")
|
||||||
#logger.info(f'Motor stopped, restored speed for samy from {last_speed}mm/s to 2mm/s')
|
# logger.info(f'Motor stopped, restored speed for samy from {last_speed}mm/s to 2mm/s')
|
||||||
return super().stop(success=success)
|
return super().stop(success=success)
|
||||||
|
|
||||||
def kickoff(self) -> DeviceStatus:
|
def kickoff(self) -> DeviceStatus:
|
||||||
@ -712,8 +712,6 @@ class SGalilMotor(Device, PositionerBase):
|
|||||||
)
|
)
|
||||||
return status
|
return status
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def configure(
|
def configure(
|
||||||
self,
|
self,
|
||||||
parameter: dict,
|
parameter: dict,
|
||||||
@ -722,7 +720,6 @@ class SGalilMotor(Device, PositionerBase):
|
|||||||
self._kickoff_params = parameter
|
self._kickoff_params = parameter
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
mock = False
|
mock = False
|
||||||
if not mock:
|
if not mock:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user