13 #define MAX_COMMAND_LEN 256
14 #define MAX_MODULES 16
15 #define MAX_IPNAME_LEN 16
16 #define MAX_PORTNAME_LEN 32
27 drvNSLS_EM(
const char *
portName,
const char *broadcastAddress,
int moduleID,
int ringBufferSize);
30 void report(FILE *fp,
int details);
38 virtual asynStatus
setAcquire(epicsInt32 value);
41 virtual asynStatus
setRange(epicsInt32 value);
44 virtual asynStatus
reset();
48 char *broadcastAddress_;
52 asynUser *pasynUserUDP_;
53 asynUser *pasynUserTCPCommand_;
54 asynUser *pasynUserTCPCommandConnect_;
55 asynUser *pasynUserTCPData_;
56 epicsEventId acquireStartEvent_;
67 asynStatus findModule();
68 asynStatus writeReadMeter();
69 asynStatus getFirmwareVersion();
71 asynStatus computeScaleFactor();
virtual asynStatus setIntegrationTime(epicsFloat64 value)
Sets the integration time.
Definition: drvNSLS_EM.cpp:441
drvNSLS_EM(const char *portName, const char *broadcastAddress, int moduleID, int ringBufferSize)
Constructor for the drvNSLS_EM class.
Definition: drvNSLS_EM.cpp:62
virtual asynStatus setValuesPerRead(epicsInt32 value)
Sets the values per read.
Definition: drvNSLS_EM.cpp:473
virtual asynStatus setRange(epicsInt32 value)
Sets the range.
Definition: drvNSLS_EM.cpp:459
Base class to control the quad electrometer.
Definition: drvQuadEM.h:128
int moduleID
Definition: drvNSLS_EM.h:20
Class to control the NSLS Precision Integrator.
Definition: drvNSLS_EM.h:25
void readThread(void)
Read thread to read the data from the electrometer when it is in continuous acquire mode...
Definition: drvNSLS_EM.cpp:299
char * portName
The name of this asyn port.
Definition: asynPortDriver.h:201
#define MAX_IPNAME_LEN
Definition: drvNSLS_EM.h:15
#define MAX_MODULES
Definition: drvNSLS_EM.h:14
void report(FILE *fp, int details)
Report parameters.
Definition: drvNSLS_EM.cpp:577
virtual void exitHandler()
Exit handler.
Definition: drvNSLS_EM.cpp:566
virtual asynStatus setAcquire(epicsInt32 value)
Starts and stops the electrometer.
Definition: drvNSLS_EM.cpp:389
virtual asynStatus setPingPong(epicsInt32 value)
Sets the ping-pong setting.
Definition: drvNSLS_EM.cpp:486
#define MAX_RANGES
Definition: drvNSLS_EM.h:17
Definition: drvNSLS_EM.h:19
virtual asynStatus reset()
Downloads all of the current EPICS settings to the electrometer.
Definition: drvNSLS_EM.cpp:554
virtual asynStatus readStatus()
Reads all the settings back from the electrometer.
Definition: drvNSLS_EM.cpp:511
#define MAX_PORTNAME_LEN
Definition: drvNSLS_EM.h:16
#define MAX_COMMAND_LEN
Definition: drvNSLS_EM.h:13