evr9.h (14434B) - Raw
1 /*** Autogenerated by WIDL 10.4 from include/evr9.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 __evr9_h__ 17 #define __evr9_h__ 18 19 /* Forward declarations */ 20 21 #ifndef __IMFVideoMixerBitmap_FWD_DEFINED__ 22 #define __IMFVideoMixerBitmap_FWD_DEFINED__ 23 typedef interface IMFVideoMixerBitmap IMFVideoMixerBitmap; 24 #ifdef __cplusplus 25 interface IMFVideoMixerBitmap; 26 #endif /* __cplusplus */ 27 #endif 28 29 #ifndef __IMFVideoProcessor_FWD_DEFINED__ 30 #define __IMFVideoProcessor_FWD_DEFINED__ 31 typedef interface IMFVideoProcessor IMFVideoProcessor; 32 #ifdef __cplusplus 33 interface IMFVideoProcessor; 34 #endif /* __cplusplus */ 35 #endif 36 37 /* Headers for imported files */ 38 39 #include <unknwn.h> 40 #include <evr.h> 41 #include <dxva2api.h> 42 43 #ifdef __cplusplus 44 extern "C" { 45 #endif 46 47 typedef struct MFVideoAlphaBitmapParams { 48 DWORD dwFlags; 49 COLORREF clrSrcKey; 50 RECT rcSrc; 51 MFVideoNormalizedRect nrcDest; 52 FLOAT fAlpha; 53 DWORD dwFilterMode; 54 } MFVideoAlphaBitmapParams; 55 typedef struct MFVideoAlphaBitmap { 56 WINBOOL GetBitmapFromDC; 57 union { 58 HDC hdc; 59 IDirect3DSurface9 *pDDS; 60 } bitmap; 61 MFVideoAlphaBitmapParams params; 62 } MFVideoAlphaBitmap; 63 typedef enum __WIDL_evr9_generated_name_00000030 { 64 MFVideoAlphaBitmap_EntireDDS = 0x1, 65 MFVideoAlphaBitmap_SrcColorKey = 0x2, 66 MFVideoAlphaBitmap_SrcRect = 0x4, 67 MFVideoAlphaBitmap_DestRect = 0x8, 68 MFVideoAlphaBitmap_FilterMode = 0x10, 69 MFVideoAlphaBitmap_Alpha = 0x20, 70 MFVideoAlphaBitmap_BitMask = 0x3f 71 } MFVideoAlphaBitmapFlags; 72 /***************************************************************************** 73 * IMFVideoMixerBitmap interface 74 */ 75 #ifndef __IMFVideoMixerBitmap_INTERFACE_DEFINED__ 76 #define __IMFVideoMixerBitmap_INTERFACE_DEFINED__ 77 78 DEFINE_GUID(IID_IMFVideoMixerBitmap, 0x814c7b20, 0x0fdb, 0x4eec, 0xaf,0x8f, 0xf9,0x57,0xc8,0xf6,0x9e,0xdc); 79 #if defined(__cplusplus) && !defined(CINTERFACE) 80 MIDL_INTERFACE("814c7b20-0fdb-4eec-af8f-f957c8f69edc") 81 IMFVideoMixerBitmap : public IUnknown 82 { 83 virtual HRESULT STDMETHODCALLTYPE SetAlphaBitmap( 84 const MFVideoAlphaBitmap *bitmap) = 0; 85 86 virtual HRESULT STDMETHODCALLTYPE ClearAlphaBitmap( 87 ) = 0; 88 89 virtual HRESULT STDMETHODCALLTYPE UpdateAlphaBitmapParameters( 90 const MFVideoAlphaBitmapParams *params) = 0; 91 92 virtual HRESULT STDMETHODCALLTYPE GetAlphaBitmapParameters( 93 MFVideoAlphaBitmapParams *params) = 0; 94 95 }; 96 #ifdef __CRT_UUID_DECL 97 __CRT_UUID_DECL(IMFVideoMixerBitmap, 0x814c7b20, 0x0fdb, 0x4eec, 0xaf,0x8f, 0xf9,0x57,0xc8,0xf6,0x9e,0xdc) 98 #endif 99 #else 100 typedef struct IMFVideoMixerBitmapVtbl { 101 BEGIN_INTERFACE 102 103 /*** IUnknown methods ***/ 104 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 105 IMFVideoMixerBitmap *This, 106 REFIID riid, 107 void **ppvObject); 108 109 ULONG (STDMETHODCALLTYPE *AddRef)( 110 IMFVideoMixerBitmap *This); 111 112 ULONG (STDMETHODCALLTYPE *Release)( 113 IMFVideoMixerBitmap *This); 114 115 /*** IMFVideoMixerBitmap methods ***/ 116 HRESULT (STDMETHODCALLTYPE *SetAlphaBitmap)( 117 IMFVideoMixerBitmap *This, 118 const MFVideoAlphaBitmap *bitmap); 119 120 HRESULT (STDMETHODCALLTYPE *ClearAlphaBitmap)( 121 IMFVideoMixerBitmap *This); 122 123 HRESULT (STDMETHODCALLTYPE *UpdateAlphaBitmapParameters)( 124 IMFVideoMixerBitmap *This, 125 const MFVideoAlphaBitmapParams *params); 126 127 HRESULT (STDMETHODCALLTYPE *GetAlphaBitmapParameters)( 128 IMFVideoMixerBitmap *This, 129 MFVideoAlphaBitmapParams *params); 130 131 END_INTERFACE 132 } IMFVideoMixerBitmapVtbl; 133 134 interface IMFVideoMixerBitmap { 135 CONST_VTBL IMFVideoMixerBitmapVtbl* lpVtbl; 136 }; 137 138 #ifdef COBJMACROS 139 #ifndef WIDL_C_INLINE_WRAPPERS 140 /*** IUnknown methods ***/ 141 #define IMFVideoMixerBitmap_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 142 #define IMFVideoMixerBitmap_AddRef(This) (This)->lpVtbl->AddRef(This) 143 #define IMFVideoMixerBitmap_Release(This) (This)->lpVtbl->Release(This) 144 /*** IMFVideoMixerBitmap methods ***/ 145 #define IMFVideoMixerBitmap_SetAlphaBitmap(This,bitmap) (This)->lpVtbl->SetAlphaBitmap(This,bitmap) 146 #define IMFVideoMixerBitmap_ClearAlphaBitmap(This) (This)->lpVtbl->ClearAlphaBitmap(This) 147 #define IMFVideoMixerBitmap_UpdateAlphaBitmapParameters(This,params) (This)->lpVtbl->UpdateAlphaBitmapParameters(This,params) 148 #define IMFVideoMixerBitmap_GetAlphaBitmapParameters(This,params) (This)->lpVtbl->GetAlphaBitmapParameters(This,params) 149 #else 150 /*** IUnknown methods ***/ 151 static inline HRESULT IMFVideoMixerBitmap_QueryInterface(IMFVideoMixerBitmap* This,REFIID riid,void **ppvObject) { 152 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 153 } 154 static inline ULONG IMFVideoMixerBitmap_AddRef(IMFVideoMixerBitmap* This) { 155 return This->lpVtbl->AddRef(This); 156 } 157 static inline ULONG IMFVideoMixerBitmap_Release(IMFVideoMixerBitmap* This) { 158 return This->lpVtbl->Release(This); 159 } 160 /*** IMFVideoMixerBitmap methods ***/ 161 static inline HRESULT IMFVideoMixerBitmap_SetAlphaBitmap(IMFVideoMixerBitmap* This,const MFVideoAlphaBitmap *bitmap) { 162 return This->lpVtbl->SetAlphaBitmap(This,bitmap); 163 } 164 static inline HRESULT IMFVideoMixerBitmap_ClearAlphaBitmap(IMFVideoMixerBitmap* This) { 165 return This->lpVtbl->ClearAlphaBitmap(This); 166 } 167 static inline HRESULT IMFVideoMixerBitmap_UpdateAlphaBitmapParameters(IMFVideoMixerBitmap* This,const MFVideoAlphaBitmapParams *params) { 168 return This->lpVtbl->UpdateAlphaBitmapParameters(This,params); 169 } 170 static inline HRESULT IMFVideoMixerBitmap_GetAlphaBitmapParameters(IMFVideoMixerBitmap* This,MFVideoAlphaBitmapParams *params) { 171 return This->lpVtbl->GetAlphaBitmapParameters(This,params); 172 } 173 #endif 174 #endif 175 176 #endif 177 178 179 #endif /* __IMFVideoMixerBitmap_INTERFACE_DEFINED__ */ 180 181 /***************************************************************************** 182 * IMFVideoProcessor interface 183 */ 184 #ifndef __IMFVideoProcessor_INTERFACE_DEFINED__ 185 #define __IMFVideoProcessor_INTERFACE_DEFINED__ 186 187 DEFINE_GUID(IID_IMFVideoProcessor, 0x6ab0000c, 0xfece, 0x4d1f, 0xa2,0xac, 0xa9,0x57,0x35,0x30,0x65,0x6e); 188 #if defined(__cplusplus) && !defined(CINTERFACE) 189 MIDL_INTERFACE("6ab0000c-fece-4d1f-a2ac-a9573530656e") 190 IMFVideoProcessor : public IUnknown 191 { 192 virtual HRESULT STDMETHODCALLTYPE GetAvailableVideoProcessorModes( 193 UINT *count, 194 GUID **modes) = 0; 195 196 virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorCaps( 197 GUID *mode, 198 DXVA2_VideoProcessorCaps *caps) = 0; 199 200 virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorMode( 201 GUID *mode) = 0; 202 203 virtual HRESULT STDMETHODCALLTYPE SetVideoProcessorMode( 204 GUID *mode) = 0; 205 206 virtual HRESULT STDMETHODCALLTYPE GetProcAmpRange( 207 DWORD prop, 208 DXVA2_ValueRange *range) = 0; 209 210 virtual HRESULT STDMETHODCALLTYPE GetProcAmpValues( 211 DWORD flags, 212 DXVA2_ProcAmpValues *values) = 0; 213 214 virtual HRESULT STDMETHODCALLTYPE SetProcAmpValues( 215 DWORD flags, 216 DXVA2_ProcAmpValues *values) = 0; 217 218 virtual HRESULT STDMETHODCALLTYPE GetFilteringRange( 219 DWORD prop, 220 DXVA2_ValueRange *range) = 0; 221 222 virtual HRESULT STDMETHODCALLTYPE GetFilteringValue( 223 DWORD prop, 224 DXVA2_Fixed32 *value) = 0; 225 226 virtual HRESULT STDMETHODCALLTYPE SetFilteringValue( 227 DWORD prop, 228 DXVA2_Fixed32 *value) = 0; 229 230 virtual HRESULT STDMETHODCALLTYPE GetBackgroundColor( 231 COLORREF *color) = 0; 232 233 virtual HRESULT STDMETHODCALLTYPE SetBackgroundColor( 234 COLORREF color) = 0; 235 236 }; 237 #ifdef __CRT_UUID_DECL 238 __CRT_UUID_DECL(IMFVideoProcessor, 0x6ab0000c, 0xfece, 0x4d1f, 0xa2,0xac, 0xa9,0x57,0x35,0x30,0x65,0x6e) 239 #endif 240 #else 241 typedef struct IMFVideoProcessorVtbl { 242 BEGIN_INTERFACE 243 244 /*** IUnknown methods ***/ 245 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 246 IMFVideoProcessor *This, 247 REFIID riid, 248 void **ppvObject); 249 250 ULONG (STDMETHODCALLTYPE *AddRef)( 251 IMFVideoProcessor *This); 252 253 ULONG (STDMETHODCALLTYPE *Release)( 254 IMFVideoProcessor *This); 255 256 /*** IMFVideoProcessor methods ***/ 257 HRESULT (STDMETHODCALLTYPE *GetAvailableVideoProcessorModes)( 258 IMFVideoProcessor *This, 259 UINT *count, 260 GUID **modes); 261 262 HRESULT (STDMETHODCALLTYPE *GetVideoProcessorCaps)( 263 IMFVideoProcessor *This, 264 GUID *mode, 265 DXVA2_VideoProcessorCaps *caps); 266 267 HRESULT (STDMETHODCALLTYPE *GetVideoProcessorMode)( 268 IMFVideoProcessor *This, 269 GUID *mode); 270 271 HRESULT (STDMETHODCALLTYPE *SetVideoProcessorMode)( 272 IMFVideoProcessor *This, 273 GUID *mode); 274 275 HRESULT (STDMETHODCALLTYPE *GetProcAmpRange)( 276 IMFVideoProcessor *This, 277 DWORD prop, 278 DXVA2_ValueRange *range); 279 280 HRESULT (STDMETHODCALLTYPE *GetProcAmpValues)( 281 IMFVideoProcessor *This, 282 DWORD flags, 283 DXVA2_ProcAmpValues *values); 284 285 HRESULT (STDMETHODCALLTYPE *SetProcAmpValues)( 286 IMFVideoProcessor *This, 287 DWORD flags, 288 DXVA2_ProcAmpValues *values); 289 290 HRESULT (STDMETHODCALLTYPE *GetFilteringRange)( 291 IMFVideoProcessor *This, 292 DWORD prop, 293 DXVA2_ValueRange *range); 294 295 HRESULT (STDMETHODCALLTYPE *GetFilteringValue)( 296 IMFVideoProcessor *This, 297 DWORD prop, 298 DXVA2_Fixed32 *value); 299 300 HRESULT (STDMETHODCALLTYPE *SetFilteringValue)( 301 IMFVideoProcessor *This, 302 DWORD prop, 303 DXVA2_Fixed32 *value); 304 305 HRESULT (STDMETHODCALLTYPE *GetBackgroundColor)( 306 IMFVideoProcessor *This, 307 COLORREF *color); 308 309 HRESULT (STDMETHODCALLTYPE *SetBackgroundColor)( 310 IMFVideoProcessor *This, 311 COLORREF color); 312 313 END_INTERFACE 314 } IMFVideoProcessorVtbl; 315 316 interface IMFVideoProcessor { 317 CONST_VTBL IMFVideoProcessorVtbl* lpVtbl; 318 }; 319 320 #ifdef COBJMACROS 321 #ifndef WIDL_C_INLINE_WRAPPERS 322 /*** IUnknown methods ***/ 323 #define IMFVideoProcessor_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 324 #define IMFVideoProcessor_AddRef(This) (This)->lpVtbl->AddRef(This) 325 #define IMFVideoProcessor_Release(This) (This)->lpVtbl->Release(This) 326 /*** IMFVideoProcessor methods ***/ 327 #define IMFVideoProcessor_GetAvailableVideoProcessorModes(This,count,modes) (This)->lpVtbl->GetAvailableVideoProcessorModes(This,count,modes) 328 #define IMFVideoProcessor_GetVideoProcessorCaps(This,mode,caps) (This)->lpVtbl->GetVideoProcessorCaps(This,mode,caps) 329 #define IMFVideoProcessor_GetVideoProcessorMode(This,mode) (This)->lpVtbl->GetVideoProcessorMode(This,mode) 330 #define IMFVideoProcessor_SetVideoProcessorMode(This,mode) (This)->lpVtbl->SetVideoProcessorMode(This,mode) 331 #define IMFVideoProcessor_GetProcAmpRange(This,prop,range) (This)->lpVtbl->GetProcAmpRange(This,prop,range) 332 #define IMFVideoProcessor_GetProcAmpValues(This,flags,values) (This)->lpVtbl->GetProcAmpValues(This,flags,values) 333 #define IMFVideoProcessor_SetProcAmpValues(This,flags,values) (This)->lpVtbl->SetProcAmpValues(This,flags,values) 334 #define IMFVideoProcessor_GetFilteringRange(This,prop,range) (This)->lpVtbl->GetFilteringRange(This,prop,range) 335 #define IMFVideoProcessor_GetFilteringValue(This,prop,value) (This)->lpVtbl->GetFilteringValue(This,prop,value) 336 #define IMFVideoProcessor_SetFilteringValue(This,prop,value) (This)->lpVtbl->SetFilteringValue(This,prop,value) 337 #define IMFVideoProcessor_GetBackgroundColor(This,color) (This)->lpVtbl->GetBackgroundColor(This,color) 338 #define IMFVideoProcessor_SetBackgroundColor(This,color) (This)->lpVtbl->SetBackgroundColor(This,color) 339 #else 340 /*** IUnknown methods ***/ 341 static inline HRESULT IMFVideoProcessor_QueryInterface(IMFVideoProcessor* This,REFIID riid,void **ppvObject) { 342 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 343 } 344 static inline ULONG IMFVideoProcessor_AddRef(IMFVideoProcessor* This) { 345 return This->lpVtbl->AddRef(This); 346 } 347 static inline ULONG IMFVideoProcessor_Release(IMFVideoProcessor* This) { 348 return This->lpVtbl->Release(This); 349 } 350 /*** IMFVideoProcessor methods ***/ 351 static inline HRESULT IMFVideoProcessor_GetAvailableVideoProcessorModes(IMFVideoProcessor* This,UINT *count,GUID **modes) { 352 return This->lpVtbl->GetAvailableVideoProcessorModes(This,count,modes); 353 } 354 static inline HRESULT IMFVideoProcessor_GetVideoProcessorCaps(IMFVideoProcessor* This,GUID *mode,DXVA2_VideoProcessorCaps *caps) { 355 return This->lpVtbl->GetVideoProcessorCaps(This,mode,caps); 356 } 357 static inline HRESULT IMFVideoProcessor_GetVideoProcessorMode(IMFVideoProcessor* This,GUID *mode) { 358 return This->lpVtbl->GetVideoProcessorMode(This,mode); 359 } 360 static inline HRESULT IMFVideoProcessor_SetVideoProcessorMode(IMFVideoProcessor* This,GUID *mode) { 361 return This->lpVtbl->SetVideoProcessorMode(This,mode); 362 } 363 static inline HRESULT IMFVideoProcessor_GetProcAmpRange(IMFVideoProcessor* This,DWORD prop,DXVA2_ValueRange *range) { 364 return This->lpVtbl->GetProcAmpRange(This,prop,range); 365 } 366 static inline HRESULT IMFVideoProcessor_GetProcAmpValues(IMFVideoProcessor* This,DWORD flags,DXVA2_ProcAmpValues *values) { 367 return This->lpVtbl->GetProcAmpValues(This,flags,values); 368 } 369 static inline HRESULT IMFVideoProcessor_SetProcAmpValues(IMFVideoProcessor* This,DWORD flags,DXVA2_ProcAmpValues *values) { 370 return This->lpVtbl->SetProcAmpValues(This,flags,values); 371 } 372 static inline HRESULT IMFVideoProcessor_GetFilteringRange(IMFVideoProcessor* This,DWORD prop,DXVA2_ValueRange *range) { 373 return This->lpVtbl->GetFilteringRange(This,prop,range); 374 } 375 static inline HRESULT IMFVideoProcessor_GetFilteringValue(IMFVideoProcessor* This,DWORD prop,DXVA2_Fixed32 *value) { 376 return This->lpVtbl->GetFilteringValue(This,prop,value); 377 } 378 static inline HRESULT IMFVideoProcessor_SetFilteringValue(IMFVideoProcessor* This,DWORD prop,DXVA2_Fixed32 *value) { 379 return This->lpVtbl->SetFilteringValue(This,prop,value); 380 } 381 static inline HRESULT IMFVideoProcessor_GetBackgroundColor(IMFVideoProcessor* This,COLORREF *color) { 382 return This->lpVtbl->GetBackgroundColor(This,color); 383 } 384 static inline HRESULT IMFVideoProcessor_SetBackgroundColor(IMFVideoProcessor* This,COLORREF color) { 385 return This->lpVtbl->SetBackgroundColor(This,color); 386 } 387 #endif 388 #endif 389 390 #endif 391 392 393 #endif /* __IMFVideoProcessor_INTERFACE_DEFINED__ */ 394 395 /* Begin additional prototypes for all interfaces */ 396 397 398 /* End additional prototypes */ 399 400 #ifdef __cplusplus 401 } 402 #endif 403 404 #endif /* __evr9_h__ */