📄 3.虚拟仪器系统io接口软件.txt
字号:
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) 目标:获取前一个事件发生的信息
2) 参数表:
参数名 输入/输出方向 数据类型 描述
vi 输入 ViSession 对话通道标识符(句柄)
eventType 输入 ViEventType 事件标识符
context 输入/输出 ViEvent 事件信息
rsrcName 输出 ViString 资源名
info 输出 ViAddr 异常事件信息
3) 返回状态值:
完成代码:
VI_SUCCESS 命令传递完成
错误代码:
VI_ERROR_INV_SESSION vi不能标识正当对话通道
VI_ERROR_RSRC_LOCKED 存取锁定模式不支持特定操作
VI_ERROR_INV_EVENT 特定事件不存在或不被支持
4) 描述:该操作用于取回事件处理信息,返回信息包括一个事件信息数据结构。
5) 相关项:参见viRaiseEvent()。
6) 实现要求:无。
21、 viRaiseEvent(vi,eventType,context,target)
1) 目标:通知资源或对话通道事件已发生
2) 参数表:
参数名 输入/输出方向 数据类型 描述
vi 输入 ViSession 对话通道标识符(句柄)
eventType 输入 ViEventType 事件标识符
context 输入 ViEvent 事件信息
target 输入 ViBoolean 请求目标(资源或通道)
3) 返回状态值:
完成代码:
VI_SUCCESS 通知事件发生完成
错误代码:
VI_ERROR_INV_SESSION vi不能标识正当对话通道
VI_ERROR_RSRC_LOCKED 存取锁定模式不支持特定操作
VI_ERROR_INV_TARGET 请求目标不当
VI_ERROR_INV_EVENT 特定事件不存在或不被支持
VI_ERROR_INV_CONTEXT 事件信息不当
VI_ERROR_QUEUE_FULL 事件队列满
VI_ERROR_NENABLED 当前无法感知事件
4) 描述:该操作用于通知资源或通道事件已发生,可以生成除了异常事件之外的
所有类型事件。
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -