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

📄 opcda.h

📁 最简单的VC编写的OPC客户端程序
💻 H
📖 第 1 页 / 共 5 页
字号:
/* this ALWAYS GENERATED file contains the definitions for the interfaces */





/* File created by MIDL compiler version 3.01.75 */

/* at Wed Oct 14 12:14:58 1998

 */

/* Compiler settings for opcda.idl:

    Oicf (OptLev=i2), W1, Zp8, env=Win32, ms_ext, c_ext

    error checks: none

*/

//@@MIDL_FILE_HEADING(  )

#include "rpc.h"

#include "rpcndr.h"

#ifndef COM_NO_WINDOWS_H

#include "windows.h"

#include "ole2.h"

#endif /*COM_NO_WINDOWS_H*/



#ifndef __opcda_h__

#define __opcda_h__



#ifdef __cplusplus

extern "C"{

#endif 



/* Forward Declarations */ 



#ifndef __IOPCServer_FWD_DEFINED__

#define __IOPCServer_FWD_DEFINED__

typedef interface IOPCServer IOPCServer;

#endif 	/* __IOPCServer_FWD_DEFINED__ */





#ifndef __IOPCServerPublicGroups_FWD_DEFINED__

#define __IOPCServerPublicGroups_FWD_DEFINED__

typedef interface IOPCServerPublicGroups IOPCServerPublicGroups;

#endif 	/* __IOPCServerPublicGroups_FWD_DEFINED__ */





#ifndef __IOPCBrowseServerAddressSpace_FWD_DEFINED__

#define __IOPCBrowseServerAddressSpace_FWD_DEFINED__

typedef interface IOPCBrowseServerAddressSpace IOPCBrowseServerAddressSpace;

#endif 	/* __IOPCBrowseServerAddressSpace_FWD_DEFINED__ */





#ifndef __IOPCGroupStateMgt_FWD_DEFINED__

#define __IOPCGroupStateMgt_FWD_DEFINED__

typedef interface IOPCGroupStateMgt IOPCGroupStateMgt;

#endif 	/* __IOPCGroupStateMgt_FWD_DEFINED__ */





#ifndef __IOPCPublicGroupStateMgt_FWD_DEFINED__

#define __IOPCPublicGroupStateMgt_FWD_DEFINED__

typedef interface IOPCPublicGroupStateMgt IOPCPublicGroupStateMgt;

#endif 	/* __IOPCPublicGroupStateMgt_FWD_DEFINED__ */





#ifndef __IOPCSyncIO_FWD_DEFINED__

#define __IOPCSyncIO_FWD_DEFINED__

typedef interface IOPCSyncIO IOPCSyncIO;

#endif 	/* __IOPCSyncIO_FWD_DEFINED__ */





#ifndef __IOPCAsyncIO_FWD_DEFINED__

#define __IOPCAsyncIO_FWD_DEFINED__

typedef interface IOPCAsyncIO IOPCAsyncIO;

#endif 	/* __IOPCAsyncIO_FWD_DEFINED__ */





#ifndef __IOPCItemMgt_FWD_DEFINED__

#define __IOPCItemMgt_FWD_DEFINED__

typedef interface IOPCItemMgt IOPCItemMgt;

#endif 	/* __IOPCItemMgt_FWD_DEFINED__ */





#ifndef __IEnumOPCItemAttributes_FWD_DEFINED__

#define __IEnumOPCItemAttributes_FWD_DEFINED__

typedef interface IEnumOPCItemAttributes IEnumOPCItemAttributes;

#endif 	/* __IEnumOPCItemAttributes_FWD_DEFINED__ */





#ifndef __IOPCDataCallback_FWD_DEFINED__

#define __IOPCDataCallback_FWD_DEFINED__

typedef interface IOPCDataCallback IOPCDataCallback;

#endif 	/* __IOPCDataCallback_FWD_DEFINED__ */





#ifndef __IOPCAsyncIO2_FWD_DEFINED__

#define __IOPCAsyncIO2_FWD_DEFINED__

typedef interface IOPCAsyncIO2 IOPCAsyncIO2;

#endif 	/* __IOPCAsyncIO2_FWD_DEFINED__ */





#ifndef __IOPCItemProperties_FWD_DEFINED__

#define __IOPCItemProperties_FWD_DEFINED__

typedef interface IOPCItemProperties IOPCItemProperties;

#endif 	/* __IOPCItemProperties_FWD_DEFINED__ */





#ifndef __IOPCServer_FWD_DEFINED__

#define __IOPCServer_FWD_DEFINED__

typedef interface IOPCServer IOPCServer;

#endif 	/* __IOPCServer_FWD_DEFINED__ */





#ifndef __IOPCServerPublicGroups_FWD_DEFINED__

#define __IOPCServerPublicGroups_FWD_DEFINED__

typedef interface IOPCServerPublicGroups IOPCServerPublicGroups;

#endif 	/* __IOPCServerPublicGroups_FWD_DEFINED__ */





#ifndef __IOPCBrowseServerAddressSpace_FWD_DEFINED__

#define __IOPCBrowseServerAddressSpace_FWD_DEFINED__

typedef interface IOPCBrowseServerAddressSpace IOPCBrowseServerAddressSpace;

#endif 	/* __IOPCBrowseServerAddressSpace_FWD_DEFINED__ */





#ifndef __IOPCGroupStateMgt_FWD_DEFINED__

#define __IOPCGroupStateMgt_FWD_DEFINED__

typedef interface IOPCGroupStateMgt IOPCGroupStateMgt;

#endif 	/* __IOPCGroupStateMgt_FWD_DEFINED__ */





#ifndef __IOPCPublicGroupStateMgt_FWD_DEFINED__

#define __IOPCPublicGroupStateMgt_FWD_DEFINED__

typedef interface IOPCPublicGroupStateMgt IOPCPublicGroupStateMgt;

#endif 	/* __IOPCPublicGroupStateMgt_FWD_DEFINED__ */





#ifndef __IOPCSyncIO_FWD_DEFINED__

#define __IOPCSyncIO_FWD_DEFINED__

typedef interface IOPCSyncIO IOPCSyncIO;

#endif 	/* __IOPCSyncIO_FWD_DEFINED__ */





#ifndef __IOPCAsyncIO_FWD_DEFINED__

#define __IOPCAsyncIO_FWD_DEFINED__

typedef interface IOPCAsyncIO IOPCAsyncIO;

#endif 	/* __IOPCAsyncIO_FWD_DEFINED__ */





#ifndef __IOPCItemMgt_FWD_DEFINED__

#define __IOPCItemMgt_FWD_DEFINED__

typedef interface IOPCItemMgt IOPCItemMgt;

#endif 	/* __IOPCItemMgt_FWD_DEFINED__ */





#ifndef __IEnumOPCItemAttributes_FWD_DEFINED__

#define __IEnumOPCItemAttributes_FWD_DEFINED__

typedef interface IEnumOPCItemAttributes IEnumOPCItemAttributes;

#endif 	/* __IEnumOPCItemAttributes_FWD_DEFINED__ */





#ifndef __IOPCDataCallback_FWD_DEFINED__

#define __IOPCDataCallback_FWD_DEFINED__

typedef interface IOPCDataCallback IOPCDataCallback;

#endif 	/* __IOPCDataCallback_FWD_DEFINED__ */





#ifndef __IOPCAsyncIO2_FWD_DEFINED__

#define __IOPCAsyncIO2_FWD_DEFINED__

typedef interface IOPCAsyncIO2 IOPCAsyncIO2;

#endif 	/* __IOPCAsyncIO2_FWD_DEFINED__ */





#ifndef __IOPCItemProperties_FWD_DEFINED__

#define __IOPCItemProperties_FWD_DEFINED__

typedef interface IOPCItemProperties IOPCItemProperties;

#endif 	/* __IOPCItemProperties_FWD_DEFINED__ */





/* header files for imported files */

#include "oaidl.h"



void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);

void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 



/****************************************

 * Generated header for interface: __MIDL_itf_opcda_0000

 * at Wed Oct 14 12:14:58 1998

 * using MIDL 3.01.75

 ****************************************/

/* [local] */ 





typedef 

enum tagOPCDATASOURCE

    {	OPC_DS_CACHE	= 1,

	OPC_DS_DEVICE	= OPC_DS_CACHE + 1

    }	OPCDATASOURCE;



typedef 

enum tagOPCBROWSETYPE

    {	OPC_BRANCH	= 1,

	OPC_LEAF	= OPC_BRANCH + 1,

	OPC_FLAT	= OPC_LEAF + 1

    }	OPCBROWSETYPE;



typedef 

enum tagOPCNAMESPACETYPE

    {	OPC_NS_HIERARCHIAL	= 1,

	OPC_NS_FLAT	= OPC_NS_HIERARCHIAL + 1

    }	OPCNAMESPACETYPE;



typedef 

enum tagOPCBROWSEDIRECTION

    {	OPC_BROWSE_UP	= 1,

	OPC_BROWSE_DOWN	= OPC_BROWSE_UP + 1,

	OPC_BROWSE_TO	= OPC_BROWSE_DOWN + 1

    }	OPCBROWSEDIRECTION;



#define OPC_READABLE    1

#define OPC_WRITEABLE   2

typedef 

enum tagOPCEUTYPE

    {	OPC_NOENUM	= 0,

	OPC_ANALOG	= OPC_NOENUM + 1,

	OPC_ENUMERATED	= OPC_ANALOG + 1

    }	OPCEUTYPE;



typedef 

enum tagOPCSERVERSTATE

    {	OPC_STATUS_RUNNING	= 1,

	OPC_STATUS_FAILED	= OPC_STATUS_RUNNING + 1,

	OPC_STATUS_NOCONFIG	= OPC_STATUS_FAILED + 1,

	OPC_STATUS_SUSPENDED	= OPC_STATUS_NOCONFIG + 1,

	OPC_STATUS_TEST	= OPC_STATUS_SUSPENDED + 1

    }	OPCSERVERSTATE;



typedef 

enum tagOPCENUMSCOPE

    {	OPC_ENUM_PRIVATE_CONNECTIONS	= 1,

	OPC_ENUM_PUBLIC_CONNECTIONS	= OPC_ENUM_PRIVATE_CONNECTIONS + 1,

	OPC_ENUM_ALL_CONNECTIONS	= OPC_ENUM_PUBLIC_CONNECTIONS + 1,

	OPC_ENUM_PRIVATE	= OPC_ENUM_ALL_CONNECTIONS + 1,

	OPC_ENUM_PUBLIC	= OPC_ENUM_PRIVATE + 1,

	OPC_ENUM_ALL	= OPC_ENUM_PUBLIC + 1

    }	OPCENUMSCOPE;



typedef DWORD OPCHANDLE;



typedef struct  tagOPCGROUPHEADER

    {

    DWORD dwSize;

    DWORD dwItemCount;

    OPCHANDLE hClientGroup;

    DWORD dwTransactionID;

    HRESULT hrStatus;

    }	OPCGROUPHEADER;



typedef struct  tagOPCITEMHEADER1

    {

    OPCHANDLE hClient;

    DWORD dwValueOffset;

    WORD wQuality;

    WORD wReserved;

    FILETIME ftTimeStampItem;

    }	OPCITEMHEADER1;



typedef struct  tagOPCITEMHEADER2

    {

    OPCHANDLE hClient;

    DWORD dwValueOffset;

    WORD wQuality;

    WORD wReserved;

    }	OPCITEMHEADER2;



typedef struct  tagOPCGROUPHEADERWRITE

    {

    DWORD dwItemCount;

    OPCHANDLE hClientGroup;

    DWORD dwTransactionID;

    HRESULT hrStatus;

    }	OPCGROUPHEADERWRITE;



typedef struct  tagOPCITEMHEADERWRITE

    {

    OPCHANDLE hClient;

    HRESULT dwError;

    }	OPCITEMHEADERWRITE;



typedef struct  tagOPCITEMSTATE

    {

    OPCHANDLE hClient;

    FILETIME ftTimeStamp;

    WORD wQuality;

    WORD wReserved;

    VARIANT vDataValue;

    }	OPCITEMSTATE;



typedef struct  tagOPCSERVERSTATUS

    {

    FILETIME ftStartTime;

    FILETIME ftCurrentTime;

    FILETIME ftLastUpdateTime;

    OPCSERVERSTATE dwServerState;

    DWORD dwGroupCount;

    DWORD dwBandWidth;

    WORD wMajorVersion;

    WORD wMinorVersion;

    WORD wBuildNumber;

    WORD wReserved;

    /* [string] */ LPWSTR szVendorInfo;

    }	OPCSERVERSTATUS;



typedef struct  tagOPCITEMDEF

    {

    /* [string] */ LPWSTR szAccessPath;

    /* [string] */ LPWSTR szItemID;

    BOOL bActive;

    OPCHANDLE hClient;

    DWORD dwBlobSize;

    /* [size_is] */ BYTE __RPC_FAR *pBlob;

    VARTYPE vtRequestedDataType;

    WORD wReserved;

    }	OPCITEMDEF;



typedef struct  tagOPCITEMATTRIBUTES

    {

    /* [string] */ LPWSTR szAccessPath;

    /* [string] */ LPWSTR szItemID;

    BOOL bActive;

    OPCHANDLE hClient;

    OPCHANDLE hServer;

    DWORD dwAccessRights;

    DWORD dwBlobSize;

    /* [size_is] */ BYTE __RPC_FAR *pBlob;

    VARTYPE vtRequestedDataType;

    VARTYPE vtCanonicalDataType;

    OPCEUTYPE dwEUType;

    VARIANT vEUInfo;

    }	OPCITEMATTRIBUTES;



typedef struct  tagOPCITEMRESULT

    {

    OPCHANDLE hServer;

    VARTYPE vtCanonicalDataType;

    WORD wReserved;

    DWORD dwAccessRights;

    DWORD dwBlobSize;

    /* [size_is] */ BYTE __RPC_FAR *pBlob;

    }	OPCITEMRESULT;



#define    OPC_QUALITY_MASK            0xC0

#define    OPC_STATUS_MASK             0xFC

#define    OPC_LIMIT_MASK              0x03

#define    OPC_QUALITY_BAD             0x00

#define    OPC_QUALITY_UNCERTAIN       0x40

#define    OPC_QUALITY_GOOD            0xC0

#define    OPC_QUALITY_CONFIG_ERROR    0x04

#define    OPC_QUALITY_NOT_CONNECTED   0x08

#define    OPC_QUALITY_DEVICE_FAILURE  0x0c

#define    OPC_QUALITY_SENSOR_FAILURE  0x10

#define    OPC_QUALITY_LAST_KNOWN      0x14

#define    OPC_QUALITY_COMM_FAILURE    0x18

#define    OPC_QUALITY_OUT_OF_SERVICE  0x1C

#define    OPC_QUALITY_LAST_USABLE     0x44

#define    OPC_QUALITY_SENSOR_CAL      0x50

#define    OPC_QUALITY_EGU_EXCEEDED    0x54

#define    OPC_QUALITY_SUB_NORMAL      0x58

#define    OPC_QUALITY_LOCAL_OVERRIDE  0xD8

#define    OPC_LIMIT_OK                0x00

#define    OPC_LIMIT_LOW               0x01

#define    OPC_LIMIT_HIGH              0x02

#define    OPC_LIMIT_CONST             0x03





extern RPC_IF_HANDLE __MIDL_itf_opcda_0000_v0_0_c_ifspec;

extern RPC_IF_HANDLE __MIDL_itf_opcda_0000_v0_0_s_ifspec;



#ifndef __IOPCServer_INTERFACE_DEFINED__

#define __IOPCServer_INTERFACE_DEFINED__



/****************************************

 * Generated header for interface: IOPCServer

 * at Wed Oct 14 12:14:58 1998

 * using MIDL 3.01.75

 ****************************************/

⌨️ 快捷键说明

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