source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/unknwn.h@ 1186

Last change on this file since 1186 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 13.1 KB
RevLine 
[1166]1/*** Autogenerated by WIDL 6.4 from include/unknwn.idl - Do not edit ***/
2
3#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__
5#define __REQUIRED_RPCNDR_H_VERSION__ 475
6#endif
7#include <rpc.h>
8#include <rpcndr.h>
9#endif
10
11#ifndef COM_NO_WINDOWS_H
12#include <windows.h>
13#include <ole2.h>
14#endif
15
16#ifndef __unknwn_h__
17#define __unknwn_h__
18
19/* Forward declarations */
20
21#ifndef __IUnknown_FWD_DEFINED__
22#define __IUnknown_FWD_DEFINED__
23typedef interface IUnknown IUnknown;
24#ifdef __cplusplus
25interface IUnknown;
26#endif /* __cplusplus */
27#endif
28
29#ifndef __AsyncIUnknown_FWD_DEFINED__
30#define __AsyncIUnknown_FWD_DEFINED__
31typedef interface AsyncIUnknown AsyncIUnknown;
32#ifdef __cplusplus
33interface AsyncIUnknown;
34#endif /* __cplusplus */
35#endif
36
37#ifndef __IClassFactory_FWD_DEFINED__
38#define __IClassFactory_FWD_DEFINED__
39typedef interface IClassFactory IClassFactory;
40#ifdef __cplusplus
41interface IClassFactory;
42#endif /* __cplusplus */
43#endif
44
45/* Headers for imported files */
46
47#include <wtypes.h>
48
49#ifdef __cplusplus
50extern "C" {
51#endif
52
53/**
54 * This file is part of the mingw-w64 runtime package.
55 * No warranty is given; refer to the file DISCLAIMER within this package.
56 */
57
58/**
59 * This file is part of the mingw-w64 runtime package.
60 * No warranty is given; refer to the file DISCLAIMER within this package.
61 */
62
63#include <winapifamily.h>
64
65#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
66/*****************************************************************************
67 * IUnknown interface
68 */
69#ifndef __IUnknown_INTERFACE_DEFINED__
70#define __IUnknown_INTERFACE_DEFINED__
71
72typedef IUnknown *LPUNKNOWN;
73
74#if defined(__cplusplus) && !defined(CINTERFACE)
75EXTERN_C const IID IID_IUnknown;
76
77extern "C++" {
78 MIDL_INTERFACE("00000000-0000-0000-C000-000000000046")
79 IUnknown {
80 public:
81 BEGIN_INTERFACE
82 virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void **ppvObject) = 0;
83 virtual ULONG STDMETHODCALLTYPE AddRef(void) = 0;
84 virtual ULONG STDMETHODCALLTYPE Release(void) = 0;
85
86 template<class Q>
87 HRESULT STDMETHODCALLTYPE QueryInterface(Q **pp) {
88 return QueryInterface(__uuidof(Q), (void **)pp);
89 }
90 END_INTERFACE
91 };
92}
93__CRT_UUID_DECL(IUnknown, 0x00000000, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
94HRESULT STDMETHODCALLTYPE IUnknown_QueryInterface_Proxy(IUnknown *This, REFIID riid, void **ppvObject);
95void __RPC_STUB IUnknown_QueryInterface_Stub(IRpcStubBuffer *This, IRpcChannelBuffer *_pRpcChannelBuffer, PRPC_MESSAGE _pRpcMessage, DWORD *_pdwStubPhase);
96ULONG STDMETHODCALLTYPE IUnknown_AddRef_Proxy(IUnknown *This);
97void __RPC_STUB IUnknown_AddRef_Stub(IRpcStubBuffer *This, IRpcChannelBuffer *_pRpcChannelBuffer, PRPC_MESSAGE _pRpcMessage, DWORD *_pdwStubPhase);
98ULONG STDMETHODCALLTYPE IUnknown_Release_Proxy(IUnknown *This);
99void __RPC_STUB IUnknown_Release_Stub(IRpcStubBuffer *This, IRpcChannelBuffer *_pRpcChannelBuffer, PRPC_MESSAGE _pRpcMessage, DWORD *_pdwStubPhase);
100#else
101DEFINE_GUID(IID_IUnknown, 0x00000000, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
102#if defined(__cplusplus) && !defined(CINTERFACE)
103MIDL_INTERFACE("00000000-0000-0000-c000-000000000046")
104IUnknown
105{
106
107 BEGIN_INTERFACE
108
109 virtual HRESULT STDMETHODCALLTYPE QueryInterface(
110 REFIID riid,
111 void **ppvObject) = 0;
112
113 virtual ULONG STDMETHODCALLTYPE AddRef(
114 ) = 0;
115
116 virtual ULONG STDMETHODCALLTYPE Release(
117 ) = 0;
118
119 END_INTERFACE
120
121};
122#ifdef __CRT_UUID_DECL
123__CRT_UUID_DECL(IUnknown, 0x00000000, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
124#endif
125#else
126typedef struct IUnknownVtbl {
127 BEGIN_INTERFACE
128
129 /*** IUnknown methods ***/
130 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
131 IUnknown *This,
132 REFIID riid,
133 void **ppvObject);
134
135 ULONG (STDMETHODCALLTYPE *AddRef)(
136 IUnknown *This);
137
138 ULONG (STDMETHODCALLTYPE *Release)(
139 IUnknown *This);
140
141 END_INTERFACE
142} IUnknownVtbl;
143
144interface IUnknown {
145 CONST_VTBL IUnknownVtbl* lpVtbl;
146};
147
148#ifdef COBJMACROS
149#ifndef WIDL_C_INLINE_WRAPPERS
150/*** IUnknown methods ***/
151#define IUnknown_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
152#define IUnknown_AddRef(This) (This)->lpVtbl->AddRef(This)
153#define IUnknown_Release(This) (This)->lpVtbl->Release(This)
154#else
155/*** IUnknown methods ***/
156static FORCEINLINE HRESULT IUnknown_QueryInterface(IUnknown* This,REFIID riid,void **ppvObject) {
157 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
158}
159static FORCEINLINE ULONG IUnknown_AddRef(IUnknown* This) {
160 return This->lpVtbl->AddRef(This);
161}
162static FORCEINLINE ULONG IUnknown_Release(IUnknown* This) {
163 return This->lpVtbl->Release(This);
164}
165#endif
166#endif
167
168#endif
169
170
171#endif /* __IUnknown_INTERFACE_DEFINED__ */
172
173#endif
174#endif
175
176#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
177/*****************************************************************************
178 * AsyncIUnknown interface
179 */
180#ifndef __AsyncIUnknown_INTERFACE_DEFINED__
181#define __AsyncIUnknown_INTERFACE_DEFINED__
182
183DEFINE_GUID(IID_AsyncIUnknown, 0x000e0000, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
184#if defined(__cplusplus) && !defined(CINTERFACE)
185MIDL_INTERFACE("000e0000-0000-0000-c000-000000000046")
186AsyncIUnknown : public IUnknown
187{
188 virtual HRESULT STDMETHODCALLTYPE Begin_QueryInterface(
189 REFIID riid) = 0;
190
191 virtual HRESULT STDMETHODCALLTYPE Finish_QueryInterface(
192 void **ppvObject) = 0;
193
194 virtual HRESULT STDMETHODCALLTYPE Begin_AddRef(
195 ) = 0;
196
197 virtual ULONG STDMETHODCALLTYPE Finish_AddRef(
198 ) = 0;
199
200 virtual HRESULT STDMETHODCALLTYPE Begin_Release(
201 ) = 0;
202
203 virtual ULONG STDMETHODCALLTYPE Finish_Release(
204 ) = 0;
205
206};
207#ifdef __CRT_UUID_DECL
208__CRT_UUID_DECL(AsyncIUnknown, 0x000e0000, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
209#endif
210#else
211typedef struct AsyncIUnknownVtbl {
212 BEGIN_INTERFACE
213
214 /*** IUnknown methods ***/
215 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
216 AsyncIUnknown *This,
217 REFIID riid,
218 void **ppvObject);
219
220 ULONG (STDMETHODCALLTYPE *AddRef)(
221 AsyncIUnknown *This);
222
223 ULONG (STDMETHODCALLTYPE *Release)(
224 AsyncIUnknown *This);
225
226 /*** AsyncIUnknown methods ***/
227 HRESULT (STDMETHODCALLTYPE *Begin_QueryInterface)(
228 AsyncIUnknown *This,
229 REFIID riid);
230
231 HRESULT (STDMETHODCALLTYPE *Finish_QueryInterface)(
232 AsyncIUnknown *This,
233 void **ppvObject);
234
235 HRESULT (STDMETHODCALLTYPE *Begin_AddRef)(
236 AsyncIUnknown *This);
237
238 ULONG (STDMETHODCALLTYPE *Finish_AddRef)(
239 AsyncIUnknown *This);
240
241 HRESULT (STDMETHODCALLTYPE *Begin_Release)(
242 AsyncIUnknown *This);
243
244 ULONG (STDMETHODCALLTYPE *Finish_Release)(
245 AsyncIUnknown *This);
246
247 END_INTERFACE
248} AsyncIUnknownVtbl;
249
250interface AsyncIUnknown {
251 CONST_VTBL AsyncIUnknownVtbl* lpVtbl;
252};
253
254#ifdef COBJMACROS
255#ifndef WIDL_C_INLINE_WRAPPERS
256/*** IUnknown methods ***/
257#define AsyncIUnknown_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
258#define AsyncIUnknown_AddRef(This) (This)->lpVtbl->AddRef(This)
259#define AsyncIUnknown_Release(This) (This)->lpVtbl->Release(This)
260/*** AsyncIUnknown methods ***/
261#define AsyncIUnknown_Begin_QueryInterface(This,riid) (This)->lpVtbl->Begin_QueryInterface(This,riid)
262#define AsyncIUnknown_Finish_QueryInterface(This,ppvObject) (This)->lpVtbl->Finish_QueryInterface(This,ppvObject)
263#define AsyncIUnknown_Begin_AddRef(This) (This)->lpVtbl->Begin_AddRef(This)
264#define AsyncIUnknown_Finish_AddRef(This) (This)->lpVtbl->Finish_AddRef(This)
265#define AsyncIUnknown_Begin_Release(This) (This)->lpVtbl->Begin_Release(This)
266#define AsyncIUnknown_Finish_Release(This) (This)->lpVtbl->Finish_Release(This)
267#else
268/*** IUnknown methods ***/
269static FORCEINLINE HRESULT AsyncIUnknown_QueryInterface(AsyncIUnknown* This,REFIID riid,void **ppvObject) {
270 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
271}
272static FORCEINLINE ULONG AsyncIUnknown_AddRef(AsyncIUnknown* This) {
273 return This->lpVtbl->AddRef(This);
274}
275static FORCEINLINE ULONG AsyncIUnknown_Release(AsyncIUnknown* This) {
276 return This->lpVtbl->Release(This);
277}
278/*** AsyncIUnknown methods ***/
279static FORCEINLINE HRESULT AsyncIUnknown_Begin_QueryInterface(AsyncIUnknown* This,REFIID riid) {
280 return This->lpVtbl->Begin_QueryInterface(This,riid);
281}
282static FORCEINLINE HRESULT AsyncIUnknown_Finish_QueryInterface(AsyncIUnknown* This,void **ppvObject) {
283 return This->lpVtbl->Finish_QueryInterface(This,ppvObject);
284}
285static FORCEINLINE HRESULT AsyncIUnknown_Begin_AddRef(AsyncIUnknown* This) {
286 return This->lpVtbl->Begin_AddRef(This);
287}
288static FORCEINLINE ULONG AsyncIUnknown_Finish_AddRef(AsyncIUnknown* This) {
289 return This->lpVtbl->Finish_AddRef(This);
290}
291static FORCEINLINE HRESULT AsyncIUnknown_Begin_Release(AsyncIUnknown* This) {
292 return This->lpVtbl->Begin_Release(This);
293}
294static FORCEINLINE ULONG AsyncIUnknown_Finish_Release(AsyncIUnknown* This) {
295 return This->lpVtbl->Finish_Release(This);
296}
297#endif
298#endif
299
300#endif
301
302
303#endif /* __AsyncIUnknown_INTERFACE_DEFINED__ */
304
305#endif
306
307#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
308/*****************************************************************************
309 * IClassFactory interface
310 */
311#ifndef __IClassFactory_INTERFACE_DEFINED__
312#define __IClassFactory_INTERFACE_DEFINED__
313
314typedef IClassFactory *LPCLASSFACTORY;
315
316DEFINE_GUID(IID_IClassFactory, 0x00000001, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
317#if defined(__cplusplus) && !defined(CINTERFACE)
318MIDL_INTERFACE("00000001-0000-0000-c000-000000000046")
319IClassFactory : public IUnknown
320{
321 virtual HRESULT STDMETHODCALLTYPE CreateInstance(
322 IUnknown *pUnkOuter,
323 REFIID riid,
324 void **ppvObject) = 0;
325
326 virtual HRESULT STDMETHODCALLTYPE LockServer(
327 WINBOOL fLock) = 0;
328
329};
330#ifdef __CRT_UUID_DECL
331__CRT_UUID_DECL(IClassFactory, 0x00000001, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
332#endif
333#else
334typedef struct IClassFactoryVtbl {
335 BEGIN_INTERFACE
336
337 /*** IUnknown methods ***/
338 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
339 IClassFactory *This,
340 REFIID riid,
341 void **ppvObject);
342
343 ULONG (STDMETHODCALLTYPE *AddRef)(
344 IClassFactory *This);
345
346 ULONG (STDMETHODCALLTYPE *Release)(
347 IClassFactory *This);
348
349 /*** IClassFactory methods ***/
350 HRESULT (STDMETHODCALLTYPE *CreateInstance)(
351 IClassFactory *This,
352 IUnknown *pUnkOuter,
353 REFIID riid,
354 void **ppvObject);
355
356 HRESULT (STDMETHODCALLTYPE *LockServer)(
357 IClassFactory *This,
358 WINBOOL fLock);
359
360 END_INTERFACE
361} IClassFactoryVtbl;
362
363interface IClassFactory {
364 CONST_VTBL IClassFactoryVtbl* lpVtbl;
365};
366
367#ifdef COBJMACROS
368#ifndef WIDL_C_INLINE_WRAPPERS
369/*** IUnknown methods ***/
370#define IClassFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
371#define IClassFactory_AddRef(This) (This)->lpVtbl->AddRef(This)
372#define IClassFactory_Release(This) (This)->lpVtbl->Release(This)
373/*** IClassFactory methods ***/
374#define IClassFactory_CreateInstance(This,pUnkOuter,riid,ppvObject) (This)->lpVtbl->CreateInstance(This,pUnkOuter,riid,ppvObject)
375#define IClassFactory_LockServer(This,fLock) (This)->lpVtbl->LockServer(This,fLock)
376#else
377/*** IUnknown methods ***/
378static FORCEINLINE HRESULT IClassFactory_QueryInterface(IClassFactory* This,REFIID riid,void **ppvObject) {
379 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
380}
381static FORCEINLINE ULONG IClassFactory_AddRef(IClassFactory* This) {
382 return This->lpVtbl->AddRef(This);
383}
384static FORCEINLINE ULONG IClassFactory_Release(IClassFactory* This) {
385 return This->lpVtbl->Release(This);
386}
387/*** IClassFactory methods ***/
388static FORCEINLINE HRESULT IClassFactory_CreateInstance(IClassFactory* This,IUnknown *pUnkOuter,REFIID riid,void **ppvObject) {
389 return This->lpVtbl->CreateInstance(This,pUnkOuter,riid,ppvObject);
390}
391static FORCEINLINE HRESULT IClassFactory_LockServer(IClassFactory* This,WINBOOL fLock) {
392 return This->lpVtbl->LockServer(This,fLock);
393}
394#endif
395#endif
396
397#endif
398
399HRESULT STDMETHODCALLTYPE IClassFactory_RemoteCreateInstance_Proxy(
400 IClassFactory* This,
401 REFIID riid,
402 IUnknown **ppvObject);
403void __RPC_STUB IClassFactory_RemoteCreateInstance_Stub(
404 IRpcStubBuffer* This,
405 IRpcChannelBuffer* pRpcChannelBuffer,
406 PRPC_MESSAGE pRpcMessage,
407 DWORD* pdwStubPhase);
408HRESULT __stdcall IClassFactory_RemoteLockServer_Proxy(
409 IClassFactory* This,
410 WINBOOL fLock);
411void __RPC_STUB IClassFactory_RemoteLockServer_Stub(
412 IRpcStubBuffer* This,
413 IRpcChannelBuffer* pRpcChannelBuffer,
414 PRPC_MESSAGE pRpcMessage,
415 DWORD* pdwStubPhase);
416HRESULT CALLBACK IClassFactory_CreateInstance_Proxy(
417 IClassFactory* This,
418 IUnknown *pUnkOuter,
419 REFIID riid,
420 void **ppvObject);
421HRESULT __RPC_STUB IClassFactory_CreateInstance_Stub(
422 IClassFactory* This,
423 REFIID riid,
424 IUnknown **ppvObject);
425HRESULT CALLBACK IClassFactory_LockServer_Proxy(
426 IClassFactory* This,
427 WINBOOL fLock);
428HRESULT __RPC_STUB IClassFactory_LockServer_Stub(
429 IClassFactory* This,
430 WINBOOL fLock);
431
432#endif /* __IClassFactory_INTERFACE_DEFINED__ */
433
434#endif
435/* Begin additional prototypes for all interfaces */
436
437
438/* End additional prototypes */
439
440#ifdef __cplusplus
441}
442#endif
443
444#endif /* __unknwn_h__ */
Note: See TracBrowser for help on using the repository browser.