source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/callobj.h@ 1180

Last change on this file since 1180 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 29.5 KB
Line 
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#ifndef __REQUIRED_RPCNDR_H_VERSION__
7#define __REQUIRED_RPCNDR_H_VERSION__ 475
8#endif
9
10#include "rpc.h"
11#include "rpcndr.h"
12
13#ifndef __RPCNDR_H_VERSION__
14#error this stub requires an updated version of <rpcndr.h>
15#endif
16
17#ifndef COM_NO_WINDOWS_H
18#include "windows.h"
19#include "ole2.h"
20#endif
21
22#ifndef __callobj_h__
23#define __callobj_h__
24
25#ifndef __ICallFrame_FWD_DEFINED__
26#define __ICallFrame_FWD_DEFINED__
27typedef struct ICallFrame ICallFrame;
28#endif
29
30#ifndef __ICallIndirect_FWD_DEFINED__
31#define __ICallIndirect_FWD_DEFINED__
32typedef struct ICallIndirect ICallIndirect;
33#endif
34
35#ifndef __ICallInterceptor_FWD_DEFINED__
36#define __ICallInterceptor_FWD_DEFINED__
37typedef struct ICallInterceptor ICallInterceptor;
38#endif
39
40#ifndef __ICallFrameEvents_FWD_DEFINED__
41#define __ICallFrameEvents_FWD_DEFINED__
42typedef struct ICallFrameEvents ICallFrameEvents;
43#endif
44
45#ifndef __ICallUnmarshal_FWD_DEFINED__
46#define __ICallUnmarshal_FWD_DEFINED__
47typedef struct ICallUnmarshal ICallUnmarshal;
48#endif
49
50#ifndef __ICallFrameWalker_FWD_DEFINED__
51#define __ICallFrameWalker_FWD_DEFINED__
52typedef struct ICallFrameWalker ICallFrameWalker;
53#endif
54
55#ifndef __IInterfaceRelated_FWD_DEFINED__
56#define __IInterfaceRelated_FWD_DEFINED__
57typedef struct IInterfaceRelated IInterfaceRelated;
58#endif
59
60#include "oaidl.h"
61
62#ifdef __cplusplus
63extern "C"{
64#endif
65
66#ifndef __MIDL_user_allocate_free_DEFINED__
67#define __MIDL_user_allocate_free_DEFINED__
68 void *__RPC_API MIDL_user_allocate(size_t);
69 void __RPC_API MIDL_user_free(void *);
70#endif
71
72 extern RPC_IF_HANDLE __MIDL_itf_callobj_0000_v0_0_c_ifspec;
73 extern RPC_IF_HANDLE __MIDL_itf_callobj_0000_v0_0_s_ifspec;
74
75#ifndef __ICallFrame_INTERFACE_DEFINED__
76#define __ICallFrame_INTERFACE_DEFINED__
77
78 typedef struct __MIDL_ICallFrame_0001 {
79 ULONG iMethod;
80 WINBOOL fHasInValues;
81 WINBOOL fHasInOutValues;
82 WINBOOL fHasOutValues;
83 WINBOOL fDerivesFromIDispatch;
84 LONG cInInterfacesMax;
85 LONG cInOutInterfacesMax;
86 LONG cOutInterfacesMax;
87 LONG cTopLevelInInterfaces;
88 IID iid;
89 ULONG cMethod;
90 ULONG cParams;
91 } CALLFRAMEINFO;
92
93 typedef struct __MIDL_ICallFrame_0002 {
94 BOOLEAN fIn;
95 BOOLEAN fOut;
96 ULONG stackOffset;
97 ULONG cbParam;
98 } CALLFRAMEPARAMINFO;
99
100 typedef enum __MIDL_ICallFrame_0003 {
101 CALLFRAME_COPY_NESTED = 1,CALLFRAME_COPY_INDEPENDENT = 2
102 } CALLFRAME_COPY;
103
104 enum CALLFRAME_FREE {
105 CALLFRAME_FREE_NONE = 0,CALLFRAME_FREE_IN = 1,CALLFRAME_FREE_INOUT = 2,CALLFRAME_FREE_OUT = 4,CALLFRAME_FREE_TOP_INOUT = 8,
106 CALLFRAME_FREE_TOP_OUT = 16,CALLFRAME_FREE_ALL = 31
107 };
108
109 enum CALLFRAME_NULL {
110 CALLFRAME_NULL_NONE = 0,CALLFRAME_NULL_INOUT = 2,CALLFRAME_NULL_OUT = 4,CALLFRAME_NULL_ALL = 6
111 };
112
113 enum CALLFRAME_WALK {
114 CALLFRAME_WALK_IN = 1,CALLFRAME_WALK_INOUT = 2,CALLFRAME_WALK_OUT = 4
115 };
116
117 typedef struct __MIDL_ICallFrame_0004 {
118 BOOLEAN fIn;
119 DWORD dwDestContext;
120 LPVOID pvDestContext;
121 IUnknown *punkReserved;
122 GUID guidTransferSyntax;
123 } CALLFRAME_MARSHALCONTEXT;
124
125 EXTERN_C const IID IID_ICallFrame;
126#if defined(__cplusplus) && !defined(CINTERFACE)
127 struct ICallFrame : public IUnknown {
128 public:
129 virtual HRESULT WINAPI GetInfo(CALLFRAMEINFO *pInfo) = 0;
130 virtual HRESULT WINAPI GetIIDAndMethod(IID *pIID,ULONG *piMethod) = 0;
131 virtual HRESULT WINAPI GetNames(LPWSTR *pwszInterface,LPWSTR *pwszMethod) = 0;
132 virtual PVOID WINAPI GetStackLocation(void) = 0;
133 virtual void WINAPI SetStackLocation(PVOID pvStack) = 0;
134 virtual void WINAPI SetReturnValue(HRESULT hr) = 0;
135 virtual HRESULT WINAPI GetReturnValue(void) = 0;
136 virtual HRESULT WINAPI GetParamInfo(ULONG iparam,CALLFRAMEPARAMINFO *pInfo) = 0;
137 virtual HRESULT WINAPI SetParam(ULONG iparam,VARIANT *pvar) = 0;
138 virtual HRESULT WINAPI GetParam(ULONG iparam,VARIANT *pvar) = 0;
139 virtual HRESULT WINAPI Copy(CALLFRAME_COPY copyControl,ICallFrameWalker *pWalker,ICallFrame **ppFrame) = 0;
140 virtual HRESULT WINAPI Free(ICallFrame *pframeArgsDest,ICallFrameWalker *pWalkerDestFree,ICallFrameWalker *pWalkerCopy,DWORD freeFlags,ICallFrameWalker *pWalkerFree,DWORD nullFlags) = 0;
141 virtual HRESULT WINAPI FreeParam(ULONG iparam,DWORD freeFlags,ICallFrameWalker *pWalkerFree,DWORD nullFlags) = 0;
142 virtual HRESULT WINAPI WalkFrame(DWORD walkWhat,ICallFrameWalker *pWalker) = 0;
143 virtual HRESULT WINAPI GetMarshalSizeMax(CALLFRAME_MARSHALCONTEXT *pmshlContext,MSHLFLAGS mshlflags,ULONG *pcbBufferNeeded) = 0;
144 virtual HRESULT WINAPI Marshal(CALLFRAME_MARSHALCONTEXT *pmshlContext,MSHLFLAGS mshlflags,PVOID pBuffer,ULONG cbBuffer,ULONG *pcbBufferUsed,RPCOLEDATAREP *pdataRep,ULONG *prpcFlags) = 0;
145 virtual HRESULT WINAPI Unmarshal(PVOID pBuffer,ULONG cbBuffer,RPCOLEDATAREP dataRep,CALLFRAME_MARSHALCONTEXT *pcontext,ULONG *pcbUnmarshalled) = 0;
146 virtual HRESULT WINAPI ReleaseMarshalData(PVOID pBuffer,ULONG cbBuffer,ULONG ibFirstRelease,RPCOLEDATAREP dataRep,CALLFRAME_MARSHALCONTEXT *pcontext) = 0;
147 virtual HRESULT WINAPI Invoke(void *pvReceiver,...) = 0;
148 };
149#else
150 typedef struct ICallFrameVtbl {
151 BEGIN_INTERFACE
152 HRESULT (WINAPI *QueryInterface)(ICallFrame *This,REFIID riid,void **ppvObject);
153 ULONG (WINAPI *AddRef)(ICallFrame *This);
154 ULONG (WINAPI *Release)(ICallFrame *This);
155 HRESULT (WINAPI *GetInfo)(ICallFrame *This,CALLFRAMEINFO *pInfo);
156 HRESULT (WINAPI *GetIIDAndMethod)(ICallFrame *This,IID *pIID,ULONG *piMethod);
157 HRESULT (WINAPI *GetNames)(ICallFrame *This,LPWSTR *pwszInterface,LPWSTR *pwszMethod);
158 PVOID (WINAPI *GetStackLocation)(ICallFrame *This);
159 void (WINAPI *SetStackLocation)(ICallFrame *This,PVOID pvStack);
160 void (WINAPI *SetReturnValue)(ICallFrame *This,HRESULT hr);
161 HRESULT (WINAPI *GetReturnValue)(ICallFrame *This);
162 HRESULT (WINAPI *GetParamInfo)(ICallFrame *This,ULONG iparam,CALLFRAMEPARAMINFO *pInfo);
163 HRESULT (WINAPI *SetParam)(ICallFrame *This,ULONG iparam,VARIANT *pvar);
164 HRESULT (WINAPI *GetParam)(ICallFrame *This,ULONG iparam,VARIANT *pvar);
165 HRESULT (WINAPI *Copy)(ICallFrame *This,CALLFRAME_COPY copyControl,ICallFrameWalker *pWalker,ICallFrame **ppFrame);
166 HRESULT (WINAPI *Free)(ICallFrame *This,ICallFrame *pframeArgsDest,ICallFrameWalker *pWalkerDestFree,ICallFrameWalker *pWalkerCopy,DWORD freeFlags,ICallFrameWalker *pWalkerFree,DWORD nullFlags);
167 HRESULT (WINAPI *FreeParam)(ICallFrame *This,ULONG iparam,DWORD freeFlags,ICallFrameWalker *pWalkerFree,DWORD nullFlags);
168 HRESULT (WINAPI *WalkFrame)(ICallFrame *This,DWORD walkWhat,ICallFrameWalker *pWalker);
169 HRESULT (WINAPI *GetMarshalSizeMax)(ICallFrame *This,CALLFRAME_MARSHALCONTEXT *pmshlContext,MSHLFLAGS mshlflags,ULONG *pcbBufferNeeded);
170 HRESULT (WINAPI *Marshal)(ICallFrame *This,CALLFRAME_MARSHALCONTEXT *pmshlContext,MSHLFLAGS mshlflags,PVOID pBuffer,ULONG cbBuffer,ULONG *pcbBufferUsed,RPCOLEDATAREP *pdataRep,ULONG *prpcFlags);
171 HRESULT (WINAPI *Unmarshal)(ICallFrame *This,PVOID pBuffer,ULONG cbBuffer,RPCOLEDATAREP dataRep,CALLFRAME_MARSHALCONTEXT *pcontext,ULONG *pcbUnmarshalled);
172 HRESULT (WINAPI *ReleaseMarshalData)(ICallFrame *This,PVOID pBuffer,ULONG cbBuffer,ULONG ibFirstRelease,RPCOLEDATAREP dataRep,CALLFRAME_MARSHALCONTEXT *pcontext);
173 HRESULT (WINAPI *Invoke)(ICallFrame *This,void *pvReceiver,...);
174 END_INTERFACE
175 } ICallFrameVtbl;
176 struct ICallFrame {
177 CONST_VTBL struct ICallFrameVtbl *lpVtbl;
178 };
179#ifdef COBJMACROS
180#define ICallFrame_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
181#define ICallFrame_AddRef(This) (This)->lpVtbl->AddRef(This)
182#define ICallFrame_Release(This) (This)->lpVtbl->Release(This)
183#define ICallFrame_GetInfo(This,pInfo) (This)->lpVtbl->GetInfo(This,pInfo)
184#define ICallFrame_GetIIDAndMethod(This,pIID,piMethod) (This)->lpVtbl->GetIIDAndMethod(This,pIID,piMethod)
185#define ICallFrame_GetNames(This,pwszInterface,pwszMethod) (This)->lpVtbl->GetNames(This,pwszInterface,pwszMethod)
186#define ICallFrame_GetStackLocation(This) (This)->lpVtbl->GetStackLocation(This)
187#define ICallFrame_SetStackLocation(This,pvStack) (This)->lpVtbl->SetStackLocation(This,pvStack)
188#define ICallFrame_SetReturnValue(This,hr) (This)->lpVtbl->SetReturnValue(This,hr)
189#define ICallFrame_GetReturnValue(This) (This)->lpVtbl->GetReturnValue(This)
190#define ICallFrame_GetParamInfo(This,iparam,pInfo) (This)->lpVtbl->GetParamInfo(This,iparam,pInfo)
191#define ICallFrame_SetParam(This,iparam,pvar) (This)->lpVtbl->SetParam(This,iparam,pvar)
192#define ICallFrame_GetParam(This,iparam,pvar) (This)->lpVtbl->GetParam(This,iparam,pvar)
193#define ICallFrame_Copy(This,copyControl,pWalker,ppFrame) (This)->lpVtbl->Copy(This,copyControl,pWalker,ppFrame)
194#define ICallFrame_Free(This,pframeArgsDest,pWalkerDestFree,pWalkerCopy,freeFlags,pWalkerFree,nullFlags) (This)->lpVtbl->Free(This,pframeArgsDest,pWalkerDestFree,pWalkerCopy,freeFlags,pWalkerFree,nullFlags)
195#define ICallFrame_FreeParam(This,iparam,freeFlags,pWalkerFree,nullFlags) (This)->lpVtbl->FreeParam(This,iparam,freeFlags,pWalkerFree,nullFlags)
196#define ICallFrame_WalkFrame(This,walkWhat,pWalker) (This)->lpVtbl->WalkFrame(This,walkWhat,pWalker)
197#define ICallFrame_GetMarshalSizeMax(This,pmshlContext,mshlflags,pcbBufferNeeded) (This)->lpVtbl->GetMarshalSizeMax(This,pmshlContext,mshlflags,pcbBufferNeeded)
198#define ICallFrame_Marshal(This,pmshlContext,mshlflags,pBuffer,cbBuffer,pcbBufferUsed,pdataRep,prpcFlags) (This)->lpVtbl->Marshal(This,pmshlContext,mshlflags,pBuffer,cbBuffer,pcbBufferUsed,pdataRep,prpcFlags)
199#define ICallFrame_Unmarshal(This,pBuffer,cbBuffer,dataRep,pcontext,pcbUnmarshalled) (This)->lpVtbl->Unmarshal(This,pBuffer,cbBuffer,dataRep,pcontext,pcbUnmarshalled)
200#define ICallFrame_ReleaseMarshalData(This,pBuffer,cbBuffer,ibFirstRelease,dataRep,pcontext) (This)->lpVtbl->ReleaseMarshalData(This,pBuffer,cbBuffer,ibFirstRelease,dataRep,pcontext)
201#define ICallFrame_Invoke(This,pvReceiver,...) (This)->lpVtbl->Invoke(This,pvReceiver,...)
202#endif
203#endif
204 HRESULT WINAPI ICallFrame_GetInfo_Proxy(ICallFrame *This,CALLFRAMEINFO *pInfo);
205 void __RPC_STUB ICallFrame_GetInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
206 HRESULT WINAPI ICallFrame_GetIIDAndMethod_Proxy(ICallFrame *This,IID *pIID,ULONG *piMethod);
207 void __RPC_STUB ICallFrame_GetIIDAndMethod_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
208 HRESULT WINAPI ICallFrame_GetNames_Proxy(ICallFrame *This,LPWSTR *pwszInterface,LPWSTR *pwszMethod);
209 void __RPC_STUB ICallFrame_GetNames_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
210 PVOID WINAPI ICallFrame_GetStackLocation_Proxy(ICallFrame *This);
211 void __RPC_STUB ICallFrame_GetStackLocation_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
212 void WINAPI ICallFrame_SetStackLocation_Proxy(ICallFrame *This,PVOID pvStack);
213 void __RPC_STUB ICallFrame_SetStackLocation_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
214 void WINAPI ICallFrame_SetReturnValue_Proxy(ICallFrame *This,HRESULT hr);
215 void __RPC_STUB ICallFrame_SetReturnValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
216 HRESULT WINAPI ICallFrame_GetReturnValue_Proxy(ICallFrame *This);
217 void __RPC_STUB ICallFrame_GetReturnValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
218 HRESULT WINAPI ICallFrame_GetParamInfo_Proxy(ICallFrame *This,ULONG iparam,CALLFRAMEPARAMINFO *pInfo);
219 void __RPC_STUB ICallFrame_GetParamInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
220 HRESULT WINAPI ICallFrame_SetParam_Proxy(ICallFrame *This,ULONG iparam,VARIANT *pvar);
221 void __RPC_STUB ICallFrame_SetParam_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
222 HRESULT WINAPI ICallFrame_GetParam_Proxy(ICallFrame *This,ULONG iparam,VARIANT *pvar);
223 void __RPC_STUB ICallFrame_GetParam_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
224 HRESULT WINAPI ICallFrame_Copy_Proxy(ICallFrame *This,CALLFRAME_COPY copyControl,ICallFrameWalker *pWalker,ICallFrame **ppFrame);
225 void __RPC_STUB ICallFrame_Copy_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
226 HRESULT WINAPI ICallFrame_Free_Proxy(ICallFrame *This,ICallFrame *pframeArgsDest,ICallFrameWalker *pWalkerDestFree,ICallFrameWalker *pWalkerCopy,DWORD freeFlags,ICallFrameWalker *pWalkerFree,DWORD nullFlags);
227 void __RPC_STUB ICallFrame_Free_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
228 HRESULT WINAPI ICallFrame_FreeParam_Proxy(ICallFrame *This,ULONG iparam,DWORD freeFlags,ICallFrameWalker *pWalkerFree,DWORD nullFlags);
229 void __RPC_STUB ICallFrame_FreeParam_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
230 HRESULT WINAPI ICallFrame_WalkFrame_Proxy(ICallFrame *This,DWORD walkWhat,ICallFrameWalker *pWalker);
231 void __RPC_STUB ICallFrame_WalkFrame_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
232 HRESULT WINAPI ICallFrame_GetMarshalSizeMax_Proxy(ICallFrame *This,CALLFRAME_MARSHALCONTEXT *pmshlContext,MSHLFLAGS mshlflags,ULONG *pcbBufferNeeded);
233 void __RPC_STUB ICallFrame_GetMarshalSizeMax_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
234 HRESULT WINAPI ICallFrame_Marshal_Proxy(ICallFrame *This,CALLFRAME_MARSHALCONTEXT *pmshlContext,MSHLFLAGS mshlflags,PVOID pBuffer,ULONG cbBuffer,ULONG *pcbBufferUsed,RPCOLEDATAREP *pdataRep,ULONG *prpcFlags);
235 void __RPC_STUB ICallFrame_Marshal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
236 HRESULT WINAPI ICallFrame_Unmarshal_Proxy(ICallFrame *This,PVOID pBuffer,ULONG cbBuffer,RPCOLEDATAREP dataRep,CALLFRAME_MARSHALCONTEXT *pcontext,ULONG *pcbUnmarshalled);
237 void __RPC_STUB ICallFrame_Unmarshal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
238 HRESULT WINAPI ICallFrame_ReleaseMarshalData_Proxy(ICallFrame *This,PVOID pBuffer,ULONG cbBuffer,ULONG ibFirstRelease,RPCOLEDATAREP dataRep,CALLFRAME_MARSHALCONTEXT *pcontext);
239 void __RPC_STUB ICallFrame_ReleaseMarshalData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
240 HRESULT WINAPI ICallFrame_Invoke_Proxy(ICallFrame *This,void *pvReceiver,...);
241 void __RPC_STUB ICallFrame_Invoke_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
242#endif
243
244#ifndef __ICallIndirect_INTERFACE_DEFINED__
245#define __ICallIndirect_INTERFACE_DEFINED__
246 EXTERN_C const IID IID_ICallIndirect;
247#if defined(__cplusplus) && !defined(CINTERFACE)
248 struct ICallIndirect : public IUnknown {
249 public:
250 virtual HRESULT WINAPI CallIndirect(HRESULT *phrReturn,ULONG iMethod,void *pvArgs,ULONG *cbArgs) = 0;
251 virtual HRESULT WINAPI GetMethodInfo(ULONG iMethod,CALLFRAMEINFO *pInfo,LPWSTR *pwszMethod) = 0;
252 virtual HRESULT WINAPI GetStackSize(ULONG iMethod,ULONG *cbArgs) = 0;
253 virtual HRESULT WINAPI GetIID(IID *piid,WINBOOL *pfDerivesFromIDispatch,ULONG *pcMethod,LPWSTR *pwszInterface) = 0;
254 };
255#else
256 typedef struct ICallIndirectVtbl {
257 BEGIN_INTERFACE
258 HRESULT (WINAPI *QueryInterface)(ICallIndirect *This,REFIID riid,void **ppvObject);
259 ULONG (WINAPI *AddRef)(ICallIndirect *This);
260 ULONG (WINAPI *Release)(ICallIndirect *This);
261 HRESULT (WINAPI *CallIndirect)(ICallIndirect *This,HRESULT *phrReturn,ULONG iMethod,void *pvArgs,ULONG *cbArgs);
262 HRESULT (WINAPI *GetMethodInfo)(ICallIndirect *This,ULONG iMethod,CALLFRAMEINFO *pInfo,LPWSTR *pwszMethod);
263 HRESULT (WINAPI *GetStackSize)(ICallIndirect *This,ULONG iMethod,ULONG *cbArgs);
264 HRESULT (WINAPI *GetIID)(ICallIndirect *This,IID *piid,WINBOOL *pfDerivesFromIDispatch,ULONG *pcMethod,LPWSTR *pwszInterface);
265 END_INTERFACE
266 } ICallIndirectVtbl;
267 struct ICallIndirect {
268 CONST_VTBL struct ICallIndirectVtbl *lpVtbl;
269 };
270#ifdef COBJMACROS
271#define ICallIndirect_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
272#define ICallIndirect_AddRef(This) (This)->lpVtbl->AddRef(This)
273#define ICallIndirect_Release(This) (This)->lpVtbl->Release(This)
274#define ICallIndirect_CallIndirect(This,phrReturn,iMethod,pvArgs,cbArgs) (This)->lpVtbl->CallIndirect(This,phrReturn,iMethod,pvArgs,cbArgs)
275#define ICallIndirect_GetMethodInfo(This,iMethod,pInfo,pwszMethod) (This)->lpVtbl->GetMethodInfo(This,iMethod,pInfo,pwszMethod)
276#define ICallIndirect_GetStackSize(This,iMethod,cbArgs) (This)->lpVtbl->GetStackSize(This,iMethod,cbArgs)
277#define ICallIndirect_GetIID(This,piid,pfDerivesFromIDispatch,pcMethod,pwszInterface) (This)->lpVtbl->GetIID(This,piid,pfDerivesFromIDispatch,pcMethod,pwszInterface)
278#endif
279#endif
280 HRESULT WINAPI ICallIndirect_CallIndirect_Proxy(ICallIndirect *This,HRESULT *phrReturn,ULONG iMethod,void *pvArgs,ULONG *cbArgs);
281 void __RPC_STUB ICallIndirect_CallIndirect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
282 HRESULT WINAPI ICallIndirect_GetMethodInfo_Proxy(ICallIndirect *This,ULONG iMethod,CALLFRAMEINFO *pInfo,LPWSTR *pwszMethod);
283 void __RPC_STUB ICallIndirect_GetMethodInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
284 HRESULT WINAPI ICallIndirect_GetStackSize_Proxy(ICallIndirect *This,ULONG iMethod,ULONG *cbArgs);
285 void __RPC_STUB ICallIndirect_GetStackSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
286 HRESULT WINAPI ICallIndirect_GetIID_Proxy(ICallIndirect *This,IID *piid,WINBOOL *pfDerivesFromIDispatch,ULONG *pcMethod,LPWSTR *pwszInterface);
287 void __RPC_STUB ICallIndirect_GetIID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
288#endif
289
290#ifndef __ICallInterceptor_INTERFACE_DEFINED__
291#define __ICallInterceptor_INTERFACE_DEFINED__
292 EXTERN_C const IID IID_ICallInterceptor;
293#if defined(__cplusplus) && !defined(CINTERFACE)
294 struct ICallInterceptor : public ICallIndirect {
295 public:
296 virtual HRESULT WINAPI RegisterSink(ICallFrameEvents *psink) = 0;
297 virtual HRESULT WINAPI GetRegisteredSink(ICallFrameEvents **ppsink) = 0;
298 };
299#else
300 typedef struct ICallInterceptorVtbl {
301 BEGIN_INTERFACE
302 HRESULT (WINAPI *QueryInterface)(ICallInterceptor *This,REFIID riid,void **ppvObject);
303 ULONG (WINAPI *AddRef)(ICallInterceptor *This);
304 ULONG (WINAPI *Release)(ICallInterceptor *This);
305 HRESULT (WINAPI *CallIndirect)(ICallInterceptor *This,HRESULT *phrReturn,ULONG iMethod,void *pvArgs,ULONG *cbArgs);
306 HRESULT (WINAPI *GetMethodInfo)(ICallInterceptor *This,ULONG iMethod,CALLFRAMEINFO *pInfo,LPWSTR *pwszMethod);
307 HRESULT (WINAPI *GetStackSize)(ICallInterceptor *This,ULONG iMethod,ULONG *cbArgs);
308 HRESULT (WINAPI *GetIID)(ICallInterceptor *This,IID *piid,WINBOOL *pfDerivesFromIDispatch,ULONG *pcMethod,LPWSTR *pwszInterface);
309 HRESULT (WINAPI *RegisterSink)(ICallInterceptor *This,ICallFrameEvents *psink);
310 HRESULT (WINAPI *GetRegisteredSink)(ICallInterceptor *This,ICallFrameEvents **ppsink);
311 END_INTERFACE
312 } ICallInterceptorVtbl;
313 struct ICallInterceptor {
314 CONST_VTBL struct ICallInterceptorVtbl *lpVtbl;
315 };
316#ifdef COBJMACROS
317#define ICallInterceptor_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
318#define ICallInterceptor_AddRef(This) (This)->lpVtbl->AddRef(This)
319#define ICallInterceptor_Release(This) (This)->lpVtbl->Release(This)
320#define ICallInterceptor_CallIndirect(This,phrReturn,iMethod,pvArgs,cbArgs) (This)->lpVtbl->CallIndirect(This,phrReturn,iMethod,pvArgs,cbArgs)
321#define ICallInterceptor_GetMethodInfo(This,iMethod,pInfo,pwszMethod) (This)->lpVtbl->GetMethodInfo(This,iMethod,pInfo,pwszMethod)
322#define ICallInterceptor_GetStackSize(This,iMethod,cbArgs) (This)->lpVtbl->GetStackSize(This,iMethod,cbArgs)
323#define ICallInterceptor_GetIID(This,piid,pfDerivesFromIDispatch,pcMethod,pwszInterface) (This)->lpVtbl->GetIID(This,piid,pfDerivesFromIDispatch,pcMethod,pwszInterface)
324#define ICallInterceptor_RegisterSink(This,psink) (This)->lpVtbl->RegisterSink(This,psink)
325#define ICallInterceptor_GetRegisteredSink(This,ppsink) (This)->lpVtbl->GetRegisteredSink(This,ppsink)
326#endif
327#endif
328 HRESULT WINAPI ICallInterceptor_RegisterSink_Proxy(ICallInterceptor *This,ICallFrameEvents *psink);
329 void __RPC_STUB ICallInterceptor_RegisterSink_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
330 HRESULT WINAPI ICallInterceptor_GetRegisteredSink_Proxy(ICallInterceptor *This,ICallFrameEvents **ppsink);
331 void __RPC_STUB ICallInterceptor_GetRegisteredSink_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
332#endif
333
334#ifndef __ICallFrameEvents_INTERFACE_DEFINED__
335#define __ICallFrameEvents_INTERFACE_DEFINED__
336 EXTERN_C const IID IID_ICallFrameEvents;
337#if defined(__cplusplus) && !defined(CINTERFACE)
338 struct ICallFrameEvents : public IUnknown {
339 public:
340 virtual HRESULT WINAPI OnCall(ICallFrame *pFrame) = 0;
341 };
342#else
343 typedef struct ICallFrameEventsVtbl {
344 BEGIN_INTERFACE
345 HRESULT (WINAPI *QueryInterface)(ICallFrameEvents *This,REFIID riid,void **ppvObject);
346 ULONG (WINAPI *AddRef)(ICallFrameEvents *This);
347 ULONG (WINAPI *Release)(ICallFrameEvents *This);
348 HRESULT (WINAPI *OnCall)(ICallFrameEvents *This,ICallFrame *pFrame);
349 END_INTERFACE
350 } ICallFrameEventsVtbl;
351 struct ICallFrameEvents {
352 CONST_VTBL struct ICallFrameEventsVtbl *lpVtbl;
353 };
354#ifdef COBJMACROS
355#define ICallFrameEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
356#define ICallFrameEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
357#define ICallFrameEvents_Release(This) (This)->lpVtbl->Release(This)
358#define ICallFrameEvents_OnCall(This,pFrame) (This)->lpVtbl->OnCall(This,pFrame)
359#endif
360#endif
361 HRESULT WINAPI ICallFrameEvents_OnCall_Proxy(ICallFrameEvents *This,ICallFrame *pFrame);
362 void __RPC_STUB ICallFrameEvents_OnCall_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
363#endif
364
365#ifndef __ICallUnmarshal_INTERFACE_DEFINED__
366#define __ICallUnmarshal_INTERFACE_DEFINED__
367 EXTERN_C const IID IID_ICallUnmarshal;
368#if defined(__cplusplus) && !defined(CINTERFACE)
369 struct ICallUnmarshal : public IUnknown {
370 public:
371 virtual HRESULT WINAPI Unmarshal(ULONG iMethod,PVOID pBuffer,ULONG cbBuffer,WINBOOL fForceBufferCopy,RPCOLEDATAREP dataRep,CALLFRAME_MARSHALCONTEXT *pcontext,ULONG *pcbUnmarshalled,ICallFrame **ppFrame) = 0;
372 virtual HRESULT WINAPI ReleaseMarshalData(ULONG iMethod,PVOID pBuffer,ULONG cbBuffer,ULONG ibFirstRelease,RPCOLEDATAREP dataRep,CALLFRAME_MARSHALCONTEXT *pcontext) = 0;
373 };
374#else
375 typedef struct ICallUnmarshalVtbl {
376 BEGIN_INTERFACE
377 HRESULT (WINAPI *QueryInterface)(ICallUnmarshal *This,REFIID riid,void **ppvObject);
378 ULONG (WINAPI *AddRef)(ICallUnmarshal *This);
379 ULONG (WINAPI *Release)(ICallUnmarshal *This);
380 HRESULT (WINAPI *Unmarshal)(ICallUnmarshal *This,ULONG iMethod,PVOID pBuffer,ULONG cbBuffer,WINBOOL fForceBufferCopy,RPCOLEDATAREP dataRep,CALLFRAME_MARSHALCONTEXT *pcontext,ULONG *pcbUnmarshalled,ICallFrame **ppFrame);
381 HRESULT (WINAPI *ReleaseMarshalData)(ICallUnmarshal *This,ULONG iMethod,PVOID pBuffer,ULONG cbBuffer,ULONG ibFirstRelease,RPCOLEDATAREP dataRep,CALLFRAME_MARSHALCONTEXT *pcontext);
382 END_INTERFACE
383 } ICallUnmarshalVtbl;
384 struct ICallUnmarshal {
385 CONST_VTBL struct ICallUnmarshalVtbl *lpVtbl;
386 };
387#ifdef COBJMACROS
388#define ICallUnmarshal_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
389#define ICallUnmarshal_AddRef(This) (This)->lpVtbl->AddRef(This)
390#define ICallUnmarshal_Release(This) (This)->lpVtbl->Release(This)
391#define ICallUnmarshal_Unmarshal(This,iMethod,pBuffer,cbBuffer,fForceBufferCopy,dataRep,pcontext,pcbUnmarshalled,ppFrame) (This)->lpVtbl->Unmarshal(This,iMethod,pBuffer,cbBuffer,fForceBufferCopy,dataRep,pcontext,pcbUnmarshalled,ppFrame)
392#define ICallUnmarshal_ReleaseMarshalData(This,iMethod,pBuffer,cbBuffer,ibFirstRelease,dataRep,pcontext) (This)->lpVtbl->ReleaseMarshalData(This,iMethod,pBuffer,cbBuffer,ibFirstRelease,dataRep,pcontext)
393#endif
394#endif
395 HRESULT WINAPI ICallUnmarshal_Unmarshal_Proxy(ICallUnmarshal *This,ULONG iMethod,PVOID pBuffer,ULONG cbBuffer,WINBOOL fForceBufferCopy,RPCOLEDATAREP dataRep,CALLFRAME_MARSHALCONTEXT *pcontext,ULONG *pcbUnmarshalled,ICallFrame **ppFrame);
396 void __RPC_STUB ICallUnmarshal_Unmarshal_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
397 HRESULT WINAPI ICallUnmarshal_ReleaseMarshalData_Proxy(ICallUnmarshal *This,ULONG iMethod,PVOID pBuffer,ULONG cbBuffer,ULONG ibFirstRelease,RPCOLEDATAREP dataRep,CALLFRAME_MARSHALCONTEXT *pcontext);
398 void __RPC_STUB ICallUnmarshal_ReleaseMarshalData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
399#endif
400
401#ifndef __ICallFrameWalker_INTERFACE_DEFINED__
402#define __ICallFrameWalker_INTERFACE_DEFINED__
403 EXTERN_C const IID IID_ICallFrameWalker;
404#if defined(__cplusplus) && !defined(CINTERFACE)
405 struct ICallFrameWalker : public IUnknown {
406 public:
407 virtual HRESULT WINAPI OnWalkInterface(REFIID iid,PVOID *ppvInterface,WINBOOL fIn,WINBOOL fOut) = 0;
408 };
409#else
410 typedef struct ICallFrameWalkerVtbl {
411 BEGIN_INTERFACE
412 HRESULT (WINAPI *QueryInterface)(ICallFrameWalker *This,REFIID riid,void **ppvObject);
413 ULONG (WINAPI *AddRef)(ICallFrameWalker *This);
414 ULONG (WINAPI *Release)(ICallFrameWalker *This);
415 HRESULT (WINAPI *OnWalkInterface)(ICallFrameWalker *This,REFIID iid,PVOID *ppvInterface,WINBOOL fIn,WINBOOL fOut);
416 END_INTERFACE
417 } ICallFrameWalkerVtbl;
418 struct ICallFrameWalker {
419 CONST_VTBL struct ICallFrameWalkerVtbl *lpVtbl;
420 };
421#ifdef COBJMACROS
422#define ICallFrameWalker_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
423#define ICallFrameWalker_AddRef(This) (This)->lpVtbl->AddRef(This)
424#define ICallFrameWalker_Release(This) (This)->lpVtbl->Release(This)
425#define ICallFrameWalker_OnWalkInterface(This,iid,ppvInterface,fIn,fOut) (This)->lpVtbl->OnWalkInterface(This,iid,ppvInterface,fIn,fOut)
426#endif
427#endif
428 HRESULT WINAPI ICallFrameWalker_OnWalkInterface_Proxy(ICallFrameWalker *This,REFIID iid,PVOID *ppvInterface,WINBOOL fIn,WINBOOL fOut);
429 void __RPC_STUB ICallFrameWalker_OnWalkInterface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
430#endif
431
432#ifndef __IInterfaceRelated_INTERFACE_DEFINED__
433#define __IInterfaceRelated_INTERFACE_DEFINED__
434 EXTERN_C const IID IID_IInterfaceRelated;
435#if defined(__cplusplus) && !defined(CINTERFACE)
436 struct IInterfaceRelated : public IUnknown {
437 public:
438 virtual HRESULT WINAPI SetIID(REFIID iid) = 0;
439 virtual HRESULT WINAPI GetIID(IID *piid) = 0;
440 };
441#else
442 typedef struct IInterfaceRelatedVtbl {
443 BEGIN_INTERFACE
444 HRESULT (WINAPI *QueryInterface)(IInterfaceRelated *This,REFIID riid,void **ppvObject);
445 ULONG (WINAPI *AddRef)(IInterfaceRelated *This);
446 ULONG (WINAPI *Release)(IInterfaceRelated *This);
447 HRESULT (WINAPI *SetIID)(IInterfaceRelated *This,REFIID iid);
448 HRESULT (WINAPI *GetIID)(IInterfaceRelated *This,IID *piid);
449 END_INTERFACE
450 } IInterfaceRelatedVtbl;
451 struct IInterfaceRelated {
452 CONST_VTBL struct IInterfaceRelatedVtbl *lpVtbl;
453 };
454#ifdef COBJMACROS
455#define IInterfaceRelated_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
456#define IInterfaceRelated_AddRef(This) (This)->lpVtbl->AddRef(This)
457#define IInterfaceRelated_Release(This) (This)->lpVtbl->Release(This)
458#define IInterfaceRelated_SetIID(This,iid) (This)->lpVtbl->SetIID(This,iid)
459#define IInterfaceRelated_GetIID(This,piid) (This)->lpVtbl->GetIID(This,piid)
460#endif
461#endif
462 HRESULT WINAPI IInterfaceRelated_SetIID_Proxy(IInterfaceRelated *This,REFIID iid);
463 void __RPC_STUB IInterfaceRelated_SetIID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
464 HRESULT WINAPI IInterfaceRelated_GetIID_Proxy(IInterfaceRelated *This,IID *piid);
465 void __RPC_STUB IInterfaceRelated_GetIID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
466#endif
467
468#define CALLFRAME_E_ALREADYINVOKED _HRESULT_TYPEDEF_(0x8004d090)
469#define CALLFRAME_E_COULDNTMAKECALL _HRESULT_TYPEDEF_(0x8004d091)
470
471 extern RPC_IF_HANDLE __MIDL_itf_callobj_0122_v0_0_c_ifspec;
472 extern RPC_IF_HANDLE __MIDL_itf_callobj_0122_v0_0_s_ifspec;
473
474#ifndef __ICallFrameAPIs_INTERFACE_DEFINED__
475#define __ICallFrameAPIs_INTERFACE_DEFINED__
476 HRESULT WINAPI CoGetInterceptor(REFIID iidIntercepted,IUnknown *punkOuter,REFIID iid,void **ppv);
477 HRESULT WINAPI CoGetInterceptorFromTypeInfo(REFIID iidIntercepted,IUnknown *punkOuter,ITypeInfo *typeInfo,REFIID iid,void **ppv);
478
479 extern RPC_IF_HANDLE ICallFrameAPIs_v0_0_c_ifspec;
480 extern RPC_IF_HANDLE ICallFrameAPIs_v0_0_s_ifspec;
481#endif
482
483#ifdef __cplusplus
484}
485#endif
486#endif
Note: See TracBrowser for help on using the repository browser.