quadEM  7-0
Classes | Macros | Enumerations
drvQuadEM.h File Reference
#include <epicsExit.h>
#include <epicsRingBytes.h>
#include <epicsMessageQueue.h>
#include "asynNDArrayDriver.h"

Go to the source code of this file.

Classes

class  drvQuadEM
 Base class to control the quad electrometer. More...
 

Macros

#define P_AcquireModeString   "QE_ACQUIRE_MODE" /* asynInt32, r/w */
 
#define P_CurrentOffsetString   "QE_CURRENT_OFFSET" /* asynFloat64, r/w */
 
#define P_CurrentScaleString   "QE_CURRENT_SCALE" /* asynFloat64, r/w */
 
#define P_PositionOffsetString   "QE_POSITION_OFFSET" /* asynFloat64, r/w */
 
#define P_PositionScaleString   "QE_POSITION_SCALE" /* asynFloat64, r/w */
 
#define P_GeometryString   "QE_GEOMETRY" /* asynInt32, r/w */
 
#define P_DoubleDataString   "QE_DOUBLE_DATA" /* asynFloat64, r/o */
 
#define P_IntArrayDataString   "QE_INT_ARRAY_DATA" /* asynInt32Array, r/o */
 
#define P_RingOverflowsString   "QE_RING_OVERFLOWS" /* asynInt32, r/o */
 
#define P_ReadDataString   "QE_READ_DATA" /* asynInt32, r/w */
 
#define P_PingPongString   "QE_PING_PONG" /* asynInt32, r/w */
 
#define P_IntegrationTimeString   "QE_INTEGRATION_TIME" /* asynFloat64, r/w */
 
#define P_SampleTimeString   "QE_SAMPLE_TIME" /* asynFloat64, r/o */
 
#define P_RangeString   "QE_RANGE" /* asynInt32, r/w */
 
#define P_ResetString   "QE_RESET" /* asynInt32, r/w */
 
#define P_TriggerModeString   "QE_TRIGGER_MODE" /* asynInt32, r/w */
 
#define P_TriggerPolarityString   "QE_TRIGGER_POLARITY" /* asynInt32, r/w */
 
#define P_NumChannelsString   "QE_NUM_CHANNELS" /* asynInt32, r/w */
 
#define P_BiasStateString   "QE_BIAS_STATE" /* asynInt32, r/w */
 
#define P_BiasVoltageString   "QE_BIAS_VOLTAGE" /* asynFloat64, r/w */
 
#define P_BiasInterlockString   "QE_BIAS_INTERLOCK" /* asynInt32, r/w */
 
#define P_HVSReadbackString   "QE_HVS_READBACK" /* asynInt32, r/w */
 
#define P_HVVReadbackString   "QE_HVV_READBACK" /* asynFloat64, r/w */
 
#define P_HVIReadbackString   "QE_HVI_READBACK" /* asynFloat64, r/w */
 
#define P_TemperatureString   "QE_TEMPERATURE" /* asynFloat64, r/w */
 
#define P_ReadStatusString   "QE_READ_STATUS" /* asynInt32, r/w */
 
#define P_ResolutionString   "QE_RESOLUTION" /* asynInt32, r/w */
 
#define P_ValuesPerReadString   "QE_VALUES_PER_READ" /* asynInt32, r/w */
 
#define P_ReadFormatString   "QE_READ_FORMAT" /* asynInt32, r/w */
 
#define P_AveragingTimeString   "QE_AVERAGING_TIME" /* asynFloat64, r/w */
 
#define P_NumAverageString   "QE_NUM_AVERAGE" /* asynInt32, r/o */
 
#define P_NumAveragedString   "QE_NUM_AVERAGED" /* asynInt32, r/o */
 
#define P_NumAcquireString   "QE_NUM_ACQUIRE" /* asynInt32, r/o */
 
#define P_NumAcquiredString   "QE_NUM_ACQUIRED" /* asynInt32, r/o */
 
#define P_ModelString   "QE_MODEL" /* asynInt32, r/w */
 
#define P_FirmwareString   "QE_FIRMWARE" /* asynOctet, r/w */
 
#define QE_MAX_DATA   (QEPositionY+1)
 
#define QE_MAX_INPUTS   4
 
#define QE_DEFAULT_RING_BUFFER_SIZE   2048
 
#define FIRST_QE_COMMAND   P_AcquireMode
 

Enumerations

enum  QEModel_t {
  QE_ModelUnknown, QE_ModelAPS_EM, QE_ModelAH401B, QE_ModelAH401D,
  QE_ModelAH501, QE_ModelAH501BE, QE_ModelAH501C, QE_ModelAH501D,
  QE_ModelTetrAMM, QE_ModelNSLS_EM, QE_ModelNSLS2_EM, QE_ModelNSLS2_IC
}
 
enum  QEData_t {
  QECurrent1, QECurrent2, QECurrent3, QECurrent4,
  QESumX, QESumY, QESumAll, QEDiffX,
  QEDiffY, QEPositionX, QEPositionY
}
 
enum  QEGeometry_t { QEGeometryDiamond, QEGeometrySquare }
 
enum  QEAcquireMode_t { QEAcquireModeContinuous, QEAcquireModeMultiple, QEAcquireModeSingle }
 
enum  QETriggerMode_t {
  QETriggerModeFreeRun, QETriggerModeSoftware, QETriggerModeExtTrigger, QETriggerModeExtBulb,
  QETriggerModeExtGate
}
 
enum  QETriggerPolarity_t { QETriggerPolarityPositive, QETriggerPolarityNegative }
 
enum  QEReadFormat_t { QEReadFormatBinary, QEReadFormatASCII }
 

Macro Definition Documentation

#define FIRST_QE_COMMAND   P_AcquireMode
#define P_AcquireModeString   "QE_ACQUIRE_MODE" /* asynInt32, r/w */
#define P_AveragingTimeString   "QE_AVERAGING_TIME" /* asynFloat64, r/w */
#define P_BiasInterlockString   "QE_BIAS_INTERLOCK" /* asynInt32, r/w */
#define P_BiasStateString   "QE_BIAS_STATE" /* asynInt32, r/w */
#define P_BiasVoltageString   "QE_BIAS_VOLTAGE" /* asynFloat64, r/w */
#define P_CurrentOffsetString   "QE_CURRENT_OFFSET" /* asynFloat64, r/w */
#define P_CurrentScaleString   "QE_CURRENT_SCALE" /* asynFloat64, r/w */
#define P_DoubleDataString   "QE_DOUBLE_DATA" /* asynFloat64, r/o */
#define P_FirmwareString   "QE_FIRMWARE" /* asynOctet, r/w */
#define P_GeometryString   "QE_GEOMETRY" /* asynInt32, r/w */
#define P_HVIReadbackString   "QE_HVI_READBACK" /* asynFloat64, r/w */
#define P_HVSReadbackString   "QE_HVS_READBACK" /* asynInt32, r/w */
#define P_HVVReadbackString   "QE_HVV_READBACK" /* asynFloat64, r/w */
#define P_IntArrayDataString   "QE_INT_ARRAY_DATA" /* asynInt32Array, r/o */
#define P_IntegrationTimeString   "QE_INTEGRATION_TIME" /* asynFloat64, r/w */
#define P_ModelString   "QE_MODEL" /* asynInt32, r/w */
#define P_NumAcquiredString   "QE_NUM_ACQUIRED" /* asynInt32, r/o */
#define P_NumAcquireString   "QE_NUM_ACQUIRE" /* asynInt32, r/o */
#define P_NumAveragedString   "QE_NUM_AVERAGED" /* asynInt32, r/o */
#define P_NumAverageString   "QE_NUM_AVERAGE" /* asynInt32, r/o */
#define P_NumChannelsString   "QE_NUM_CHANNELS" /* asynInt32, r/w */
#define P_PingPongString   "QE_PING_PONG" /* asynInt32, r/w */
#define P_PositionOffsetString   "QE_POSITION_OFFSET" /* asynFloat64, r/w */
#define P_PositionScaleString   "QE_POSITION_SCALE" /* asynFloat64, r/w */
#define P_RangeString   "QE_RANGE" /* asynInt32, r/w */
#define P_ReadDataString   "QE_READ_DATA" /* asynInt32, r/w */
#define P_ReadFormatString   "QE_READ_FORMAT" /* asynInt32, r/w */
#define P_ReadStatusString   "QE_READ_STATUS" /* asynInt32, r/w */
#define P_ResetString   "QE_RESET" /* asynInt32, r/w */
#define P_ResolutionString   "QE_RESOLUTION" /* asynInt32, r/w */
#define P_RingOverflowsString   "QE_RING_OVERFLOWS" /* asynInt32, r/o */
#define P_SampleTimeString   "QE_SAMPLE_TIME" /* asynFloat64, r/o */
#define P_TemperatureString   "QE_TEMPERATURE" /* asynFloat64, r/w */
#define P_TriggerModeString   "QE_TRIGGER_MODE" /* asynInt32, r/w */
#define P_TriggerPolarityString   "QE_TRIGGER_POLARITY" /* asynInt32, r/w */
#define P_ValuesPerReadString   "QE_VALUES_PER_READ" /* asynInt32, r/w */
#define QE_DEFAULT_RING_BUFFER_SIZE   2048
#define QE_MAX_DATA   (QEPositionY+1)
#define QE_MAX_INPUTS   4

Enumeration Type Documentation

Enumerator
QEAcquireModeContinuous 
QEAcquireModeMultiple 
QEAcquireModeSingle 
enum QEData_t
Enumerator
QECurrent1 
QECurrent2 
QECurrent3 
QECurrent4 
QESumX 
QESumY 
QESumAll 
QEDiffX 
QEDiffY 
QEPositionX 
QEPositionY 
Enumerator
QEGeometryDiamond 
QEGeometrySquare 
enum QEModel_t
Enumerator
QE_ModelUnknown 
QE_ModelAPS_EM 
QE_ModelAH401B 
QE_ModelAH401D 
QE_ModelAH501 
QE_ModelAH501BE 
QE_ModelAH501C 
QE_ModelAH501D 
QE_ModelTetrAMM 
QE_ModelNSLS_EM 
QE_ModelNSLS2_EM 
QE_ModelNSLS2_IC 
Enumerator
QEReadFormatBinary 
QEReadFormatASCII 
Enumerator
QETriggerModeFreeRun 
QETriggerModeSoftware 
QETriggerModeExtTrigger 
QETriggerModeExtBulb 
QETriggerModeExtGate 
Enumerator
QETriggerPolarityPositive 
QETriggerPolarityNegative