wine/include/servprov.h

108 lines
3.1 KiB
C
Raw Normal View History

2003-09-03 20:20:49 +00:00
/*** Autogenerated by WIDL 0.1 from servprov.idl - Do not edit ***/
#include <rpc.h>
#include <rpcndr.h>
2003-09-03 20:20:49 +00:00
#ifndef __WIDL_SERVPROV_H
#define __WIDL_SERVPROV_H
#ifdef __cplusplus
extern "C" {
#endif
#include <objidl.h>
#ifndef __IServiceProvider_FWD_DEFINED__
#define __IServiceProvider_FWD_DEFINED__
typedef struct IServiceProvider IServiceProvider;
#endif
2003-09-03 20:20:49 +00:00
typedef IServiceProvider *LPSERVICEPROVIDER;
2003-09-03 20:20:49 +00:00
/*****************************************************************************
* IServiceProvider interface
*/
#ifndef __IServiceProvider_INTERFACE_DEFINED__
#define __IServiceProvider_INTERFACE_DEFINED__
2003-09-03 20:20:49 +00:00
DEFINE_GUID(IID_IServiceProvider, 0x6d5140c1, 0x7436, 0x11ce, 0x80,0x34, 0x00,0xaa,0x00,0x60,0x09,0xfa);
#if defined(__cplusplus) && !defined(CINTERFACE)
struct IServiceProvider : public IUnknown
{
virtual HRESULT STDMETHODCALLTYPE QueryService(
REFGUID guidService,
REFIID riid,
void** ppvObject) = 0;
2003-09-03 20:20:49 +00:00
};
#else
typedef struct IServiceProviderVtbl IServiceProviderVtbl;
struct IServiceProvider {
const IServiceProviderVtbl* lpVtbl;
};
struct IServiceProviderVtbl {
ICOM_MSVTABLE_COMPAT_FIELDS
2003-09-03 20:20:49 +00:00
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IServiceProvider* This,
REFIID riid,
void** ppvObject);
2003-09-03 20:20:49 +00:00
ULONG (STDMETHODCALLTYPE *AddRef)(
IServiceProvider* This);
2003-09-03 20:20:49 +00:00
ULONG (STDMETHODCALLTYPE *Release)(
IServiceProvider* This);
/*** IServiceProvider methods ***/
HRESULT (STDMETHODCALLTYPE *QueryService)(
IServiceProvider* This,
REFGUID guidService,
REFIID riid,
void** ppvObject);
};
/*** IUnknown methods ***/
2003-04-10 21:13:58 +00:00
#define IServiceProvider_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2003-09-03 20:20:49 +00:00
#define IServiceProvider_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IServiceProvider_Release(p) (p)->lpVtbl->Release(p)
/*** IServiceProvider methods ***/
2003-04-10 21:13:58 +00:00
#define IServiceProvider_QueryService(p,a,b,c) (p)->lpVtbl->QueryService(p,a,b,c)
2003-09-03 20:20:49 +00:00
2003-04-10 21:13:58 +00:00
#endif
2003-09-03 20:20:49 +00:00
#define IServiceProvider_METHODS \
ICOM_MSVTABLE_COMPAT_FIELDS \
/*** IUnknown methods ***/ \
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
STDMETHOD_(ULONG,Release)(THIS) PURE; \
/*** IServiceProvider methods ***/ \
STDMETHOD_(HRESULT,QueryService)(THIS_ REFGUID guidService, REFIID riid, void** ppvObject) PURE;
HRESULT CALLBACK IServiceProvider_RemoteQueryService_Proxy(
IServiceProvider* This,
REFGUID guidService,
REFIID riid,
IUnknown** ppvObject);
void __RPC_STUB IServiceProvider_RemoteQueryService_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IServiceProvider_QueryService_Proxy(
IServiceProvider* This,
REFGUID guidService,
REFIID riid,
void** ppvObject);
HRESULT __RPC_STUB IServiceProvider_QueryService_Stub(
IServiceProvider* This,
REFGUID guidService,
REFIID riid,
IUnknown** ppvObject);
2003-09-03 20:20:49 +00:00
#endif /* __IServiceProvider_INTERFACE_DEFINED__ */
#ifdef __cplusplus
}
#endif
#endif /* __WIDL_SERVPROV_H */