VirtualBox

source: vbox/trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/dbs.idl@ 30919

Last change on this file since 30919 was 28475, checked in by vboxsync, 15 years ago

crOpenGL: update to wine 1.1.43

  • Property svn:eol-style set to native
File size: 8.8 KB
Line 
1/*
2 * Copyright (C) 2006 Mike McCormack
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19/*
20 * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
21 * other than GPL or LGPL is available it will apply instead, Sun elects to use only
22 * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
23 * a choice of LGPL license versions is made available with the language indicating
24 * that LGPLv2 or any later version may be used, or where a choice of which version
25 * of the LGPL is applied is otherwise unspecified.
26 */
27
28typedef DWORD DBKIND;
29
30enum DBKINDENUM {
31 DBKIND_GUID_NAME,
32 DBKIND_GUID_PROPID,
33 DBKIND_NAME,
34 DBKIND_PGUID_NAME,
35 DBKIND_PGUID_PROPID,
36 DBKIND_PROPID,
37 DBKIND_GUID,
38};
39
40typedef struct tagDBID {
41 [switch_type(DBKIND), switch_is(eKind)] union
42 {
43 [case(DBKIND_GUID_NAME, DBKIND_GUID_PROPID, DBKIND_GUID, DBKIND_NAME, DBKIND_PROPID)]
44 GUID guid;
45 [case(DBKIND_PGUID_NAME, DBKIND_PGUID_PROPID)]
46 GUID *pguid;
47 [default]
48 ;
49 } uGuid;
50 DBKIND eKind;
51 [switch_type(DBKIND), switch_is(eKind)] union
52 {
53 [case(DBKIND_GUID_NAME, DBKIND_NAME, DBKIND_PGUID_NAME)]
54 LPOLESTR pwszName;
55 [case(DBKIND_GUID_PROPID, DBKIND_GUID, DBKIND_PGUID_PROPID, DBKIND_PROPID)]
56 ULONG ulPropid;
57 [default]
58 ;
59 } uName;
60} DBID;
61
62typedef DWORD DBPROPID;
63
64typedef struct tagDBPROPIDSET {
65 [size_is(cPropertyIDs)] DBPROPID *rgPropertyIDs;
66 ULONG cPropertyIDs;
67 GUID guidPropertySet;
68} DBPROPIDSET;
69
70typedef DWORD DBPROPOPTIONS;
71
72enum DBPROPOPTIONENUM {
73 DBPROPOPTIONS_REQUIRED = 0,
74 DBPROPOPTIONS_SETIFCHEAP = 1,
75 DBPROPOPTIONS_OPTIONAL = 1,
76};
77
78typedef DWORD DBPROPSTATUS;
79
80typedef struct tagDBPROP {
81 DBPROPID dwPropertyID;
82 DBPROPOPTIONS dwOptions;
83 DBPROPSTATUS dwStatus;
84 DBID colid;
85 VARIANT vValue;
86} DBPROP;
87
88typedef struct tagDBPROPSET {
89 [size_is(cProperties)] DBPROP *rgProperties;
90 ULONG cProperties;
91 GUID guidPropertySet;
92} DBPROPSET;
93
94typedef DWORD DBPROPFLAGS;
95
96typedef struct tagDBPROPINFO {
97 LPOLESTR pwszDescription;
98 DBPROPID dwPropertyID;
99 DBPROPFLAGS dwFlags;
100 VARTYPE vtType;
101 VARIANT vValues;
102} DBPROPINFO;
103
104typedef DBPROPINFO *PDBPROPINFO;
105
106typedef struct tagDBPROPINFOSET {
107 [size_is(cPropertyInfos)] PDBPROPINFO rgPropertyInfos;
108 ULONG cPropertyInfos;
109 GUID guidPropertySet;
110} DBPROPINFOSET;
111
112typedef DWORD DBBINDURLFLAG;
113typedef DWORD DBBINDURLSTATUS;
114
115typedef struct tagDBIMPLICITSESSION
116{
117 IUnknown *pUnkOuter;
118 IID *piid;
119 IUnknown *pSession;
120} DBIMPLICITSESSION;
121
122typedef WORD DBTYPE;
123
124enum DBTYPEENUM
125{
126 DBTYPE_EMPTY = 0,
127 DBTYPE_NULL = 1,
128 DBTYPE_I2 = 2,
129 DBTYPE_I4 = 3,
130 DBTYPE_R4 = 4,
131 DBTYPE_R8 = 5,
132 DBTYPE_CY = 6,
133 DBTYPE_DATE = 7,
134 DBTYPE_BSTR = 8,
135 DBTYPE_IDISPATCH = 9,
136 DBTYPE_ERROR = 10,
137 DBTYPE_BOOL = 11,
138 DBTYPE_VARIANT = 12,
139 DBTYPE_IUNKNOWN = 13,
140 DBTYPE_DECIMAL = 14,
141 DBTYPE_I1 = 16,
142 DBTYPE_UI1 = 17,
143 DBTYPE_UI2 = 18,
144 DBTYPE_UI4 = 19,
145 DBTYPE_I8 = 20,
146 DBTYPE_UI8 = 21,
147 DBTYPE_GUID = 72,
148 DBTYPE_BYTES = 128,
149 DBTYPE_STR = 129,
150 DBTYPE_WSTR = 130,
151 DBTYPE_NUMERIC = 131,
152 DBTYPE_UDT = 132,
153 DBTYPE_DBDATE = 133,
154 DBTYPE_DBTIME = 134,
155 DBTYPE_DBTIMESTAMP = 135,
156
157 DBTYPE_VECTOR = 0x1000,
158 DBTYPE_ARRAY = 0x2000,
159 DBTYPE_BYREF = 0x4000,
160 DBTYPE_RESERVED = 0x8000
161};
162
163enum DBTYPEENUM15
164{
165 DBTYPE_HCHAPTER = 136
166};
167
168enum DBTYPEENUM20
169{
170 DBTYPE_FILETIME = 64,
171 DBTYPE_PROPVARIANT = 138,
172 DBTYPE_VARNUMERIC = 139
173};
174
175typedef DWORD DBSTATUS;
176
177enum DBSTATUSENUM
178{
179 DBSTATUS_S_OK = 0,
180 DBSTATUS_E_BADACCESSOR = 1,
181 DBSTATUS_E_CANTCONVERTVALUE = 2,
182 DBSTATUS_S_ISNULL = 3,
183 DBSTATUS_S_TRUNCATED = 4,
184 DBSTATUS_E_SIGNMISMATCH = 5,
185 DBSTATUS_E_DATAOVERFLOW = 6,
186 DBSTATUS_E_CANTCREATE = 7,
187 DBSTATUS_E_UNAVAILABLE = 8,
188 DBSTATUS_E_PERMISSIONDENIED = 9,
189 DBSTATUS_E_INTEGRITYVIOLATION = 10,
190 DBSTATUS_E_SCHEMAVIOLATION = 11,
191 DBSTATUS_E_BADSTATUS = 12,
192 DBSTATUS_S_DEFAULT = 13
193};
194
195cpp_quote("#ifdef DBINITCONSTANTS")
196cpp_quote("#ifdef __cplusplus")
197cpp_quote("#define DEFINE_DBGUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \\")
198cpp_quote(" EXTERN_C const GUID name DECLSPEC_HIDDEN; \\")
199cpp_quote(" EXTERN_C const GUID name = \\")
200cpp_quote(" { l, w1, w2, { b1, b2, b3, b4, b5, b6, b7, b8 } }")
201cpp_quote("#else")
202cpp_quote("#define DEFINE_DBGUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \\")
203cpp_quote(" const GUID name DECLSPEC_HIDDEN; \\")
204cpp_quote(" const GUID name = \\")
205cpp_quote(" { l, w1, w2, { b1, b2, b3, b4, b5, b6, b7, b8 } }")
206cpp_quote("#endif")
207cpp_quote("#else")
208cpp_quote("#define DEFINE_DBGUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \\")
209cpp_quote(" EXTERN_C const GUID name DECLSPEC_HIDDEN")
210cpp_quote("#endif")
211
212cpp_quote("DEFINE_DBGUID(DBGUID_SESSION, 0xc8b522f5, 0x5cf3, 0x11ce, 0xad, 0xe5, 0x00, 0xaa, 0x00, 0x44, 0x77, 0x3d);")
213cpp_quote("DEFINE_DBGUID(DBGUID_ROWSET, 0xc8b522f6, 0x5cf3, 0x11ce, 0xad, 0xe5, 0x00, 0xaa, 0x00, 0x44, 0x77, 0x3d);")
214cpp_quote("DEFINE_DBGUID(DBGUID_ROW, 0xc8b522f7, 0x5cf3, 0x11ce, 0xad, 0xe5, 0x00, 0xaa, 0x00, 0x44, 0x77, 0x3d);")
215cpp_quote("DEFINE_DBGUID(DBGUID_STREAM, 0xc8b522f9, 0x5cf3, 0x11ce, 0xad, 0xe5, 0x00, 0xaa, 0x00, 0x44, 0x77, 0x3d);")
216
217typedef struct tagDBCOLUMNACCESS
218{
219 void *pData;
220 DBID columnid;
221 DBLENGTH cbDataLen;
222 DBSTATUS dwStatus;
223 DBLENGTH cbMaxLen;
224 DB_DWRESERVE dwReserved;
225 DBTYPE wType;
226 BYTE bPrecision;
227 BYTE bScale;
228} DBCOLUMNACCESS;
229
230typedef DWORD DBROWSTATUS;
231
232enum DBROWSTATUSENUM
233{
234 DBROWSTATUS_S_OK = 0,
235 /* FIXME */
236 DBROWSTATUS_E_FAIL = 19,
237
238};
239
240typedef DWORD DBPART;
241
242enum DBPARTENUM
243{
244 DBPART_INVALID = 0,
245 DBPART_VALUE = 1,
246 DBPART_LENGTH = 2,
247 DBPART_STATUS = 4,
248};
249
250typedef DWORD DBPARAMIO;
251
252enum DBPARAMIOENUM
253{
254 DBPARAMIO_NOTPARAM = 0,
255 DBPARAMIO_INPUT = 1,
256 DBPARAMIO_OUTPUT = 2,
257};
258
259typedef DWORD DBMEMOWNER;
260
261enum DBMEMOWNERENUM
262{
263 DBMEMOWNER_CLIENTOWNED = 0,
264 DBMEMOWNER_PROVIDEROWNED = 1,
265};
266
267typedef struct tagDBOBJECT
268{
269 DWORD dwFlags;
270 IID iid;
271} DBOBJECT;
272
273typedef struct tagDBBINDEXT
274{
275 [size_is((ULONG)ulExtension)] BYTE *pExtension;
276 DBCOUNTITEM ulExtension;
277} DBBINDEXT;
278
279typedef struct tagDBBINDING
280{
281 DBORDINAL iOrdinal;
282 DBBYTEOFFSET obValue;
283 DBBYTEOFFSET obLength;
284 DBBYTEOFFSET obStatus;
285 ITypeInfo *pTypeInfo;
286 DBOBJECT *pObject;
287 DBBINDEXT *pBindExt;
288 DBPART dwPart;
289 DBMEMOWNER dwMemOwner;
290 DBPARAMIO eParamIO;
291 DBLENGTH cbMaxLen;
292 DWORD dwFlags;
293 DBTYPE wType;
294 BYTE bPrecision;
295 BYTE bScale;
296} DBBINDING;
297
298typedef ULONG_PTR HACCESSOR;
299
300cpp_quote("#define DB_INVALID_HACCESSOR 0x00")
301
302typedef ULONG_PTR HROW;
303
304cpp_quote("#define DB_NULL_HROW 0x00")
305
306typedef ULONG_PTR HWATCHREGION;
307
308cpp_quote("#define DBWATCHREGION_NULL NULL")
309
310typedef ULONG_PTR HCHAPTER;
311
312cpp_quote("#define DB_NULL_HCHAPTER 0x00")
313
314typedef struct tagDBPARAMS
315{
316 void *pData;
317 DB_UPARAMS cParamSets;
318 HACCESSOR hAccessor;
319} DBPARAMS;
320
321typedef DWORD DBASYNCHOP;
322
323enum DBASYNCHOPENUM
324{
325 DBSYNCHOP_OPEN,
326};
327
328typedef DWORD DBASYNCHPHASE;
329
330enum DBASYNCHPHASEENUM
331{
332 DBASYNCHPHASE_INITIALIZATION,
333 DBASYNCHPHASE_POPULATION,
334 DBASYNCHPHASE_COMPLETE,
335 DBASYNCHPHASE_CANCELED,
336};
337
338typedef struct tagRMTPACK
339{
340 ISequentialStream *pISeqStream;
341 ULONG cbData;
342 ULONG cBSTR;
343 [size_is(cBSTR)] BSTR *rgBSTR;
344 ULONG cVARIANT;
345 [size_is(cVARIANT)] VARIANT *rgVARIANT;
346 ULONG cIDISPATCH;
347 [size_is(cIDISPATCH)] IDispatch **rgIDISPATCH;
348 ULONG cIUNKNOWN;
349 [size_is(cIUNKNOWN)] IUnknown **rgIUNKNOWN;
350 ULONG cPROPVARIANT;
351 [size_is(cPROPVARIANT)] PROPVARIANT *rgPROPVARIANT;
352 ULONG cArray;
353 [size_is(cArray)] VARIANT *rgArray;
354} RMTPACK;
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette