| 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__ */ |