servprov.h (5550B) - Raw
1 /*** Autogenerated by WIDL 10.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__ 23 typedef interface IServiceProvider IServiceProvider; 24 #ifdef __cplusplus 25 interface IServiceProvider; 26 #endif /* __cplusplus */ 27 #endif 28 29 /* Headers for imported files */ 30 31 #include <objidl.h> 32 33 #ifdef __cplusplus 34 extern "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__ 49 typedef interface IServiceProvider IServiceProvider; 50 #ifdef __cplusplus 51 interface IServiceProvider; 52 #endif /* __cplusplus */ 53 #endif 54 55 56 /***************************************************************************** 57 * IServiceProvider interface 58 */ 59 #ifndef __IServiceProvider_INTERFACE_DEFINED__ 60 #define __IServiceProvider_INTERFACE_DEFINED__ 61 62 typedef IServiceProvider *LPSERVICEPROVIDER; 63 #if defined(__cplusplus) && !defined(CINTERFACE) 64 EXTERN_C const IID IID_IServiceProvider; 65 extern "C++" { 66 MIDL_INTERFACE("6d5140c1-7436-11ce-8034-00aa006009fa") 67 IServiceProvider : public IUnknown { 68 public: 69 virtual HRESULT STDMETHODCALLTYPE QueryService(REFGUID guidService, REFIID riid, void **ppvObject) = 0; 70 71 template <class Q> 72 HRESULT STDMETHODCALLTYPE QueryService(REFGUID guidService, Q **pp) { 73 return QueryService(guidService, __uuidof(Q), (void **)pp); 74 } 75 }; 76 } 77 78 HRESULT STDMETHODCALLTYPE IServiceProvider_RemoteQueryService_Proxy(IServiceProvider *This, REFGUID guidService, REFIID riid, IUnknown **ppvObject); 79 void __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 84 DEFINE_GUID(IID_IServiceProvider, 0x6d5140c1, 0x7436, 0x11ce, 0x80,0x34, 0x00,0xaa,0x00,0x60,0x09,0xfa); 85 #if defined(__cplusplus) && !defined(CINTERFACE) 86 MIDL_INTERFACE("6d5140c1-7436-11ce-8034-00aa006009fa") 87 IServiceProvider : 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 99 typedef 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 124 interface 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 ***/ 138 static inline HRESULT IServiceProvider_QueryInterface(IServiceProvider* This,REFIID riid,void **ppvObject) { 139 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 140 } 141 static inline ULONG IServiceProvider_AddRef(IServiceProvider* This) { 142 return This->lpVtbl->AddRef(This); 143 } 144 static inline ULONG IServiceProvider_Release(IServiceProvider* This) { 145 return This->lpVtbl->Release(This); 146 } 147 /*** IServiceProvider methods ***/ 148 static inline 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 156 HRESULT STDMETHODCALLTYPE IServiceProvider_RemoteQueryService_Proxy( 157 IServiceProvider* This, 158 REFGUID guidService, 159 REFIID riid, 160 IUnknown **ppvObject); 161 void __RPC_STUB IServiceProvider_RemoteQueryService_Stub( 162 IRpcStubBuffer* This, 163 IRpcChannelBuffer* pRpcChannelBuffer, 164 PRPC_MESSAGE pRpcMessage, 165 DWORD* pdwStubPhase); 166 HRESULT CALLBACK IServiceProvider_QueryService_Proxy( 167 IServiceProvider* This, 168 REFGUID guidService, 169 REFIID riid, 170 void **ppvObject); 171 HRESULT __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__ */