areaDetector  3-5-0
EPICS areaDetector framework
Classes | Macros | Enumerations | Functions
BISDetector.cpp File Reference
#include <stdio.h>
#include <errno.h>
#include <string.h>
#include <sys/stat.h>
#include <epicsTime.h>
#include <epicsThread.h>
#include <epicsEvent.h>
#include <epicsMutex.h>
#include <epicsTimer.h>
#include <epicsString.h>
#include <epicsStdio.h>
#include <cantProceed.h>
#include <iocsh.h>
#include <asynOctetSyncIO.h>
#include "ADDriver.h"
#include <epicsExport.h>

Classes

class  BISDetector
 Driver for Bruker BIS ccd detector using their BIS server over TCP/IP socket. More...
 

Macros

#define MAX_MESSAGE_SIZE   512
 Messages to/from BIS. More...
 
#define MAX_FILENAME_LEN   256
 
#define ASYN_POLL_TIME   .01
 Time to poll when reading from BIS. More...
 
#define BIS_POLL_DELAY   .01
 
#define BIS_DEFAULT_TIMEOUT   1.0
 
#define FILE_READ_DELAY   .01
 Time between checking to see if .SFRM file is complete. More...
 
#define BISSFRMTimeoutString   "SFRM_TIMEOUT"
 
#define BISNumDarksString   "NUM_DARKS"
 
#define BISStatusString   "BIS_STATUS"
 
#define FIRST_BIS_PARAM   BISSFRMTimeout
 
#define LAST_BIS_PARAM   BISStatus
 
#define NUM_BIS_PARAMS   ((int)(&LAST_BIS_PARAM - &FIRST_BIS_PARAM + 1))
 
#define lineLen   80
 
#define maxLine   95
 
#define blockLen   512
 
#define dataOffset   8
 

Enumerations

enum  BISFrameType_t { BISFrameNormal, BISFrameDark, BISFrameRaw, BISFrameDoubleCorrelation }
 Frame type choices. More...
 

Functions

int BISDetectorConfig (const char *portName, const char *commandPort, const char *statusPort, int maxBuffers, size_t maxMemory, int priority, int stackSize)
 
 epicsExportRegistrar (BISDetectorRegister)
 

Macro Definition Documentation

◆ ASYN_POLL_TIME

#define ASYN_POLL_TIME   .01

Time to poll when reading from BIS.

◆ BIS_DEFAULT_TIMEOUT

#define BIS_DEFAULT_TIMEOUT   1.0

◆ BIS_POLL_DELAY

#define BIS_POLL_DELAY   .01

◆ BISNumDarksString

#define BISNumDarksString   "NUM_DARKS"

◆ BISSFRMTimeoutString

#define BISSFRMTimeoutString   "SFRM_TIMEOUT"

◆ BISStatusString

#define BISStatusString   "BIS_STATUS"

◆ blockLen

#define blockLen   512

◆ dataOffset

#define dataOffset   8

◆ FILE_READ_DELAY

#define FILE_READ_DELAY   .01

Time between checking to see if .SFRM file is complete.

◆ FIRST_BIS_PARAM

#define FIRST_BIS_PARAM   BISSFRMTimeout

◆ LAST_BIS_PARAM

#define LAST_BIS_PARAM   BISStatus

◆ lineLen

#define lineLen   80

◆ MAX_FILENAME_LEN

#define MAX_FILENAME_LEN   256

◆ MAX_MESSAGE_SIZE

#define MAX_MESSAGE_SIZE   512

Messages to/from BIS.

◆ maxLine

#define maxLine   95

◆ NUM_BIS_PARAMS

#define NUM_BIS_PARAMS   ((int)(&LAST_BIS_PARAM - &FIRST_BIS_PARAM + 1))

Enumeration Type Documentation

◆ BISFrameType_t

Frame type choices.

Enumerator
BISFrameNormal 
BISFrameDark 
BISFrameRaw 
BISFrameDoubleCorrelation 

Function Documentation

◆ BISDetectorConfig()

int BISDetectorConfig ( const char *  portName,
const char *  commandPort,
const char *  statusPort,
int  maxBuffers,
size_t  maxMemory,
int  priority,
int  stackSize 
)

◆ epicsExportRegistrar()

epicsExportRegistrar ( BISDetectorRegister  )