areaDetector
3-5-0
EPICS areaDetector framework
|
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <set>
#include <epicsEvent.h>
#include <epicsTime.h>
#include <epicsThread.h>
#include <epicsMessageQueue.h>
#include <iocsh.h>
#include <cantProceed.h>
#include <epicsString.h>
#include <epicsExit.h>
#include "Spinnaker.h"
#include "SpinGenApi/SpinnakerGenApi.h"
#include "ADDriver.h"
#include <epicsExport.h>
Classes | |
class | ImageEventHandler |
class | ADSpinnaker |
Main driver class inherited from areaDetectors ADDriver class. More... | |
Macros | |
#define | DRIVER_VERSION 1 |
#define | DRIVER_REVISION 0 |
#define | DRIVER_MODIFICATION 0 |
#define | DEFAULT_PACKET_DELAY 400 |
#define | CALLBACK_MESSAGE_QUEUE_SIZE 10 |
#define | FIRST_SP_PARAM SPVideoMode |
Functions | |
int | ADSpinnakerConfig (const char *portName, int cameraId, int traceMask, int memoryChannel, int maxBuffers, size_t maxMemory, int priority, int stackSize) |
Configuration function to configure one camera. More... | |
void | indent (FILE *fp, unsigned int level) |
epicsExportRegistrar (ADSpinnakerRegister) | |
#define CALLBACK_MESSAGE_QUEUE_SIZE 10 |
#define DEFAULT_PACKET_DELAY 400 |
#define DRIVER_MODIFICATION 0 |
#define DRIVER_REVISION 0 |
#define DRIVER_VERSION 1 |
#define FIRST_SP_PARAM SPVideoMode |
enum SPConvertDirection_t |
enum SPPixelConvert_t |
enum SPPropertyType_t |
enum SPTimeStamp_t |
enum SPUniqueId_t |
int ADSpinnakerConfig | ( | const char * | portName, |
int | cameraId, | ||
int | traceMask, | ||
int | memoryChannel, | ||
int | maxBuffers, | ||
size_t | maxMemory, | ||
int | priority, | ||
int | stackSize | ||
) |
Configuration function to configure one camera.
This function need to be called once for each camera to be used by the IOC. A call to this function instanciates one object from the ADSpinnaker class.
[in] | portName | asyn port name to assign to the camera. |
[in] | cameraId | The camera index or serial number; <1000 is assumed to be index, >=1000 is assumed to be serial number. |
[in] | traceMask | The initial value of the asynTraceMask. |
If set to 0 or 1 then asynTraceMask will be set to ASYN_TRACE_ERROR. If set to 0x21 (ASYN_TRACE_WARNING | ASYN_TRACE_ERROR) then each call to the FlyCap2 library will be traced including during initialization.
[in] | memoryChannel | The camera memory channel (non-volatile memory containing camera parameters) to load during initialization. If 0 no memory channel is loaded. If >=1 thenRestoreFromMemoryChannel(memoryChannel-1) is called. |
Set memoryChannel to 1 to work around a bug in the Linux GigE driver in R2.0.
[in] | maxBuffers | Maxiumum number of NDArray objects (image buffers) this driver is allowed to allocate. This driver requires 2 buffers, and each queue element in a plugin can require one buffer which will all need to be added up in this parameter. 0=unlimited. |
[in] | maxMemory | Maximum memory (in bytes) that this driver is allowed to allocate. So if max. size = 1024x768 (8bpp) and maxBuffers is, say 14. maxMemory = 1024x768x14 = 11010048 bytes (~11MB). 0=unlimited. |
[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. |
epicsExportRegistrar | ( | ADSpinnakerRegister | ) |
void indent | ( | FILE * | fp, |
unsigned int | level | ||
) |