Memory Buffers
The last element of the channel consists of destination memory buffers. Memory buffers are represented by MultiCam objects called surfaces. The surface is a buffer where the user application can find the acquired image to be analysed.
The grabber automatically transfers the acquired image to the destination surface with a DMA mechanism.
In efficient implementations, the filling of a surface should be operated while, at the same time, a previously acquired image is analysed by the application. For this purpose, the channel offers the possibility to handle several surfaces. A set of surfaces of a channel is called a cluster.
The surfaces of a cluster have different states: a surface can be used by the channel for an image acquisition, a surface can also be handled by the user application for image analysing or a surface can simply be free. The evolution of these states is managed by state machines inside MultiCam. The application is notified each time a new surface is available for processing.