| 1 | /*** Autogenerated by WIDL 6.4 from include/thumbcache.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 __thumbcache_h__ | 
 
 
 
 
 | 17 | #define __thumbcache_h__ | 
 
 
 
 
 | 18 |  | 
 
 
 
 
 | 19 | /* Forward declarations */ | 
 
 
 
 
 | 20 |  | 
 
 
 
 
 | 21 | #ifndef __ISharedBitmap_FWD_DEFINED__ | 
 
 
 
 
 | 22 | #define __ISharedBitmap_FWD_DEFINED__ | 
 
 
 
 
 | 23 | typedef interface ISharedBitmap ISharedBitmap; | 
 
 
 
 
 | 24 | #ifdef __cplusplus | 
 
 
 
 
 | 25 | interface ISharedBitmap; | 
 
 
 
 
 | 26 | #endif /* __cplusplus */ | 
 
 
 
 
 | 27 | #endif | 
 
 
 
 
 | 28 |  | 
 
 
 
 
 | 29 | #ifndef __IThumbnailCache_FWD_DEFINED__ | 
 
 
 
 
 | 30 | #define __IThumbnailCache_FWD_DEFINED__ | 
 
 
 
 
 | 31 | typedef interface IThumbnailCache IThumbnailCache; | 
 
 
 
 
 | 32 | #ifdef __cplusplus | 
 
 
 
 
 | 33 | interface IThumbnailCache; | 
 
 
 
 
 | 34 | #endif /* __cplusplus */ | 
 
 
 
 
 | 35 | #endif | 
 
 
 
 
 | 36 |  | 
 
 
 
 
 | 37 | #ifndef __IThumbnailProvider_FWD_DEFINED__ | 
 
 
 
 
 | 38 | #define __IThumbnailProvider_FWD_DEFINED__ | 
 
 
 
 
 | 39 | typedef interface IThumbnailProvider IThumbnailProvider; | 
 
 
 
 
 | 40 | #ifdef __cplusplus | 
 
 
 
 
 | 41 | interface IThumbnailProvider; | 
 
 
 
 
 | 42 | #endif /* __cplusplus */ | 
 
 
 
 
 | 43 | #endif | 
 
 
 
 
 | 44 |  | 
 
 
 
 
 | 45 | #ifndef __IThumbnailSettings_FWD_DEFINED__ | 
 
 
 
 
 | 46 | #define __IThumbnailSettings_FWD_DEFINED__ | 
 
 
 
 
 | 47 | typedef interface IThumbnailSettings IThumbnailSettings; | 
 
 
 
 
 | 48 | #ifdef __cplusplus | 
 
 
 
 
 | 49 | interface IThumbnailSettings; | 
 
 
 
 
 | 50 | #endif /* __cplusplus */ | 
 
 
 
 
 | 51 | #endif | 
 
 
 
 
 | 52 |  | 
 
 
 
 
 | 53 | #ifndef __IThumbnailCachePrimer_FWD_DEFINED__ | 
 
 
 
 
 | 54 | #define __IThumbnailCachePrimer_FWD_DEFINED__ | 
 
 
 
 
 | 55 | typedef interface IThumbnailCachePrimer IThumbnailCachePrimer; | 
 
 
 
 
 | 56 | #ifdef __cplusplus | 
 
 
 
 
 | 57 | interface IThumbnailCachePrimer; | 
 
 
 
 
 | 58 | #endif /* __cplusplus */ | 
 
 
 
 
 | 59 | #endif | 
 
 
 
 
 | 60 |  | 
 
 
 
 
 | 61 | #ifndef __LocalThumbnailCache_FWD_DEFINED__ | 
 
 
 
 
 | 62 | #define __LocalThumbnailCache_FWD_DEFINED__ | 
 
 
 
 
 | 63 | #ifdef __cplusplus | 
 
 
 
 
 | 64 | typedef class LocalThumbnailCache LocalThumbnailCache; | 
 
 
 
 
 | 65 | #else | 
 
 
 
 
 | 66 | typedef struct LocalThumbnailCache LocalThumbnailCache; | 
 
 
 
 
 | 67 | #endif /* defined __cplusplus */ | 
 
 
 
 
 | 68 | #endif /* defined __LocalThumbnailCache_FWD_DEFINED__ */ | 
 
 
 
 
 | 69 |  | 
 
 
 
 
 | 70 | #ifndef __SharedBitmap_FWD_DEFINED__ | 
 
 
 
 
 | 71 | #define __SharedBitmap_FWD_DEFINED__ | 
 
 
 
 
 | 72 | #ifdef __cplusplus | 
 
 
 
 
 | 73 | typedef class SharedBitmap SharedBitmap; | 
 
 
 
 
 | 74 | #else | 
 
 
 
 
 | 75 | typedef struct SharedBitmap SharedBitmap; | 
 
 
 
 
 | 76 | #endif /* defined __cplusplus */ | 
 
 
 
 
 | 77 | #endif /* defined __SharedBitmap_FWD_DEFINED__ */ | 
 
 
 
 
 | 78 |  | 
 
 
 
 
 | 79 | /* Headers for imported files */ | 
 
 
 
 
 | 80 |  | 
 
 
 
 
 | 81 | #include <oaidl.h> | 
 
 
 
 
 | 82 | #include <shtypes.h> | 
 
 
 
 
 | 83 | #include <shobjidl.h> | 
 
 
 
 
 | 84 |  | 
 
 
 
 
 | 85 | #ifdef __cplusplus | 
 
 
 
 
 | 86 | extern "C" { | 
 
 
 
 
 | 87 | #endif | 
 
 
 
 
 | 88 |  | 
 
 
 
 
 | 89 | typedef enum WTS_FLAGS { | 
 
 
 
 
 | 90 | WTS_NONE = 0x0, | 
 
 
 
 
 | 91 | WTS_EXTRACT = 0x0, | 
 
 
 
 
 | 92 | WTS_INCACHEONLY = 0x1, | 
 
 
 
 
 | 93 | WTS_FASTEXTRACT = 0x2, | 
 
 
 
 
 | 94 | WTS_FORCEEXTRACTION = 0x4, | 
 
 
 
 
 | 95 | WTS_SLOWRECLAIM = 0x8, | 
 
 
 
 
 | 96 | WTS_EXTRACTDONOTCACHE = 0x20, | 
 
 
 
 
 | 97 | WTS_SCALETOREQUESTEDSIZE = 0x40, | 
 
 
 
 
 | 98 | WTS_SKIPFASTEXTRACT = 0x80, | 
 
 
 
 
 | 99 | WTS_EXTRACTINPROC = 0x100, | 
 
 
 
 
 | 100 | WTS_CROPTOSQUARE = 0x200, | 
 
 
 
 
 | 101 | WTS_INSTANCESURROGATE = 0x400, | 
 
 
 
 
 | 102 | WTS_REQUIRESURROGATE = 0x800, | 
 
 
 
 
 | 103 | WTS_APPSTYLE = 0x2000, | 
 
 
 
 
 | 104 | WTS_WIDETHUMBNAILS = 0x4000, | 
 
 
 
 
 | 105 | WTS_IDEALCACHESIZEONLY = 0x8000, | 
 
 
 
 
 | 106 | WTS_SCALEUP = 0x10000 | 
 
 
 
 
 | 107 | } WTS_FLAGS; | 
 
 
 
 
 | 108 | DEFINE_ENUM_FLAG_OPERATORS(WTS_FLAGS) | 
 
 
 
 
 | 109 | typedef enum WTS_CACHEFLAGS { | 
 
 
 
 
 | 110 | WTS_DEFAULT = 0x0, | 
 
 
 
 
 | 111 | WTS_LOWQUALITY = 0x1, | 
 
 
 
 
 | 112 | WTS_CACHED = 0x2 | 
 
 
 
 
 | 113 | } WTS_CACHEFLAGS; | 
 
 
 
 
 | 114 | DEFINE_ENUM_FLAG_OPERATORS(WTS_CACHEFLAGS) | 
 
 
 
 
 | 115 | typedef enum WTS_CONTEXTFLAGS { | 
 
 
 
 
 | 116 | WTSCF_DEFAULT = 0x0, | 
 
 
 
 
 | 117 | WTSCF_APPSTYLE = 0x1, | 
 
 
 
 
 | 118 | WTSCF_SQUARE = 0x2, | 
 
 
 
 
 | 119 | WTSCF_WIDE = 0x4, | 
 
 
 
 
 | 120 | WTSCF_FAST = 0x8 | 
 
 
 
 
 | 121 | } WTS_CONTEXTFLAGS; | 
 
 
 
 
 | 122 | DEFINE_ENUM_FLAG_OPERATORS(WTS_CONTEXTFLAGS) | 
 
 
 
 
 | 123 | typedef enum WTS_ALPHATYPE { | 
 
 
 
 
 | 124 | WTSAT_UNKNOWN = 0, | 
 
 
 
 
 | 125 | WTSAT_RGB = 1, | 
 
 
 
 
 | 126 | WTSAT_ARGB = 2 | 
 
 
 
 
 | 127 | } WTS_ALPHATYPE; | 
 
 
 
 
 | 128 | typedef struct WTS_THUMBNAILID { | 
 
 
 
 
 | 129 | BYTE rgbKey[16]; | 
 
 
 
 
 | 130 | } WTS_THUMBNAILID; | 
 
 
 
 
 | 131 | #define WTS_E_FAILEDEXTRACTION MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xb200) | 
 
 
 
 
 | 132 | #define WTS_E_EXTRACTIONTIMEDOUT MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xb201) | 
 
 
 
 
 | 133 | #define WTS_E_SURROGATEUNAVAILABLE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xb202) | 
 
 
 
 
 | 134 | #define WTS_E_FASTEXTRACTIONNOTSUPPORTED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xb203) | 
 
 
 
 
 | 135 | #define WTS_E_DATAFILEUNAVAILABLE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xb204) | 
 
 
 
 
 | 136 | #define WTS_E_EXTRACTIONPENDING MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xb205) | 
 
 
 
 
 | 137 | #define WTS_E_EXTRACTIONBLOCKED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xb206) | 
 
 
 
 
 | 138 | /***************************************************************************** | 
 
 
 
 
 | 139 | * ISharedBitmap interface | 
 
 
 
 
 | 140 | */ | 
 
 
 
 
 | 141 | #ifndef __ISharedBitmap_INTERFACE_DEFINED__ | 
 
 
 
 
 | 142 | #define __ISharedBitmap_INTERFACE_DEFINED__ | 
 
 
 
 
 | 143 |  | 
 
 
 
 
 | 144 | DEFINE_GUID(IID_ISharedBitmap, 0x091162a4, 0xbc96, 0x411f, 0xaa,0xe8, 0xc5,0x12,0x2c,0xd0,0x33,0x63); | 
 
 
 
 
 | 145 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 
 
 
 
 | 146 | MIDL_INTERFACE("091162a4-bc96-411f-aae8-c5122cd03363") | 
 
 
 
 
 | 147 | ISharedBitmap : public IUnknown | 
 
 
 
 
 | 148 | { | 
 
 
 
 
 | 149 | virtual HRESULT STDMETHODCALLTYPE GetSharedBitmap( | 
 
 
 
 
 | 150 | HBITMAP *phbm) = 0; | 
 
 
 
 
 | 151 |  | 
 
 
 
 
 | 152 | virtual HRESULT STDMETHODCALLTYPE GetSize( | 
 
 
 
 
 | 153 | SIZE *pSize) = 0; | 
 
 
 
 
 | 154 |  | 
 
 
 
 
 | 155 | virtual HRESULT STDMETHODCALLTYPE GetFormat( | 
 
 
 
 
 | 156 | WTS_ALPHATYPE *pat) = 0; | 
 
 
 
 
 | 157 |  | 
 
 
 
 
 | 158 | virtual HRESULT STDMETHODCALLTYPE InitializeBitmap( | 
 
 
 
 
 | 159 | HBITMAP hbm, | 
 
 
 
 
 | 160 | WTS_ALPHATYPE wtsAT) = 0; | 
 
 
 
 
 | 161 |  | 
 
 
 
 
 | 162 | virtual HRESULT STDMETHODCALLTYPE Detach( | 
 
 
 
 
 | 163 | HBITMAP *phbm) = 0; | 
 
 
 
 
 | 164 |  | 
 
 
 
 
 | 165 | }; | 
 
 
 
 
 | 166 | #ifdef __CRT_UUID_DECL | 
 
 
 
 
 | 167 | __CRT_UUID_DECL(ISharedBitmap, 0x091162a4, 0xbc96, 0x411f, 0xaa,0xe8, 0xc5,0x12,0x2c,0xd0,0x33,0x63) | 
 
 
 
 
 | 168 | #endif | 
 
 
 
 
 | 169 | #else | 
 
 
 
 
 | 170 | typedef struct ISharedBitmapVtbl { | 
 
 
 
 
 | 171 | BEGIN_INTERFACE | 
 
 
 
 
 | 172 |  | 
 
 
 
 
 | 173 | /*** IUnknown methods ***/ | 
 
 
 
 
 | 174 | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
 
 
 
 
 | 175 | ISharedBitmap *This, | 
 
 
 
 
 | 176 | REFIID riid, | 
 
 
 
 
 | 177 | void **ppvObject); | 
 
 
 
 
 | 178 |  | 
 
 
 
 
 | 179 | ULONG (STDMETHODCALLTYPE *AddRef)( | 
 
 
 
 
 | 180 | ISharedBitmap *This); | 
 
 
 
 
 | 181 |  | 
 
 
 
 
 | 182 | ULONG (STDMETHODCALLTYPE *Release)( | 
 
 
 
 
 | 183 | ISharedBitmap *This); | 
 
 
 
 
 | 184 |  | 
 
 
 
 
 | 185 | /*** ISharedBitmap methods ***/ | 
 
 
 
 
 | 186 | HRESULT (STDMETHODCALLTYPE *GetSharedBitmap)( | 
 
 
 
 
 | 187 | ISharedBitmap *This, | 
 
 
 
 
 | 188 | HBITMAP *phbm); | 
 
 
 
 
 | 189 |  | 
 
 
 
 
 | 190 | HRESULT (STDMETHODCALLTYPE *GetSize)( | 
 
 
 
 
 | 191 | ISharedBitmap *This, | 
 
 
 
 
 | 192 | SIZE *pSize); | 
 
 
 
 
 | 193 |  | 
 
 
 
 
 | 194 | HRESULT (STDMETHODCALLTYPE *GetFormat)( | 
 
 
 
 
 | 195 | ISharedBitmap *This, | 
 
 
 
 
 | 196 | WTS_ALPHATYPE *pat); | 
 
 
 
 
 | 197 |  | 
 
 
 
 
 | 198 | HRESULT (STDMETHODCALLTYPE *InitializeBitmap)( | 
 
 
 
 
 | 199 | ISharedBitmap *This, | 
 
 
 
 
 | 200 | HBITMAP hbm, | 
 
 
 
 
 | 201 | WTS_ALPHATYPE wtsAT); | 
 
 
 
 
 | 202 |  | 
 
 
 
 
 | 203 | HRESULT (STDMETHODCALLTYPE *Detach)( | 
 
 
 
 
 | 204 | ISharedBitmap *This, | 
 
 
 
 
 | 205 | HBITMAP *phbm); | 
 
 
 
 
 | 206 |  | 
 
 
 
 
 | 207 | END_INTERFACE | 
 
 
 
 
 | 208 | } ISharedBitmapVtbl; | 
 
 
 
 
 | 209 |  | 
 
 
 
 
 | 210 | interface ISharedBitmap { | 
 
 
 
 
 | 211 | CONST_VTBL ISharedBitmapVtbl* lpVtbl; | 
 
 
 
 
 | 212 | }; | 
 
 
 
 
 | 213 |  | 
 
 
 
 
 | 214 | #ifdef COBJMACROS | 
 
 
 
 
 | 215 | #ifndef WIDL_C_INLINE_WRAPPERS | 
 
 
 
 
 | 216 | /*** IUnknown methods ***/ | 
 
 
 
 
 | 217 | #define ISharedBitmap_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 
 
 
 
 | 218 | #define ISharedBitmap_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 
 
 
 
 | 219 | #define ISharedBitmap_Release(This) (This)->lpVtbl->Release(This) | 
 
 
 
 
 | 220 | /*** ISharedBitmap methods ***/ | 
 
 
 
 
 | 221 | #define ISharedBitmap_GetSharedBitmap(This,phbm) (This)->lpVtbl->GetSharedBitmap(This,phbm) | 
 
 
 
 
 | 222 | #define ISharedBitmap_GetSize(This,pSize) (This)->lpVtbl->GetSize(This,pSize) | 
 
 
 
 
 | 223 | #define ISharedBitmap_GetFormat(This,pat) (This)->lpVtbl->GetFormat(This,pat) | 
 
 
 
 
 | 224 | #define ISharedBitmap_InitializeBitmap(This,hbm,wtsAT) (This)->lpVtbl->InitializeBitmap(This,hbm,wtsAT) | 
 
 
 
 
 | 225 | #define ISharedBitmap_Detach(This,phbm) (This)->lpVtbl->Detach(This,phbm) | 
 
 
 
 
 | 226 | #else | 
 
 
 
 
 | 227 | /*** IUnknown methods ***/ | 
 
 
 
 
 | 228 | static FORCEINLINE HRESULT ISharedBitmap_QueryInterface(ISharedBitmap* This,REFIID riid,void **ppvObject) { | 
 
 
 
 
 | 229 | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
 
 
 
 
 | 230 | } | 
 
 
 
 
 | 231 | static FORCEINLINE ULONG ISharedBitmap_AddRef(ISharedBitmap* This) { | 
 
 
 
 
 | 232 | return This->lpVtbl->AddRef(This); | 
 
 
 
 
 | 233 | } | 
 
 
 
 
 | 234 | static FORCEINLINE ULONG ISharedBitmap_Release(ISharedBitmap* This) { | 
 
 
 
 
 | 235 | return This->lpVtbl->Release(This); | 
 
 
 
 
 | 236 | } | 
 
 
 
 
 | 237 | /*** ISharedBitmap methods ***/ | 
 
 
 
 
 | 238 | static FORCEINLINE HRESULT ISharedBitmap_GetSharedBitmap(ISharedBitmap* This,HBITMAP *phbm) { | 
 
 
 
 
 | 239 | return This->lpVtbl->GetSharedBitmap(This,phbm); | 
 
 
 
 
 | 240 | } | 
 
 
 
 
 | 241 | static FORCEINLINE HRESULT ISharedBitmap_GetSize(ISharedBitmap* This,SIZE *pSize) { | 
 
 
 
 
 | 242 | return This->lpVtbl->GetSize(This,pSize); | 
 
 
 
 
 | 243 | } | 
 
 
 
 
 | 244 | static FORCEINLINE HRESULT ISharedBitmap_GetFormat(ISharedBitmap* This,WTS_ALPHATYPE *pat) { | 
 
 
 
 
 | 245 | return This->lpVtbl->GetFormat(This,pat); | 
 
 
 
 
 | 246 | } | 
 
 
 
 
 | 247 | static FORCEINLINE HRESULT ISharedBitmap_InitializeBitmap(ISharedBitmap* This,HBITMAP hbm,WTS_ALPHATYPE wtsAT) { | 
 
 
 
 
 | 248 | return This->lpVtbl->InitializeBitmap(This,hbm,wtsAT); | 
 
 
 
 
 | 249 | } | 
 
 
 
 
 | 250 | static FORCEINLINE HRESULT ISharedBitmap_Detach(ISharedBitmap* This,HBITMAP *phbm) { | 
 
 
 
 
 | 251 | return This->lpVtbl->Detach(This,phbm); | 
 
 
 
 
 | 252 | } | 
 
 
 
 
 | 253 | #endif | 
 
 
 
 
 | 254 | #endif | 
 
 
 
 
 | 255 |  | 
 
 
 
 
 | 256 | #endif | 
 
 
 
 
 | 257 |  | 
 
 
 
 
 | 258 |  | 
 
 
 
 
 | 259 | #endif  /* __ISharedBitmap_INTERFACE_DEFINED__ */ | 
 
 
 
 
 | 260 |  | 
 
 
 
 
 | 261 | /***************************************************************************** | 
 
 
 
 
 | 262 | * IThumbnailCache interface | 
 
 
 
 
 | 263 | */ | 
 
 
 
 
 | 264 | #ifndef __IThumbnailCache_INTERFACE_DEFINED__ | 
 
 
 
 
 | 265 | #define __IThumbnailCache_INTERFACE_DEFINED__ | 
 
 
 
 
 | 266 |  | 
 
 
 
 
 | 267 | DEFINE_GUID(IID_IThumbnailCache, 0xf676c15d, 0x596a, 0x4ce2, 0x82,0x34, 0x33,0x99,0x6f,0x44,0x5d,0xb1); | 
 
 
 
 
 | 268 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 
 
 
 
 | 269 | MIDL_INTERFACE("f676c15d-596a-4ce2-8234-33996f445db1") | 
 
 
 
 
 | 270 | IThumbnailCache : public IUnknown | 
 
 
 
 
 | 271 | { | 
 
 
 
 
 | 272 | virtual HRESULT STDMETHODCALLTYPE GetThumbnail( | 
 
 
 
 
 | 273 | IShellItem *pShellItem, | 
 
 
 
 
 | 274 | UINT cxyRequestedThumbSize, | 
 
 
 
 
 | 275 | WTS_FLAGS flags, | 
 
 
 
 
 | 276 | ISharedBitmap **ppvThumb, | 
 
 
 
 
 | 277 | WTS_CACHEFLAGS *pOutFlags, | 
 
 
 
 
 | 278 | WTS_THUMBNAILID *pThumbnailID) = 0; | 
 
 
 
 
 | 279 |  | 
 
 
 
 
 | 280 | virtual HRESULT STDMETHODCALLTYPE GetThumbnailByID( | 
 
 
 
 
 | 281 | WTS_THUMBNAILID thumbnailID, | 
 
 
 
 
 | 282 | UINT cxyRequestedThumbSize, | 
 
 
 
 
 | 283 | ISharedBitmap **ppvThumb, | 
 
 
 
 
 | 284 | WTS_CACHEFLAGS *pOutFlags) = 0; | 
 
 
 
 
 | 285 |  | 
 
 
 
 
 | 286 | }; | 
 
 
 
 
 | 287 | #ifdef __CRT_UUID_DECL | 
 
 
 
 
 | 288 | __CRT_UUID_DECL(IThumbnailCache, 0xf676c15d, 0x596a, 0x4ce2, 0x82,0x34, 0x33,0x99,0x6f,0x44,0x5d,0xb1) | 
 
 
 
 
 | 289 | #endif | 
 
 
 
 
 | 290 | #else | 
 
 
 
 
 | 291 | typedef struct IThumbnailCacheVtbl { | 
 
 
 
 
 | 292 | BEGIN_INTERFACE | 
 
 
 
 
 | 293 |  | 
 
 
 
 
 | 294 | /*** IUnknown methods ***/ | 
 
 
 
 
 | 295 | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
 
 
 
 
 | 296 | IThumbnailCache *This, | 
 
 
 
 
 | 297 | REFIID riid, | 
 
 
 
 
 | 298 | void **ppvObject); | 
 
 
 
 
 | 299 |  | 
 
 
 
 
 | 300 | ULONG (STDMETHODCALLTYPE *AddRef)( | 
 
 
 
 
 | 301 | IThumbnailCache *This); | 
 
 
 
 
 | 302 |  | 
 
 
 
 
 | 303 | ULONG (STDMETHODCALLTYPE *Release)( | 
 
 
 
 
 | 304 | IThumbnailCache *This); | 
 
 
 
 
 | 305 |  | 
 
 
 
 
 | 306 | /*** IThumbnailCache methods ***/ | 
 
 
 
 
 | 307 | HRESULT (STDMETHODCALLTYPE *GetThumbnail)( | 
 
 
 
 
 | 308 | IThumbnailCache *This, | 
 
 
 
 
 | 309 | IShellItem *pShellItem, | 
 
 
 
 
 | 310 | UINT cxyRequestedThumbSize, | 
 
 
 
 
 | 311 | WTS_FLAGS flags, | 
 
 
 
 
 | 312 | ISharedBitmap **ppvThumb, | 
 
 
 
 
 | 313 | WTS_CACHEFLAGS *pOutFlags, | 
 
 
 
 
 | 314 | WTS_THUMBNAILID *pThumbnailID); | 
 
 
 
 
 | 315 |  | 
 
 
 
 
 | 316 | HRESULT (STDMETHODCALLTYPE *GetThumbnailByID)( | 
 
 
 
 
 | 317 | IThumbnailCache *This, | 
 
 
 
 
 | 318 | WTS_THUMBNAILID thumbnailID, | 
 
 
 
 
 | 319 | UINT cxyRequestedThumbSize, | 
 
 
 
 
 | 320 | ISharedBitmap **ppvThumb, | 
 
 
 
 
 | 321 | WTS_CACHEFLAGS *pOutFlags); | 
 
 
 
 
 | 322 |  | 
 
 
 
 
 | 323 | END_INTERFACE | 
 
 
 
 
 | 324 | } IThumbnailCacheVtbl; | 
 
 
 
 
 | 325 |  | 
 
 
 
 
 | 326 | interface IThumbnailCache { | 
 
 
 
 
 | 327 | CONST_VTBL IThumbnailCacheVtbl* lpVtbl; | 
 
 
 
 
 | 328 | }; | 
 
 
 
 
 | 329 |  | 
 
 
 
 
 | 330 | #ifdef COBJMACROS | 
 
 
 
 
 | 331 | #ifndef WIDL_C_INLINE_WRAPPERS | 
 
 
 
 
 | 332 | /*** IUnknown methods ***/ | 
 
 
 
 
 | 333 | #define IThumbnailCache_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 
 
 
 
 | 334 | #define IThumbnailCache_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 
 
 
 
 | 335 | #define IThumbnailCache_Release(This) (This)->lpVtbl->Release(This) | 
 
 
 
 
 | 336 | /*** IThumbnailCache methods ***/ | 
 
 
 
 
 | 337 | #define IThumbnailCache_GetThumbnail(This,pShellItem,cxyRequestedThumbSize,flags,ppvThumb,pOutFlags,pThumbnailID) (This)->lpVtbl->GetThumbnail(This,pShellItem,cxyRequestedThumbSize,flags,ppvThumb,pOutFlags,pThumbnailID) | 
 
 
 
 
 | 338 | #define IThumbnailCache_GetThumbnailByID(This,thumbnailID,cxyRequestedThumbSize,ppvThumb,pOutFlags) (This)->lpVtbl->GetThumbnailByID(This,thumbnailID,cxyRequestedThumbSize,ppvThumb,pOutFlags) | 
 
 
 
 
 | 339 | #else | 
 
 
 
 
 | 340 | /*** IUnknown methods ***/ | 
 
 
 
 
 | 341 | static FORCEINLINE HRESULT IThumbnailCache_QueryInterface(IThumbnailCache* This,REFIID riid,void **ppvObject) { | 
 
 
 
 
 | 342 | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
 
 
 
 
 | 343 | } | 
 
 
 
 
 | 344 | static FORCEINLINE ULONG IThumbnailCache_AddRef(IThumbnailCache* This) { | 
 
 
 
 
 | 345 | return This->lpVtbl->AddRef(This); | 
 
 
 
 
 | 346 | } | 
 
 
 
 
 | 347 | static FORCEINLINE ULONG IThumbnailCache_Release(IThumbnailCache* This) { | 
 
 
 
 
 | 348 | return This->lpVtbl->Release(This); | 
 
 
 
 
 | 349 | } | 
 
 
 
 
 | 350 | /*** IThumbnailCache methods ***/ | 
 
 
 
 
 | 351 | static FORCEINLINE HRESULT IThumbnailCache_GetThumbnail(IThumbnailCache* This,IShellItem *pShellItem,UINT cxyRequestedThumbSize,WTS_FLAGS flags,ISharedBitmap **ppvThumb,WTS_CACHEFLAGS *pOutFlags,WTS_THUMBNAILID *pThumbnailID) { | 
 
 
 
 
 | 352 | return This->lpVtbl->GetThumbnail(This,pShellItem,cxyRequestedThumbSize,flags,ppvThumb,pOutFlags,pThumbnailID); | 
 
 
 
 
 | 353 | } | 
 
 
 
 
 | 354 | static FORCEINLINE HRESULT IThumbnailCache_GetThumbnailByID(IThumbnailCache* This,WTS_THUMBNAILID thumbnailID,UINT cxyRequestedThumbSize,ISharedBitmap **ppvThumb,WTS_CACHEFLAGS *pOutFlags) { | 
 
 
 
 
 | 355 | return This->lpVtbl->GetThumbnailByID(This,thumbnailID,cxyRequestedThumbSize,ppvThumb,pOutFlags); | 
 
 
 
 
 | 356 | } | 
 
 
 
 
 | 357 | #endif | 
 
 
 
 
 | 358 | #endif | 
 
 
 
 
 | 359 |  | 
 
 
 
 
 | 360 | #endif | 
 
 
 
 
 | 361 |  | 
 
 
 
 
 | 362 | HRESULT STDMETHODCALLTYPE IThumbnailCache_RemoteGetThumbnail_Proxy( | 
 
 
 
 
 | 363 | IThumbnailCache* This, | 
 
 
 
 
 | 364 | IShellItem *pShellItem, | 
 
 
 
 
 | 365 | UINT cxyRequestedThumbSize, | 
 
 
 
 
 | 366 | WTS_FLAGS flags, | 
 
 
 
 
 | 367 | ISharedBitmap **ppvThumb, | 
 
 
 
 
 | 368 | WTS_CACHEFLAGS *pOutFlags, | 
 
 
 
 
 | 369 | WTS_THUMBNAILID *pThumbnailID); | 
 
 
 
 
 | 370 | void __RPC_STUB IThumbnailCache_RemoteGetThumbnail_Stub( | 
 
 
 
 
 | 371 | IRpcStubBuffer* This, | 
 
 
 
 
 | 372 | IRpcChannelBuffer* pRpcChannelBuffer, | 
 
 
 
 
 | 373 | PRPC_MESSAGE pRpcMessage, | 
 
 
 
 
 | 374 | DWORD* pdwStubPhase); | 
 
 
 
 
 | 375 | HRESULT STDMETHODCALLTYPE IThumbnailCache_RemoteGetThumbnailByID_Proxy( | 
 
 
 
 
 | 376 | IThumbnailCache* This, | 
 
 
 
 
 | 377 | WTS_THUMBNAILID thumbnailID, | 
 
 
 
 
 | 378 | UINT cxyRequestedThumbSize, | 
 
 
 
 
 | 379 | ISharedBitmap **ppvThumb, | 
 
 
 
 
 | 380 | WTS_CACHEFLAGS *pOutFlags); | 
 
 
 
 
 | 381 | void __RPC_STUB IThumbnailCache_RemoteGetThumbnailByID_Stub( | 
 
 
 
 
 | 382 | IRpcStubBuffer* This, | 
 
 
 
 
 | 383 | IRpcChannelBuffer* pRpcChannelBuffer, | 
 
 
 
 
 | 384 | PRPC_MESSAGE pRpcMessage, | 
 
 
 
 
 | 385 | DWORD* pdwStubPhase); | 
 
 
 
 
 | 386 | HRESULT CALLBACK IThumbnailCache_GetThumbnail_Proxy( | 
 
 
 
 
 | 387 | IThumbnailCache* This, | 
 
 
 
 
 | 388 | IShellItem *pShellItem, | 
 
 
 
 
 | 389 | UINT cxyRequestedThumbSize, | 
 
 
 
 
 | 390 | WTS_FLAGS flags, | 
 
 
 
 
 | 391 | ISharedBitmap **ppvThumb, | 
 
 
 
 
 | 392 | WTS_CACHEFLAGS *pOutFlags, | 
 
 
 
 
 | 393 | WTS_THUMBNAILID *pThumbnailID); | 
 
 
 
 
 | 394 | HRESULT __RPC_STUB IThumbnailCache_GetThumbnail_Stub( | 
 
 
 
 
 | 395 | IThumbnailCache* This, | 
 
 
 
 
 | 396 | IShellItem *pShellItem, | 
 
 
 
 
 | 397 | UINT cxyRequestedThumbSize, | 
 
 
 
 
 | 398 | WTS_FLAGS flags, | 
 
 
 
 
 | 399 | ISharedBitmap **ppvThumb, | 
 
 
 
 
 | 400 | WTS_CACHEFLAGS *pOutFlags, | 
 
 
 
 
 | 401 | WTS_THUMBNAILID *pThumbnailID); | 
 
 
 
 
 | 402 | HRESULT CALLBACK IThumbnailCache_GetThumbnailByID_Proxy( | 
 
 
 
 
 | 403 | IThumbnailCache* This, | 
 
 
 
 
 | 404 | WTS_THUMBNAILID thumbnailID, | 
 
 
 
 
 | 405 | UINT cxyRequestedThumbSize, | 
 
 
 
 
 | 406 | ISharedBitmap **ppvThumb, | 
 
 
 
 
 | 407 | WTS_CACHEFLAGS *pOutFlags); | 
 
 
 
 
 | 408 | HRESULT __RPC_STUB IThumbnailCache_GetThumbnailByID_Stub( | 
 
 
 
 
 | 409 | IThumbnailCache* This, | 
 
 
 
 
 | 410 | WTS_THUMBNAILID thumbnailID, | 
 
 
 
 
 | 411 | UINT cxyRequestedThumbSize, | 
 
 
 
 
 | 412 | ISharedBitmap **ppvThumb, | 
 
 
 
 
 | 413 | WTS_CACHEFLAGS *pOutFlags); | 
 
 
 
 
 | 414 |  | 
 
 
 
 
 | 415 | #endif  /* __IThumbnailCache_INTERFACE_DEFINED__ */ | 
 
 
 
 
 | 416 |  | 
 
 
 
 
 | 417 | /***************************************************************************** | 
 
 
 
 
 | 418 | * IThumbnailProvider interface | 
 
 
 
 
 | 419 | */ | 
 
 
 
 
 | 420 | #ifndef __IThumbnailProvider_INTERFACE_DEFINED__ | 
 
 
 
 
 | 421 | #define __IThumbnailProvider_INTERFACE_DEFINED__ | 
 
 
 
 
 | 422 |  | 
 
 
 
 
 | 423 | DEFINE_GUID(IID_IThumbnailProvider, 0xe357fccd, 0xa995, 0x4576, 0xb0,0x1f, 0x23,0x46,0x30,0x15,0x4e,0x96); | 
 
 
 
 
 | 424 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 
 
 
 
 | 425 | MIDL_INTERFACE("e357fccd-a995-4576-b01f-234630154e96") | 
 
 
 
 
 | 426 | IThumbnailProvider : public IUnknown | 
 
 
 
 
 | 427 | { | 
 
 
 
 
 | 428 | virtual HRESULT STDMETHODCALLTYPE GetThumbnail( | 
 
 
 
 
 | 429 | UINT cx, | 
 
 
 
 
 | 430 | HBITMAP *phbmp, | 
 
 
 
 
 | 431 | WTS_ALPHATYPE *pdwAlpha) = 0; | 
 
 
 
 
 | 432 |  | 
 
 
 
 
 | 433 | }; | 
 
 
 
 
 | 434 | #ifdef __CRT_UUID_DECL | 
 
 
 
 
 | 435 | __CRT_UUID_DECL(IThumbnailProvider, 0xe357fccd, 0xa995, 0x4576, 0xb0,0x1f, 0x23,0x46,0x30,0x15,0x4e,0x96) | 
 
 
 
 
 | 436 | #endif | 
 
 
 
 
 | 437 | #else | 
 
 
 
 
 | 438 | typedef struct IThumbnailProviderVtbl { | 
 
 
 
 
 | 439 | BEGIN_INTERFACE | 
 
 
 
 
 | 440 |  | 
 
 
 
 
 | 441 | /*** IUnknown methods ***/ | 
 
 
 
 
 | 442 | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
 
 
 
 
 | 443 | IThumbnailProvider *This, | 
 
 
 
 
 | 444 | REFIID riid, | 
 
 
 
 
 | 445 | void **ppvObject); | 
 
 
 
 
 | 446 |  | 
 
 
 
 
 | 447 | ULONG (STDMETHODCALLTYPE *AddRef)( | 
 
 
 
 
 | 448 | IThumbnailProvider *This); | 
 
 
 
 
 | 449 |  | 
 
 
 
 
 | 450 | ULONG (STDMETHODCALLTYPE *Release)( | 
 
 
 
 
 | 451 | IThumbnailProvider *This); | 
 
 
 
 
 | 452 |  | 
 
 
 
 
 | 453 | /*** IThumbnailProvider methods ***/ | 
 
 
 
 
 | 454 | HRESULT (STDMETHODCALLTYPE *GetThumbnail)( | 
 
 
 
 
 | 455 | IThumbnailProvider *This, | 
 
 
 
 
 | 456 | UINT cx, | 
 
 
 
 
 | 457 | HBITMAP *phbmp, | 
 
 
 
 
 | 458 | WTS_ALPHATYPE *pdwAlpha); | 
 
 
 
 
 | 459 |  | 
 
 
 
 
 | 460 | END_INTERFACE | 
 
 
 
 
 | 461 | } IThumbnailProviderVtbl; | 
 
 
 
 
 | 462 |  | 
 
 
 
 
 | 463 | interface IThumbnailProvider { | 
 
 
 
 
 | 464 | CONST_VTBL IThumbnailProviderVtbl* lpVtbl; | 
 
 
 
 
 | 465 | }; | 
 
 
 
 
 | 466 |  | 
 
 
 
 
 | 467 | #ifdef COBJMACROS | 
 
 
 
 
 | 468 | #ifndef WIDL_C_INLINE_WRAPPERS | 
 
 
 
 
 | 469 | /*** IUnknown methods ***/ | 
 
 
 
 
 | 470 | #define IThumbnailProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 
 
 
 
 | 471 | #define IThumbnailProvider_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 
 
 
 
 | 472 | #define IThumbnailProvider_Release(This) (This)->lpVtbl->Release(This) | 
 
 
 
 
 | 473 | /*** IThumbnailProvider methods ***/ | 
 
 
 
 
 | 474 | #define IThumbnailProvider_GetThumbnail(This,cx,phbmp,pdwAlpha) (This)->lpVtbl->GetThumbnail(This,cx,phbmp,pdwAlpha) | 
 
 
 
 
 | 475 | #else | 
 
 
 
 
 | 476 | /*** IUnknown methods ***/ | 
 
 
 
 
 | 477 | static FORCEINLINE HRESULT IThumbnailProvider_QueryInterface(IThumbnailProvider* This,REFIID riid,void **ppvObject) { | 
 
 
 
 
 | 478 | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
 
 
 
 
 | 479 | } | 
 
 
 
 
 | 480 | static FORCEINLINE ULONG IThumbnailProvider_AddRef(IThumbnailProvider* This) { | 
 
 
 
 
 | 481 | return This->lpVtbl->AddRef(This); | 
 
 
 
 
 | 482 | } | 
 
 
 
 
 | 483 | static FORCEINLINE ULONG IThumbnailProvider_Release(IThumbnailProvider* This) { | 
 
 
 
 
 | 484 | return This->lpVtbl->Release(This); | 
 
 
 
 
 | 485 | } | 
 
 
 
 
 | 486 | /*** IThumbnailProvider methods ***/ | 
 
 
 
 
 | 487 | static FORCEINLINE HRESULT IThumbnailProvider_GetThumbnail(IThumbnailProvider* This,UINT cx,HBITMAP *phbmp,WTS_ALPHATYPE *pdwAlpha) { | 
 
 
 
 
 | 488 | return This->lpVtbl->GetThumbnail(This,cx,phbmp,pdwAlpha); | 
 
 
 
 
 | 489 | } | 
 
 
 
 
 | 490 | #endif | 
 
 
 
 
 | 491 | #endif | 
 
 
 
 
 | 492 |  | 
 
 
 
 
 | 493 | #endif | 
 
 
 
 
 | 494 |  | 
 
 
 
 
 | 495 |  | 
 
 
 
 
 | 496 | #endif  /* __IThumbnailProvider_INTERFACE_DEFINED__ */ | 
 
 
 
 
 | 497 |  | 
 
 
 
 
 | 498 | /***************************************************************************** | 
 
 
 
 
 | 499 | * IThumbnailSettings interface | 
 
 
 
 
 | 500 | */ | 
 
 
 
 
 | 501 | #ifndef __IThumbnailSettings_INTERFACE_DEFINED__ | 
 
 
 
 
 | 502 | #define __IThumbnailSettings_INTERFACE_DEFINED__ | 
 
 
 
 
 | 503 |  | 
 
 
 
 
 | 504 | DEFINE_GUID(IID_IThumbnailSettings, 0xf4376f00, 0xbef5, 0x4d45, 0x80,0xf3, 0x1e,0x02,0x3b,0xbf,0x12,0x09); | 
 
 
 
 
 | 505 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 
 
 
 
 | 506 | MIDL_INTERFACE("f4376f00-bef5-4d45-80f3-1e023bbf1209") | 
 
 
 
 
 | 507 | IThumbnailSettings : public IUnknown | 
 
 
 
 
 | 508 | { | 
 
 
 
 
 | 509 | virtual HRESULT STDMETHODCALLTYPE SetContext( | 
 
 
 
 
 | 510 | WTS_CONTEXTFLAGS dwContext) = 0; | 
 
 
 
 
 | 511 |  | 
 
 
 
 
 | 512 | }; | 
 
 
 
 
 | 513 | #ifdef __CRT_UUID_DECL | 
 
 
 
 
 | 514 | __CRT_UUID_DECL(IThumbnailSettings, 0xf4376f00, 0xbef5, 0x4d45, 0x80,0xf3, 0x1e,0x02,0x3b,0xbf,0x12,0x09) | 
 
 
 
 
 | 515 | #endif | 
 
 
 
 
 | 516 | #else | 
 
 
 
 
 | 517 | typedef struct IThumbnailSettingsVtbl { | 
 
 
 
 
 | 518 | BEGIN_INTERFACE | 
 
 
 
 
 | 519 |  | 
 
 
 
 
 | 520 | /*** IUnknown methods ***/ | 
 
 
 
 
 | 521 | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
 
 
 
 
 | 522 | IThumbnailSettings *This, | 
 
 
 
 
 | 523 | REFIID riid, | 
 
 
 
 
 | 524 | void **ppvObject); | 
 
 
 
 
 | 525 |  | 
 
 
 
 
 | 526 | ULONG (STDMETHODCALLTYPE *AddRef)( | 
 
 
 
 
 | 527 | IThumbnailSettings *This); | 
 
 
 
 
 | 528 |  | 
 
 
 
 
 | 529 | ULONG (STDMETHODCALLTYPE *Release)( | 
 
 
 
 
 | 530 | IThumbnailSettings *This); | 
 
 
 
 
 | 531 |  | 
 
 
 
 
 | 532 | /*** IThumbnailSettings methods ***/ | 
 
 
 
 
 | 533 | HRESULT (STDMETHODCALLTYPE *SetContext)( | 
 
 
 
 
 | 534 | IThumbnailSettings *This, | 
 
 
 
 
 | 535 | WTS_CONTEXTFLAGS dwContext); | 
 
 
 
 
 | 536 |  | 
 
 
 
 
 | 537 | END_INTERFACE | 
 
 
 
 
 | 538 | } IThumbnailSettingsVtbl; | 
 
 
 
 
 | 539 |  | 
 
 
 
 
 | 540 | interface IThumbnailSettings { | 
 
 
 
 
 | 541 | CONST_VTBL IThumbnailSettingsVtbl* lpVtbl; | 
 
 
 
 
 | 542 | }; | 
 
 
 
 
 | 543 |  | 
 
 
 
 
 | 544 | #ifdef COBJMACROS | 
 
 
 
 
 | 545 | #ifndef WIDL_C_INLINE_WRAPPERS | 
 
 
 
 
 | 546 | /*** IUnknown methods ***/ | 
 
 
 
 
 | 547 | #define IThumbnailSettings_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 
 
 
 
 | 548 | #define IThumbnailSettings_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 
 
 
 
 | 549 | #define IThumbnailSettings_Release(This) (This)->lpVtbl->Release(This) | 
 
 
 
 
 | 550 | /*** IThumbnailSettings methods ***/ | 
 
 
 
 
 | 551 | #define IThumbnailSettings_SetContext(This,dwContext) (This)->lpVtbl->SetContext(This,dwContext) | 
 
 
 
 
 | 552 | #else | 
 
 
 
 
 | 553 | /*** IUnknown methods ***/ | 
 
 
 
 
 | 554 | static FORCEINLINE HRESULT IThumbnailSettings_QueryInterface(IThumbnailSettings* This,REFIID riid,void **ppvObject) { | 
 
 
 
 
 | 555 | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
 
 
 
 
 | 556 | } | 
 
 
 
 
 | 557 | static FORCEINLINE ULONG IThumbnailSettings_AddRef(IThumbnailSettings* This) { | 
 
 
 
 
 | 558 | return This->lpVtbl->AddRef(This); | 
 
 
 
 
 | 559 | } | 
 
 
 
 
 | 560 | static FORCEINLINE ULONG IThumbnailSettings_Release(IThumbnailSettings* This) { | 
 
 
 
 
 | 561 | return This->lpVtbl->Release(This); | 
 
 
 
 
 | 562 | } | 
 
 
 
 
 | 563 | /*** IThumbnailSettings methods ***/ | 
 
 
 
 
 | 564 | static FORCEINLINE HRESULT IThumbnailSettings_SetContext(IThumbnailSettings* This,WTS_CONTEXTFLAGS dwContext) { | 
 
 
 
 
 | 565 | return This->lpVtbl->SetContext(This,dwContext); | 
 
 
 
 
 | 566 | } | 
 
 
 
 
 | 567 | #endif | 
 
 
 
 
 | 568 | #endif | 
 
 
 
 
 | 569 |  | 
 
 
 
 
 | 570 | #endif | 
 
 
 
 
 | 571 |  | 
 
 
 
 
 | 572 |  | 
 
 
 
 
 | 573 | #endif  /* __IThumbnailSettings_INTERFACE_DEFINED__ */ | 
 
 
 
 
 | 574 |  | 
 
 
 
 
 | 575 | /***************************************************************************** | 
 
 
 
 
 | 576 | * IThumbnailCachePrimer interface | 
 
 
 
 
 | 577 | */ | 
 
 
 
 
 | 578 | #ifndef __IThumbnailCachePrimer_INTERFACE_DEFINED__ | 
 
 
 
 
 | 579 | #define __IThumbnailCachePrimer_INTERFACE_DEFINED__ | 
 
 
 
 
 | 580 |  | 
 
 
 
 
 | 581 | DEFINE_GUID(IID_IThumbnailCachePrimer, 0x0f03f8fe, 0x2b26, 0x46f0, 0x96,0x5a, 0x21,0x2a,0xa8,0xd6,0x6b,0x76); | 
 
 
 
 
 | 582 | #if defined(__cplusplus) && !defined(CINTERFACE) | 
 
 
 
 
 | 583 | MIDL_INTERFACE("0f03f8fe-2b26-46f0-965a-212aa8d66b76") | 
 
 
 
 
 | 584 | IThumbnailCachePrimer : public IUnknown | 
 
 
 
 
 | 585 | { | 
 
 
 
 
 | 586 | virtual HRESULT STDMETHODCALLTYPE PageInThumbnail( | 
 
 
 
 
 | 587 | IShellItem *psi, | 
 
 
 
 
 | 588 | WTS_FLAGS wtsFlags, | 
 
 
 
 
 | 589 | UINT cxyRequestedThumbSize) = 0; | 
 
 
 
 
 | 590 |  | 
 
 
 
 
 | 591 | }; | 
 
 
 
 
 | 592 | #ifdef __CRT_UUID_DECL | 
 
 
 
 
 | 593 | __CRT_UUID_DECL(IThumbnailCachePrimer, 0x0f03f8fe, 0x2b26, 0x46f0, 0x96,0x5a, 0x21,0x2a,0xa8,0xd6,0x6b,0x76) | 
 
 
 
 
 | 594 | #endif | 
 
 
 
 
 | 595 | #else | 
 
 
 
 
 | 596 | typedef struct IThumbnailCachePrimerVtbl { | 
 
 
 
 
 | 597 | BEGIN_INTERFACE | 
 
 
 
 
 | 598 |  | 
 
 
 
 
 | 599 | /*** IUnknown methods ***/ | 
 
 
 
 
 | 600 | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
 
 
 
 
 | 601 | IThumbnailCachePrimer *This, | 
 
 
 
 
 | 602 | REFIID riid, | 
 
 
 
 
 | 603 | void **ppvObject); | 
 
 
 
 
 | 604 |  | 
 
 
 
 
 | 605 | ULONG (STDMETHODCALLTYPE *AddRef)( | 
 
 
 
 
 | 606 | IThumbnailCachePrimer *This); | 
 
 
 
 
 | 607 |  | 
 
 
 
 
 | 608 | ULONG (STDMETHODCALLTYPE *Release)( | 
 
 
 
 
 | 609 | IThumbnailCachePrimer *This); | 
 
 
 
 
 | 610 |  | 
 
 
 
 
 | 611 | /*** IThumbnailCachePrimer methods ***/ | 
 
 
 
 
 | 612 | HRESULT (STDMETHODCALLTYPE *PageInThumbnail)( | 
 
 
 
 
 | 613 | IThumbnailCachePrimer *This, | 
 
 
 
 
 | 614 | IShellItem *psi, | 
 
 
 
 
 | 615 | WTS_FLAGS wtsFlags, | 
 
 
 
 
 | 616 | UINT cxyRequestedThumbSize); | 
 
 
 
 
 | 617 |  | 
 
 
 
 
 | 618 | END_INTERFACE | 
 
 
 
 
 | 619 | } IThumbnailCachePrimerVtbl; | 
 
 
 
 
 | 620 |  | 
 
 
 
 
 | 621 | interface IThumbnailCachePrimer { | 
 
 
 
 
 | 622 | CONST_VTBL IThumbnailCachePrimerVtbl* lpVtbl; | 
 
 
 
 
 | 623 | }; | 
 
 
 
 
 | 624 |  | 
 
 
 
 
 | 625 | #ifdef COBJMACROS | 
 
 
 
 
 | 626 | #ifndef WIDL_C_INLINE_WRAPPERS | 
 
 
 
 
 | 627 | /*** IUnknown methods ***/ | 
 
 
 
 
 | 628 | #define IThumbnailCachePrimer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
 
 
 
 
 | 629 | #define IThumbnailCachePrimer_AddRef(This) (This)->lpVtbl->AddRef(This) | 
 
 
 
 
 | 630 | #define IThumbnailCachePrimer_Release(This) (This)->lpVtbl->Release(This) | 
 
 
 
 
 | 631 | /*** IThumbnailCachePrimer methods ***/ | 
 
 
 
 
 | 632 | #define IThumbnailCachePrimer_PageInThumbnail(This,psi,wtsFlags,cxyRequestedThumbSize) (This)->lpVtbl->PageInThumbnail(This,psi,wtsFlags,cxyRequestedThumbSize) | 
 
 
 
 
 | 633 | #else | 
 
 
 
 
 | 634 | /*** IUnknown methods ***/ | 
 
 
 
 
 | 635 | static FORCEINLINE HRESULT IThumbnailCachePrimer_QueryInterface(IThumbnailCachePrimer* This,REFIID riid,void **ppvObject) { | 
 
 
 
 
 | 636 | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
 
 
 
 
 | 637 | } | 
 
 
 
 
 | 638 | static FORCEINLINE ULONG IThumbnailCachePrimer_AddRef(IThumbnailCachePrimer* This) { | 
 
 
 
 
 | 639 | return This->lpVtbl->AddRef(This); | 
 
 
 
 
 | 640 | } | 
 
 
 
 
 | 641 | static FORCEINLINE ULONG IThumbnailCachePrimer_Release(IThumbnailCachePrimer* This) { | 
 
 
 
 
 | 642 | return This->lpVtbl->Release(This); | 
 
 
 
 
 | 643 | } | 
 
 
 
 
 | 644 | /*** IThumbnailCachePrimer methods ***/ | 
 
 
 
 
 | 645 | static FORCEINLINE HRESULT IThumbnailCachePrimer_PageInThumbnail(IThumbnailCachePrimer* This,IShellItem *psi,WTS_FLAGS wtsFlags,UINT cxyRequestedThumbSize) { | 
 
 
 
 
 | 646 | return This->lpVtbl->PageInThumbnail(This,psi,wtsFlags,cxyRequestedThumbSize); | 
 
 
 
 
 | 647 | } | 
 
 
 
 
 | 648 | #endif | 
 
 
 
 
 | 649 | #endif | 
 
 
 
 
 | 650 |  | 
 
 
 
 
 | 651 | #endif | 
 
 
 
 
 | 652 |  | 
 
 
 
 
 | 653 |  | 
 
 
 
 
 | 654 | #endif  /* __IThumbnailCachePrimer_INTERFACE_DEFINED__ */ | 
 
 
 
 
 | 655 |  | 
 
 
 
 
 | 656 | #ifndef __ThumbCacheLib_LIBRARY_DEFINED__ | 
 
 
 
 
 | 657 | #define __ThumbCacheLib_LIBRARY_DEFINED__ | 
 
 
 
 
 | 658 |  | 
 
 
 
 
 | 659 | DEFINE_GUID(LIBID_ThumbCacheLib, 0x4c857096, 0x0514, 0x4d4d, 0xab,0xd5, 0xdf,0xaa,0xa3,0xc3,0x26,0xd2); | 
 
 
 
 
 | 660 |  | 
 
 
 
 
 | 661 | /***************************************************************************** | 
 
 
 
 
 | 662 | * LocalThumbnailCache coclass | 
 
 
 
 
 | 663 | */ | 
 
 
 
 
 | 664 |  | 
 
 
 
 
 | 665 | DEFINE_GUID(CLSID_LocalThumbnailCache, 0x50ef4544, 0xac9f, 0x4a8e, 0xb2,0x1b, 0x8a,0x26,0x18,0x0d,0xb1,0x3f); | 
 
 
 
 
 | 666 |  | 
 
 
 
 
 | 667 | #ifdef __cplusplus | 
 
 
 
 
 | 668 | class DECLSPEC_UUID("50ef4544-ac9f-4a8e-b21b-8a26180db13f") LocalThumbnailCache; | 
 
 
 
 
 | 669 | #ifdef __CRT_UUID_DECL | 
 
 
 
 
 | 670 | __CRT_UUID_DECL(LocalThumbnailCache, 0x50ef4544, 0xac9f, 0x4a8e, 0xb2,0x1b, 0x8a,0x26,0x18,0x0d,0xb1,0x3f) | 
 
 
 
 
 | 671 | #endif | 
 
 
 
 
 | 672 | #endif | 
 
 
 
 
 | 673 |  | 
 
 
 
 
 | 674 | /***************************************************************************** | 
 
 
 
 
 | 675 | * SharedBitmap coclass | 
 
 
 
 
 | 676 | */ | 
 
 
 
 
 | 677 |  | 
 
 
 
 
 | 678 | DEFINE_GUID(CLSID_SharedBitmap, 0x4db26476, 0x6787, 0x4046, 0xb8,0x36, 0xe8,0x41,0x2a,0x9e,0x8a,0x27); | 
 
 
 
 
 | 679 |  | 
 
 
 
 
 | 680 | #ifdef __cplusplus | 
 
 
 
 
 | 681 | class DECLSPEC_UUID("4db26476-6787-4046-b836-e8412a9e8a27") SharedBitmap; | 
 
 
 
 
 | 682 | #ifdef __CRT_UUID_DECL | 
 
 
 
 
 | 683 | __CRT_UUID_DECL(SharedBitmap, 0x4db26476, 0x6787, 0x4046, 0xb8,0x36, 0xe8,0x41,0x2a,0x9e,0x8a,0x27) | 
 
 
 
 
 | 684 | #endif | 
 
 
 
 
 | 685 | #endif | 
 
 
 
 
 | 686 |  | 
 
 
 
 
 | 687 | #endif /* __ThumbCacheLib_LIBRARY_DEFINED__ */ | 
 
 
 
 
 | 688 | /* Begin additional prototypes for all interfaces */ | 
 
 
 
 
 | 689 |  | 
 
 
 
 
 | 690 | ULONG           __RPC_USER HBITMAP_UserSize     (ULONG *, ULONG, HBITMAP *); | 
 
 
 
 
 | 691 | unsigned char * __RPC_USER HBITMAP_UserMarshal  (ULONG *, unsigned char *, HBITMAP *); | 
 
 
 
 
 | 692 | unsigned char * __RPC_USER HBITMAP_UserUnmarshal(ULONG *, unsigned char *, HBITMAP *); | 
 
 
 
 
 | 693 | void            __RPC_USER HBITMAP_UserFree     (ULONG *, HBITMAP *); | 
 
 
 
 
 | 694 |  | 
 
 
 
 
 | 695 | /* End additional prototypes */ | 
 
 
 
 
 | 696 |  | 
 
 
 
 
 | 697 | #ifdef __cplusplus | 
 
 
 
 
 | 698 | } | 
 
 
 
 
 | 699 | #endif | 
 
 
 
 
 | 700 |  | 
 
 
 
 
 | 701 | #endif /* __thumbcache_h__ */ |