FirewireWinDCAM Class Reference

Main driver class inherited from areaDetectors ADDriver class. More...

Inheritance diagram for FirewireWinDCAM:

ADDriver asynNDArrayDriver asynPortDriver

List of all members.

Public Member Functions

 FirewireWinDCAM (const char *portName, const char *camid, int maxBuffers, size_t maxMemory, int priority, int stackSize)
 Constructor for the FirewireWinDCAM class Initialises the camera object by setting all the default parameters and initializing the camera hardware with it.
virtual asynStatus writeInt32 (asynUser *pasynUser, epicsInt32 value)
 Sets an int32 parameter.
virtual asynStatus writeFloat64 (asynUser *pasynUser, epicsFloat64 value)
 Sets an float64 parameter.
void report (FILE *fp, int details)
 Print out a report; calls ADDriver::report to get base class report as well.
void imageGrabTask ()
 This should be private but is called from C callback function, must be public.

Protected Attributes

int FDC_feat_val
int FDC_feat_val_max
int FDC_feat_val_min
 Feature maximum boundry value (int32 read) addr: 0-17.
int FDC_feat_val_abs
 Feature minimum boundry value (int32 read) addr: 0-17.
int FDC_feat_val_abs_max
 Feature absolute value (float64 read/write) addr: 0-17.
int FDC_feat_val_abs_min
 Feature absolute maximum boundry value (float64 read) addr: 0-17.
int FDC_feat_mode
 Feature absolute minimum boundry value (float64 read) addr: 0-17.
int FDC_feat_available
 Feature control mode: 0:manual or 1:automatic (camera controlled) (int32 read/write).
int FDC_feat_absolute
 Is a given featurea available in the camera 1=available 0=not available (int32, read).
int FDC_format
 Feature has absolute (floating point) controls available 1=available 0=not available (int32 read).
int FDC_mode
 Set and read back the video format (int32 (enums) read/write).
int FDC_framerate
 Set and read back the video mode (int32 (enums) read/write).
int FDC_colorcode
 Set and read back the frame rate (int32 (enums) read/write).
int FDC_valid_format
 Set and read back the color code (int32 (enums) read/write).
int FDC_valid_mode
 Read back the valid video formats (octet, read).
int FDC_valid_framerate
 Read back the valid video modes (octet, read).
int FDC_valid_colorcode
 Read back the valid frame rates (octet, read).
int FDC_has_format
 Read back the valid color codes (octet, read).
int FDC_has_mode
 Read back whether video format is supported (int32, read).
int FDC_has_framerate
 Read back whether video mode is supported (int32, read).
int FDC_has_colorcode
 Read back whether video framerate is supported (int32, read).
int FDC_current_format
 Read back whether color code is supported (int32, read).
int FDC_current_mode
 Read back the current video format (octet, read).
int FDC_current_framerate
 Read back the current video mode (octet, read).
int FDC_current_colorcode
 Read back the current frame rate (octet, read).
int FDC_dropped_frames
 Read back the current color mcde (octet, read).


Detailed Description

Main driver class inherited from areaDetectors ADDriver class.

One instance of this class will control one firewire camera on the bus.


Constructor & Destructor Documentation

FirewireWinDCAM::FirewireWinDCAM ( const char *  portName,
const char *  camid,
int  maxBuffers,
size_t  maxMemory,
int  priority,
int  stackSize 
)

Constructor for the FirewireWinDCAM class Initialises the camera object by setting all the default parameters and initializing the camera hardware with it.

This function also reads out the current settings of the camera and prints out a selection of parameters to the shell.

Parameters:
[in] portName Asyn port name to assign to the camera driver.
[in] camid The camera ID or serial number in a hexadecimal string. Lower case and upper case letters can be used. This is used to identify a specific camera on the bus. For instance: "0x00b09d01007139d0". If this parameter is empty ("") then the first camera found on the Firewire bus will be used.
[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. Use -1 for 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). Use -1 for unlimited.
[in] priority The EPICS thread priority for this asyn port driver. 0=use asyn default.
[in] stackSize The size of the stack for the asyn port thread. 0=use asyn default.


Member Function Documentation

void FirewireWinDCAM::imageGrabTask (  ) 

This should be private but is called from C callback function, must be public.

Task to grab images off the camera and send them up to areaDetector.

void FirewireWinDCAM::report ( FILE *  fp,
int  details 
) [virtual]

Print out a report; calls ADDriver::report to get base class report as well.

Parameters:
[in] fp File pointer to write output to
[in] details Level of detail desired. If >1 prints information about supported video formats and modes, etc.

Reimplemented from asynNDArrayDriver.

asynStatus FirewireWinDCAM::writeFloat64 ( asynUser *  pasynUser,
epicsFloat64  value 
) [virtual]

Sets an float64 parameter.

Parameters:
[in] pasynUser asynUser structure that contains the function code in pasynUser->reason.
[in] value The value for this parameter
Takes action if the function code requires it. The FDC_feat_val_abs function code makes calls to the Firewire library from this function.

Reimplemented from asynPortDriver.

asynStatus FirewireWinDCAM::writeInt32 ( asynUser *  pasynUser,
epicsInt32  value 
) [virtual]

Sets an int32 parameter.

Parameters:
[in] pasynUser asynUser structure that contains the function code in pasynUser->reason.
[in] value The value for this parameter
Takes action if the function code requires it. ADAcquire, ADSizeX, and many other function codes make calls to the Firewire library from this function.

Reimplemented from ADDriver.


Member Data Documentation

Set and read back the frame rate (int32 (enums) read/write).

Read back the current frame rate (octet, read).

Read back whether color code is supported (int32, read).

Read back the current video mode (octet, read).

Read back the current video format (octet, read).

Read back the current color mcde (octet, read).

Is a given featurea available in the camera 1=available 0=not available (int32, read).

Feature control mode: 0:manual or 1:automatic (camera controlled) (int32 read/write).

Feature absolute minimum boundry value (float64 read) addr: 0-17.

Feature minimum boundry value (int32 read) addr: 0-17.

Feature absolute value (float64 read/write) addr: 0-17.

Feature absolute maximum boundry value (float64 read) addr: 0-17.

Feature maximum boundry value (int32 read) addr: 0-17.

int FirewireWinDCAM::FDC_format [protected]

Feature has absolute (floating point) controls available 1=available 0=not available (int32 read).

Set and read back the video mode (int32 (enums) read/write).

Read back whether video framerate is supported (int32, read).

Read back the valid color codes (octet, read).

Read back whether video mode is supported (int32, read).

Read back whether video format is supported (int32, read).

int FirewireWinDCAM::FDC_mode [protected]

Set and read back the video format (int32 (enums) read/write).

Read back the valid frame rates (octet, read).

Set and read back the color code (int32 (enums) read/write).

Read back the valid video modes (octet, read).

Read back the valid video formats (octet, read).


The documentation for this class was generated from the following file:

Generated on Thu May 20 18:01:43 2010 for areaDetector by  doxygen 1.5.7.1