EPICS ARCHIVER V4
|
A filter to block samples while disabled. More...
#include <DisableFilter.h>
Public Member Functions | |
DisableFilter (ProcessVariableListener *listener) | |
Construct a DisableFilter. More... | |
OrderedMutex & | getMutex () |
Allow concurrent access from ProcessVariableListener and enable/disable. More... | |
void | disable (Guard &guard) |
Temporarily disable sampling. More... | |
void | enable (Guard &guard, ProcessVariable &pv, const epicsTime &when) |
Re-enable sampling. More... | |
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... | |
![]() | |
ProcessVariableFilter (ProcessVariableListener *listener) | |
Create a PV filter which passes filtered events on to the provided listener. | |
![]() | |
virtual | ~ProcessVariableStateListener () |
Constructor. | |
A filter to block samples while disabled.
Meant to be installed right after the ProcessVariable:
When the SampleMechanism is disabled, it instructs the DisableFilter to block all further samples. Actually, it keeps a copy of the most recent sample, so we start out with that last good sample when 'enabled' again, without having to wait for another new sample.
DisableFilter::DisableFilter | ( | ProcessVariableListener * | listener | ) |
Construct a DisableFilter.
void DisableFilter::enable | ( | Guard & | guard, |
ProcessVariable & | pv, | ||
const epicsTime & | when | ||
) |
Re-enable sampling.
|
virtual |
Allow concurrent access from ProcessVariableListener and enable/disable.
Implements Guardable.
|
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.