added PV delete functionality

This commit is contained in:
2024-11-09 20:34:36 +01:00
parent 2bff7b5834
commit b2699466d9
3 changed files with 19 additions and 0 deletions

View File

@ -8,3 +8,9 @@ record(stringin, "$(SYSTEM):NEW") {
field(SCAN, "Passive")
}
record(stringin, "$(SYSTEM):DEL") {
field(DESC, "Delete")
field(VAL, "")
field(SCAN, "Passive")
}

View File

@ -4,6 +4,7 @@ def load_data(fn):
with open(fn) as f:
data = f.read().split("\n")
data = set(data)
data.discard("") #TODO
except FileNotFoundError:
data = set()
return data

View File

@ -18,9 +18,21 @@ def cb_new(value=None, **kwargs):
mk_db(data, FN_DB_TMPL)
log.info(f"data: {sorted(data)}")
def cb_del(value=None, **kwargs):
log.info(f"del: value={repr(value)} {kwargs}")
if not value:
return
data = load_data(FN_ENTRIES)
data.discard(value)
save_data(data, FN_ENTRIES)
mk_db(data, FN_DB_TMPL)
log.info(f"data: {sorted(data)}")
pv_new = PV("SATES21-DYNA:NEW")
pv_new.add_callback(cb_new)
pv_del = PV("SATES21-DYNA:DEL")
pv_del.add_callback(cb_del)