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__ 440 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 __mimeinfo_h__ 23#define __mimeinfo_h__ 24 25#ifndef __IMimeInfo_FWD_DEFINED__ 26#define __IMimeInfo_FWD_DEFINED__ 27typedef struct IMimeInfo IMimeInfo; 28#endif 29 30#include "objidl.h" 31 32#ifdef __cplusplus 33extern "C" { 34#endif 35 36#ifndef __MIDL_user_allocate_free_DEFINED__ 37#define __MIDL_user_allocate_free_DEFINED__ 38 void *__RPC_API MIDL_user_allocate(size_t); 39 void __RPC_API MIDL_user_free(void *); 40#endif 41 42 extern RPC_IF_HANDLE __MIDL_itf_mimeinfo_0000_v0_0_c_ifspec; 43 extern RPC_IF_HANDLE __MIDL_itf_mimeinfo_0000_v0_0_s_ifspec; 44 45#ifndef __IMimeInfo_INTERFACE_DEFINED__ 46#define __IMimeInfo_INTERFACE_DEFINED__ 47 48 typedef IMimeInfo *LPMIMEINFO; 49 50 EXTERN_C const IID IID_IMimeInfo; 51#if defined(__cplusplus) && !defined(CINTERFACE) 52 struct IMimeInfo : public IUnknown { 53 public: 54 virtual HRESULT WINAPI GetMimeCLSIDMapping(UINT *pcTypes,LPCSTR **ppszTypes,CLSID **ppclsID) = 0; 55 }; 56#else 57 typedef struct IMimeInfoVtbl { 58 BEGIN_INTERFACE 59 HRESULT (WINAPI *QueryInterface)(IMimeInfo *This,REFIID riid,void **ppvObject); 60 ULONG (WINAPI *AddRef)(IMimeInfo *This); 61 ULONG (WINAPI *Release)(IMimeInfo *This); 62 HRESULT (WINAPI *GetMimeCLSIDMapping)(IMimeInfo *This,UINT *pcTypes,LPCSTR **ppszTypes,CLSID **ppclsID); 63 END_INTERFACE 64 } IMimeInfoVtbl; 65 struct IMimeInfo { 66 CONST_VTBL struct IMimeInfoVtbl *lpVtbl; 67 }; 68#ifdef COBJMACROS 69#define IMimeInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 70#define IMimeInfo_AddRef(This) (This)->lpVtbl->AddRef(This) 71#define IMimeInfo_Release(This) (This)->lpVtbl->Release(This) 72#define IMimeInfo_GetMimeCLSIDMapping(This,pcTypes,ppszTypes,ppclsID) (This)->lpVtbl->GetMimeCLSIDMapping(This,pcTypes,ppszTypes,ppclsID) 73#endif 74#endif 75 HRESULT WINAPI IMimeInfo_GetMimeCLSIDMapping_Proxy(IMimeInfo *This,UINT *pcTypes,LPCSTR **ppszTypes,CLSID **ppclsID); 76 void __RPC_STUB IMimeInfo_GetMimeCLSIDMapping_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 77#endif 78 79#define SID_IMimeInfo IID_IMimeInfo 80 81 extern RPC_IF_HANDLE __MIDL_itf_mimeinfo_0093_v0_0_c_ifspec; 82 extern RPC_IF_HANDLE __MIDL_itf_mimeinfo_0093_v0_0_s_ifspec; 83 84#ifdef __cplusplus 85} 86#endif 87#endif 88