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