commented fake PID calc and raise Errors instead
This commit is contained in:
@@ -24,16 +24,16 @@ def get_beamline():
|
||||
return IP_TO_BEAMLINE.get(key)
|
||||
|
||||
|
||||
def get_fake_current_pulseid():
|
||||
# 2020-05-08 08:29:52.742737 : 11718049010
|
||||
# 2020-05-28 - checked compared to "real" pulse-id: 2380 pulses difference
|
||||
reference_date = datetime(2020, 5, 8, 8, 29, 52)
|
||||
now = datetime.utcnow()
|
||||
delta_t = now - reference_date
|
||||
delta_p = delta_t.total_seconds() * 100
|
||||
delta_p = int(delta_p)
|
||||
pid = delta_p + 11718049010 + 2361
|
||||
return pid
|
||||
#def get_fake_current_pulseid():
|
||||
# # 2020-05-08 08:29:52.742737 : 11718049010
|
||||
# # 2020-05-28 - checked compared to "real" pulse-id: 2380 pulses difference
|
||||
# reference_date = datetime(2020, 5, 8, 8, 29, 52)
|
||||
# now = datetime.utcnow()
|
||||
# delta_t = now - reference_date
|
||||
# delta_p = delta_t.total_seconds() * 100
|
||||
# delta_p = int(delta_p)
|
||||
# pid = delta_p + 11718049010 + 2361
|
||||
# return pid
|
||||
|
||||
|
||||
|
||||
@@ -45,14 +45,24 @@ class get_current_pulseid():
|
||||
The implementation only does/needs one connection check at the start
|
||||
"""
|
||||
|
||||
# def __init__(self):
|
||||
# self.get = get_fake_current_pulseid
|
||||
# beamline = get_beamline()
|
||||
# pulseid_pv = PULSEID_PVS.get(beamline)
|
||||
# if pulseid_pv:
|
||||
# pv = epics.PV(pulseid_pv)
|
||||
# if pv.wait_for_connection():
|
||||
# self.get = pv.get
|
||||
|
||||
def __init__(self):
|
||||
self.get = get_fake_current_pulseid
|
||||
beamline = get_beamline()
|
||||
pulseid_pv = PULSEID_PVS.get(beamline)
|
||||
if pulseid_pv:
|
||||
pv = epics.PV(pulseid_pv)
|
||||
if pv.wait_for_connection():
|
||||
self.get = pv.get
|
||||
if not pulseid_pv:
|
||||
raise ValueError(f"no Pulse ID PV known for beamline \"{beamline}\"")
|
||||
pv = epics.PV(pulseid_pv)
|
||||
if not pv.wait_for_connection():
|
||||
raise RuntimeError(f"could not connect to Pulse ID PV \"{pulseid_pv}\"")
|
||||
self.get = pv.get
|
||||
|
||||
def __call__(self):
|
||||
return int(self.get())
|
||||
|
||||
Reference in New Issue
Block a user