areaDetector
3-5-0
EPICS areaDetector framework
|
#include <iocsh.h>
#include <stdlib.h>
#include <string.h>
#include <epicsString.h>
#include <asynPortDriver.h>
#include "atmcdLXd.h"
#include <ShamrockCIF.h>
#include <epicsExport.h>
Classes | |
class | shamrock |
Driver for Andor Shamrock spectrographs. More... | |
Macros | |
#define | SRWavelengthString "SR_WAVELENGTH" |
#define | SRMinWavelengthString "SR_MIN_WAVELENGTH" |
#define | SRMaxWavelengthString "SR_MAX_WAVELENGTH" |
#define | SRCalibrationString "SR_CALIBRATION" |
#define | SRGratingString "SR_GRATING" |
#define | SRNumGratingsString "SR_NUM_GRATINGS" |
#define | SRGratingExistsString "SR_GRATING_EXISTS" |
#define | SRFlipperMirrorExistsString "SR_FLIPPER_MIRROR_EXISTS" |
#define | SRFlipperMirrorPortString "SR_FLIPPER_MIRROR_PORT" |
#define | SRSlitExistsString "SR_SLIT_EXISTS" |
#define | SRSlitSizeString "SR_SLIT_SIZE" |
#define | MAX_ERROR_MESSAGE_SIZE 100 |
#define | MAX_SLITS 4 |
#define | MAX_GRATINGS 3 |
#define | MAX_FLIPPER_MIRRORS 2 |
#define | MAX_ADDR 4 |
#define | FIRST_SR_PARAM SRWavelength_ |
Wavelength (float64 read/write) More... | |
#define | LAST_SR_PARAM SRSlitSize_ |
Slit width (float64 read/write) More... | |
#define | NUM_SR_PARAMS ((int)(&LAST_SR_PARAM - &FIRST_SR_PARAM + 1)) |
Number of asynPortDriver parameters this driver supports. More... | |
Functions | |
int | shamrockConfig (const char *portName, int shamrockId, const char *iniPath, int priority, int stackSize) |
Configuration function to configure one spectrograph. More... | |
epicsExportRegistrar (shamrockRegister) | |
#define FIRST_SR_PARAM SRWavelength_ |
Wavelength (float64 read/write)
#define LAST_SR_PARAM SRSlitSize_ |
Slit width (float64 read/write)
#define MAX_ADDR 4 |
#define MAX_ERROR_MESSAGE_SIZE 100 |
#define MAX_FLIPPER_MIRRORS 2 |
#define MAX_GRATINGS 3 |
#define MAX_SLITS 4 |
#define NUM_SR_PARAMS ((int)(&LAST_SR_PARAM - &FIRST_SR_PARAM + 1)) |
Number of asynPortDriver parameters this driver supports.
#define SRCalibrationString "SR_CALIBRATION" |
#define SRFlipperMirrorExistsString "SR_FLIPPER_MIRROR_EXISTS" |
#define SRFlipperMirrorPortString "SR_FLIPPER_MIRROR_PORT" |
#define SRGratingExistsString "SR_GRATING_EXISTS" |
#define SRGratingString "SR_GRATING" |
#define SRMaxWavelengthString "SR_MAX_WAVELENGTH" |
#define SRMinWavelengthString "SR_MIN_WAVELENGTH" |
#define SRNumGratingsString "SR_NUM_GRATINGS" |
#define SRSlitExistsString "SR_SLIT_EXISTS" |
#define SRSlitSizeString "SR_SLIT_SIZE" |
#define SRWavelengthString "SR_WAVELENGTH" |
epicsExportRegistrar | ( | shamrockRegister | ) |
int shamrockConfig | ( | const char * | portName, |
int | shamrockId, | ||
const char * | iniPath, | ||
int | priority, | ||
int | stackSize | ||
) |
Configuration function to configure one spectrograph.
This function need to be called once for each spectrography to be used by the IOC. A call to this function instanciates one object from the shamrock class.
[in] | portName | asyn port name to assign to the camera. |
[in] | shamrockId | The spectrograph index. |
[in] | iniPath | The path to the camera ini file |
[in] | priority | The EPICS thread priority for this driver. 0=use asyn default. |
[in] | stackSize | The size of the stack for the EPICS port thread. 0=use asyn default. |