zoukankan      html  css  js  c++  java
  • halcon算子翻译——set_framegrabber_callback

    名称

    set_framegrabber_callback - 为图像采集设备注册一个回调函数。

    用法

    set_framegrabber_callback( : : AcqHandle, CallbackType, CallbackFunction, UserContext : )

    描述

      算子set_framegrabber_callback为AcqHandle指定的图像采集设备注册一个回调函数。 参数CallbackFunction包含指向要注册的函数的指针,而CallbackType则指定回调应该连接的基础API的哪个函数。

    CallbackType的建议值为:

    'exception':

      图像采集引发了一个错误。

    'exposure_end':

      下一张照片的曝光已经完成。

    'exposure_start':

      下一张照片的曝光已经开始。

    'transfer_end':

      一个新的图像准备好由grab_image_async获取。

      根据底层API的功能,CallbackType可能有其他值。 通过调用带有参数'available_callback_types'的get_framegrabber_param,可以查询特定图像采集设备实际支持的所有回调类型。 有关更多详细信息,请参阅特定图像采集接口的文档。

      一旦回调被注册,每当发生基础事件(例如,曝光已经完成的通知)时,指定的回调函数CallbackFunction将被调用。 如果CallbackFunction设置为NULL,则相应的回调将被取消注册。

    回调函数的用法如下:

      Herror HAcqCallback(void * AcqHandle,void * Context,void * UserContext)

    在Windows 32位系统上,使用__stdcall命名约定:

      Herror (__stdcall HAcqCallback)(void *AcqHandle, void *Context, void *UserContext)

      回调函数的第一个参数包含传递给AcqHandle的图像采集设备的句柄,第二个参数提供一个指向特定的接口的上下文数据的指针,第三个参数是UserContext中指定的用户特定的指针。

    注意

      对于多线程应用程序,所有图像采集算子(如open_framegrabber中列出的)都是自己的组,其中info_framegrabber,open_framegrabber,close_framegrabber和close_all_framegrabbers是独占执行的。

      set_framegrabber_callback与该组内部和外部的所有非独占算子并行运行。

    并行

    ●  多线程类型:可重入(与非独占算子并行运行)。
    ●  多线程范围:全局(可以从任何线程调用)。
    ●  不并行化处理。

    该算子修改以下输入参数的状态:

      AcqHandle

    如果没有外部同步,此参数的值可能不会在多个线程之间共享。

    参数

    AcqHandle (input_control, state is modified)   framegrabber → (integer)
      要使用的采集设备的句柄。


    CallbackType (input_control)    string → (string)
      回调类型
      Default value: 'transfer_end'
      Suggested values: 'exception', 'exposure_end', 'exposure_start', 'transfer_end'


    CallbackFunction   (input_control) pointer → (integer)
      要设置的回调函数的指针。


    UserContext (input_control)    pointer → (integer)
      用户特定上下文数据的指针。

    结果

    如果图像采集设备打开并且指定的回调已成功注册,则算子set_framegrabber_callback返回值2(H_MSG_TRUE)。 否则会引发异常。

    Possible Predecessors

    open_framegrabber, set_framegrabber_param

    Possible Successors

    grab_image, grab_data, grab_image_start, grab_image_async, grab_data_async, get_framegrabber_param

    See also

    open_framegrabber, get_framegrabber_callback

    模块

    Foundation

  • 相关阅读:
    为什么要学习Linux
    测试开发技术:DOM中 innerHTML、innerText、outerHTML、outerText的区别
    web service 组件
    老李分享:webservice是什么?
    hibernate 和 mybatis 的区别
    mybatis 缓存
    过滤器和拦截器
    Spring 注解
    Spring 全局异常处理
    mybatis Mapper XML 映射文件
  • 原文地址:https://www.cnblogs.com/xhiong/p/set_framegrabber_callback.html
Copyright © 2011-2022 走看看