mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-04-20 02:40:03 +02:00
54 lines
1.6 KiB
Python
54 lines
1.6 KiB
Python
# SPDX-License-Identifier: LGPL-3.0-or-other
|
|
# Copyright (C) 2021 Contributors to the SLS Detector Package
|
|
#!/usr/bin/env python3
|
|
# -*- coding: utf-8 -*-
|
|
"""
|
|
This file contains the specialization for the Moench detector
|
|
"""
|
|
|
|
|
|
from .detector import Detector, freeze
|
|
from .dacs import DetectorDacs
|
|
import _slsdet
|
|
dacIndex = _slsdet.slsDetectorDefs.dacIndex
|
|
from .detector_property import DetectorProperty
|
|
|
|
# @freeze
|
|
class MoenchDacs(DetectorDacs):
|
|
"""
|
|
Jungfrau specific DACs
|
|
"""
|
|
_dacs = [('vbp_colbuf', dacIndex.VBP_COLBUF, 0, 4000, 1300),
|
|
('vipre', dacIndex.VIPRE, 0, 4000, 1000),
|
|
('vin_cm,', dacIndex.VIN_CM, 0, 4000, 1400),
|
|
('vb_sda', dacIndex.VB_SDA, 0, 4000, 680),
|
|
('vcasc_sfp', dacIndex.VCASC_SFP, 0, 4000, 1428),
|
|
('vout_cm', dacIndex.VOUT_CM, 0, 4000, 1200),
|
|
('vipre_cds', dacIndex.VIPRE_CDS, 0, 4000, 800),
|
|
('ibias_sfp', dacIndex.IBIAS_SFP, 0, 4000, 900),
|
|
]
|
|
_dacnames = [_d[0] for _d in _dacs]
|
|
|
|
#vthreshold??
|
|
|
|
|
|
@freeze
|
|
class Moench(Detector):
|
|
"""
|
|
Subclassing Detector to set up correct dacs and detector specific
|
|
functions.
|
|
"""
|
|
_detector_dynamic_range = [16]
|
|
|
|
|
|
_settings = ['standard', 'highgain', 'lowgain', 'veryhighgain', 'verylowgain']
|
|
"""available settings for Eiger, note almost always standard"""
|
|
|
|
def __init__(self, id=0):
|
|
super().__init__(id)
|
|
self._frozen = False
|
|
self._dacs = MoenchDacs(self)
|
|
|
|
@property
|
|
def dacs(self):
|
|
return self._dacs |