areaDetector 1-9
Classes | Defines | Enumerations | Functions
/home/epics/devel/areaDetector/ADApp/mar345Src/mar345.cpp File Reference
#include <stddef.h>
#include <stdlib.h>
#include <stdarg.h>
#include <math.h>
#include <stdio.h>
#include <errno.h>
#include <string.h>
#include <ctype.h>
#include <fcntl.h>
#include <sys/stat.h>
#include <unistd.h>
#include <epicsTime.h>
#include <epicsThread.h>
#include <epicsEvent.h>
#include <epicsTimer.h>
#include <epicsMutex.h>
#include <epicsString.h>
#include <epicsStdio.h>
#include <cantProceed.h>
#include <iocsh.h>
#include <epicsExport.h>
#include <asynOctetSyncIO.h>
#include "ADDriver.h"
#include "mar3xx_pck.h"

Classes

class  mar345
 Driver for mar345 online image plate detector; communicates with the mar345dtb program over a TCP/IP socket. More...

Defines

#define MAX_MESSAGE_SIZE   256
 Messages to/from server.
#define MAX_FILENAME_LEN   256
#define MAR345_SOCKET_TIMEOUT   1.0
#define MAR345_COMMAND_TIMEOUT   180.0
#define MAR345_POLL_DELAY   .01
#define mar345EraseString   "MAR_ERASE"
 Driver-specific parameter strings for the mar345 driver.
#define mar345EraseModeString   "MAR_ERASE_MODE"
#define mar345NumEraseString   "MAR_NUM_ERASE"
#define mar345NumErasedString   "MAR_NUM_ERASED"
#define mar345ChangeModeString   "MAR_CHANGE_MODE"
#define mar345SizeString   "MAR_SIZE"
#define mar345ResString   "MAR_RESOLUTION"
#define mar345AbortString   "MAR_ABORT"
#define FIRST_MAR345_PARAM   mar345Erase
#define LAST_MAR345_PARAM   mar345Abort
#define NUM_MAR345_PARAMS   ((int)(&LAST_MAR345_PARAM - &FIRST_MAR345_PARAM + 1))

Enumerations

enum  mar345TriggerMode_t { TMInternal, TMExternal, TMAlignment }
 Trigger mode choices. More...
enum  mar345EraseMode_t { mar345EraseNone, mar345EraseBefore, mar345EraseAfter }
 Erase mode choices. More...
enum  mar345Size_t { mar345Size180, mar345Size240, mar345Size300, mar345Size345 }
 Readout size choices. More...
enum  mar345Res_t { mar345Res100, mar345Res150 }
 Resolution choices. More...
enum  mar345Mode_t { mar345ModeIdle, mar345ModeErase, mar345ModeAcquire, mar345ModeChange }
 Mode choices. More...
enum  mar345Status_t {
  mar345StatusIdle, mar345StatusExpose, mar345StatusScan, mar345StatusErase,
  mar345StatusChangeMode, mar345StatusAborting, mar345StatusError, mar345StatusWaiting
}
 Status choices. More...

Functions

int mar345Config (const char *portName, const char *serverPort, int maxBuffers, size_t maxMemory, int priority, int stackSize)
 epicsExportRegistrar (mar345Register)

Define Documentation

#define FIRST_MAR345_PARAM   mar345Erase
#define LAST_MAR345_PARAM   mar345Abort
#define MAR345_COMMAND_TIMEOUT   180.0
#define MAR345_POLL_DELAY   .01
#define MAR345_SOCKET_TIMEOUT   1.0
#define mar345AbortString   "MAR_ABORT"
#define mar345ChangeModeString   "MAR_CHANGE_MODE"
#define mar345EraseModeString   "MAR_ERASE_MODE"
#define mar345EraseString   "MAR_ERASE"

Driver-specific parameter strings for the mar345 driver.

#define mar345NumErasedString   "MAR_NUM_ERASED"
#define mar345NumEraseString   "MAR_NUM_ERASE"
#define mar345ResString   "MAR_RESOLUTION"
#define mar345SizeString   "MAR_SIZE"
#define MAX_FILENAME_LEN   256
#define MAX_MESSAGE_SIZE   256

Messages to/from server.

#define NUM_MAR345_PARAMS   ((int)(&LAST_MAR345_PARAM - &FIRST_MAR345_PARAM + 1))

Enumeration Type Documentation

Erase mode choices.

Enumerator:
mar345EraseNone 
mar345EraseBefore 
mar345EraseAfter 

Mode choices.

Enumerator:
mar345ModeIdle 
mar345ModeErase 
mar345ModeAcquire 
mar345ModeChange 

Resolution choices.

Enumerator:
mar345Res100 
mar345Res150 

Readout size choices.

Enumerator:
mar345Size180 
mar345Size240 
mar345Size300 
mar345Size345 

Status choices.

Enumerator:
mar345StatusIdle 
mar345StatusExpose 
mar345StatusScan 
mar345StatusErase 
mar345StatusChangeMode 
mar345StatusAborting 
mar345StatusError 
mar345StatusWaiting 

Trigger mode choices.

Enumerator:
TMInternal 
TMExternal 
TMAlignment 

Function Documentation

epicsExportRegistrar ( mar345Register  )
int mar345Config ( const char *  portName,
const char *  serverPort,
int  maxBuffers,
size_t  maxMemory,
int  priority,
int  stackSize 
)