grab_image_async — Asynchronous grab of an image from the specified image acquisition device.
The operator grab_image_async grabs an image via the image acquisition device specified by AcqHandle and, if required by the operational mode, starts the asynchronous grab of the next image. More information about the operational modes of a specific image acquistion device can be found in the corresponding interface documentation in the directory 'doc/html/reference/acquisition'. The desired operational mode of the image acquisition device as well as a suitable image part and additional interface-specific settings can be specified using the operators open_framegrabber and set_framegrabber_param.
The grab is finished by calling grab_image_async or grab_data_async. If more than MaxDelay ms have passed since the asynchronous grab was started, the asynchronously grabbed image is considered as too old and a new image is grabbed, if necessary. If a negative value is assigned to MaxDelay, this control mechanism is deactivated.
To abort the grab, the operator set_framegrabber_param with the parameter 'do_abort_grab' can be used if the specific image acquisition interface supports it.
Please note that if you call the operators grab_image or grab_data after grab_image_async, the asynchronous grab started by grab_image_async is aborted and a new synchronous grab is started.
An image acquisition handle AcqHandle cannot be shared between multiple threads. Different image acquisition handles can be used independently and safely in different threads. For a multithreaded application the image acquisition operators are an own group in which info_framegrabber, open_framegrabber, close_framegrabber and close_all_framegrabbers are executed exclusively. grab_image_async runs in parallel with all non-exclusive operators inside and outside of this group.
Handle of the acquisition device to be used.
Maximum tolerated delay between the start of the asynchronous grab and the delivery of the image [ms].
Default value: -1.0
Suggested values: -1.0, 20.0, 33.3, 40.0, 66.6, 80.0, 99.9
* Select a suitable image acquisition interface name AcqName open_framegrabber(AcqName,1,1,0,0,0,0,'default',-1,'default',-1.0, \ 'default','default','default',-1,-1,AcqHandle) * Grab image + start next grab grab_image_async(Image1,AcqHandle,-1.0) * Process Image1 ... * Finish asynchronous grab + start next grab grab_image_async(Image2,AcqHandle,-1.0) * Process Image2 ... close_framegrabber(AcqHandle)
If the image acquisition device is open and supports asynchronous grabbing the operator grab_image_async returns the value 2 (H_MSG_TRUE). Otherwise an exception is raised.
grab_image_start, open_framegrabber, set_framegrabber_param
grab_image_async, grab_data_async, set_framegrabber_param, close_framegrabber
grab_image_start, open_framegrabber, info_framegrabber, set_framegrabber_param