⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 opcda.h

📁 用C++ 实现的OPC SERVER的原代码
💻 H
📖 第 1 页 / 共 5 页
字号:
            /* [in] */ OPCBROWSETYPE dwBrowseFilterType,
            /* [string][in] */ LPCWSTR szFilterCriteria,
            /* [in] */ VARTYPE vtDataTypeFilter,
            /* [in] */ DWORD dwAccessRightsFilter,
            /* [out] */ LPENUMSTRING __RPC_FAR *ppIEnumString) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetItemID( 
            /* [in] */ LPWSTR szItemDataID,
            /* [string][out] */ LPWSTR __RPC_FAR *szItemID) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE BrowseAccessPaths( 
            /* [string][in] */ LPCWSTR szItemID,
            /* [out] */ LPENUMSTRING __RPC_FAR *ppIEnumString) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IOPCBrowseServerAddressSpaceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IOPCBrowseServerAddressSpace __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IOPCBrowseServerAddressSpace __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IOPCBrowseServerAddressSpace __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryOrganization )( 
            IOPCBrowseServerAddressSpace __RPC_FAR * This,
            /* [out] */ OPCNAMESPACETYPE __RPC_FAR *pNameSpaceType);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ChangeBrowsePosition )( 
            IOPCBrowseServerAddressSpace __RPC_FAR * This,
            /* [in] */ OPCBROWSEDIRECTION dwBrowseDirection,
            /* [string][in] */ LPCWSTR szString);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *BrowseOPCItemIDs )( 
            IOPCBrowseServerAddressSpace __RPC_FAR * This,
            /* [in] */ OPCBROWSETYPE dwBrowseFilterType,
            /* [string][in] */ LPCWSTR szFilterCriteria,
            /* [in] */ VARTYPE vtDataTypeFilter,
            /* [in] */ DWORD dwAccessRightsFilter,
            /* [out] */ LPENUMSTRING __RPC_FAR *ppIEnumString);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetItemID )( 
            IOPCBrowseServerAddressSpace __RPC_FAR * This,
            /* [in] */ LPWSTR szItemDataID,
            /* [string][out] */ LPWSTR __RPC_FAR *szItemID);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *BrowseAccessPaths )( 
            IOPCBrowseServerAddressSpace __RPC_FAR * This,
            /* [string][in] */ LPCWSTR szItemID,
            /* [out] */ LPENUMSTRING __RPC_FAR *ppIEnumString);
        
        END_INTERFACE
    } IOPCBrowseServerAddressSpaceVtbl;

    interface IOPCBrowseServerAddressSpace
    {
        CONST_VTBL struct IOPCBrowseServerAddressSpaceVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IOPCBrowseServerAddressSpace_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IOPCBrowseServerAddressSpace_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IOPCBrowseServerAddressSpace_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IOPCBrowseServerAddressSpace_QueryOrganization(This,pNameSpaceType)	\
    (This)->lpVtbl -> QueryOrganization(This,pNameSpaceType)

#define IOPCBrowseServerAddressSpace_ChangeBrowsePosition(This,dwBrowseDirection,szString)	\
    (This)->lpVtbl -> ChangeBrowsePosition(This,dwBrowseDirection,szString)

#define IOPCBrowseServerAddressSpace_BrowseOPCItemIDs(This,dwBrowseFilterType,szFilterCriteria,vtDataTypeFilter,dwAccessRightsFilter,ppIEnumString)	\
    (This)->lpVtbl -> BrowseOPCItemIDs(This,dwBrowseFilterType,szFilterCriteria,vtDataTypeFilter,dwAccessRightsFilter,ppIEnumString)

#define IOPCBrowseServerAddressSpace_GetItemID(This,szItemDataID,szItemID)	\
    (This)->lpVtbl -> GetItemID(This,szItemDataID,szItemID)

#define IOPCBrowseServerAddressSpace_BrowseAccessPaths(This,szItemID,ppIEnumString)	\
    (This)->lpVtbl -> BrowseAccessPaths(This,szItemID,ppIEnumString)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IOPCBrowseServerAddressSpace_QueryOrganization_Proxy( 
    IOPCBrowseServerAddressSpace __RPC_FAR * This,
    /* [out] */ OPCNAMESPACETYPE __RPC_FAR *pNameSpaceType);


void __RPC_STUB IOPCBrowseServerAddressSpace_QueryOrganization_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IOPCBrowseServerAddressSpace_ChangeBrowsePosition_Proxy( 
    IOPCBrowseServerAddressSpace __RPC_FAR * This,
    /* [in] */ OPCBROWSEDIRECTION dwBrowseDirection,
    /* [string][in] */ LPCWSTR szString);


void __RPC_STUB IOPCBrowseServerAddressSpace_ChangeBrowsePosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IOPCBrowseServerAddressSpace_BrowseOPCItemIDs_Proxy( 
    IOPCBrowseServerAddressSpace __RPC_FAR * This,
    /* [in] */ OPCBROWSETYPE dwBrowseFilterType,
    /* [string][in] */ LPCWSTR szFilterCriteria,
    /* [in] */ VARTYPE vtDataTypeFilter,
    /* [in] */ DWORD dwAccessRightsFilter,
    /* [out] */ LPENUMSTRING __RPC_FAR *ppIEnumString);


void __RPC_STUB IOPCBrowseServerAddressSpace_BrowseOPCItemIDs_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IOPCBrowseServerAddressSpace_GetItemID_Proxy( 
    IOPCBrowseServerAddressSpace __RPC_FAR * This,
    /* [in] */ LPWSTR szItemDataID,
    /* [string][out] */ LPWSTR __RPC_FAR *szItemID);


void __RPC_STUB IOPCBrowseServerAddressSpace_GetItemID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IOPCBrowseServerAddressSpace_BrowseAccessPaths_Proxy( 
    IOPCBrowseServerAddressSpace __RPC_FAR * This,
    /* [string][in] */ LPCWSTR szItemID,
    /* [out] */ LPENUMSTRING __RPC_FAR *ppIEnumString);


void __RPC_STUB IOPCBrowseServerAddressSpace_BrowseAccessPaths_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IOPCBrowseServerAddressSpace_INTERFACE_DEFINED__ */


#ifndef __IOPCGroupStateMgt_INTERFACE_DEFINED__
#define __IOPCGroupStateMgt_INTERFACE_DEFINED__

/****************************************
 * Generated header for interface: IOPCGroupStateMgt
 * at Wed Oct 14 12:14:58 1998
 * using MIDL 3.01.75
 ****************************************/
/* [unique][uuid][object] */ 



EXTERN_C const IID IID_IOPCGroupStateMgt;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    interface DECLSPEC_UUID("39c13a50-011e-11d0-9675-0020afd8adb3")
    IOPCGroupStateMgt : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE GetState( 
            /* [out] */ DWORD __RPC_FAR *pUpdateRate,
            /* [out] */ BOOL __RPC_FAR *pActive,
            /* [string][out] */ LPWSTR __RPC_FAR *ppName,
            /* [out] */ LONG __RPC_FAR *pTimeBias,
            /* [out] */ FLOAT __RPC_FAR *pPercentDeadband,
            /* [out] */ DWORD __RPC_FAR *pLCID,
            /* [out] */ OPCHANDLE __RPC_FAR *phClientGroup,
            /* [out] */ OPCHANDLE __RPC_FAR *phServerGroup) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetState( 
            /* [in][unique] */ DWORD __RPC_FAR *pRequestedUpdateRate,
            /* [out] */ DWORD __RPC_FAR *pRevisedUpdateRate,
            /* [in][unique] */ BOOL __RPC_FAR *pActive,
            /* [in][unique] */ LONG __RPC_FAR *pTimeBias,
            /* [in][unique] */ FLOAT __RPC_FAR *pPercentDeadband,
            /* [in][unique] */ DWORD __RPC_FAR *pLCID,
            /* [in][unique] */ OPCHANDLE __RPC_FAR *phClientGroup) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetName( 
            /* [string][in] */ LPCWSTR szName) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CloneGroup( 
            /* [string][in] */ LPCWSTR szName,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ LPUNKNOWN __RPC_FAR *ppUnk) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IOPCGroupStateMgtVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IOPCGroupStateMgt __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IOPCGroupStateMgt __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IOPCGroupStateMgt __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetState )( 
            IOPCGroupStateMgt __RPC_FAR * This,
            /* [out] */ DWORD __RPC_FAR *pUpdateRate,
            /* [out] */ BOOL __RPC_FAR *pActive,
            /* [string][out] */ LPWSTR __RPC_FAR *ppName,
            /* [out] */ LONG __RPC_FAR *pTimeBias,
            /* [out] */ FLOAT __RPC_FAR *pPercentDeadband,
            /* [out] */ DWORD __RPC_FAR *pLCID,
            /* [out] */ OPCHANDLE __RPC_FAR *phClientGroup,
            /* [out] */ OPCHANDLE __RPC_FAR *phServerGroup);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetState )( 
            IOPCGroupStateMgt __RPC_FAR * This,
            /* [in][unique] */ DWORD __RPC_FAR *pRequestedUpdateRate,
            /* [out] */ DWORD __RPC_FAR *pRevisedUpdateRate,
            /* [in][unique] */ BOOL __RPC_FAR *pActive,
            /* [in][unique] */ LONG __RPC_FAR *pTimeBias,
            /* [in][unique] */ FLOAT __RPC_FAR *pPercentDeadband,
            /* [in][unique] */ DWORD __RPC_FAR *pLCID,
            /* [in][unique] */ OPCHANDLE __RPC_FAR *phClientGroup);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetName )( 
            IOPCGroupStateMgt __RPC_FAR * This,
            /* [string][in] */ LPCWSTR szName);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CloneGroup )( 
            IOPCGroupStateMgt __RPC_FAR * This,
            /* [string][in] */ LPCWSTR szName,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ LPUNKNOWN __RPC_FAR *ppUnk);
        
        END_INTERFACE
    } IOPCGroupStateMgtVtbl;

    interface IOPCGroupStateMgt
    {
        CONST_VTBL struct IOPCGroupStateMgtVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IOPCGroupStateMgt_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IOPCGroupStateMgt_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IOPCGroupStateMgt_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IOPCGroupStateMgt_GetState(This,pUpdateRate,pActive,ppName,pTimeBias,pPercentDeadband,pLCID,phClientGroup,phServerGroup)	\
    (This)->lpVtbl -> GetState(This,pUpdateRate,pActive,ppName,pTimeBias,pPercentDeadband,pLCID,phClientGroup,phServerGroup)

#define IOPCGroupStateMgt_SetState(This,pRequestedUpdateRate,pRevisedUpdateRate,pActive,pTimeBias,pPercentDeadband,pLCID,phClientGroup)	\
    (This)->lpVtbl -> SetState(This,pRequestedUpdateRate,pRevisedUpdateRate,pActive,pTimeBias,pPercentDeadband,pLCID,phClientGroup)

#define IOPCGroupStateMgt_SetName(This,szName)	\
    (This)->lpVtbl -> SetName(This,szName)

#define IOPCGroupStateMgt_CloneGroup(This,szName,riid,ppUnk)	\
    (This)->lpVtbl -> CloneGroup(This,szName,riid,ppUnk)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IOPCGroupStateMgt_GetState_Proxy( 
    IOPCGroupStateMgt __RPC_FAR * This,
    /* [out] */ DWORD __RPC_FAR *pUpdateRate,
    /* [out] */ BOOL __RPC_FAR *pActive,
    /* [string][out] */ LPWSTR __RPC_FAR *ppName,
    /* [out] */ LONG __RPC_FAR *pTimeBias,
    /* [out] */ FLOAT __RPC_FAR *pPercentDeadband,
    /* [out] */ DWORD __RPC_FAR *pLCID,
    /* [out] */ OPCHANDLE __RPC_FAR *phClientGroup,
    /* [out] */ OPCHANDLE __RPC_FAR *phServerGroup);


void __RPC_STUB IOPCGroupStateMgt_GetState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IOPCGroupStateMgt_SetState_Proxy( 
    IOPCGroupStateMgt __RPC_FAR * This,
    /* [in][unique] */ DWORD __RPC_FAR *pRequestedUpdateRate,
    /* [out] */ DWORD __RPC_FAR *pRevisedUpdateRate,
    /* [in][unique] */ BOOL __RPC_FAR *pActive,
    /* [in][unique] */ LONG __RPC_FAR *pTimeBias,
    /* [in][unique] */ FLOAT __RPC_FAR *pPercentDeadband,
    /* [in][unique] */ DWORD __RPC_FAR *pLCID,
    /* [in][unique] */ OPCHANDLE __RPC_FAR *phClientGroup);


void __RPC_STUB IOPCGroupStateMgt_SetState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IOPCGroupStateMgt_SetName_Proxy( 
    IOPCGroupStateMgt __RPC_FAR * This,
    /* [string][in] */ LPCWSTR szName);


void __RPC_STUB IOPCGroupStateMgt_SetName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IOPCGroupStateMgt_CloneGroup_Proxy( 
    IOPCGroupStateMgt __RPC_FAR * This,
    /* [string][in] */ LPCWSTR szName,
    /* [in] */ REFIID riid,
    /* [iid_is][out] */ LPUNKNOWN __RPC_FAR *ppUnk);


void __RPC_STUB IOPCGroupStateMgt_CloneGroup_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IOPCGroupStateMgt_INTERFACE_DEFINED__ */


#ifndef __IOPCPublicGroupStateMgt_INTERFACE_DEFINED__
#define __IOPCPublicGroupStateMgt_INTERFACE_DEFINED__

/****************************************
 * Generated header for interface: IOPCPublicGroupStateMgt
 * at Wed Oct 14 12:14:58 1998
 * using MIDL 3.01.75
 ****************************************/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -