1 #ifndef NDPluginCircularBuff_H
2 #define NDPluginCircularBuff_H
4 #include <epicsTypes.h>
11 #define NDCircBuffControlString "CIRC_BUFF_CONTROL"
12 #define NDCircBuffStatusString "CIRC_BUFF_STATUS"
13 #define NDCircBuffTriggerAString "CIRC_BUFF_TRIGGER_A"
14 #define NDCircBuffTriggerBString "CIRC_BUFF_TRIGGER_B"
15 #define NDCircBuffTriggerAValString "CIRC_BUFF_TRIGGER_A_VAL"
16 #define NDCircBuffTriggerBValString "CIRC_BUFF_TRIGGER_B_VAL"
17 #define NDCircBuffTriggerCalcString "CIRC_BUFF_TRIGGER_CALC"
18 #define NDCircBuffTriggerCalcValString "CIRC_BUFF_TRIGGER_CALC_VAL"
19 #define NDCircBuffPresetTriggerCountString "CIRC_BUFF_PRESET_TRIGGER_COUNT"
20 #define NDCircBuffActualTriggerCountString "CIRC_BUFF_ACTUAL_TRIGGER_COUNT"
21 #define NDCircBuffPreTriggerString "CIRC_BUFF_PRE_TRIGGER"
22 #define NDCircBuffPostTriggerString "CIRC_BUFF_POST_TRIGGER"
23 #define NDCircBuffCurrentImageString "CIRC_BUFF_CURRENT_IMAGE"
24 #define NDCircBuffPostCountString "CIRC_BUFF_POST_COUNT"
25 #define NDCircBuffSoftTriggerString "CIRC_BUFF_SOFT_TRIGGER"
26 #define NDCircBuffTriggeredString "CIRC_BUFF_TRIGGERED"
27 #define NDCircBuffFlushOnSoftTrigString "CIRC_BUFF_FLUSH_ON_SOFTTRIGGER"
36 const char *NDArrayPort,
int NDArrayAddr,
37 int maxBuffers,
size_t maxMemory,
38 int priority,
int stackSize);
42 asynStatus
writeOctet(asynUser *pasynUser,
const char *
value,
size_t nChars,
size_t *nActual);
49 #define FIRST_NDPLUGIN_CIRC_BUFF_PARAM NDCircBuffControl
68 void flushPreBuffer();
72 asynStatus calculateTrigger(
NDArray *pArray,
int *trig);
77 char triggerCalcInfix_[MAX_INFIX_SIZE];
78 char triggerCalcPostfix_[MAX_POSTFIX_SIZE];
79 double triggerCalcArgs_[CALCPERFORM_NARGS];
#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
Definition: NDArrayRing.h:7
Performs a scope like capture.
Definition: NDPluginCircularBuff.h:33
int NDCircBuffControl
Definition: NDPluginCircularBuff.h:48
int NDCircBuffStatus
Definition: NDPluginCircularBuff.h:51
int NDCircBuffTriggerCalcVal
Definition: NDPluginCircularBuff.h:57
int NDCircBuffFlushOnSoftTrig
Definition: NDPluginCircularBuff.h:66
int NDCircBuffTriggerCalc
Definition: NDPluginCircularBuff.h:56
int NDCircBuffSoftTrigger
Definition: NDPluginCircularBuff.h:64
int NDCircBuffTriggerA
Definition: NDPluginCircularBuff.h:52
int NDCircBuffCurrentImage
Definition: NDPluginCircularBuff.h:62
int NDCircBuffPostTrigger
Definition: NDPluginCircularBuff.h:61
int NDCircBuffActualTriggerCount
Definition: NDPluginCircularBuff.h:59
int NDCircBuffPreTrigger
Definition: NDPluginCircularBuff.h:60
int NDCircBuffPostCount
Definition: NDPluginCircularBuff.h:63
int NDCircBuffTriggerAVal
Definition: NDPluginCircularBuff.h:54
int NDCircBuffTriggerBVal
Definition: NDPluginCircularBuff.h:55
int NDCircBuffTriggerB
Definition: NDPluginCircularBuff.h:53
int NDCircBuffPresetTriggerCount
Definition: NDPluginCircularBuff.h:58
int NDCircBuffTriggered
Definition: NDPluginCircularBuff.h:65
Class from which actual plugin drivers are derived; derived from asynNDArrayDriver.
Definition: NDPluginDriver.h:57
virtual asynStatus writeInt32(asynUser *pasynUser, epicsInt32 value)
Called when asyn clients call pasynInt32->write().
Definition: NDPluginDriver.cpp:678
virtual void processCallbacks(NDArray *pArray)=0
virtual asynStatus writeOctet(asynUser *pasynUser, const char *value, size_t maxChars, size_t *nActual)
Called when asyn clients call pasynOctet->write().
Definition: NDPluginDriver.cpp:804
list value
Definition: makeDbAndEdl.py:234