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