diff --git a/python/slsdet/__init__.py b/python/slsdet/__init__.py index 517c0f48d..f6df36332 100755 --- a/python/slsdet/__init__.py +++ b/python/slsdet/__init__.py @@ -10,7 +10,7 @@ from .gotthard import Gotthard from .moench import Moench import _slsdet - +xy = _slsdet.xy defs = _slsdet.slsDetectorDefs from .enums import * diff --git a/python/slsdet/detector.py b/python/slsdet/detector.py index 77e502780..ed0c8a519 100755 --- a/python/slsdet/detector.py +++ b/python/slsdet/detector.py @@ -10,6 +10,7 @@ detectorType = slsDetectorDefs.detectorType from .utils import element_if_equal, all_equal, get_set_bits, list_to_bitmask from .utils import Geometry, to_geo, element, reduce_time, is_iterable +from _slsdet import xy from . import utils as ut from .proxy import JsonProxy, SlowAdcProxy, ClkDivProxy, MaxPhaseProxy, ClkFreqProxy from .registers import Register, Adc_register @@ -262,6 +263,13 @@ class Detector(CppDetectorApi): """ return to_geo(self.getDetectorSize()) + @detsize.setter + def detsize(self, size): + if isinstance(size, xy): + self.setDetectorSize(size) + else: + self.setDetectorSize(xy(*size)) + @property def settings(self): """ diff --git a/python/slsdet/utils.py b/python/slsdet/utils.py index 687063bda..24ba172e6 100755 --- a/python/slsdet/utils.py +++ b/python/slsdet/utils.py @@ -41,7 +41,7 @@ def to_geo(value): if isinstance(value, _slsdet.xy): return Geometry(x = value.x, y = value.y) else: - raise ValueError("Can only convert sls_detector.xy") + raise ValueError("Can only convert slsdet.xy") def all_equal(mylist): """If all elements are equal return true otherwise false"""