|
1 #ifndef COM_NO_WINDOWS_H |
|
2 #include <windows.h> |
|
3 #endif |
|
4 |
|
5 #ifndef _UNKNWN_H |
|
6 #define _UNKNWN_H |
|
7 #if __GNUC__ >=3 |
|
8 #pragma GCC system_header |
|
9 #endif |
|
10 |
|
11 #ifdef __cplusplus |
|
12 extern "C"{ |
|
13 #endif |
|
14 #include <objfwd.h> |
|
15 #include <wtypes.h> |
|
16 |
|
17 void * __RPC_USER MIDL_user_allocate(size_t); |
|
18 void __RPC_USER MIDL_user_free(void*); |
|
19 EXTERN_C const IID IID_IUnknown; |
|
20 EXTERN_C const IID IID_IClassFactory; |
|
21 #ifndef __IUnknown_INTERFACE_DEFINED__ |
|
22 #define __IUnknown_INTERFACE_DEFINED__ |
|
23 #define INTERFACE IUnknown |
|
24 DECLARE_INTERFACE(IUnknown) |
|
25 { |
|
26 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; |
|
27 STDMETHOD_(ULONG,AddRef)(THIS) PURE; |
|
28 STDMETHOD_(ULONG,Release)(THIS) PURE; |
|
29 }; |
|
30 #undef INTERFACE |
|
31 typedef IUnknown *LPUNKNOWN; |
|
32 #endif |
|
33 #ifndef __IClassFactory_INTERFACE_DEFINED__ |
|
34 #define __IClassFactory_INTERFACE_DEFINED__ |
|
35 #define INTERFACE IClassFactory |
|
36 DECLARE_INTERFACE_(IClassFactory,IUnknown) |
|
37 { |
|
38 STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; |
|
39 STDMETHOD_(ULONG,AddRef)(THIS) PURE; |
|
40 STDMETHOD_(ULONG,Release)(THIS) PURE; |
|
41 STDMETHOD(CreateInstance)(THIS_ LPUNKNOWN,REFIID,PVOID*) PURE; |
|
42 STDMETHOD(LockServer)(THIS_ BOOL) PURE; |
|
43 }; |
|
44 #undef INTERFACE |
|
45 typedef IClassFactory *LPCLASSFACTORY; |
|
46 #endif |
|
47 HRESULT STDMETHODCALLTYPE IUnknown_QueryInterface_Proxy(IUnknown*,REFIID,void**); |
|
48 void __RPC_STUB IUnknown_QueryInterface_Stub(LPRPCSTUBBUFFER,LPRPCCHANNELBUFFER,PRPC_MESSAGE,PDWORD); |
|
49 ULONG STDMETHODCALLTYPE IUnknown_AddRef_Proxy(IUnknown*); |
|
50 void __RPC_STUB IUnknown_AddRef_Stub(LPRPCSTUBBUFFER,LPRPCCHANNELBUFFER,PRPC_MESSAGE,PDWORD); |
|
51 ULONG STDMETHODCALLTYPE IUnknown_Release_Proxy(IUnknown*); |
|
52 void __RPC_STUB IUnknown_Release_Stub(LPRPCSTUBBUFFER,LPRPCCHANNELBUFFER,PRPC_MESSAGE,PDWORD); |
|
53 HRESULT STDMETHODCALLTYPE IClassFactory_RemoteCreateInstance_Proxy(IClassFactory*,REFIID,IUnknown**); |
|
54 void __RPC_STUB IClassFactory_RemoteCreateInstance_Stub(LPRPCSTUBBUFFER,LPRPCCHANNELBUFFER,PRPC_MESSAGE,PDWORD); |
|
55 HRESULT __stdcall IClassFactory_RemoteLockServer_Proxy(IClassFactory*,BOOL); |
|
56 void __RPC_STUB IClassFactory_RemoteLockServer_Stub(LPRPCSTUBBUFFER,LPRPCCHANNELBUFFER,PRPC_MESSAGE,PDWORD); |
|
57 HRESULT STDMETHODCALLTYPE IClassFactory_CreateInstance_Proxy(IClassFactory*,IUnknown*,REFIID,void**); |
|
58 HRESULT STDMETHODCALLTYPE IClassFactory_CreateInstance_Stub(IClassFactory*,REFIID,IUnknown**); |
|
59 HRESULT STDMETHODCALLTYPE IClassFactory_LockServer_Proxy(IClassFactory*,BOOL); |
|
60 HRESULT STDMETHODCALLTYPE IClassFactory_LockServer_Stub(IClassFactory*,BOOL); |
|
61 |
|
62 #if (!defined (__cplusplus) || defined (CINTERFACE)) \ |
|
63 && defined (COBJMACROS) |
|
64 #define IUnknown_QueryInterface(T,r,O) (T)->lpVtbl->QueryInterface(T,r,O) |
|
65 #define IUnknown_AddRef(T) (T)->lpVtbl->AddRef(T) |
|
66 #define IUnknown_Release(T) (T)->lpVtbl->Release(T) |
|
67 #define IClassFactory_QueryInterface(T,r,O) (T)->lpVtbl->QueryInterface(T,r,O) |
|
68 #define IClassFactory_AddRef(T) (T)->lpVtbl->AddRef(T) |
|
69 #define IClassFactory_Release(T) (T)->lpVtbl->Release(T) |
|
70 #define IClassFactory_CreateInstance(T,p,r,O) (T)->lpVtbl->CreateInstance(T,p,r,O) |
|
71 #define IClassFactory_LockServer(T,f) (T)->lpVtbl->LockServer(T,f) |
|
72 #endif /* COBJMACROS */ |
|
73 #ifdef __cplusplus |
|
74 } |
|
75 #endif |
|
76 #endif |