quadEM  7-0
NDPluginPva.h
Go to the documentation of this file.
1 #ifndef NDPluginPva_H
2 #define NDPluginPva_H
3 
4 #include "NDPluginDriver.h"
5 
6 #include <pv/serverContext.h>
7 #include <pv/lock.h>
8 #include <pv/pvData.h>
9 #include <vector>
10 
11 #define NDPluginPvaPvNameString "PV_NAME"
12 
14 typedef std::tr1::shared_ptr<NTNDArrayRecord> NTNDArrayRecordPtr;
15 
19  public std::tr1::enable_shared_from_this<NDPluginPva>
20 {
21 public:
22  POINTER_DEFINITIONS(NDPluginPva);
23  NDPluginPva(const char *portName, int queueSize, int blockingCallbacks,
24  const char *NDArrayPort, int NDArrayAddr, const char *pvName,
25  int maxBuffers, size_t maxMemory, int priority, int stackSize);
26 
27  /* These methods override the virtual methods in the base class */
28  void processCallbacks(NDArray *pArray);
29 
30 protected:
32 
33 private:
34  NTNDArrayRecordPtr m_record;
35 };
36 
37 #endif
Class from which actual plugin drivers are derived; derived from asynNDArrayDriver.
Definition: NDPluginDriver.h:58
Definition: NDPluginPva.cpp:26
std::tr1::shared_ptr< NTNDArrayRecord > NTNDArrayRecordPtr
Definition: NDPluginPva.h:13
virtual void processCallbacks(NDArray *pArray)=0
#define NDPLUGIN_API
Definition: NDPluginAPI.h:41
Converts NDArray callback data into EPICS V4 NTNDArray data and exposes it as an EPICS V4 PV...
Definition: NDPluginPva.h:18
N-dimensional array class; each array has a set of dimensions, a data type, pointer to data...
Definition: NDArray.h:93
int NDPluginPvaPvName
Definition: NDPluginPva.h:31