通訊協(xié)議022——全網(wǎng)獨(dú)有的OPC AE知識(shí)四之接口(六)

本文簡(jiǎn)單介紹OPC AE規(guī)范的接口IConnectionPointContainer的相關(guān)知識(shí),更多通信資源請(qǐng)登錄網(wǎng)信智匯(wangxinzhihui.com)。OPC AE規(guī)范描述了OPC事件服務(wù)器應(yīng)該實(shí)現(xiàn)的對(duì)象和接口,實(shí)現(xiàn)在多個(gè)OPC客戶端間共享事件和警報(bào)條件。
1、IConnectionPointContainer
這里沒(méi)有討論連接點(diǎn)的一般原則,因?yàn)樗鼈冊(cè)贛icrosoft文檔。假定讀者熟悉這項(xiàng)技術(shù)。
同樣,IEnumConnectionPoints、IConnectionPoint和IEnumConnections的詳細(xì)信息接口及其在本文中的正確使用由Microsoft進(jìn)行了很好的定義,在此不進(jìn)行討論。
這里討論的IConnectionPointContainer接口是在OPCEventServer上實(shí)現(xiàn)的對(duì)象。理論上,可以在IOPCEventServer接口內(nèi)實(shí)現(xiàn)連接點(diǎn)的訂閱和取消訂閱的方法。然而,使用單獨(dú)的ConnectionPoint實(shí)現(xiàn)更符合最先進(jìn)的Microsoft實(shí)現(xiàn)。
假設(shè)客戶端應(yīng)用程序?qū)崿F(xiàn)的IOPCShutdown回調(diào)對(duì)象為單個(gè)事件服務(wù)器,因?yàn)闆](méi)有標(biāo)識(shí)信息傳遞給客戶端。
注:符合OPC標(biāo)準(zhǔn)的服務(wù)器不需要支持每個(gè)事件服務(wù)器之間的多個(gè)連接。鑒于此,預(yù)計(jì)單個(gè)連接將足以實(shí)現(xiàn)所有應(yīng)用程序。因此(根據(jù)Microsoft建議)對(duì)于調(diào)用IOPCShutdown::ShutdownRequest的IConnectionPoint接口的EnumConnections方法,允許返回E_NOTIMPL。
?2、EnumConnectionPoints
有關(guān)此方法的說(shuō)明,請(qǐng)參閱Microsoft文檔。
OPC事件服務(wù)器必須返回一個(gè)包含IOPCShutdown的枚舉器。其他供應(yīng)商還允許特定的回調(diào)。
?3、FindConnectionPoint
有關(guān)此方法的說(shuō)明,請(qǐng)參閱Microsoft文檔。
?OPC事件服務(wù)器必須支持IID_ IOPCShutdown。其他供應(yīng)商還允許特定的回調(diào)。
?4、IConnectionPoint
從事件服務(wù)器的ConnectionPointContainer返回IOPCShutdown的一個(gè)IConnectionPoint。有關(guān)其他信息,請(qǐng)參閱此界面的Microsoft文檔關(guān)于其方法的信息,其中包括訂閱和取消訂閱。
?未完待續(xù),更多通信資源請(qǐng)登錄網(wǎng)信智匯(wangxinzhihui.com)。