feat: use PV external in tune
Deploy / deploy (push) Successful in 11s

This commit is contained in:
Benjamin Labrecque
2026-07-17 12:09:29 +02:00
parent 54defe975e
commit 3a3fa23522
@@ -11,7 +11,7 @@ from OMFacility import Facility
from scipy.fft import fft
from sklearn.utils.extmath import randomized_svd
from agebd.pv import get_pv_class
from agebd.pv import get_pv_class, get_pv_external_class
from agebd.service.base import BaseService
from agebd.service.pvs import BasePVs
from agebd.utils import printgetversion
@@ -19,6 +19,7 @@ from agebd.utils import printgetversion
__version__ = printgetversion(__file__)
PV = get_pv_class()
PV_EXTERNAL = get_pv_external_class()
class PVs(BasePVs):
@@ -58,14 +59,14 @@ class PVs(BasePVs):
osc_y = PV("AGEBD-TUNE:OSCILLATION-Y-ALL") # vertical TbT to be transmissed
# usually it is advisable to trigger the mainloop of a service on changes of certain PVs:
BPMTriggerEvent = PV("ARS07-CECL-DBPM3-1:EEVR-EVENT0-ID")
BPMTriggerEvent = PV_EXTERNAL("ARS07-CECL-DBPM3-1:EEVR-EVENT0-ID")
CallbackPV_24 = PV("AGETI-CVME-MASTER-TMA:Evt-BO-Ext-EVRCount-I")
CallbackPV_25 = PV("AGETI-CVME-MASTER-TMA:Evt-BO-Ext-BPM-EVRCount-I")
CallbackPV_31 = PV("AGETI-CVME-MASTER-TMA:Evt-SR-Pinger-H-EVRCount-I")
CallbackPV_32 = PV("AGETI-CVME-MASTER-TMA:Evt-SR-Inj-EVRCount-I")
CallbackPV_34 = PV("AGETI-CVME-MASTER-TMA:Evt-SR-FKICK-EVRCount-I")
CallbackPV_40 = PV("AGETI-CVME-MASTER-TMA:Evt-SR-BPM-EVRCount-I")
CallbackPV_24 = PV_EXTERNAL("AGETI-CVME-MASTER-TMA:Evt-BO-Ext-EVRCount-I")
CallbackPV_25 = PV_EXTERNAL("AGETI-CVME-MASTER-TMA:Evt-BO-Ext-BPM-EVRCount-I")
CallbackPV_31 = PV_EXTERNAL("AGETI-CVME-MASTER-TMA:Evt-SR-Pinger-H-EVRCount-I")
CallbackPV_32 = PV_EXTERNAL("AGETI-CVME-MASTER-TMA:Evt-SR-Inj-EVRCount-I")
CallbackPV_34 = PV_EXTERNAL("AGETI-CVME-MASTER-TMA:Evt-SR-FKICK-EVRCount-I")
CallbackPV_40 = PV_EXTERNAL("AGETI-CVME-MASTER-TMA:Evt-SR-BPM-EVRCount-I")
def __init__(self, service_name: str, pv_factory=PV):
super().__init__(service_name, pv_factory)
@@ -87,12 +88,12 @@ class PVs(BasePVs):
BPMNamesA_y = [name + ":DAQ-BEAM-STG0-Y" for name in BPMNamesA]
BPMNamesA_I = [name + ":DAQ-BEAM-STG0-Q" for name in BPMNamesA]
self.BPMx = [PV(name) for name in BPMNames_x]
self.BPMy = [PV(name) for name in BPMNames_y]
self.BPMI = [PV(name) for name in BPMNames_I]
self.BPMxA = [PV(name) for name in BPMNamesA_x]
self.BPMyA = [PV(name) for name in BPMNamesA_y]
self.BPMIA = [PV(name) for name in BPMNamesA_I]
self.BPMx = [PV_EXTERNAL(name) for name in BPMNames_x]
self.BPMy = [PV_EXTERNAL(name) for name in BPMNames_y]
self.BPMI = [PV_EXTERNAL(name) for name in BPMNames_I]
self.BPMxA = [PV_EXTERNAL(name) for name in BPMNamesA_x]
self.BPMyA = [PV_EXTERNAL(name) for name in BPMNamesA_y]
self.BPMIA = [PV_EXTERNAL(name) for name in BPMNamesA_I]
self.CallbackPV = None