DLL Document
DLL Document Documentation

Introduction

The CLCamera interface library provides a C dynamic link library interface to any number of CCDsp cameras powered by the MightyDSP framework. The CLCamera interface supports communication to CCDsp cameras using a USB 2.0 port (up 480 MBps) and also over Ethernet TCP/IP protocol (10/100 MBit).

All CCDsp Cameras handle commands in a pipeline fashion. The CLCamera interface allows CLClearCCD, CLReadCCDArea, and CLReadCCDBinned calls to be made in a non-blocking fasion and "queue" in the camera. This allows for tight timeline execution between Clearing, Exposing, and Reading the CCD in order to minimize Dark Current buildup between a clear and an exposure. Additionally, Read calls may be configured to use callback routines in order to allow tasks to continue which camera image data is transferred to the PC Host.

Example

The following code snippet provides a simple example of interfacing to a CCDsp camera over a USB serial port interface. The camera is opened. An exposure time is configured. Then, the camera is cleared, exposed, read (full image) capturing 5 images, and finally closed.

{
int CameraHandle;
unsigned short* lpData = new unsigned short[1024*256];
// Open the camera
CameraHandle = CLOpenHSUSBCamera(0);
// Set the camera for a 5 ms exposure time
CLSetExposure(CameraHandle, 5);
// Loop On Image count
for (int i = 0; i < 5; i++)
{
// Clear the camera once, then immediately read
// (the exposure time is configured above)
CLClearCCD(CameraHandle, 1, 0);
CLReadCCDArea(CameraHandle, lpData);
// Wait for the Read to Complete
CLWaitCompletion(CameraHandle, -1);
// Process the image data (application code)
ProcessImage(lpData)
}
CLCloseCamera(CameraHandle);
...
}