通讯协议025——全网独有的OPC AE知识四之接口(九)

2023-11-08

本文简单介绍OPC AE规范的OPCEventSubscription对象的相关知识,更多通信资源请登录网信智汇(wangxinzhihui.com)。OPC AE规范描述了OPC事件服务器应该实现的对象和接口,实现在多个OPC客户端间共享事件和警报条件。

OPCEventSubscription对象是OPC事件服务器为管理单个事件订阅而提供的对象。它是通过调用IOPCEventServer::CreateEventSubscription创建的。此对象提供以下接口:

• IUnknown

• IOPCEventSubscriptionMgt

• IConnectionPointContainer

此外,OPCEventSubscription包含一个IID_IOPCEventSink对象,该对象支持IConnectionPoint接口。

客户端和服务器之间的每个订阅都只有一个筛选器,尽管该筛选器可以包括多个条件。客户端可以使用多个订阅实现多个筛选器,每个订阅都有自己的筛选器。建立订阅后,将创建一个默认过滤器,该过滤器相当于“无过滤”,即发送所有事件通知。

定义筛选器范围的标准是消除客户端没有感兴趣的大多数事件,而不必详尽无遗。过滤器的主要原因是减少不必要的通信开销并提高性能。客户端可以对接收到的事件通知进行额外的筛选,进一步精确地自定义显示或存储事件通知。

这些接口中的每一个提供的功能都在本节中进行了定义。

IOPCEventSubscriptionMgt接口指定如何管理对OPC事件信息的特定订阅。它用于指定选择感兴趣事件的标准,指定要在事件通知中返回的供应商特定信息,以及请求刷新所选条件。

IOPCEventSubscriptionMgt接口说明如下。

1)HRESULT SetFilter(

[in] DWORD dwEventType,

[in] DWORD dwNumCategories,

[in, size_is(dwNumCategories)] DWORD* pdwEventCategories, [in] DWORD dwLowSeverity,

[in] DWORD dwHighSeverity,

[in] DWORD dwNumAreas,

[in, size_is(dwNumAreas)] LPWSTR* pszAreaList,

[in] DWORD dwNumSources,

[in, size_is(dwNumSources] LPWSTR* pszSourceList

);

设置要用于事件订阅的筛选条件。

可以使用以下标准选择事件:

•事件类型,即简单、条件或跟踪。

•事件类别

•最低严重性,即严重性大于或等于指定严重性的所有事件。

•最高严重性,即严重性小于或等于指定严重性的所有事件。

•过程区域

•事件源

单个标准的值列表在逻辑上被“或”运算在一起(例如,如果两个事件类别指定,将接收两个类别的事件通知)。如果指定了多个标准,它们将被逻辑地“与”在一起,即仅那些满足所有标准的事件将被选择。例如,指定最低严重性和最高严重性将导致选择事件严重性介于两个值之间。

OPCEventSubscription对象只有一个筛选器。

服务器负责将其内部严重性级别映射为均匀分布在1..1000范围内。希望接收所有严重性事件的客户端应设置dwLowSeverity=1和dwHighSeverity=1000。

服务器可能不支持所有各种筛选条件。给定服务器支持的特定筛选条件可以通过IOPCEventServer::QueryAvailableFilters方法确定。如果指定了服务器不支持的筛选条件,它将忽略该筛选条件并返回S_FALSE。

注意,对于给定条件,如果与确认或恢复正常相对应的事件通知具有与该条件变为活动的事件通知不同的严重性级别,则由于按严重性进行过滤,客户端可能会接收一组通知,但不会接收其他通知。

2)HRESULT GetFilter(

[out] DWORD* pdwEventType,

[out] DWORD* pdwNumCategories,

[out, size_is(,*pdwNumCategories)] DWORD** ppdwEventCategories,

[out] DWORD* pdwLowSeverity,

[out] DWORD* pdwHighSeverity,

[out] DWORD* pdwNumAreas,

[out, size_is(,*pdwNumAreas)] LPWSTR** ppszAreaList

[out] DWORD* pdwNumSources,

[out, size_is(,*pdwNumSources)] LPWSTR** ppszSourceList

 );

返回当前用于事件订阅的筛选器。

如果服务器不支持SetFilter中请求的一个或多个筛选条件,它将为列表返回空数组,并返回指示未对非列表项进行筛选的值。在这些情况下,它不会返回SetFilter中可能已请求但已被忽略的任何筛选器。

3)HRESULT SelectReturnedAttributes(

[in] DWORD dwEventCategory,

[in] DWORD dwCount,

[in, size_is(dwCount)] DWORD* dwAttributeIDs,

);

对于每个事件类别,SelectReturnedAttributes设置要随IOPCEventSink::OnEvent回调中的通知事件一起返回的属性。

可以多次调用此方法,以便为每个唯一值指定要返回的属性事件类型和事件类别对。对于给定的事件类型和事件类别对,属性可以通过将dwCount参数设置为零来“清除”返回的值。如果多次调用相同的事件类型和事件类别对,则最新的调用将生效。

更多通信资源请登录网信智汇(wangxinzhihui.com)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通讯协议025——全网独有的OPC AE知识四之接口(九) 的相关文章

  • Transmission Control Protocol (TCP)

    TCP协议 Transmission Control Protocol 是在IP协议之上的 确保IP数据包可靠传输的协议 TCP协议拥有一些用于解决基于数据包的问题 例如丢包 包序错乱 重复包及包损坏 由于TCP协议是IP协议之上最常用的协
  • 2.HTTP协议(Requset、Response)

    目录 http协议 http报文解析 Http请求报文 浏览器 gt 服务器 1 请求行 2 请求头 3 空行 java处理http请求的常用方法 Http响应报文 服务器 gt 浏览器 1 响应行 2 响应头 3 响应正文 实体内容 ja
  • 解决打印org.apache.http.wire,org.apache.http.headers日志的问题

    最近在调试接口的过程中 发现使用httpClient的时候 控制台输出了很多org apache http wire org apache http headers相关的日志 不便于我观察自己调试业务过程中输出的日志 内容如下 10 02
  • OSI七层模型和TCP/IP五层模型

    一 OSI七层模型 七层模型从下往上依次为物理层 数据链路层 网络层 传输层 会话层 表示层 应用层 各层功能如图所示 应用层 与其它计算机进行通讯的一个应用 它是对应应用程序的通信服务的 例如 一个没有通信功能的自处理程序就不能执行通信的
  • Qt

    Qt UDP广播通信的使用 实战项目使用案例 1 UDP广播介绍 UDP广播地址固定IP地址为 XXX XXX XXX 255 如果向全网段发送广播消息 那么广播地址为 255 255 255 255 如果向单个网段发送广播消息 例如你的I
  • CAN分析仪 USBCAN USB转CAN CAN转换调试器接口卡使用指导

    USBCAN系列便携式CAN分析仪 通过USB接口快速扩展一路CAN通道 使接入CAN网络非常容易 它具有一体式和小巧紧凑的外形 特别适合于随身携带 第一步 将usbcan卡连接电脑如图 usb灯亮红灯 打开 USBCAN系列便携式CAN总
  • 音视频学习笔记(雷神)—技术解析

    音视频技术解析 封装技术 视频压缩编解码 音频压缩编解码 这是技术层 流媒体传输协议 这是网络层 视频播放器解析 解协议 从视频播放器的角度做解析 拿到传输而来的视频数据后 首先要解协议 传输协议 自然的本地视频经过硬盘传输数据自然没有解协
  • BLE连接、配对和绑定

    参考 一篇文章带你解读蓝牙配对绑定 参考 BLE安全之SM剖析 1 参考 BLE安全之SM剖析 2 参考 BLE安全之SM剖析 3 参考 https blog csdn net chengbaojin article details 103
  • 【计算机网络】湖科大微课堂笔记 p50-53 路由选择协议概述、路由信息协议RIP、开放最短路径优先OSPF、边界网关协议BGP的基本工作原理

    文章目录 路由选择协议概述 小结 路由信息协议RIP的基本工作原理 小结 一些例题 开放最短路径优先OSPF的基本工作原理 小结 边界网关协议BGP的基本工作原理 小结 一些例题 路由选择协议概述 因特网采用分层次的路由选择协议 域间路由选
  • 超详细的计算机网络基础知识总结 第四章:网络层

    本文基于 王道计算机考研 计算机网络 其他文章 超详细的计算机网络基础知识 第一章 概述 超详细的计算机网络基础知识 第二章 物理层 超详细的计算机网络基础知识 第三章 数据链路层 超详细的计算机网络基础知识 第五章 传输层 超详细的计算机
  • OSI七层模型以及各层的作用

    OSI七层模型 OSI七层模型包括 应用层 表示层 会话层 传输层 网络层 数据链路层 物理层 具体作用 物理层 主要定义物理设备标准 如网线的接口类型 各种传输介质的传输速率等 主要作用是传输bit流 主要设备 集线器 数据链路层 主要将
  • 基础知识十一、Python解析网络报文之TCP首部报文解析

    文章目录 一 TCP首部解析器的实现 二 测试逻辑 上一节解析了 IP首部报文后 本节继续解析TCP报文首部 TCP协议处于OSI七层模型的传输层 传输层的作用就是负责管理端到端的通信连接问题 连续ARQ automatic repeat
  • 11、每日最新新闻接口,免费好用

    1 前言 在线自定义参数接口 这个是RollToolsApi通用系列接口的其中一个 内部包含了3个小接口 能实现获取分类新闻列表和新闻详情 这个接口的特点是内容更新延迟低 查看接口完整信息 https www mxnzp com doc d
  • 数据结构与算法--用c语言建立队列以及其相关操作

    一 队列的定义和特点 队列与栈一样 也是一种特殊的线性表 与栈 先进后出 不同的是 队列服从 先进先出 也就是元素从队尾进入队列 从队头离开 如图所示 a1最先进入队列 因此最先从对头离开队列 然后是a2 以此类推 二 队列的相关操作及其代
  • 【Linux/C++:modebus通信示例】(带初习配置概括)

    以modbus RTU为例 模拟modbus简单通信原理的代码实现 首先需要配置串口 这里使用的为Configure Virtual Serial Port Driver虚拟串口调试工具 创建COM1 COM2虚拟端口 或另创建一对串口互作
  • 前阿里P6花七天时间整理地方软件测试基础知识,高手请绕道

    可以说软件测试所学习的知识都是在循序渐进的 从更基础的知识逐渐延伸到困难的知识 由此可以看出 基础知识是这些重难点知识延伸的基础 想要升职加薪 基础知识必须牢靠 一 软件测试概述 1 软件缺陷 软件缺陷 又称之为 Bug 即计算机软件或程序
  • 数据通信技术复习资料

    一 分值分布 1 简答题 60分 共12题 5分一个 含画图 填表形式 2 计算题 35分 共4题 3 论述题 5分 共1题 二 考试范围 1 光纤通信技术占20分 2 数据通信原理主要考1 5章 其中4 5章15分的基本概念 第1章15分
  • 编写http接口api及接口自动化测试

    片言 此文中代码都是笔者工作中源码 所以不会很完整 主要摘常见场景的api片段用以举例说明 另 此文主要针对自动化测试人员 尤其有python基础阅读更佳 笔者使用 python3 6 postgresql10 flask 0 12 的环境
  • P2P应用

    目录 一 P2P的简介 二 P2P的工作方式 1 具有集中目录服务器的P2P工作方式 2 具有全分布式结构的P2P文件共享程序 一 P2P的简介 P2P 对等连接 是指两台主机在通信时 并不区分哪一个是服务请求方和哪一个是服务提供方 只要两
  • 毕业设计 HTTP 自助服务

    目录 项目 HTTP 自助服务 介绍 项目展示 背景知识 HTTP 协议 HTTP自主服务编写 sock 套接字编写 Tcp 服务器编写 小组件 锁守卫 lockGuard 测试Tcp服务器运行 编写 HTTP 服务 Tcp 服务中获取监听

随机推荐

  • OpenGL assimp库,编译 ‘File too big‘,‘too many sections’,IFCReaderGen.cpp 中报错

    QT环境下配置Assimp库 MinGW编译器 48条消息 QT环境下配置Assimp库 MinGW编译器 Elsa的迷弟的博客 CSDN博客 IFCReaderGen cpp 中报错 too many sections问题 如下图所示 此
  • SpringBoot整合kafka(实现consumer)

    如何在springboot中集成kafka收消息 1 pom xml引入依赖的jar包
  • 初始化和实例化的区别

    类的初始化 是完成程序执行前的准备工作 在这个阶段 静态的 变量 方法 代码块 会被执行 同时在会开辟一块存储空间用来存放静态的数据 初始化只在类加载的时候执行一次 类的实例化 是指创建一个对象的过程 这个过程中会在堆中开辟内存 将一些非静
  • php模式之装饰器模式2

    原文来自 大胖博客 在上一篇文章中 介绍了如何在代码架构之初 为了以后的扩展方便做的考虑 那么在现实中大部分的情况不是如此 那么我们需要重构这块么 不一定 今天我们使用另一种方式来实现装饰器 假设现在我们处在产品的第二个阶段 有下面第一阶段
  • 前端微信支付步骤(笔记)

    对接了两次微信支付 第一次对接的时候没有做记录下来 这一次把要记录下来 一 获取openId 1 在微信公众平台配置相关信息 具体按照微信官方文档步骤进行配置 mp weixin qq com wiki t reso 2 微信网页授权 文档
  • Js apply方法详解

    Js apply方法详解 主要解决一下几个问题 apply和call的区别在哪里 什么情况下用apply 什么情况下用call apply的其他巧妙用法 一般在什么情况下可以使用apply 首先从网上查到关于apply和call的定义 然后
  • 双重for循环删除数据

    1 倒过来遍历list for int i list size 1 i gt 0 i int item list get i if item 3 list remove item 2 每移除一个元素以后再把i移回来 for int i 0
  • Linux下CH452数码管芯片驱动调试(GPIO模拟I2C)

    1 设备连接 主控板处理器为Cortex A5处理器 内核4 9 0 主控板和CH452引脚定义如下表1 1所示 表1 1 主控板和CH452引脚定义 序号 CH452引脚定义 主控板引脚定义 1 SDA PB29 2 SCL PB30 3
  • 用树莓派搭建远程实时画面传输

    目录 一 材料准备 二 环境搭建 1 树莓派实现局域网监控画面传输 1 树莓派安装系统 2 将摄像头与树莓派连接 3 配置树莓派开发环境 4 让摄像头开始进行画面录制 5 将监控画面服务设置为开机自启 2 内网渗透 1 服务器端frp配置
  • AI考拉技术分享-Node基础架构专题

    前言 2018 年 考拉开始对现有项目的常用的工具库进行整理 包含日期处理 数字处理 logger 等常用工具 并打包成 npm module 方便各个项目使用 后期 我们也将重点分享这部分工具库的使用 大家感兴趣的一起来交流学习 有bug
  • Python爬虫能当副业吗?到了哪个层次能接单?解析能挣钱的方式

    多朋友问我学Python可不可以挣钱 答案是 当然可以 python爬虫肯定是可以当副业的 我身边一个伙伴就靠会python爬虫这一项技能一个月差不多能有一万多收入 他截图给我看的他的收入图是这样的 人家一个月就靠接单这个副业都比很多人主业
  • 开关电源环路稳定性分析(11)——观察法找零极点

    大家好 这里是大话硬件 这篇文章主要是分享如何用观察法直接写出补偿网络中的零极点的表达式 在前面的文章中 我们分别整理了OTA和OPA型的补偿网络 当时有下面的结论 针对某个固定的补偿网络 我们可以用数学的方法推导补偿网络的零极点 比如下面
  • ${ }的用法

    的用法 假设我们定义了一个变量为 file dir1 dir2 dir3 my file txt 我们可以用 分別替换获得不同的值 file 拿掉第一条 及其左边的字串 dir1 dir2 dir3 my file txt file 拿掉最
  • SetCallAsFunctionHandler 相当于lua __call

    首先到google开发者网站上下载v8源码 并按照说明进行编译 在v8中 编译和执行的js代码需要依付于一个空间 上下文 上下文由Context New创建 static Persistent
  • 微服务:什么是微服务?一篇文章让你彻底搞明白

    文章目录 前言 一 微服务介绍 1 什么是微服务 2 微服务由来 3 为什么需要微服务 3 1 早期的单体架构带来的问题 1 复杂性逐渐变高 2 技术债务逐渐上升 3 部署速度逐渐变慢 4 阻碍技术创新 5 无法按需伸缩 3 2 微服务与单
  • Testing-《软件测试》读书笔记(四)

    静态测试是指测试非运行部分 检查和审查 白盒测试是指访问代码 能够查看和审查 静态白盒测试实在不执行的条件下有条理地仔细审查软件设计 体系结构和代码 从而找出软件缺陷的过程 有时也成为结构分析 静态白盒测试的原因 首先是尽早发现软件缺陷 另
  • 机器学习框架/库

    本文汇编了一些机器学习领域的框架 库以及软件 按编程语言排序 C 计算机视觉 CCV 基于C语言 提供缓存 核心的机器视觉库 新颖的机器视觉库 OpenCV 它提供C C Python Java 以及 MATLAB接口 并支持Windows
  • Class 07 - 功能包的安装和 tidyverse 介绍

    Class 07 功能包的安装和 tidyverse 介绍 tidyverse 简介 功能包 package 的安装 tidyverse 的安装 功能包 package 的加载 tidyverse 的加载 功能包 package 的更新 t
  • Mac系统下搭建使用eclipse搭建web开发环境ATS阻止http发布的问题

    应课程要求 今天使用Mac搭建eclipse Tomcat mysql开发环境 在进行简单的jsp页面测试时出现如下情况 原因是苹果收紧对普通http的访问限制 需要关闭App Transport Security ATS 方法是在Info
  • 通讯协议025——全网独有的OPC AE知识四之接口(九)

    本文简单介绍OPC AE规范的OPCEventSubscription对象的相关知识 更多通信资源请登录网信智汇 wangxinzhihui com OPC AE规范描述了OPC事件服务器应该实现的对象和接口 实现在多个OPC客户端间共享事