11 #include <epicsEvent.h>
12 #include <epicsTimer.h>
16 #define DRIVER_VERSION 1
17 #define DRIVER_REVISION 0
18 #define DRIVER_MODIFICATION 0
20 #define PII_MAX_MESSAGE_SIZE 512
22 #define PII_DRSumEnableString "PII_DRSUM_ENABLE"
23 #define PII_NumDarksString "PII_NUM_DARKS"
24 #define PII_TriggerTypeString "PII_TRIGGER_TYPE"
25 #define PII_TriggerEdgeString "PII_TRIGGER_EDGE"
26 #define PII_NumSubFramesString "PII_NUM_SUBFRAMES"
32 PhotonII(
const char *portName,
const char *PhotonIICommandPort,
33 int maxBuffers,
size_t maxMemory,
34 int priority,
int stackSize);
39 void report(FILE *fp,
int details);
42 asynStatus
p2util(
const char* command);
47 #define FIRST_PII_PARAM PII_DRSumEnable
55 asynStatus readRaw(
const char *fileName, epicsTimeStamp *pStartTime,
double timeout,
NDArray *pImage);
56 asynStatus writePhotonII(
double timeout);
57 asynStatus readPhotonII(
double timeout);
60 epicsEventId startEventId_;
63 asynUser *pasynUserCommand_;
#define PII_MAX_MESSAGE_SIZE
Definition: PhotonII.h:20
Class from which areaDetector drivers are directly derived.
Definition: ADDriver.h:132
N-dimensional array class; each array has a set of dimensions, a data type, pointer to data,...
Definition: NDArray.h:99
Driver for Bruker Photon II detector using their p2util server over TCP/IP socket.
Definition: PhotonII.h:30
virtual asynStatus writeFloat64(asynUser *pasynUser, epicsFloat64 value)
Called when asyn clients call pasynFloat64->write().
Definition: PhotonII.cpp:534
asynStatus p2util(const char *command)
Definition: PhotonII.cpp:589
int PII_TriggerType
Definition: PhotonII.h:49
int PII_NumSubFrames
Definition: PhotonII.h:51
PhotonII(const char *portName, const char *PhotonIICommandPort, int maxBuffers, size_t maxMemory, int priority, int stackSize)
Constructor for PhotonII driver; most parameters are simply passed to ADDriver::ADDriver.
Definition: PhotonII.cpp:83
int PII_NumDarks
Definition: PhotonII.h:48
int PII_DRSumEnable
Definition: PhotonII.h:46
void report(FILE *fp, int details)
Report status of the driver.
Definition: PhotonII.cpp:573
int PII_TriggerEdge
Definition: PhotonII.h:50
virtual asynStatus writeInt32(asynUser *pasynUser, epicsInt32 value)
Called when asyn clients call pasynInt32->write().
Definition: PhotonII.cpp:461
epicsEventId stopEventId_
This should be private but is accessed from C, must be public.
Definition: PhotonII.h:43
void PhotonIITask()
This thread controls acquisition, reads SFRM files to get the image data, and does the callbacks to s...
Definition: PhotonII.cpp:268
list value
Definition: makeDbAndEdl.py:234