ReactOS 0.4.15-dev-7924-g5949c20
dbs.idl
Go to the documentation of this file.
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
19typedef DWORD DBKIND;
20
29};
30
31typedef struct tagDBID {
32 [switch_type(DBKIND), switch_is(eKind)] union
33 {
38 [default]
39 ;
42 [switch_type(DBKIND), switch_is(eKind)] union
43 {
48 [default]
49 ;
52
54
55typedef struct tagDBPROPIDSET {
60
62
67};
68
70
71typedef struct tagDBPROP {
78
79typedef struct tagDBPROPSET {
84
86
87typedef struct tagDBPROPINFO {
94
96
97typedef struct tagDBPROPINFOSET {
102
105
107{
112
113typedef WORD DBTYPE;
114
116{
147
149 DBTYPE_ARRAY = 0x2000,
150 DBTYPE_BYREF = 0x4000,
151 DBTYPE_RESERVED = 0x8000
153
155{
156 DBTYPE_HCHAPTER = 136
158
160{
165
167
169{
185
186cpp_quote("#ifdef DBINITCONSTANTS")
187cpp_quote("#ifdef __cplusplus")
188cpp_quote("#define DEFINE_DBGUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \\")
189cpp_quote(" EXTERN_C const GUID name DECLSPEC_HIDDEN; \\")
190cpp_quote(" EXTERN_C const GUID name = \\")
191cpp_quote(" { l, w1, w2, { b1, b2, b3, b4, b5, b6, b7, b8 } }")
192cpp_quote("#else")
193cpp_quote("#define DEFINE_DBGUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \\")
194cpp_quote(" const GUID name DECLSPEC_HIDDEN; \\")
195cpp_quote(" const GUID name = \\")
196cpp_quote(" { l, w1, w2, { b1, b2, b3, b4, b5, b6, b7, b8 } }")
197cpp_quote("#endif")
198cpp_quote("#else")
199cpp_quote("#define DEFINE_DBGUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \\")
200cpp_quote(" EXTERN_C const GUID name DECLSPEC_HIDDEN")
201cpp_quote("#endif")
202
203cpp_quote("DEFINE_DBGUID(DBGUID_SESSION, 0xc8b522f5, 0x5cf3, 0x11ce, 0xad, 0xe5, 0x00, 0xaa, 0x00, 0x44, 0x77, 0x3d);")
204cpp_quote("DEFINE_DBGUID(DBGUID_ROWSET, 0xc8b522f6, 0x5cf3, 0x11ce, 0xad, 0xe5, 0x00, 0xaa, 0x00, 0x44, 0x77, 0x3d);")
205cpp_quote("DEFINE_DBGUID(DBGUID_ROW, 0xc8b522f7, 0x5cf3, 0x11ce, 0xad, 0xe5, 0x00, 0xaa, 0x00, 0x44, 0x77, 0x3d);")
206cpp_quote("DEFINE_DBGUID(DBGUID_STREAM, 0xc8b522f9, 0x5cf3, 0x11ce, 0xad, 0xe5, 0x00, 0xaa, 0x00, 0x44, 0x77, 0x3d);")
207
208typedef struct tagDBCOLUMNACCESS
209{
210 void *pData;
211 DBID columnid;
212 DBLENGTH cbDataLen;
213 DBSTATUS dwStatus;
214 DBLENGTH cbMaxLen;
215 DB_DWRESERVE dwReserved;
216 DBTYPE wType;
217 BYTE bPrecision;
218 BYTE bScale;
219} DBCOLUMNACCESS;
220
221typedef DWORD DBROWSTATUS;
222
223enum DBROWSTATUSENUM
224{
225 DBROWSTATUS_S_OK = 0,
226 /* FIXME */
227 DBROWSTATUS_E_FAIL = 19,
228
229};
230
231typedef DWORD DBPART;
232
233enum DBPARTENUM
234{
235 DBPART_INVALID = 0,
236 DBPART_VALUE = 1,
237 DBPART_LENGTH = 2,
238 DBPART_STATUS = 4,
239};
240
241typedef DWORD DBPARAMIO;
242
243enum DBPARAMIOENUM
244{
245 DBPARAMIO_NOTPARAM = 0,
246 DBPARAMIO_INPUT = 1,
247 DBPARAMIO_OUTPUT = 2,
248};
249
250typedef DWORD DBMEMOWNER;
251
252enum DBMEMOWNERENUM
253{
254 DBMEMOWNER_CLIENTOWNED = 0,
255 DBMEMOWNER_PROVIDEROWNED = 1,
256};
257
258typedef struct tagDBOBJECT
259{
260 DWORD dwFlags;
261 IID iid;
262} DBOBJECT;
263
264typedef struct tagDBBINDEXT
265{
266 [size_is((ULONG)ulExtension)] BYTE *pExtension;
267 DBCOUNTITEM ulExtension;
268} DBBINDEXT;
269
270typedef struct tagDBBINDING
271{
272 DBORDINAL iOrdinal;
273 DBBYTEOFFSET obValue;
274 DBBYTEOFFSET obLength;
275 DBBYTEOFFSET obStatus;
276 ITypeInfo *pTypeInfo;
277 DBOBJECT *pObject;
278 DBBINDEXT *pBindExt;
279 DBPART dwPart;
280 DBMEMOWNER dwMemOwner;
281 DBPARAMIO eParamIO;
282 DBLENGTH cbMaxLen;
283 DWORD dwFlags;
284 DBTYPE wType;
285 BYTE bPrecision;
286 BYTE bScale;
287} DBBINDING;
288
289typedef ULONG_PTR HACCESSOR;
290
291cpp_quote("#define DB_INVALID_HACCESSOR 0x00")
292
293typedef ULONG_PTR HROW;
294
295cpp_quote("#define DB_NULL_HROW 0x00")
296
297typedef ULONG_PTR HWATCHREGION;
298
299cpp_quote("#define DBWATCHREGION_NULL NULL")
300
301typedef ULONG_PTR HCHAPTER;
302
303cpp_quote("#define DB_NULL_HCHAPTER 0x00")
304
305typedef struct tagDBPARAMS
306{
307 void *pData;
308 DB_UPARAMS cParamSets;
309 HACCESSOR hAccessor;
310} DBPARAMS;
311
312typedef DWORD DBASYNCHOP;
313
314enum DBASYNCHOPENUM
315{
316 DBSYNCHOP_OPEN,
317};
318
319typedef DWORD DBASYNCHPHASE;
320
321enum DBASYNCHPHASEENUM
322{
323 DBASYNCHPHASE_INITIALIZATION,
324 DBASYNCHPHASE_POPULATION,
325 DBASYNCHPHASE_COMPLETE,
326 DBASYNCHPHASE_CANCELED,
327};
328
329typedef struct tagRMTPACK
330{
331 ISequentialStream *pISeqStream;
332 ULONG cbData;
333 ULONG cBSTR;
334 [size_is(cBSTR)] BSTR *rgBSTR;
335 ULONG cVARIANT;
336 [size_is(cVARIANT)] VARIANT *rgVARIANT;
337 ULONG cIDISPATCH;
338 [size_is(cIDISPATCH)] IDispatch **rgIDISPATCH;
339 ULONG cIUNKNOWN;
340 [size_is(cIUNKNOWN)] IUnknown **rgIUNKNOWN;
341 ULONG cPROPVARIANT;
342 [size_is(cPROPVARIANT)] PROPVARIANT *rgPROPVARIANT;
343 ULONG cArray;
344 [size_is(cArray)] VARIANT *rgArray;
345} RMTPACK;
CD3D10_BUFFER_DESC D3D10_BUFFER_DESC cpp_quote(" ~CD3D10_BUFFER_DESC() {}") operator const D3D10_BUFFER_DESC &() const
Definition: d3d10.idl:491
DWORD DBPROPFLAGS
Definition: dbs.idl:85
struct tagDBPROPIDSET DBPROPIDSET
DBTYPEENUM15
Definition: dbs.idl:155
@ DBTYPE_HCHAPTER
Definition: dbs.idl:156
struct tagDBIMPLICITSESSION DBIMPLICITSESSION
DWORD DBBINDURLFLAG
Definition: dbs.idl:103
DBTYPEENUM20
Definition: dbs.idl:160
@ DBTYPE_FILETIME
Definition: dbs.idl:161
@ DBTYPE_VARNUMERIC
Definition: dbs.idl:163
@ DBTYPE_PROPVARIANT
Definition: dbs.idl:162
DBKINDENUM
Definition: dbs.idl:21
@ DBKIND_NAME
Definition: dbs.idl:24
@ DBKIND_PGUID_PROPID
Definition: dbs.idl:26
@ DBKIND_PROPID
Definition: dbs.idl:27
@ DBKIND_GUID
Definition: dbs.idl:28
@ DBKIND_GUID_PROPID
Definition: dbs.idl:23
@ DBKIND_GUID_NAME
Definition: dbs.idl:22
@ DBKIND_PGUID_NAME
Definition: dbs.idl:25
DWORD DBKIND
Definition: dbs.idl:19
DBPROPINFO * PDBPROPINFO
Definition: dbs.idl:95
struct tagDBPROPINFO DBPROPINFO
DWORD DBPROPOPTIONS
Definition: dbs.idl:61
DWORD DBSTATUS
Definition: dbs.idl:166
struct tagDBPROPINFOSET DBPROPINFOSET
struct tagDBID DBID
struct tagDBPROP DBPROP
DBTYPEENUM
Definition: dbs.idl:116
@ DBTYPE_RESERVED
Definition: dbs.idl:151
@ DBTYPE_I1
Definition: dbs.idl:132
@ DBTYPE_CY
Definition: dbs.idl:123
@ DBTYPE_VARIANT
Definition: dbs.idl:129
@ DBTYPE_GUID
Definition: dbs.idl:138
@ DBTYPE_BSTR
Definition: dbs.idl:125
@ DBTYPE_STR
Definition: dbs.idl:140
@ DBTYPE_DATE
Definition: dbs.idl:124
@ DBTYPE_IUNKNOWN
Definition: dbs.idl:130
@ DBTYPE_NULL
Definition: dbs.idl:118
@ DBTYPE_BYREF
Definition: dbs.idl:150
@ DBTYPE_R4
Definition: dbs.idl:121
@ DBTYPE_WSTR
Definition: dbs.idl:141
@ DBTYPE_DBDATE
Definition: dbs.idl:144
@ DBTYPE_EMPTY
Definition: dbs.idl:117
@ DBTYPE_DECIMAL
Definition: dbs.idl:131
@ DBTYPE_UDT
Definition: dbs.idl:143
@ DBTYPE_BYTES
Definition: dbs.idl:139
@ DBTYPE_DBTIMESTAMP
Definition: dbs.idl:146
@ DBTYPE_R8
Definition: dbs.idl:122
@ DBTYPE_ERROR
Definition: dbs.idl:127
@ DBTYPE_I8
Definition: dbs.idl:136
@ DBTYPE_UI4
Definition: dbs.idl:135
@ DBTYPE_UI2
Definition: dbs.idl:134
@ DBTYPE_I2
Definition: dbs.idl:119
@ DBTYPE_ARRAY
Definition: dbs.idl:149
@ DBTYPE_IDISPATCH
Definition: dbs.idl:126
@ DBTYPE_I4
Definition: dbs.idl:120
@ DBTYPE_VECTOR
Definition: dbs.idl:148
@ DBTYPE_BOOL
Definition: dbs.idl:128
@ DBTYPE_NUMERIC
Definition: dbs.idl:142
@ DBTYPE_UI8
Definition: dbs.idl:137
@ DBTYPE_UI1
Definition: dbs.idl:133
@ DBTYPE_DBTIME
Definition: dbs.idl:145
DWORD DBPROPSTATUS
Definition: dbs.idl:69
DBPROPOPTIONENUM
Definition: dbs.idl:63
@ DBPROPOPTIONS_REQUIRED
Definition: dbs.idl:64
@ DBPROPOPTIONS_SETIFCHEAP
Definition: dbs.idl:65
@ DBPROPOPTIONS_OPTIONAL
Definition: dbs.idl:66
struct tagDBPROPSET DBPROPSET
WORD DBTYPE
Definition: dbs.idl:113
DWORD DBBINDURLSTATUS
Definition: dbs.idl:104
DWORD DBPROPID
Definition: dbs.idl:53
DBSTATUSENUM
Definition: dbs.idl:169
@ DBSTATUS_E_PERMISSIONDENIED
Definition: dbs.idl:179
@ DBSTATUS_E_INTEGRITYVIOLATION
Definition: dbs.idl:180
@ DBSTATUS_E_CANTCONVERTVALUE
Definition: dbs.idl:172
@ DBSTATUS_S_OK
Definition: dbs.idl:170
@ DBSTATUS_E_SIGNMISMATCH
Definition: dbs.idl:175
@ DBSTATUS_S_TRUNCATED
Definition: dbs.idl:174
@ DBSTATUS_E_CANTCREATE
Definition: dbs.idl:177
@ DBSTATUS_S_DEFAULT
Definition: dbs.idl:183
@ DBSTATUS_E_BADACCESSOR
Definition: dbs.idl:171
@ DBSTATUS_E_DATAOVERFLOW
Definition: dbs.idl:176
@ DBSTATUS_E_SCHEMAVIOLATION
Definition: dbs.idl:181
@ DBSTATUS_E_UNAVAILABLE
Definition: dbs.idl:178
@ DBSTATUS_E_BADSTATUS
Definition: dbs.idl:182
@ DBSTATUS_S_ISNULL
Definition: dbs.idl:173
unsigned short VARTYPE
Definition: compat.h:2254
unsigned long DWORD
Definition: ntddk_ex.h:95
unsigned short WORD
Definition: ntddk_ex.h:93
static LPOLESTR
Definition: stg_prop.c:27
Definition: dbs.idl:31
union tagDBID::@2835 uName
ULONG ulPropid
Definition: dbs.idl:47
GUID * pguid
Definition: dbs.idl:37
GUID guid
Definition: dbs.idl:35
union tagDBID::@2834 uGuid
LPOLESTR pwszName
Definition: dbs.idl:45
DBKIND eKind
Definition: dbs.idl:41
IUnknown * pSession
Definition: dbs.idl:110
IUnknown * pUnkOuter
Definition: dbs.idl:108
GUID guidPropertySet
Definition: dbs.idl:58
DBPROPID * rgPropertyIDs
Definition: dbs.idl:56
ULONG cPropertyIDs
Definition: dbs.idl:57
GUID guidPropertySet
Definition: dbs.idl:100
ULONG cPropertyInfos
Definition: dbs.idl:99
PDBPROPINFO rgPropertyInfos
Definition: dbs.idl:98
VARIANT vValues
Definition: dbs.idl:92
LPOLESTR pwszDescription
Definition: dbs.idl:88
VARTYPE vtType
Definition: dbs.idl:91
DBPROPFLAGS dwFlags
Definition: dbs.idl:90
DBPROPID dwPropertyID
Definition: dbs.idl:89
DBPROP * rgProperties
Definition: dbs.idl:80
GUID guidPropertySet
Definition: dbs.idl:82
ULONG cProperties
Definition: dbs.idl:81
DBID colid
Definition: dbs.idl:75
DBPROPSTATUS dwStatus
Definition: dbs.idl:74
DBPROPID dwPropertyID
Definition: dbs.idl:72
DBPROPOPTIONS dwOptions
Definition: dbs.idl:73
VARIANT vValue
Definition: dbs.idl:76
uint32_t ULONG
Definition: typedefs.h:59