最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

通訊協(xié)議025——全網(wǎng)獨有的OPC AE知識四之接口(九)

2023-07-27 08:59 作者:zhouwl72  | 我要投稿

本文簡單介紹OPC AE規(guī)范的OPCEventSubscription對象的相關(guān)知識,更多通信資源請登錄網(wǎng)信智匯(wangxinzhihui.com)。OPC AE規(guī)范描述了OPC事件服務(wù)器應(yīng)該實現(xiàn)的對象和接口,實現(xiàn)在多個OPC客戶端間共享事件和警報條件。

OPCEventSubscription對象是OPC事件服務(wù)器為管理單個事件訂閱而提供的對象。它是通過調(diào)用IOPCEventServer::CreateEventSubscription創(chuàng)建的。此對象提供以下接口:

? IUnknown

? IOPCEventSubscriptionMgt

? IConnectionPointContainer

此外,OPCEventSubscription包含一個IID_IOPCEventSink對象,該對象支持IConnectionPoint接口。

客戶端和服務(wù)器之間的每個訂閱都只有一個篩選器,盡管該篩選器可以包括多個條件??蛻舳丝梢允褂枚鄠€訂閱實現(xiàn)多個篩選器,每個訂閱都有自己的篩選器。建立訂閱后,將創(chuàng)建一個默認(rèn)過濾器,該過濾器相當(dāng)于“無過濾”,即發(fā)送所有事件通知。

定義篩選器范圍的標(biāo)準(zhǔn)是消除客戶端沒有感興趣的大多數(shù)事件,而不必詳盡無遺。過濾器的主要原因是減少不必要的通信開銷并提高性能??蛻舳丝梢詫邮盏降氖录ㄖM行額外的篩選,進一步精確地自定義顯示或存儲事件通知。

這些接口中的每一個提供的功能都在本節(jié)中進行了定義。

IOPCEventSubscriptionMgt接口指定如何管理對OPC事件信息的特定訂閱。它用于指定選擇感興趣事件的標(biāo)準(zhǔn),指定要在事件通知中返回的供應(yīng)商特定信息,以及請求刷新所選條件。

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

);

設(shè)置要用于事件訂閱的篩選條件。

可以使用以下標(biāo)準(zhǔn)選擇事件:

?事件類型,即簡單、條件或跟蹤。

?事件類別

?最低嚴(yán)重性,即嚴(yán)重性大于或等于指定嚴(yán)重性的所有事件。

?最高嚴(yán)重性,即嚴(yán)重性小于或等于指定嚴(yán)重性的所有事件。

?過程區(qū)域

?事件源

單個標(biāo)準(zhǔn)的值列表在邏輯上被“或”運算在一起(例如,如果兩個事件類別指定,將接收兩個類別的事件通知)。如果指定了多個標(biāo)準(zhǔn),它們將被邏輯地“與”在一起,即僅那些滿足所有標(biāo)準(zhǔn)的事件將被選擇。例如,指定最低嚴(yán)重性和最高嚴(yán)重性將導(dǎo)致選擇事件嚴(yán)重性介于兩個值之間。

OPCEventSubscription對象只有一個篩選器。

服務(wù)器負(fù)責(zé)將其內(nèi)部嚴(yán)重性級別映射為均勻分布在1..1000范圍內(nèi)。希望接收所有嚴(yán)重性事件的客戶端應(yīng)設(shè)置dwLowSeverity=1和dwHighSeverity=1000。

服務(wù)器可能不支持所有各種篩選條件。給定服務(wù)器支持的特定篩選條件可以通過IOPCEventServer::QueryAvailableFilters方法確定。如果指定了服務(wù)器不支持的篩選條件,它將忽略該篩選條件并返回S_FALSE。

注意,對于給定條件,如果與確認(rèn)或恢復(fù)正常相對應(yīng)的事件通知具有與該條件變?yōu)榛顒拥氖录ㄖ煌膰?yán)重性級別,則由于按嚴(yán)重性進行過濾,客戶端可能會接收一組通知,但不會接收其他通知。

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

?);

返回當(dāng)前用于事件訂閱的篩選器。

如果服務(wù)器不支持SetFilter中請求的一個或多個篩選條件,它將為列表返回空數(shù)組,并返回指示未對非列表項進行篩選的值。在這些情況下,它不會返回SetFilter中可能已請求但已被忽略的任何篩選器。

?

3)HRESULT SelectReturnedAttributes(

[in] DWORD dwEventCategory,

[in] DWORD dwCount,

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

);

對于每個事件類別,SelectReturnedAttributes設(shè)置要隨IOPCEventSink::OnEvent回調(diào)中的通知事件一起返回的屬性。

可以多次調(diào)用此方法,以便為每個唯一值指定要返回的屬性事件類型和事件類別對。對于給定的事件類型和事件類別對,屬性可以通過將dwCount參數(shù)設(shè)置為零來“清除”返回的值。如果多次調(diào)用相同的事件類型和事件類別對,則最新的調(diào)用將生效。

更多通信資源請登錄網(wǎng)信智匯(wangxinzhihui.com)。


通訊協(xié)議025——全網(wǎng)獨有的OPC AE知識四之接口(九)的評論 (共 條)

分享到微博請遵守國家法律
克拉玛依市| 泗阳县| 静海县| 加查县| 阿勒泰市| 安庆市| 旅游| 西宁市| 格尔木市| 罗平县| 射洪县| 田林县| 平顺县| 景东| 红原县| 通山县| 夏津县| 新昌县| 十堰市| 辽源市| 汾西县| 综艺| 武胜县| 东明县| 北宁市| 新竹县| 临夏市| 三台县| 皮山县| 新丰县| 双鸭山市| 宜兴市| 达拉特旗| 衡阳市| 石林| 固阳县| 大埔县| 娱乐| 江西省| 二连浩特市| 临夏市|