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