pascalSCADA OPM: psOPCDA

Pascal SCADA OPM

Unit psOPCDA

Description

*******************************************************

Overview

Classes, Interfaces, Objects and Records

Name Description
Record OPCGROUPHEADER  
Record OPCITEMHEADER1  
Record OPCITEMHEADER2  
Record OPCGROUPHEADERWRITE  
Record OPCITEMHEADERWRITE  
Record OPCITEMSTATE  
Record OPCSERVERSTATUS  
Record OPCITEMDEF  
Record OPCITEMATTRIBUTES  
Record OPCITEMRESULT  
Record OPCITEMPROPERTY  
Record OPCITEMPROPERTIES  
Record OPCBROWSEELEMENT  
Record OPCITEMVQT  
Interface IOPCServer  
Interface IOPCServerPublicGroups  
Interface IOPCBrowseServerAddressSpace  
Interface IOPCGroupStateMgt  
Interface IOPCPublicGroupStateMgt  
Interface IOPCSyncIO  
Interface IOPCAsyncIO  
Interface IOPCItemMgt  
Interface IEnumOPCItemAttributes  
Interface IOPCDataCallback  
Interface IOPCAsyncIO2  
Interface IOPCItemProperties  
Interface IOPCItemDeadbandMgt  
Interface IOPCItemSamplingMgt  
Interface IOPCBrowse  
Interface IOPCItemIO  
Interface IOPCSyncIO2  
Interface IOPCAsyncIO3  
Interface IOPCGroupStateMgt2  

Functions and Procedures

procedure OPCDARegisterClipboardFormats;

Types

OPCDATASOURCE = TOleEnum;
OPCBROWSETYPE = TOleEnum;
OPCNAMESPACETYPE = TOleEnum;
OPCBROWSEDIRECTION = TOleEnum;
OPCEUTYPE = TOleEnum;
OPCSERVERSTATE = TOleEnum;
OPCENUMSCOPE = TOleEnum;
OPCBROWSEFILTER = TOleEnum;
POPCGROUPHEADER = ˆOPCGROUPHEADER;
POPCITEMHEADER1 = ˆOPCITEMHEADER1;
OPCITEMHEADER1ARRAY = array[0..65535] of OPCITEMHEADER1;
POPCITEMHEADER1ARRAY = ˆOPCITEMHEADER1ARRAY;
POPCITEMHEADER2 = ˆOPCITEMHEADER2;
OPCITEMHEADER2ARRAY = array[0..65535] of OPCITEMHEADER2;
POPCITEMHEADER2ARRAY = ˆOPCITEMHEADER2ARRAY;
POPCGROUPHEADERWRITE = ˆOPCGROUPHEADERWRITE;
POPCITEMHEADERWRITE = ˆOPCITEMHEADERWRITE;
OPCITEMHEADERWRITEARRAY = array[0..65535] of OPCITEMHEADERWRITE;
POPCITEMHEADERWRITEARRAY = ˆOPCITEMHEADERWRITEARRAY;
POPCITEMSTATE = ˆOPCITEMSTATE;
OPCITEMSTATEARRAY = array[0..65535] of OPCITEMSTATE;
POPCITEMSTATEARRAY = ˆOPCITEMSTATEARRAY;
POPCSERVERSTATUS = ˆOPCSERVERSTATUS;
POPCITEMDEF = ˆOPCITEMDEF;
OPCITEMDEFARRAY = array[0..65535] of OPCITEMDEF;
POPCITEMDEFARRAY = ˆOPCITEMDEFARRAY;
POPCITEMATTRIBUTES = ˆOPCITEMATTRIBUTES;
OPCITEMATTRIBUTESARRAY = array[0..65535] of OPCITEMATTRIBUTES;
POPCITEMATTRIBUTESARRAY = ˆOPCITEMATTRIBUTESARRAY;
POPCITEMRESULT = ˆOPCITEMRESULT;
OPCITEMRESULTARRAY = array[0..65535] of OPCITEMRESULT;
POPCITEMRESULTARRAY = ˆOPCITEMRESULTARRAY;
POPCITEMPROPERTY = ˆOPCITEMPROPERTY;
OPCITEMPROPERTYARRAY = array[0..65535] of OPCITEMPROPERTY;
POPCITEMPROPERTYARRAY = ˆOPCITEMPROPERTYARRAY;
POPCITEMPROPERTIES = ˆOPCITEMPROPERTIES;
OPCITEMPROPERTIESARRAY = array[0..65535] of OPCITEMPROPERTIES;
POPCITEMPROPERTIESARRAY = ˆOPCITEMPROPERTIESARRAY;
POPCBROWSEELEMENT = ˆOPCBROWSEELEMENT;
OPCBROWSEELEMENTARRAY = array[0..65535] of OPCBROWSEELEMENT;
POPCBROWSEELEMENTARRAY = ˆOPCBROWSEELEMENTARRAY;
POPCITEMVQT = ˆOPCITEMVQT;
OPCITEMVQTARRAY = array[0..65535] of OPCITEMVQT;
POPCITEMVQTARRAY = ˆOPCITEMVQTARRAY;

Constants

LIBID_OPCDA: TGUID = '{3B540B51-0378-4551-ADCC-EA9B104302BF}';
IID_IOPCServer: TIID = '{39C13A4D-011E-11D0-9675-0020AFD8ADB3}';
IID_IOPCServerPublicGroups: TIID = '{39C13A4E-011E-11D0-9675-0020AFD8ADB3}';
IID_IOPCBrowseServerAddressSpace: TIID = '{39C13A4F-011E-11D0-9675-0020AFD8ADB3}';
IID_IOPCGroupStateMgt: TIID = '{39C13A50-011E-11D0-9675-0020AFD8ADB3}';
IID_IOPCPublicGroupStateMgt: TIID = '{39C13A51-011E-11D0-9675-0020AFD8ADB3}';
IID_IOPCSyncIO: TIID = '{39C13A52-011E-11D0-9675-0020AFD8ADB3}';
IID_IOPCAsyncIO: TIID = '{39C13A53-011E-11D0-9675-0020AFD8ADB3}';
IID_IOPCItemMgt: TIID = '{39C13A54-011E-11D0-9675-0020AFD8ADB3}';
IID_IEnumOPCItemAttributes: TIID = '{39C13A55-011E-11D0-9675-0020AFD8ADB3}';
IID_IOPCDataCallback: TIID = '{39C13A70-011E-11D0-9675-0020AFD8ADB3}';
IID_IOPCAsyncIO2: TIID = '{39C13A71-011E-11D0-9675-0020AFD8ADB3}';
IID_IOPCItemProperties: TIID = '{39C13A72-011E-11D0-9675-0020AFD8ADB3}';
IID_IOPCItemDeadbandMgt: TIID = '{5946DA93-8B39-4ec8-AB3D-AA73DF5BC86F}';
IID_IOPCItemSamplingMgt: TIID = '{3E22D313-F08B-41a5-86C8-95E95CB49FFC}';
IID_IOPCBrowse: TIID = '{39227004-A18F-4b57-8B0A-5235670F4468}';
IID_IOPCItemIO: TIID = '{85C0B427-2893-4cbc-BD78-E5FC5146F08F}';
IID_IOPCSyncIO2: TIID = '{730F5F0F-55B1-4c81-9E18-FF8A0904E1FA}';
IID_IOPCAsyncIO3: TIID = '{0967B97B-36EF-423e-B6F8-6BFF1E40D39D}';
IID_IOPCGroupStateMgt2: TIID = '{8E368666-D72E-4f78-87ED-647611C61C9F}';
CATID_OPCDAServer10: TGUID = '{63D5F430-CFE4-11d1-B2C8-0060083BA1FB}';
CATID_OPCDAServer20: TGUID = '{63D5F432-CFE4-11d1-B2C8-0060083BA1FB}';
CATID_OPCDAServer30: TGUID = '{CC603642-66D7-48f1-B69A-B625E73652D7}';
CATID_XMLDAServer10: TGUID = '{3098EDA4-A006-48b2-A27F-247453959408}';
OPC_DS_CACHE = 1;
OPC_DS_DEVICE = 2;
OPC_BRANCH = 1;
OPC_LEAF = 2;
OPC_FLAT = 3;
OPC_NS_HIERARCHIAL = 1;
OPC_NS_FLAT = 2;
OPC_BROWSE_UP = 1;
OPC_BROWSE_DOWN = 2;
OPC_BROWSE_TO = 3;
OPC_NOENUM = 0;
OPC_ANALOG = 1;
OPC_ENUMERATED = 2;
OPC_STATUS_RUNNING = 1;
OPC_STATUS_FAILED = 2;
OPC_STATUS_NOCONFIG = 3;
OPC_STATUS_SUSPENDED = 4;
OPC_STATUS_TEST = 5;
OPC_STATUS_COMM_FAULT = 6;
OPC_ENUM_PRIVATE_CONNECTIONS = 1;
OPC_ENUM_PUBLIC_CONNECTIONS = 2;
OPC_ENUM_ALL_CONNECTIONS = 3;
OPC_ENUM_PRIVATE = 4;
OPC_ENUM_PUBLIC = 5;
OPC_ENUM_ALL = 6;
OPC_BROWSE_FILTER_ALL = 1;
OPC_BROWSE_FILTER_BRANCHES = 2;
OPC_BROWSE_FILTER_ITEMS = 3;
OPC_CATEGORY_DESCRIPTION_DA10 = 'OPC Data Access Servers Version 1.0';
OPC_CATEGORY_DESCRIPTION_DA20 = 'OPC Data Access Servers Version 2.0';
OPC_CATEGORY_DESCRIPTION_DA30 = 'OPC Data Access Servers Version 3.0';
OPC_CATEGORY_DESCRIPTION_XMLDA10 = 'OPC XML Data Access Servers Version 1.0';
OPC_READABLE = $01;
OPC_WRITEABLE = $02;
OPC_BROWSE_HASCHILDREN = $01;
OPC_BROWSE_ISITEM = $02;
OPC_QUALITY_MASK = $C0;
OPC_STATUS_MASK = $FC;
OPC_LIMIT_MASK = $03;
OPC_QUALITY_BAD = $00;
OPC_QUALITY_UNCERTAIN = $40;
OPC_QUALITY_GOOD = $C0;
OPC_QUALITY_CONFIG_ERROR = $04;
OPC_QUALITY_NOT_CONNECTED = $08;
OPC_QUALITY_DEVICE_FAILURE = $0C;
OPC_QUALITY_SENSOR_FAILURE = $10;
OPC_QUALITY_LAST_KNOWN = $14;
OPC_QUALITY_COMM_FAILURE = $18;
OPC_QUALITY_OUT_OF_SERVICE = $1C;
OPC_QUALITY_WAITING_FOR_INITIAL_DATA = $20;
OPC_QUALITY_LAST_USABLE = $44;
OPC_QUALITY_SENSOR_CAL = $50;
OPC_QUALITY_EGU_EXCEEDED = $54;
OPC_QUALITY_SUB_NORMAL = $58;
OPC_QUALITY_LOCAL_OVERRIDE = $D8;
OPC_LIMIT_OK = $00;
OPC_LIMIT_LOW = $01;
OPC_LIMIT_HIGH = $02;
OPC_LIMIT_CONST = $03;
OPC_PROP_CDT = 1;
OPC_PROP_VALUE = 2;
OPC_PROP_QUALITY = 3;
OPC_PROP_TIME = 4;
OPC_PROP_RIGHTS = 5;
OPC_PROP_SCANRATE = 6;
OPC_PROP_UNIT = 100;
OPC_PROP_DESC = 101;
OPC_PROP_HIEU = 102;
OPC_PROP_LOEU = 103;
OPC_PROP_HIRANGE = 104;
OPC_PROP_LORANGE = 105;
OPC_PROP_CLOSE = 106;
OPC_PROP_OPEN = 107;
OPC_PROP_TIMEZONE = 108;
OPC_PROP_DSP = 200;
OPC_PROP_FGC = 201;
OPC_PROP_BGC = 202;
OPC_PROP_BLINK = 203;
OPC_PROP_BMP = 204;
OPC_PROP_SND = 205;
OPC_PROP_HTML = 206;
OPC_PROP_AVI = 207;
OPC_PROP_ALMSTAT = 300;
OPC_PROP_ALMHELP = 301;
OPC_PROP_ALMAREAS = 302;
OPC_PROP_ALMPRIMARYAREA = 303;
OPC_PROP_ALMCONDITION = 304;
OPC_PROP_ALMLIMIT = 305;
OPC_PROP_ALMDB = 306;
OPC_PROP_ALMHH = 307;
OPC_PROP_ALMH = 308;
OPC_PROP_ALML = 309;
OPC_PROP_ALMLL = 310;
OPC_PROP_ALMROC = 311;
OPC_PROP_ALMDEV = 312;
OPC_PROPERTY_DATATYPE = 1;
OPC_PROPERTY_VALUE = 2;
OPC_PROPERTY_QUALITY = 3;
OPC_PROPERTY_TIMESTAMP = 4;
OPC_PROPERTY_ACCESS_RIGHTS = 5;
OPC_PROPERTY_SCAN_RATE = 6;
OPC_PROPERTY_EU_TYPE = 7;
OPC_PROPERTY_EU_INFO = 8;
OPC_PROPERTY_EU_UNITS = 100;
OPC_PROPERTY_DESCRIPTION = 101;
OPC_PROPERTY_HIGH_EU = 102;
OPC_PROPERTY_LOW_EU = 103;
OPC_PROPERTY_HIGH_IR = 104;
OPC_PROPERTY_LOW_IR = 105;
OPC_PROPERTY_CLOSE_LABEL = 106;
OPC_PROPERTY_OPEN_LABEL = 107;
OPC_PROPERTY_TIMEZONE = 108;
OPC_PROPERTY_CONDITION_STATUS = 300;
OPC_PROPERTY_ALARM_QUICK_HELP = 301;
OPC_PROPERTY_ALARM_AREA_LIST = 302;
OPC_PROPERTY_PRIMARY_ALARM_AREA = 303;
OPC_PROPERTY_CONDITION_LOGIC = 304;
OPC_PROPERTY_LIMIT_EXCEEDED = 305;
OPC_PROPERTY_DEADBAND = 306;
OPC_PROPERTY_HIHI_LIMIT = 307;
OPC_PROPERTY_HI_LIMIT = 308;
OPC_PROPERTY_LO_LIMIT = 309;
OPC_PROPERTY_LOLO_LIMIT = 310;
OPC_PROPERTY_CHANGE_RATE_LIMIT = 311;
OPC_PROPERTY_DEVIATION_LIMIT = 312;
OPC_PROPERTY_SOUND_FILE = 313;
OPC_PROPERTY_DESC_DATATYPE = 'Item Canonical Data Type';
OPC_PROPERTY_DESC_VALUE = 'Item Value';
OPC_PROPERTY_DESC_QUALITY = 'Item Quality';
OPC_PROPERTY_DESC_TIMESTAMP = 'Item Timestamp';
OPC_PROPERTY_DESC_ACCESS_RIGHTS = 'Item Access Rights';
OPC_PROPERTY_DESC_SCAN_RATE = 'Server Scan Rate';
OPC_PROPERTY_DESC_EU_TYPE = 'Item EU Type';
OPC_PROPERTY_DESC_EU_INFO = 'Item EU Info';
OPC_PROPERTY_DESC_EU_UNITS = 'EU Units';
OPC_PROPERTY_DESC_DESCRIPTION = 'Item Description';
OPC_PROPERTY_DESC_HIGH_EU = 'High EU';
OPC_PROPERTY_DESC_LOW_EU = 'Low EU';
OPC_PROPERTY_DESC_HIGH_IR = 'High Instrument Range';
OPC_PROPERTY_DESC_LOW_IR = 'Low Instrument Range';
OPC_PROPERTY_DESC_CLOSE_LABEL = 'Contact Close Label';
OPC_PROPERTY_DESC_OPEN_LABEL = 'Contact Open Label';
OPC_PROPERTY_DESC_TIMEZONE = 'Item Timezone';
OPC_PROPERTY_DESC_CONDITION_STATUS = 'Condition Status';
OPC_PROPERTY_DESC_ALARM_QUICK_HELP = 'Alarm Quick Help';
OPC_PROPERTY_DESC_ALARM_AREA_LIST = 'Alarm Area List';
OPC_PROPERTY_DESC_PRIMARY_ALARM_AREA = 'Primary Alarm Area';
OPC_PROPERTY_DESC_CONDITION_LOGIC = 'Condition Logic';
OPC_PROPERTY_DESC_LIMIT_EXCEEDED = 'Limit Exceeded';
OPC_PROPERTY_DESC_DEADBAND = 'Deadband';
OPC_PROPERTY_DESC_HIHI_LIMIT = 'HiHi Limit';
OPC_PROPERTY_DESC_HI_LIMIT = 'Hi Limit';
OPC_PROPERTY_DESC_LO_LIMIT = 'Lo Limit';
OPC_PROPERTY_DESC_LOLO_LIMIT = 'LoLo Limit';
OPC_PROPERTY_DESC_CHANGE_RATE_LIMIT = 'Rate of Change Limit';
OPC_PROPERTY_DESC_DEVIATION_LIMIT = 'Deviation Limit';
OPC_PROPERTY_DESC_SOUND_FILE = 'Sound File';

Variables

OPCSTMFORMATDATA: UINT;
OPCSTMFORMATDATATIME: UINT;
OPCSTMFORMATWRITECOMPLETE: UINT;

Description

Functions and Procedures

procedure OPCDARegisterClipboardFormats;

Register clipboard formats for use with IDataObject / IAdviseSink

Types

OPCDATASOURCE = TOleEnum;

*********************************************************************// Declaration of Enumerations defined in Type Library // *********************************************************************//

OPCBROWSETYPE = TOleEnum;
 
OPCNAMESPACETYPE = TOleEnum;
 
OPCBROWSEDIRECTION = TOleEnum;
 
OPCEUTYPE = TOleEnum;
 
OPCSERVERSTATE = TOleEnum;
 
OPCENUMSCOPE = TOleEnum;
 
OPCBROWSEFILTER = TOleEnum;
 
POPCGROUPHEADER = ˆOPCGROUPHEADER;
 
POPCITEMHEADER1 = ˆOPCITEMHEADER1;
 
OPCITEMHEADER1ARRAY = array[0..65535] of OPCITEMHEADER1;
 
POPCITEMHEADER1ARRAY = ˆOPCITEMHEADER1ARRAY;
 
POPCITEMHEADER2 = ˆOPCITEMHEADER2;
 
OPCITEMHEADER2ARRAY = array[0..65535] of OPCITEMHEADER2;
 
POPCITEMHEADER2ARRAY = ˆOPCITEMHEADER2ARRAY;
 
POPCGROUPHEADERWRITE = ˆOPCGROUPHEADERWRITE;
 
POPCITEMHEADERWRITE = ˆOPCITEMHEADERWRITE;
 
OPCITEMHEADERWRITEARRAY = array[0..65535] of OPCITEMHEADERWRITE;
 
POPCITEMHEADERWRITEARRAY = ˆOPCITEMHEADERWRITEARRAY;
 
POPCITEMSTATE = ˆOPCITEMSTATE;
 
OPCITEMSTATEARRAY = array[0..65535] of OPCITEMSTATE;
 
POPCITEMSTATEARRAY = ˆOPCITEMSTATEARRAY;
 
POPCSERVERSTATUS = ˆOPCSERVERSTATUS;
 
POPCITEMDEF = ˆOPCITEMDEF;
 
OPCITEMDEFARRAY = array[0..65535] of OPCITEMDEF;
 
POPCITEMDEFARRAY = ˆOPCITEMDEFARRAY;
 
POPCITEMATTRIBUTES = ˆOPCITEMATTRIBUTES;
 
OPCITEMATTRIBUTESARRAY = array[0..65535] of OPCITEMATTRIBUTES;
 
POPCITEMATTRIBUTESARRAY = ˆOPCITEMATTRIBUTESARRAY;
 
POPCITEMRESULT = ˆOPCITEMRESULT;
 
OPCITEMRESULTARRAY = array[0..65535] of OPCITEMRESULT;
 
POPCITEMRESULTARRAY = ˆOPCITEMRESULTARRAY;
 
POPCITEMPROPERTY = ˆOPCITEMPROPERTY;
 
OPCITEMPROPERTYARRAY = array[0..65535] of OPCITEMPROPERTY;
 
POPCITEMPROPERTYARRAY = ˆOPCITEMPROPERTYARRAY;
 
POPCITEMPROPERTIES = ˆOPCITEMPROPERTIES;
 
OPCITEMPROPERTIESARRAY = array[0..65535] of OPCITEMPROPERTIES;
 
POPCITEMPROPERTIESARRAY = ˆOPCITEMPROPERTIESARRAY;
 
POPCBROWSEELEMENT = ˆOPCBROWSEELEMENT;
 
OPCBROWSEELEMENTARRAY = array[0..65535] of OPCBROWSEELEMENT;
 
POPCBROWSEELEMENTARRAY = ˆOPCBROWSEELEMENTARRAY;
 
POPCITEMVQT = ˆOPCITEMVQT;
 
OPCITEMVQTARRAY = array[0..65535] of OPCITEMVQT;
 
POPCITEMVQTARRAY = ˆOPCITEMVQTARRAY;
 

Constants

LIBID_OPCDA: TGUID = '{3B540B51-0378-4551-ADCC-EA9B104302BF}';

*********************************************************************// GUIDS declared in the TypeLibrary // *********************************************************************//

IID_IOPCServer: TIID = '{39C13A4D-011E-11D0-9675-0020AFD8ADB3}';
 
IID_IOPCServerPublicGroups: TIID = '{39C13A4E-011E-11D0-9675-0020AFD8ADB3}';
 
IID_IOPCBrowseServerAddressSpace: TIID = '{39C13A4F-011E-11D0-9675-0020AFD8ADB3}';
 
IID_IOPCGroupStateMgt: TIID = '{39C13A50-011E-11D0-9675-0020AFD8ADB3}';
 
IID_IOPCPublicGroupStateMgt: TIID = '{39C13A51-011E-11D0-9675-0020AFD8ADB3}';
 
IID_IOPCSyncIO: TIID = '{39C13A52-011E-11D0-9675-0020AFD8ADB3}';
 
IID_IOPCAsyncIO: TIID = '{39C13A53-011E-11D0-9675-0020AFD8ADB3}';
 
IID_IOPCItemMgt: TIID = '{39C13A54-011E-11D0-9675-0020AFD8ADB3}';
 
IID_IEnumOPCItemAttributes: TIID = '{39C13A55-011E-11D0-9675-0020AFD8ADB3}';
 
IID_IOPCDataCallback: TIID = '{39C13A70-011E-11D0-9675-0020AFD8ADB3}';
 
IID_IOPCAsyncIO2: TIID = '{39C13A71-011E-11D0-9675-0020AFD8ADB3}';
 
IID_IOPCItemProperties: TIID = '{39C13A72-011E-11D0-9675-0020AFD8ADB3}';
 
IID_IOPCItemDeadbandMgt: TIID = '{5946DA93-8B39-4ec8-AB3D-AA73DF5BC86F}';
 
IID_IOPCItemSamplingMgt: TIID = '{3E22D313-F08B-41a5-86C8-95E95CB49FFC}';
 
IID_IOPCBrowse: TIID = '{39227004-A18F-4b57-8B0A-5235670F4468}';
 
IID_IOPCItemIO: TIID = '{85C0B427-2893-4cbc-BD78-E5FC5146F08F}';
 
IID_IOPCSyncIO2: TIID = '{730F5F0F-55B1-4c81-9E18-FF8A0904E1FA}';
 
IID_IOPCAsyncIO3: TIID = '{0967B97B-36EF-423e-B6F8-6BFF1E40D39D}';
 
IID_IOPCGroupStateMgt2: TIID = '{8E368666-D72E-4f78-87ED-647611C61C9F}';
 
CATID_OPCDAServer10: TGUID = '{63D5F430-CFE4-11d1-B2C8-0060083BA1FB}';
 
CATID_OPCDAServer20: TGUID = '{63D5F432-CFE4-11d1-B2C8-0060083BA1FB}';
 
CATID_OPCDAServer30: TGUID = '{CC603642-66D7-48f1-B69A-B625E73652D7}';
 
CATID_XMLDAServer10: TGUID = '{3098EDA4-A006-48b2-A27F-247453959408}';
 
OPC_DS_CACHE = 1;
 
OPC_DS_DEVICE = 2;
 
OPC_BRANCH = 1;
 
OPC_LEAF = 2;
 
OPC_FLAT = 3;
 
OPC_NS_HIERARCHIAL = 1;
 
OPC_NS_FLAT = 2;
 
OPC_BROWSE_UP = 1;
 
OPC_BROWSE_DOWN = 2;
 
OPC_BROWSE_TO = 3;
 
OPC_NOENUM = 0;
 
OPC_ANALOG = 1;
 
OPC_ENUMERATED = 2;
 
OPC_STATUS_RUNNING = 1;
 
OPC_STATUS_FAILED = 2;
 
OPC_STATUS_NOCONFIG = 3;
 
OPC_STATUS_SUSPENDED = 4;
 
OPC_STATUS_TEST = 5;
 
OPC_STATUS_COMM_FAULT = 6;
 
OPC_ENUM_PRIVATE_CONNECTIONS = 1;
 
OPC_ENUM_PUBLIC_CONNECTIONS = 2;
 
OPC_ENUM_ALL_CONNECTIONS = 3;
 
OPC_ENUM_PRIVATE = 4;
 
OPC_ENUM_PUBLIC = 5;
 
OPC_ENUM_ALL = 6;
 
OPC_BROWSE_FILTER_ALL = 1;
 
OPC_BROWSE_FILTER_BRANCHES = 2;
 
OPC_BROWSE_FILTER_ITEMS = 3;
 
OPC_CATEGORY_DESCRIPTION_DA10 = 'OPC Data Access Servers Version 1.0';

*********************************************************************// Constants // *********************************************************************// Category description strings

OPC_CATEGORY_DESCRIPTION_DA20 = 'OPC Data Access Servers Version 2.0';
 
OPC_CATEGORY_DESCRIPTION_DA30 = 'OPC Data Access Servers Version 3.0';
 
OPC_CATEGORY_DESCRIPTION_XMLDA10 = 'OPC XML Data Access Servers Version 1.0';
 
OPC_READABLE = $01;

Values for access rights mask

OPC_WRITEABLE = $02;
 
OPC_BROWSE_HASCHILDREN = $01;

Values for browse element flags

OPC_BROWSE_ISITEM = $02;
 
OPC_QUALITY_MASK = $C0;

*********************************************************************// OPC Quality flags // *********************************************************************// Masks for extracting quality subfields (note 'status' mask also includes 'Quality' bits)

OPC_STATUS_MASK = $FC;
 
OPC_LIMIT_MASK = $03;
 
OPC_QUALITY_BAD = $00;

Values for QUALITY_MASK bit field

OPC_QUALITY_UNCERTAIN = $40;
 
OPC_QUALITY_GOOD = $C0;
 
OPC_QUALITY_CONFIG_ERROR = $04;

STATUS_MASK Values for Quality = BAD

OPC_QUALITY_NOT_CONNECTED = $08;
 
OPC_QUALITY_DEVICE_FAILURE = $0C;
 
OPC_QUALITY_SENSOR_FAILURE = $10;
 
OPC_QUALITY_LAST_KNOWN = $14;
 
OPC_QUALITY_COMM_FAILURE = $18;
 
OPC_QUALITY_OUT_OF_SERVICE = $1C;
 
OPC_QUALITY_WAITING_FOR_INITIAL_DATA = $20;
 
OPC_QUALITY_LAST_USABLE = $44;

STATUS_MASK Values for Quality = UNCERTAIN

OPC_QUALITY_SENSOR_CAL = $50;
 
OPC_QUALITY_EGU_EXCEEDED = $54;
 
OPC_QUALITY_SUB_NORMAL = $58;
 
OPC_QUALITY_LOCAL_OVERRIDE = $D8;

STATUS_MASK Values for Quality = GOOD

OPC_LIMIT_OK = $00;

Values for Limit Bitfield

OPC_LIMIT_LOW = $01;
 
OPC_LIMIT_HIGH = $02;
 
OPC_LIMIT_CONST = $03;
 
OPC_PROP_CDT = 1;

*********************************************************************// Data Access 2.0 Property IDs: // *********************************************************************//

OPC_PROP_VALUE = 2;
 
OPC_PROP_QUALITY = 3;
 
OPC_PROP_TIME = 4;
 
OPC_PROP_RIGHTS = 5;
 
OPC_PROP_SCANRATE = 6;
 
OPC_PROP_UNIT = 100;
 
OPC_PROP_DESC = 101;
 
OPC_PROP_HIEU = 102;
 
OPC_PROP_LOEU = 103;
 
OPC_PROP_HIRANGE = 104;
 
OPC_PROP_LORANGE = 105;
 
OPC_PROP_CLOSE = 106;
 
OPC_PROP_OPEN = 107;
 
OPC_PROP_TIMEZONE = 108;
 
OPC_PROP_DSP = 200;
 
OPC_PROP_FGC = 201;
 
OPC_PROP_BGC = 202;
 
OPC_PROP_BLINK = 203;
 
OPC_PROP_BMP = 204;
 
OPC_PROP_SND = 205;
 
OPC_PROP_HTML = 206;
 
OPC_PROP_AVI = 207;
 
OPC_PROP_ALMSTAT = 300;
 
OPC_PROP_ALMHELP = 301;
 
OPC_PROP_ALMAREAS = 302;
 
OPC_PROP_ALMPRIMARYAREA = 303;
 
OPC_PROP_ALMCONDITION = 304;
 
OPC_PROP_ALMLIMIT = 305;
 
OPC_PROP_ALMDB = 306;
 
OPC_PROP_ALMHH = 307;
 
OPC_PROP_ALMH = 308;
 
OPC_PROP_ALML = 309;
 
OPC_PROP_ALMLL = 310;
 
OPC_PROP_ALMROC = 311;
 
OPC_PROP_ALMDEV = 312;
 
OPC_PROPERTY_DATATYPE = 1;

*********************************************************************// Data Access 3.0 Property IDs: // *********************************************************************//

OPC_PROPERTY_VALUE = 2;
 
OPC_PROPERTY_QUALITY = 3;
 
OPC_PROPERTY_TIMESTAMP = 4;
 
OPC_PROPERTY_ACCESS_RIGHTS = 5;
 
OPC_PROPERTY_SCAN_RATE = 6;
 
OPC_PROPERTY_EU_TYPE = 7;
 
OPC_PROPERTY_EU_INFO = 8;
 
OPC_PROPERTY_EU_UNITS = 100;
 
OPC_PROPERTY_DESCRIPTION = 101;
 
OPC_PROPERTY_HIGH_EU = 102;
 
OPC_PROPERTY_LOW_EU = 103;
 
OPC_PROPERTY_HIGH_IR = 104;
 
OPC_PROPERTY_LOW_IR = 105;
 
OPC_PROPERTY_CLOSE_LABEL = 106;
 
OPC_PROPERTY_OPEN_LABEL = 107;
 
OPC_PROPERTY_TIMEZONE = 108;
 
OPC_PROPERTY_CONDITION_STATUS = 300;
 
OPC_PROPERTY_ALARM_QUICK_HELP = 301;
 
OPC_PROPERTY_ALARM_AREA_LIST = 302;
 
OPC_PROPERTY_PRIMARY_ALARM_AREA = 303;
 
OPC_PROPERTY_CONDITION_LOGIC = 304;
 
OPC_PROPERTY_LIMIT_EXCEEDED = 305;
 
OPC_PROPERTY_DEADBAND = 306;
 
OPC_PROPERTY_HIHI_LIMIT = 307;
 
OPC_PROPERTY_HI_LIMIT = 308;
 
OPC_PROPERTY_LO_LIMIT = 309;
 
OPC_PROPERTY_LOLO_LIMIT = 310;
 
OPC_PROPERTY_CHANGE_RATE_LIMIT = 311;
 
OPC_PROPERTY_DEVIATION_LIMIT = 312;
 
OPC_PROPERTY_SOUND_FILE = 313;
 
OPC_PROPERTY_DESC_DATATYPE = 'Item Canonical Data Type';

*********************************************************************// Data Access 3.0 Property Descriptions: // *********************************************************************//

OPC_PROPERTY_DESC_VALUE = 'Item Value';
 
OPC_PROPERTY_DESC_QUALITY = 'Item Quality';
 
OPC_PROPERTY_DESC_TIMESTAMP = 'Item Timestamp';
 
OPC_PROPERTY_DESC_ACCESS_RIGHTS = 'Item Access Rights';
 
OPC_PROPERTY_DESC_SCAN_RATE = 'Server Scan Rate';
 
OPC_PROPERTY_DESC_EU_TYPE = 'Item EU Type';
 
OPC_PROPERTY_DESC_EU_INFO = 'Item EU Info';
 
OPC_PROPERTY_DESC_EU_UNITS = 'EU Units';
 
OPC_PROPERTY_DESC_DESCRIPTION = 'Item Description';
 
OPC_PROPERTY_DESC_HIGH_EU = 'High EU';
 
OPC_PROPERTY_DESC_LOW_EU = 'Low EU';
 
OPC_PROPERTY_DESC_HIGH_IR = 'High Instrument Range';
 
OPC_PROPERTY_DESC_LOW_IR = 'Low Instrument Range';
 
OPC_PROPERTY_DESC_CLOSE_LABEL = 'Contact Close Label';
 
OPC_PROPERTY_DESC_OPEN_LABEL = 'Contact Open Label';
 
OPC_PROPERTY_DESC_TIMEZONE = 'Item Timezone';
 
OPC_PROPERTY_DESC_CONDITION_STATUS = 'Condition Status';
 
OPC_PROPERTY_DESC_ALARM_QUICK_HELP = 'Alarm Quick Help';
 
OPC_PROPERTY_DESC_ALARM_AREA_LIST = 'Alarm Area List';
 
OPC_PROPERTY_DESC_PRIMARY_ALARM_AREA = 'Primary Alarm Area';
 
OPC_PROPERTY_DESC_CONDITION_LOGIC = 'Condition Logic';
 
OPC_PROPERTY_DESC_LIMIT_EXCEEDED = 'Limit Exceeded';
 
OPC_PROPERTY_DESC_DEADBAND = 'Deadband';
 
OPC_PROPERTY_DESC_HIHI_LIMIT = 'HiHi Limit';
 
OPC_PROPERTY_DESC_HI_LIMIT = 'Hi Limit';
 
OPC_PROPERTY_DESC_LO_LIMIT = 'Lo Limit';
 
OPC_PROPERTY_DESC_LOLO_LIMIT = 'LoLo Limit';
 
OPC_PROPERTY_DESC_CHANGE_RATE_LIMIT = 'Rate of Change Limit';
 
OPC_PROPERTY_DESC_DEVIATION_LIMIT = 'Deviation Limit';
 
OPC_PROPERTY_DESC_SOUND_FILE = 'Sound File';
 

Variables

OPCSTMFORMATDATA: UINT;

OPC data stream formats

OPCSTMFORMATDATATIME: UINT;
 
OPCSTMFORMATWRITECOMPLETE: UINT;
 

Generated by PasDoc 0.14.0.