Avoiding image loss (C/C++)

This sample shows the basic idea of continuously capturing images without losing frames. A ring image buffer sequence with at least 3 buffers is used. These buffers are put into the image queue. Images are acquired into the buffer system. Using the image queue, the oldest buffer can always be fetched. The image buffer is automatically locked. After sucessfully processing the image data, the buffer is unlocked and put back into the queue to be re-used.

Collecting the image buffers is done in a detached thread. This thread is independent of the GUI interaction and allows collecting images without being interrupted.