version prints hex

This commit is contained in:
Erik Frojdh 2020-09-23 14:08:41 +02:00
parent 11754fbb5e
commit 330df3463a
2 changed files with 21 additions and 9 deletions

View File

@ -22,6 +22,10 @@ import socket
import numpy as np import numpy as np
def freeze(cls): def freeze(cls):
"""
Decorator to prevent assignments to not existing properties.
Protects for example form typos when setting exptime etc.
"""
cls._frozen = False cls._frozen = False
def frozensetattr(self, key, value): def frozensetattr(self, key, value):
@ -67,6 +71,7 @@ class Detector(CppDetectorApi):
# CONFIGURATION # CONFIGURATION
def __len__(self): def __len__(self):
"""Number of modules in shared memory."""
return self.size() return self.size()
@property @property
@ -107,7 +112,8 @@ class Detector(CppDetectorApi):
@property @property
def parameters(self): def parameters(self):
"""Sets detector measurement parameters to those contained in fname. Set up per measurement. """Sets detector measurement parameters to those contained in fname.
Set up per measurement.
Note Note
----- -----
@ -186,6 +192,7 @@ class Detector(CppDetectorApi):
@property @property
@element
def firmwareversion(self): def firmwareversion(self):
""" """
Fimware version of detector in format [0xYYMMDD] or an increasing 2 digit number for Eiger. Fimware version of detector in format [0xYYMMDD] or an increasing 2 digit number for Eiger.
@ -194,34 +201,36 @@ class Detector(CppDetectorApi):
>>> hex(d.firmwareversion) >>> hex(d.firmwareversion)
'0x200910' '0x200910'
""" """
return element_if_equal(self.getFirmwareVersion()) return ut.lhex(self.getFirmwareVersion())
@property @property
@element
def detectorserverversion(self): def detectorserverversion(self):
""" """
On-board detector server software version in format [0xYYMMDD] On-board detector server software version in format [0xYYMMDD]
Example Example
------- -------
>>> hex(d.detectorserverversion) >>> d.detectorserverversion
'0x200910' '0x200910'
""" """
# TODO! handle hex print return ut.lhex(self.getDetectorServerVersion())
return element_if_equal(self.getDetectorServerVersion())
@property @property
@element
def clientversion(self): def clientversion(self):
"""Client software version in format [YYMMDD] """Client software version in format [YYMMDD]
Example Example
------- -------
>>> hex(d.clientversion) >>> d.clientversion
'0x200810' '0x200810'
""" """
return self.getClientVersion() return ut.lhex(self.getClientVersion())
@property @property
@element
def rx_version(self): def rx_version(self):
"""Receiver version in format [0xYYMMDD].""" """Receiver version in format [0xYYMMDD]."""
return element_if_equal(self.getReceiverVersion()) return ut.lhex(self.getReceiverVersion())
@property @property
@element @element

View File

@ -127,3 +127,6 @@ def set_time_using_dict(func, args):
if isinstance(args, int): if isinstance(args, int):
args = float(args) args = float(args)
func(args) func(args)
def lhex(iterable):
return [hex(item) for item in iterable]