areaDetector  3-5-0
EPICS areaDetector framework
NDPluginTransform.h
Go to the documentation of this file.
1 #ifndef NDPluginTransform_H
2 #define NDPluginTransform_H
3 
4 #include <epicsTypes.h>
5 #include <asynStandardInterfaces.h>
6 
7 #include "NDPluginDriver.h"
8 
11 #define NDPluginTransformTypeString "TRANSFORM_TYPE"
12 
13 static const char* pluginName = "NDPluginTransform";
14 
16 class epicsShareClass NDPluginTransform : public NDPluginDriver {
17 public:
18  NDPluginTransform(const char *portName, int queueSize, int blockingCallbacks,
19  const char *NDArrayPort, int NDArrayAddr,
20  int maxBuffers, size_t maxMemory,
21  int priority, int stackSize, int maxThreads=1);
22  /* These methods override the virtual methods in the base class */
23  void processCallbacks(NDArray *pArray);
24 
25 protected:
27  #define FIRST_TRANSFORM_PARAM NDPluginTransformType_
28 
29 private:
30  size_t userDims_[ND_ARRAY_MAX_DIMS];
31  void transformImage(NDArray *inArray, NDArray *outArray, NDArrayInfo_t *arrayInfo);
32 };
33 
34 #endif
Class from which actual plugin drivers are derived; derived from asynNDArrayDriver.
Definition: NDPluginDriver.h:56
#define ND_ARRAY_MAX_DIMS
NDArray.h.
Definition: NDArray.h:25
Structure returned by NDArray::getInfo.
Definition: NDArray.h:71
virtual void processCallbacks(NDArray *pArray)=0
int NDPluginTransformType_
Definition: NDPluginTransform.h:26
Perform transformations (rotations, flips) on NDArrays.
Definition: NDPluginTransform.h:16
N-dimensional array class; each array has a set of dimensions, a data type, pointer to data,...
Definition: NDArray.h:92