mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-12 12:57:13 +02:00
fixing python version. allowing versions to execute even if no detector connected or in shared memory (#990)
This commit is contained in:
@ -1989,23 +1989,59 @@ class Detector(CppDetectorApi):
|
||||
|
||||
@property
|
||||
def versions(self):
|
||||
version_list = {'type': self.type,
|
||||
'package': self.packageversion,
|
||||
'client': self.clientversion}
|
||||
|
||||
if self.type == detectorType.EIGER:
|
||||
version_list ['firmware (Beb)'] = self.firmwareversion
|
||||
version_list ['firmware(Febl)'] = self.getFrontEndFirmwareVersion(slsDetectorDefs.fpgaPosition.FRONT_LEFT)
|
||||
version_list ['firmware (Febr)'] = self.getFrontEndFirmwareVersion(slsDetectorDefs.fpgaPosition.FRONT_RIGHT)
|
||||
type = "Unknown"
|
||||
firmware = "Unknown"
|
||||
detectorserver = "Unknown"
|
||||
kernel = "Unknown"
|
||||
hardware = "Unknown"
|
||||
receiverversion = "Unknown"
|
||||
eiger = False
|
||||
firmware_febl = "Unknown"
|
||||
firmware_febr = "Unknown"
|
||||
firmware_beb = "Unknown"
|
||||
receiver_in_shm = False
|
||||
|
||||
release = self.packageversion
|
||||
client = self.clientversion
|
||||
|
||||
if self.nmod != 0:
|
||||
# shared memory has detectors
|
||||
type = self.type
|
||||
eiger = (self.type == detectorType.EIGER)
|
||||
receiver_in_shm = self.use_receiver
|
||||
if receiver_in_shm:
|
||||
# cannot connect to receiver
|
||||
try:
|
||||
receiverversion = self.rx_version
|
||||
except Exception as e:
|
||||
pass
|
||||
# cannot connect to Detector
|
||||
try:
|
||||
firmware = self.firmwareversion
|
||||
detectorserver = self.detectorserverversion
|
||||
kernel = self.kernelversion
|
||||
hardware = self.hardwareversion
|
||||
if eiger:
|
||||
firmware_beb = self.firmwareversion
|
||||
firmware_febl = self.getFrontEndFirmwareVersion(slsDetectorDefs.fpgaPosition.FRONT_LEFT)
|
||||
firmware_febr = self.getFrontEndFirmwareVersion(slsDetectorDefs.fpgaPosition.FRONT_RIGHT)
|
||||
except Exception as e:
|
||||
pass
|
||||
|
||||
version_list = {'type': {type},
|
||||
'package': {release},
|
||||
'client': {client}}
|
||||
if eiger:
|
||||
version_list ['firmware (Beb)'] = {firmware_beb}
|
||||
version_list ['firmware(Febl)'] = {firmware_febl}
|
||||
version_list ['firmware (Febr)'] = {firmware_febr}
|
||||
else:
|
||||
version_list ['firmware'] = self.firmwareversion
|
||||
|
||||
version_list ['detectorserver'] = self.detectorserverversion
|
||||
version_list ['kernel'] = self.kernelversion
|
||||
version_list ['hardware'] = self.hardwareversion
|
||||
|
||||
if self.use_receiver:
|
||||
version_list ['receiver'] = self.rx_version
|
||||
version_list ['firmware'] = {firmware}
|
||||
version_list ['detectorserver'] = {detectorserver}
|
||||
version_list ['kernel'] = kernel
|
||||
version_list ['hardware'] = hardware
|
||||
if receiver_in_shm:
|
||||
version_list ['receiver'] = {receiverversion}
|
||||
|
||||
return version_list
|
||||
|
||||
|
Reference in New Issue
Block a user