refactor: add _init function to all classes

This commit is contained in:
Christian Appel 2023-10-20 16:05:19 +02:00
parent 22e63c4976
commit 55d20a0ed0
3 changed files with 17 additions and 16 deletions

View File

@ -42,7 +42,7 @@ class SlsDetectorCam(Device):
bit_depth = ADCpt(EpicsSignalWithRBV, "BitDepth")
num_cycles = ADCpt(EpicsSignalWithRBV, "NumCycles")
num_frames = ADCpt(EpicsSignalWithRBV, "NumFrames")
timing_mode = ADCpt(EpicsSignalWithRBV, "TimingMode")
trigger_mode = ADCpt(EpicsSignalWithRBV, "TimingMode")
trigger_software = ADCpt(EpicsSignal, "TriggerSoftware")
acquire = ADCpt(EpicsSignal, "Acquire")
detector_state = ADCpt(EpicsSignalRO, "DetectorState_RBV")
@ -151,16 +151,16 @@ class Eiger9mCsaxs(DetectorBase):
self.scaninfo = BecScaninfoMixin(device_manager, sim_mode)
self.scaninfo.load_scan_metadata()
self.filewriter = FileWriterMixin(self.service_cfg)
self._init()
self.reduce_readout = 1e-3 # 3 ms
self.triggermode = 0 # 0 : internal, scan must set this if hardware triggered
#TODO function for abstract class?
def _init(self) -> None:
"""Initialize detector, filewriter and set default parameters
"""
self.reduce_readout = 1e-3
self._init_eiger9m()
self._init_standard_daq()
# self.mokev = self.device_manager.devices.mokev.read()[
# self.device_manager.devices.mokev.name
# ]["value"]
def _init_eiger9m(self) -> None:
"""Init parameters for Eiger 9m"""
self._set_trigger(TriggerSource.GATING)
@ -238,7 +238,7 @@ class Eiger9mCsaxs(DetectorBase):
BURST_TRIGGER = 3
"""
value = int(trigger_source)
self.cam.timing_mode.put(value)
self.cam.trigger_mode.put(value)
def _prep_file_writer(self) -> None:
self.filepath = self.filewriter.compile_full_filename(

View File

@ -177,12 +177,12 @@ class FalconCsaxs(Device):
self.scaninfo = BecScaninfoMixin(device_manager, sim_mode)
self.scaninfo.load_scan_metadata()
self.filewriter = FileWriterMixin(self.service_cfg)
self._init_detector()
self._init()
def _init_detector(self) -> None:
"""Set up detector parameters, init detector, init filewriter
def _init(self) -> None:
"""Initialize detector, filewriter and set default parameters
"""
self.readout = 0.003 # 3 ms
self.readout = 1e-3
self._value_pixel_per_buffer = 20 # 16
self._clean_up()
self._init_hdf5_saving()

View File

@ -142,11 +142,12 @@ class PilatusCsaxs(DetectorBase):
self.scaninfo = BecScaninfoMixin(device_manager, sim_mode)
self.scaninfo.load_scan_metadata()
self.filewriter = FileWriterMixin(self.service_cfg)
self.readout = 1e-3 # 3 ms
self._init()
# TODO maybe needed
# self._close_file_writer()
def _init(self) -> None:
"""Initialize detector, filewriter and set default parameters
"""
self.reduce_readout = 1e-3
def _get_current_scan_msg(self) -> BECMessage.ScanStatusMessage:
msg = self.device_manager.producer.get(MessageEndpoints.scan_status())