mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2026-01-01 09:01:19 +01:00
Some checks failed
Native CMake Build / Configure and build using cmake (push) Failing after 3s
* Python module is now built using scikit-build-core: Dev/scikitbuild #1164 * slsdet is available on PyPI from this release onwards * Fixed broken import in typecaster.h #1181 * Dev/automate version number #1193 * Dev/automate version part2 #1209 * 9111: added expat to host section to fix conda #1216 * fix for gotthard.py to import slsdet properly * added slsFramesynchronizer to conda copy_lib.sh * version of release * update version of client * removed cmake <=3.28 that was added in 9.1.11 (main_library in meta.yaml in conda-recipes) * added slsFrameSynchronizer binary to conda * added numpy dependency to toml * added documentation for pip in installation Detailed Commits: * skeleton pyproject.toml * moved compiled extension into slsdet * WIP * WI{ * separated the recipes * restored comments, cleanup * cleaned meta yaml * added back some python versions * conda build of main library * fixed typo * removed conda build pin * added zlib * added workflow for python lib * patching libzmq and cleaned up cmake * removed compiler version * switched patch tool * reverted to scikit-build in pyproject.toml * added sls_detector bin * added sync, renamed action * update cmake<=3.28 in conda build requirements * Fixed broken import in typecaster.h (#1181) - Fixed the broken import _slsdet --> slsdet._slsdet caused by a previous upgrade - added tests that exercises the conversion from python to C++ and from C++ to python - Python unit tests now run in CI (!) * removed 3.28 restriction on cmake in meta.yaml * from #1216 to 9.1.1.rc that got lost in merge from develoepr, added expat to host section to fix conda build * back with the cmake restriction * fixing gotthard1 import * version number automated for python build * mistakenly set version back to 0.0.0 * updated github workflow scripts to support automatic version numbering with environment variable * managed to load VERSION file in yaml file - simplifies things * saving changes in git workflow failed * got typo in github workflow * updatet regex pattern to support postfix * normalized version to PEP 440 specification in update_version.py * bug did not support version 0.0.0 * added regex pattern matching to version in toml file * version now supports . before postfix * updates api version based on version file & converted shell script files to python * updated all makefiles * adresses review comments * updated release version and the api lib version * raise an exception if the pull socket python script had errors at startup (for eg if pyzmq was not installed) * cmake<=3.28 not required anymore * updated documentation for pip installation as well * 920/add numpy (#1226) * added numpy dependency * aded build specifications for python version and platform * release notes --------- Co-authored-by: froejdh_e <erik.frojdh@psi.ch> Co-authored-by: Fröjd Lars Erik <froejdh_e@pcmoench03.psi.ch> Co-authored-by: Erik Fröjdh <erik.frojdh@gmail.com> Co-authored-by: mazzol_a <mazzol_a@pc17378.psi.ch> Co-authored-by: AliceMazzoleni99 <alice.mazzoleni@psi.ch>
63 lines
2.1 KiB
Python
63 lines
2.1 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 Jungfrau detector
|
|
"""
|
|
|
|
|
|
from .detector import Detector, freeze
|
|
|
|
# from .adcs import Adc, DetectorAdcs
|
|
from .dacs import DetectorDacs
|
|
from . import _slsdet
|
|
dacIndex = _slsdet.slsDetectorDefs.dacIndex
|
|
from .detector_property import DetectorProperty
|
|
|
|
|
|
# @freeze
|
|
class Gotthard2Dacs(DetectorDacs):
|
|
"""
|
|
Gotthard2 specific DACs
|
|
"""
|
|
_dacs = [('vref_h_adc', dacIndex.VREF_H_ADC, 0, 4000, 2116),
|
|
('vb_comp_fe', dacIndex.VB_COMP_FE, 0, 4000, 0),
|
|
('vb_comp_adc', dacIndex.VB_COMP_ADC, 0, 4000, 0),
|
|
('vcom_cds', dacIndex.VCOM_CDS, 0, 4000, 705),
|
|
('vref_rstore', dacIndex.VREF_RSTORE, 0, 4000, 205),
|
|
('vb_opa_1st', dacIndex.VB_OPA_1ST, 0, 4000, 0),
|
|
('vref_comp_fe', dacIndex.VREF_COMP_FE, 0, 4000, 0),
|
|
('vcom_adc1', dacIndex.VCOM_ADC1, 0, 4000, 705),
|
|
('vref_prech', dacIndex.VREF_PRECH, 0, 4000, 900),
|
|
('vref_l_adc', dacIndex.VREF_L_ADC, 0, 4000, 700),
|
|
('vref_cds', dacIndex.VREF_CDS, 0, 4000, 600),
|
|
('vb_cs', dacIndex.VB_CS, 0, 4000, 2799),
|
|
('vb_opa_fd', dacIndex.VB_OPA_FD, 0, 4000, 0),
|
|
('vcom_adc2', dacIndex.VCOM_ADC2, 0, 4000, 704),
|
|
]
|
|
_dacnames = [_d[0] for _d in _dacs]
|
|
|
|
|
|
|
|
|
|
@freeze
|
|
class Gotthard2(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 = Gotthard2Dacs(self)
|
|
|
|
@property
|
|
def dacs(self):
|
|
return self._dacs |