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 |