第三章 虚拟仪器系统IO接口软件(4)

2019-04-02 11:12

型的设置只对于独占锁定状态有关,所有非独占性锁定状态均为共享。 5) 相关项:参见viUnLock()、viUnLockRsrc()。

6) 实现要求:当锁定模式为非独占型时,shareType参数可忽略。 10、 viUnLock(vi,lockId)

viUnLockRsrc(vi,rsrcName,lockId) 1) 目标:取消资源存取模式 2) 参数表:

参数名 输入/输出方向 数据类型 描述

vi 输入 ViSession 对话通道标识符(句柄) rsrcName 输入 ViRsrc 资源名 lockId 输入 ViLock 锁定标识符 3) 返回状态值: 完成代码:

VI_SUCCESS 取消锁定模式完成

VI_WARN_NON_EXCLUSIVE 调用成功,但资源仍被非独占型锁定 _LOCK

VI_WARN_EXCLUSIVE_LOCK 调用成功,但资源仍被独占型锁定 错误代码:

VI_ERROR_INV_SESSION vi不能标识正当对话通道 VI_ERROR_INV_LOCK_ID 锁定标识符不当

VI_ERROR_LOCK_NOWNER 锁定并非来自于特定通道vi 4) 描述:该操作用于取消以前设置的资源锁定模式。 5) 相关项:参见viLock()、viLockRsrc()。

6) 实现要求:注意不同的参数输入对应于不同的返回状态。 11、 viEnableEvent(vi,eventType,mechanism,context) 1) 目标:允许特定事件通知 2) 参数表:

参数名 输入/输出方向 数据类型 描述

vi 输入 ViSession 对话通道标识符(句柄) eventType 输入 ViEventType 事件标识符 mechanism 输入 ViUInt16 事件处理机制 context 输入 ViEvent 事件信息 3) 返回状态值: 完成代码:

VI_SUCCESS 事件通知允许

VI_SUCCESS_EVENT_EN 至少一种事件处理机制被允许 错误代码:

VI_ERROR_INV_SESSION vi不能标识正当对话通道 VI_ERROR_RSRC_LOCKED 存取锁定模式不支持特定操作 VI_ERROR_INV_EVENT 特定事件不存在或不被支持 VI_ERROR_INV_MECH 事件处理机制不合法

VI_ERROR_HNDLR_NINSTALLED 特定事件句柄未被安装

4) 描述:该操作允许特定事件的通知,应用程序可采用事件排队或回调(中断)

方式处理该事件。

5) 相关项:参见viEventHandler()、viInstallHandler()、 viUnInstallHandler()。

6) 实现要求:若事件句柄未被安装,则在回调(中断)方式中返回错误值。 12、 viDisableEvent(vi,eventType,mechanism) 1) 目标:不允许特定事件通知 2) 参数表:

参数名 输入/输出方向 数据类型 描述

vi 输入 ViSession 对话通道标识符(句柄) eventType 输入 ViEventType 事件标识符 mechanism 输入 ViUInt16 事件处理机制 3) 返回状态值: 完成代码:

VI_SUCCESS 事件通知不允许

VI_SUCCESS_EVENT_DIS 至少一种事件处理机制不被允许 错误代码:

VI_ERROR_INV_SESSION vi不能标识正当对话通道 VI_ERROR_RSRC_LOCKED 存取锁定模式不支持特定操作 VI_ERROR_INV_EVENT 特定事件不存在或不被支持 VI_ERROR_INV_MECH 事件处理机制不合法 4) 描述:该操作取消特定事件的服务通知。

5) 相关项:参见viEventHandler()、viInstallHandler()、 viUnInstallHandler()。

6) 实现要求:若一个对话通道上的事件处理机制不允许,事件登录还将保留。 13、 viQueryEventMech(vi,eventType,mechanism) 1) 目标:查询事件处理机制 2) 参数表:

参数名 输入/输出方向 数据类型 描述

vi 输入 ViSession 对话通道标识符(句柄) eventType 输入 ViEventType 事件标识符 mechanism 输出 ViUInt16 事件处理机制 3) 返回状态值: 完成代码:

VI_SUCCESS 事件查询完成 错误代码:

VI_ERROR_INV_SESSION vi不能标识正当对话通道 VI_ERROR_RSRC_LOCKED 存取锁定模式不支持特定操作 VI_ERROR_INV_EVENT 特定事件不存在或不被支持

4) 描述:该操作查询特定事件处理机制,所有事件处理机制返回值以“位或”操 作值形式给出。

5) 相关项:参见viEventHandler()、viInstallHandler()、 viUnInstallHandler()。 6) 实现要求:无。

14、 viInstallHandler(vi,eventType,handler,userHandle)

1) 目标:安装事件回调句柄 2) 参数表:

参数名 输入/输出方向 数据类型 描述

vi 输入 ViSession 对话通道标识符(句柄) eventType 输入 ViEventType 事件标识符 handler 输入 ViHndlr 应用程序中的事件句柄 userHandle 输入 ViAddr 事件句柄值 3) 返回状态值: 完成代码:

VI_SUCCESS 安装事件句柄完成 错误代码:

VI_ERROR_INV_SESSION vi不能标识正当对话通道 VI_ERROR_RSRC_LOCKED 存取锁定模式不支持特定操作 VI_ERROR_INV_EVENT 特定事件不存在或不被支持

4) 描述:该操作允许应用程序去安装事件处理句柄,句柄由输入参数handler唯 一确定,事件类型包括资源事件(VI_RSRC_EVENT)、系统事件(VI_SYS_EVENT)、 异常事件(VI_EXCEPTION),当事件类型参数设为所有事件(VI_ALL_EVENTS)时, 以上三种类型事件句柄均被设置。

5) 相关项:参见viEventHandler()、viUnInstallHandler()。 6) 实现要求:无。

15、 viUninstallHandler(vi,eventType,handler,userHandle) 1) 目标:卸载事件回调句柄 2) 参数表:

参数名 输入/输出方向 数据类型 描述

vi 输入 ViSession 对话通道标识符(句柄) eventType 输入 ViEventType 事件标识符 handler 输入 ViHndlr 应用程序中的事件句柄 userhandle 输入 ViAddr 事件句柄值 3) 返回状态值: 完成代码:

VI_SUCCESS 卸载事件句柄完成 错误代码:

VI_ERROR_INV_SESSION vi不能标识正当对话通道 VI_ERROR_RSRC_LOCKED 存取锁定模式不支持特定操作 VI_ERROR_INV_EVENT 特定事件不存在或不被支持

VI_ERROR_INV_HNDLR_REF 句柄参数与所有已安装的句柄不匹配

4) 描述:该操作允许应用程序去卸载事件处理句柄,句柄由输入参数handler唯 一确定,事件类型包括资源事件(VI_RSRC_EVENT)、系统事件(VI_SYS_EVENT)、 异常事件(VI_EXCEPTION),当事件类型参数设为所有事件(VI_ALL_EVENTS)时, 以上三种类型事件句柄均被卸载。

4) 相关项:参见viEventHandler()、viEnableEvent()。 5) 实现要求:卸装的句柄一定要先安装。

16、 viQueryHandlers(vi,eventType,handlers,userHandle) 1) 目标:查询事件已安装句柄

2) 参数表:

参数名 输入/输出方向 数据类型 描述

vi 输入 ViSession 对话通道标识符(句柄) eventType 输入 ViEventType 事件标识符

handlers 输出 ViPHndlr 应用程序中的事件句柄 userHandle 输出 ViAddr 事件句柄值 3) 返回状态值: 完成代码:

VI_SUCCESS 查询事件句柄完成 错误代码:

VI_ERROR_INV_SESSION vi不能标识正当对话通道 VI_ERROR_RSRC_LOCKED 存取锁定模式不支持特定操作 VI_ERROR_INV_EVENT 特定事件不存在或不被支持

4) 描述:该操作查询一种事件类型的所有已安装的事件句柄。

5) 相关项:参见viInstallHandler()、viUnInstallHandler()。 6) 实现要求:无。

17、 viAcknowledgeEvent(vi,eventType,context) 1) 目标:对事件通知作响应 2) 参数表:

参数名 输入/输出方向 数据类型 描述

vi 输入 ViSession 对话通道标识符(句柄) eventType 输入 ViEventType 事件标识符 context 输入 ViEvent 事件信息 3) 返回状态值: 完成代码:

VI_SUCCESS 事件响应完成 错误代码:

VI_ERROR_INV_SESSION vi不能标识正当对话通道 VI_ERROR_RSRC_LOCKED 存取锁定模式不支持特定操作 VI_ERROR_INV_EVENT 特定事件不存在或不被支持 VI_ERROR_INV_CONTEXT 事件信息不合法

4) 描述:该操作响应已经报告的事件发生,事件发生由信息结构唯一确定。 5) 相关项:参见viEventHandler()、viInstallHandler()。 6) 实现要求:资源将在接收到所有通知后才对事件作出响应。 18、 viWaitOnEvent(vi,eventType,timeout,outContext)

viWaitOnMultipleEvents(vi,eventTypeList,timeout,outContext, outEventType)

1) 目标:等待特定事件的发生 2) 参数表:

参数名 输入/输出方向 数据类型 描述

vi 输入 ViSession 对话通道标识符(句柄) eventType 输入 ViPEventType 事件标识符 eventTypeList 输入 ViPUInt16 事件标识符列表 timeout 输入 ViUInt32 操作超时值

outContext 输出 ViPEvent 事件信息

outEventType 输出 ViEventType 返回事件类型 3) 返回状态值: 完成代码:

VI_SUCCESS 事件等待完成

VI_SUCCESS_QUEUE_EMPTY 事件等待完成,事件队列空 VI_WARN_QUEUE_TRIP 事件等待完成。队列中有多个事件 VI_WARN_QUEUE_FULL 事件等待完成。队列已满

VI_WARN_QUEUE_OVERFLOW 事件等待完成。队列溢出且有事件丢失 错误代码:

VI_ERROR_INV_SESSION vi不能标识正当对话通道 VI_ERROR_RSRC_LOCKED 存取锁定模式不支持特定操作 VI_ERROR_INV_EVENT 特定事件不存在或不被支持 VI_ERROR_INV_CONTEXT 事件信息不合法 VI_ERROR_TMO 操作超时

VI_ERROR_QUEUE_TRIP 队列中事件过多 VI_ERROR_QUEUE_FULL 队列满

VI_ERROR_QUEUE_OVERFLOW 队列事件溢出

4) 描述:viWaitOnEvent()等待一个事件,viWaitOnMultipleEvents()等待 多个事件。

5) 相关项:参见viEnableEvent()。

6) 实现要求:当超时值为VI_INFINITE时,则会无限制等待下去。 19、 viDiscardEvents(vi,eventType,mechanism) 1) 目标:刷新一个对话通道上的事件发生 2) 参数表:

参数名 输入/输出方向 数据类型 描述

vi 输入 ViSession 对话通道标识符(句柄) eventType 输入 ViEventType 事件标识符 mechanism 输入 ViUInt16 事件处理机制 3) 返回状态值: 完成代码:

VI_SUCCESS 事件刷新完成

VI_SUCCESS_QUEUE_EMPTY 事件刷新完成,事件队列空 错误代码:

VI_ERROR_INV_SESSION vi不能标识正当对话通道 VI_ERROR_RSRC_LOCKED 存取锁定模式不支持特定操作 VI_ERROR_INV_EVENT 特定事件不存在或不被支持 VI_ERROR_INV_MECH 事件处理机制不当

4) 描述:该操作刷新队列中所有事件发生与事件登录,所有未被处理事件的信息 也将被丢掉。

5) 相关项:参见viEnableEvent()。 6) 实现要求:该操作会引起事件丢失。

20、 viGetEventInfo(vi,eventType,context,rsrcName,info) 1) 目标:获取前一个事件发生的信息


第三章 虚拟仪器系统IO接口软件(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:主立井改造施工组织设计

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: