This commit is contained in:
Erik Frojdh 2020-09-03 17:20:38 +02:00
parent 89f0479318
commit 47da2540af
2 changed files with 66 additions and 21 deletions

View File

@ -138,6 +138,17 @@ class Detector(CppDetectorApi):
else:
raise ValueError("hostname needs to be string or list of strings")
@property
@element
def stopport(self):
return self.getStopPort()
@stopport.setter
def stopport(self, args):
ut.set_using_dict(self.setStopPort, args)
@property
def firmwareversion(self):
return element_if_equal(self.getFirmwareVersion())
@ -381,12 +392,7 @@ class Detector(CppDetectorApi):
@txndelay_frame.setter
def txndelay_frame(self, args):
if isinstance(args, dict):
for key, value in args.items():
self.setTransmissionDelayFrame(value, [key])
else:
self.setTransmissionDelayFrame(args)
ut.set_using_dict(self.setTransmissionDelayFrame, args)
@property
@element
@ -395,12 +401,7 @@ class Detector(CppDetectorApi):
@txndelay_left.setter
def txndelay_left(self, args):
if isinstance(args, dict):
for key, value in args.items():
self.setTransmissionDelayLeft(value, [key])
else:
self.setTransmissionDelayLeft(args)
ut.set_using_dict(self.setTransmissionDelayLeft, args)
@property
@element
@ -409,11 +410,7 @@ class Detector(CppDetectorApi):
@txndelay_right.setter
def txndelay_right(self, args):
if isinstance(args, dict):
for key, value in args.items():
self.setTransmissionDelayRight(value, [key])
else:
self.setTransmissionDelayRight(args)
ut.set_using_dict(self.setTransmissionDelayRight, args)
@property
def use_receiver(self):
@ -1169,6 +1166,16 @@ class Detector(CppDetectorApi):
def speed(self, value):
self.setSpeed(value)
@property
def rx_jsonpara(self):
raise NotImplementedError('use d.getAdditionalJsonParameter(\'key\')')
@rx_jsonpara.setter
def rx_jsonpara(self, args):
for key, value in args.items():
self.setAdditionalJsonParameter(key, str(value))
@property
def frameindex(self):
return self.getRxCurrentFrameIndex()
@ -1220,9 +1227,20 @@ class Detector(CppDetectorApi):
return element_if_equal(self.getNumMissingPackets())
"""
Some Eiger stuff, does this have to be here or can we move it to subclass?
<<<Eiger>>>
"""
@property
@element
def quad(self):
return self.getQuad()
@quad.setter
def quad(self, value):
self.setQuad(value)
@property
def subexptime(self):
"""
@ -1491,9 +1509,19 @@ class Detector(CppDetectorApi):
self.selectUDPInterface(i)
"""
Gotthard2
<<<Gotthard2>>>
"""
@property
@element
def timingsource(self):
return self.getTimingSource()
@timingsource.setter
def timingsource(self, args):
ut.set_using_dict(self.setTimingSource, args)
@property
@element
def veto(self):
@ -1630,9 +1658,18 @@ class Detector(CppDetectorApi):
self.setCounterMask(list_to_bitmask(values))
"""
CTB stuff
<<<CTB>>>
"""
@property
@element
def samples(self):
return self.getNumberOfAnalogSamples()
@samples.setter
def samples(self, nsamples):
self.setNumberOfAnalogSamples(nsamples)
@property
def runclk(self):
"""[Ctb][Moench] Run clock in MHz."""

View File

@ -107,4 +107,12 @@ def make_string_path(path):
elif isinstance(path, str):
return os.path.expanduser(path)
else:
raise ValueError("Cannot convert argument to posix path")
raise ValueError("Cannot convert argument to posix path")
def set_using_dict(func, args):
if isinstance(args, dict):
for key, value in args.items():
func(value, [key])
else:
func(args)