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

📄 opchda.h

📁 OPC客户程序所需要的头文件。 OPC基金会产品。 适用于opc1.0和opc2.0规范。
💻 H
📖 第 1 页 / 共 5 页
字号:
    /* [size_is] */ VARIANT *pvDataValues;
    /* [size_is] */ FILETIME *pftModificationTime;
    /* [size_is] */ OPCHDA_EDITTYPE *pEditType;
    /* [size_is] */ LPWSTR *szUser;
    } 	OPCHDA_MODIFIEDITEM;

typedef struct tagOPCHDA_ATTRIBUTE
    {
    OPCHANDLE hClient;
    DWORD dwNumValues;
    DWORD dwAttributeID;
    /* [size_is] */ FILETIME *ftTimeStamps;
    /* [size_is] */ VARIANT *vAttributeValues;
    } 	OPCHDA_ATTRIBUTE;

typedef struct tagOPCHDA_TIME
    {
    BOOL bString;
    /* [string] */ LPWSTR szTime;
    FILETIME ftTime;
    } 	OPCHDA_TIME;

typedef struct tagOPCHDA_ITEM
    {
    OPCHANDLE hClient;
    DWORD haAggregate;
    DWORD dwCount;
    /* [size_is] */ FILETIME *pftTimeStamps;
    /* [size_is] */ DWORD *pdwQualities;
    /* [size_is] */ VARIANT *pvDataValues;
    } 	OPCHDA_ITEM;



extern RPC_IF_HANDLE __MIDL_itf_opchda_0115_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_opchda_0115_v0_0_s_ifspec;

#ifndef __IOPCHDA_Browser_INTERFACE_DEFINED__
#define __IOPCHDA_Browser_INTERFACE_DEFINED__

/* interface IOPCHDA_Browser */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID_IOPCHDA_Browser;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1F1217B1-DEE0-11d2-A5E5-000086339399")
    IOPCHDA_Browser : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE GetEnum( 
            /* [in] */ OPCHDA_BROWSETYPE dwBrowseType,
            /* [out] */ LPENUMSTRING *ppIEnumString) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ChangeBrowsePosition( 
            /* [in] */ OPCHDA_BROWSEDIRECTION dwBrowseDirection,
            /* [string][in] */ LPCWSTR szString) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetItemID( 
            /* [string][in] */ LPCWSTR szNode,
            /* [string][out] */ LPWSTR *pszItemID) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetBranchPosition( 
            /* [string][out] */ LPWSTR *pszBranchPos) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IOPCHDA_BrowserVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IOPCHDA_Browser * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IOPCHDA_Browser * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IOPCHDA_Browser * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetEnum )( 
            IOPCHDA_Browser * This,
            /* [in] */ OPCHDA_BROWSETYPE dwBrowseType,
            /* [out] */ LPENUMSTRING *ppIEnumString);
        
        HRESULT ( STDMETHODCALLTYPE *ChangeBrowsePosition )( 
            IOPCHDA_Browser * This,
            /* [in] */ OPCHDA_BROWSEDIRECTION dwBrowseDirection,
            /* [string][in] */ LPCWSTR szString);
        
        HRESULT ( STDMETHODCALLTYPE *GetItemID )( 
            IOPCHDA_Browser * This,
            /* [string][in] */ LPCWSTR szNode,
            /* [string][out] */ LPWSTR *pszItemID);
        
        HRESULT ( STDMETHODCALLTYPE *GetBranchPosition )( 
            IOPCHDA_Browser * This,
            /* [string][out] */ LPWSTR *pszBranchPos);
        
        END_INTERFACE
    } IOPCHDA_BrowserVtbl;

    interface IOPCHDA_Browser
    {
        CONST_VTBL struct IOPCHDA_BrowserVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


#define IOPCHDA_Browser_GetEnum(This,dwBrowseType,ppIEnumString)	\
    (This)->lpVtbl -> GetEnum(This,dwBrowseType,ppIEnumString)

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

#define IOPCHDA_Browser_GetItemID(This,szNode,pszItemID)	\
    (This)->lpVtbl -> GetItemID(This,szNode,pszItemID)

#define IOPCHDA_Browser_GetBranchPosition(This,pszBranchPos)	\
    (This)->lpVtbl -> GetBranchPosition(This,pszBranchPos)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IOPCHDA_Browser_GetEnum_Proxy( 
    IOPCHDA_Browser * This,
    /* [in] */ OPCHDA_BROWSETYPE dwBrowseType,
    /* [out] */ LPENUMSTRING *ppIEnumString);


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


HRESULT STDMETHODCALLTYPE IOPCHDA_Browser_ChangeBrowsePosition_Proxy( 
    IOPCHDA_Browser * This,
    /* [in] */ OPCHDA_BROWSEDIRECTION dwBrowseDirection,
    /* [string][in] */ LPCWSTR szString);


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


HRESULT STDMETHODCALLTYPE IOPCHDA_Browser_GetItemID_Proxy( 
    IOPCHDA_Browser * This,
    /* [string][in] */ LPCWSTR szNode,
    /* [string][out] */ LPWSTR *pszItemID);


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


HRESULT STDMETHODCALLTYPE IOPCHDA_Browser_GetBranchPosition_Proxy( 
    IOPCHDA_Browser * This,
    /* [string][out] */ LPWSTR *pszBranchPos);


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



#endif 	/* __IOPCHDA_Browser_INTERFACE_DEFINED__ */


#ifndef __IOPCHDA_Server_INTERFACE_DEFINED__
#define __IOPCHDA_Server_INTERFACE_DEFINED__

/* interface IOPCHDA_Server */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID_IOPCHDA_Server;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1F1217B0-DEE0-11d2-A5E5-000086339399")
    IOPCHDA_Server : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE GetItemAttributes( 
            /* [out] */ DWORD *pdwCount,
            /* [size_is][size_is][out] */ DWORD **ppdwAttrID,
            /* [string][size_is][size_is][out] */ LPWSTR **ppszAttrName,
            /* [string][size_is][size_is][out] */ LPWSTR **ppszAttrDesc,
            /* [size_is][size_is][out] */ VARTYPE **ppvtAttrDataType) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetAggregates( 
            /* [out] */ DWORD *pdwCount,
            /* [size_is][size_is][out] */ DWORD **ppdwAggrID,
            /* [string][size_is][size_is][out] */ LPWSTR **ppszAggrName,
            /* [string][size_is][size_is][out] */ LPWSTR **ppszAggrDesc) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetHistorianStatus( 
            /* [out] */ OPCHDA_SERVERSTATUS *pwStatus,
            /* [out] */ FILETIME **pftCurrentTime,
            /* [out] */ FILETIME **pftStartTime,
            /* [out] */ WORD *pwMajorVersion,
            /* [out] */ WORD *pwMinorVersion,
            /* [out] */ WORD *pwBuildNumber,
            /* [out] */ DWORD *pdwMaxReturnValues,
            /* [string][out] */ LPWSTR *ppszStatusString,
            /* [string][out] */ LPWSTR *ppszVendorInfo) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetItemHandles( 
            /* [in] */ DWORD dwCount,
            /* [size_is][in] */ LPWSTR *pszItemID,
            /* [size_is][in] */ OPCHANDLE *phClient,
            /* [size_is][size_is][out] */ OPCHANDLE **pphServer,
            /* [size_is][size_is][out] */ HRESULT **ppErrors) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ReleaseItemHandles( 
            /* [in] */ DWORD dwCount,
            /* [size_is][in] */ OPCHANDLE *phServer,
            /* [size_is][size_is][out] */ HRESULT **ppErrors) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ValidateItemIDs( 
            /* [in] */ DWORD dwCount,
            /* [size_is][in] */ LPWSTR *pszItemID,
            /* [size_is][size_is][out] */ HRESULT **ppErrors) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateBrowse( 
            /* [in] */ DWORD dwCount,
            /* [size_is][in] */ DWORD *pdwAttrID,
            /* [size_is][in] */ OPCHDA_OPERATORCODES *pOperator,
            /* [size_is][in] */ VARIANT *vFilter,
            /* [out] */ IOPCHDA_Browser **pphBrowser,
            /* [size_is][size_is][out] */ HRESULT **ppErrors) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IOPCHDA_ServerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IOPCHDA_Server * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IOPCHDA_Server * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IOPCHDA_Server * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetItemAttributes )( 
            IOPCHDA_Server * This,
            /* [out] */ DWORD *pdwCount,
            /* [size_is][size_is][out] */ DWORD **ppdwAttrID,
            /* [string][size_is][size_is][out] */ LPWSTR **ppszAttrName,
            /* [string][size_is][size_is][out] */ LPWSTR **ppszAttrDesc,
            /* [size_is][size_is][out] */ VARTYPE **ppvtAttrDataType);
        
        HRESULT ( STDMETHODCALLTYPE *GetAggregates )( 
            IOPCHDA_Server * This,
            /* [out] */ DWORD *pdwCount,
            /* [size_is][size_is][out] */ DWORD **ppdwAggrID,
            /* [string][size_is][size_is][out] */ LPWSTR **ppszAggrName,
            /* [string][size_is][size_is][out] */ LPWSTR **ppszAggrDesc);
        
        HRESULT ( STDMETHODCALLTYPE *GetHistorianStatus )( 
            IOPCHDA_Server * This,
            /* [out] */ OPCHDA_SERVERSTATUS *pwStatus,
            /* [out] */ FILETIME **pftCurrentTime,
            /* [out] */ FILETIME **pftStartTime,
            /* [out] */ WORD *pwMajorVersion,
            /* [out] */ WORD *pwMinorVersion,
            /* [out] */ WORD *pwBuildNumber,
            /* [out] */ DWORD *pdwMaxReturnValues,
            /* [string][out] */ LPWSTR *ppszStatusString,
            /* [string][out] */ LPWSTR *ppszVendorInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetItemHandles )( 
            IOPCHDA_Server * This,
            /* [in] */ DWORD dwCount,
            /* [size_is][in] */ LPWSTR *pszItemID,
            /* [size_is][in] */ OPCHANDLE *phClient,
            /* [size_is][size_is][out] */ OPCHANDLE **pphServer,
            /* [size_is][size_is][out] */ HRESULT **ppErrors);
        
        HRESULT ( STDMETHODCALLTYPE *ReleaseItemHandles )( 
            IOPCHDA_Server * This,
            /* [in] */ DWORD dwCount,
            /* [size_is][in] */ OPCHANDLE *phServer,
            /* [size_is][size_is][out] */ HRESULT **ppErrors);
        
        HRESULT ( STDMETHODCALLTYPE *ValidateItemIDs )( 
            IOPCHDA_Server * This,
            /* [in] */ DWORD dwCount,
            /* [size_is][in] */ LPWSTR *pszItemID,
            /* [size_is][size_is][out] */ HRESULT **ppErrors);
        
        HRESULT ( STDMETHODCALLTYPE *CreateBrowse )( 
            IOPCHDA_Server * This,
            /* [in] */ DWORD dwCount,
            /* [size_is][in] */ DWORD *pdwAttrID,
            /* [size_is][in] */ OPCHDA_OPERATORCODES *pOperator,
            /* [size_is][in] */ VARIANT *vFilter,
            /* [out] */ IOPCHDA_Browser **pphBrowser,
            /* [size_is][size_is][out] */ HRESULT **ppErrors);
        
        END_INTERFACE
    } IOPCHDA_ServerVtbl;

    interface IOPCHDA_Server
    {
        CONST_VTBL struct IOPCHDA_ServerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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

⌨️ 快捷键说明

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