Closed mattclarke closed 3 years ago
BTW: I am using "field(value,timeStamp,alarm,control,display)")
I assume it something to do with only sending the data that has changed, but I thought I would mention it :)
PVXS handles monitors a little differently in that it passes through deltas from the network, as opposed to pvAccessCPP which always fills in unchanged fields using previously accumulated deltas.
Is there an easy way to work out what has changed?
A Value
has methods changed()
and changedSet()
. So you could do something like
top = Value(...)
if top.changed('value', 'alarm', 'timeStamp'):
... This is a data update
elif top.changed('display', 'control', 'valueAlarm'):
... meta-data update
Thanks, changedSet() is exactly what I needed :D
I am using p4p==4.0.0a1.
When I change the EGU value via pvput, the monitor response I get in p4p has the value field set to 0 even though it isn't. For example:
I assume it something to do with only sending the data that has changed, but I thought I would mention it :) Is there an easy way to work out what has changed?