EPICS ARCHIVER V4
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups
SampleMechanismGetEA3.h
1 #ifndef SAMPLEMECHANISMGET_EA3_H_
2 #define SAMPLEMECHANISMGET_EA3_H_
3 
4 // engine
5 #include "engine/SampleMechanismEA3.h"
6 #include "engine/ScanList.h"
7 #include "engine/RepeatFilter.h"
8 #include "engine/TimeFilter.h"
9 
28  public SampleMechanismEA3 {
29 
30  public:
31 
35  ScanList& scan_list,
36  const char* name,
37  double period);
38 
40  virtual ~SampleMechanismGetEA3();
41 
42  public:
43 
44  // Scannable API
45 
46  void scan(const epicsTime& now);
47 
48  public:
49 
50  // SampleMechanism API
51 
52  virtual std::string getInfo(Guard& guard);
53 
54  virtual void start(Guard& guard);
55 
56  virtual void stop(Guard& guard);
57 
58  virtual void addToFUX(Guard& guard, FUX::Element* doc);
59 
60 protected:
61 
62  ScanList& scan_list;
63 
64  RepeatFilter repeat_filter;
65  TimeFilter time_filter;
66 };
67 
68 #endif /*SAMPLEMECHANISMGET_H_*/
virtual void stop(Guard &guard)
Stop sampling.
A filter to combine successive matching samples into a 'repeat count'.
Definition: RepeatFilter.h:18
Sample Mechanism that performs a periodic 'get'.
Definition: SampleMechanismGetEA3.h:27
A filter to remove samples that go back in time or are too futuristic.
Definition: TimeFilter.h:17
Global engine configuration parameters.
Definition: EngineConfig.h:14
Automatically takes and releases an epicsMutex.
Definition: Guard.h:63
virtual void start(Guard &guard)
Start the sample mechanism.
virtual std::string getInfo(Guard &guard)
virtual void addToFUX(Guard &guard, FUX::Element *doc)
Append this sample mechanism to a FUX document.
virtual ~SampleMechanismGetEA3()
Destructor.
Context for ProcessVariable instances.
Definition: ProcessVariableContext.h:18
Definition: SampleMechanismEA3.h:8
SampleMechanismGetEA3(EngineConfig &config, ProcessVariableContext &ctx, ScanList &scan_list, const char *name, double period)
Constructor.
Interface for something that can be placed on a ScanList.
Definition: ScanList.h:22
A ScanList keeps track of Scannable items.
Definition: ScanList.h:43
One element in the FUX tree.
Definition: FUX.h:51
void scan(const epicsTime &now)
Invoked whenever a scan is due.