source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/servprov.h@ 1194

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

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

File size: 5.4 KB
RevLine 
[1166]1/*** Autogenerated by WIDL 6.4 from include/servprov.idl - Do not edit ***/
2
3#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__
5#define __REQUIRED_RPCNDR_H_VERSION__ 475
6#endif
7#include <rpc.h>
8#include <rpcndr.h>
9#endif
10
11#ifndef COM_NO_WINDOWS_H
12#include <windows.h>
13#include <ole2.h>
14#endif
15
16#ifndef __servprov_h__
17#define __servprov_h__
18
19/* Forward declarations */
20
21#ifndef __IServiceProvider_FWD_DEFINED__
22#define __IServiceProvider_FWD_DEFINED__
23typedef interface IServiceProvider IServiceProvider;
24#ifdef __cplusplus
25interface IServiceProvider;
26#endif /* __cplusplus */
27#endif
28
29/* Headers for imported files */
30
31#include <objidl.h>
32
33#ifdef __cplusplus
34extern "C" {
35#endif
36
37/**
38 * This file is part of the mingw-w64 runtime package.
39 * No warranty is given; refer to the file DISCLAIMER within this package.
40 */
41
42#include <winapifamily.h>
43
44#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
45
46
47#ifndef __IServiceProvider_FWD_DEFINED__
48#define __IServiceProvider_FWD_DEFINED__
49typedef interface IServiceProvider IServiceProvider;
50#ifdef __cplusplus
51interface IServiceProvider;
52#endif /* __cplusplus */
53#endif
54
55
56/*****************************************************************************
57 * IServiceProvider interface
58 */
59#ifndef __IServiceProvider_INTERFACE_DEFINED__
60#define __IServiceProvider_INTERFACE_DEFINED__
61
62typedef IServiceProvider *LPSERVICEPROVIDER;
63#if defined(__cplusplus) && !defined(CINTERFACE)
64EXTERN_C const IID IID_IServiceProvider;
65extern "C++" {
66MIDL_INTERFACE("6d5140c1-7436-11ce-8034-00aa006009fa")
67IServiceProvider : public IUnknown {
68public:
69virtual HRESULT STDMETHODCALLTYPE QueryService(REFGUID guidService, REFIID riid, void **ppvObject) = 0;
70
71template <class Q>
72HRESULT STDMETHODCALLTYPE QueryService(REFGUID guidService, Q **pp) {
73 return QueryService(guidService, __uuidof(Q), (void **)pp);
74}
75};
76}
77
78HRESULT STDMETHODCALLTYPE IServiceProvider_RemoteQueryService_Proxy(IServiceProvider *This, REFGUID guidService, REFIID riid, IUnknown **ppvObject);
79void __RPC_STUB IServiceProvider_RemoteQueryService_Stub(IRpcStubBuffer *This, IRpcChannelBuffer *_pRpcChannelBuffer, PRPC_MESSAGE _pRpcMessage, DWORD *_pdwStubPhase);
80#ifdef __CRT_UUID_DECL
81__CRT_UUID_DECL(IServiceProvider, 0x6d5140c1, 0x7436, 0x11ce, 0x80,0x34, 0x00,0xaa,0x00,0x60,0x09,0xfa)
82#endif
83#else
84DEFINE_GUID(IID_IServiceProvider, 0x6d5140c1, 0x7436, 0x11ce, 0x80,0x34, 0x00,0xaa,0x00,0x60,0x09,0xfa);
85#if defined(__cplusplus) && !defined(CINTERFACE)
86MIDL_INTERFACE("6d5140c1-7436-11ce-8034-00aa006009fa")
87IServiceProvider : public IUnknown
88{
89 virtual HRESULT STDMETHODCALLTYPE QueryService(
90 REFGUID guidService,
91 REFIID riid,
92 void **ppvObject) = 0;
93
94};
95#ifdef __CRT_UUID_DECL
96__CRT_UUID_DECL(IServiceProvider, 0x6d5140c1, 0x7436, 0x11ce, 0x80,0x34, 0x00,0xaa,0x00,0x60,0x09,0xfa)
97#endif
98#else
99typedef struct IServiceProviderVtbl {
100 BEGIN_INTERFACE
101
102 /*** IUnknown methods ***/
103 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
104 IServiceProvider *This,
105 REFIID riid,
106 void **ppvObject);
107
108 ULONG (STDMETHODCALLTYPE *AddRef)(
109 IServiceProvider *This);
110
111 ULONG (STDMETHODCALLTYPE *Release)(
112 IServiceProvider *This);
113
114 /*** IServiceProvider methods ***/
115 HRESULT (STDMETHODCALLTYPE *QueryService)(
116 IServiceProvider *This,
117 REFGUID guidService,
118 REFIID riid,
119 void **ppvObject);
120
121 END_INTERFACE
122} IServiceProviderVtbl;
123
124interface IServiceProvider {
125 CONST_VTBL IServiceProviderVtbl* lpVtbl;
126};
127
128#ifdef COBJMACROS
129#ifndef WIDL_C_INLINE_WRAPPERS
130/*** IUnknown methods ***/
131#define IServiceProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
132#define IServiceProvider_AddRef(This) (This)->lpVtbl->AddRef(This)
133#define IServiceProvider_Release(This) (This)->lpVtbl->Release(This)
134/*** IServiceProvider methods ***/
135#define IServiceProvider_QueryService(This,guidService,riid,ppvObject) (This)->lpVtbl->QueryService(This,guidService,riid,ppvObject)
136#else
137/*** IUnknown methods ***/
138static FORCEINLINE HRESULT IServiceProvider_QueryInterface(IServiceProvider* This,REFIID riid,void **ppvObject) {
139 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
140}
141static FORCEINLINE ULONG IServiceProvider_AddRef(IServiceProvider* This) {
142 return This->lpVtbl->AddRef(This);
143}
144static FORCEINLINE ULONG IServiceProvider_Release(IServiceProvider* This) {
145 return This->lpVtbl->Release(This);
146}
147/*** IServiceProvider methods ***/
148static FORCEINLINE HRESULT IServiceProvider_QueryService(IServiceProvider* This,REFGUID guidService,REFIID riid,void **ppvObject) {
149 return This->lpVtbl->QueryService(This,guidService,riid,ppvObject);
150}
151#endif
152#endif
153
154#endif
155
156HRESULT STDMETHODCALLTYPE IServiceProvider_RemoteQueryService_Proxy(
157 IServiceProvider* This,
158 REFGUID guidService,
159 REFIID riid,
160 IUnknown **ppvObject);
161void __RPC_STUB IServiceProvider_RemoteQueryService_Stub(
162 IRpcStubBuffer* This,
163 IRpcChannelBuffer* pRpcChannelBuffer,
164 PRPC_MESSAGE pRpcMessage,
165 DWORD* pdwStubPhase);
166HRESULT CALLBACK IServiceProvider_QueryService_Proxy(
167 IServiceProvider* This,
168 REFGUID guidService,
169 REFIID riid,
170 void **ppvObject);
171HRESULT __RPC_STUB IServiceProvider_QueryService_Stub(
172 IServiceProvider* This,
173 REFGUID guidService,
174 REFIID riid,
175 IUnknown **ppvObject);
176
177#endif /* __IServiceProvider_INTERFACE_DEFINED__ */
178
179#endif
180
181#endif
182/* Begin additional prototypes for all interfaces */
183
184
185/* End additional prototypes */
186
187#ifdef __cplusplus
188}
189#endif
190
191#endif /* __servprov_h__ */
Note: See TracBrowser for help on using the repository browser.