grab_image_startT_grab_image_startGrabImageStartGrabImageStartgrab_image_start (算子)
名称
grab_image_startT_grab_image_startGrabImageStartGrabImageStartgrab_image_start — 从指定的图像采集设备启动异步抓取。
签名
描述
算子 grab_image_startgrab_image_startGrabImageStartGrabImageStartGrabImageStartgrab_image_start starts the asynchronous grab of
an image via the image acquisition device specified by AcqHandleAcqHandleAcqHandleAcqHandleacqHandleacq_handle.
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_framegrabberopen_framegrabberOpenFramegrabberOpenFramegrabberOpenFramegrabberopen_framegrabber and
set_framegrabber_paramset_framegrabber_paramSetFramegrabberParamSetFramegrabberParamSetFramegrabberParamset_framegrabber_param。
The grab is finished via grab_image_asyncgrab_image_asyncGrabImageAsyncGrabImageAsyncGrabImageAsyncgrab_image_async or
grab_data_asyncgrab_data_asyncGrabDataAsyncGrabDataAsyncGrabDataAsyncgrab_data_async。The MaxDelayMaxDelayMaxDelayMaxDelaymaxDelaymax_delay parameter is obsolete and
does not effect the new asynchronous grab. Note that you can check for a
too old image by using the MaxDelayMaxDelayMaxDelayMaxDelaymaxDelaymax_delay parameter of the operator
grab_image_asyncgrab_image_asyncGrabImageAsyncGrabImageAsyncGrabImageAsyncgrab_image_async or grab_data_asyncgrab_data_asyncGrabDataAsyncGrabDataAsyncGrabDataAsyncgrab_data_async, respectively.
Please note that the operator grab_image_startgrab_image_startGrabImageStartGrabImageStartGrabImageStartgrab_image_start makes sense only when
used together with grab_image_asyncgrab_image_asyncGrabImageAsyncGrabImageAsyncGrabImageAsyncgrab_image_async or grab_data_asyncgrab_data_asyncGrabDataAsyncGrabDataAsyncGrabDataAsyncgrab_data_async。If
you call the operators grab_imagegrab_imageGrabImageGrabImageGrabImagegrab_image or grab_datagrab_dataGrabDataGrabDataGrabDatagrab_data instead, the
asynchronous grab started by grab_image_startgrab_image_startGrabImageStartGrabImageStartGrabImageStartgrab_image_start is aborted and a new
synchronous grab is started.
To abort the grab, the operator set_framegrabber_paramset_framegrabber_paramSetFramegrabberParamSetFramegrabberParamSetFramegrabberParamset_framegrabber_param with the
parameter 'do_abort_grab' can be used if the specific image
acquisition interface supports it. Note that as an exception from
the description of the concurrent usage in multiple threads (see below)
'do_abort_grab' can also be used from another thread.
注意
For a multithreaded application,
info_framegrabberinfo_framegrabberInfoFramegrabberInfoFramegrabberInfoFramegrabberinfo_framegrabber, open_framegrabberopen_framegrabberOpenFramegrabberOpenFramegrabberOpenFramegrabberopen_framegrabber, and
close_framegrabberclose_framegrabberCloseFramegrabberCloseFramegrabberCloseFramegrabberclose_framegrabber are executed exclusively.
grab_image_startgrab_image_startGrabImageStartGrabImageStartGrabImageStartgrab_image_start runs in parallel with all non-exclusive
operators inside and outside of this group.
执行信息
- 多线程类型:可重入(与非独占算子并行运行)。
- 多线程作用域:全局(可从任何线程调用)。
- 未采用并行化处理。
参数
AcqHandleAcqHandleAcqHandleAcqHandleacqHandleacq_handle (输入控制) framegrabber → HFramegrabber, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Handle of the acquisition device to be used.
MaxDelayMaxDelayMaxDelayMaxDelaymaxDelaymax_delay (输入控制) number → HTuplefloatHTupleHtuple (real) (double) (double) (double)
This parameter is obsolete and has no effect.
默认值:
-1.0
建议值:
-1.0, 20.0, 33.3, 40.0, 66.6, 80.0, 99.9
示例(HDevelop)
* Select a suitable image acquisition interface named AcqName.
open_framegrabber('AcqName', 1, 1, 0, 0, 0, 0, 'default', -1, 'default', \
-1.0, 'default', 'default', 'default', -1, -1, AcqHandle)
* Start asynchronous grabbing.
grab_image_start(AcqHandle, -1)
* Run acquisition loop.
while (true)
* Get image, start next grab.
grab_image_async(Image, AcqHandle, -1.0)
* Next: Do something with the grabbed image.
endwhile
close_framegrabber(AcqHandle)
结果
If the image acquisition device is open and supports asynchronous grabbing
the operator grab_image_startgrab_image_startGrabImageStartGrabImageStartGrabImageStartgrab_image_start 返回值 2 ( H_MSG_TRUE )。否则将抛出异常。
可能的前趋
open_framegrabberopen_framegrabberOpenFramegrabberOpenFramegrabberOpenFramegrabberopen_framegrabber,
set_framegrabber_paramset_framegrabber_paramSetFramegrabberParamSetFramegrabberParamSetFramegrabberParamset_framegrabber_param
可能的后继
grab_image_asyncgrab_image_asyncGrabImageAsyncGrabImageAsyncGrabImageAsyncgrab_image_async,
grab_data_asyncgrab_data_asyncGrabDataAsyncGrabDataAsyncGrabDataAsyncgrab_data_async,
set_framegrabber_paramset_framegrabber_paramSetFramegrabberParamSetFramegrabberParamSetFramegrabberParamset_framegrabber_param,
close_framegrabberclose_framegrabberCloseFramegrabberCloseFramegrabberCloseFramegrabberclose_framegrabber
另见
open_framegrabberopen_framegrabberOpenFramegrabberOpenFramegrabberOpenFramegrabberopen_framegrabber,
info_framegrabberinfo_framegrabberInfoFramegrabberInfoFramegrabberInfoFramegrabberinfo_framegrabber,
set_framegrabber_paramset_framegrabber_paramSetFramegrabberParamSetFramegrabberParamSetFramegrabberParamset_framegrabber_param
模块
基础