diff --git a/lcls_tools/common/controls/pyepics/utils.py b/lcls_tools/common/controls/pyepics/utils.py index 302efb2d..2ddb495f 100644 --- a/lcls_tools/common/controls/pyepics/utils.py +++ b/lcls_tools/common/controls/pyepics/utils.py @@ -15,8 +15,29 @@ def __init__(self, message): class PV(EPICS_PV): - def __init__(self, pvname): - super().__init__(pvname, connection_timeout=0.01) + def __init__( + self, + pvname, + connection_timeout=0.01, + callback=None, + form="time", + verbose=False, + auto_monitor=None, + count=None, + connection_callback=None, + access_callback=None, + ): + super().__init__( + pvname=pvname, + connection_timeout=connection_timeout, + callback=callback, + form=form, + verbose=verbose, + auto_monitor=auto_monitor, + count=count, + connection_callback=connection_callback, + access_callback=access_callback, + ) def __str__(self): return f"{self.pvname} PV Object" @@ -37,6 +58,7 @@ def caget(self, count=None, as_string=False, as_numpy=True, use_monitor=True): as_numpy=as_numpy, use_monitor=use_monitor, ) + if value is not None: break attempt += 1