[go: up one dir, main page]

Menu

[r583]: / trunk / VTS3 / DUDAPI / Vtsapi.h  Maximize  Restore  History

Download this file

178 lines (158 with data), 5.9 kB

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
//Contents of VTSAPI.H
#ifndef __VTSAPI_H_INCLUDED
#define __VTSAPI_H_INCLUDED
typedef unsigned char byte;
typedef unsigned char octet;
typedef unsigned long dword;
typedef unsigned short word;
typedef unsigned short uint;
#include "db.h"
#include "stdobj.h"
#include "VTS.h"
#ifndef _etable
typedef struct {
word propes; //proprietary enumerations begin at this value
dword propmaxes; //max value for proprietary+1
word nes; //number of string pointers which follow
char *estrings[1]; //table of pointers to strings
} etable;
#define _etable 0
#endif
typedef struct {
char *name;
dword dwcons;
} namedw;
typedef struct {
char *name;
octet octetcons;
} nameoctet;
// msdanner 9/04 added:
// structure to hold default property value restrictions defined in EPICS
typedef struct {
double long dlUnsignedMinimum;
double long dlUnsignedMaximum;
double long dlSignedMinimum;
double long dlSignedMaximum;
float fRealMinimum;
float fRealMaximum;
float fRealResolution;
double dDoubleMinimum;
double dDoubleMaximum;
double dDoubleResolution;
BACnetDate dateMinimum;
BACnetDate dateMaximum;
double long dlMaxOctetStringLength;
double long dlMaxCharacterStringLength;
double long dlMaxListLength;
double long dlMaxVariableLengthArray;
} defaultrangelimits;
typedef struct {
char VendorName[64];
char ProductName[128];
char ProductModelNumber[64];
char ProductDescription[128];
word BACnetConformanceClass;
word MaxAPDUSize;
octet SegmentedRequestWindow;
octet SegmentedResponseWindow;
word RouterFunctions;
dword BACnetFunctionalGroups; //bitmap of functional groups supported
octet BACnetCharsets; //bitmap of std charactersets supported
octet BACnetStandardServices[MAX_SERVS_SUPP]; //array of standard services supported
octet BACnetStandardObjects[MAX_DEFINED_OBJ]; //array of standard objects supported
octet DataLinkLayerOptions[MAX_DATALINK_OPTIONS]; //array of data link layers supported
dword MSTPmasterBaudRates[16];
dword MSTPslaveBaudRates[16];
dword PTP232BaudRates[16];
dword PTPmodemBaudRates[16];
dword PTPAutoBaud[2];
dword BACnetFailTimes[MAX_FAIL_TIMES]; //array of Fail Times 29/12/2003 GJB
octet BIBBSupported[MAX_BIBBS]; //msdanner 9/2004: array of booleans indicating support for each BIBB,
defaultrangelimits defaultlimits; //msdanner 9/2004: default limits section,
generic_object far *Database;
octet BBMD; //msdanner 9/2004: indicates support for BBMD functionality
device_obj_type *pDeviceObject; //msdanner 9/2004: points to parsed Device Object. Only valid after parsing database.
} PICSdb;
//bits in RouterFunctions
#define rfNotSupported 0
#define rfSupported 1
//bits in BACnetFunctionalGroups
#define fgHHWS 0x00000001
#define fgPCWS 0x00000002
#define fgCOVEventInitiation 0x00000004
#define fgCOVEventResponse 0x00000008
#define fgEventInitiation 0x00000010
#define fgEventResponse 0x00000020
#define fgClock 0x00000040
#define fgDeviceCommunications 0x00000080
#define fgFiles 0x00000100
#define fgTimeMaster 0x00000200
#define fgVirtualOPI 0x00000400
#define fgReinitialize 0x00000800
#define fgVirtualTerminal 0x00001000
//bits in BACnetStandardServices
#define ssNotSupported 0
#define ssInitiate 1
#define ssExecute 2
//bits in BACnetStandardObjects
#define soNotSupported 0
#define soSupported 1
#define soCreateable 2
#define soDeleteable 4
//bits in DataLinkLayerOptions
//#define dlISO88023_10BASE5 0x0001
//#define dlISO88023_10BASE2 0x0002
//#define dlISO88023_10BASET 0x0004
//#define dlISO88023_fiber 0x0008
//#define dlARCNETcoaxstar 0x0010
//#define dlARCNETcoaxbus 0x0020
//#define dlARCNETtpstar 0x0040
//#define dlARCNETtpbus 0x0080
//#define dlARCNETfiberstar 0x0100
//#define dlMSTPmaster 0x0200
//#define dlMSTPslave 0x0400
//#define dlPTP232 0x0800
//#define dlPTPmodem 0x1000
//#define dlPTPautobaudmodem 0x2000
//#define dlLonTalk 0x4000
//#define dlOther 0x8000
//bits in BACnetCharsets
#define csANSI 0x01 //ANSI X3.4
#define csDBCS 0x02 //IBM/Microsoft DBCS
#define csJIS 0x04 //JIS C 6226
#define csUCS4 0x08 //ISO 10646 (UCS-4)
#define csUCS2 0x10 //ISO 10646 (UCS-2)
#define cs8859 0x20 //ISO 8859-1
//bits in Fail Times
#define ftNotSupported 0 //29/12/2003 GJB
#ifdef __cplusplus //so this header can be used with C++
extern "C" {
#endif
dword APIENTRY VTSAPIgetpropinfo(word,word,char *,word *,word *,word *,word *);
word APIENTRY VTSAPIgetenumtable(word,word,word *,dword *,char *);
word APIENTRY VTSAPIgetdefaultparsetype(dword,HWND);
BOOL APIENTRY VTSAPIgetdefaultpropinfo(word,dword,word *,word *);
word APIENTRY VTSAPIgetpropertystates(word,HWND);
word APIENTRY VTSAPIgetpropertystate(word,word,char *);
bool APIENTRY ReadTextPICS(char *,PICSdb *,int *,int *);
void APIENTRY DeletePICSObject(generic_object *);
int GetStandardServicesSize(void);
char *GetStandardServicesName(int i);
int GetBIBBSize(void);
char *GetBIBBName(int i);
int GetObjectTypeSize(void);
char *GetObjectTypeName(int i);
int GetDataLinkSize(void);
void GetDataLinkString(int i, PICSdb *pd, char *pstrResult);
int GetCharsetSize(void);
char *GetCharsetName(octet csTag);
int GetSpecialFunctionalitySize(void);
char *GetSpecialFunctionalityName(int i);
void *GetEnumTable(int iTableIndex);
// Global variables
extern octet EPICSLengthProtocolServicesSupportedBitstring; //msdanner 9/2004 - used by test 135.1-2003 (k)
extern octet EPICSLengthProtocolObjectTypesSupportedBitstring; //msdanner 9/2004 - used by test 135.1-2003 (l)
#ifdef __cplusplus //end of extern "C" declarations
}
#endif
#endif //__VTSAPI_H_INCLUDED