ReactOS 0.4.15-dev-7958-gcd0bb1a
cpsf.h
Go to the documentation of this file.
1/*
2 * COM proxy definitions
3 *
4 * Copyright 2001 Ove Kåven, TransGaming Technologies
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 */
20
21#ifndef __WINE_CPSF_H
22#define __WINE_CPSF_H
23
24typedef struct
25{
27 void **PVtbl;
29 const IID *piid;
31 /* offset of base_object from PVtbl must match assembly thunks; see
32 * fill_delegated_proxy_table() */
39
40typedef struct
41{
42 IUnknownVtbl *base_obj;
46
47HRESULT StdProxy_Construct(REFIID riid, LPUNKNOWN pUnkOuter, const ProxyFileInfo *ProxyInfo,
48 int Index, LPPSFACTORYBUFFER pPSFactory, LPRPCPROXYBUFFER *ppProxy,
49 LPVOID *ppvObj) DECLSPEC_HIDDEN;
54
56 CInterfaceStubVtbl *vtbl, LPPSFACTORYBUFFER pPSFactory,
58
60 CInterfaceStubVtbl *vtbl, REFIID delegating_iid,
61 LPPSFACTORYBUFFER pPSFactory, LPRPCSTUBBUFFER *ppStub) DECLSPEC_HIDDEN;
62
64
65extern const IRpcStubBufferVtbl CStdStubBuffer_Vtbl DECLSPEC_HIDDEN;
66extern const IRpcStubBufferVtbl CStdStubBuffer_Delegating_Vtbl DECLSPEC_HIDDEN;
67
69HRESULT create_proxy(REFIID iid, IUnknown *pUnkOuter, IRpcProxyBuffer **pproxy, void **ppv) DECLSPEC_HIDDEN;
72IUnknownVtbl *get_delegating_vtbl(DWORD num_methods) DECLSPEC_HIDDEN;
73void release_delegating_vtbl(IUnknownVtbl *vtbl) DECLSPEC_HIDDEN;
74
75#endif /* __WINE_CPSF_H */
HRESULT WINAPI StdProxy_Connect(IRpcProxyBuffer *iface, IRpcChannelBuffer *channel) DECLSPEC_HIDDEN
Definition: cproxy.c:420
const MIDL_SERVER_INFO * CStdStubBuffer_GetServerInfo(IRpcStubBuffer *iface) DECLSPEC_HIDDEN
Definition: cstub.c:615
BOOL fill_stubless_table(IUnknownVtbl *vtbl, DWORD num) DECLSPEC_HIDDEN
Definition: cproxy.c:285
void release_delegating_vtbl(IUnknownVtbl *vtbl) DECLSPEC_HIDDEN
Definition: cstub.c:325
const IRpcStubBufferVtbl CStdStubBuffer_Vtbl DECLSPEC_HIDDEN
Definition: cpsf.h:66
HRESULT create_proxy(REFIID iid, IUnknown *pUnkOuter, IRpcProxyBuffer **pproxy, void **ppv) DECLSPEC_HIDDEN
Definition: ndr_ole.c:442
IUnknownVtbl * get_delegating_vtbl(DWORD num_methods) DECLSPEC_HIDDEN
Definition: cstub.c:289
BOOL fill_delegated_proxy_table(IUnknownVtbl *vtbl, DWORD num) DECLSPEC_HIDDEN
Definition: cstub.c:266
HRESULT StdProxy_Construct(REFIID riid, LPUNKNOWN pUnkOuter, const ProxyFileInfo *ProxyInfo, int Index, LPPSFACTORYBUFFER pPSFactory, LPRPCPROXYBUFFER *ppProxy, LPVOID *ppvObj) DECLSPEC_HIDDEN
Definition: cproxy.c:305
HRESULT create_stub(REFIID iid, IUnknown *pUnk, IRpcStubBuffer **ppstub) DECLSPEC_HIDDEN
Definition: ndr_ole.c:466
HRESULT CStdStubBuffer_Delegating_Construct(REFIID riid, LPUNKNOWN pUnkServer, PCInterfaceName name, CInterfaceStubVtbl *vtbl, REFIID delegating_iid, LPPSFACTORYBUFFER pPSFactory, LPRPCSTUBBUFFER *ppStub) DECLSPEC_HIDDEN
Definition: cstub.c:340
ULONG WINAPI StdProxy_AddRef(IRpcProxyBuffer *iface) DECLSPEC_HIDDEN
Definition: cproxy.c:390
HRESULT WINAPI StdProxy_QueryInterface(IRpcProxyBuffer *iface, REFIID iid, void **obj) DECLSPEC_HIDDEN
Definition: cproxy.c:369
HRESULT CStdStubBuffer_Construct(REFIID riid, LPUNKNOWN pUnkServer, PCInterfaceName name, CInterfaceStubVtbl *vtbl, LPPSFACTORYBUFFER pPSFactory, LPRPCSTUBBUFFER *ppStub) DECLSPEC_HIDDEN
Definition: cstub.c:55
void WINAPI StdProxy_Disconnect(IRpcProxyBuffer *iface) DECLSPEC_HIDDEN
Definition: cproxy.c:431
const IRpcStubBufferVtbl CStdStubBuffer_Delegating_Vtbl
Definition: cstub.c:601
const IRpcStubBufferVtbl CStdStubBuffer_Vtbl
Definition: cstub.c:552
static void *static void *static LPDIRECTPLAY IUnknown * pUnk
Definition: dplayx.c:30
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
GLuint GLuint num
Definition: glext.h:9618
REFIID riid
Definition: atlbase.h:39
REFIID LPVOID * ppv
Definition: atlbase.h:39
static LPUNKNOWN
Definition: ndr_ole.c:49
interface IRpcStubBuffer * LPRPCSTUBBUFFER
Definition: objfwd.h:41
interface IRpcProxyBuffer * LPRPCPROXYBUFFER
Definition: objfwd.h:40
long LONG
Definition: pedump.c:60
#define REFIID
Definition: guiddef.h:118
const char * PCInterfaceName
Definition: rpcproxy.h:42
PCInterfaceName name
Definition: cpsf.h:35
const IID * piid
Definition: cpsf.h:29
LONG RefCount
Definition: cpsf.h:28
IUnknown * pUnkOuter
Definition: cpsf.h:30
IPSFactoryBuffer * pPSFactory
Definition: cpsf.h:36
IRpcProxyBuffer * base_proxy
Definition: cpsf.h:34
IRpcChannelBuffer * pChannel
Definition: cpsf.h:37
IUnknown * base_object
Definition: cpsf.h:33
void ** PVtbl
Definition: cpsf.h:27
IRpcProxyBuffer IRpcProxyBuffer_iface
Definition: cpsf.h:26
IUnknownVtbl * base_obj
Definition: cpsf.h:42
CStdStubBuffer stub_buffer
Definition: cpsf.h:44
IRpcStubBuffer * base_stub
Definition: cpsf.h:43
Definition: name.c:39
uint32_t ULONG
Definition: typedefs.h:59
_In_ WDFCOLLECTION _In_ ULONG Index
#define WINAPI
Definition: msvc.h:6