areaDetector  3-5-0
EPICS areaDetector framework
ADnEDTransformBase.h
Go to the documentation of this file.
1 
7 #ifndef ADNED_TRANSFORM_BASE_H
8 #define ADNED_TRANSFORM_BASE_H
9 
10 #include "stdio.h"
11 #include "stdlib.h"
12 #include "string.h"
13 #include "epicsTypes.h"
14 #include "ADnEDGlobals.h"
15 
17 
18  public:
20  virtual ~ADnEDTransformBase();
21 
22  virtual epicsFloat64 calculate(epicsUInt32 type, epicsUInt32 pixelID, epicsUInt32 tof) const = 0;
23  int setIntParam(epicsUInt32 paramIndex, epicsUInt32 paramVal);
24  int setDoubleParam(epicsUInt32 paramIndex, epicsFloat64 paramVal);
25  int setDoubleArray(epicsUInt32 paramIndex, const epicsFloat64 *pSource, epicsUInt32 size);
26  void printParams(void) const;
27  void setDebug(bool debug);
28 
29  protected:
30 
31  //Storage for parameters and arrays used in the calculations.
36 
37  //Flag to print out intermediate calculation steps for debug (true or false)
38  bool m_debug;
39 
40 };
41 
42 
43 #endif //ADNED_TRANSFORM_BASE_H
int setDoubleArray(epicsUInt32 paramIndex, const epicsFloat64 *pSource, epicsUInt32 size)
Set array of doubles.
Definition: ADnEDTransformBase.cpp:68
int setIntParam(epicsUInt32 paramIndex, epicsUInt32 paramVal)
Set integer param.
Definition: ADnEDTransformBase.cpp:35
epicsFloat64 m_doubleParam[ADNED_MAX_TRANSFORM_PARAMS]
Definition: ADnEDTransformBase.h:33
#define ADNED_MAX_TRANSFORM_PARAMS
Definition: ADnEDGlobals.h:7
void printParams(void) const
For debug, print all to stdout.
Definition: ADnEDTransformBase.cpp:102
ADnEDTransform base class.
Definition: ADnEDTransformBase.h:16
epicsFloat64 * p_Array[ADNED_MAX_TRANSFORM_PARAMS]
Definition: ADnEDTransformBase.h:34
virtual epicsFloat64 calculate(epicsUInt32 type, epicsUInt32 pixelID, epicsUInt32 tof) const =0
ADnEDTransformBase()
ADnEDTransform base class.
Definition: ADnEDTransformBase.cpp:10
virtual ~ADnEDTransformBase()
Destructor.
Definition: ADnEDTransformBase.cpp:26
epicsUInt32 m_intParam[ADNED_MAX_TRANSFORM_PARAMS]
Definition: ADnEDTransformBase.h:32
epicsUInt32 m_ArraySize[ADNED_MAX_TRANSFORM_PARAMS]
Definition: ADnEDTransformBase.h:35
bool m_debug
Definition: ADnEDTransformBase.h:38
void setDebug(bool debug)
Definition: ADnEDTransformBase.cpp:133
int setDoubleParam(epicsUInt32 paramIndex, epicsFloat64 paramVal)
Set double param.
Definition: ADnEDTransformBase.cpp:51