EPICS ARCHIVER V4
|
A filter to combine successive matching samples into a 'repeat count'. More...
#include <RepeatFilter.h>
Public Member Functions | |
RepeatFilter (const EngineConfig &config, ProcessVariable &pv, ProcessVariableListener *listener) | |
Create new filter, using config for max. More... | |
virtual | ~RepeatFilter () |
void | stop () |
It's suggested to stop the filter when sampling stops, since this flushes accumulated repeats. | |
void | pvConnected (ProcessVariable &pv, const epicsTime &when) |
React to connection, then pass on to listener. More... | |
void | pvDisconnected (ProcessVariable &pv, const epicsTime &when) |
React to disconnect, then pass on to listener. More... | |
void | pvValue (ProcessVariable &pv, const RawValue::Data *data) |
React to new value and filter it. More... | |
void | update (const epicsTime &now) |
SampleMechanismMonitoredGet uses this to trigger repeat counts in case the ProcessVariableListener does not receive anything because the PV simply doesn't change. | |
![]() | |
ProcessVariableFilter (ProcessVariableListener *listener) | |
Create a PV filter which passes filtered events on to the provided listener. | |
![]() | |
virtual | ~ProcessVariableStateListener () |
Constructor. | |
A filter to combine successive matching samples into a 'repeat count'.
Used in two ways: Simply driven by a periodic 'get' on the PV, which results in a periodic pvValue() event. Or driven by a subscription to the PV, which results in unpredictable pvValue() events. So in addition, update() is called periodically, allowing the filter to add repeat counts in the absence of PV events.
RepeatFilter::RepeatFilter | ( | const EngineConfig & | config, |
ProcessVariable & | pv, | ||
ProcessVariableListener * | listener | ||
) |
Create new filter, using config for max.
repeat count.
|
virtual |
|
virtual |
React to connection, then pass on to listener.
Reimplemented from ProcessVariableFilter.
|
virtual |
React to disconnect, then pass on to listener.
Reimplemented from ProcessVariableFilter.
|
virtual |
React to new value and filter it.
Might invoke listener with the value, another value, or not at all.
Reimplemented from ProcessVariableFilter.