areaDetector  3-13
EPICS areaDetector framework
Classes | Macros | Enumerations
specsAnalyser.h File Reference
#include <vector>
#include <sys/stat.h>
#include <iostream>
#include <sstream>
#include <string>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
#include <errno.h>
#include <locale>
#include <map>
#include <algorithm>
#include <epicsThread.h>
#include <epicsEvent.h>
#include <epicsString.h>
#include <iocsh.h>
#include <drvSup.h>
#include <epicsExport.h>
#include <ADDriver.h>
#include "asynOctetSyncIO.h"

Go to the source code of this file.

Classes

class  SpecsAnalyser
 

Macros

#define SPECS_MAX_STRING   4096
 
#define SPECS_TIMEOUT   10
 
#define SPECS_UPDATE_RATE   0.1
 
#define SPECS_OK_STRING   "OK"
 
#define SPECS_ERROR_STRING   "ERROR"
 
#define SPECS_RUN_FAT   0
 
#define SPECS_RUN_SFAT   1
 
#define SPECS_RUN_FRR   2
 
#define SPECS_RUN_FE   3
 
#define SPECS_TYPE_DOUBLE   "double"
 
#define SPECS_TYPE_INTEGER   "integer"
 
#define SPECS_TYPE_STRING   "string"
 
#define SPECS_TYPE_BOOL   "bool"
 
#define SPECS_CMD_CONNECT   "Connect"
 
#define SPECS_CMD_DISCONNECT   "Disconnect"
 
#define SPECS_CMD_DEFINE_FAT   "DefineSpectrumFAT"
 
#define SPECS_CMD_DEFINE_SFAT   "DefineSpectrumSFAT"
 
#define SPECS_CMD_DEFINE_FRR   "DefineSpectrumFRR"
 
#define SPECS_CMD_DEFINE_FE   "DefineSpectrumFE"
 
#define SPECS_CMD_VALIDATE   "ValidateSpectrum"
 
#define SPECS_CMD_START   "Start"
 
#define SPECS_CMD_PAUSE   "Pause"
 
#define SPECS_CMD_RESUME   "Resume"
 
#define SPECS_CMD_ABORT   "Abort"
 
#define SPECS_CMD_GET_STATUS   "GetAcquisitionStatus"
 
#define SPECS_CMD_GET_DATA   "GetAcquisitionData"
 
#define SPECS_CMD_CLEAR   "ClearSpectrum"
 
#define SPECS_CMD_GET_NAMES   "GetAllAnalyzerParameterNames"
 
#define SPECS_CMD_GET_INFO   "GetAnalyzerParameterInfo"
 
#define SPECS_CMD_GET_VISNAME   "GetAnalyzerVisibleName"
 
#define SPECS_CMD_GET_VALUE   "GetAnalyzerParameterValue"
 
#define SPECS_CMD_SET_VALUE   "SetAnalyzerParameterValue"
 
#define SPECS_CMD_GET_SPECTRUM   "GetSpectrumParameterInfo"
 
#define SPECS_CMD_GET_DATA_INFO   "GetSpectrumDataInfo"
 
#define SPECS_CMD_SET_SAFE_STATE   "SetSafeState"
 
#define SPECSConnectString   "SPECS_CONNECT"
 
#define SPECSConnectedString   "SPECS_CONNECTED"
 
#define SPECSPauseAcqString   "SPECS_PAUSE_ACQ"
 
#define SPECSMsgCounterString   "SPECS_MSG_COUNTER"
 
#define SPECSServerNameString   "SPECS_SERVER_NAME"
 
#define SPECSProtocolVersionString   "SPECS_PROTOCOL_VERSION"
 
#define SPECSProtocolVersionMinorString   "SPECS_PROTOCOL_VER_MINOR"
 
#define SPECSProtocolVersionMajorString   "SPECS_PROTOCOL_VER_MAJOR"
 
#define SPECSStartEnergyString   "SPECS_START_ENERGY"
 
#define SPECSEndEnergyString   "SPECS_END_ENERGY"
 
#define SPECSRetardingRatioString   "SPECS_RETARDING_RATIO"
 
#define SPECSKineticEnergyString   "SPECS_KINETIC_ENERGY"
 
#define SPECSStepWidthString   "SPECS_STEP_WIDTH"
 
#define SPECSSamplesString   "SPECS_SAMPLES"
 
#define SPECSSamplesIterationString   "SPECS_SAMPLES_ITERATION"
 
#define SPECSSnapshotValuesString   "SPECS_SNAPSHOT_VALUES"
 
#define SPECSPassEnergyString   "SPECS_PASS_ENERGY"
 
#define SPECSLensModeString   "SPECS_LENS_MODE"
 
#define SPECSScanRangeString   "SPECS_SCAN_RANGE"
 
#define SPECSCurrentSampleString   "SPECS_CURRENT_SAMPLE"
 
#define SPECSPercentCompleteString   "SPECS_PERCENT_COMPLETE"
 
#define SPECSRemainingTimeString   "SPECS_REMAINING_TIME"
 
#define SPECSCurrentSampleIterationString   "SPECS_CRT_SAMPLE_ITER"
 
#define SPECSPercentCompleteIterationString   "SPECS_PCT_COMPLETE_ITER"
 
#define SPECSRemainingTimeIterationString   "SPECS_RMG_TIME_ITER"
 
#define SPECSAcqSpectrumString   "SPECS_ACQ_SPECTRUM"
 
#define SPECSAcqImageString   "SPECS_ACQ_IMAGE"
 
#define SPECSRunModeString   "SPECS_RUN_MODE"
 
#define SPECSDefineString   "SPECS_DEFINE"
 
#define SPECSValidateString   "SPECS_VALIDATE"
 
#define SPECSNonEnergyChannelsString   "SPECS_NON_ENERGY_CHANNELS"
 
#define SPECSNonEnergyUnitsString   "SPECS_NON_ENERGY_UNITS"
 
#define SPECSNonEnergyMinString   "SPECS_NON_ENERGY_MIN"
 
#define SPECSNonEnergyMaxString   "SPECS_NON_ENERGY_MAX"
 
#define SPECSSafeStateString   "SPECS_SAFE_STATE"
 
#define SPECSDataDelayMaxString   "SPECS_DATA_DELAY_MAX"
 
#define FIRST_SPECS_PARAM   SPECSConnect_
 
#define LAST_SPECS_PARAM   SPECSDataDelayMax_
 
#define NUM_SPECS_PARAMS   ((int)(&LAST_SPECS_PARAM - &FIRST_SPECS_PARAM + 100))
 

Enumerations

enum  SPECSValueType_t { SPECSTypeDouble , SPECSTypeInteger , SPECSTypeString , SPECSTypeBool }
 
enum  SPECSDataInfoParam_t { SPECSOrdinateRange }
 

Macro Definition Documentation

◆ FIRST_SPECS_PARAM

#define FIRST_SPECS_PARAM   SPECSConnect_

◆ LAST_SPECS_PARAM

#define LAST_SPECS_PARAM   SPECSDataDelayMax_

◆ NUM_SPECS_PARAMS

#define NUM_SPECS_PARAMS   ((int)(&LAST_SPECS_PARAM - &FIRST_SPECS_PARAM + 100))

◆ SPECS_CMD_ABORT

#define SPECS_CMD_ABORT   "Abort"

◆ SPECS_CMD_CLEAR

#define SPECS_CMD_CLEAR   "ClearSpectrum"

◆ SPECS_CMD_CONNECT

#define SPECS_CMD_CONNECT   "Connect"

◆ SPECS_CMD_DEFINE_FAT

#define SPECS_CMD_DEFINE_FAT   "DefineSpectrumFAT"

◆ SPECS_CMD_DEFINE_FE

#define SPECS_CMD_DEFINE_FE   "DefineSpectrumFE"

◆ SPECS_CMD_DEFINE_FRR

#define SPECS_CMD_DEFINE_FRR   "DefineSpectrumFRR"

◆ SPECS_CMD_DEFINE_SFAT

#define SPECS_CMD_DEFINE_SFAT   "DefineSpectrumSFAT"

◆ SPECS_CMD_DISCONNECT

#define SPECS_CMD_DISCONNECT   "Disconnect"

◆ SPECS_CMD_GET_DATA

#define SPECS_CMD_GET_DATA   "GetAcquisitionData"

◆ SPECS_CMD_GET_DATA_INFO

#define SPECS_CMD_GET_DATA_INFO   "GetSpectrumDataInfo"

◆ SPECS_CMD_GET_INFO

#define SPECS_CMD_GET_INFO   "GetAnalyzerParameterInfo"

◆ SPECS_CMD_GET_NAMES

#define SPECS_CMD_GET_NAMES   "GetAllAnalyzerParameterNames"

◆ SPECS_CMD_GET_SPECTRUM

#define SPECS_CMD_GET_SPECTRUM   "GetSpectrumParameterInfo"

◆ SPECS_CMD_GET_STATUS

#define SPECS_CMD_GET_STATUS   "GetAcquisitionStatus"

◆ SPECS_CMD_GET_VALUE

#define SPECS_CMD_GET_VALUE   "GetAnalyzerParameterValue"

◆ SPECS_CMD_GET_VISNAME

#define SPECS_CMD_GET_VISNAME   "GetAnalyzerVisibleName"

◆ SPECS_CMD_PAUSE

#define SPECS_CMD_PAUSE   "Pause"

◆ SPECS_CMD_RESUME

#define SPECS_CMD_RESUME   "Resume"

◆ SPECS_CMD_SET_SAFE_STATE

#define SPECS_CMD_SET_SAFE_STATE   "SetSafeState"

◆ SPECS_CMD_SET_VALUE

#define SPECS_CMD_SET_VALUE   "SetAnalyzerParameterValue"

◆ SPECS_CMD_START

#define SPECS_CMD_START   "Start"

◆ SPECS_CMD_VALIDATE

#define SPECS_CMD_VALIDATE   "ValidateSpectrum"

◆ SPECS_ERROR_STRING

#define SPECS_ERROR_STRING   "ERROR"

◆ SPECS_MAX_STRING

#define SPECS_MAX_STRING   4096

◆ SPECS_OK_STRING

#define SPECS_OK_STRING   "OK"

◆ SPECS_RUN_FAT

#define SPECS_RUN_FAT   0

◆ SPECS_RUN_FE

#define SPECS_RUN_FE   3

◆ SPECS_RUN_FRR

#define SPECS_RUN_FRR   2

◆ SPECS_RUN_SFAT

#define SPECS_RUN_SFAT   1

◆ SPECS_TIMEOUT

#define SPECS_TIMEOUT   10

◆ SPECS_TYPE_BOOL

#define SPECS_TYPE_BOOL   "bool"

◆ SPECS_TYPE_DOUBLE

#define SPECS_TYPE_DOUBLE   "double"

◆ SPECS_TYPE_INTEGER

#define SPECS_TYPE_INTEGER   "integer"

◆ SPECS_TYPE_STRING

#define SPECS_TYPE_STRING   "string"

◆ SPECS_UPDATE_RATE

#define SPECS_UPDATE_RATE   0.1

◆ SPECSAcqImageString

#define SPECSAcqImageString   "SPECS_ACQ_IMAGE"

◆ SPECSAcqSpectrumString

#define SPECSAcqSpectrumString   "SPECS_ACQ_SPECTRUM"

◆ SPECSConnectedString

#define SPECSConnectedString   "SPECS_CONNECTED"

◆ SPECSConnectString

#define SPECSConnectString   "SPECS_CONNECT"

◆ SPECSCurrentSampleIterationString

#define SPECSCurrentSampleIterationString   "SPECS_CRT_SAMPLE_ITER"

◆ SPECSCurrentSampleString

#define SPECSCurrentSampleString   "SPECS_CURRENT_SAMPLE"

◆ SPECSDataDelayMaxString

#define SPECSDataDelayMaxString   "SPECS_DATA_DELAY_MAX"

◆ SPECSDefineString

#define SPECSDefineString   "SPECS_DEFINE"

◆ SPECSEndEnergyString

#define SPECSEndEnergyString   "SPECS_END_ENERGY"

◆ SPECSKineticEnergyString

#define SPECSKineticEnergyString   "SPECS_KINETIC_ENERGY"

◆ SPECSLensModeString

#define SPECSLensModeString   "SPECS_LENS_MODE"

◆ SPECSMsgCounterString

#define SPECSMsgCounterString   "SPECS_MSG_COUNTER"

◆ SPECSNonEnergyChannelsString

#define SPECSNonEnergyChannelsString   "SPECS_NON_ENERGY_CHANNELS"

◆ SPECSNonEnergyMaxString

#define SPECSNonEnergyMaxString   "SPECS_NON_ENERGY_MAX"

◆ SPECSNonEnergyMinString

#define SPECSNonEnergyMinString   "SPECS_NON_ENERGY_MIN"

◆ SPECSNonEnergyUnitsString

#define SPECSNonEnergyUnitsString   "SPECS_NON_ENERGY_UNITS"

◆ SPECSPassEnergyString

#define SPECSPassEnergyString   "SPECS_PASS_ENERGY"

◆ SPECSPauseAcqString

#define SPECSPauseAcqString   "SPECS_PAUSE_ACQ"

◆ SPECSPercentCompleteIterationString

#define SPECSPercentCompleteIterationString   "SPECS_PCT_COMPLETE_ITER"

◆ SPECSPercentCompleteString

#define SPECSPercentCompleteString   "SPECS_PERCENT_COMPLETE"

◆ SPECSProtocolVersionMajorString

#define SPECSProtocolVersionMajorString   "SPECS_PROTOCOL_VER_MAJOR"

◆ SPECSProtocolVersionMinorString

#define SPECSProtocolVersionMinorString   "SPECS_PROTOCOL_VER_MINOR"

◆ SPECSProtocolVersionString

#define SPECSProtocolVersionString   "SPECS_PROTOCOL_VERSION"

◆ SPECSRemainingTimeIterationString

#define SPECSRemainingTimeIterationString   "SPECS_RMG_TIME_ITER"

◆ SPECSRemainingTimeString

#define SPECSRemainingTimeString   "SPECS_REMAINING_TIME"

◆ SPECSRetardingRatioString

#define SPECSRetardingRatioString   "SPECS_RETARDING_RATIO"

◆ SPECSRunModeString

#define SPECSRunModeString   "SPECS_RUN_MODE"

◆ SPECSSafeStateString

#define SPECSSafeStateString   "SPECS_SAFE_STATE"

◆ SPECSSamplesIterationString

#define SPECSSamplesIterationString   "SPECS_SAMPLES_ITERATION"

◆ SPECSSamplesString

#define SPECSSamplesString   "SPECS_SAMPLES"

◆ SPECSScanRangeString

#define SPECSScanRangeString   "SPECS_SCAN_RANGE"

◆ SPECSServerNameString

#define SPECSServerNameString   "SPECS_SERVER_NAME"

◆ SPECSSnapshotValuesString

#define SPECSSnapshotValuesString   "SPECS_SNAPSHOT_VALUES"

◆ SPECSStartEnergyString

#define SPECSStartEnergyString   "SPECS_START_ENERGY"

◆ SPECSStepWidthString

#define SPECSStepWidthString   "SPECS_STEP_WIDTH"

◆ SPECSValidateString

#define SPECSValidateString   "SPECS_VALIDATE"

Enumeration Type Documentation

◆ SPECSDataInfoParam_t

Enumerator
SPECSOrdinateRange 

◆ SPECSValueType_t

Enumerator
SPECSTypeDouble 
SPECSTypeInteger 
SPECSTypeString 
SPECSTypeBool