added clearing functionality
This commit is contained in:
@ -23,6 +23,12 @@ record(bi, "$(SYSTEM):REMOVE") {
|
|||||||
field(ONAM, "proc")
|
field(ONAM, "proc")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
record(bi, "$(SYSTEM):CLEAR") {
|
||||||
|
field(DESC, "Remove all currently defined PVs")
|
||||||
|
field(ZNAM, "idle")
|
||||||
|
field(ONAM, "proc")
|
||||||
|
}
|
||||||
|
|
||||||
record(waveform, "$(SYSTEM):LIST") {
|
record(waveform, "$(SYSTEM):LIST") {
|
||||||
field(DESC, "List of currently defined PVs")
|
field(DESC, "List of currently defined PVs")
|
||||||
field(FTVL, "CHAR")
|
field(FTVL, "CHAR")
|
||||||
|
@ -46,12 +46,25 @@ def cb_remove(value=None, **kwargs):
|
|||||||
pv_list.put(mk_printable_data(data))
|
pv_list.put(mk_printable_data(data))
|
||||||
|
|
||||||
|
|
||||||
|
@toggle
|
||||||
|
def cb_clear(value=None, **kwargs):
|
||||||
|
log.info(f"clear: {kwargs}")
|
||||||
|
data = {}
|
||||||
|
save_data(data, FN_ENTRIES)
|
||||||
|
mk_db(data, FN_DB_TMPL)
|
||||||
|
log.info(f"data: {data}")
|
||||||
|
pv_list.put(mk_printable_data(data))
|
||||||
|
|
||||||
|
|
||||||
pv_add = PV("SATES20-DYNA:ADD")
|
pv_add = PV("SATES20-DYNA:ADD")
|
||||||
pv_add.add_callback(cb_add)
|
pv_add.add_callback(cb_add)
|
||||||
|
|
||||||
pv_remove = PV("SATES20-DYNA:REMOVE")
|
pv_remove = PV("SATES20-DYNA:REMOVE")
|
||||||
pv_remove.add_callback(cb_remove)
|
pv_remove.add_callback(cb_remove)
|
||||||
|
|
||||||
|
pv_clear = PV("SATES20-DYNA:CLEAR")
|
||||||
|
pv_clear.add_callback(cb_clear)
|
||||||
|
|
||||||
|
|
||||||
def mk_printable_data(data):
|
def mk_printable_data(data):
|
||||||
return "\n".join(f"{k} ({v})" for k, v in sorted(data.items()))
|
return "\n".join(f"{k} ({v})" for k, v in sorted(data.items()))
|
||||||
|
Reference in New Issue
Block a user