10 #ifndef NDPluginTimeSeries_H 11 #define NDPluginTimeSeries_H 13 #include <epicsTypes.h> 14 #include <epicsTime.h> 20 #define TSAcquireString "TS_ACQUIRE" 21 #define TSReadString "TS_READ" 22 #define TSNumPointsString "TS_NUM_POINTS" 23 #define TSCurrentPointString "TS_CURRENT_POINT" 24 #define TSTimePerPointString "TS_TIME_PER_POINT" 25 #define TSAveragingTimeString "TS_AVERAGING_TIME" 26 #define TSNumAverageString "TS_NUM_AVERAGE" 27 #define TSElapsedTimeString "TS_ELAPSED_TIME" 28 #define TSAcquireModeString "TS_ACQUIRE_MODE" 29 #define TSTimeAxisString "TS_TIME_AXIS" 30 #define TSTimestampString "TS_TIMESTAMP" 33 #define TSTimeSeriesString "TS_TIME_SERIES" 40 const char *NDArrayPort,
int NDArrayAddr,
41 int maxSignals,
int maxBuffers,
size_t maxMemory,
42 int priority,
int stackSize);
53 #define FIRST_NDPLUGIN_TIME_SERIES_PARAM P_TSAcquire 69 template <
typename epicsType> asynStatus doAddToTimeSeriesT(
NDArray *pArray);
70 asynStatus addToTimeSeries(
NDArray *pArray);
71 asynStatus clear(epicsUInt32 roi);
72 template <
typename epicsType>
void doTimeSeriesCallbacksT();
73 asynStatus doTimeSeriesCallbacks();
74 void allocateArrays();
76 void createAxisArray();
77 void computeNumAverage();
85 int currentTimePoint_;
90 double averagingTimeRequested_;
91 double averagingTimeActual_;
93 epicsTimeStamp startTime_;
94 double *averageStore_;
101 #endif //NDPluginTimeSeries_H int P_TSTimeAxis
Definition: NDPluginTimeSeries.h:62
Class from which actual plugin drivers are derived; derived from asynNDArrayDriver.
Definition: NDPluginDriver.h:56
NDDataType_t
Enumeration of NDArray data types.
Definition: NDAttribute.h:27
int P_TSRead
Definition: NDPluginTimeSeries.h:54
Compute time series on signals.
Definition: NDPluginTimeSeries.h:37
int P_TSAveragingTime
Definition: NDPluginTimeSeries.h:58
virtual asynStatus writeInt32(asynUser *pasynUser, epicsInt32 value)
Called when asyn clients call pasynInt32->write().
Definition: NDPluginDriver.cpp:684
int P_TSNumAverage
Definition: NDPluginTimeSeries.h:59
list value
Definition: makeDbAndEdl.py:234
int P_TSTimePerPoint
Definition: NDPluginTimeSeries.h:57
virtual asynStatus writeFloat64(asynUser *pasynUser, epicsFloat64 value)
Called when asyn clients call pasynFloat64->write().
Definition: NDPluginDriver.cpp:776
int P_TSTimeSeries
Definition: NDPluginTimeSeries.h:66
int P_TSElapsedTime
Definition: NDPluginTimeSeries.h:60
int P_TSTimestamp
Definition: NDPluginTimeSeries.h:63
virtual void processCallbacks(NDArray *pArray)=0
N-dimensional array class; each array has a set of dimensions, a data type, pointer to data,...
Definition: NDArray.h:92
int P_TSAcquireMode
Definition: NDPluginTimeSeries.h:61
int P_TSAcquire
Definition: NDPluginTimeSeries.h:52
int P_TSCurrentPoint
Definition: NDPluginTimeSeries.h:56
int P_TSNumPoints
Definition: NDPluginTimeSeries.h:55