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" 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_;
Class from which areaDetector drivers are directly derived.
Definition: ADDriver.h:141
virtual asynStatus writeFloat64(asynUser *pasynUser, epicsFloat64 value)
Called when asyn clients call pasynFloat64->write().
Definition: PhotonII.cpp:534
int PII_TriggerType
Definition: PhotonII.h:49
list value
Definition: makeDbAndEdl.py:234
epicsEventId stopEventId_
This should be private but is accessed from C, must be public.
Definition: PhotonII.h:43
#define PII_MAX_MESSAGE_SIZE
Definition: PhotonII.h:20
virtual asynStatus writeInt32(asynUser *pasynUser, epicsInt32 value)
Called when asyn clients call pasynInt32->write().
Definition: PhotonII.cpp:461
char * portName
The name of this asyn port.
Definition: asynPortDriver.h:179
void report(FILE *fp, int details)
Report status of the driver.
Definition: PhotonII.cpp:573
Driver for Bruker Photon II detector using their p2util server over TCP/IP socket.
Definition: PhotonII.h:30
int PII_NumSubFrames
Definition: PhotonII.h:51
int PII_NumDarks
Definition: PhotonII.h:48
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_DRSumEnable
Definition: PhotonII.h:46
void PhotonIITask()
This thread controls acquisition, reads SFRM files to get the image data, and does the callbacks to s...
Definition: PhotonII.cpp:268
asynStatus p2util(const char *command)
Definition: PhotonII.cpp:589
N-dimensional array class; each array has a set of dimensions, a data type, pointer to data,...
Definition: NDArray.h:92
int PII_TriggerEdge
Definition: PhotonII.h:50