1 /*** Autogenerated by WIDL 0.1 from unknwn.idl - Do not edit ***/
5 #ifndef __WIDL_UNKNWN_H
6 #define __WIDL_UNKNWN_H
11 #if defined(__cplusplus) && !defined(CINTERFACE)
12 #ifdef ICOM_USE_COM_INTERFACE_ATTRIBUTE
13 #define ICOM_COM_INTERFACE_ATTRIBUTE __attribute__((com_interface))
15 #define ICOM_COM_INTERFACE_ATTRIBUTE
18 #ifdef ICOM_MSVTABLE_COMPAT
19 #define ICOM_MSVTABLE_COMPAT_FIELDS \
22 #define ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE 0,0,
24 #define ICOM_MSVTABLE_COMPAT_FIELDS
25 #define ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
28 typedef struct IUnknown IUnknown
;
29 typedef IUnknown
*LPUNKNOWN
;
31 /*****************************************************************************
34 DEFINE_GUID(IID_IUnknown
, 0x00000000, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
35 #if defined(__cplusplus) && !defined(CINTERFACE)
38 virtual HRESULT CALLBACK
QueryInterface(
40 void** ppvObject
) = 0;
42 virtual ULONG CALLBACK
AddRef(
45 virtual ULONG CALLBACK
Release(
48 } ICOM_COM_INTERFACE_ATTRIBUTE
;
50 typedef struct IUnknownVtbl IUnknownVtbl
;
52 const IUnknownVtbl
* lpVtbl
;
55 ICOM_MSVTABLE_COMPAT_FIELDS
57 /*** IUnknown methods ***/
58 HRESULT (CALLBACK
*QueryInterface
)(
63 ULONG (CALLBACK
*AddRef
)(
66 ULONG (CALLBACK
*Release
)(
71 #define IUnknown_IMETHODS \
72 ICOM_METHOD2 (HRESULT,QueryInterface,REFIID,riid,void**,ppvObject) \
73 ICOM_METHOD (ULONG,AddRef) \
74 ICOM_METHOD (ULONG,Release)
76 /*** IUnknown methods ***/
77 #define IUnknown_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
78 #define IUnknown_AddRef(p) (p)->lpVtbl->AddRef(p)
79 #define IUnknown_Release(p) (p)->lpVtbl->Release(p)
83 HRESULT CALLBACK
IUnknown_QueryInterface_Proxy(
87 void __RPC_STUB
IUnknown_QueryInterface_Stub(
88 struct IRpcStubBuffer
* This
,
89 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
90 PRPC_MESSAGE pRpcMessage
,
92 ULONG CALLBACK
IUnknown_AddRef_Proxy(
94 void __RPC_STUB
IUnknown_AddRef_Stub(
95 struct IRpcStubBuffer
* This
,
96 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
97 PRPC_MESSAGE pRpcMessage
,
99 ULONG CALLBACK
IUnknown_Release_Proxy(
101 void __RPC_STUB
IUnknown_Release_Stub(
102 struct IRpcStubBuffer
* This
,
103 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
104 PRPC_MESSAGE pRpcMessage
,
105 DWORD
* pdwStubPhase
);
107 typedef struct IClassFactory IClassFactory
;
108 typedef IClassFactory
*LPCLASSFACTORY
;
110 /*****************************************************************************
111 * IClassFactory interface
113 DEFINE_GUID(IID_IClassFactory
, 0x00000001, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
114 #if defined(__cplusplus) && !defined(CINTERFACE)
115 struct IClassFactory
: IUnknown
{
117 virtual HRESULT CALLBACK
CreateInstance(
120 void** ppvObject
) = 0;
122 virtual HRESULT CALLBACK
LockServer(
125 } ICOM_COM_INTERFACE_ATTRIBUTE
;
127 typedef struct IClassFactoryVtbl IClassFactoryVtbl
;
128 struct IClassFactory
{
129 const IClassFactoryVtbl
* lpVtbl
;
131 struct IClassFactoryVtbl
{
132 ICOM_MSVTABLE_COMPAT_FIELDS
134 /*** IUnknown methods ***/
135 HRESULT (CALLBACK
*QueryInterface
)(
140 ULONG (CALLBACK
*AddRef
)(
141 IClassFactory
* This
);
143 ULONG (CALLBACK
*Release
)(
144 IClassFactory
* This
);
146 /*** IClassFactory methods ***/
147 HRESULT (CALLBACK
*CreateInstance
)(
153 HRESULT (CALLBACK
*LockServer
)(
159 #define IClassFactory_IMETHODS \
161 ICOM_METHOD3 (HRESULT,CreateInstance,IUnknown*,pUnkOuter,REFIID,riid,void**,ppvObject) \
162 ICOM_METHOD1 (HRESULT,LockServer,BOOL,fLock)
164 /*** IUnknown methods ***/
165 #define IClassFactory_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
166 #define IClassFactory_AddRef(p) (p)->lpVtbl->AddRef(p)
167 #define IClassFactory_Release(p) (p)->lpVtbl->Release(p)
168 /*** IClassFactory methods ***/
169 #define IClassFactory_CreateInstance(p,a,b,c) (p)->lpVtbl->CreateInstance(p,a,b,c)
170 #define IClassFactory_LockServer(p,a) (p)->lpVtbl->LockServer(p,a)
174 HRESULT CALLBACK
IClassFactory_RemoteCreateInstance_Proxy(
177 IUnknown
** ppvObject
);
178 void __RPC_STUB
IClassFactory_RemoteCreateInstance_Stub(
179 struct IRpcStubBuffer
* This
,
180 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
181 PRPC_MESSAGE pRpcMessage
,
182 DWORD
* pdwStubPhase
);
183 HRESULT CALLBACK
IClassFactory_CreateInstance_Proxy(
188 HRESULT __RPC_STUB
IClassFactory_CreateInstance_Stub(
191 IUnknown
** ppvObject
);
192 HRESULT CALLBACK
IClassFactory_RemoteLockServer_Proxy(
195 void __RPC_STUB
IClassFactory_RemoteLockServer_Stub(
196 struct IRpcStubBuffer
* This
,
197 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
198 PRPC_MESSAGE pRpcMessage
,
199 DWORD
* pdwStubPhase
);
200 HRESULT CALLBACK
IClassFactory_LockServer_Proxy(
203 HRESULT __RPC_STUB
IClassFactory_LockServer_Stub(
210 #endif /* __WIDL_UNKNWN_H */