| /** |
| * This file has no copyright assigned and is placed in the Public Domain. |
| * This file is part of the w64 mingw-runtime package. |
| * No warranty is given; refer to the file DISCLAIMER.PD within this package. |
| */ |
| |
| #ifndef DO_NO_IMPORTS |
| import "wtypes.idl"; |
| #endif |
| |
| cpp_quote("#ifndef __AsyncIUnknown_FWD_DEFINED__") |
| cpp_quote("#define __AsyncIUnknown_FWD_DEFINED__") |
| cpp_quote("typedef struct AsyncIUnknown AsyncIUnknown;") |
| cpp_quote("#endif") |
| cpp_quote(" extern RPC_IF_HANDLE __MIDL_itf_unknwn_0000_v0_0_c_ifspec;") |
| cpp_quote(" extern RPC_IF_HANDLE __MIDL_itf_unknwn_0000_v0_0_s_ifspec;") |
| cpp_quote("") |
| |
| cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE) && !defined(__IUnknown_INTERFACE_DEFINED__)") |
| cpp_quote("#define __IUnknown_INTERFACE_DEFINED__") |
| cpp_quote(" typedef IUnknown *LPUNKNOWN;") |
| cpp_quote(" EXTERN_C const IID IID_IUnknown;") |
| cpp_quote(" extern \"C++\" {") |
| cpp_quote(" struct IUnknown {") |
| cpp_quote(" public:") |
| cpp_quote(" BEGIN_INTERFACE") |
| cpp_quote(" virtual HRESULT WINAPI QueryInterface(REFIID riid,void **ppvObject) = 0;") |
| cpp_quote(" virtual ULONG WINAPI AddRef(void) = 0;") |
| cpp_quote(" virtual ULONG WINAPI Release(void) = 0;") |
| cpp_quote(" template<class Q> HRESULT WINAPI QueryInterface(Q **pp) { return QueryInterface(__uuidof(*pp),(void **)pp); }") |
| cpp_quote(" END_INTERFACE") |
| cpp_quote(" };") |
| cpp_quote(" }") |
| cpp_quote(" HRESULT WINAPI IUnknown_QueryInterface_Proxy(IUnknown *This,REFIID riid,void **ppvObject);") |
| cpp_quote(" void __RPC_STUB IUnknown_QueryInterface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);") |
| cpp_quote(" ULONG WINAPI IUnknown_AddRef_Proxy(IUnknown *This);") |
| cpp_quote(" void __RPC_STUB IUnknown_AddRef_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);") |
| cpp_quote(" ULONG WINAPI IUnknown_Release_Proxy(IUnknown *This);") |
| cpp_quote(" void __RPC_STUB IUnknown_Release_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);") |
| cpp_quote("__CRT_UUID_DECL(IUnknown, 0x00000000, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)") |
| cpp_quote("#else") |
| |
| [ |
| local, |
| object, |
| uuid(00000000-0000-0000-C000-000000000046), |
| pointer_default(unique) |
| ] |
| interface IUnknown |
| { |
| typedef [unique] IUnknown *LPUNKNOWN; |
| |
| HRESULT QueryInterface([in] REFIID riid, [out, iid_is(riid)] void **ppvObject); |
| ULONG AddRef(); |
| ULONG Release(); |
| } |
| |
| cpp_quote("#endif") |
| |
| cpp_quote(" extern RPC_IF_HANDLE __MIDL_itf_unknwn_0005_v0_0_c_ifspec;") |
| cpp_quote(" extern RPC_IF_HANDLE __MIDL_itf_unknwn_0005_v0_0_s_ifspec;") |
| cpp_quote("#ifndef __AsyncIUnknown_INTERFACE_DEFINED__") |
| cpp_quote("#define __AsyncIUnknown_INTERFACE_DEFINED__") |
| cpp_quote(" EXTERN_C const IID IID_AsyncIUnknown;") |
| cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)") |
| cpp_quote(" struct AsyncIUnknown : public IUnknown {") |
| cpp_quote(" public:") |
| cpp_quote(" virtual HRESULT WINAPI Begin_QueryInterface(REFIID riid) = 0;") |
| cpp_quote(" virtual HRESULT WINAPI Finish_QueryInterface(void **ppvObject) = 0;") |
| cpp_quote(" virtual HRESULT WINAPI Begin_AddRef(void) = 0;") |
| cpp_quote(" virtual ULONG WINAPI Finish_AddRef(void) = 0;") |
| cpp_quote(" virtual HRESULT WINAPI Begin_Release(void) = 0;") |
| cpp_quote(" virtual ULONG WINAPI Finish_Release(void) = 0;") |
| cpp_quote(" };") |
| cpp_quote("#else") |
| cpp_quote(" typedef struct AsyncIUnknownVtbl {") |
| cpp_quote(" BEGIN_INTERFACE") |
| cpp_quote(" HRESULT (WINAPI *QueryInterface)(AsyncIUnknown *This,REFIID riid,void **ppvObject);") |
| cpp_quote(" ULONG (WINAPI *AddRef)(AsyncIUnknown *This);") |
| cpp_quote(" ULONG (WINAPI *Release)(AsyncIUnknown *This);") |
| cpp_quote(" HRESULT (WINAPI *Begin_QueryInterface)(AsyncIUnknown *This,REFIID riid);") |
| cpp_quote(" HRESULT (WINAPI *Finish_QueryInterface)(AsyncIUnknown *This,void **ppvObject);") |
| cpp_quote(" HRESULT (WINAPI *Begin_AddRef)(AsyncIUnknown *This);") |
| cpp_quote(" ULONG (WINAPI *Finish_AddRef)(AsyncIUnknown *This);") |
| cpp_quote(" HRESULT (WINAPI *Begin_Release)(AsyncIUnknown *This);") |
| cpp_quote(" ULONG (WINAPI *Finish_Release)(AsyncIUnknown *This);") |
| cpp_quote(" END_INTERFACE") |
| cpp_quote(" } AsyncIUnknownVtbl;") |
| cpp_quote(" struct AsyncIUnknown {") |
| cpp_quote(" CONST_VTBL struct AsyncIUnknownVtbl *lpVtbl;") |
| cpp_quote(" };") |
| cpp_quote("#ifdef COBJMACROS") |
| cpp_quote("#define AsyncIUnknown_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)") |
| cpp_quote("#define AsyncIUnknown_AddRef(This) (This)->lpVtbl->AddRef(This)") |
| cpp_quote("#define AsyncIUnknown_Release(This) (This)->lpVtbl->Release(This)") |
| cpp_quote("#define AsyncIUnknown_Begin_QueryInterface(This,riid) (This)->lpVtbl->Begin_QueryInterface(This,riid)") |
| cpp_quote("#define AsyncIUnknown_Finish_QueryInterface(This,ppvObject) (This)->lpVtbl->Finish_QueryInterface(This,ppvObject)") |
| cpp_quote("#define AsyncIUnknown_Begin_AddRef(This) (This)->lpVtbl->Begin_AddRef(This)") |
| cpp_quote("#define AsyncIUnknown_Finish_AddRef(This) (This)->lpVtbl->Finish_AddRef(This)") |
| cpp_quote("#define AsyncIUnknown_Begin_Release(This) (This)->lpVtbl->Begin_Release(This)") |
| cpp_quote("#define AsyncIUnknown_Finish_Release(This) (This)->lpVtbl->Finish_Release(This)") |
| cpp_quote("#endif") |
| cpp_quote("#endif") |
| cpp_quote(" HRESULT WINAPI AsyncIUnknown_Begin_QueryInterface_Proxy(AsyncIUnknown *This,REFIID riid);") |
| cpp_quote(" void __RPC_STUB AsyncIUnknown_Begin_QueryInterface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);") |
| cpp_quote(" HRESULT WINAPI AsyncIUnknown_Finish_QueryInterface_Proxy(AsyncIUnknown *This,void **ppvObject);") |
| cpp_quote(" void __RPC_STUB AsyncIUnknown_Finish_QueryInterface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);") |
| cpp_quote(" HRESULT WINAPI AsyncIUnknown_Begin_AddRef_Proxy(AsyncIUnknown *This);") |
| cpp_quote(" void __RPC_STUB AsyncIUnknown_Begin_AddRef_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);") |
| cpp_quote(" ULONG WINAPI AsyncIUnknown_Finish_AddRef_Proxy(AsyncIUnknown *This);") |
| cpp_quote(" void __RPC_STUB AsyncIUnknown_Finish_AddRef_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);") |
| cpp_quote(" HRESULT WINAPI AsyncIUnknown_Begin_Release_Proxy(AsyncIUnknown *This);") |
| cpp_quote(" void __RPC_STUB AsyncIUnknown_Begin_Release_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);") |
| cpp_quote(" ULONG WINAPI AsyncIUnknown_Finish_Release_Proxy(AsyncIUnknown *This);") |
| cpp_quote(" void __RPC_STUB AsyncIUnknown_Finish_Release_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);") |
| cpp_quote("#endif") |
| cpp_quote("") |
| |
| [ |
| object, |
| uuid(00000001-0000-0000-C000-000000000046), |
| pointer_default(unique) |
| ] |
| interface IClassFactory : IUnknown |
| { |
| typedef [unique] IClassFactory *LPCLASSFACTORY; |
| |
| [local] |
| HRESULT CreateInstance( |
| [in, unique] IUnknown *pUnkOuter, |
| [in] REFIID riid, |
| [out, iid_is(riid)] void **ppvObject); |
| |
| [call_as(CreateInstance)] |
| HRESULT RemoteCreateInstance( |
| [in] REFIID riid, |
| [out, iid_is(riid)] IUnknown **ppvObject); |
| |
| [local] HRESULT LockServer([in] BOOL fLock); |
| [call_as(LockServer)] HRESULT RemoteLockServer([in] BOOL fLock); |
| } |