1 /*** Autogenerated by WIDL 1.6 from include/strmif.idl - Do not edit ***/ 2 3 #ifndef __REQUIRED_RPCNDR_H_VERSION__ 4 #define __REQUIRED_RPCNDR_H_VERSION__ 475 5 #endif 6 7 #include <rpc.h> 8 #include <rpcndr.h> 9 10 #ifndef COM_NO_WINDOWS_H 11 #include <windows.h> 12 #include <ole2.h> 13 #endif 14 15 #ifndef __strmif_h__ 16 #define __strmif_h__ 17 18 /* Forward declarations */ 19 20 #ifndef __ICreateDevEnum_FWD_DEFINED__ 21 #define __ICreateDevEnum_FWD_DEFINED__ 22 typedef interface ICreateDevEnum ICreateDevEnum; 23 #endif 24 25 #ifndef __IPin_FWD_DEFINED__ 26 #define __IPin_FWD_DEFINED__ 27 typedef interface IPin IPin; 28 #endif 29 30 #ifndef __IEnumPins_FWD_DEFINED__ 31 #define __IEnumPins_FWD_DEFINED__ 32 typedef interface IEnumPins IEnumPins; 33 #endif 34 35 #ifndef __IEnumMediaTypes_FWD_DEFINED__ 36 #define __IEnumMediaTypes_FWD_DEFINED__ 37 typedef interface IEnumMediaTypes IEnumMediaTypes; 38 #endif 39 40 #ifndef __IFilterGraph_FWD_DEFINED__ 41 #define __IFilterGraph_FWD_DEFINED__ 42 typedef interface IFilterGraph IFilterGraph; 43 #endif 44 45 #ifndef __IEnumFilters_FWD_DEFINED__ 46 #define __IEnumFilters_FWD_DEFINED__ 47 typedef interface IEnumFilters IEnumFilters; 48 #endif 49 50 #ifndef __IMediaFilter_FWD_DEFINED__ 51 #define __IMediaFilter_FWD_DEFINED__ 52 typedef interface IMediaFilter IMediaFilter; 53 #endif 54 55 #ifndef __IBaseFilter_FWD_DEFINED__ 56 #define __IBaseFilter_FWD_DEFINED__ 57 typedef interface IBaseFilter IBaseFilter; 58 #endif 59 60 #ifndef __IReferenceClock_FWD_DEFINED__ 61 #define __IReferenceClock_FWD_DEFINED__ 62 typedef interface IReferenceClock IReferenceClock; 63 #endif 64 65 #ifndef __IReferenceClockTimerControl_FWD_DEFINED__ 66 #define __IReferenceClockTimerControl_FWD_DEFINED__ 67 typedef interface IReferenceClockTimerControl IReferenceClockTimerControl; 68 #endif 69 70 #ifndef __IReferenceClock2_FWD_DEFINED__ 71 #define __IReferenceClock2_FWD_DEFINED__ 72 typedef interface IReferenceClock2 IReferenceClock2; 73 #endif 74 75 #ifndef __IMediaSample_FWD_DEFINED__ 76 #define __IMediaSample_FWD_DEFINED__ 77 typedef interface IMediaSample IMediaSample; 78 #endif 79 80 #ifndef __IMediaSample2_FWD_DEFINED__ 81 #define __IMediaSample2_FWD_DEFINED__ 82 typedef interface IMediaSample2 IMediaSample2; 83 #endif 84 85 #ifndef __IMediaSample2Config_FWD_DEFINED__ 86 #define __IMediaSample2Config_FWD_DEFINED__ 87 typedef interface IMediaSample2Config IMediaSample2Config; 88 #endif 89 90 #ifndef __IMemAllocator_FWD_DEFINED__ 91 #define __IMemAllocator_FWD_DEFINED__ 92 typedef interface IMemAllocator IMemAllocator; 93 #endif 94 95 #ifndef __IMemAllocatorCallbackTemp_FWD_DEFINED__ 96 #define __IMemAllocatorCallbackTemp_FWD_DEFINED__ 97 typedef interface IMemAllocatorCallbackTemp IMemAllocatorCallbackTemp; 98 #endif 99 100 #ifndef __IMemAllocatorNotifyCallbackTemp_FWD_DEFINED__ 101 #define __IMemAllocatorNotifyCallbackTemp_FWD_DEFINED__ 102 typedef interface IMemAllocatorNotifyCallbackTemp IMemAllocatorNotifyCallbackTemp; 103 #endif 104 105 #ifndef __IMemInputPin_FWD_DEFINED__ 106 #define __IMemInputPin_FWD_DEFINED__ 107 typedef interface IMemInputPin IMemInputPin; 108 #endif 109 110 #ifndef __IAMovieSetup_FWD_DEFINED__ 111 #define __IAMovieSetup_FWD_DEFINED__ 112 typedef interface IAMovieSetup IAMovieSetup; 113 #endif 114 115 #ifndef __IMediaSeeking_FWD_DEFINED__ 116 #define __IMediaSeeking_FWD_DEFINED__ 117 typedef interface IMediaSeeking IMediaSeeking; 118 #endif 119 120 #ifndef __IEnumRegFilters_FWD_DEFINED__ 121 #define __IEnumRegFilters_FWD_DEFINED__ 122 typedef interface IEnumRegFilters IEnumRegFilters; 123 #endif 124 125 #ifndef __IFilterMapper_FWD_DEFINED__ 126 #define __IFilterMapper_FWD_DEFINED__ 127 typedef interface IFilterMapper IFilterMapper; 128 #endif 129 130 #ifndef __IFilterMapper2_FWD_DEFINED__ 131 #define __IFilterMapper2_FWD_DEFINED__ 132 typedef interface IFilterMapper2 IFilterMapper2; 133 #endif 134 135 #ifndef __IFilterMapper3_FWD_DEFINED__ 136 #define __IFilterMapper3_FWD_DEFINED__ 137 typedef interface IFilterMapper3 IFilterMapper3; 138 #endif 139 140 #ifndef __IQualityControl_FWD_DEFINED__ 141 #define __IQualityControl_FWD_DEFINED__ 142 typedef interface IQualityControl IQualityControl; 143 #endif 144 145 #ifndef __IOverlayNotify_FWD_DEFINED__ 146 #define __IOverlayNotify_FWD_DEFINED__ 147 typedef interface IOverlayNotify IOverlayNotify; 148 #endif 149 150 #ifndef __IOverlayNotify2_FWD_DEFINED__ 151 #define __IOverlayNotify2_FWD_DEFINED__ 152 typedef interface IOverlayNotify2 IOverlayNotify2; 153 #endif 154 155 #ifndef __IOverlay_FWD_DEFINED__ 156 #define __IOverlay_FWD_DEFINED__ 157 typedef interface IOverlay IOverlay; 158 #endif 159 160 #ifndef __IMediaEventSink_FWD_DEFINED__ 161 #define __IMediaEventSink_FWD_DEFINED__ 162 typedef interface IMediaEventSink IMediaEventSink; 163 #endif 164 165 #ifndef __IFileSourceFilter_FWD_DEFINED__ 166 #define __IFileSourceFilter_FWD_DEFINED__ 167 typedef interface IFileSourceFilter IFileSourceFilter; 168 #endif 169 170 #ifndef __IFileSinkFilter_FWD_DEFINED__ 171 #define __IFileSinkFilter_FWD_DEFINED__ 172 typedef interface IFileSinkFilter IFileSinkFilter; 173 #endif 174 175 #ifndef __IFileSinkFilter2_FWD_DEFINED__ 176 #define __IFileSinkFilter2_FWD_DEFINED__ 177 typedef interface IFileSinkFilter2 IFileSinkFilter2; 178 #endif 179 180 #ifndef __IGraphBuilder_FWD_DEFINED__ 181 #define __IGraphBuilder_FWD_DEFINED__ 182 typedef interface IGraphBuilder IGraphBuilder; 183 #endif 184 185 #ifndef __ICaptureGraphBuilder_FWD_DEFINED__ 186 #define __ICaptureGraphBuilder_FWD_DEFINED__ 187 typedef interface ICaptureGraphBuilder ICaptureGraphBuilder; 188 #endif 189 190 #ifndef __IAMCopyCaptureFileProgress_FWD_DEFINED__ 191 #define __IAMCopyCaptureFileProgress_FWD_DEFINED__ 192 typedef interface IAMCopyCaptureFileProgress IAMCopyCaptureFileProgress; 193 #endif 194 195 #ifndef __ICaptureGraphBuilder2_FWD_DEFINED__ 196 #define __ICaptureGraphBuilder2_FWD_DEFINED__ 197 typedef interface ICaptureGraphBuilder2 ICaptureGraphBuilder2; 198 #endif 199 200 #ifndef __IConfigAviMux_FWD_DEFINED__ 201 #define __IConfigAviMux_FWD_DEFINED__ 202 typedef interface IConfigAviMux IConfigAviMux; 203 #endif 204 205 #ifndef __IConfigInterleaving_FWD_DEFINED__ 206 #define __IConfigInterleaving_FWD_DEFINED__ 207 typedef interface IConfigInterleaving IConfigInterleaving; 208 #endif 209 210 #ifndef __IAMClockSlave_FWD_DEFINED__ 211 #define __IAMClockSlave_FWD_DEFINED__ 212 typedef interface IAMClockSlave IAMClockSlave; 213 #endif 214 215 #ifndef __IAMCertifiedOutputProtection_FWD_DEFINED__ 216 #define __IAMCertifiedOutputProtection_FWD_DEFINED__ 217 typedef interface IAMCertifiedOutputProtection IAMCertifiedOutputProtection; 218 #endif 219 220 #ifndef __IFilterGraph2_FWD_DEFINED__ 221 #define __IFilterGraph2_FWD_DEFINED__ 222 typedef interface IFilterGraph2 IFilterGraph2; 223 #endif 224 225 #ifndef __IStreamBuilder_FWD_DEFINED__ 226 #define __IStreamBuilder_FWD_DEFINED__ 227 typedef interface IStreamBuilder IStreamBuilder; 228 #endif 229 230 #ifndef __IAMStreamConfig_FWD_DEFINED__ 231 #define __IAMStreamConfig_FWD_DEFINED__ 232 typedef interface IAMStreamConfig IAMStreamConfig; 233 #endif 234 235 #ifndef __IAMVideoProcAmp_FWD_DEFINED__ 236 #define __IAMVideoProcAmp_FWD_DEFINED__ 237 typedef interface IAMVideoProcAmp IAMVideoProcAmp; 238 #endif 239 240 #ifndef __IAsyncReader_FWD_DEFINED__ 241 #define __IAsyncReader_FWD_DEFINED__ 242 typedef interface IAsyncReader IAsyncReader; 243 #endif 244 245 #ifndef __IGraphVersion_FWD_DEFINED__ 246 #define __IGraphVersion_FWD_DEFINED__ 247 typedef interface IGraphVersion IGraphVersion; 248 #endif 249 250 #ifndef __IResourceConsumer_FWD_DEFINED__ 251 #define __IResourceConsumer_FWD_DEFINED__ 252 typedef interface IResourceConsumer IResourceConsumer; 253 #endif 254 255 #ifndef __IResourceManager_FWD_DEFINED__ 256 #define __IResourceManager_FWD_DEFINED__ 257 typedef interface IResourceManager IResourceManager; 258 #endif 259 260 #ifndef __IAMStreamControl_FWD_DEFINED__ 261 #define __IAMStreamControl_FWD_DEFINED__ 262 typedef interface IAMStreamControl IAMStreamControl; 263 #endif 264 265 #ifndef __IKsPropertySet_FWD_DEFINED__ 266 #define __IKsPropertySet_FWD_DEFINED__ 267 typedef interface IKsPropertySet IKsPropertySet; 268 #endif 269 270 #ifndef __IMediaPropertyBag_FWD_DEFINED__ 271 #define __IMediaPropertyBag_FWD_DEFINED__ 272 typedef interface IMediaPropertyBag IMediaPropertyBag; 273 #endif 274 275 #ifndef __IPersistMediaPropertyBag_FWD_DEFINED__ 276 #define __IPersistMediaPropertyBag_FWD_DEFINED__ 277 typedef interface IPersistMediaPropertyBag IPersistMediaPropertyBag; 278 #endif 279 280 #ifndef __ISeekingPassThru_FWD_DEFINED__ 281 #define __ISeekingPassThru_FWD_DEFINED__ 282 typedef interface ISeekingPassThru ISeekingPassThru; 283 #endif 284 285 #ifndef __IAMFilterMiscFlags_FWD_DEFINED__ 286 #define __IAMFilterMiscFlags_FWD_DEFINED__ 287 typedef interface IAMFilterMiscFlags IAMFilterMiscFlags; 288 #endif 289 290 #ifndef __IAMGraphBuilderCallback_FWD_DEFINED__ 291 #define __IAMGraphBuilderCallback_FWD_DEFINED__ 292 typedef interface IAMGraphBuilderCallback IAMGraphBuilderCallback; 293 #endif 294 295 #ifndef __IAMVfwCaptureDialogs_FWD_DEFINED__ 296 #define __IAMVfwCaptureDialogs_FWD_DEFINED__ 297 typedef interface IAMVfwCaptureDialogs IAMVfwCaptureDialogs; 298 #endif 299 300 #ifndef __IAMAsyncReaderTimestampScaling_FWD_DEFINED__ 301 #define __IAMAsyncReaderTimestampScaling_FWD_DEFINED__ 302 typedef interface IAMAsyncReaderTimestampScaling IAMAsyncReaderTimestampScaling; 303 #endif 304 305 #ifndef __IAMPluginControl_FWD_DEFINED__ 306 #define __IAMPluginControl_FWD_DEFINED__ 307 typedef interface IAMPluginControl IAMPluginControl; 308 #endif 309 310 /* Headers for imported files */ 311 312 #include <unknwn.h> 313 #include <objidl.h> 314 #include <oaidl.h> 315 316 #ifdef __cplusplus 317 extern "C" { 318 #endif 319 320 /** 321 * This file is part of the mingw-w64 runtime package. 322 * No warranty is given; refer to the file DISCLAIMER within this package. 323 */ 324 325 #include <winapifamily.h> 326 327 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 328 329 #define CDEF_CLASS_DEFAULT 0x1 330 #define CDEF_BYPASS_CLASS_MANAGER 0x2 331 #define CDEF_MERIT_ABOVE_DO_NOT_USE 0x8 332 #define CDEF_DEVMON_CMGR_DEVICE 0x10 333 #define CDEF_DEVMON_DMO 0x20 334 #define CDEF_DEVMON_PNP_DEVICE 0x40 335 #define CDEF_DEVMON_FILTER 0x80 336 337 #define CDEF_DEVMON_SELECTIVE_MASK 0xf0 338 339 340 /***************************************************************************** 341 * ICreateDevEnum interface 342 */ 343 #ifndef __ICreateDevEnum_INTERFACE_DEFINED__ 344 #define __ICreateDevEnum_INTERFACE_DEFINED__ 345 346 DEFINE_GUID(IID_ICreateDevEnum, 0x29840822, 0x5b84, 0x11d0, 0xbd,0x3b, 0x00,0xa0,0xc9,0x11,0xce,0x86); 347 #if defined(__cplusplus) && !defined(CINTERFACE) 348 MIDL_INTERFACE("29840822-5b84-11d0-bd3b-00a0c911ce86") 349 ICreateDevEnum : public IUnknown 350 { 351 virtual HRESULT STDMETHODCALLTYPE CreateClassEnumerator( 352 REFCLSID clsidDeviceClass, 353 IEnumMoniker **ppEnumMoniker, 354 DWORD dwFlags) = 0; 355 356 }; 357 #ifdef __CRT_UUID_DECL 358 __CRT_UUID_DECL(ICreateDevEnum, 0x29840822, 0x5b84, 0x11d0, 0xbd,0x3b, 0x00,0xa0,0xc9,0x11,0xce,0x86) 359 #endif 360 #else 361 typedef struct ICreateDevEnumVtbl { 362 BEGIN_INTERFACE 363 364 /*** IUnknown methods ***/ 365 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 366 ICreateDevEnum* This, 367 REFIID riid, 368 void **ppvObject); 369 370 ULONG (STDMETHODCALLTYPE *AddRef)( 371 ICreateDevEnum* This); 372 373 ULONG (STDMETHODCALLTYPE *Release)( 374 ICreateDevEnum* This); 375 376 /*** ICreateDevEnum methods ***/ 377 HRESULT (STDMETHODCALLTYPE *CreateClassEnumerator)( 378 ICreateDevEnum* This, 379 REFCLSID clsidDeviceClass, 380 IEnumMoniker **ppEnumMoniker, 381 DWORD dwFlags); 382 383 END_INTERFACE 384 } ICreateDevEnumVtbl; 385 interface ICreateDevEnum { 386 CONST_VTBL ICreateDevEnumVtbl* lpVtbl; 387 }; 388 389 #ifdef COBJMACROS 390 #ifndef WIDL_C_INLINE_WRAPPERS 391 /*** IUnknown methods ***/ 392 #define ICreateDevEnum_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 393 #define ICreateDevEnum_AddRef(This) (This)->lpVtbl->AddRef(This) 394 #define ICreateDevEnum_Release(This) (This)->lpVtbl->Release(This) 395 /*** ICreateDevEnum methods ***/ 396 #define ICreateDevEnum_CreateClassEnumerator(This,clsidDeviceClass,ppEnumMoniker,dwFlags) (This)->lpVtbl->CreateClassEnumerator(This,clsidDeviceClass,ppEnumMoniker,dwFlags) 397 #else 398 /*** IUnknown methods ***/ 399 static FORCEINLINE HRESULT ICreateDevEnum_QueryInterface(ICreateDevEnum* This,REFIID riid,void **ppvObject) { 400 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 401 } 402 static FORCEINLINE ULONG ICreateDevEnum_AddRef(ICreateDevEnum* This) { 403 return This->lpVtbl->AddRef(This); 404 } 405 static FORCEINLINE ULONG ICreateDevEnum_Release(ICreateDevEnum* This) { 406 return This->lpVtbl->Release(This); 407 } 408 /*** ICreateDevEnum methods ***/ 409 static FORCEINLINE HRESULT ICreateDevEnum_CreateClassEnumerator(ICreateDevEnum* This,REFCLSID clsidDeviceClass,IEnumMoniker **ppEnumMoniker,DWORD dwFlags) { 410 return This->lpVtbl->CreateClassEnumerator(This,clsidDeviceClass,ppEnumMoniker,dwFlags); 411 } 412 #endif 413 #endif 414 415 #endif 416 417 HRESULT STDMETHODCALLTYPE ICreateDevEnum_CreateClassEnumerator_Proxy( 418 ICreateDevEnum* This, 419 REFCLSID clsidDeviceClass, 420 IEnumMoniker **ppEnumMoniker, 421 DWORD dwFlags); 422 void __RPC_STUB ICreateDevEnum_CreateClassEnumerator_Stub( 423 IRpcStubBuffer* This, 424 IRpcChannelBuffer* pRpcChannelBuffer, 425 PRPC_MESSAGE pRpcMessage, 426 DWORD* pdwStubPhase); 427 428 #endif /* __ICreateDevEnum_INTERFACE_DEFINED__ */ 429 430 #endif 431 /** 432 * This file is part of the mingw-w64 runtime package. 433 * No warranty is given; refer to the file DISCLAIMER within this package. 434 */ 435 436 #include <winapifamily.h> 437 438 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 439 440 #define CHARS_IN_GUID 39 441 442 #ifdef WINE_NO_UNICODE_MACROS 443 #undef GetTimeFormat 444 #endif 445 446 typedef struct _AMMediaType { 447 GUID majortype; 448 GUID subtype; 449 WINBOOL bFixedSizeSamples; 450 WINBOOL bTemporalCompression; 451 ULONG lSampleSize; 452 GUID formattype; 453 IUnknown *pUnk; 454 ULONG cbFormat; 455 BYTE *pbFormat; 456 } AM_MEDIA_TYPE; 457 458 typedef enum _PinDirection { 459 PINDIR_INPUT = 0, 460 PINDIR_OUTPUT = 1 461 } PIN_DIRECTION; 462 463 #define MAX_PIN_NAME 128 464 #define MAX_FILTER_NAME 128 465 466 #ifndef REFERENCE_TIME_DEFINED 467 #define REFERENCE_TIME_DEFINED 468 typedef LONGLONG REFERENCE_TIME; 469 #endif 470 471 #ifndef REFTIME_DEFINED 472 #define REFTIME_DEFINED 473 typedef double REFTIME; 474 #endif 475 476 typedef DWORD_PTR HSEMAPHORE; 477 typedef DWORD_PTR HEVENT; 478 479 typedef struct _AllocatorProperties { 480 LONG cBuffers; 481 LONG cbBuffer; 482 LONG cbAlign; 483 LONG cbPrefix; 484 } ALLOCATOR_PROPERTIES; 485 486 #ifndef __IAMovieSetup_FWD_DEFINED__ 487 #define __IAMovieSetup_FWD_DEFINED__ 488 typedef interface IAMovieSetup IAMovieSetup; 489 #endif 490 491 #ifndef __IEnumFilters_FWD_DEFINED__ 492 #define __IEnumFilters_FWD_DEFINED__ 493 typedef interface IEnumFilters IEnumFilters; 494 #endif 495 496 #ifndef __IEnumMediaTypes_FWD_DEFINED__ 497 #define __IEnumMediaTypes_FWD_DEFINED__ 498 typedef interface IEnumMediaTypes IEnumMediaTypes; 499 #endif 500 501 #ifndef __IEnumPins_FWD_DEFINED__ 502 #define __IEnumPins_FWD_DEFINED__ 503 typedef interface IEnumPins IEnumPins; 504 #endif 505 506 #ifndef __IBaseFilter_FWD_DEFINED__ 507 #define __IBaseFilter_FWD_DEFINED__ 508 typedef interface IBaseFilter IBaseFilter; 509 #endif 510 511 #ifndef __IFilterGraph_FWD_DEFINED__ 512 #define __IFilterGraph_FWD_DEFINED__ 513 typedef interface IFilterGraph IFilterGraph; 514 #endif 515 516 #ifndef __IMediaFilter_FWD_DEFINED__ 517 #define __IMediaFilter_FWD_DEFINED__ 518 typedef interface IMediaFilter IMediaFilter; 519 #endif 520 521 #ifndef __IMediaSample_FWD_DEFINED__ 522 #define __IMediaSample_FWD_DEFINED__ 523 typedef interface IMediaSample IMediaSample; 524 #endif 525 526 #ifndef __IMemAllocator_FWD_DEFINED__ 527 #define __IMemAllocator_FWD_DEFINED__ 528 typedef interface IMemAllocator IMemAllocator; 529 #endif 530 531 #ifndef __IMemAllocatorCallbackTemp_FWD_DEFINED__ 532 #define __IMemAllocatorCallbackTemp_FWD_DEFINED__ 533 typedef interface IMemAllocatorCallbackTemp IMemAllocatorCallbackTemp; 534 #endif 535 536 #ifndef __IMemAllocatorNotifyCallbackTemp_FWD_DEFINED__ 537 #define __IMemAllocatorNotifyCallbackTemp_FWD_DEFINED__ 538 typedef interface IMemAllocatorNotifyCallbackTemp IMemAllocatorNotifyCallbackTemp; 539 #endif 540 541 #ifndef __IMemInputPin_FWD_DEFINED__ 542 #define __IMemInputPin_FWD_DEFINED__ 543 typedef interface IMemInputPin IMemInputPin; 544 #endif 545 546 #ifndef __IPin_FWD_DEFINED__ 547 #define __IPin_FWD_DEFINED__ 548 typedef interface IPin IPin; 549 #endif 550 551 #ifndef __IReferenceClock_FWD_DEFINED__ 552 #define __IReferenceClock_FWD_DEFINED__ 553 typedef interface IReferenceClock IReferenceClock; 554 #endif 555 556 557 /***************************************************************************** 558 * IPin interface 559 */ 560 #ifndef __IPin_INTERFACE_DEFINED__ 561 #define __IPin_INTERFACE_DEFINED__ 562 563 typedef struct _PinInfo { 564 IBaseFilter *pFilter; 565 PIN_DIRECTION dir; 566 WCHAR achName[128]; 567 } PIN_INFO; 568 569 DEFINE_GUID(IID_IPin, 0x56a86891, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 570 #if defined(__cplusplus) && !defined(CINTERFACE) 571 MIDL_INTERFACE("56a86891-0ad4-11ce-b03a-0020af0ba770") 572 IPin : public IUnknown 573 { 574 virtual HRESULT STDMETHODCALLTYPE Connect( 575 IPin *pReceivePin, 576 const AM_MEDIA_TYPE *pmt) = 0; 577 578 virtual HRESULT STDMETHODCALLTYPE ReceiveConnection( 579 IPin *pConnector, 580 const AM_MEDIA_TYPE *pmt) = 0; 581 582 virtual HRESULT STDMETHODCALLTYPE Disconnect( 583 ) = 0; 584 585 virtual HRESULT STDMETHODCALLTYPE ConnectedTo( 586 IPin **pPin) = 0; 587 588 virtual HRESULT STDMETHODCALLTYPE ConnectionMediaType( 589 AM_MEDIA_TYPE *pmt) = 0; 590 591 virtual HRESULT STDMETHODCALLTYPE QueryPinInfo( 592 PIN_INFO *pInfo) = 0; 593 594 virtual HRESULT STDMETHODCALLTYPE QueryDirection( 595 PIN_DIRECTION *pPinDir) = 0; 596 597 virtual HRESULT STDMETHODCALLTYPE QueryId( 598 LPWSTR *Id) = 0; 599 600 virtual HRESULT STDMETHODCALLTYPE QueryAccept( 601 const AM_MEDIA_TYPE *pmt) = 0; 602 603 virtual HRESULT STDMETHODCALLTYPE EnumMediaTypes( 604 IEnumMediaTypes **ppEnum) = 0; 605 606 virtual HRESULT STDMETHODCALLTYPE QueryInternalConnections( 607 IPin **apPin, 608 ULONG *nPin) = 0; 609 610 virtual HRESULT STDMETHODCALLTYPE EndOfStream( 611 ) = 0; 612 613 virtual HRESULT STDMETHODCALLTYPE BeginFlush( 614 ) = 0; 615 616 virtual HRESULT STDMETHODCALLTYPE EndFlush( 617 ) = 0; 618 619 virtual HRESULT STDMETHODCALLTYPE NewSegment( 620 REFERENCE_TIME tStart, 621 REFERENCE_TIME tStop, 622 double dRate) = 0; 623 624 }; 625 #ifdef __CRT_UUID_DECL 626 __CRT_UUID_DECL(IPin, 0x56a86891, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 627 #endif 628 #else 629 typedef struct IPinVtbl { 630 BEGIN_INTERFACE 631 632 /*** IUnknown methods ***/ 633 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 634 IPin* This, 635 REFIID riid, 636 void **ppvObject); 637 638 ULONG (STDMETHODCALLTYPE *AddRef)( 639 IPin* This); 640 641 ULONG (STDMETHODCALLTYPE *Release)( 642 IPin* This); 643 644 /*** IPin methods ***/ 645 HRESULT (STDMETHODCALLTYPE *Connect)( 646 IPin* This, 647 IPin *pReceivePin, 648 const AM_MEDIA_TYPE *pmt); 649 650 HRESULT (STDMETHODCALLTYPE *ReceiveConnection)( 651 IPin* This, 652 IPin *pConnector, 653 const AM_MEDIA_TYPE *pmt); 654 655 HRESULT (STDMETHODCALLTYPE *Disconnect)( 656 IPin* This); 657 658 HRESULT (STDMETHODCALLTYPE *ConnectedTo)( 659 IPin* This, 660 IPin **pPin); 661 662 HRESULT (STDMETHODCALLTYPE *ConnectionMediaType)( 663 IPin* This, 664 AM_MEDIA_TYPE *pmt); 665 666 HRESULT (STDMETHODCALLTYPE *QueryPinInfo)( 667 IPin* This, 668 PIN_INFO *pInfo); 669 670 HRESULT (STDMETHODCALLTYPE *QueryDirection)( 671 IPin* This, 672 PIN_DIRECTION *pPinDir); 673 674 HRESULT (STDMETHODCALLTYPE *QueryId)( 675 IPin* This, 676 LPWSTR *Id); 677 678 HRESULT (STDMETHODCALLTYPE *QueryAccept)( 679 IPin* This, 680 const AM_MEDIA_TYPE *pmt); 681 682 HRESULT (STDMETHODCALLTYPE *EnumMediaTypes)( 683 IPin* This, 684 IEnumMediaTypes **ppEnum); 685 686 HRESULT (STDMETHODCALLTYPE *QueryInternalConnections)( 687 IPin* This, 688 IPin **apPin, 689 ULONG *nPin); 690 691 HRESULT (STDMETHODCALLTYPE *EndOfStream)( 692 IPin* This); 693 694 HRESULT (STDMETHODCALLTYPE *BeginFlush)( 695 IPin* This); 696 697 HRESULT (STDMETHODCALLTYPE *EndFlush)( 698 IPin* This); 699 700 HRESULT (STDMETHODCALLTYPE *NewSegment)( 701 IPin* This, 702 REFERENCE_TIME tStart, 703 REFERENCE_TIME tStop, 704 double dRate); 705 706 END_INTERFACE 707 } IPinVtbl; 708 interface IPin { 709 CONST_VTBL IPinVtbl* lpVtbl; 710 }; 711 712 #ifdef COBJMACROS 713 #ifndef WIDL_C_INLINE_WRAPPERS 714 /*** IUnknown methods ***/ 715 #define IPin_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 716 #define IPin_AddRef(This) (This)->lpVtbl->AddRef(This) 717 #define IPin_Release(This) (This)->lpVtbl->Release(This) 718 /*** IPin methods ***/ 719 #define IPin_Connect(This,pReceivePin,pmt) (This)->lpVtbl->Connect(This,pReceivePin,pmt) 720 #define IPin_ReceiveConnection(This,pConnector,pmt) (This)->lpVtbl->ReceiveConnection(This,pConnector,pmt) 721 #define IPin_Disconnect(This) (This)->lpVtbl->Disconnect(This) 722 #define IPin_ConnectedTo(This,pPin) (This)->lpVtbl->ConnectedTo(This,pPin) 723 #define IPin_ConnectionMediaType(This,pmt) (This)->lpVtbl->ConnectionMediaType(This,pmt) 724 #define IPin_QueryPinInfo(This,pInfo) (This)->lpVtbl->QueryPinInfo(This,pInfo) 725 #define IPin_QueryDirection(This,pPinDir) (This)->lpVtbl->QueryDirection(This,pPinDir) 726 #define IPin_QueryId(This,Id) (This)->lpVtbl->QueryId(This,Id) 727 #define IPin_QueryAccept(This,pmt) (This)->lpVtbl->QueryAccept(This,pmt) 728 #define IPin_EnumMediaTypes(This,ppEnum) (This)->lpVtbl->EnumMediaTypes(This,ppEnum) 729 #define IPin_QueryInternalConnections(This,apPin,nPin) (This)->lpVtbl->QueryInternalConnections(This,apPin,nPin) 730 #define IPin_EndOfStream(This) (This)->lpVtbl->EndOfStream(This) 731 #define IPin_BeginFlush(This) (This)->lpVtbl->BeginFlush(This) 732 #define IPin_EndFlush(This) (This)->lpVtbl->EndFlush(This) 733 #define IPin_NewSegment(This,tStart,tStop,dRate) (This)->lpVtbl->NewSegment(This,tStart,tStop,dRate) 734 #else 735 /*** IUnknown methods ***/ 736 static FORCEINLINE HRESULT IPin_QueryInterface(IPin* This,REFIID riid,void **ppvObject) { 737 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 738 } 739 static FORCEINLINE ULONG IPin_AddRef(IPin* This) { 740 return This->lpVtbl->AddRef(This); 741 } 742 static FORCEINLINE ULONG IPin_Release(IPin* This) { 743 return This->lpVtbl->Release(This); 744 } 745 /*** IPin methods ***/ 746 static FORCEINLINE HRESULT IPin_Connect(IPin* This,IPin *pReceivePin,const AM_MEDIA_TYPE *pmt) { 747 return This->lpVtbl->Connect(This,pReceivePin,pmt); 748 } 749 static FORCEINLINE HRESULT IPin_ReceiveConnection(IPin* This,IPin *pConnector,const AM_MEDIA_TYPE *pmt) { 750 return This->lpVtbl->ReceiveConnection(This,pConnector,pmt); 751 } 752 static FORCEINLINE HRESULT IPin_Disconnect(IPin* This) { 753 return This->lpVtbl->Disconnect(This); 754 } 755 static FORCEINLINE HRESULT IPin_ConnectedTo(IPin* This,IPin **pPin) { 756 return This->lpVtbl->ConnectedTo(This,pPin); 757 } 758 static FORCEINLINE HRESULT IPin_ConnectionMediaType(IPin* This,AM_MEDIA_TYPE *pmt) { 759 return This->lpVtbl->ConnectionMediaType(This,pmt); 760 } 761 static FORCEINLINE HRESULT IPin_QueryPinInfo(IPin* This,PIN_INFO *pInfo) { 762 return This->lpVtbl->QueryPinInfo(This,pInfo); 763 } 764 static FORCEINLINE HRESULT IPin_QueryDirection(IPin* This,PIN_DIRECTION *pPinDir) { 765 return This->lpVtbl->QueryDirection(This,pPinDir); 766 } 767 static FORCEINLINE HRESULT IPin_QueryId(IPin* This,LPWSTR *Id) { 768 return This->lpVtbl->QueryId(This,Id); 769 } 770 static FORCEINLINE HRESULT IPin_QueryAccept(IPin* This,const AM_MEDIA_TYPE *pmt) { 771 return This->lpVtbl->QueryAccept(This,pmt); 772 } 773 static FORCEINLINE HRESULT IPin_EnumMediaTypes(IPin* This,IEnumMediaTypes **ppEnum) { 774 return This->lpVtbl->EnumMediaTypes(This,ppEnum); 775 } 776 static FORCEINLINE HRESULT IPin_QueryInternalConnections(IPin* This,IPin **apPin,ULONG *nPin) { 777 return This->lpVtbl->QueryInternalConnections(This,apPin,nPin); 778 } 779 static FORCEINLINE HRESULT IPin_EndOfStream(IPin* This) { 780 return This->lpVtbl->EndOfStream(This); 781 } 782 static FORCEINLINE HRESULT IPin_BeginFlush(IPin* This) { 783 return This->lpVtbl->BeginFlush(This); 784 } 785 static FORCEINLINE HRESULT IPin_EndFlush(IPin* This) { 786 return This->lpVtbl->EndFlush(This); 787 } 788 static FORCEINLINE HRESULT IPin_NewSegment(IPin* This,REFERENCE_TIME tStart,REFERENCE_TIME tStop,double dRate) { 789 return This->lpVtbl->NewSegment(This,tStart,tStop,dRate); 790 } 791 #endif 792 #endif 793 794 #endif 795 796 HRESULT STDMETHODCALLTYPE IPin_Connect_Proxy( 797 IPin* This, 798 IPin *pReceivePin, 799 const AM_MEDIA_TYPE *pmt); 800 void __RPC_STUB IPin_Connect_Stub( 801 IRpcStubBuffer* This, 802 IRpcChannelBuffer* pRpcChannelBuffer, 803 PRPC_MESSAGE pRpcMessage, 804 DWORD* pdwStubPhase); 805 HRESULT STDMETHODCALLTYPE IPin_ReceiveConnection_Proxy( 806 IPin* This, 807 IPin *pConnector, 808 const AM_MEDIA_TYPE *pmt); 809 void __RPC_STUB IPin_ReceiveConnection_Stub( 810 IRpcStubBuffer* This, 811 IRpcChannelBuffer* pRpcChannelBuffer, 812 PRPC_MESSAGE pRpcMessage, 813 DWORD* pdwStubPhase); 814 HRESULT STDMETHODCALLTYPE IPin_Disconnect_Proxy( 815 IPin* This); 816 void __RPC_STUB IPin_Disconnect_Stub( 817 IRpcStubBuffer* This, 818 IRpcChannelBuffer* pRpcChannelBuffer, 819 PRPC_MESSAGE pRpcMessage, 820 DWORD* pdwStubPhase); 821 HRESULT STDMETHODCALLTYPE IPin_ConnectedTo_Proxy( 822 IPin* This, 823 IPin **pPin); 824 void __RPC_STUB IPin_ConnectedTo_Stub( 825 IRpcStubBuffer* This, 826 IRpcChannelBuffer* pRpcChannelBuffer, 827 PRPC_MESSAGE pRpcMessage, 828 DWORD* pdwStubPhase); 829 HRESULT STDMETHODCALLTYPE IPin_ConnectionMediaType_Proxy( 830 IPin* This, 831 AM_MEDIA_TYPE *pmt); 832 void __RPC_STUB IPin_ConnectionMediaType_Stub( 833 IRpcStubBuffer* This, 834 IRpcChannelBuffer* pRpcChannelBuffer, 835 PRPC_MESSAGE pRpcMessage, 836 DWORD* pdwStubPhase); 837 HRESULT STDMETHODCALLTYPE IPin_QueryPinInfo_Proxy( 838 IPin* This, 839 PIN_INFO *pInfo); 840 void __RPC_STUB IPin_QueryPinInfo_Stub( 841 IRpcStubBuffer* This, 842 IRpcChannelBuffer* pRpcChannelBuffer, 843 PRPC_MESSAGE pRpcMessage, 844 DWORD* pdwStubPhase); 845 HRESULT STDMETHODCALLTYPE IPin_QueryDirection_Proxy( 846 IPin* This, 847 PIN_DIRECTION *pPinDir); 848 void __RPC_STUB IPin_QueryDirection_Stub( 849 IRpcStubBuffer* This, 850 IRpcChannelBuffer* pRpcChannelBuffer, 851 PRPC_MESSAGE pRpcMessage, 852 DWORD* pdwStubPhase); 853 HRESULT STDMETHODCALLTYPE IPin_QueryId_Proxy( 854 IPin* This, 855 LPWSTR *Id); 856 void __RPC_STUB IPin_QueryId_Stub( 857 IRpcStubBuffer* This, 858 IRpcChannelBuffer* pRpcChannelBuffer, 859 PRPC_MESSAGE pRpcMessage, 860 DWORD* pdwStubPhase); 861 HRESULT STDMETHODCALLTYPE IPin_QueryAccept_Proxy( 862 IPin* This, 863 const AM_MEDIA_TYPE *pmt); 864 void __RPC_STUB IPin_QueryAccept_Stub( 865 IRpcStubBuffer* This, 866 IRpcChannelBuffer* pRpcChannelBuffer, 867 PRPC_MESSAGE pRpcMessage, 868 DWORD* pdwStubPhase); 869 HRESULT STDMETHODCALLTYPE IPin_EnumMediaTypes_Proxy( 870 IPin* This, 871 IEnumMediaTypes **ppEnum); 872 void __RPC_STUB IPin_EnumMediaTypes_Stub( 873 IRpcStubBuffer* This, 874 IRpcChannelBuffer* pRpcChannelBuffer, 875 PRPC_MESSAGE pRpcMessage, 876 DWORD* pdwStubPhase); 877 HRESULT STDMETHODCALLTYPE IPin_QueryInternalConnections_Proxy( 878 IPin* This, 879 IPin **apPin, 880 ULONG *nPin); 881 void __RPC_STUB IPin_QueryInternalConnections_Stub( 882 IRpcStubBuffer* This, 883 IRpcChannelBuffer* pRpcChannelBuffer, 884 PRPC_MESSAGE pRpcMessage, 885 DWORD* pdwStubPhase); 886 HRESULT STDMETHODCALLTYPE IPin_EndOfStream_Proxy( 887 IPin* This); 888 void __RPC_STUB IPin_EndOfStream_Stub( 889 IRpcStubBuffer* This, 890 IRpcChannelBuffer* pRpcChannelBuffer, 891 PRPC_MESSAGE pRpcMessage, 892 DWORD* pdwStubPhase); 893 HRESULT STDMETHODCALLTYPE IPin_BeginFlush_Proxy( 894 IPin* This); 895 void __RPC_STUB IPin_BeginFlush_Stub( 896 IRpcStubBuffer* This, 897 IRpcChannelBuffer* pRpcChannelBuffer, 898 PRPC_MESSAGE pRpcMessage, 899 DWORD* pdwStubPhase); 900 HRESULT STDMETHODCALLTYPE IPin_EndFlush_Proxy( 901 IPin* This); 902 void __RPC_STUB IPin_EndFlush_Stub( 903 IRpcStubBuffer* This, 904 IRpcChannelBuffer* pRpcChannelBuffer, 905 PRPC_MESSAGE pRpcMessage, 906 DWORD* pdwStubPhase); 907 HRESULT STDMETHODCALLTYPE IPin_NewSegment_Proxy( 908 IPin* This, 909 REFERENCE_TIME tStart, 910 REFERENCE_TIME tStop, 911 double dRate); 912 void __RPC_STUB IPin_NewSegment_Stub( 913 IRpcStubBuffer* This, 914 IRpcChannelBuffer* pRpcChannelBuffer, 915 PRPC_MESSAGE pRpcMessage, 916 DWORD* pdwStubPhase); 917 918 #endif /* __IPin_INTERFACE_DEFINED__ */ 919 920 typedef IPin *PPIN; 921 922 /***************************************************************************** 923 * IEnumPins interface 924 */ 925 #ifndef __IEnumPins_INTERFACE_DEFINED__ 926 #define __IEnumPins_INTERFACE_DEFINED__ 927 928 DEFINE_GUID(IID_IEnumPins, 0x56a86892, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 929 #if defined(__cplusplus) && !defined(CINTERFACE) 930 MIDL_INTERFACE("56a86892-0ad4-11ce-b03a-0020af0ba770") 931 IEnumPins : public IUnknown 932 { 933 virtual HRESULT STDMETHODCALLTYPE Next( 934 ULONG cPins, 935 IPin **ppPins, 936 ULONG *pcFetched) = 0; 937 938 virtual HRESULT STDMETHODCALLTYPE Skip( 939 ULONG cPins) = 0; 940 941 virtual HRESULT STDMETHODCALLTYPE Reset( 942 ) = 0; 943 944 virtual HRESULT STDMETHODCALLTYPE Clone( 945 IEnumPins **ppEnum) = 0; 946 947 }; 948 #ifdef __CRT_UUID_DECL 949 __CRT_UUID_DECL(IEnumPins, 0x56a86892, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 950 #endif 951 #else 952 typedef struct IEnumPinsVtbl { 953 BEGIN_INTERFACE 954 955 /*** IUnknown methods ***/ 956 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 957 IEnumPins* This, 958 REFIID riid, 959 void **ppvObject); 960 961 ULONG (STDMETHODCALLTYPE *AddRef)( 962 IEnumPins* This); 963 964 ULONG (STDMETHODCALLTYPE *Release)( 965 IEnumPins* This); 966 967 /*** IEnumPins methods ***/ 968 HRESULT (STDMETHODCALLTYPE *Next)( 969 IEnumPins* This, 970 ULONG cPins, 971 IPin **ppPins, 972 ULONG *pcFetched); 973 974 HRESULT (STDMETHODCALLTYPE *Skip)( 975 IEnumPins* This, 976 ULONG cPins); 977 978 HRESULT (STDMETHODCALLTYPE *Reset)( 979 IEnumPins* This); 980 981 HRESULT (STDMETHODCALLTYPE *Clone)( 982 IEnumPins* This, 983 IEnumPins **ppEnum); 984 985 END_INTERFACE 986 } IEnumPinsVtbl; 987 interface IEnumPins { 988 CONST_VTBL IEnumPinsVtbl* lpVtbl; 989 }; 990 991 #ifdef COBJMACROS 992 #ifndef WIDL_C_INLINE_WRAPPERS 993 /*** IUnknown methods ***/ 994 #define IEnumPins_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 995 #define IEnumPins_AddRef(This) (This)->lpVtbl->AddRef(This) 996 #define IEnumPins_Release(This) (This)->lpVtbl->Release(This) 997 /*** IEnumPins methods ***/ 998 #define IEnumPins_Next(This,cPins,ppPins,pcFetched) (This)->lpVtbl->Next(This,cPins,ppPins,pcFetched) 999 #define IEnumPins_Skip(This,cPins) (This)->lpVtbl->Skip(This,cPins) 1000 #define IEnumPins_Reset(This) (This)->lpVtbl->Reset(This) 1001 #define IEnumPins_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum) 1002 #else 1003 /*** IUnknown methods ***/ 1004 static FORCEINLINE HRESULT IEnumPins_QueryInterface(IEnumPins* This,REFIID riid,void **ppvObject) { 1005 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1006 } 1007 static FORCEINLINE ULONG IEnumPins_AddRef(IEnumPins* This) { 1008 return This->lpVtbl->AddRef(This); 1009 } 1010 static FORCEINLINE ULONG IEnumPins_Release(IEnumPins* This) { 1011 return This->lpVtbl->Release(This); 1012 } 1013 /*** IEnumPins methods ***/ 1014 static FORCEINLINE HRESULT IEnumPins_Next(IEnumPins* This,ULONG cPins,IPin **ppPins,ULONG *pcFetched) { 1015 return This->lpVtbl->Next(This,cPins,ppPins,pcFetched); 1016 } 1017 static FORCEINLINE HRESULT IEnumPins_Skip(IEnumPins* This,ULONG cPins) { 1018 return This->lpVtbl->Skip(This,cPins); 1019 } 1020 static FORCEINLINE HRESULT IEnumPins_Reset(IEnumPins* This) { 1021 return This->lpVtbl->Reset(This); 1022 } 1023 static FORCEINLINE HRESULT IEnumPins_Clone(IEnumPins* This,IEnumPins **ppEnum) { 1024 return This->lpVtbl->Clone(This,ppEnum); 1025 } 1026 #endif 1027 #endif 1028 1029 #endif 1030 1031 HRESULT STDMETHODCALLTYPE IEnumPins_Next_Proxy( 1032 IEnumPins* This, 1033 ULONG cPins, 1034 IPin **ppPins, 1035 ULONG *pcFetched); 1036 void __RPC_STUB IEnumPins_Next_Stub( 1037 IRpcStubBuffer* This, 1038 IRpcChannelBuffer* pRpcChannelBuffer, 1039 PRPC_MESSAGE pRpcMessage, 1040 DWORD* pdwStubPhase); 1041 HRESULT STDMETHODCALLTYPE IEnumPins_Skip_Proxy( 1042 IEnumPins* This, 1043 ULONG cPins); 1044 void __RPC_STUB IEnumPins_Skip_Stub( 1045 IRpcStubBuffer* This, 1046 IRpcChannelBuffer* pRpcChannelBuffer, 1047 PRPC_MESSAGE pRpcMessage, 1048 DWORD* pdwStubPhase); 1049 HRESULT STDMETHODCALLTYPE IEnumPins_Reset_Proxy( 1050 IEnumPins* This); 1051 void __RPC_STUB IEnumPins_Reset_Stub( 1052 IRpcStubBuffer* This, 1053 IRpcChannelBuffer* pRpcChannelBuffer, 1054 PRPC_MESSAGE pRpcMessage, 1055 DWORD* pdwStubPhase); 1056 HRESULT STDMETHODCALLTYPE IEnumPins_Clone_Proxy( 1057 IEnumPins* This, 1058 IEnumPins **ppEnum); 1059 void __RPC_STUB IEnumPins_Clone_Stub( 1060 IRpcStubBuffer* This, 1061 IRpcChannelBuffer* pRpcChannelBuffer, 1062 PRPC_MESSAGE pRpcMessage, 1063 DWORD* pdwStubPhase); 1064 1065 #endif /* __IEnumPins_INTERFACE_DEFINED__ */ 1066 1067 typedef IEnumPins *PENUMPINS; 1068 1069 /***************************************************************************** 1070 * IEnumMediaTypes interface 1071 */ 1072 #ifndef __IEnumMediaTypes_INTERFACE_DEFINED__ 1073 #define __IEnumMediaTypes_INTERFACE_DEFINED__ 1074 1075 DEFINE_GUID(IID_IEnumMediaTypes, 0x89c31040, 0x846b, 0x11ce, 0x97,0xd3, 0x00,0xaa,0x00,0x55,0x59,0x5a); 1076 #if defined(__cplusplus) && !defined(CINTERFACE) 1077 MIDL_INTERFACE("89c31040-846b-11ce-97d3-00aa0055595a") 1078 IEnumMediaTypes : public IUnknown 1079 { 1080 virtual HRESULT STDMETHODCALLTYPE Next( 1081 ULONG cMediaTypes, 1082 AM_MEDIA_TYPE **ppMediaTypes, 1083 ULONG *pcFetched) = 0; 1084 1085 virtual HRESULT STDMETHODCALLTYPE Skip( 1086 ULONG cMediaTypes) = 0; 1087 1088 virtual HRESULT STDMETHODCALLTYPE Reset( 1089 ) = 0; 1090 1091 virtual HRESULT STDMETHODCALLTYPE Clone( 1092 IEnumMediaTypes **ppEnum) = 0; 1093 1094 }; 1095 #ifdef __CRT_UUID_DECL 1096 __CRT_UUID_DECL(IEnumMediaTypes, 0x89c31040, 0x846b, 0x11ce, 0x97,0xd3, 0x00,0xaa,0x00,0x55,0x59,0x5a) 1097 #endif 1098 #else 1099 typedef struct IEnumMediaTypesVtbl { 1100 BEGIN_INTERFACE 1101 1102 /*** IUnknown methods ***/ 1103 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1104 IEnumMediaTypes* This, 1105 REFIID riid, 1106 void **ppvObject); 1107 1108 ULONG (STDMETHODCALLTYPE *AddRef)( 1109 IEnumMediaTypes* This); 1110 1111 ULONG (STDMETHODCALLTYPE *Release)( 1112 IEnumMediaTypes* This); 1113 1114 /*** IEnumMediaTypes methods ***/ 1115 HRESULT (STDMETHODCALLTYPE *Next)( 1116 IEnumMediaTypes* This, 1117 ULONG cMediaTypes, 1118 AM_MEDIA_TYPE **ppMediaTypes, 1119 ULONG *pcFetched); 1120 1121 HRESULT (STDMETHODCALLTYPE *Skip)( 1122 IEnumMediaTypes* This, 1123 ULONG cMediaTypes); 1124 1125 HRESULT (STDMETHODCALLTYPE *Reset)( 1126 IEnumMediaTypes* This); 1127 1128 HRESULT (STDMETHODCALLTYPE *Clone)( 1129 IEnumMediaTypes* This, 1130 IEnumMediaTypes **ppEnum); 1131 1132 END_INTERFACE 1133 } IEnumMediaTypesVtbl; 1134 interface IEnumMediaTypes { 1135 CONST_VTBL IEnumMediaTypesVtbl* lpVtbl; 1136 }; 1137 1138 #ifdef COBJMACROS 1139 #ifndef WIDL_C_INLINE_WRAPPERS 1140 /*** IUnknown methods ***/ 1141 #define IEnumMediaTypes_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1142 #define IEnumMediaTypes_AddRef(This) (This)->lpVtbl->AddRef(This) 1143 #define IEnumMediaTypes_Release(This) (This)->lpVtbl->Release(This) 1144 /*** IEnumMediaTypes methods ***/ 1145 #define IEnumMediaTypes_Next(This,cMediaTypes,ppMediaTypes,pcFetched) (This)->lpVtbl->Next(This,cMediaTypes,ppMediaTypes,pcFetched) 1146 #define IEnumMediaTypes_Skip(This,cMediaTypes) (This)->lpVtbl->Skip(This,cMediaTypes) 1147 #define IEnumMediaTypes_Reset(This) (This)->lpVtbl->Reset(This) 1148 #define IEnumMediaTypes_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum) 1149 #else 1150 /*** IUnknown methods ***/ 1151 static FORCEINLINE HRESULT IEnumMediaTypes_QueryInterface(IEnumMediaTypes* This,REFIID riid,void **ppvObject) { 1152 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1153 } 1154 static FORCEINLINE ULONG IEnumMediaTypes_AddRef(IEnumMediaTypes* This) { 1155 return This->lpVtbl->AddRef(This); 1156 } 1157 static FORCEINLINE ULONG IEnumMediaTypes_Release(IEnumMediaTypes* This) { 1158 return This->lpVtbl->Release(This); 1159 } 1160 /*** IEnumMediaTypes methods ***/ 1161 static FORCEINLINE HRESULT IEnumMediaTypes_Next(IEnumMediaTypes* This,ULONG cMediaTypes,AM_MEDIA_TYPE **ppMediaTypes,ULONG *pcFetched) { 1162 return This->lpVtbl->Next(This,cMediaTypes,ppMediaTypes,pcFetched); 1163 } 1164 static FORCEINLINE HRESULT IEnumMediaTypes_Skip(IEnumMediaTypes* This,ULONG cMediaTypes) { 1165 return This->lpVtbl->Skip(This,cMediaTypes); 1166 } 1167 static FORCEINLINE HRESULT IEnumMediaTypes_Reset(IEnumMediaTypes* This) { 1168 return This->lpVtbl->Reset(This); 1169 } 1170 static FORCEINLINE HRESULT IEnumMediaTypes_Clone(IEnumMediaTypes* This,IEnumMediaTypes **ppEnum) { 1171 return This->lpVtbl->Clone(This,ppEnum); 1172 } 1173 #endif 1174 #endif 1175 1176 #endif 1177 1178 HRESULT STDMETHODCALLTYPE IEnumMediaTypes_Next_Proxy( 1179 IEnumMediaTypes* This, 1180 ULONG cMediaTypes, 1181 AM_MEDIA_TYPE **ppMediaTypes, 1182 ULONG *pcFetched); 1183 void __RPC_STUB IEnumMediaTypes_Next_Stub( 1184 IRpcStubBuffer* This, 1185 IRpcChannelBuffer* pRpcChannelBuffer, 1186 PRPC_MESSAGE pRpcMessage, 1187 DWORD* pdwStubPhase); 1188 HRESULT STDMETHODCALLTYPE IEnumMediaTypes_Skip_Proxy( 1189 IEnumMediaTypes* This, 1190 ULONG cMediaTypes); 1191 void __RPC_STUB IEnumMediaTypes_Skip_Stub( 1192 IRpcStubBuffer* This, 1193 IRpcChannelBuffer* pRpcChannelBuffer, 1194 PRPC_MESSAGE pRpcMessage, 1195 DWORD* pdwStubPhase); 1196 HRESULT STDMETHODCALLTYPE IEnumMediaTypes_Reset_Proxy( 1197 IEnumMediaTypes* This); 1198 void __RPC_STUB IEnumMediaTypes_Reset_Stub( 1199 IRpcStubBuffer* This, 1200 IRpcChannelBuffer* pRpcChannelBuffer, 1201 PRPC_MESSAGE pRpcMessage, 1202 DWORD* pdwStubPhase); 1203 HRESULT STDMETHODCALLTYPE IEnumMediaTypes_Clone_Proxy( 1204 IEnumMediaTypes* This, 1205 IEnumMediaTypes **ppEnum); 1206 void __RPC_STUB IEnumMediaTypes_Clone_Stub( 1207 IRpcStubBuffer* This, 1208 IRpcChannelBuffer* pRpcChannelBuffer, 1209 PRPC_MESSAGE pRpcMessage, 1210 DWORD* pdwStubPhase); 1211 1212 #endif /* __IEnumMediaTypes_INTERFACE_DEFINED__ */ 1213 1214 typedef IEnumMediaTypes *PENUMMEDIATYPES; 1215 1216 /***************************************************************************** 1217 * IFilterGraph interface 1218 */ 1219 #ifndef __IFilterGraph_INTERFACE_DEFINED__ 1220 #define __IFilterGraph_INTERFACE_DEFINED__ 1221 1222 DEFINE_GUID(IID_IFilterGraph, 0x56a8689f, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 1223 #if defined(__cplusplus) && !defined(CINTERFACE) 1224 MIDL_INTERFACE("56a8689f-0ad4-11ce-b03a-0020af0ba770") 1225 IFilterGraph : public IUnknown 1226 { 1227 virtual HRESULT STDMETHODCALLTYPE AddFilter( 1228 IBaseFilter *pFilter, 1229 LPCWSTR pName) = 0; 1230 1231 virtual HRESULT STDMETHODCALLTYPE RemoveFilter( 1232 IBaseFilter *pFilter) = 0; 1233 1234 virtual HRESULT STDMETHODCALLTYPE EnumFilters( 1235 IEnumFilters **ppEnum) = 0; 1236 1237 virtual HRESULT STDMETHODCALLTYPE FindFilterByName( 1238 LPCWSTR pName, 1239 IBaseFilter **ppFilter) = 0; 1240 1241 virtual HRESULT STDMETHODCALLTYPE ConnectDirect( 1242 IPin *ppinOut, 1243 IPin *ppinIn, 1244 const AM_MEDIA_TYPE *pmt) = 0; 1245 1246 virtual HRESULT STDMETHODCALLTYPE Reconnect( 1247 IPin *ppin) = 0; 1248 1249 virtual HRESULT STDMETHODCALLTYPE Disconnect( 1250 IPin *ppin) = 0; 1251 1252 virtual HRESULT STDMETHODCALLTYPE SetDefaultSyncSource( 1253 ) = 0; 1254 1255 }; 1256 #ifdef __CRT_UUID_DECL 1257 __CRT_UUID_DECL(IFilterGraph, 0x56a8689f, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 1258 #endif 1259 #else 1260 typedef struct IFilterGraphVtbl { 1261 BEGIN_INTERFACE 1262 1263 /*** IUnknown methods ***/ 1264 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1265 IFilterGraph* This, 1266 REFIID riid, 1267 void **ppvObject); 1268 1269 ULONG (STDMETHODCALLTYPE *AddRef)( 1270 IFilterGraph* This); 1271 1272 ULONG (STDMETHODCALLTYPE *Release)( 1273 IFilterGraph* This); 1274 1275 /*** IFilterGraph methods ***/ 1276 HRESULT (STDMETHODCALLTYPE *AddFilter)( 1277 IFilterGraph* This, 1278 IBaseFilter *pFilter, 1279 LPCWSTR pName); 1280 1281 HRESULT (STDMETHODCALLTYPE *RemoveFilter)( 1282 IFilterGraph* This, 1283 IBaseFilter *pFilter); 1284 1285 HRESULT (STDMETHODCALLTYPE *EnumFilters)( 1286 IFilterGraph* This, 1287 IEnumFilters **ppEnum); 1288 1289 HRESULT (STDMETHODCALLTYPE *FindFilterByName)( 1290 IFilterGraph* This, 1291 LPCWSTR pName, 1292 IBaseFilter **ppFilter); 1293 1294 HRESULT (STDMETHODCALLTYPE *ConnectDirect)( 1295 IFilterGraph* This, 1296 IPin *ppinOut, 1297 IPin *ppinIn, 1298 const AM_MEDIA_TYPE *pmt); 1299 1300 HRESULT (STDMETHODCALLTYPE *Reconnect)( 1301 IFilterGraph* This, 1302 IPin *ppin); 1303 1304 HRESULT (STDMETHODCALLTYPE *Disconnect)( 1305 IFilterGraph* This, 1306 IPin *ppin); 1307 1308 HRESULT (STDMETHODCALLTYPE *SetDefaultSyncSource)( 1309 IFilterGraph* This); 1310 1311 END_INTERFACE 1312 } IFilterGraphVtbl; 1313 interface IFilterGraph { 1314 CONST_VTBL IFilterGraphVtbl* lpVtbl; 1315 }; 1316 1317 #ifdef COBJMACROS 1318 #ifndef WIDL_C_INLINE_WRAPPERS 1319 /*** IUnknown methods ***/ 1320 #define IFilterGraph_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1321 #define IFilterGraph_AddRef(This) (This)->lpVtbl->AddRef(This) 1322 #define IFilterGraph_Release(This) (This)->lpVtbl->Release(This) 1323 /*** IFilterGraph methods ***/ 1324 #define IFilterGraph_AddFilter(This,pFilter,pName) (This)->lpVtbl->AddFilter(This,pFilter,pName) 1325 #define IFilterGraph_RemoveFilter(This,pFilter) (This)->lpVtbl->RemoveFilter(This,pFilter) 1326 #define IFilterGraph_EnumFilters(This,ppEnum) (This)->lpVtbl->EnumFilters(This,ppEnum) 1327 #define IFilterGraph_FindFilterByName(This,pName,ppFilter) (This)->lpVtbl->FindFilterByName(This,pName,ppFilter) 1328 #define IFilterGraph_ConnectDirect(This,ppinOut,ppinIn,pmt) (This)->lpVtbl->ConnectDirect(This,ppinOut,ppinIn,pmt) 1329 #define IFilterGraph_Reconnect(This,ppin) (This)->lpVtbl->Reconnect(This,ppin) 1330 #define IFilterGraph_Disconnect(This,ppin) (This)->lpVtbl->Disconnect(This,ppin) 1331 #define IFilterGraph_SetDefaultSyncSource(This) (This)->lpVtbl->SetDefaultSyncSource(This) 1332 #else 1333 /*** IUnknown methods ***/ 1334 static FORCEINLINE HRESULT IFilterGraph_QueryInterface(IFilterGraph* This,REFIID riid,void **ppvObject) { 1335 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1336 } 1337 static FORCEINLINE ULONG IFilterGraph_AddRef(IFilterGraph* This) { 1338 return This->lpVtbl->AddRef(This); 1339 } 1340 static FORCEINLINE ULONG IFilterGraph_Release(IFilterGraph* This) { 1341 return This->lpVtbl->Release(This); 1342 } 1343 /*** IFilterGraph methods ***/ 1344 static FORCEINLINE HRESULT IFilterGraph_AddFilter(IFilterGraph* This,IBaseFilter *pFilter,LPCWSTR pName) { 1345 return This->lpVtbl->AddFilter(This,pFilter,pName); 1346 } 1347 static FORCEINLINE HRESULT IFilterGraph_RemoveFilter(IFilterGraph* This,IBaseFilter *pFilter) { 1348 return This->lpVtbl->RemoveFilter(This,pFilter); 1349 } 1350 static FORCEINLINE HRESULT IFilterGraph_EnumFilters(IFilterGraph* This,IEnumFilters **ppEnum) { 1351 return This->lpVtbl->EnumFilters(This,ppEnum); 1352 } 1353 static FORCEINLINE HRESULT IFilterGraph_FindFilterByName(IFilterGraph* This,LPCWSTR pName,IBaseFilter **ppFilter) { 1354 return This->lpVtbl->FindFilterByName(This,pName,ppFilter); 1355 } 1356 static FORCEINLINE HRESULT IFilterGraph_ConnectDirect(IFilterGraph* This,IPin *ppinOut,IPin *ppinIn,const AM_MEDIA_TYPE *pmt) { 1357 return This->lpVtbl->ConnectDirect(This,ppinOut,ppinIn,pmt); 1358 } 1359 static FORCEINLINE HRESULT IFilterGraph_Reconnect(IFilterGraph* This,IPin *ppin) { 1360 return This->lpVtbl->Reconnect(This,ppin); 1361 } 1362 static FORCEINLINE HRESULT IFilterGraph_Disconnect(IFilterGraph* This,IPin *ppin) { 1363 return This->lpVtbl->Disconnect(This,ppin); 1364 } 1365 static FORCEINLINE HRESULT IFilterGraph_SetDefaultSyncSource(IFilterGraph* This) { 1366 return This->lpVtbl->SetDefaultSyncSource(This); 1367 } 1368 #endif 1369 #endif 1370 1371 #endif 1372 1373 HRESULT STDMETHODCALLTYPE IFilterGraph_AddFilter_Proxy( 1374 IFilterGraph* This, 1375 IBaseFilter *pFilter, 1376 LPCWSTR pName); 1377 void __RPC_STUB IFilterGraph_AddFilter_Stub( 1378 IRpcStubBuffer* This, 1379 IRpcChannelBuffer* pRpcChannelBuffer, 1380 PRPC_MESSAGE pRpcMessage, 1381 DWORD* pdwStubPhase); 1382 HRESULT STDMETHODCALLTYPE IFilterGraph_RemoveFilter_Proxy( 1383 IFilterGraph* This, 1384 IBaseFilter *pFilter); 1385 void __RPC_STUB IFilterGraph_RemoveFilter_Stub( 1386 IRpcStubBuffer* This, 1387 IRpcChannelBuffer* pRpcChannelBuffer, 1388 PRPC_MESSAGE pRpcMessage, 1389 DWORD* pdwStubPhase); 1390 HRESULT STDMETHODCALLTYPE IFilterGraph_EnumFilters_Proxy( 1391 IFilterGraph* This, 1392 IEnumFilters **ppEnum); 1393 void __RPC_STUB IFilterGraph_EnumFilters_Stub( 1394 IRpcStubBuffer* This, 1395 IRpcChannelBuffer* pRpcChannelBuffer, 1396 PRPC_MESSAGE pRpcMessage, 1397 DWORD* pdwStubPhase); 1398 HRESULT STDMETHODCALLTYPE IFilterGraph_FindFilterByName_Proxy( 1399 IFilterGraph* This, 1400 LPCWSTR pName, 1401 IBaseFilter **ppFilter); 1402 void __RPC_STUB IFilterGraph_FindFilterByName_Stub( 1403 IRpcStubBuffer* This, 1404 IRpcChannelBuffer* pRpcChannelBuffer, 1405 PRPC_MESSAGE pRpcMessage, 1406 DWORD* pdwStubPhase); 1407 HRESULT STDMETHODCALLTYPE IFilterGraph_ConnectDirect_Proxy( 1408 IFilterGraph* This, 1409 IPin *ppinOut, 1410 IPin *ppinIn, 1411 const AM_MEDIA_TYPE *pmt); 1412 void __RPC_STUB IFilterGraph_ConnectDirect_Stub( 1413 IRpcStubBuffer* This, 1414 IRpcChannelBuffer* pRpcChannelBuffer, 1415 PRPC_MESSAGE pRpcMessage, 1416 DWORD* pdwStubPhase); 1417 HRESULT STDMETHODCALLTYPE IFilterGraph_Reconnect_Proxy( 1418 IFilterGraph* This, 1419 IPin *ppin); 1420 void __RPC_STUB IFilterGraph_Reconnect_Stub( 1421 IRpcStubBuffer* This, 1422 IRpcChannelBuffer* pRpcChannelBuffer, 1423 PRPC_MESSAGE pRpcMessage, 1424 DWORD* pdwStubPhase); 1425 HRESULT STDMETHODCALLTYPE IFilterGraph_Disconnect_Proxy( 1426 IFilterGraph* This, 1427 IPin *ppin); 1428 void __RPC_STUB IFilterGraph_Disconnect_Stub( 1429 IRpcStubBuffer* This, 1430 IRpcChannelBuffer* pRpcChannelBuffer, 1431 PRPC_MESSAGE pRpcMessage, 1432 DWORD* pdwStubPhase); 1433 HRESULT STDMETHODCALLTYPE IFilterGraph_SetDefaultSyncSource_Proxy( 1434 IFilterGraph* This); 1435 void __RPC_STUB IFilterGraph_SetDefaultSyncSource_Stub( 1436 IRpcStubBuffer* This, 1437 IRpcChannelBuffer* pRpcChannelBuffer, 1438 PRPC_MESSAGE pRpcMessage, 1439 DWORD* pdwStubPhase); 1440 1441 #endif /* __IFilterGraph_INTERFACE_DEFINED__ */ 1442 1443 typedef IFilterGraph *PFILTERGRAPH; 1444 1445 /***************************************************************************** 1446 * IEnumFilters interface 1447 */ 1448 #ifndef __IEnumFilters_INTERFACE_DEFINED__ 1449 #define __IEnumFilters_INTERFACE_DEFINED__ 1450 1451 DEFINE_GUID(IID_IEnumFilters, 0x56a86893, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 1452 #if defined(__cplusplus) && !defined(CINTERFACE) 1453 MIDL_INTERFACE("56a86893-0ad4-11ce-b03a-0020af0ba770") 1454 IEnumFilters : public IUnknown 1455 { 1456 virtual HRESULT STDMETHODCALLTYPE Next( 1457 ULONG cFilters, 1458 IBaseFilter **ppFilter, 1459 ULONG *pcFetched) = 0; 1460 1461 virtual HRESULT STDMETHODCALLTYPE Skip( 1462 ULONG cFilters) = 0; 1463 1464 virtual HRESULT STDMETHODCALLTYPE Reset( 1465 ) = 0; 1466 1467 virtual HRESULT STDMETHODCALLTYPE Clone( 1468 IEnumFilters **ppEnum) = 0; 1469 1470 }; 1471 #ifdef __CRT_UUID_DECL 1472 __CRT_UUID_DECL(IEnumFilters, 0x56a86893, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 1473 #endif 1474 #else 1475 typedef struct IEnumFiltersVtbl { 1476 BEGIN_INTERFACE 1477 1478 /*** IUnknown methods ***/ 1479 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1480 IEnumFilters* This, 1481 REFIID riid, 1482 void **ppvObject); 1483 1484 ULONG (STDMETHODCALLTYPE *AddRef)( 1485 IEnumFilters* This); 1486 1487 ULONG (STDMETHODCALLTYPE *Release)( 1488 IEnumFilters* This); 1489 1490 /*** IEnumFilters methods ***/ 1491 HRESULT (STDMETHODCALLTYPE *Next)( 1492 IEnumFilters* This, 1493 ULONG cFilters, 1494 IBaseFilter **ppFilter, 1495 ULONG *pcFetched); 1496 1497 HRESULT (STDMETHODCALLTYPE *Skip)( 1498 IEnumFilters* This, 1499 ULONG cFilters); 1500 1501 HRESULT (STDMETHODCALLTYPE *Reset)( 1502 IEnumFilters* This); 1503 1504 HRESULT (STDMETHODCALLTYPE *Clone)( 1505 IEnumFilters* This, 1506 IEnumFilters **ppEnum); 1507 1508 END_INTERFACE 1509 } IEnumFiltersVtbl; 1510 interface IEnumFilters { 1511 CONST_VTBL IEnumFiltersVtbl* lpVtbl; 1512 }; 1513 1514 #ifdef COBJMACROS 1515 #ifndef WIDL_C_INLINE_WRAPPERS 1516 /*** IUnknown methods ***/ 1517 #define IEnumFilters_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1518 #define IEnumFilters_AddRef(This) (This)->lpVtbl->AddRef(This) 1519 #define IEnumFilters_Release(This) (This)->lpVtbl->Release(This) 1520 /*** IEnumFilters methods ***/ 1521 #define IEnumFilters_Next(This,cFilters,ppFilter,pcFetched) (This)->lpVtbl->Next(This,cFilters,ppFilter,pcFetched) 1522 #define IEnumFilters_Skip(This,cFilters) (This)->lpVtbl->Skip(This,cFilters) 1523 #define IEnumFilters_Reset(This) (This)->lpVtbl->Reset(This) 1524 #define IEnumFilters_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum) 1525 #else 1526 /*** IUnknown methods ***/ 1527 static FORCEINLINE HRESULT IEnumFilters_QueryInterface(IEnumFilters* This,REFIID riid,void **ppvObject) { 1528 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1529 } 1530 static FORCEINLINE ULONG IEnumFilters_AddRef(IEnumFilters* This) { 1531 return This->lpVtbl->AddRef(This); 1532 } 1533 static FORCEINLINE ULONG IEnumFilters_Release(IEnumFilters* This) { 1534 return This->lpVtbl->Release(This); 1535 } 1536 /*** IEnumFilters methods ***/ 1537 static FORCEINLINE HRESULT IEnumFilters_Next(IEnumFilters* This,ULONG cFilters,IBaseFilter **ppFilter,ULONG *pcFetched) { 1538 return This->lpVtbl->Next(This,cFilters,ppFilter,pcFetched); 1539 } 1540 static FORCEINLINE HRESULT IEnumFilters_Skip(IEnumFilters* This,ULONG cFilters) { 1541 return This->lpVtbl->Skip(This,cFilters); 1542 } 1543 static FORCEINLINE HRESULT IEnumFilters_Reset(IEnumFilters* This) { 1544 return This->lpVtbl->Reset(This); 1545 } 1546 static FORCEINLINE HRESULT IEnumFilters_Clone(IEnumFilters* This,IEnumFilters **ppEnum) { 1547 return This->lpVtbl->Clone(This,ppEnum); 1548 } 1549 #endif 1550 #endif 1551 1552 #endif 1553 1554 HRESULT STDMETHODCALLTYPE IEnumFilters_Next_Proxy( 1555 IEnumFilters* This, 1556 ULONG cFilters, 1557 IBaseFilter **ppFilter, 1558 ULONG *pcFetched); 1559 void __RPC_STUB IEnumFilters_Next_Stub( 1560 IRpcStubBuffer* This, 1561 IRpcChannelBuffer* pRpcChannelBuffer, 1562 PRPC_MESSAGE pRpcMessage, 1563 DWORD* pdwStubPhase); 1564 HRESULT STDMETHODCALLTYPE IEnumFilters_Skip_Proxy( 1565 IEnumFilters* This, 1566 ULONG cFilters); 1567 void __RPC_STUB IEnumFilters_Skip_Stub( 1568 IRpcStubBuffer* This, 1569 IRpcChannelBuffer* pRpcChannelBuffer, 1570 PRPC_MESSAGE pRpcMessage, 1571 DWORD* pdwStubPhase); 1572 HRESULT STDMETHODCALLTYPE IEnumFilters_Reset_Proxy( 1573 IEnumFilters* This); 1574 void __RPC_STUB IEnumFilters_Reset_Stub( 1575 IRpcStubBuffer* This, 1576 IRpcChannelBuffer* pRpcChannelBuffer, 1577 PRPC_MESSAGE pRpcMessage, 1578 DWORD* pdwStubPhase); 1579 HRESULT STDMETHODCALLTYPE IEnumFilters_Clone_Proxy( 1580 IEnumFilters* This, 1581 IEnumFilters **ppEnum); 1582 void __RPC_STUB IEnumFilters_Clone_Stub( 1583 IRpcStubBuffer* This, 1584 IRpcChannelBuffer* pRpcChannelBuffer, 1585 PRPC_MESSAGE pRpcMessage, 1586 DWORD* pdwStubPhase); 1587 1588 #endif /* __IEnumFilters_INTERFACE_DEFINED__ */ 1589 1590 typedef IEnumFilters *PENUMFILTERS; 1591 1592 /***************************************************************************** 1593 * IMediaFilter interface 1594 */ 1595 #ifndef __IMediaFilter_INTERFACE_DEFINED__ 1596 #define __IMediaFilter_INTERFACE_DEFINED__ 1597 1598 typedef enum _FilterState { 1599 State_Stopped = 0, 1600 State_Paused = 1, 1601 State_Running = 2 1602 } FILTER_STATE; 1603 1604 DEFINE_GUID(IID_IMediaFilter, 0x56a86899, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 1605 #if defined(__cplusplus) && !defined(CINTERFACE) 1606 MIDL_INTERFACE("56a86899-0ad4-11ce-b03a-0020af0ba770") 1607 IMediaFilter : public IPersist 1608 { 1609 virtual HRESULT STDMETHODCALLTYPE Stop( 1610 ) = 0; 1611 1612 virtual HRESULT STDMETHODCALLTYPE Pause( 1613 ) = 0; 1614 1615 virtual HRESULT STDMETHODCALLTYPE Run( 1616 REFERENCE_TIME tStart) = 0; 1617 1618 virtual HRESULT STDMETHODCALLTYPE GetState( 1619 DWORD dwMilliSecsTimeout, 1620 FILTER_STATE *State) = 0; 1621 1622 virtual HRESULT STDMETHODCALLTYPE SetSyncSource( 1623 IReferenceClock *pClock) = 0; 1624 1625 virtual HRESULT STDMETHODCALLTYPE GetSyncSource( 1626 IReferenceClock **pClock) = 0; 1627 1628 }; 1629 #ifdef __CRT_UUID_DECL 1630 __CRT_UUID_DECL(IMediaFilter, 0x56a86899, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 1631 #endif 1632 #else 1633 typedef struct IMediaFilterVtbl { 1634 BEGIN_INTERFACE 1635 1636 /*** IUnknown methods ***/ 1637 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1638 IMediaFilter* This, 1639 REFIID riid, 1640 void **ppvObject); 1641 1642 ULONG (STDMETHODCALLTYPE *AddRef)( 1643 IMediaFilter* This); 1644 1645 ULONG (STDMETHODCALLTYPE *Release)( 1646 IMediaFilter* This); 1647 1648 /*** IPersist methods ***/ 1649 HRESULT (STDMETHODCALLTYPE *GetClassID)( 1650 IMediaFilter* This, 1651 CLSID *pClassID); 1652 1653 /*** IMediaFilter methods ***/ 1654 HRESULT (STDMETHODCALLTYPE *Stop)( 1655 IMediaFilter* This); 1656 1657 HRESULT (STDMETHODCALLTYPE *Pause)( 1658 IMediaFilter* This); 1659 1660 HRESULT (STDMETHODCALLTYPE *Run)( 1661 IMediaFilter* This, 1662 REFERENCE_TIME tStart); 1663 1664 HRESULT (STDMETHODCALLTYPE *GetState)( 1665 IMediaFilter* This, 1666 DWORD dwMilliSecsTimeout, 1667 FILTER_STATE *State); 1668 1669 HRESULT (STDMETHODCALLTYPE *SetSyncSource)( 1670 IMediaFilter* This, 1671 IReferenceClock *pClock); 1672 1673 HRESULT (STDMETHODCALLTYPE *GetSyncSource)( 1674 IMediaFilter* This, 1675 IReferenceClock **pClock); 1676 1677 END_INTERFACE 1678 } IMediaFilterVtbl; 1679 interface IMediaFilter { 1680 CONST_VTBL IMediaFilterVtbl* lpVtbl; 1681 }; 1682 1683 #ifdef COBJMACROS 1684 #ifndef WIDL_C_INLINE_WRAPPERS 1685 /*** IUnknown methods ***/ 1686 #define IMediaFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1687 #define IMediaFilter_AddRef(This) (This)->lpVtbl->AddRef(This) 1688 #define IMediaFilter_Release(This) (This)->lpVtbl->Release(This) 1689 /*** IPersist methods ***/ 1690 #define IMediaFilter_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) 1691 /*** IMediaFilter methods ***/ 1692 #define IMediaFilter_Stop(This) (This)->lpVtbl->Stop(This) 1693 #define IMediaFilter_Pause(This) (This)->lpVtbl->Pause(This) 1694 #define IMediaFilter_Run(This,tStart) (This)->lpVtbl->Run(This,tStart) 1695 #define IMediaFilter_GetState(This,dwMilliSecsTimeout,State) (This)->lpVtbl->GetState(This,dwMilliSecsTimeout,State) 1696 #define IMediaFilter_SetSyncSource(This,pClock) (This)->lpVtbl->SetSyncSource(This,pClock) 1697 #define IMediaFilter_GetSyncSource(This,pClock) (This)->lpVtbl->GetSyncSource(This,pClock) 1698 #else 1699 /*** IUnknown methods ***/ 1700 static FORCEINLINE HRESULT IMediaFilter_QueryInterface(IMediaFilter* This,REFIID riid,void **ppvObject) { 1701 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1702 } 1703 static FORCEINLINE ULONG IMediaFilter_AddRef(IMediaFilter* This) { 1704 return This->lpVtbl->AddRef(This); 1705 } 1706 static FORCEINLINE ULONG IMediaFilter_Release(IMediaFilter* This) { 1707 return This->lpVtbl->Release(This); 1708 } 1709 /*** IPersist methods ***/ 1710 static FORCEINLINE HRESULT IMediaFilter_GetClassID(IMediaFilter* This,CLSID *pClassID) { 1711 return This->lpVtbl->GetClassID(This,pClassID); 1712 } 1713 /*** IMediaFilter methods ***/ 1714 static FORCEINLINE HRESULT IMediaFilter_Stop(IMediaFilter* This) { 1715 return This->lpVtbl->Stop(This); 1716 } 1717 static FORCEINLINE HRESULT IMediaFilter_Pause(IMediaFilter* This) { 1718 return This->lpVtbl->Pause(This); 1719 } 1720 static FORCEINLINE HRESULT IMediaFilter_Run(IMediaFilter* This,REFERENCE_TIME tStart) { 1721 return This->lpVtbl->Run(This,tStart); 1722 } 1723 static FORCEINLINE HRESULT IMediaFilter_GetState(IMediaFilter* This,DWORD dwMilliSecsTimeout,FILTER_STATE *State) { 1724 return This->lpVtbl->GetState(This,dwMilliSecsTimeout,State); 1725 } 1726 static FORCEINLINE HRESULT IMediaFilter_SetSyncSource(IMediaFilter* This,IReferenceClock *pClock) { 1727 return This->lpVtbl->SetSyncSource(This,pClock); 1728 } 1729 static FORCEINLINE HRESULT IMediaFilter_GetSyncSource(IMediaFilter* This,IReferenceClock **pClock) { 1730 return This->lpVtbl->GetSyncSource(This,pClock); 1731 } 1732 #endif 1733 #endif 1734 1735 #endif 1736 1737 HRESULT STDMETHODCALLTYPE IMediaFilter_Stop_Proxy( 1738 IMediaFilter* This); 1739 void __RPC_STUB IMediaFilter_Stop_Stub( 1740 IRpcStubBuffer* This, 1741 IRpcChannelBuffer* pRpcChannelBuffer, 1742 PRPC_MESSAGE pRpcMessage, 1743 DWORD* pdwStubPhase); 1744 HRESULT STDMETHODCALLTYPE IMediaFilter_Pause_Proxy( 1745 IMediaFilter* This); 1746 void __RPC_STUB IMediaFilter_Pause_Stub( 1747 IRpcStubBuffer* This, 1748 IRpcChannelBuffer* pRpcChannelBuffer, 1749 PRPC_MESSAGE pRpcMessage, 1750 DWORD* pdwStubPhase); 1751 HRESULT STDMETHODCALLTYPE IMediaFilter_Run_Proxy( 1752 IMediaFilter* This, 1753 REFERENCE_TIME tStart); 1754 void __RPC_STUB IMediaFilter_Run_Stub( 1755 IRpcStubBuffer* This, 1756 IRpcChannelBuffer* pRpcChannelBuffer, 1757 PRPC_MESSAGE pRpcMessage, 1758 DWORD* pdwStubPhase); 1759 HRESULT STDMETHODCALLTYPE IMediaFilter_GetState_Proxy( 1760 IMediaFilter* This, 1761 DWORD dwMilliSecsTimeout, 1762 FILTER_STATE *State); 1763 void __RPC_STUB IMediaFilter_GetState_Stub( 1764 IRpcStubBuffer* This, 1765 IRpcChannelBuffer* pRpcChannelBuffer, 1766 PRPC_MESSAGE pRpcMessage, 1767 DWORD* pdwStubPhase); 1768 HRESULT STDMETHODCALLTYPE IMediaFilter_SetSyncSource_Proxy( 1769 IMediaFilter* This, 1770 IReferenceClock *pClock); 1771 void __RPC_STUB IMediaFilter_SetSyncSource_Stub( 1772 IRpcStubBuffer* This, 1773 IRpcChannelBuffer* pRpcChannelBuffer, 1774 PRPC_MESSAGE pRpcMessage, 1775 DWORD* pdwStubPhase); 1776 HRESULT STDMETHODCALLTYPE IMediaFilter_GetSyncSource_Proxy( 1777 IMediaFilter* This, 1778 IReferenceClock **pClock); 1779 void __RPC_STUB IMediaFilter_GetSyncSource_Stub( 1780 IRpcStubBuffer* This, 1781 IRpcChannelBuffer* pRpcChannelBuffer, 1782 PRPC_MESSAGE pRpcMessage, 1783 DWORD* pdwStubPhase); 1784 1785 #endif /* __IMediaFilter_INTERFACE_DEFINED__ */ 1786 1787 typedef IMediaFilter *PMEDIAFILTER; 1788 1789 /***************************************************************************** 1790 * IBaseFilter interface 1791 */ 1792 #ifndef __IBaseFilter_INTERFACE_DEFINED__ 1793 #define __IBaseFilter_INTERFACE_DEFINED__ 1794 1795 typedef struct _FilterInfo { 1796 WCHAR achName[128]; 1797 IFilterGraph *pGraph; 1798 } FILTER_INFO; 1799 1800 DEFINE_GUID(IID_IBaseFilter, 0x56a86895, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 1801 #if defined(__cplusplus) && !defined(CINTERFACE) 1802 MIDL_INTERFACE("56a86895-0ad4-11ce-b03a-0020af0ba770") 1803 IBaseFilter : public IMediaFilter 1804 { 1805 virtual HRESULT STDMETHODCALLTYPE EnumPins( 1806 IEnumPins **ppEnum) = 0; 1807 1808 virtual HRESULT STDMETHODCALLTYPE FindPin( 1809 LPCWSTR Id, 1810 IPin **ppPin) = 0; 1811 1812 virtual HRESULT STDMETHODCALLTYPE QueryFilterInfo( 1813 FILTER_INFO *pInfo) = 0; 1814 1815 virtual HRESULT STDMETHODCALLTYPE JoinFilterGraph( 1816 IFilterGraph *pGraph, 1817 LPCWSTR pName) = 0; 1818 1819 virtual HRESULT STDMETHODCALLTYPE QueryVendorInfo( 1820 LPWSTR *pVendorInfo) = 0; 1821 1822 }; 1823 #ifdef __CRT_UUID_DECL 1824 __CRT_UUID_DECL(IBaseFilter, 0x56a86895, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 1825 #endif 1826 #else 1827 typedef struct IBaseFilterVtbl { 1828 BEGIN_INTERFACE 1829 1830 /*** IUnknown methods ***/ 1831 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1832 IBaseFilter* This, 1833 REFIID riid, 1834 void **ppvObject); 1835 1836 ULONG (STDMETHODCALLTYPE *AddRef)( 1837 IBaseFilter* This); 1838 1839 ULONG (STDMETHODCALLTYPE *Release)( 1840 IBaseFilter* This); 1841 1842 /*** IPersist methods ***/ 1843 HRESULT (STDMETHODCALLTYPE *GetClassID)( 1844 IBaseFilter* This, 1845 CLSID *pClassID); 1846 1847 /*** IMediaFilter methods ***/ 1848 HRESULT (STDMETHODCALLTYPE *Stop)( 1849 IBaseFilter* This); 1850 1851 HRESULT (STDMETHODCALLTYPE *Pause)( 1852 IBaseFilter* This); 1853 1854 HRESULT (STDMETHODCALLTYPE *Run)( 1855 IBaseFilter* This, 1856 REFERENCE_TIME tStart); 1857 1858 HRESULT (STDMETHODCALLTYPE *GetState)( 1859 IBaseFilter* This, 1860 DWORD dwMilliSecsTimeout, 1861 FILTER_STATE *State); 1862 1863 HRESULT (STDMETHODCALLTYPE *SetSyncSource)( 1864 IBaseFilter* This, 1865 IReferenceClock *pClock); 1866 1867 HRESULT (STDMETHODCALLTYPE *GetSyncSource)( 1868 IBaseFilter* This, 1869 IReferenceClock **pClock); 1870 1871 /*** IBaseFilter methods ***/ 1872 HRESULT (STDMETHODCALLTYPE *EnumPins)( 1873 IBaseFilter* This, 1874 IEnumPins **ppEnum); 1875 1876 HRESULT (STDMETHODCALLTYPE *FindPin)( 1877 IBaseFilter* This, 1878 LPCWSTR Id, 1879 IPin **ppPin); 1880 1881 HRESULT (STDMETHODCALLTYPE *QueryFilterInfo)( 1882 IBaseFilter* This, 1883 FILTER_INFO *pInfo); 1884 1885 HRESULT (STDMETHODCALLTYPE *JoinFilterGraph)( 1886 IBaseFilter* This, 1887 IFilterGraph *pGraph, 1888 LPCWSTR pName); 1889 1890 HRESULT (STDMETHODCALLTYPE *QueryVendorInfo)( 1891 IBaseFilter* This, 1892 LPWSTR *pVendorInfo); 1893 1894 END_INTERFACE 1895 } IBaseFilterVtbl; 1896 interface IBaseFilter { 1897 CONST_VTBL IBaseFilterVtbl* lpVtbl; 1898 }; 1899 1900 #ifdef COBJMACROS 1901 #ifndef WIDL_C_INLINE_WRAPPERS 1902 /*** IUnknown methods ***/ 1903 #define IBaseFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1904 #define IBaseFilter_AddRef(This) (This)->lpVtbl->AddRef(This) 1905 #define IBaseFilter_Release(This) (This)->lpVtbl->Release(This) 1906 /*** IPersist methods ***/ 1907 #define IBaseFilter_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) 1908 /*** IMediaFilter methods ***/ 1909 #define IBaseFilter_Stop(This) (This)->lpVtbl->Stop(This) 1910 #define IBaseFilter_Pause(This) (This)->lpVtbl->Pause(This) 1911 #define IBaseFilter_Run(This,tStart) (This)->lpVtbl->Run(This,tStart) 1912 #define IBaseFilter_GetState(This,dwMilliSecsTimeout,State) (This)->lpVtbl->GetState(This,dwMilliSecsTimeout,State) 1913 #define IBaseFilter_SetSyncSource(This,pClock) (This)->lpVtbl->SetSyncSource(This,pClock) 1914 #define IBaseFilter_GetSyncSource(This,pClock) (This)->lpVtbl->GetSyncSource(This,pClock) 1915 /*** IBaseFilter methods ***/ 1916 #define IBaseFilter_EnumPins(This,ppEnum) (This)->lpVtbl->EnumPins(This,ppEnum) 1917 #define IBaseFilter_FindPin(This,Id,ppPin) (This)->lpVtbl->FindPin(This,Id,ppPin) 1918 #define IBaseFilter_QueryFilterInfo(This,pInfo) (This)->lpVtbl->QueryFilterInfo(This,pInfo) 1919 #define IBaseFilter_JoinFilterGraph(This,pGraph,pName) (This)->lpVtbl->JoinFilterGraph(This,pGraph,pName) 1920 #define IBaseFilter_QueryVendorInfo(This,pVendorInfo) (This)->lpVtbl->QueryVendorInfo(This,pVendorInfo) 1921 #else 1922 /*** IUnknown methods ***/ 1923 static FORCEINLINE HRESULT IBaseFilter_QueryInterface(IBaseFilter* This,REFIID riid,void **ppvObject) { 1924 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1925 } 1926 static FORCEINLINE ULONG IBaseFilter_AddRef(IBaseFilter* This) { 1927 return This->lpVtbl->AddRef(This); 1928 } 1929 static FORCEINLINE ULONG IBaseFilter_Release(IBaseFilter* This) { 1930 return This->lpVtbl->Release(This); 1931 } 1932 /*** IPersist methods ***/ 1933 static FORCEINLINE HRESULT IBaseFilter_GetClassID(IBaseFilter* This,CLSID *pClassID) { 1934 return This->lpVtbl->GetClassID(This,pClassID); 1935 } 1936 /*** IMediaFilter methods ***/ 1937 static FORCEINLINE HRESULT IBaseFilter_Stop(IBaseFilter* This) { 1938 return This->lpVtbl->Stop(This); 1939 } 1940 static FORCEINLINE HRESULT IBaseFilter_Pause(IBaseFilter* This) { 1941 return This->lpVtbl->Pause(This); 1942 } 1943 static FORCEINLINE HRESULT IBaseFilter_Run(IBaseFilter* This,REFERENCE_TIME tStart) { 1944 return This->lpVtbl->Run(This,tStart); 1945 } 1946 static FORCEINLINE HRESULT IBaseFilter_GetState(IBaseFilter* This,DWORD dwMilliSecsTimeout,FILTER_STATE *State) { 1947 return This->lpVtbl->GetState(This,dwMilliSecsTimeout,State); 1948 } 1949 static FORCEINLINE HRESULT IBaseFilter_SetSyncSource(IBaseFilter* This,IReferenceClock *pClock) { 1950 return This->lpVtbl->SetSyncSource(This,pClock); 1951 } 1952 static FORCEINLINE HRESULT IBaseFilter_GetSyncSource(IBaseFilter* This,IReferenceClock **pClock) { 1953 return This->lpVtbl->GetSyncSource(This,pClock); 1954 } 1955 /*** IBaseFilter methods ***/ 1956 static FORCEINLINE HRESULT IBaseFilter_EnumPins(IBaseFilter* This,IEnumPins **ppEnum) { 1957 return This->lpVtbl->EnumPins(This,ppEnum); 1958 } 1959 static FORCEINLINE HRESULT IBaseFilter_FindPin(IBaseFilter* This,LPCWSTR Id,IPin **ppPin) { 1960 return This->lpVtbl->FindPin(This,Id,ppPin); 1961 } 1962 static FORCEINLINE HRESULT IBaseFilter_QueryFilterInfo(IBaseFilter* This,FILTER_INFO *pInfo) { 1963 return This->lpVtbl->QueryFilterInfo(This,pInfo); 1964 } 1965 static FORCEINLINE HRESULT IBaseFilter_JoinFilterGraph(IBaseFilter* This,IFilterGraph *pGraph,LPCWSTR pName) { 1966 return This->lpVtbl->JoinFilterGraph(This,pGraph,pName); 1967 } 1968 static FORCEINLINE HRESULT IBaseFilter_QueryVendorInfo(IBaseFilter* This,LPWSTR *pVendorInfo) { 1969 return This->lpVtbl->QueryVendorInfo(This,pVendorInfo); 1970 } 1971 #endif 1972 #endif 1973 1974 #endif 1975 1976 HRESULT STDMETHODCALLTYPE IBaseFilter_EnumPins_Proxy( 1977 IBaseFilter* This, 1978 IEnumPins **ppEnum); 1979 void __RPC_STUB IBaseFilter_EnumPins_Stub( 1980 IRpcStubBuffer* This, 1981 IRpcChannelBuffer* pRpcChannelBuffer, 1982 PRPC_MESSAGE pRpcMessage, 1983 DWORD* pdwStubPhase); 1984 HRESULT STDMETHODCALLTYPE IBaseFilter_FindPin_Proxy( 1985 IBaseFilter* This, 1986 LPCWSTR Id, 1987 IPin **ppPin); 1988 void __RPC_STUB IBaseFilter_FindPin_Stub( 1989 IRpcStubBuffer* This, 1990 IRpcChannelBuffer* pRpcChannelBuffer, 1991 PRPC_MESSAGE pRpcMessage, 1992 DWORD* pdwStubPhase); 1993 HRESULT STDMETHODCALLTYPE IBaseFilter_QueryFilterInfo_Proxy( 1994 IBaseFilter* This, 1995 FILTER_INFO *pInfo); 1996 void __RPC_STUB IBaseFilter_QueryFilterInfo_Stub( 1997 IRpcStubBuffer* This, 1998 IRpcChannelBuffer* pRpcChannelBuffer, 1999 PRPC_MESSAGE pRpcMessage, 2000 DWORD* pdwStubPhase); 2001 HRESULT STDMETHODCALLTYPE IBaseFilter_JoinFilterGraph_Proxy( 2002 IBaseFilter* This, 2003 IFilterGraph *pGraph, 2004 LPCWSTR pName); 2005 void __RPC_STUB IBaseFilter_JoinFilterGraph_Stub( 2006 IRpcStubBuffer* This, 2007 IRpcChannelBuffer* pRpcChannelBuffer, 2008 PRPC_MESSAGE pRpcMessage, 2009 DWORD* pdwStubPhase); 2010 HRESULT STDMETHODCALLTYPE IBaseFilter_QueryVendorInfo_Proxy( 2011 IBaseFilter* This, 2012 LPWSTR *pVendorInfo); 2013 void __RPC_STUB IBaseFilter_QueryVendorInfo_Stub( 2014 IRpcStubBuffer* This, 2015 IRpcChannelBuffer* pRpcChannelBuffer, 2016 PRPC_MESSAGE pRpcMessage, 2017 DWORD* pdwStubPhase); 2018 2019 #endif /* __IBaseFilter_INTERFACE_DEFINED__ */ 2020 2021 typedef IBaseFilter *PFILTER; 2022 2023 /***************************************************************************** 2024 * IReferenceClock interface 2025 */ 2026 #ifndef __IReferenceClock_INTERFACE_DEFINED__ 2027 #define __IReferenceClock_INTERFACE_DEFINED__ 2028 2029 DEFINE_GUID(IID_IReferenceClock, 0x56a86897, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 2030 #if defined(__cplusplus) && !defined(CINTERFACE) 2031 MIDL_INTERFACE("56a86897-0ad4-11ce-b03a-0020af0ba770") 2032 IReferenceClock : public IUnknown 2033 { 2034 virtual HRESULT STDMETHODCALLTYPE GetTime( 2035 REFERENCE_TIME *pTime) = 0; 2036 2037 virtual HRESULT STDMETHODCALLTYPE AdviseTime( 2038 REFERENCE_TIME baseTime, 2039 REFERENCE_TIME streamTime, 2040 HEVENT hEvent, 2041 DWORD_PTR *pdwAdviseCookie) = 0; 2042 2043 virtual HRESULT STDMETHODCALLTYPE AdvisePeriodic( 2044 REFERENCE_TIME startTime, 2045 REFERENCE_TIME periodTime, 2046 HSEMAPHORE hSemaphore, 2047 DWORD_PTR *pdwAdviseCookie) = 0; 2048 2049 virtual HRESULT STDMETHODCALLTYPE Unadvise( 2050 DWORD_PTR dwAdviseCookie) = 0; 2051 2052 }; 2053 #ifdef __CRT_UUID_DECL 2054 __CRT_UUID_DECL(IReferenceClock, 0x56a86897, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 2055 #endif 2056 #else 2057 typedef struct IReferenceClockVtbl { 2058 BEGIN_INTERFACE 2059 2060 /*** IUnknown methods ***/ 2061 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2062 IReferenceClock* This, 2063 REFIID riid, 2064 void **ppvObject); 2065 2066 ULONG (STDMETHODCALLTYPE *AddRef)( 2067 IReferenceClock* This); 2068 2069 ULONG (STDMETHODCALLTYPE *Release)( 2070 IReferenceClock* This); 2071 2072 /*** IReferenceClock methods ***/ 2073 HRESULT (STDMETHODCALLTYPE *GetTime)( 2074 IReferenceClock* This, 2075 REFERENCE_TIME *pTime); 2076 2077 HRESULT (STDMETHODCALLTYPE *AdviseTime)( 2078 IReferenceClock* This, 2079 REFERENCE_TIME baseTime, 2080 REFERENCE_TIME streamTime, 2081 HEVENT hEvent, 2082 DWORD_PTR *pdwAdviseCookie); 2083 2084 HRESULT (STDMETHODCALLTYPE *AdvisePeriodic)( 2085 IReferenceClock* This, 2086 REFERENCE_TIME startTime, 2087 REFERENCE_TIME periodTime, 2088 HSEMAPHORE hSemaphore, 2089 DWORD_PTR *pdwAdviseCookie); 2090 2091 HRESULT (STDMETHODCALLTYPE *Unadvise)( 2092 IReferenceClock* This, 2093 DWORD_PTR dwAdviseCookie); 2094 2095 END_INTERFACE 2096 } IReferenceClockVtbl; 2097 interface IReferenceClock { 2098 CONST_VTBL IReferenceClockVtbl* lpVtbl; 2099 }; 2100 2101 #ifdef COBJMACROS 2102 #ifndef WIDL_C_INLINE_WRAPPERS 2103 /*** IUnknown methods ***/ 2104 #define IReferenceClock_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2105 #define IReferenceClock_AddRef(This) (This)->lpVtbl->AddRef(This) 2106 #define IReferenceClock_Release(This) (This)->lpVtbl->Release(This) 2107 /*** IReferenceClock methods ***/ 2108 #define IReferenceClock_GetTime(This,pTime) (This)->lpVtbl->GetTime(This,pTime) 2109 #define IReferenceClock_AdviseTime(This,baseTime,streamTime,hEvent,pdwAdviseCookie) (This)->lpVtbl->AdviseTime(This,baseTime,streamTime,hEvent,pdwAdviseCookie) 2110 #define IReferenceClock_AdvisePeriodic(This,startTime,periodTime,hSemaphore,pdwAdviseCookie) (This)->lpVtbl->AdvisePeriodic(This,startTime,periodTime,hSemaphore,pdwAdviseCookie) 2111 #define IReferenceClock_Unadvise(This,dwAdviseCookie) (This)->lpVtbl->Unadvise(This,dwAdviseCookie) 2112 #else 2113 /*** IUnknown methods ***/ 2114 static FORCEINLINE HRESULT IReferenceClock_QueryInterface(IReferenceClock* This,REFIID riid,void **ppvObject) { 2115 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2116 } 2117 static FORCEINLINE ULONG IReferenceClock_AddRef(IReferenceClock* This) { 2118 return This->lpVtbl->AddRef(This); 2119 } 2120 static FORCEINLINE ULONG IReferenceClock_Release(IReferenceClock* This) { 2121 return This->lpVtbl->Release(This); 2122 } 2123 /*** IReferenceClock methods ***/ 2124 static FORCEINLINE HRESULT IReferenceClock_GetTime(IReferenceClock* This,REFERENCE_TIME *pTime) { 2125 return This->lpVtbl->GetTime(This,pTime); 2126 } 2127 static FORCEINLINE HRESULT IReferenceClock_AdviseTime(IReferenceClock* This,REFERENCE_TIME baseTime,REFERENCE_TIME streamTime,HEVENT hEvent,DWORD_PTR *pdwAdviseCookie) { 2128 return This->lpVtbl->AdviseTime(This,baseTime,streamTime,hEvent,pdwAdviseCookie); 2129 } 2130 static FORCEINLINE HRESULT IReferenceClock_AdvisePeriodic(IReferenceClock* This,REFERENCE_TIME startTime,REFERENCE_TIME periodTime,HSEMAPHORE hSemaphore,DWORD_PTR *pdwAdviseCookie) { 2131 return This->lpVtbl->AdvisePeriodic(This,startTime,periodTime,hSemaphore,pdwAdviseCookie); 2132 } 2133 static FORCEINLINE HRESULT IReferenceClock_Unadvise(IReferenceClock* This,DWORD_PTR dwAdviseCookie) { 2134 return This->lpVtbl->Unadvise(This,dwAdviseCookie); 2135 } 2136 #endif 2137 #endif 2138 2139 #endif 2140 2141 HRESULT STDMETHODCALLTYPE IReferenceClock_GetTime_Proxy( 2142 IReferenceClock* This, 2143 REFERENCE_TIME *pTime); 2144 void __RPC_STUB IReferenceClock_GetTime_Stub( 2145 IRpcStubBuffer* This, 2146 IRpcChannelBuffer* pRpcChannelBuffer, 2147 PRPC_MESSAGE pRpcMessage, 2148 DWORD* pdwStubPhase); 2149 HRESULT STDMETHODCALLTYPE IReferenceClock_AdviseTime_Proxy( 2150 IReferenceClock* This, 2151 REFERENCE_TIME baseTime, 2152 REFERENCE_TIME streamTime, 2153 HEVENT hEvent, 2154 DWORD_PTR *pdwAdviseCookie); 2155 void __RPC_STUB IReferenceClock_AdviseTime_Stub( 2156 IRpcStubBuffer* This, 2157 IRpcChannelBuffer* pRpcChannelBuffer, 2158 PRPC_MESSAGE pRpcMessage, 2159 DWORD* pdwStubPhase); 2160 HRESULT STDMETHODCALLTYPE IReferenceClock_AdvisePeriodic_Proxy( 2161 IReferenceClock* This, 2162 REFERENCE_TIME startTime, 2163 REFERENCE_TIME periodTime, 2164 HSEMAPHORE hSemaphore, 2165 DWORD_PTR *pdwAdviseCookie); 2166 void __RPC_STUB IReferenceClock_AdvisePeriodic_Stub( 2167 IRpcStubBuffer* This, 2168 IRpcChannelBuffer* pRpcChannelBuffer, 2169 PRPC_MESSAGE pRpcMessage, 2170 DWORD* pdwStubPhase); 2171 HRESULT STDMETHODCALLTYPE IReferenceClock_Unadvise_Proxy( 2172 IReferenceClock* This, 2173 DWORD_PTR dwAdviseCookie); 2174 void __RPC_STUB IReferenceClock_Unadvise_Stub( 2175 IRpcStubBuffer* This, 2176 IRpcChannelBuffer* pRpcChannelBuffer, 2177 PRPC_MESSAGE pRpcMessage, 2178 DWORD* pdwStubPhase); 2179 2180 #endif /* __IReferenceClock_INTERFACE_DEFINED__ */ 2181 2182 typedef IReferenceClock *PREFERENCECLOCK; 2183 2184 /***************************************************************************** 2185 * IReferenceClockTimerControl interface 2186 */ 2187 #ifndef __IReferenceClockTimerControl_INTERFACE_DEFINED__ 2188 #define __IReferenceClockTimerControl_INTERFACE_DEFINED__ 2189 2190 DEFINE_GUID(IID_IReferenceClockTimerControl, 0xebec459c, 0x2eca, 0x4d42, 0xa8,0xaf, 0x30,0xdf,0x55,0x76,0x14,0xb8); 2191 #if defined(__cplusplus) && !defined(CINTERFACE) 2192 MIDL_INTERFACE("ebec459c-2eca-4d42-a8af-30df557614b8") 2193 IReferenceClockTimerControl : public IUnknown 2194 { 2195 virtual HRESULT STDMETHODCALLTYPE SetDefaultTimerResolution( 2196 REFERENCE_TIME timerResolution) = 0; 2197 2198 virtual HRESULT STDMETHODCALLTYPE GetDefaultTimerResolution( 2199 REFERENCE_TIME *pTimerResolution) = 0; 2200 2201 }; 2202 #ifdef __CRT_UUID_DECL 2203 __CRT_UUID_DECL(IReferenceClockTimerControl, 0xebec459c, 0x2eca, 0x4d42, 0xa8,0xaf, 0x30,0xdf,0x55,0x76,0x14,0xb8) 2204 #endif 2205 #else 2206 typedef struct IReferenceClockTimerControlVtbl { 2207 BEGIN_INTERFACE 2208 2209 /*** IUnknown methods ***/ 2210 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2211 IReferenceClockTimerControl* This, 2212 REFIID riid, 2213 void **ppvObject); 2214 2215 ULONG (STDMETHODCALLTYPE *AddRef)( 2216 IReferenceClockTimerControl* This); 2217 2218 ULONG (STDMETHODCALLTYPE *Release)( 2219 IReferenceClockTimerControl* This); 2220 2221 /*** IReferenceClockTimerControl methods ***/ 2222 HRESULT (STDMETHODCALLTYPE *SetDefaultTimerResolution)( 2223 IReferenceClockTimerControl* This, 2224 REFERENCE_TIME timerResolution); 2225 2226 HRESULT (STDMETHODCALLTYPE *GetDefaultTimerResolution)( 2227 IReferenceClockTimerControl* This, 2228 REFERENCE_TIME *pTimerResolution); 2229 2230 END_INTERFACE 2231 } IReferenceClockTimerControlVtbl; 2232 interface IReferenceClockTimerControl { 2233 CONST_VTBL IReferenceClockTimerControlVtbl* lpVtbl; 2234 }; 2235 2236 #ifdef COBJMACROS 2237 #ifndef WIDL_C_INLINE_WRAPPERS 2238 /*** IUnknown methods ***/ 2239 #define IReferenceClockTimerControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2240 #define IReferenceClockTimerControl_AddRef(This) (This)->lpVtbl->AddRef(This) 2241 #define IReferenceClockTimerControl_Release(This) (This)->lpVtbl->Release(This) 2242 /*** IReferenceClockTimerControl methods ***/ 2243 #define IReferenceClockTimerControl_SetDefaultTimerResolution(This,timerResolution) (This)->lpVtbl->SetDefaultTimerResolution(This,timerResolution) 2244 #define IReferenceClockTimerControl_GetDefaultTimerResolution(This,pTimerResolution) (This)->lpVtbl->GetDefaultTimerResolution(This,pTimerResolution) 2245 #else 2246 /*** IUnknown methods ***/ 2247 static FORCEINLINE HRESULT IReferenceClockTimerControl_QueryInterface(IReferenceClockTimerControl* This,REFIID riid,void **ppvObject) { 2248 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2249 } 2250 static FORCEINLINE ULONG IReferenceClockTimerControl_AddRef(IReferenceClockTimerControl* This) { 2251 return This->lpVtbl->AddRef(This); 2252 } 2253 static FORCEINLINE ULONG IReferenceClockTimerControl_Release(IReferenceClockTimerControl* This) { 2254 return This->lpVtbl->Release(This); 2255 } 2256 /*** IReferenceClockTimerControl methods ***/ 2257 static FORCEINLINE HRESULT IReferenceClockTimerControl_SetDefaultTimerResolution(IReferenceClockTimerControl* This,REFERENCE_TIME timerResolution) { 2258 return This->lpVtbl->SetDefaultTimerResolution(This,timerResolution); 2259 } 2260 static FORCEINLINE HRESULT IReferenceClockTimerControl_GetDefaultTimerResolution(IReferenceClockTimerControl* This,REFERENCE_TIME *pTimerResolution) { 2261 return This->lpVtbl->GetDefaultTimerResolution(This,pTimerResolution); 2262 } 2263 #endif 2264 #endif 2265 2266 #endif 2267 2268 HRESULT STDMETHODCALLTYPE IReferenceClockTimerControl_SetDefaultTimerResolution_Proxy( 2269 IReferenceClockTimerControl* This, 2270 REFERENCE_TIME timerResolution); 2271 void __RPC_STUB IReferenceClockTimerControl_SetDefaultTimerResolution_Stub( 2272 IRpcStubBuffer* This, 2273 IRpcChannelBuffer* pRpcChannelBuffer, 2274 PRPC_MESSAGE pRpcMessage, 2275 DWORD* pdwStubPhase); 2276 HRESULT STDMETHODCALLTYPE IReferenceClockTimerControl_GetDefaultTimerResolution_Proxy( 2277 IReferenceClockTimerControl* This, 2278 REFERENCE_TIME *pTimerResolution); 2279 void __RPC_STUB IReferenceClockTimerControl_GetDefaultTimerResolution_Stub( 2280 IRpcStubBuffer* This, 2281 IRpcChannelBuffer* pRpcChannelBuffer, 2282 PRPC_MESSAGE pRpcMessage, 2283 DWORD* pdwStubPhase); 2284 2285 #endif /* __IReferenceClockTimerControl_INTERFACE_DEFINED__ */ 2286 2287 2288 /***************************************************************************** 2289 * IReferenceClock2 interface 2290 */ 2291 #ifndef __IReferenceClock2_INTERFACE_DEFINED__ 2292 #define __IReferenceClock2_INTERFACE_DEFINED__ 2293 2294 DEFINE_GUID(IID_IReferenceClock2, 0x36b73885, 0xc2c8, 0x11cf, 0x8b,0x46, 0x00,0x80,0x5f,0x6c,0xef,0x60); 2295 #if defined(__cplusplus) && !defined(CINTERFACE) 2296 MIDL_INTERFACE("36b73885-c2c8-11cf-8b46-00805f6cef60") 2297 IReferenceClock2 : public IReferenceClock 2298 { 2299 }; 2300 #ifdef __CRT_UUID_DECL 2301 __CRT_UUID_DECL(IReferenceClock2, 0x36b73885, 0xc2c8, 0x11cf, 0x8b,0x46, 0x00,0x80,0x5f,0x6c,0xef,0x60) 2302 #endif 2303 #else 2304 typedef struct IReferenceClock2Vtbl { 2305 BEGIN_INTERFACE 2306 2307 /*** IUnknown methods ***/ 2308 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2309 IReferenceClock2* This, 2310 REFIID riid, 2311 void **ppvObject); 2312 2313 ULONG (STDMETHODCALLTYPE *AddRef)( 2314 IReferenceClock2* This); 2315 2316 ULONG (STDMETHODCALLTYPE *Release)( 2317 IReferenceClock2* This); 2318 2319 /*** IReferenceClock methods ***/ 2320 HRESULT (STDMETHODCALLTYPE *GetTime)( 2321 IReferenceClock2* This, 2322 REFERENCE_TIME *pTime); 2323 2324 HRESULT (STDMETHODCALLTYPE *AdviseTime)( 2325 IReferenceClock2* This, 2326 REFERENCE_TIME baseTime, 2327 REFERENCE_TIME streamTime, 2328 HEVENT hEvent, 2329 DWORD_PTR *pdwAdviseCookie); 2330 2331 HRESULT (STDMETHODCALLTYPE *AdvisePeriodic)( 2332 IReferenceClock2* This, 2333 REFERENCE_TIME startTime, 2334 REFERENCE_TIME periodTime, 2335 HSEMAPHORE hSemaphore, 2336 DWORD_PTR *pdwAdviseCookie); 2337 2338 HRESULT (STDMETHODCALLTYPE *Unadvise)( 2339 IReferenceClock2* This, 2340 DWORD_PTR dwAdviseCookie); 2341 2342 END_INTERFACE 2343 } IReferenceClock2Vtbl; 2344 interface IReferenceClock2 { 2345 CONST_VTBL IReferenceClock2Vtbl* lpVtbl; 2346 }; 2347 2348 #ifdef COBJMACROS 2349 #ifndef WIDL_C_INLINE_WRAPPERS 2350 /*** IUnknown methods ***/ 2351 #define IReferenceClock2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2352 #define IReferenceClock2_AddRef(This) (This)->lpVtbl->AddRef(This) 2353 #define IReferenceClock2_Release(This) (This)->lpVtbl->Release(This) 2354 /*** IReferenceClock methods ***/ 2355 #define IReferenceClock2_GetTime(This,pTime) (This)->lpVtbl->GetTime(This,pTime) 2356 #define IReferenceClock2_AdviseTime(This,baseTime,streamTime,hEvent,pdwAdviseCookie) (This)->lpVtbl->AdviseTime(This,baseTime,streamTime,hEvent,pdwAdviseCookie) 2357 #define IReferenceClock2_AdvisePeriodic(This,startTime,periodTime,hSemaphore,pdwAdviseCookie) (This)->lpVtbl->AdvisePeriodic(This,startTime,periodTime,hSemaphore,pdwAdviseCookie) 2358 #define IReferenceClock2_Unadvise(This,dwAdviseCookie) (This)->lpVtbl->Unadvise(This,dwAdviseCookie) 2359 #else 2360 /*** IUnknown methods ***/ 2361 static FORCEINLINE HRESULT IReferenceClock2_QueryInterface(IReferenceClock2* This,REFIID riid,void **ppvObject) { 2362 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2363 } 2364 static FORCEINLINE ULONG IReferenceClock2_AddRef(IReferenceClock2* This) { 2365 return This->lpVtbl->AddRef(This); 2366 } 2367 static FORCEINLINE ULONG IReferenceClock2_Release(IReferenceClock2* This) { 2368 return This->lpVtbl->Release(This); 2369 } 2370 /*** IReferenceClock methods ***/ 2371 static FORCEINLINE HRESULT IReferenceClock2_GetTime(IReferenceClock2* This,REFERENCE_TIME *pTime) { 2372 return This->lpVtbl->GetTime(This,pTime); 2373 } 2374 static FORCEINLINE HRESULT IReferenceClock2_AdviseTime(IReferenceClock2* This,REFERENCE_TIME baseTime,REFERENCE_TIME streamTime,HEVENT hEvent,DWORD_PTR *pdwAdviseCookie) { 2375 return This->lpVtbl->AdviseTime(This,baseTime,streamTime,hEvent,pdwAdviseCookie); 2376 } 2377 static FORCEINLINE HRESULT IReferenceClock2_AdvisePeriodic(IReferenceClock2* This,REFERENCE_TIME startTime,REFERENCE_TIME periodTime,HSEMAPHORE hSemaphore,DWORD_PTR *pdwAdviseCookie) { 2378 return This->lpVtbl->AdvisePeriodic(This,startTime,periodTime,hSemaphore,pdwAdviseCookie); 2379 } 2380 static FORCEINLINE HRESULT IReferenceClock2_Unadvise(IReferenceClock2* This,DWORD_PTR dwAdviseCookie) { 2381 return This->lpVtbl->Unadvise(This,dwAdviseCookie); 2382 } 2383 #endif 2384 #endif 2385 2386 #endif 2387 2388 2389 #endif /* __IReferenceClock2_INTERFACE_DEFINED__ */ 2390 2391 typedef IReferenceClock2 *PREFERENCECLOCK2; 2392 2393 /***************************************************************************** 2394 * IMediaSample interface 2395 */ 2396 #ifndef __IMediaSample_INTERFACE_DEFINED__ 2397 #define __IMediaSample_INTERFACE_DEFINED__ 2398 2399 DEFINE_GUID(IID_IMediaSample, 0x56a8689a, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 2400 #if defined(__cplusplus) && !defined(CINTERFACE) 2401 MIDL_INTERFACE("56a8689a-0ad4-11ce-b03a-0020af0ba770") 2402 IMediaSample : public IUnknown 2403 { 2404 virtual HRESULT STDMETHODCALLTYPE GetPointer( 2405 BYTE **ppBuffer) = 0; 2406 2407 virtual LONG STDMETHODCALLTYPE GetSize( 2408 ) = 0; 2409 2410 virtual HRESULT STDMETHODCALLTYPE GetTime( 2411 REFERENCE_TIME *pTimeStart, 2412 REFERENCE_TIME *pTimeEnd) = 0; 2413 2414 virtual HRESULT STDMETHODCALLTYPE SetTime( 2415 REFERENCE_TIME *pTimeStart, 2416 REFERENCE_TIME *pTimeEnd) = 0; 2417 2418 virtual HRESULT STDMETHODCALLTYPE IsSyncPoint( 2419 ) = 0; 2420 2421 virtual HRESULT STDMETHODCALLTYPE SetSyncPoint( 2422 WINBOOL bIsSyncPoint) = 0; 2423 2424 virtual HRESULT STDMETHODCALLTYPE IsPreroll( 2425 ) = 0; 2426 2427 virtual HRESULT STDMETHODCALLTYPE SetPreroll( 2428 WINBOOL bIsPreroll) = 0; 2429 2430 virtual LONG STDMETHODCALLTYPE GetActualDataLength( 2431 ) = 0; 2432 2433 virtual HRESULT STDMETHODCALLTYPE SetActualDataLength( 2434 LONG a) = 0; 2435 2436 virtual HRESULT STDMETHODCALLTYPE GetMediaType( 2437 AM_MEDIA_TYPE **ppMediaType) = 0; 2438 2439 virtual HRESULT STDMETHODCALLTYPE SetMediaType( 2440 AM_MEDIA_TYPE *pMediaType) = 0; 2441 2442 virtual HRESULT STDMETHODCALLTYPE IsDiscontinuity( 2443 ) = 0; 2444 2445 virtual HRESULT STDMETHODCALLTYPE SetDiscontinuity( 2446 WINBOOL bDiscontinuity) = 0; 2447 2448 virtual HRESULT STDMETHODCALLTYPE GetMediaTime( 2449 LONGLONG *pTimeStart, 2450 LONGLONG *pTimeEnd) = 0; 2451 2452 virtual HRESULT STDMETHODCALLTYPE SetMediaTime( 2453 LONGLONG *pTimeStart, 2454 LONGLONG *pTimeEnd) = 0; 2455 2456 }; 2457 #ifdef __CRT_UUID_DECL 2458 __CRT_UUID_DECL(IMediaSample, 0x56a8689a, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 2459 #endif 2460 #else 2461 typedef struct IMediaSampleVtbl { 2462 BEGIN_INTERFACE 2463 2464 /*** IUnknown methods ***/ 2465 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2466 IMediaSample* This, 2467 REFIID riid, 2468 void **ppvObject); 2469 2470 ULONG (STDMETHODCALLTYPE *AddRef)( 2471 IMediaSample* This); 2472 2473 ULONG (STDMETHODCALLTYPE *Release)( 2474 IMediaSample* This); 2475 2476 /*** IMediaSample methods ***/ 2477 HRESULT (STDMETHODCALLTYPE *GetPointer)( 2478 IMediaSample* This, 2479 BYTE **ppBuffer); 2480 2481 LONG (STDMETHODCALLTYPE *GetSize)( 2482 IMediaSample* This); 2483 2484 HRESULT (STDMETHODCALLTYPE *GetTime)( 2485 IMediaSample* This, 2486 REFERENCE_TIME *pTimeStart, 2487 REFERENCE_TIME *pTimeEnd); 2488 2489 HRESULT (STDMETHODCALLTYPE *SetTime)( 2490 IMediaSample* This, 2491 REFERENCE_TIME *pTimeStart, 2492 REFERENCE_TIME *pTimeEnd); 2493 2494 HRESULT (STDMETHODCALLTYPE *IsSyncPoint)( 2495 IMediaSample* This); 2496 2497 HRESULT (STDMETHODCALLTYPE *SetSyncPoint)( 2498 IMediaSample* This, 2499 WINBOOL bIsSyncPoint); 2500 2501 HRESULT (STDMETHODCALLTYPE *IsPreroll)( 2502 IMediaSample* This); 2503 2504 HRESULT (STDMETHODCALLTYPE *SetPreroll)( 2505 IMediaSample* This, 2506 WINBOOL bIsPreroll); 2507 2508 LONG (STDMETHODCALLTYPE *GetActualDataLength)( 2509 IMediaSample* This); 2510 2511 HRESULT (STDMETHODCALLTYPE *SetActualDataLength)( 2512 IMediaSample* This, 2513 LONG a); 2514 2515 HRESULT (STDMETHODCALLTYPE *GetMediaType)( 2516 IMediaSample* This, 2517 AM_MEDIA_TYPE **ppMediaType); 2518 2519 HRESULT (STDMETHODCALLTYPE *SetMediaType)( 2520 IMediaSample* This, 2521 AM_MEDIA_TYPE *pMediaType); 2522 2523 HRESULT (STDMETHODCALLTYPE *IsDiscontinuity)( 2524 IMediaSample* This); 2525 2526 HRESULT (STDMETHODCALLTYPE *SetDiscontinuity)( 2527 IMediaSample* This, 2528 WINBOOL bDiscontinuity); 2529 2530 HRESULT (STDMETHODCALLTYPE *GetMediaTime)( 2531 IMediaSample* This, 2532 LONGLONG *pTimeStart, 2533 LONGLONG *pTimeEnd); 2534 2535 HRESULT (STDMETHODCALLTYPE *SetMediaTime)( 2536 IMediaSample* This, 2537 LONGLONG *pTimeStart, 2538 LONGLONG *pTimeEnd); 2539 2540 END_INTERFACE 2541 } IMediaSampleVtbl; 2542 interface IMediaSample { 2543 CONST_VTBL IMediaSampleVtbl* lpVtbl; 2544 }; 2545 2546 #ifdef COBJMACROS 2547 #ifndef WIDL_C_INLINE_WRAPPERS 2548 /*** IUnknown methods ***/ 2549 #define IMediaSample_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2550 #define IMediaSample_AddRef(This) (This)->lpVtbl->AddRef(This) 2551 #define IMediaSample_Release(This) (This)->lpVtbl->Release(This) 2552 /*** IMediaSample methods ***/ 2553 #define IMediaSample_GetPointer(This,ppBuffer) (This)->lpVtbl->GetPointer(This,ppBuffer) 2554 #define IMediaSample_GetSize(This) (This)->lpVtbl->GetSize(This) 2555 #define IMediaSample_GetTime(This,pTimeStart,pTimeEnd) (This)->lpVtbl->GetTime(This,pTimeStart,pTimeEnd) 2556 #define IMediaSample_SetTime(This,pTimeStart,pTimeEnd) (This)->lpVtbl->SetTime(This,pTimeStart,pTimeEnd) 2557 #define IMediaSample_IsSyncPoint(This) (This)->lpVtbl->IsSyncPoint(This) 2558 #define IMediaSample_SetSyncPoint(This,bIsSyncPoint) (This)->lpVtbl->SetSyncPoint(This,bIsSyncPoint) 2559 #define IMediaSample_IsPreroll(This) (This)->lpVtbl->IsPreroll(This) 2560 #define IMediaSample_SetPreroll(This,bIsPreroll) (This)->lpVtbl->SetPreroll(This,bIsPreroll) 2561 #define IMediaSample_GetActualDataLength(This) (This)->lpVtbl->GetActualDataLength(This) 2562 #define IMediaSample_SetActualDataLength(This,a) (This)->lpVtbl->SetActualDataLength(This,a) 2563 #define IMediaSample_GetMediaType(This,ppMediaType) (This)->lpVtbl->GetMediaType(This,ppMediaType) 2564 #define IMediaSample_SetMediaType(This,pMediaType) (This)->lpVtbl->SetMediaType(This,pMediaType) 2565 #define IMediaSample_IsDiscontinuity(This) (This)->lpVtbl->IsDiscontinuity(This) 2566 #define IMediaSample_SetDiscontinuity(This,bDiscontinuity) (This)->lpVtbl->SetDiscontinuity(This,bDiscontinuity) 2567 #define IMediaSample_GetMediaTime(This,pTimeStart,pTimeEnd) (This)->lpVtbl->GetMediaTime(This,pTimeStart,pTimeEnd) 2568 #define IMediaSample_SetMediaTime(This,pTimeStart,pTimeEnd) (This)->lpVtbl->SetMediaTime(This,pTimeStart,pTimeEnd) 2569 #else 2570 /*** IUnknown methods ***/ 2571 static FORCEINLINE HRESULT IMediaSample_QueryInterface(IMediaSample* This,REFIID riid,void **ppvObject) { 2572 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2573 } 2574 static FORCEINLINE ULONG IMediaSample_AddRef(IMediaSample* This) { 2575 return This->lpVtbl->AddRef(This); 2576 } 2577 static FORCEINLINE ULONG IMediaSample_Release(IMediaSample* This) { 2578 return This->lpVtbl->Release(This); 2579 } 2580 /*** IMediaSample methods ***/ 2581 static FORCEINLINE HRESULT IMediaSample_GetPointer(IMediaSample* This,BYTE **ppBuffer) { 2582 return This->lpVtbl->GetPointer(This,ppBuffer); 2583 } 2584 static FORCEINLINE LONG IMediaSample_GetSize(IMediaSample* This) { 2585 return This->lpVtbl->GetSize(This); 2586 } 2587 static FORCEINLINE HRESULT IMediaSample_GetTime(IMediaSample* This,REFERENCE_TIME *pTimeStart,REFERENCE_TIME *pTimeEnd) { 2588 return This->lpVtbl->GetTime(This,pTimeStart,pTimeEnd); 2589 } 2590 static FORCEINLINE HRESULT IMediaSample_SetTime(IMediaSample* This,REFERENCE_TIME *pTimeStart,REFERENCE_TIME *pTimeEnd) { 2591 return This->lpVtbl->SetTime(This,pTimeStart,pTimeEnd); 2592 } 2593 static FORCEINLINE HRESULT IMediaSample_IsSyncPoint(IMediaSample* This) { 2594 return This->lpVtbl->IsSyncPoint(This); 2595 } 2596 static FORCEINLINE HRESULT IMediaSample_SetSyncPoint(IMediaSample* This,WINBOOL bIsSyncPoint) { 2597 return This->lpVtbl->SetSyncPoint(This,bIsSyncPoint); 2598 } 2599 static FORCEINLINE HRESULT IMediaSample_IsPreroll(IMediaSample* This) { 2600 return This->lpVtbl->IsPreroll(This); 2601 } 2602 static FORCEINLINE HRESULT IMediaSample_SetPreroll(IMediaSample* This,WINBOOL bIsPreroll) { 2603 return This->lpVtbl->SetPreroll(This,bIsPreroll); 2604 } 2605 static FORCEINLINE LONG IMediaSample_GetActualDataLength(IMediaSample* This) { 2606 return This->lpVtbl->GetActualDataLength(This); 2607 } 2608 static FORCEINLINE HRESULT IMediaSample_SetActualDataLength(IMediaSample* This,LONG a) { 2609 return This->lpVtbl->SetActualDataLength(This,a); 2610 } 2611 static FORCEINLINE HRESULT IMediaSample_GetMediaType(IMediaSample* This,AM_MEDIA_TYPE **ppMediaType) { 2612 return This->lpVtbl->GetMediaType(This,ppMediaType); 2613 } 2614 static FORCEINLINE HRESULT IMediaSample_SetMediaType(IMediaSample* This,AM_MEDIA_TYPE *pMediaType) { 2615 return This->lpVtbl->SetMediaType(This,pMediaType); 2616 } 2617 static FORCEINLINE HRESULT IMediaSample_IsDiscontinuity(IMediaSample* This) { 2618 return This->lpVtbl->IsDiscontinuity(This); 2619 } 2620 static FORCEINLINE HRESULT IMediaSample_SetDiscontinuity(IMediaSample* This,WINBOOL bDiscontinuity) { 2621 return This->lpVtbl->SetDiscontinuity(This,bDiscontinuity); 2622 } 2623 static FORCEINLINE HRESULT IMediaSample_GetMediaTime(IMediaSample* This,LONGLONG *pTimeStart,LONGLONG *pTimeEnd) { 2624 return This->lpVtbl->GetMediaTime(This,pTimeStart,pTimeEnd); 2625 } 2626 static FORCEINLINE HRESULT IMediaSample_SetMediaTime(IMediaSample* This,LONGLONG *pTimeStart,LONGLONG *pTimeEnd) { 2627 return This->lpVtbl->SetMediaTime(This,pTimeStart,pTimeEnd); 2628 } 2629 #endif 2630 #endif 2631 2632 #endif 2633 2634 HRESULT STDMETHODCALLTYPE IMediaSample_GetPointer_Proxy( 2635 IMediaSample* This, 2636 BYTE **ppBuffer); 2637 void __RPC_STUB IMediaSample_GetPointer_Stub( 2638 IRpcStubBuffer* This, 2639 IRpcChannelBuffer* pRpcChannelBuffer, 2640 PRPC_MESSAGE pRpcMessage, 2641 DWORD* pdwStubPhase); 2642 LONG STDMETHODCALLTYPE IMediaSample_GetSize_Proxy( 2643 IMediaSample* This); 2644 void __RPC_STUB IMediaSample_GetSize_Stub( 2645 IRpcStubBuffer* This, 2646 IRpcChannelBuffer* pRpcChannelBuffer, 2647 PRPC_MESSAGE pRpcMessage, 2648 DWORD* pdwStubPhase); 2649 HRESULT STDMETHODCALLTYPE IMediaSample_GetTime_Proxy( 2650 IMediaSample* This, 2651 REFERENCE_TIME *pTimeStart, 2652 REFERENCE_TIME *pTimeEnd); 2653 void __RPC_STUB IMediaSample_GetTime_Stub( 2654 IRpcStubBuffer* This, 2655 IRpcChannelBuffer* pRpcChannelBuffer, 2656 PRPC_MESSAGE pRpcMessage, 2657 DWORD* pdwStubPhase); 2658 HRESULT STDMETHODCALLTYPE IMediaSample_SetTime_Proxy( 2659 IMediaSample* This, 2660 REFERENCE_TIME *pTimeStart, 2661 REFERENCE_TIME *pTimeEnd); 2662 void __RPC_STUB IMediaSample_SetTime_Stub( 2663 IRpcStubBuffer* This, 2664 IRpcChannelBuffer* pRpcChannelBuffer, 2665 PRPC_MESSAGE pRpcMessage, 2666 DWORD* pdwStubPhase); 2667 HRESULT STDMETHODCALLTYPE IMediaSample_IsSyncPoint_Proxy( 2668 IMediaSample* This); 2669 void __RPC_STUB IMediaSample_IsSyncPoint_Stub( 2670 IRpcStubBuffer* This, 2671 IRpcChannelBuffer* pRpcChannelBuffer, 2672 PRPC_MESSAGE pRpcMessage, 2673 DWORD* pdwStubPhase); 2674 HRESULT STDMETHODCALLTYPE IMediaSample_SetSyncPoint_Proxy( 2675 IMediaSample* This, 2676 WINBOOL bIsSyncPoint); 2677 void __RPC_STUB IMediaSample_SetSyncPoint_Stub( 2678 IRpcStubBuffer* This, 2679 IRpcChannelBuffer* pRpcChannelBuffer, 2680 PRPC_MESSAGE pRpcMessage, 2681 DWORD* pdwStubPhase); 2682 HRESULT STDMETHODCALLTYPE IMediaSample_IsPreroll_Proxy( 2683 IMediaSample* This); 2684 void __RPC_STUB IMediaSample_IsPreroll_Stub( 2685 IRpcStubBuffer* This, 2686 IRpcChannelBuffer* pRpcChannelBuffer, 2687 PRPC_MESSAGE pRpcMessage, 2688 DWORD* pdwStubPhase); 2689 HRESULT STDMETHODCALLTYPE IMediaSample_SetPreroll_Proxy( 2690 IMediaSample* This, 2691 WINBOOL bIsPreroll); 2692 void __RPC_STUB IMediaSample_SetPreroll_Stub( 2693 IRpcStubBuffer* This, 2694 IRpcChannelBuffer* pRpcChannelBuffer, 2695 PRPC_MESSAGE pRpcMessage, 2696 DWORD* pdwStubPhase); 2697 LONG STDMETHODCALLTYPE IMediaSample_GetActualDataLength_Proxy( 2698 IMediaSample* This); 2699 void __RPC_STUB IMediaSample_GetActualDataLength_Stub( 2700 IRpcStubBuffer* This, 2701 IRpcChannelBuffer* pRpcChannelBuffer, 2702 PRPC_MESSAGE pRpcMessage, 2703 DWORD* pdwStubPhase); 2704 HRESULT STDMETHODCALLTYPE IMediaSample_SetActualDataLength_Proxy( 2705 IMediaSample* This, 2706 LONG a); 2707 void __RPC_STUB IMediaSample_SetActualDataLength_Stub( 2708 IRpcStubBuffer* This, 2709 IRpcChannelBuffer* pRpcChannelBuffer, 2710 PRPC_MESSAGE pRpcMessage, 2711 DWORD* pdwStubPhase); 2712 HRESULT STDMETHODCALLTYPE IMediaSample_GetMediaType_Proxy( 2713 IMediaSample* This, 2714 AM_MEDIA_TYPE **ppMediaType); 2715 void __RPC_STUB IMediaSample_GetMediaType_Stub( 2716 IRpcStubBuffer* This, 2717 IRpcChannelBuffer* pRpcChannelBuffer, 2718 PRPC_MESSAGE pRpcMessage, 2719 DWORD* pdwStubPhase); 2720 HRESULT STDMETHODCALLTYPE IMediaSample_SetMediaType_Proxy( 2721 IMediaSample* This, 2722 AM_MEDIA_TYPE *pMediaType); 2723 void __RPC_STUB IMediaSample_SetMediaType_Stub( 2724 IRpcStubBuffer* This, 2725 IRpcChannelBuffer* pRpcChannelBuffer, 2726 PRPC_MESSAGE pRpcMessage, 2727 DWORD* pdwStubPhase); 2728 HRESULT STDMETHODCALLTYPE IMediaSample_IsDiscontinuity_Proxy( 2729 IMediaSample* This); 2730 void __RPC_STUB IMediaSample_IsDiscontinuity_Stub( 2731 IRpcStubBuffer* This, 2732 IRpcChannelBuffer* pRpcChannelBuffer, 2733 PRPC_MESSAGE pRpcMessage, 2734 DWORD* pdwStubPhase); 2735 HRESULT STDMETHODCALLTYPE IMediaSample_SetDiscontinuity_Proxy( 2736 IMediaSample* This, 2737 WINBOOL bDiscontinuity); 2738 void __RPC_STUB IMediaSample_SetDiscontinuity_Stub( 2739 IRpcStubBuffer* This, 2740 IRpcChannelBuffer* pRpcChannelBuffer, 2741 PRPC_MESSAGE pRpcMessage, 2742 DWORD* pdwStubPhase); 2743 HRESULT STDMETHODCALLTYPE IMediaSample_GetMediaTime_Proxy( 2744 IMediaSample* This, 2745 LONGLONG *pTimeStart, 2746 LONGLONG *pTimeEnd); 2747 void __RPC_STUB IMediaSample_GetMediaTime_Stub( 2748 IRpcStubBuffer* This, 2749 IRpcChannelBuffer* pRpcChannelBuffer, 2750 PRPC_MESSAGE pRpcMessage, 2751 DWORD* pdwStubPhase); 2752 HRESULT STDMETHODCALLTYPE IMediaSample_SetMediaTime_Proxy( 2753 IMediaSample* This, 2754 LONGLONG *pTimeStart, 2755 LONGLONG *pTimeEnd); 2756 void __RPC_STUB IMediaSample_SetMediaTime_Stub( 2757 IRpcStubBuffer* This, 2758 IRpcChannelBuffer* pRpcChannelBuffer, 2759 PRPC_MESSAGE pRpcMessage, 2760 DWORD* pdwStubPhase); 2761 2762 #endif /* __IMediaSample_INTERFACE_DEFINED__ */ 2763 2764 typedef IMediaSample *PMEDIASAMPLE; 2765 2766 enum tagAM_SAMPLE_PROPERTY_FLAGS { 2767 AM_SAMPLE_SPLICEPOINT = 0x1, 2768 AM_SAMPLE_PREROLL = 0x2, 2769 AM_SAMPLE_DATADISCONTINUITY = 0x4, 2770 AM_SAMPLE_TYPECHANGED = 0x8, 2771 AM_SAMPLE_TIMEVALID = 0x10, 2772 AM_SAMPLE_TIMEDISCONTINUITY = 0x40, 2773 AM_SAMPLE_FLUSH_ON_PAUSE = 0x80, 2774 AM_SAMPLE_STOPVALID = 0x100, 2775 AM_SAMPLE_ENDOFSTREAM = 0x200, 2776 AM_STREAM_MEDIA = 0, 2777 AM_STREAM_CONTROL = 1 2778 }; 2779 2780 2781 typedef struct tagAM_SAMPLE2_PROPERTIES { 2782 DWORD cbData; 2783 DWORD dwTypeSpecificFlags; 2784 DWORD dwSampleFlags; 2785 LONG lActual; 2786 REFERENCE_TIME tStart; 2787 REFERENCE_TIME tStop; 2788 DWORD dwStreamId; 2789 AM_MEDIA_TYPE *pMediaType; 2790 BYTE *pbBuffer; 2791 LONG cbBuffer; 2792 } AM_SAMPLE2_PROPERTIES; 2793 2794 /***************************************************************************** 2795 * IMediaSample2 interface 2796 */ 2797 #ifndef __IMediaSample2_INTERFACE_DEFINED__ 2798 #define __IMediaSample2_INTERFACE_DEFINED__ 2799 2800 DEFINE_GUID(IID_IMediaSample2, 0x36b73884, 0xc2c8, 0x11cf, 0x8b,0x46, 0x00,0x80,0x5f,0x6c,0xef,0x60); 2801 #if defined(__cplusplus) && !defined(CINTERFACE) 2802 MIDL_INTERFACE("36b73884-c2c8-11cf-8b46-00805f6cef60") 2803 IMediaSample2 : public IMediaSample 2804 { 2805 virtual HRESULT STDMETHODCALLTYPE GetProperties( 2806 DWORD cbProperties, 2807 BYTE *pbProperties) = 0; 2808 2809 virtual HRESULT STDMETHODCALLTYPE SetProperties( 2810 DWORD cbProperties, 2811 const BYTE *pbProperties) = 0; 2812 2813 }; 2814 #ifdef __CRT_UUID_DECL 2815 __CRT_UUID_DECL(IMediaSample2, 0x36b73884, 0xc2c8, 0x11cf, 0x8b,0x46, 0x00,0x80,0x5f,0x6c,0xef,0x60) 2816 #endif 2817 #else 2818 typedef struct IMediaSample2Vtbl { 2819 BEGIN_INTERFACE 2820 2821 /*** IUnknown methods ***/ 2822 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2823 IMediaSample2* This, 2824 REFIID riid, 2825 void **ppvObject); 2826 2827 ULONG (STDMETHODCALLTYPE *AddRef)( 2828 IMediaSample2* This); 2829 2830 ULONG (STDMETHODCALLTYPE *Release)( 2831 IMediaSample2* This); 2832 2833 /*** IMediaSample methods ***/ 2834 HRESULT (STDMETHODCALLTYPE *GetPointer)( 2835 IMediaSample2* This, 2836 BYTE **ppBuffer); 2837 2838 LONG (STDMETHODCALLTYPE *GetSize)( 2839 IMediaSample2* This); 2840 2841 HRESULT (STDMETHODCALLTYPE *GetTime)( 2842 IMediaSample2* This, 2843 REFERENCE_TIME *pTimeStart, 2844 REFERENCE_TIME *pTimeEnd); 2845 2846 HRESULT (STDMETHODCALLTYPE *SetTime)( 2847 IMediaSample2* This, 2848 REFERENCE_TIME *pTimeStart, 2849 REFERENCE_TIME *pTimeEnd); 2850 2851 HRESULT (STDMETHODCALLTYPE *IsSyncPoint)( 2852 IMediaSample2* This); 2853 2854 HRESULT (STDMETHODCALLTYPE *SetSyncPoint)( 2855 IMediaSample2* This, 2856 WINBOOL bIsSyncPoint); 2857 2858 HRESULT (STDMETHODCALLTYPE *IsPreroll)( 2859 IMediaSample2* This); 2860 2861 HRESULT (STDMETHODCALLTYPE *SetPreroll)( 2862 IMediaSample2* This, 2863 WINBOOL bIsPreroll); 2864 2865 LONG (STDMETHODCALLTYPE *GetActualDataLength)( 2866 IMediaSample2* This); 2867 2868 HRESULT (STDMETHODCALLTYPE *SetActualDataLength)( 2869 IMediaSample2* This, 2870 LONG a); 2871 2872 HRESULT (STDMETHODCALLTYPE *GetMediaType)( 2873 IMediaSample2* This, 2874 AM_MEDIA_TYPE **ppMediaType); 2875 2876 HRESULT (STDMETHODCALLTYPE *SetMediaType)( 2877 IMediaSample2* This, 2878 AM_MEDIA_TYPE *pMediaType); 2879 2880 HRESULT (STDMETHODCALLTYPE *IsDiscontinuity)( 2881 IMediaSample2* This); 2882 2883 HRESULT (STDMETHODCALLTYPE *SetDiscontinuity)( 2884 IMediaSample2* This, 2885 WINBOOL bDiscontinuity); 2886 2887 HRESULT (STDMETHODCALLTYPE *GetMediaTime)( 2888 IMediaSample2* This, 2889 LONGLONG *pTimeStart, 2890 LONGLONG *pTimeEnd); 2891 2892 HRESULT (STDMETHODCALLTYPE *SetMediaTime)( 2893 IMediaSample2* This, 2894 LONGLONG *pTimeStart, 2895 LONGLONG *pTimeEnd); 2896 2897 /*** IMediaSample2 methods ***/ 2898 HRESULT (STDMETHODCALLTYPE *GetProperties)( 2899 IMediaSample2* This, 2900 DWORD cbProperties, 2901 BYTE *pbProperties); 2902 2903 HRESULT (STDMETHODCALLTYPE *SetProperties)( 2904 IMediaSample2* This, 2905 DWORD cbProperties, 2906 const BYTE *pbProperties); 2907 2908 END_INTERFACE 2909 } IMediaSample2Vtbl; 2910 interface IMediaSample2 { 2911 CONST_VTBL IMediaSample2Vtbl* lpVtbl; 2912 }; 2913 2914 #ifdef COBJMACROS 2915 #ifndef WIDL_C_INLINE_WRAPPERS 2916 /*** IUnknown methods ***/ 2917 #define IMediaSample2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2918 #define IMediaSample2_AddRef(This) (This)->lpVtbl->AddRef(This) 2919 #define IMediaSample2_Release(This) (This)->lpVtbl->Release(This) 2920 /*** IMediaSample methods ***/ 2921 #define IMediaSample2_GetPointer(This,ppBuffer) (This)->lpVtbl->GetPointer(This,ppBuffer) 2922 #define IMediaSample2_GetSize(This) (This)->lpVtbl->GetSize(This) 2923 #define IMediaSample2_GetTime(This,pTimeStart,pTimeEnd) (This)->lpVtbl->GetTime(This,pTimeStart,pTimeEnd) 2924 #define IMediaSample2_SetTime(This,pTimeStart,pTimeEnd) (This)->lpVtbl->SetTime(This,pTimeStart,pTimeEnd) 2925 #define IMediaSample2_IsSyncPoint(This) (This)->lpVtbl->IsSyncPoint(This) 2926 #define IMediaSample2_SetSyncPoint(This,bIsSyncPoint) (This)->lpVtbl->SetSyncPoint(This,bIsSyncPoint) 2927 #define IMediaSample2_IsPreroll(This) (This)->lpVtbl->IsPreroll(This) 2928 #define IMediaSample2_SetPreroll(This,bIsPreroll) (This)->lpVtbl->SetPreroll(This,bIsPreroll) 2929 #define IMediaSample2_GetActualDataLength(This) (This)->lpVtbl->GetActualDataLength(This) 2930 #define IMediaSample2_SetActualDataLength(This,a) (This)->lpVtbl->SetActualDataLength(This,a) 2931 #define IMediaSample2_GetMediaType(This,ppMediaType) (This)->lpVtbl->GetMediaType(This,ppMediaType) 2932 #define IMediaSample2_SetMediaType(This,pMediaType) (This)->lpVtbl->SetMediaType(This,pMediaType) 2933 #define IMediaSample2_IsDiscontinuity(This) (This)->lpVtbl->IsDiscontinuity(This) 2934 #define IMediaSample2_SetDiscontinuity(This,bDiscontinuity) (This)->lpVtbl->SetDiscontinuity(This,bDiscontinuity) 2935 #define IMediaSample2_GetMediaTime(This,pTimeStart,pTimeEnd) (This)->lpVtbl->GetMediaTime(This,pTimeStart,pTimeEnd) 2936 #define IMediaSample2_SetMediaTime(This,pTimeStart,pTimeEnd) (This)->lpVtbl->SetMediaTime(This,pTimeStart,pTimeEnd) 2937 /*** IMediaSample2 methods ***/ 2938 #define IMediaSample2_GetProperties(This,cbProperties,pbProperties) (This)->lpVtbl->GetProperties(This,cbProperties,pbProperties) 2939 #define IMediaSample2_SetProperties(This,cbProperties,pbProperties) (This)->lpVtbl->SetProperties(This,cbProperties,pbProperties) 2940 #else 2941 /*** IUnknown methods ***/ 2942 static FORCEINLINE HRESULT IMediaSample2_QueryInterface(IMediaSample2* This,REFIID riid,void **ppvObject) { 2943 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2944 } 2945 static FORCEINLINE ULONG IMediaSample2_AddRef(IMediaSample2* This) { 2946 return This->lpVtbl->AddRef(This); 2947 } 2948 static FORCEINLINE ULONG IMediaSample2_Release(IMediaSample2* This) { 2949 return This->lpVtbl->Release(This); 2950 } 2951 /*** IMediaSample methods ***/ 2952 static FORCEINLINE HRESULT IMediaSample2_GetPointer(IMediaSample2* This,BYTE **ppBuffer) { 2953 return This->lpVtbl->GetPointer(This,ppBuffer); 2954 } 2955 static FORCEINLINE LONG IMediaSample2_GetSize(IMediaSample2* This) { 2956 return This->lpVtbl->GetSize(This); 2957 } 2958 static FORCEINLINE HRESULT IMediaSample2_GetTime(IMediaSample2* This,REFERENCE_TIME *pTimeStart,REFERENCE_TIME *pTimeEnd) { 2959 return This->lpVtbl->GetTime(This,pTimeStart,pTimeEnd); 2960 } 2961 static FORCEINLINE HRESULT IMediaSample2_SetTime(IMediaSample2* This,REFERENCE_TIME *pTimeStart,REFERENCE_TIME *pTimeEnd) { 2962 return This->lpVtbl->SetTime(This,pTimeStart,pTimeEnd); 2963 } 2964 static FORCEINLINE HRESULT IMediaSample2_IsSyncPoint(IMediaSample2* This) { 2965 return This->lpVtbl->IsSyncPoint(This); 2966 } 2967 static FORCEINLINE HRESULT IMediaSample2_SetSyncPoint(IMediaSample2* This,WINBOOL bIsSyncPoint) { 2968 return This->lpVtbl->SetSyncPoint(This,bIsSyncPoint); 2969 } 2970 static FORCEINLINE HRESULT IMediaSample2_IsPreroll(IMediaSample2* This) { 2971 return This->lpVtbl->IsPreroll(This); 2972 } 2973 static FORCEINLINE HRESULT IMediaSample2_SetPreroll(IMediaSample2* This,WINBOOL bIsPreroll) { 2974 return This->lpVtbl->SetPreroll(This,bIsPreroll); 2975 } 2976 static FORCEINLINE LONG IMediaSample2_GetActualDataLength(IMediaSample2* This) { 2977 return This->lpVtbl->GetActualDataLength(This); 2978 } 2979 static FORCEINLINE HRESULT IMediaSample2_SetActualDataLength(IMediaSample2* This,LONG a) { 2980 return This->lpVtbl->SetActualDataLength(This,a); 2981 } 2982 static FORCEINLINE HRESULT IMediaSample2_GetMediaType(IMediaSample2* This,AM_MEDIA_TYPE **ppMediaType) { 2983 return This->lpVtbl->GetMediaType(This,ppMediaType); 2984 } 2985 static FORCEINLINE HRESULT IMediaSample2_SetMediaType(IMediaSample2* This,AM_MEDIA_TYPE *pMediaType) { 2986 return This->lpVtbl->SetMediaType(This,pMediaType); 2987 } 2988 static FORCEINLINE HRESULT IMediaSample2_IsDiscontinuity(IMediaSample2* This) { 2989 return This->lpVtbl->IsDiscontinuity(This); 2990 } 2991 static FORCEINLINE HRESULT IMediaSample2_SetDiscontinuity(IMediaSample2* This,WINBOOL bDiscontinuity) { 2992 return This->lpVtbl->SetDiscontinuity(This,bDiscontinuity); 2993 } 2994 static FORCEINLINE HRESULT IMediaSample2_GetMediaTime(IMediaSample2* This,LONGLONG *pTimeStart,LONGLONG *pTimeEnd) { 2995 return This->lpVtbl->GetMediaTime(This,pTimeStart,pTimeEnd); 2996 } 2997 static FORCEINLINE HRESULT IMediaSample2_SetMediaTime(IMediaSample2* This,LONGLONG *pTimeStart,LONGLONG *pTimeEnd) { 2998 return This->lpVtbl->SetMediaTime(This,pTimeStart,pTimeEnd); 2999 } 3000 /*** IMediaSample2 methods ***/ 3001 static FORCEINLINE HRESULT IMediaSample2_GetProperties(IMediaSample2* This,DWORD cbProperties,BYTE *pbProperties) { 3002 return This->lpVtbl->GetProperties(This,cbProperties,pbProperties); 3003 } 3004 static FORCEINLINE HRESULT IMediaSample2_SetProperties(IMediaSample2* This,DWORD cbProperties,const BYTE *pbProperties) { 3005 return This->lpVtbl->SetProperties(This,cbProperties,pbProperties); 3006 } 3007 #endif 3008 #endif 3009 3010 #endif 3011 3012 HRESULT STDMETHODCALLTYPE IMediaSample2_GetProperties_Proxy( 3013 IMediaSample2* This, 3014 DWORD cbProperties, 3015 BYTE *pbProperties); 3016 void __RPC_STUB IMediaSample2_GetProperties_Stub( 3017 IRpcStubBuffer* This, 3018 IRpcChannelBuffer* pRpcChannelBuffer, 3019 PRPC_MESSAGE pRpcMessage, 3020 DWORD* pdwStubPhase); 3021 HRESULT STDMETHODCALLTYPE IMediaSample2_SetProperties_Proxy( 3022 IMediaSample2* This, 3023 DWORD cbProperties, 3024 const BYTE *pbProperties); 3025 void __RPC_STUB IMediaSample2_SetProperties_Stub( 3026 IRpcStubBuffer* This, 3027 IRpcChannelBuffer* pRpcChannelBuffer, 3028 PRPC_MESSAGE pRpcMessage, 3029 DWORD* pdwStubPhase); 3030 3031 #endif /* __IMediaSample2_INTERFACE_DEFINED__ */ 3032 3033 typedef IMediaSample2 *PMEDIASAMPLE2; 3034 3035 /***************************************************************************** 3036 * IMediaSample2Config interface 3037 */ 3038 #ifndef __IMediaSample2Config_INTERFACE_DEFINED__ 3039 #define __IMediaSample2Config_INTERFACE_DEFINED__ 3040 3041 DEFINE_GUID(IID_IMediaSample2Config, 0x68961e68, 0x832b, 0x41ea, 0xbc,0x91, 0x63,0x59,0x3f,0x3e,0x70,0xe3); 3042 #if defined(__cplusplus) && !defined(CINTERFACE) 3043 MIDL_INTERFACE("68961e68-832b-41ea-bc91-63593f3e70e3") 3044 IMediaSample2Config : public IUnknown 3045 { 3046 virtual HRESULT STDMETHODCALLTYPE GetSurface( 3047 IUnknown **ppDirect3DSurface9) = 0; 3048 3049 }; 3050 #ifdef __CRT_UUID_DECL 3051 __CRT_UUID_DECL(IMediaSample2Config, 0x68961e68, 0x832b, 0x41ea, 0xbc,0x91, 0x63,0x59,0x3f,0x3e,0x70,0xe3) 3052 #endif 3053 #else 3054 typedef struct IMediaSample2ConfigVtbl { 3055 BEGIN_INTERFACE 3056 3057 /*** IUnknown methods ***/ 3058 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3059 IMediaSample2Config* This, 3060 REFIID riid, 3061 void **ppvObject); 3062 3063 ULONG (STDMETHODCALLTYPE *AddRef)( 3064 IMediaSample2Config* This); 3065 3066 ULONG (STDMETHODCALLTYPE *Release)( 3067 IMediaSample2Config* This); 3068 3069 /*** IMediaSample2Config methods ***/ 3070 HRESULT (STDMETHODCALLTYPE *GetSurface)( 3071 IMediaSample2Config* This, 3072 IUnknown **ppDirect3DSurface9); 3073 3074 END_INTERFACE 3075 } IMediaSample2ConfigVtbl; 3076 interface IMediaSample2Config { 3077 CONST_VTBL IMediaSample2ConfigVtbl* lpVtbl; 3078 }; 3079 3080 #ifdef COBJMACROS 3081 #ifndef WIDL_C_INLINE_WRAPPERS 3082 /*** IUnknown methods ***/ 3083 #define IMediaSample2Config_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3084 #define IMediaSample2Config_AddRef(This) (This)->lpVtbl->AddRef(This) 3085 #define IMediaSample2Config_Release(This) (This)->lpVtbl->Release(This) 3086 /*** IMediaSample2Config methods ***/ 3087 #define IMediaSample2Config_GetSurface(This,ppDirect3DSurface9) (This)->lpVtbl->GetSurface(This,ppDirect3DSurface9) 3088 #else 3089 /*** IUnknown methods ***/ 3090 static FORCEINLINE HRESULT IMediaSample2Config_QueryInterface(IMediaSample2Config* This,REFIID riid,void **ppvObject) { 3091 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3092 } 3093 static FORCEINLINE ULONG IMediaSample2Config_AddRef(IMediaSample2Config* This) { 3094 return This->lpVtbl->AddRef(This); 3095 } 3096 static FORCEINLINE ULONG IMediaSample2Config_Release(IMediaSample2Config* This) { 3097 return This->lpVtbl->Release(This); 3098 } 3099 /*** IMediaSample2Config methods ***/ 3100 static FORCEINLINE HRESULT IMediaSample2Config_GetSurface(IMediaSample2Config* This,IUnknown **ppDirect3DSurface9) { 3101 return This->lpVtbl->GetSurface(This,ppDirect3DSurface9); 3102 } 3103 #endif 3104 #endif 3105 3106 #endif 3107 3108 HRESULT STDMETHODCALLTYPE IMediaSample2Config_GetSurface_Proxy( 3109 IMediaSample2Config* This, 3110 IUnknown **ppDirect3DSurface9); 3111 void __RPC_STUB IMediaSample2Config_GetSurface_Stub( 3112 IRpcStubBuffer* This, 3113 IRpcChannelBuffer* pRpcChannelBuffer, 3114 PRPC_MESSAGE pRpcMessage, 3115 DWORD* pdwStubPhase); 3116 3117 #endif /* __IMediaSample2Config_INTERFACE_DEFINED__ */ 3118 3119 3120 #define AM_GBF_PREVFRAMESKIPPED 1 3121 #define AM_GBF_NOTASYNCPOINT 2 3122 #define AM_GBF_NOWAIT 4 3123 #define AM_GBF_NODDSURFACELOCK 8 3124 3125 /***************************************************************************** 3126 * IMemAllocator interface 3127 */ 3128 #ifndef __IMemAllocator_INTERFACE_DEFINED__ 3129 #define __IMemAllocator_INTERFACE_DEFINED__ 3130 3131 DEFINE_GUID(IID_IMemAllocator, 0x56a8689c, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 3132 #if defined(__cplusplus) && !defined(CINTERFACE) 3133 MIDL_INTERFACE("56a8689c-0ad4-11ce-b03a-0020af0ba770") 3134 IMemAllocator : public IUnknown 3135 { 3136 virtual HRESULT STDMETHODCALLTYPE SetProperties( 3137 ALLOCATOR_PROPERTIES *pRequest, 3138 ALLOCATOR_PROPERTIES *pActual) = 0; 3139 3140 virtual HRESULT STDMETHODCALLTYPE GetProperties( 3141 ALLOCATOR_PROPERTIES *pProps) = 0; 3142 3143 virtual HRESULT STDMETHODCALLTYPE Commit( 3144 ) = 0; 3145 3146 virtual HRESULT STDMETHODCALLTYPE Decommit( 3147 ) = 0; 3148 3149 virtual HRESULT STDMETHODCALLTYPE GetBuffer( 3150 IMediaSample **ppBuffer, 3151 REFERENCE_TIME *pStartTime, 3152 REFERENCE_TIME *pEndTime, 3153 DWORD dwFlags) = 0; 3154 3155 virtual HRESULT STDMETHODCALLTYPE ReleaseBuffer( 3156 IMediaSample *pBuffer) = 0; 3157 3158 }; 3159 #ifdef __CRT_UUID_DECL 3160 __CRT_UUID_DECL(IMemAllocator, 0x56a8689c, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 3161 #endif 3162 #else 3163 typedef struct IMemAllocatorVtbl { 3164 BEGIN_INTERFACE 3165 3166 /*** IUnknown methods ***/ 3167 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3168 IMemAllocator* This, 3169 REFIID riid, 3170 void **ppvObject); 3171 3172 ULONG (STDMETHODCALLTYPE *AddRef)( 3173 IMemAllocator* This); 3174 3175 ULONG (STDMETHODCALLTYPE *Release)( 3176 IMemAllocator* This); 3177 3178 /*** IMemAllocator methods ***/ 3179 HRESULT (STDMETHODCALLTYPE *SetProperties)( 3180 IMemAllocator* This, 3181 ALLOCATOR_PROPERTIES *pRequest, 3182 ALLOCATOR_PROPERTIES *pActual); 3183 3184 HRESULT (STDMETHODCALLTYPE *GetProperties)( 3185 IMemAllocator* This, 3186 ALLOCATOR_PROPERTIES *pProps); 3187 3188 HRESULT (STDMETHODCALLTYPE *Commit)( 3189 IMemAllocator* This); 3190 3191 HRESULT (STDMETHODCALLTYPE *Decommit)( 3192 IMemAllocator* This); 3193 3194 HRESULT (STDMETHODCALLTYPE *GetBuffer)( 3195 IMemAllocator* This, 3196 IMediaSample **ppBuffer, 3197 REFERENCE_TIME *pStartTime, 3198 REFERENCE_TIME *pEndTime, 3199 DWORD dwFlags); 3200 3201 HRESULT (STDMETHODCALLTYPE *ReleaseBuffer)( 3202 IMemAllocator* This, 3203 IMediaSample *pBuffer); 3204 3205 END_INTERFACE 3206 } IMemAllocatorVtbl; 3207 interface IMemAllocator { 3208 CONST_VTBL IMemAllocatorVtbl* lpVtbl; 3209 }; 3210 3211 #ifdef COBJMACROS 3212 #ifndef WIDL_C_INLINE_WRAPPERS 3213 /*** IUnknown methods ***/ 3214 #define IMemAllocator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3215 #define IMemAllocator_AddRef(This) (This)->lpVtbl->AddRef(This) 3216 #define IMemAllocator_Release(This) (This)->lpVtbl->Release(This) 3217 /*** IMemAllocator methods ***/ 3218 #define IMemAllocator_SetProperties(This,pRequest,pActual) (This)->lpVtbl->SetProperties(This,pRequest,pActual) 3219 #define IMemAllocator_GetProperties(This,pProps) (This)->lpVtbl->GetProperties(This,pProps) 3220 #define IMemAllocator_Commit(This) (This)->lpVtbl->Commit(This) 3221 #define IMemAllocator_Decommit(This) (This)->lpVtbl->Decommit(This) 3222 #define IMemAllocator_GetBuffer(This,ppBuffer,pStartTime,pEndTime,dwFlags) (This)->lpVtbl->GetBuffer(This,ppBuffer,pStartTime,pEndTime,dwFlags) 3223 #define IMemAllocator_ReleaseBuffer(This,pBuffer) (This)->lpVtbl->ReleaseBuffer(This,pBuffer) 3224 #else 3225 /*** IUnknown methods ***/ 3226 static FORCEINLINE HRESULT IMemAllocator_QueryInterface(IMemAllocator* This,REFIID riid,void **ppvObject) { 3227 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3228 } 3229 static FORCEINLINE ULONG IMemAllocator_AddRef(IMemAllocator* This) { 3230 return This->lpVtbl->AddRef(This); 3231 } 3232 static FORCEINLINE ULONG IMemAllocator_Release(IMemAllocator* This) { 3233 return This->lpVtbl->Release(This); 3234 } 3235 /*** IMemAllocator methods ***/ 3236 static FORCEINLINE HRESULT IMemAllocator_SetProperties(IMemAllocator* This,ALLOCATOR_PROPERTIES *pRequest,ALLOCATOR_PROPERTIES *pActual) { 3237 return This->lpVtbl->SetProperties(This,pRequest,pActual); 3238 } 3239 static FORCEINLINE HRESULT IMemAllocator_GetProperties(IMemAllocator* This,ALLOCATOR_PROPERTIES *pProps) { 3240 return This->lpVtbl->GetProperties(This,pProps); 3241 } 3242 static FORCEINLINE HRESULT IMemAllocator_Commit(IMemAllocator* This) { 3243 return This->lpVtbl->Commit(This); 3244 } 3245 static FORCEINLINE HRESULT IMemAllocator_Decommit(IMemAllocator* This) { 3246 return This->lpVtbl->Decommit(This); 3247 } 3248 static FORCEINLINE HRESULT IMemAllocator_GetBuffer(IMemAllocator* This,IMediaSample **ppBuffer,REFERENCE_TIME *pStartTime,REFERENCE_TIME *pEndTime,DWORD dwFlags) { 3249 return This->lpVtbl->GetBuffer(This,ppBuffer,pStartTime,pEndTime,dwFlags); 3250 } 3251 static FORCEINLINE HRESULT IMemAllocator_ReleaseBuffer(IMemAllocator* This,IMediaSample *pBuffer) { 3252 return This->lpVtbl->ReleaseBuffer(This,pBuffer); 3253 } 3254 #endif 3255 #endif 3256 3257 #endif 3258 3259 HRESULT STDMETHODCALLTYPE IMemAllocator_SetProperties_Proxy( 3260 IMemAllocator* This, 3261 ALLOCATOR_PROPERTIES *pRequest, 3262 ALLOCATOR_PROPERTIES *pActual); 3263 void __RPC_STUB IMemAllocator_SetProperties_Stub( 3264 IRpcStubBuffer* This, 3265 IRpcChannelBuffer* pRpcChannelBuffer, 3266 PRPC_MESSAGE pRpcMessage, 3267 DWORD* pdwStubPhase); 3268 HRESULT STDMETHODCALLTYPE IMemAllocator_GetProperties_Proxy( 3269 IMemAllocator* This, 3270 ALLOCATOR_PROPERTIES *pProps); 3271 void __RPC_STUB IMemAllocator_GetProperties_Stub( 3272 IRpcStubBuffer* This, 3273 IRpcChannelBuffer* pRpcChannelBuffer, 3274 PRPC_MESSAGE pRpcMessage, 3275 DWORD* pdwStubPhase); 3276 HRESULT STDMETHODCALLTYPE IMemAllocator_Commit_Proxy( 3277 IMemAllocator* This); 3278 void __RPC_STUB IMemAllocator_Commit_Stub( 3279 IRpcStubBuffer* This, 3280 IRpcChannelBuffer* pRpcChannelBuffer, 3281 PRPC_MESSAGE pRpcMessage, 3282 DWORD* pdwStubPhase); 3283 HRESULT STDMETHODCALLTYPE IMemAllocator_Decommit_Proxy( 3284 IMemAllocator* This); 3285 void __RPC_STUB IMemAllocator_Decommit_Stub( 3286 IRpcStubBuffer* This, 3287 IRpcChannelBuffer* pRpcChannelBuffer, 3288 PRPC_MESSAGE pRpcMessage, 3289 DWORD* pdwStubPhase); 3290 HRESULT STDMETHODCALLTYPE IMemAllocator_GetBuffer_Proxy( 3291 IMemAllocator* This, 3292 IMediaSample **ppBuffer, 3293 REFERENCE_TIME *pStartTime, 3294 REFERENCE_TIME *pEndTime, 3295 DWORD dwFlags); 3296 void __RPC_STUB IMemAllocator_GetBuffer_Stub( 3297 IRpcStubBuffer* This, 3298 IRpcChannelBuffer* pRpcChannelBuffer, 3299 PRPC_MESSAGE pRpcMessage, 3300 DWORD* pdwStubPhase); 3301 HRESULT STDMETHODCALLTYPE IMemAllocator_ReleaseBuffer_Proxy( 3302 IMemAllocator* This, 3303 IMediaSample *pBuffer); 3304 void __RPC_STUB IMemAllocator_ReleaseBuffer_Stub( 3305 IRpcStubBuffer* This, 3306 IRpcChannelBuffer* pRpcChannelBuffer, 3307 PRPC_MESSAGE pRpcMessage, 3308 DWORD* pdwStubPhase); 3309 3310 #endif /* __IMemAllocator_INTERFACE_DEFINED__ */ 3311 3312 typedef IMemAllocator *PMEMALLOCATOR; 3313 3314 /***************************************************************************** 3315 * IMemAllocatorCallbackTemp interface 3316 */ 3317 #ifndef __IMemAllocatorCallbackTemp_INTERFACE_DEFINED__ 3318 #define __IMemAllocatorCallbackTemp_INTERFACE_DEFINED__ 3319 3320 DEFINE_GUID(IID_IMemAllocatorCallbackTemp, 0x379a0cf0, 0xc1de, 0x11d2, 0xab,0xf5, 0x00,0xa0,0xc9,0x05,0xf3,0x75); 3321 #if defined(__cplusplus) && !defined(CINTERFACE) 3322 MIDL_INTERFACE("379a0cf0-c1de-11d2-abf5-00a0c905f375") 3323 IMemAllocatorCallbackTemp : public IMemAllocator 3324 { 3325 virtual HRESULT STDMETHODCALLTYPE SetNotify( 3326 IMemAllocatorNotifyCallbackTemp *pNotify) = 0; 3327 3328 virtual HRESULT STDMETHODCALLTYPE GetFreeCount( 3329 LONG *plBuffersFree) = 0; 3330 3331 }; 3332 #ifdef __CRT_UUID_DECL 3333 __CRT_UUID_DECL(IMemAllocatorCallbackTemp, 0x379a0cf0, 0xc1de, 0x11d2, 0xab,0xf5, 0x00,0xa0,0xc9,0x05,0xf3,0x75) 3334 #endif 3335 #else 3336 typedef struct IMemAllocatorCallbackTempVtbl { 3337 BEGIN_INTERFACE 3338 3339 /*** IUnknown methods ***/ 3340 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3341 IMemAllocatorCallbackTemp* This, 3342 REFIID riid, 3343 void **ppvObject); 3344 3345 ULONG (STDMETHODCALLTYPE *AddRef)( 3346 IMemAllocatorCallbackTemp* This); 3347 3348 ULONG (STDMETHODCALLTYPE *Release)( 3349 IMemAllocatorCallbackTemp* This); 3350 3351 /*** IMemAllocator methods ***/ 3352 HRESULT (STDMETHODCALLTYPE *SetProperties)( 3353 IMemAllocatorCallbackTemp* This, 3354 ALLOCATOR_PROPERTIES *pRequest, 3355 ALLOCATOR_PROPERTIES *pActual); 3356 3357 HRESULT (STDMETHODCALLTYPE *GetProperties)( 3358 IMemAllocatorCallbackTemp* This, 3359 ALLOCATOR_PROPERTIES *pProps); 3360 3361 HRESULT (STDMETHODCALLTYPE *Commit)( 3362 IMemAllocatorCallbackTemp* This); 3363 3364 HRESULT (STDMETHODCALLTYPE *Decommit)( 3365 IMemAllocatorCallbackTemp* This); 3366 3367 HRESULT (STDMETHODCALLTYPE *GetBuffer)( 3368 IMemAllocatorCallbackTemp* This, 3369 IMediaSample **ppBuffer, 3370 REFERENCE_TIME *pStartTime, 3371 REFERENCE_TIME *pEndTime, 3372 DWORD dwFlags); 3373 3374 HRESULT (STDMETHODCALLTYPE *ReleaseBuffer)( 3375 IMemAllocatorCallbackTemp* This, 3376 IMediaSample *pBuffer); 3377 3378 /*** IMemAllocatorCallbackTemp methods ***/ 3379 HRESULT (STDMETHODCALLTYPE *SetNotify)( 3380 IMemAllocatorCallbackTemp* This, 3381 IMemAllocatorNotifyCallbackTemp *pNotify); 3382 3383 HRESULT (STDMETHODCALLTYPE *GetFreeCount)( 3384 IMemAllocatorCallbackTemp* This, 3385 LONG *plBuffersFree); 3386 3387 END_INTERFACE 3388 } IMemAllocatorCallbackTempVtbl; 3389 interface IMemAllocatorCallbackTemp { 3390 CONST_VTBL IMemAllocatorCallbackTempVtbl* lpVtbl; 3391 }; 3392 3393 #ifdef COBJMACROS 3394 #ifndef WIDL_C_INLINE_WRAPPERS 3395 /*** IUnknown methods ***/ 3396 #define IMemAllocatorCallbackTemp_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3397 #define IMemAllocatorCallbackTemp_AddRef(This) (This)->lpVtbl->AddRef(This) 3398 #define IMemAllocatorCallbackTemp_Release(This) (This)->lpVtbl->Release(This) 3399 /*** IMemAllocator methods ***/ 3400 #define IMemAllocatorCallbackTemp_SetProperties(This,pRequest,pActual) (This)->lpVtbl->SetProperties(This,pRequest,pActual) 3401 #define IMemAllocatorCallbackTemp_GetProperties(This,pProps) (This)->lpVtbl->GetProperties(This,pProps) 3402 #define IMemAllocatorCallbackTemp_Commit(This) (This)->lpVtbl->Commit(This) 3403 #define IMemAllocatorCallbackTemp_Decommit(This) (This)->lpVtbl->Decommit(This) 3404 #define IMemAllocatorCallbackTemp_GetBuffer(This,ppBuffer,pStartTime,pEndTime,dwFlags) (This)->lpVtbl->GetBuffer(This,ppBuffer,pStartTime,pEndTime,dwFlags) 3405 #define IMemAllocatorCallbackTemp_ReleaseBuffer(This,pBuffer) (This)->lpVtbl->ReleaseBuffer(This,pBuffer) 3406 /*** IMemAllocatorCallbackTemp methods ***/ 3407 #define IMemAllocatorCallbackTemp_SetNotify(This,pNotify) (This)->lpVtbl->SetNotify(This,pNotify) 3408 #define IMemAllocatorCallbackTemp_GetFreeCount(This,plBuffersFree) (This)->lpVtbl->GetFreeCount(This,plBuffersFree) 3409 #else 3410 /*** IUnknown methods ***/ 3411 static FORCEINLINE HRESULT IMemAllocatorCallbackTemp_QueryInterface(IMemAllocatorCallbackTemp* This,REFIID riid,void **ppvObject) { 3412 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3413 } 3414 static FORCEINLINE ULONG IMemAllocatorCallbackTemp_AddRef(IMemAllocatorCallbackTemp* This) { 3415 return This->lpVtbl->AddRef(This); 3416 } 3417 static FORCEINLINE ULONG IMemAllocatorCallbackTemp_Release(IMemAllocatorCallbackTemp* This) { 3418 return This->lpVtbl->Release(This); 3419 } 3420 /*** IMemAllocator methods ***/ 3421 static FORCEINLINE HRESULT IMemAllocatorCallbackTemp_SetProperties(IMemAllocatorCallbackTemp* This,ALLOCATOR_PROPERTIES *pRequest,ALLOCATOR_PROPERTIES *pActual) { 3422 return This->lpVtbl->SetProperties(This,pRequest,pActual); 3423 } 3424 static FORCEINLINE HRESULT IMemAllocatorCallbackTemp_GetProperties(IMemAllocatorCallbackTemp* This,ALLOCATOR_PROPERTIES *pProps) { 3425 return This->lpVtbl->GetProperties(This,pProps); 3426 } 3427 static FORCEINLINE HRESULT IMemAllocatorCallbackTemp_Commit(IMemAllocatorCallbackTemp* This) { 3428 return This->lpVtbl->Commit(This); 3429 } 3430 static FORCEINLINE HRESULT IMemAllocatorCallbackTemp_Decommit(IMemAllocatorCallbackTemp* This) { 3431 return This->lpVtbl->Decommit(This); 3432 } 3433 static FORCEINLINE HRESULT IMemAllocatorCallbackTemp_GetBuffer(IMemAllocatorCallbackTemp* This,IMediaSample **ppBuffer,REFERENCE_TIME *pStartTime,REFERENCE_TIME *pEndTime,DWORD dwFlags) { 3434 return This->lpVtbl->GetBuffer(This,ppBuffer,pStartTime,pEndTime,dwFlags); 3435 } 3436 static FORCEINLINE HRESULT IMemAllocatorCallbackTemp_ReleaseBuffer(IMemAllocatorCallbackTemp* This,IMediaSample *pBuffer) { 3437 return This->lpVtbl->ReleaseBuffer(This,pBuffer); 3438 } 3439 /*** IMemAllocatorCallbackTemp methods ***/ 3440 static FORCEINLINE HRESULT IMemAllocatorCallbackTemp_SetNotify(IMemAllocatorCallbackTemp* This,IMemAllocatorNotifyCallbackTemp *pNotify) { 3441 return This->lpVtbl->SetNotify(This,pNotify); 3442 } 3443 static FORCEINLINE HRESULT IMemAllocatorCallbackTemp_GetFreeCount(IMemAllocatorCallbackTemp* This,LONG *plBuffersFree) { 3444 return This->lpVtbl->GetFreeCount(This,plBuffersFree); 3445 } 3446 #endif 3447 #endif 3448 3449 #endif 3450 3451 HRESULT STDMETHODCALLTYPE IMemAllocatorCallbackTemp_SetNotify_Proxy( 3452 IMemAllocatorCallbackTemp* This, 3453 IMemAllocatorNotifyCallbackTemp *pNotify); 3454 void __RPC_STUB IMemAllocatorCallbackTemp_SetNotify_Stub( 3455 IRpcStubBuffer* This, 3456 IRpcChannelBuffer* pRpcChannelBuffer, 3457 PRPC_MESSAGE pRpcMessage, 3458 DWORD* pdwStubPhase); 3459 HRESULT STDMETHODCALLTYPE IMemAllocatorCallbackTemp_GetFreeCount_Proxy( 3460 IMemAllocatorCallbackTemp* This, 3461 LONG *plBuffersFree); 3462 void __RPC_STUB IMemAllocatorCallbackTemp_GetFreeCount_Stub( 3463 IRpcStubBuffer* This, 3464 IRpcChannelBuffer* pRpcChannelBuffer, 3465 PRPC_MESSAGE pRpcMessage, 3466 DWORD* pdwStubPhase); 3467 3468 #endif /* __IMemAllocatorCallbackTemp_INTERFACE_DEFINED__ */ 3469 3470 3471 /***************************************************************************** 3472 * IMemAllocatorNotifyCallbackTemp interface 3473 */ 3474 #ifndef __IMemAllocatorNotifyCallbackTemp_INTERFACE_DEFINED__ 3475 #define __IMemAllocatorNotifyCallbackTemp_INTERFACE_DEFINED__ 3476 3477 DEFINE_GUID(IID_IMemAllocatorNotifyCallbackTemp, 0x92980b30, 0xc1de, 0x11d2, 0xab,0xf5, 0x00,0xa0,0xc9,0x05,0xf3,0x75); 3478 #if defined(__cplusplus) && !defined(CINTERFACE) 3479 MIDL_INTERFACE("92980b30-c1de-11d2-abf5-00a0c905f375") 3480 IMemAllocatorNotifyCallbackTemp : public IUnknown 3481 { 3482 virtual HRESULT STDMETHODCALLTYPE NotifyRelease( 3483 ) = 0; 3484 3485 }; 3486 #ifdef __CRT_UUID_DECL 3487 __CRT_UUID_DECL(IMemAllocatorNotifyCallbackTemp, 0x92980b30, 0xc1de, 0x11d2, 0xab,0xf5, 0x00,0xa0,0xc9,0x05,0xf3,0x75) 3488 #endif 3489 #else 3490 typedef struct IMemAllocatorNotifyCallbackTempVtbl { 3491 BEGIN_INTERFACE 3492 3493 /*** IUnknown methods ***/ 3494 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3495 IMemAllocatorNotifyCallbackTemp* This, 3496 REFIID riid, 3497 void **ppvObject); 3498 3499 ULONG (STDMETHODCALLTYPE *AddRef)( 3500 IMemAllocatorNotifyCallbackTemp* This); 3501 3502 ULONG (STDMETHODCALLTYPE *Release)( 3503 IMemAllocatorNotifyCallbackTemp* This); 3504 3505 /*** IMemAllocatorNotifyCallbackTemp methods ***/ 3506 HRESULT (STDMETHODCALLTYPE *NotifyRelease)( 3507 IMemAllocatorNotifyCallbackTemp* This); 3508 3509 END_INTERFACE 3510 } IMemAllocatorNotifyCallbackTempVtbl; 3511 interface IMemAllocatorNotifyCallbackTemp { 3512 CONST_VTBL IMemAllocatorNotifyCallbackTempVtbl* lpVtbl; 3513 }; 3514 3515 #ifdef COBJMACROS 3516 #ifndef WIDL_C_INLINE_WRAPPERS 3517 /*** IUnknown methods ***/ 3518 #define IMemAllocatorNotifyCallbackTemp_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3519 #define IMemAllocatorNotifyCallbackTemp_AddRef(This) (This)->lpVtbl->AddRef(This) 3520 #define IMemAllocatorNotifyCallbackTemp_Release(This) (This)->lpVtbl->Release(This) 3521 /*** IMemAllocatorNotifyCallbackTemp methods ***/ 3522 #define IMemAllocatorNotifyCallbackTemp_NotifyRelease(This) (This)->lpVtbl->NotifyRelease(This) 3523 #else 3524 /*** IUnknown methods ***/ 3525 static FORCEINLINE HRESULT IMemAllocatorNotifyCallbackTemp_QueryInterface(IMemAllocatorNotifyCallbackTemp* This,REFIID riid,void **ppvObject) { 3526 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3527 } 3528 static FORCEINLINE ULONG IMemAllocatorNotifyCallbackTemp_AddRef(IMemAllocatorNotifyCallbackTemp* This) { 3529 return This->lpVtbl->AddRef(This); 3530 } 3531 static FORCEINLINE ULONG IMemAllocatorNotifyCallbackTemp_Release(IMemAllocatorNotifyCallbackTemp* This) { 3532 return This->lpVtbl->Release(This); 3533 } 3534 /*** IMemAllocatorNotifyCallbackTemp methods ***/ 3535 static FORCEINLINE HRESULT IMemAllocatorNotifyCallbackTemp_NotifyRelease(IMemAllocatorNotifyCallbackTemp* This) { 3536 return This->lpVtbl->NotifyRelease(This); 3537 } 3538 #endif 3539 #endif 3540 3541 #endif 3542 3543 HRESULT STDMETHODCALLTYPE IMemAllocatorNotifyCallbackTemp_NotifyRelease_Proxy( 3544 IMemAllocatorNotifyCallbackTemp* This); 3545 void __RPC_STUB IMemAllocatorNotifyCallbackTemp_NotifyRelease_Stub( 3546 IRpcStubBuffer* This, 3547 IRpcChannelBuffer* pRpcChannelBuffer, 3548 PRPC_MESSAGE pRpcMessage, 3549 DWORD* pdwStubPhase); 3550 3551 #endif /* __IMemAllocatorNotifyCallbackTemp_INTERFACE_DEFINED__ */ 3552 3553 3554 /***************************************************************************** 3555 * IMemInputPin interface 3556 */ 3557 #ifndef __IMemInputPin_INTERFACE_DEFINED__ 3558 #define __IMemInputPin_INTERFACE_DEFINED__ 3559 3560 DEFINE_GUID(IID_IMemInputPin, 0x56a8689d, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 3561 #if defined(__cplusplus) && !defined(CINTERFACE) 3562 MIDL_INTERFACE("56a8689d-0ad4-11ce-b03a-0020af0ba770") 3563 IMemInputPin : public IUnknown 3564 { 3565 virtual HRESULT STDMETHODCALLTYPE GetAllocator( 3566 IMemAllocator **ppAllocator) = 0; 3567 3568 virtual HRESULT STDMETHODCALLTYPE NotifyAllocator( 3569 IMemAllocator *pAllocator, 3570 WINBOOL bReadOnly) = 0; 3571 3572 virtual HRESULT STDMETHODCALLTYPE GetAllocatorRequirements( 3573 ALLOCATOR_PROPERTIES *pProps) = 0; 3574 3575 virtual HRESULT STDMETHODCALLTYPE Receive( 3576 IMediaSample *pSample) = 0; 3577 3578 virtual HRESULT STDMETHODCALLTYPE ReceiveMultiple( 3579 IMediaSample **pSamples, 3580 LONG nSamples, 3581 LONG *nSamplesProcessed) = 0; 3582 3583 virtual HRESULT STDMETHODCALLTYPE ReceiveCanBlock( 3584 ) = 0; 3585 3586 }; 3587 #ifdef __CRT_UUID_DECL 3588 __CRT_UUID_DECL(IMemInputPin, 0x56a8689d, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 3589 #endif 3590 #else 3591 typedef struct IMemInputPinVtbl { 3592 BEGIN_INTERFACE 3593 3594 /*** IUnknown methods ***/ 3595 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3596 IMemInputPin* This, 3597 REFIID riid, 3598 void **ppvObject); 3599 3600 ULONG (STDMETHODCALLTYPE *AddRef)( 3601 IMemInputPin* This); 3602 3603 ULONG (STDMETHODCALLTYPE *Release)( 3604 IMemInputPin* This); 3605 3606 /*** IMemInputPin methods ***/ 3607 HRESULT (STDMETHODCALLTYPE *GetAllocator)( 3608 IMemInputPin* This, 3609 IMemAllocator **ppAllocator); 3610 3611 HRESULT (STDMETHODCALLTYPE *NotifyAllocator)( 3612 IMemInputPin* This, 3613 IMemAllocator *pAllocator, 3614 WINBOOL bReadOnly); 3615 3616 HRESULT (STDMETHODCALLTYPE *GetAllocatorRequirements)( 3617 IMemInputPin* This, 3618 ALLOCATOR_PROPERTIES *pProps); 3619 3620 HRESULT (STDMETHODCALLTYPE *Receive)( 3621 IMemInputPin* This, 3622 IMediaSample *pSample); 3623 3624 HRESULT (STDMETHODCALLTYPE *ReceiveMultiple)( 3625 IMemInputPin* This, 3626 IMediaSample **pSamples, 3627 LONG nSamples, 3628 LONG *nSamplesProcessed); 3629 3630 HRESULT (STDMETHODCALLTYPE *ReceiveCanBlock)( 3631 IMemInputPin* This); 3632 3633 END_INTERFACE 3634 } IMemInputPinVtbl; 3635 interface IMemInputPin { 3636 CONST_VTBL IMemInputPinVtbl* lpVtbl; 3637 }; 3638 3639 #ifdef COBJMACROS 3640 #ifndef WIDL_C_INLINE_WRAPPERS 3641 /*** IUnknown methods ***/ 3642 #define IMemInputPin_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3643 #define IMemInputPin_AddRef(This) (This)->lpVtbl->AddRef(This) 3644 #define IMemInputPin_Release(This) (This)->lpVtbl->Release(This) 3645 /*** IMemInputPin methods ***/ 3646 #define IMemInputPin_GetAllocator(This,ppAllocator) (This)->lpVtbl->GetAllocator(This,ppAllocator) 3647 #define IMemInputPin_NotifyAllocator(This,pAllocator,bReadOnly) (This)->lpVtbl->NotifyAllocator(This,pAllocator,bReadOnly) 3648 #define IMemInputPin_GetAllocatorRequirements(This,pProps) (This)->lpVtbl->GetAllocatorRequirements(This,pProps) 3649 #define IMemInputPin_Receive(This,pSample) (This)->lpVtbl->Receive(This,pSample) 3650 #define IMemInputPin_ReceiveMultiple(This,pSamples,nSamples,nSamplesProcessed) (This)->lpVtbl->ReceiveMultiple(This,pSamples,nSamples,nSamplesProcessed) 3651 #define IMemInputPin_ReceiveCanBlock(This) (This)->lpVtbl->ReceiveCanBlock(This) 3652 #else 3653 /*** IUnknown methods ***/ 3654 static FORCEINLINE HRESULT IMemInputPin_QueryInterface(IMemInputPin* This,REFIID riid,void **ppvObject) { 3655 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3656 } 3657 static FORCEINLINE ULONG IMemInputPin_AddRef(IMemInputPin* This) { 3658 return This->lpVtbl->AddRef(This); 3659 } 3660 static FORCEINLINE ULONG IMemInputPin_Release(IMemInputPin* This) { 3661 return This->lpVtbl->Release(This); 3662 } 3663 /*** IMemInputPin methods ***/ 3664 static FORCEINLINE HRESULT IMemInputPin_GetAllocator(IMemInputPin* This,IMemAllocator **ppAllocator) { 3665 return This->lpVtbl->GetAllocator(This,ppAllocator); 3666 } 3667 static FORCEINLINE HRESULT IMemInputPin_NotifyAllocator(IMemInputPin* This,IMemAllocator *pAllocator,WINBOOL bReadOnly) { 3668 return This->lpVtbl->NotifyAllocator(This,pAllocator,bReadOnly); 3669 } 3670 static FORCEINLINE HRESULT IMemInputPin_GetAllocatorRequirements(IMemInputPin* This,ALLOCATOR_PROPERTIES *pProps) { 3671 return This->lpVtbl->GetAllocatorRequirements(This,pProps); 3672 } 3673 static FORCEINLINE HRESULT IMemInputPin_Receive(IMemInputPin* This,IMediaSample *pSample) { 3674 return This->lpVtbl->Receive(This,pSample); 3675 } 3676 static FORCEINLINE HRESULT IMemInputPin_ReceiveMultiple(IMemInputPin* This,IMediaSample **pSamples,LONG nSamples,LONG *nSamplesProcessed) { 3677 return This->lpVtbl->ReceiveMultiple(This,pSamples,nSamples,nSamplesProcessed); 3678 } 3679 static FORCEINLINE HRESULT IMemInputPin_ReceiveCanBlock(IMemInputPin* This) { 3680 return This->lpVtbl->ReceiveCanBlock(This); 3681 } 3682 #endif 3683 #endif 3684 3685 #endif 3686 3687 HRESULT STDMETHODCALLTYPE IMemInputPin_GetAllocator_Proxy( 3688 IMemInputPin* This, 3689 IMemAllocator **ppAllocator); 3690 void __RPC_STUB IMemInputPin_GetAllocator_Stub( 3691 IRpcStubBuffer* This, 3692 IRpcChannelBuffer* pRpcChannelBuffer, 3693 PRPC_MESSAGE pRpcMessage, 3694 DWORD* pdwStubPhase); 3695 HRESULT STDMETHODCALLTYPE IMemInputPin_NotifyAllocator_Proxy( 3696 IMemInputPin* This, 3697 IMemAllocator *pAllocator, 3698 WINBOOL bReadOnly); 3699 void __RPC_STUB IMemInputPin_NotifyAllocator_Stub( 3700 IRpcStubBuffer* This, 3701 IRpcChannelBuffer* pRpcChannelBuffer, 3702 PRPC_MESSAGE pRpcMessage, 3703 DWORD* pdwStubPhase); 3704 HRESULT STDMETHODCALLTYPE IMemInputPin_GetAllocatorRequirements_Proxy( 3705 IMemInputPin* This, 3706 ALLOCATOR_PROPERTIES *pProps); 3707 void __RPC_STUB IMemInputPin_GetAllocatorRequirements_Stub( 3708 IRpcStubBuffer* This, 3709 IRpcChannelBuffer* pRpcChannelBuffer, 3710 PRPC_MESSAGE pRpcMessage, 3711 DWORD* pdwStubPhase); 3712 HRESULT STDMETHODCALLTYPE IMemInputPin_Receive_Proxy( 3713 IMemInputPin* This, 3714 IMediaSample *pSample); 3715 void __RPC_STUB IMemInputPin_Receive_Stub( 3716 IRpcStubBuffer* This, 3717 IRpcChannelBuffer* pRpcChannelBuffer, 3718 PRPC_MESSAGE pRpcMessage, 3719 DWORD* pdwStubPhase); 3720 HRESULT STDMETHODCALLTYPE IMemInputPin_ReceiveMultiple_Proxy( 3721 IMemInputPin* This, 3722 IMediaSample **pSamples, 3723 LONG nSamples, 3724 LONG *nSamplesProcessed); 3725 void __RPC_STUB IMemInputPin_ReceiveMultiple_Stub( 3726 IRpcStubBuffer* This, 3727 IRpcChannelBuffer* pRpcChannelBuffer, 3728 PRPC_MESSAGE pRpcMessage, 3729 DWORD* pdwStubPhase); 3730 HRESULT STDMETHODCALLTYPE IMemInputPin_ReceiveCanBlock_Proxy( 3731 IMemInputPin* This); 3732 void __RPC_STUB IMemInputPin_ReceiveCanBlock_Stub( 3733 IRpcStubBuffer* This, 3734 IRpcChannelBuffer* pRpcChannelBuffer, 3735 PRPC_MESSAGE pRpcMessage, 3736 DWORD* pdwStubPhase); 3737 3738 #endif /* __IMemInputPin_INTERFACE_DEFINED__ */ 3739 3740 typedef IMemInputPin *PMEMINPUTPIN; 3741 3742 /***************************************************************************** 3743 * IAMovieSetup interface 3744 */ 3745 #ifndef __IAMovieSetup_INTERFACE_DEFINED__ 3746 #define __IAMovieSetup_INTERFACE_DEFINED__ 3747 3748 DEFINE_GUID(IID_IAMovieSetup, 0xa3d8cec0, 0x7e5a, 0x11cf, 0xbb,0xc5, 0x00,0x80,0x5f,0x6c,0xef,0x20); 3749 #if defined(__cplusplus) && !defined(CINTERFACE) 3750 MIDL_INTERFACE("a3d8cec0-7e5a-11cf-bbc5-00805f6cef20") 3751 IAMovieSetup : public IUnknown 3752 { 3753 virtual HRESULT STDMETHODCALLTYPE Register( 3754 ) = 0; 3755 3756 virtual HRESULT STDMETHODCALLTYPE Unregister( 3757 ) = 0; 3758 3759 }; 3760 #ifdef __CRT_UUID_DECL 3761 __CRT_UUID_DECL(IAMovieSetup, 0xa3d8cec0, 0x7e5a, 0x11cf, 0xbb,0xc5, 0x00,0x80,0x5f,0x6c,0xef,0x20) 3762 #endif 3763 #else 3764 typedef struct IAMovieSetupVtbl { 3765 BEGIN_INTERFACE 3766 3767 /*** IUnknown methods ***/ 3768 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3769 IAMovieSetup* This, 3770 REFIID riid, 3771 void **ppvObject); 3772 3773 ULONG (STDMETHODCALLTYPE *AddRef)( 3774 IAMovieSetup* This); 3775 3776 ULONG (STDMETHODCALLTYPE *Release)( 3777 IAMovieSetup* This); 3778 3779 /*** IAMovieSetup methods ***/ 3780 HRESULT (STDMETHODCALLTYPE *Register)( 3781 IAMovieSetup* This); 3782 3783 HRESULT (STDMETHODCALLTYPE *Unregister)( 3784 IAMovieSetup* This); 3785 3786 END_INTERFACE 3787 } IAMovieSetupVtbl; 3788 interface IAMovieSetup { 3789 CONST_VTBL IAMovieSetupVtbl* lpVtbl; 3790 }; 3791 3792 #ifdef COBJMACROS 3793 #ifndef WIDL_C_INLINE_WRAPPERS 3794 /*** IUnknown methods ***/ 3795 #define IAMovieSetup_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3796 #define IAMovieSetup_AddRef(This) (This)->lpVtbl->AddRef(This) 3797 #define IAMovieSetup_Release(This) (This)->lpVtbl->Release(This) 3798 /*** IAMovieSetup methods ***/ 3799 #define IAMovieSetup_Register(This) (This)->lpVtbl->Register(This) 3800 #define IAMovieSetup_Unregister(This) (This)->lpVtbl->Unregister(This) 3801 #else 3802 /*** IUnknown methods ***/ 3803 static FORCEINLINE HRESULT IAMovieSetup_QueryInterface(IAMovieSetup* This,REFIID riid,void **ppvObject) { 3804 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3805 } 3806 static FORCEINLINE ULONG IAMovieSetup_AddRef(IAMovieSetup* This) { 3807 return This->lpVtbl->AddRef(This); 3808 } 3809 static FORCEINLINE ULONG IAMovieSetup_Release(IAMovieSetup* This) { 3810 return This->lpVtbl->Release(This); 3811 } 3812 /*** IAMovieSetup methods ***/ 3813 static FORCEINLINE HRESULT IAMovieSetup_Register(IAMovieSetup* This) { 3814 return This->lpVtbl->Register(This); 3815 } 3816 static FORCEINLINE HRESULT IAMovieSetup_Unregister(IAMovieSetup* This) { 3817 return This->lpVtbl->Unregister(This); 3818 } 3819 #endif 3820 #endif 3821 3822 #endif 3823 3824 HRESULT STDMETHODCALLTYPE IAMovieSetup_Register_Proxy( 3825 IAMovieSetup* This); 3826 void __RPC_STUB IAMovieSetup_Register_Stub( 3827 IRpcStubBuffer* This, 3828 IRpcChannelBuffer* pRpcChannelBuffer, 3829 PRPC_MESSAGE pRpcMessage, 3830 DWORD* pdwStubPhase); 3831 HRESULT STDMETHODCALLTYPE IAMovieSetup_Unregister_Proxy( 3832 IAMovieSetup* This); 3833 void __RPC_STUB IAMovieSetup_Unregister_Stub( 3834 IRpcStubBuffer* This, 3835 IRpcChannelBuffer* pRpcChannelBuffer, 3836 PRPC_MESSAGE pRpcMessage, 3837 DWORD* pdwStubPhase); 3838 3839 #endif /* __IAMovieSetup_INTERFACE_DEFINED__ */ 3840 3841 typedef IAMovieSetup *PAMOVIESETUP; 3842 3843 typedef enum AM_SEEKING_SeekingFlags { 3844 AM_SEEKING_NoPositioning = 0x0, 3845 AM_SEEKING_AbsolutePositioning = 0x1, 3846 AM_SEEKING_RelativePositioning = 0x2, 3847 AM_SEEKING_IncrementalPositioning = 0x3, 3848 AM_SEEKING_PositioningBitsMask = 0x3, 3849 AM_SEEKING_SeekToKeyFrame = 0x4, 3850 AM_SEEKING_ReturnTime = 0x8, 3851 AM_SEEKING_Segment = 0x10, 3852 AM_SEEKING_NoFlush = 0x20 3853 } AM_SEEKING_SEEKING_FLAGS; 3854 3855 typedef enum AM_SEEKING_SeekingCapabilities { 3856 AM_SEEKING_CanSeekAbsolute = 0x1, 3857 AM_SEEKING_CanSeekForwards = 0x2, 3858 AM_SEEKING_CanSeekBackwards = 0x4, 3859 AM_SEEKING_CanGetCurrentPos = 0x8, 3860 AM_SEEKING_CanGetStopPos = 0x10, 3861 AM_SEEKING_CanGetDuration = 0x20, 3862 AM_SEEKING_CanPlayBackwards = 0x40, 3863 AM_SEEKING_CanDoSegments = 0x80, 3864 AM_SEEKING_Source = 0x100 3865 } AM_SEEKING_SEEKING_CAPABILITIES; 3866 3867 /***************************************************************************** 3868 * IMediaSeeking interface 3869 */ 3870 #ifndef __IMediaSeeking_INTERFACE_DEFINED__ 3871 #define __IMediaSeeking_INTERFACE_DEFINED__ 3872 3873 DEFINE_GUID(IID_IMediaSeeking, 0x36b73880, 0xc2c8, 0x11cf, 0x8b,0x46, 0x00,0x80,0x5f,0x6c,0xef,0x60); 3874 #if defined(__cplusplus) && !defined(CINTERFACE) 3875 MIDL_INTERFACE("36b73880-c2c8-11cf-8b46-00805f6cef60") 3876 IMediaSeeking : public IUnknown 3877 { 3878 virtual HRESULT STDMETHODCALLTYPE GetCapabilities( 3879 DWORD *pCapabilities) = 0; 3880 3881 virtual HRESULT STDMETHODCALLTYPE CheckCapabilities( 3882 DWORD *pCapabilities) = 0; 3883 3884 virtual HRESULT STDMETHODCALLTYPE IsFormatSupported( 3885 const GUID *pFormat) = 0; 3886 3887 virtual HRESULT STDMETHODCALLTYPE QueryPreferredFormat( 3888 GUID *pFormat) = 0; 3889 3890 virtual HRESULT STDMETHODCALLTYPE GetTimeFormat( 3891 GUID *pFormat) = 0; 3892 3893 virtual HRESULT STDMETHODCALLTYPE IsUsingTimeFormat( 3894 const GUID *pFormat) = 0; 3895 3896 virtual HRESULT STDMETHODCALLTYPE SetTimeFormat( 3897 const GUID *pFormat) = 0; 3898 3899 virtual HRESULT STDMETHODCALLTYPE GetDuration( 3900 LONGLONG *pDuration) = 0; 3901 3902 virtual HRESULT STDMETHODCALLTYPE GetStopPosition( 3903 LONGLONG *pStop) = 0; 3904 3905 virtual HRESULT STDMETHODCALLTYPE GetCurrentPosition( 3906 LONGLONG *pCurrent) = 0; 3907 3908 virtual HRESULT STDMETHODCALLTYPE ConvertTimeFormat( 3909 LONGLONG *pTarget, 3910 const GUID *pTargetFormat, 3911 LONGLONG Source, 3912 const GUID *pSourceFormat) = 0; 3913 3914 virtual HRESULT STDMETHODCALLTYPE SetPositions( 3915 LONGLONG *pCurrent, 3916 DWORD dwCurrentFlags, 3917 LONGLONG *pStop, 3918 DWORD dwStopFlags) = 0; 3919 3920 virtual HRESULT STDMETHODCALLTYPE GetPositions( 3921 LONGLONG *pCurrent, 3922 LONGLONG *pStop) = 0; 3923 3924 virtual HRESULT STDMETHODCALLTYPE GetAvailable( 3925 LONGLONG *pEarliest, 3926 LONGLONG *pLatest) = 0; 3927 3928 virtual HRESULT STDMETHODCALLTYPE SetRate( 3929 double dRate) = 0; 3930 3931 virtual HRESULT STDMETHODCALLTYPE GetRate( 3932 double *pdRate) = 0; 3933 3934 virtual HRESULT STDMETHODCALLTYPE GetPreroll( 3935 LONGLONG *pllPreroll) = 0; 3936 3937 }; 3938 #ifdef __CRT_UUID_DECL 3939 __CRT_UUID_DECL(IMediaSeeking, 0x36b73880, 0xc2c8, 0x11cf, 0x8b,0x46, 0x00,0x80,0x5f,0x6c,0xef,0x60) 3940 #endif 3941 #else 3942 typedef struct IMediaSeekingVtbl { 3943 BEGIN_INTERFACE 3944 3945 /*** IUnknown methods ***/ 3946 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3947 IMediaSeeking* This, 3948 REFIID riid, 3949 void **ppvObject); 3950 3951 ULONG (STDMETHODCALLTYPE *AddRef)( 3952 IMediaSeeking* This); 3953 3954 ULONG (STDMETHODCALLTYPE *Release)( 3955 IMediaSeeking* This); 3956 3957 /*** IMediaSeeking methods ***/ 3958 HRESULT (STDMETHODCALLTYPE *GetCapabilities)( 3959 IMediaSeeking* This, 3960 DWORD *pCapabilities); 3961 3962 HRESULT (STDMETHODCALLTYPE *CheckCapabilities)( 3963 IMediaSeeking* This, 3964 DWORD *pCapabilities); 3965 3966 HRESULT (STDMETHODCALLTYPE *IsFormatSupported)( 3967 IMediaSeeking* This, 3968 const GUID *pFormat); 3969 3970 HRESULT (STDMETHODCALLTYPE *QueryPreferredFormat)( 3971 IMediaSeeking* This, 3972 GUID *pFormat); 3973 3974 HRESULT (STDMETHODCALLTYPE *GetTimeFormat)( 3975 IMediaSeeking* This, 3976 GUID *pFormat); 3977 3978 HRESULT (STDMETHODCALLTYPE *IsUsingTimeFormat)( 3979 IMediaSeeking* This, 3980 const GUID *pFormat); 3981 3982 HRESULT (STDMETHODCALLTYPE *SetTimeFormat)( 3983 IMediaSeeking* This, 3984 const GUID *pFormat); 3985 3986 HRESULT (STDMETHODCALLTYPE *GetDuration)( 3987 IMediaSeeking* This, 3988 LONGLONG *pDuration); 3989 3990 HRESULT (STDMETHODCALLTYPE *GetStopPosition)( 3991 IMediaSeeking* This, 3992 LONGLONG *pStop); 3993 3994 HRESULT (STDMETHODCALLTYPE *GetCurrentPosition)( 3995 IMediaSeeking* This, 3996 LONGLONG *pCurrent); 3997 3998 HRESULT (STDMETHODCALLTYPE *ConvertTimeFormat)( 3999 IMediaSeeking* This, 4000 LONGLONG *pTarget, 4001 const GUID *pTargetFormat, 4002 LONGLONG Source, 4003 const GUID *pSourceFormat); 4004 4005 HRESULT (STDMETHODCALLTYPE *SetPositions)( 4006 IMediaSeeking* This, 4007 LONGLONG *pCurrent, 4008 DWORD dwCurrentFlags, 4009 LONGLONG *pStop, 4010 DWORD dwStopFlags); 4011 4012 HRESULT (STDMETHODCALLTYPE *GetPositions)( 4013 IMediaSeeking* This, 4014 LONGLONG *pCurrent, 4015 LONGLONG *pStop); 4016 4017 HRESULT (STDMETHODCALLTYPE *GetAvailable)( 4018 IMediaSeeking* This, 4019 LONGLONG *pEarliest, 4020 LONGLONG *pLatest); 4021 4022 HRESULT (STDMETHODCALLTYPE *SetRate)( 4023 IMediaSeeking* This, 4024 double dRate); 4025 4026 HRESULT (STDMETHODCALLTYPE *GetRate)( 4027 IMediaSeeking* This, 4028 double *pdRate); 4029 4030 HRESULT (STDMETHODCALLTYPE *GetPreroll)( 4031 IMediaSeeking* This, 4032 LONGLONG *pllPreroll); 4033 4034 END_INTERFACE 4035 } IMediaSeekingVtbl; 4036 interface IMediaSeeking { 4037 CONST_VTBL IMediaSeekingVtbl* lpVtbl; 4038 }; 4039 4040 #ifdef COBJMACROS 4041 #ifndef WIDL_C_INLINE_WRAPPERS 4042 /*** IUnknown methods ***/ 4043 #define IMediaSeeking_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4044 #define IMediaSeeking_AddRef(This) (This)->lpVtbl->AddRef(This) 4045 #define IMediaSeeking_Release(This) (This)->lpVtbl->Release(This) 4046 /*** IMediaSeeking methods ***/ 4047 #define IMediaSeeking_GetCapabilities(This,pCapabilities) (This)->lpVtbl->GetCapabilities(This,pCapabilities) 4048 #define IMediaSeeking_CheckCapabilities(This,pCapabilities) (This)->lpVtbl->CheckCapabilities(This,pCapabilities) 4049 #define IMediaSeeking_IsFormatSupported(This,pFormat) (This)->lpVtbl->IsFormatSupported(This,pFormat) 4050 #define IMediaSeeking_QueryPreferredFormat(This,pFormat) (This)->lpVtbl->QueryPreferredFormat(This,pFormat) 4051 #define IMediaSeeking_GetTimeFormat(This,pFormat) (This)->lpVtbl->GetTimeFormat(This,pFormat) 4052 #define IMediaSeeking_IsUsingTimeFormat(This,pFormat) (This)->lpVtbl->IsUsingTimeFormat(This,pFormat) 4053 #define IMediaSeeking_SetTimeFormat(This,pFormat) (This)->lpVtbl->SetTimeFormat(This,pFormat) 4054 #define IMediaSeeking_GetDuration(This,pDuration) (This)->lpVtbl->GetDuration(This,pDuration) 4055 #define IMediaSeeking_GetStopPosition(This,pStop) (This)->lpVtbl->GetStopPosition(This,pStop) 4056 #define IMediaSeeking_GetCurrentPosition(This,pCurrent) (This)->lpVtbl->GetCurrentPosition(This,pCurrent) 4057 #define IMediaSeeking_ConvertTimeFormat(This,pTarget,pTargetFormat,Source,pSourceFormat) (This)->lpVtbl->ConvertTimeFormat(This,pTarget,pTargetFormat,Source,pSourceFormat) 4058 #define IMediaSeeking_SetPositions(This,pCurrent,dwCurrentFlags,pStop,dwStopFlags) (This)->lpVtbl->SetPositions(This,pCurrent,dwCurrentFlags,pStop,dwStopFlags) 4059 #define IMediaSeeking_GetPositions(This,pCurrent,pStop) (This)->lpVtbl->GetPositions(This,pCurrent,pStop) 4060 #define IMediaSeeking_GetAvailable(This,pEarliest,pLatest) (This)->lpVtbl->GetAvailable(This,pEarliest,pLatest) 4061 #define IMediaSeeking_SetRate(This,dRate) (This)->lpVtbl->SetRate(This,dRate) 4062 #define IMediaSeeking_GetRate(This,pdRate) (This)->lpVtbl->GetRate(This,pdRate) 4063 #define IMediaSeeking_GetPreroll(This,pllPreroll) (This)->lpVtbl->GetPreroll(This,pllPreroll) 4064 #else 4065 /*** IUnknown methods ***/ 4066 static FORCEINLINE HRESULT IMediaSeeking_QueryInterface(IMediaSeeking* This,REFIID riid,void **ppvObject) { 4067 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 4068 } 4069 static FORCEINLINE ULONG IMediaSeeking_AddRef(IMediaSeeking* This) { 4070 return This->lpVtbl->AddRef(This); 4071 } 4072 static FORCEINLINE ULONG IMediaSeeking_Release(IMediaSeeking* This) { 4073 return This->lpVtbl->Release(This); 4074 } 4075 /*** IMediaSeeking methods ***/ 4076 static FORCEINLINE HRESULT IMediaSeeking_GetCapabilities(IMediaSeeking* This,DWORD *pCapabilities) { 4077 return This->lpVtbl->GetCapabilities(This,pCapabilities); 4078 } 4079 static FORCEINLINE HRESULT IMediaSeeking_CheckCapabilities(IMediaSeeking* This,DWORD *pCapabilities) { 4080 return This->lpVtbl->CheckCapabilities(This,pCapabilities); 4081 } 4082 static FORCEINLINE HRESULT IMediaSeeking_IsFormatSupported(IMediaSeeking* This,const GUID *pFormat) { 4083 return This->lpVtbl->IsFormatSupported(This,pFormat); 4084 } 4085 static FORCEINLINE HRESULT IMediaSeeking_QueryPreferredFormat(IMediaSeeking* This,GUID *pFormat) { 4086 return This->lpVtbl->QueryPreferredFormat(This,pFormat); 4087 } 4088 static FORCEINLINE HRESULT IMediaSeeking_GetTimeFormat(IMediaSeeking* This,GUID *pFormat) { 4089 return This->lpVtbl->GetTimeFormat(This,pFormat); 4090 } 4091 static FORCEINLINE HRESULT IMediaSeeking_IsUsingTimeFormat(IMediaSeeking* This,const GUID *pFormat) { 4092 return This->lpVtbl->IsUsingTimeFormat(This,pFormat); 4093 } 4094 static FORCEINLINE HRESULT IMediaSeeking_SetTimeFormat(IMediaSeeking* This,const GUID *pFormat) { 4095 return This->lpVtbl->SetTimeFormat(This,pFormat); 4096 } 4097 static FORCEINLINE HRESULT IMediaSeeking_GetDuration(IMediaSeeking* This,LONGLONG *pDuration) { 4098 return This->lpVtbl->GetDuration(This,pDuration); 4099 } 4100 static FORCEINLINE HRESULT IMediaSeeking_GetStopPosition(IMediaSeeking* This,LONGLONG *pStop) { 4101 return This->lpVtbl->GetStopPosition(This,pStop); 4102 } 4103 static FORCEINLINE HRESULT IMediaSeeking_GetCurrentPosition(IMediaSeeking* This,LONGLONG *pCurrent) { 4104 return This->lpVtbl->GetCurrentPosition(This,pCurrent); 4105 } 4106 static FORCEINLINE HRESULT IMediaSeeking_ConvertTimeFormat(IMediaSeeking* This,LONGLONG *pTarget,const GUID *pTargetFormat,LONGLONG Source,const GUID *pSourceFormat) { 4107 return This->lpVtbl->ConvertTimeFormat(This,pTarget,pTargetFormat,Source,pSourceFormat); 4108 } 4109 static FORCEINLINE HRESULT IMediaSeeking_SetPositions(IMediaSeeking* This,LONGLONG *pCurrent,DWORD dwCurrentFlags,LONGLONG *pStop,DWORD dwStopFlags) { 4110 return This->lpVtbl->SetPositions(This,pCurrent,dwCurrentFlags,pStop,dwStopFlags); 4111 } 4112 static FORCEINLINE HRESULT IMediaSeeking_GetPositions(IMediaSeeking* This,LONGLONG *pCurrent,LONGLONG *pStop) { 4113 return This->lpVtbl->GetPositions(This,pCurrent,pStop); 4114 } 4115 static FORCEINLINE HRESULT IMediaSeeking_GetAvailable(IMediaSeeking* This,LONGLONG *pEarliest,LONGLONG *pLatest) { 4116 return This->lpVtbl->GetAvailable(This,pEarliest,pLatest); 4117 } 4118 static FORCEINLINE HRESULT IMediaSeeking_SetRate(IMediaSeeking* This,double dRate) { 4119 return This->lpVtbl->SetRate(This,dRate); 4120 } 4121 static FORCEINLINE HRESULT IMediaSeeking_GetRate(IMediaSeeking* This,double *pdRate) { 4122 return This->lpVtbl->GetRate(This,pdRate); 4123 } 4124 static FORCEINLINE HRESULT IMediaSeeking_GetPreroll(IMediaSeeking* This,LONGLONG *pllPreroll) { 4125 return This->lpVtbl->GetPreroll(This,pllPreroll); 4126 } 4127 #endif 4128 #endif 4129 4130 #endif 4131 4132 HRESULT STDMETHODCALLTYPE IMediaSeeking_GetCapabilities_Proxy( 4133 IMediaSeeking* This, 4134 DWORD *pCapabilities); 4135 void __RPC_STUB IMediaSeeking_GetCapabilities_Stub( 4136 IRpcStubBuffer* This, 4137 IRpcChannelBuffer* pRpcChannelBuffer, 4138 PRPC_MESSAGE pRpcMessage, 4139 DWORD* pdwStubPhase); 4140 HRESULT STDMETHODCALLTYPE IMediaSeeking_CheckCapabilities_Proxy( 4141 IMediaSeeking* This, 4142 DWORD *pCapabilities); 4143 void __RPC_STUB IMediaSeeking_CheckCapabilities_Stub( 4144 IRpcStubBuffer* This, 4145 IRpcChannelBuffer* pRpcChannelBuffer, 4146 PRPC_MESSAGE pRpcMessage, 4147 DWORD* pdwStubPhase); 4148 HRESULT STDMETHODCALLTYPE IMediaSeeking_IsFormatSupported_Proxy( 4149 IMediaSeeking* This, 4150 const GUID *pFormat); 4151 void __RPC_STUB IMediaSeeking_IsFormatSupported_Stub( 4152 IRpcStubBuffer* This, 4153 IRpcChannelBuffer* pRpcChannelBuffer, 4154 PRPC_MESSAGE pRpcMessage, 4155 DWORD* pdwStubPhase); 4156 HRESULT STDMETHODCALLTYPE IMediaSeeking_QueryPreferredFormat_Proxy( 4157 IMediaSeeking* This, 4158 GUID *pFormat); 4159 void __RPC_STUB IMediaSeeking_QueryPreferredFormat_Stub( 4160 IRpcStubBuffer* This, 4161 IRpcChannelBuffer* pRpcChannelBuffer, 4162 PRPC_MESSAGE pRpcMessage, 4163 DWORD* pdwStubPhase); 4164 HRESULT STDMETHODCALLTYPE IMediaSeeking_GetTimeFormat_Proxy( 4165 IMediaSeeking* This, 4166 GUID *pFormat); 4167 void __RPC_STUB IMediaSeeking_GetTimeFormat_Stub( 4168 IRpcStubBuffer* This, 4169 IRpcChannelBuffer* pRpcChannelBuffer, 4170 PRPC_MESSAGE pRpcMessage, 4171 DWORD* pdwStubPhase); 4172 HRESULT STDMETHODCALLTYPE IMediaSeeking_IsUsingTimeFormat_Proxy( 4173 IMediaSeeking* This, 4174 const GUID *pFormat); 4175 void __RPC_STUB IMediaSeeking_IsUsingTimeFormat_Stub( 4176 IRpcStubBuffer* This, 4177 IRpcChannelBuffer* pRpcChannelBuffer, 4178 PRPC_MESSAGE pRpcMessage, 4179 DWORD* pdwStubPhase); 4180 HRESULT STDMETHODCALLTYPE IMediaSeeking_SetTimeFormat_Proxy( 4181 IMediaSeeking* This, 4182 const GUID *pFormat); 4183 void __RPC_STUB IMediaSeeking_SetTimeFormat_Stub( 4184 IRpcStubBuffer* This, 4185 IRpcChannelBuffer* pRpcChannelBuffer, 4186 PRPC_MESSAGE pRpcMessage, 4187 DWORD* pdwStubPhase); 4188 HRESULT STDMETHODCALLTYPE IMediaSeeking_GetDuration_Proxy( 4189 IMediaSeeking* This, 4190 LONGLONG *pDuration); 4191 void __RPC_STUB IMediaSeeking_GetDuration_Stub( 4192 IRpcStubBuffer* This, 4193 IRpcChannelBuffer* pRpcChannelBuffer, 4194 PRPC_MESSAGE pRpcMessage, 4195 DWORD* pdwStubPhase); 4196 HRESULT STDMETHODCALLTYPE IMediaSeeking_GetStopPosition_Proxy( 4197 IMediaSeeking* This, 4198 LONGLONG *pStop); 4199 void __RPC_STUB IMediaSeeking_GetStopPosition_Stub( 4200 IRpcStubBuffer* This, 4201 IRpcChannelBuffer* pRpcChannelBuffer, 4202 PRPC_MESSAGE pRpcMessage, 4203 DWORD* pdwStubPhase); 4204 HRESULT STDMETHODCALLTYPE IMediaSeeking_GetCurrentPosition_Proxy( 4205 IMediaSeeking* This, 4206 LONGLONG *pCurrent); 4207 void __RPC_STUB IMediaSeeking_GetCurrentPosition_Stub( 4208 IRpcStubBuffer* This, 4209 IRpcChannelBuffer* pRpcChannelBuffer, 4210 PRPC_MESSAGE pRpcMessage, 4211 DWORD* pdwStubPhase); 4212 HRESULT STDMETHODCALLTYPE IMediaSeeking_ConvertTimeFormat_Proxy( 4213 IMediaSeeking* This, 4214 LONGLONG *pTarget, 4215 const GUID *pTargetFormat, 4216 LONGLONG Source, 4217 const GUID *pSourceFormat); 4218 void __RPC_STUB IMediaSeeking_ConvertTimeFormat_Stub( 4219 IRpcStubBuffer* This, 4220 IRpcChannelBuffer* pRpcChannelBuffer, 4221 PRPC_MESSAGE pRpcMessage, 4222 DWORD* pdwStubPhase); 4223 HRESULT STDMETHODCALLTYPE IMediaSeeking_SetPositions_Proxy( 4224 IMediaSeeking* This, 4225 LONGLONG *pCurrent, 4226 DWORD dwCurrentFlags, 4227 LONGLONG *pStop, 4228 DWORD dwStopFlags); 4229 void __RPC_STUB IMediaSeeking_SetPositions_Stub( 4230 IRpcStubBuffer* This, 4231 IRpcChannelBuffer* pRpcChannelBuffer, 4232 PRPC_MESSAGE pRpcMessage, 4233 DWORD* pdwStubPhase); 4234 HRESULT STDMETHODCALLTYPE IMediaSeeking_GetPositions_Proxy( 4235 IMediaSeeking* This, 4236 LONGLONG *pCurrent, 4237 LONGLONG *pStop); 4238 void __RPC_STUB IMediaSeeking_GetPositions_Stub( 4239 IRpcStubBuffer* This, 4240 IRpcChannelBuffer* pRpcChannelBuffer, 4241 PRPC_MESSAGE pRpcMessage, 4242 DWORD* pdwStubPhase); 4243 HRESULT STDMETHODCALLTYPE IMediaSeeking_GetAvailable_Proxy( 4244 IMediaSeeking* This, 4245 LONGLONG *pEarliest, 4246 LONGLONG *pLatest); 4247 void __RPC_STUB IMediaSeeking_GetAvailable_Stub( 4248 IRpcStubBuffer* This, 4249 IRpcChannelBuffer* pRpcChannelBuffer, 4250 PRPC_MESSAGE pRpcMessage, 4251 DWORD* pdwStubPhase); 4252 HRESULT STDMETHODCALLTYPE IMediaSeeking_SetRate_Proxy( 4253 IMediaSeeking* This, 4254 double dRate); 4255 void __RPC_STUB IMediaSeeking_SetRate_Stub( 4256 IRpcStubBuffer* This, 4257 IRpcChannelBuffer* pRpcChannelBuffer, 4258 PRPC_MESSAGE pRpcMessage, 4259 DWORD* pdwStubPhase); 4260 HRESULT STDMETHODCALLTYPE IMediaSeeking_GetRate_Proxy( 4261 IMediaSeeking* This, 4262 double *pdRate); 4263 void __RPC_STUB IMediaSeeking_GetRate_Stub( 4264 IRpcStubBuffer* This, 4265 IRpcChannelBuffer* pRpcChannelBuffer, 4266 PRPC_MESSAGE pRpcMessage, 4267 DWORD* pdwStubPhase); 4268 HRESULT STDMETHODCALLTYPE IMediaSeeking_GetPreroll_Proxy( 4269 IMediaSeeking* This, 4270 LONGLONG *pllPreroll); 4271 void __RPC_STUB IMediaSeeking_GetPreroll_Stub( 4272 IRpcStubBuffer* This, 4273 IRpcChannelBuffer* pRpcChannelBuffer, 4274 PRPC_MESSAGE pRpcMessage, 4275 DWORD* pdwStubPhase); 4276 4277 #endif /* __IMediaSeeking_INTERFACE_DEFINED__ */ 4278 4279 typedef IMediaSeeking *PMEDIASEEKING; 4280 4281 enum tagAM_MEDIAEVENT_FLAGS { 4282 AM_MEDIAEVENT_NONOTIFY = 0x1 4283 }; 4284 4285 #endif 4286 #ifndef __IAMAnalogVideoDecoder_FWD_DEFINED__ 4287 #define __IAMAnalogVideoDecoder_FWD_DEFINED__ 4288 typedef interface IAMAnalogVideoDecoder IAMAnalogVideoDecoder; 4289 #endif 4290 4291 #ifndef __IAMAnalogVideoEncoder_FWD_DEFINED__ 4292 #define __IAMAnalogVideoEncoder_FWD_DEFINED__ 4293 typedef interface IAMAnalogVideoEncoder IAMAnalogVideoEncoder; 4294 #endif 4295 4296 #ifndef __IAMAudioInputMixer_FWD_DEFINED__ 4297 #define __IAMAudioInputMixer_FWD_DEFINED__ 4298 typedef interface IAMAudioInputMixer IAMAudioInputMixer; 4299 #endif 4300 4301 #ifndef __IAMAudioRendererStats_FWD_DEFINED__ 4302 #define __IAMAudioRendererStats_FWD_DEFINED__ 4303 typedef interface IAMAudioRendererStats IAMAudioRendererStats; 4304 #endif 4305 4306 #ifndef __IAMBufferNegotiation_FWD_DEFINED__ 4307 #define __IAMBufferNegotiation_FWD_DEFINED__ 4308 typedef interface IAMBufferNegotiation IAMBufferNegotiation; 4309 #endif 4310 4311 #ifndef __IAMCameraControl_FWD_DEFINED__ 4312 #define __IAMCameraControl_FWD_DEFINED__ 4313 typedef interface IAMCameraControl IAMCameraControl; 4314 #endif 4315 4316 #ifndef __IAMCertifiedOutputProtection_FWD_DEFINED__ 4317 #define __IAMCertifiedOutputProtection_FWD_DEFINED__ 4318 typedef interface IAMCertifiedOutputProtection IAMCertifiedOutputProtection; 4319 #endif 4320 4321 #ifndef __IAMClockSlave_FWD_DEFINED__ 4322 #define __IAMClockSlave_FWD_DEFINED__ 4323 typedef interface IAMClockSlave IAMClockSlave; 4324 #endif 4325 4326 #ifndef __IAMCopyCaptureFileProgress_FWD_DEFINED__ 4327 #define __IAMCopyCaptureFileProgress_FWD_DEFINED__ 4328 typedef interface IAMCopyCaptureFileProgress IAMCopyCaptureFileProgress; 4329 #endif 4330 4331 #ifndef __IAMCrossbar_FWD_DEFINED__ 4332 #define __IAMCrossbar_FWD_DEFINED__ 4333 typedef interface IAMCrossbar IAMCrossbar; 4334 #endif 4335 4336 #ifndef __IAMDevMemoryAllocator_FWD_DEFINED__ 4337 #define __IAMDevMemoryAllocator_FWD_DEFINED__ 4338 typedef interface IAMDevMemoryAllocator IAMDevMemoryAllocator; 4339 #endif 4340 4341 #ifndef __IAMDevMemoryControl_FWD_DEFINED__ 4342 #define __IAMDevMemoryControl_FWD_DEFINED__ 4343 typedef interface IAMDevMemoryControl IAMDevMemoryControl; 4344 #endif 4345 4346 #ifndef __IAMDroppedFrames_FWD_DEFINED__ 4347 #define __IAMDroppedFrames_FWD_DEFINED__ 4348 typedef interface IAMDroppedFrames IAMDroppedFrames; 4349 #endif 4350 4351 #ifndef __IAMExtDevice_FWD_DEFINED__ 4352 #define __IAMExtDevice_FWD_DEFINED__ 4353 typedef interface IAMExtDevice IAMExtDevice; 4354 #endif 4355 4356 #ifndef __IAMExtTransport_FWD_DEFINED__ 4357 #define __IAMExtTransport_FWD_DEFINED__ 4358 typedef interface IAMExtTransport IAMExtTransport; 4359 #endif 4360 4361 #ifndef __IAMGraphStreams_FWD_DEFINED__ 4362 #define __IAMGraphStreams_FWD_DEFINED__ 4363 typedef interface IAMGraphStreams IAMGraphStreams; 4364 #endif 4365 4366 #ifndef __IAMLatency_FWD_DEFINED__ 4367 #define __IAMLatency_FWD_DEFINED__ 4368 typedef interface IAMLatency IAMLatency; 4369 #endif 4370 4371 #ifndef __IAMOpenProgress_FWD_DEFINED__ 4372 #define __IAMOpenProgress_FWD_DEFINED__ 4373 typedef interface IAMOpenProgress IAMOpenProgress; 4374 #endif 4375 4376 #ifndef __IAMOverlayFX_FWD_DEFINED__ 4377 #define __IAMOverlayFX_FWD_DEFINED__ 4378 typedef interface IAMOverlayFX IAMOverlayFX; 4379 #endif 4380 4381 #ifndef __IAMPhysicalPinInfo_FWD_DEFINED__ 4382 #define __IAMPhysicalPinInfo_FWD_DEFINED__ 4383 typedef interface IAMPhysicalPinInfo IAMPhysicalPinInfo; 4384 #endif 4385 4386 #ifndef __IAMPushSource_FWD_DEFINED__ 4387 #define __IAMPushSource_FWD_DEFINED__ 4388 typedef interface IAMPushSource IAMPushSource; 4389 #endif 4390 4391 #ifndef __IAMStreamConfig_FWD_DEFINED__ 4392 #define __IAMStreamConfig_FWD_DEFINED__ 4393 typedef interface IAMStreamConfig IAMStreamConfig; 4394 #endif 4395 4396 #ifndef __IAMTimecodeDisplay_FWD_DEFINED__ 4397 #define __IAMTimecodeDisplay_FWD_DEFINED__ 4398 typedef interface IAMTimecodeDisplay IAMTimecodeDisplay; 4399 #endif 4400 4401 #ifndef __IAMTimecodeGenerator_FWD_DEFINED__ 4402 #define __IAMTimecodeGenerator_FWD_DEFINED__ 4403 typedef interface IAMTimecodeGenerator IAMTimecodeGenerator; 4404 #endif 4405 4406 #ifndef __IAMTimecodeReader_FWD_DEFINED__ 4407 #define __IAMTimecodeReader_FWD_DEFINED__ 4408 typedef interface IAMTimecodeReader IAMTimecodeReader; 4409 #endif 4410 4411 #ifndef __IAMTVTuner_FWD_DEFINED__ 4412 #define __IAMTVTuner_FWD_DEFINED__ 4413 typedef interface IAMTVTuner IAMTVTuner; 4414 #endif 4415 4416 #ifndef __IAMVfwCaptureDialogs_FWD_DEFINED__ 4417 #define __IAMVfwCaptureDialogs_FWD_DEFINED__ 4418 typedef interface IAMVfwCaptureDialogs IAMVfwCaptureDialogs; 4419 #endif 4420 4421 #ifndef __IAMVfwCompressDialogs_FWD_DEFINED__ 4422 #define __IAMVfwCompressDialogs_FWD_DEFINED__ 4423 typedef interface IAMVfwCompressDialogs IAMVfwCompressDialogs; 4424 #endif 4425 4426 #ifndef __IAMVideoCompression_FWD_DEFINED__ 4427 #define __IAMVideoCompression_FWD_DEFINED__ 4428 typedef interface IAMVideoCompression IAMVideoCompression; 4429 #endif 4430 4431 #ifndef __IAMVideoDecimationProperties_FWD_DEFINED__ 4432 #define __IAMVideoDecimationProperties_FWD_DEFINED__ 4433 typedef interface IAMVideoDecimationProperties IAMVideoDecimationProperties; 4434 #endif 4435 4436 #ifndef __IAMVideoProcAmp_FWD_DEFINED__ 4437 #define __IAMVideoProcAmp_FWD_DEFINED__ 4438 typedef interface IAMVideoProcAmp IAMVideoProcAmp; 4439 #endif 4440 4441 #ifndef __IAMGraphBuilderCallback_FWD_DEFINED__ 4442 #define __IAMGraphBuilderCallback_FWD_DEFINED__ 4443 typedef interface IAMGraphBuilderCallback IAMGraphBuilderCallback; 4444 #endif 4445 4446 #ifndef __ICaptureGraphBuilder_FWD_DEFINED__ 4447 #define __ICaptureGraphBuilder_FWD_DEFINED__ 4448 typedef interface ICaptureGraphBuilder ICaptureGraphBuilder; 4449 #endif 4450 4451 #ifndef __ICaptureGraphBuilder2_FWD_DEFINED__ 4452 #define __ICaptureGraphBuilder2_FWD_DEFINED__ 4453 typedef interface ICaptureGraphBuilder2 ICaptureGraphBuilder2; 4454 #endif 4455 4456 #ifndef __IConfigAviMux_FWD_DEFINED__ 4457 #define __IConfigAviMux_FWD_DEFINED__ 4458 typedef interface IConfigAviMux IConfigAviMux; 4459 #endif 4460 4461 #ifndef __IConfigInterleaving_FWD_DEFINED__ 4462 #define __IConfigInterleaving_FWD_DEFINED__ 4463 typedef interface IConfigInterleaving IConfigInterleaving; 4464 #endif 4465 4466 #ifndef __IDecimateVideoImage_FWD_DEFINED__ 4467 #define __IDecimateVideoImage_FWD_DEFINED__ 4468 typedef interface IDecimateVideoImage IDecimateVideoImage; 4469 #endif 4470 4471 #ifndef __IDrawVideoImage_FWD_DEFINED__ 4472 #define __IDrawVideoImage_FWD_DEFINED__ 4473 typedef interface IDrawVideoImage IDrawVideoImage; 4474 #endif 4475 4476 #ifndef __IEnumRegFilters_FWD_DEFINED__ 4477 #define __IEnumRegFilters_FWD_DEFINED__ 4478 typedef interface IEnumRegFilters IEnumRegFilters; 4479 #endif 4480 4481 #ifndef __IEnumStreamIdMap_FWD_DEFINED__ 4482 #define __IEnumStreamIdMap_FWD_DEFINED__ 4483 typedef interface IEnumStreamIdMap IEnumStreamIdMap; 4484 #endif 4485 4486 #ifndef __IFileSourceFilter_FWD_DEFINED__ 4487 #define __IFileSourceFilter_FWD_DEFINED__ 4488 typedef interface IFileSourceFilter IFileSourceFilter; 4489 #endif 4490 4491 #ifndef __IFileSinkFilter_FWD_DEFINED__ 4492 #define __IFileSinkFilter_FWD_DEFINED__ 4493 typedef interface IFileSinkFilter IFileSinkFilter; 4494 #endif 4495 4496 #ifndef __IFileSinkFilter2_FWD_DEFINED__ 4497 #define __IFileSinkFilter2_FWD_DEFINED__ 4498 typedef interface IFileSinkFilter2 IFileSinkFilter2; 4499 #endif 4500 4501 #ifndef __IFilterMapper_FWD_DEFINED__ 4502 #define __IFilterMapper_FWD_DEFINED__ 4503 typedef interface IFilterMapper IFilterMapper; 4504 #endif 4505 4506 #ifndef __IFilterMapper2_FWD_DEFINED__ 4507 #define __IFilterMapper2_FWD_DEFINED__ 4508 typedef interface IFilterMapper2 IFilterMapper2; 4509 #endif 4510 4511 #ifndef __IGraphBuilder_FWD_DEFINED__ 4512 #define __IGraphBuilder_FWD_DEFINED__ 4513 typedef interface IGraphBuilder IGraphBuilder; 4514 #endif 4515 4516 #ifndef __IKsPropertySet_FWD_DEFINED__ 4517 #define __IKsPropertySet_FWD_DEFINED__ 4518 typedef interface IKsPropertySet IKsPropertySet; 4519 #endif 4520 4521 #ifndef __IMediaEventSink_FWD_DEFINED__ 4522 #define __IMediaEventSink_FWD_DEFINED__ 4523 typedef interface IMediaEventSink IMediaEventSink; 4524 #endif 4525 4526 #ifndef __IMpeg2Demultiplexer_FWD_DEFINED__ 4527 #define __IMpeg2Demultiplexer_FWD_DEFINED__ 4528 typedef interface IMpeg2Demultiplexer IMpeg2Demultiplexer; 4529 #endif 4530 4531 #ifndef __IMPEG2StreamIdMap_FWD_DEFINED__ 4532 #define __IMPEG2StreamIdMap_FWD_DEFINED__ 4533 typedef interface IMPEG2StreamIdMap IMPEG2StreamIdMap; 4534 #endif 4535 4536 #ifndef __IOverlay_FWD_DEFINED__ 4537 #define __IOverlay_FWD_DEFINED__ 4538 typedef interface IOverlay IOverlay; 4539 #endif 4540 4541 #ifndef __IOverlayNotify_FWD_DEFINED__ 4542 #define __IOverlayNotify_FWD_DEFINED__ 4543 typedef interface IOverlayNotify IOverlayNotify; 4544 #endif 4545 4546 #ifndef __IOverlayNotify2_FWD_DEFINED__ 4547 #define __IOverlayNotify2_FWD_DEFINED__ 4548 typedef interface IOverlayNotify2 IOverlayNotify2; 4549 #endif 4550 4551 #ifndef __IQualityControl_FWD_DEFINED__ 4552 #define __IQualityControl_FWD_DEFINED__ 4553 typedef interface IQualityControl IQualityControl; 4554 #endif 4555 4556 #ifndef __ISeekingPassThru_FWD_DEFINED__ 4557 #define __ISeekingPassThru_FWD_DEFINED__ 4558 typedef interface ISeekingPassThru ISeekingPassThru; 4559 #endif 4560 4561 typedef enum tagAnalogVideoStandard { 4562 AnalogVideo_None = 0x0, 4563 AnalogVideo_NTSC_M = 0x1, 4564 AnalogVideo_NTSC_M_J = 0x2, 4565 AnalogVideo_NTSC_433 = 0x4, 4566 AnalogVideo_PAL_B = 0x10, 4567 AnalogVideo_PAL_D = 0x20, 4568 AnalogVideo_PAL_G = 0x40, 4569 AnalogVideo_PAL_H = 0x80, 4570 AnalogVideo_PAL_I = 0x100, 4571 AnalogVideo_PAL_M = 0x200, 4572 AnalogVideo_PAL_N = 0x400, 4573 AnalogVideo_PAL_60 = 0x800, 4574 AnalogVideo_SECAM_B = 0x1000, 4575 AnalogVideo_SECAM_D = 0x2000, 4576 AnalogVideo_SECAM_G = 0x4000, 4577 AnalogVideo_SECAM_H = 0x8000, 4578 AnalogVideo_SECAM_K = 0x10000, 4579 AnalogVideo_SECAM_K1 = 0x20000, 4580 AnalogVideo_SECAM_L = 0x40000, 4581 AnalogVideo_SECAM_L1 = 0x80000, 4582 AnalogVideo_PAL_N_COMBO = 0x100000, 4583 AnalogVideoMask_MCE_NTSC = (((((AnalogVideo_NTSC_M | AnalogVideo_NTSC_M_J) | AnalogVideo_NTSC_433) | AnalogVideo_PAL_M) | AnalogVideo_PAL_N) | AnalogVideo_PAL_60) | AnalogVideo_PAL_N_COMBO, 4584 AnalogVideoMask_MCE_PAL = (((AnalogVideo_PAL_B | AnalogVideo_PAL_D) | AnalogVideo_PAL_G) | AnalogVideo_PAL_H) | AnalogVideo_PAL_I, 4585 AnalogVideoMask_MCE_SECAM = ((((((AnalogVideo_SECAM_B | AnalogVideo_SECAM_D) | AnalogVideo_SECAM_G) | AnalogVideo_SECAM_H) | AnalogVideo_SECAM_K) | AnalogVideo_SECAM_K1) | AnalogVideo_SECAM_L) | AnalogVideo_SECAM_L1 4586 } AnalogVideoStandard; 4587 typedef enum tagTunerInputType { 4588 TunerInputCable = 0, 4589 TunerInputAntenna = 1 4590 } TunerInputType; 4591 typedef struct __WIDL_strmif_generated_name_00000002 { 4592 CLSID Clsid; 4593 LPWSTR Name; 4594 } REGFILTER; 4595 typedef enum tagTVAudioMode { 4596 AMTVAUDIO_MODE_MONO = 0x1, 4597 AMTVAUDIO_MODE_STEREO = 0x2, 4598 AMTVAUDIO_MODE_LANG_A = 0x10, 4599 AMTVAUDIO_MODE_LANG_B = 0x20, 4600 AMTVAUDIO_MODE_LANG_C = 0x40, 4601 AMTVAUDIO_PRESET_STEREO = 0x200, 4602 AMTVAUDIO_PRESET_LANG_A = 0x1000, 4603 AMTVAUDIO_PRESET_LANG_B = 0x2000, 4604 AMTVAUDIO_PRESET_LANG_C = 0x4000 4605 } TVAudioMode; 4606 /***************************************************************************** 4607 * IEnumRegFilters interface 4608 */ 4609 #ifndef __IEnumRegFilters_INTERFACE_DEFINED__ 4610 #define __IEnumRegFilters_INTERFACE_DEFINED__ 4611 4612 DEFINE_GUID(IID_IEnumRegFilters, 0x56a868a4, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 4613 #if defined(__cplusplus) && !defined(CINTERFACE) 4614 MIDL_INTERFACE("56a868a4-0ad4-11ce-b03a-0020af0ba770") 4615 IEnumRegFilters : public IUnknown 4616 { 4617 virtual HRESULT STDMETHODCALLTYPE Next( 4618 ULONG cFilters, 4619 REGFILTER **apRegFilter, 4620 ULONG *pcFetched) = 0; 4621 4622 virtual HRESULT STDMETHODCALLTYPE Skip( 4623 ULONG cFilters) = 0; 4624 4625 virtual HRESULT STDMETHODCALLTYPE Reset( 4626 ) = 0; 4627 4628 virtual HRESULT STDMETHODCALLTYPE Clone( 4629 IEnumRegFilters **ppEnum) = 0; 4630 4631 }; 4632 #ifdef __CRT_UUID_DECL 4633 __CRT_UUID_DECL(IEnumRegFilters, 0x56a868a4, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 4634 #endif 4635 #else 4636 typedef struct IEnumRegFiltersVtbl { 4637 BEGIN_INTERFACE 4638 4639 /*** IUnknown methods ***/ 4640 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 4641 IEnumRegFilters* This, 4642 REFIID riid, 4643 void **ppvObject); 4644 4645 ULONG (STDMETHODCALLTYPE *AddRef)( 4646 IEnumRegFilters* This); 4647 4648 ULONG (STDMETHODCALLTYPE *Release)( 4649 IEnumRegFilters* This); 4650 4651 /*** IEnumRegFilters methods ***/ 4652 HRESULT (STDMETHODCALLTYPE *Next)( 4653 IEnumRegFilters* This, 4654 ULONG cFilters, 4655 REGFILTER **apRegFilter, 4656 ULONG *pcFetched); 4657 4658 HRESULT (STDMETHODCALLTYPE *Skip)( 4659 IEnumRegFilters* This, 4660 ULONG cFilters); 4661 4662 HRESULT (STDMETHODCALLTYPE *Reset)( 4663 IEnumRegFilters* This); 4664 4665 HRESULT (STDMETHODCALLTYPE *Clone)( 4666 IEnumRegFilters* This, 4667 IEnumRegFilters **ppEnum); 4668 4669 END_INTERFACE 4670 } IEnumRegFiltersVtbl; 4671 interface IEnumRegFilters { 4672 CONST_VTBL IEnumRegFiltersVtbl* lpVtbl; 4673 }; 4674 4675 #ifdef COBJMACROS 4676 #ifndef WIDL_C_INLINE_WRAPPERS 4677 /*** IUnknown methods ***/ 4678 #define IEnumRegFilters_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4679 #define IEnumRegFilters_AddRef(This) (This)->lpVtbl->AddRef(This) 4680 #define IEnumRegFilters_Release(This) (This)->lpVtbl->Release(This) 4681 /*** IEnumRegFilters methods ***/ 4682 #define IEnumRegFilters_Next(This,cFilters,apRegFilter,pcFetched) (This)->lpVtbl->Next(This,cFilters,apRegFilter,pcFetched) 4683 #define IEnumRegFilters_Skip(This,cFilters) (This)->lpVtbl->Skip(This,cFilters) 4684 #define IEnumRegFilters_Reset(This) (This)->lpVtbl->Reset(This) 4685 #define IEnumRegFilters_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum) 4686 #else 4687 /*** IUnknown methods ***/ 4688 static FORCEINLINE HRESULT IEnumRegFilters_QueryInterface(IEnumRegFilters* This,REFIID riid,void **ppvObject) { 4689 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 4690 } 4691 static FORCEINLINE ULONG IEnumRegFilters_AddRef(IEnumRegFilters* This) { 4692 return This->lpVtbl->AddRef(This); 4693 } 4694 static FORCEINLINE ULONG IEnumRegFilters_Release(IEnumRegFilters* This) { 4695 return This->lpVtbl->Release(This); 4696 } 4697 /*** IEnumRegFilters methods ***/ 4698 static FORCEINLINE HRESULT IEnumRegFilters_Next(IEnumRegFilters* This,ULONG cFilters,REGFILTER **apRegFilter,ULONG *pcFetched) { 4699 return This->lpVtbl->Next(This,cFilters,apRegFilter,pcFetched); 4700 } 4701 static FORCEINLINE HRESULT IEnumRegFilters_Skip(IEnumRegFilters* This,ULONG cFilters) { 4702 return This->lpVtbl->Skip(This,cFilters); 4703 } 4704 static FORCEINLINE HRESULT IEnumRegFilters_Reset(IEnumRegFilters* This) { 4705 return This->lpVtbl->Reset(This); 4706 } 4707 static FORCEINLINE HRESULT IEnumRegFilters_Clone(IEnumRegFilters* This,IEnumRegFilters **ppEnum) { 4708 return This->lpVtbl->Clone(This,ppEnum); 4709 } 4710 #endif 4711 #endif 4712 4713 #endif 4714 4715 HRESULT STDMETHODCALLTYPE IEnumRegFilters_Next_Proxy( 4716 IEnumRegFilters* This, 4717 ULONG cFilters, 4718 REGFILTER **apRegFilter, 4719 ULONG *pcFetched); 4720 void __RPC_STUB IEnumRegFilters_Next_Stub( 4721 IRpcStubBuffer* This, 4722 IRpcChannelBuffer* pRpcChannelBuffer, 4723 PRPC_MESSAGE pRpcMessage, 4724 DWORD* pdwStubPhase); 4725 HRESULT STDMETHODCALLTYPE IEnumRegFilters_Skip_Proxy( 4726 IEnumRegFilters* This, 4727 ULONG cFilters); 4728 void __RPC_STUB IEnumRegFilters_Skip_Stub( 4729 IRpcStubBuffer* This, 4730 IRpcChannelBuffer* pRpcChannelBuffer, 4731 PRPC_MESSAGE pRpcMessage, 4732 DWORD* pdwStubPhase); 4733 HRESULT STDMETHODCALLTYPE IEnumRegFilters_Reset_Proxy( 4734 IEnumRegFilters* This); 4735 void __RPC_STUB IEnumRegFilters_Reset_Stub( 4736 IRpcStubBuffer* This, 4737 IRpcChannelBuffer* pRpcChannelBuffer, 4738 PRPC_MESSAGE pRpcMessage, 4739 DWORD* pdwStubPhase); 4740 HRESULT STDMETHODCALLTYPE IEnumRegFilters_Clone_Proxy( 4741 IEnumRegFilters* This, 4742 IEnumRegFilters **ppEnum); 4743 void __RPC_STUB IEnumRegFilters_Clone_Stub( 4744 IRpcStubBuffer* This, 4745 IRpcChannelBuffer* pRpcChannelBuffer, 4746 PRPC_MESSAGE pRpcMessage, 4747 DWORD* pdwStubPhase); 4748 4749 #endif /* __IEnumRegFilters_INTERFACE_DEFINED__ */ 4750 4751 typedef IEnumRegFilters *PENUMREGFILTERS; 4752 /***************************************************************************** 4753 * IFilterMapper interface 4754 */ 4755 #ifndef __IFilterMapper_INTERFACE_DEFINED__ 4756 #define __IFilterMapper_INTERFACE_DEFINED__ 4757 4758 enum { 4759 MERIT_PREFERRED = 0x800000, 4760 MERIT_NORMAL = 0x600000, 4761 MERIT_UNLIKELY = 0x400000, 4762 MERIT_DO_NOT_USE = 0x200000, 4763 MERIT_SW_COMPRESSOR = 0x100000, 4764 MERIT_HW_COMPRESSOR = 0x100050 4765 }; 4766 4767 DEFINE_GUID(IID_IFilterMapper, 0x56a868a3, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 4768 #if defined(__cplusplus) && !defined(CINTERFACE) 4769 MIDL_INTERFACE("56a868a3-0ad4-11ce-b03a-0020af0ba770") 4770 IFilterMapper : public IUnknown 4771 { 4772 virtual HRESULT STDMETHODCALLTYPE RegisterFilter( 4773 CLSID clsid, 4774 LPCWSTR Name, 4775 DWORD dwMerit) = 0; 4776 4777 virtual HRESULT STDMETHODCALLTYPE RegisterFilterInstance( 4778 CLSID clsid, 4779 LPCWSTR Name, 4780 CLSID *MRId) = 0; 4781 4782 virtual HRESULT STDMETHODCALLTYPE RegisterPin( 4783 CLSID Filter, 4784 LPCWSTR Name, 4785 WINBOOL bRendered, 4786 WINBOOL bOutput, 4787 WINBOOL bZero, 4788 WINBOOL bMany, 4789 CLSID ConnectsToFilter, 4790 LPCWSTR ConnectsToPin) = 0; 4791 4792 virtual HRESULT STDMETHODCALLTYPE RegisterPinType( 4793 CLSID clsFilter, 4794 LPCWSTR strName, 4795 CLSID clsMajorType, 4796 CLSID clsSubType) = 0; 4797 4798 virtual HRESULT STDMETHODCALLTYPE UnregisterFilter( 4799 CLSID Filter) = 0; 4800 4801 virtual HRESULT STDMETHODCALLTYPE UnregisterFilterInstance( 4802 CLSID MRId) = 0; 4803 4804 virtual HRESULT STDMETHODCALLTYPE UnregisterPin( 4805 CLSID Filter, 4806 LPCWSTR Name) = 0; 4807 4808 virtual HRESULT STDMETHODCALLTYPE EnumMatchingFilters( 4809 IEnumRegFilters **ppEnum, 4810 DWORD dwMerit, 4811 WINBOOL bInputNeeded, 4812 CLSID clsInMaj, 4813 CLSID clsInSub, 4814 WINBOOL bRender, 4815 WINBOOL bOututNeeded, 4816 CLSID clsOutMaj, 4817 CLSID clsOutSub) = 0; 4818 4819 }; 4820 #ifdef __CRT_UUID_DECL 4821 __CRT_UUID_DECL(IFilterMapper, 0x56a868a3, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 4822 #endif 4823 #else 4824 typedef struct IFilterMapperVtbl { 4825 BEGIN_INTERFACE 4826 4827 /*** IUnknown methods ***/ 4828 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 4829 IFilterMapper* This, 4830 REFIID riid, 4831 void **ppvObject); 4832 4833 ULONG (STDMETHODCALLTYPE *AddRef)( 4834 IFilterMapper* This); 4835 4836 ULONG (STDMETHODCALLTYPE *Release)( 4837 IFilterMapper* This); 4838 4839 /*** IFilterMapper methods ***/ 4840 HRESULT (STDMETHODCALLTYPE *RegisterFilter)( 4841 IFilterMapper* This, 4842 CLSID clsid, 4843 LPCWSTR Name, 4844 DWORD dwMerit); 4845 4846 HRESULT (STDMETHODCALLTYPE *RegisterFilterInstance)( 4847 IFilterMapper* This, 4848 CLSID clsid, 4849 LPCWSTR Name, 4850 CLSID *MRId); 4851 4852 HRESULT (STDMETHODCALLTYPE *RegisterPin)( 4853 IFilterMapper* This, 4854 CLSID Filter, 4855 LPCWSTR Name, 4856 WINBOOL bRendered, 4857 WINBOOL bOutput, 4858 WINBOOL bZero, 4859 WINBOOL bMany, 4860 CLSID ConnectsToFilter, 4861 LPCWSTR ConnectsToPin); 4862 4863 HRESULT (STDMETHODCALLTYPE *RegisterPinType)( 4864 IFilterMapper* This, 4865 CLSID clsFilter, 4866 LPCWSTR strName, 4867 CLSID clsMajorType, 4868 CLSID clsSubType); 4869 4870 HRESULT (STDMETHODCALLTYPE *UnregisterFilter)( 4871 IFilterMapper* This, 4872 CLSID Filter); 4873 4874 HRESULT (STDMETHODCALLTYPE *UnregisterFilterInstance)( 4875 IFilterMapper* This, 4876 CLSID MRId); 4877 4878 HRESULT (STDMETHODCALLTYPE *UnregisterPin)( 4879 IFilterMapper* This, 4880 CLSID Filter, 4881 LPCWSTR Name); 4882 4883 HRESULT (STDMETHODCALLTYPE *EnumMatchingFilters)( 4884 IFilterMapper* This, 4885 IEnumRegFilters **ppEnum, 4886 DWORD dwMerit, 4887 WINBOOL bInputNeeded, 4888 CLSID clsInMaj, 4889 CLSID clsInSub, 4890 WINBOOL bRender, 4891 WINBOOL bOututNeeded, 4892 CLSID clsOutMaj, 4893 CLSID clsOutSub); 4894 4895 END_INTERFACE 4896 } IFilterMapperVtbl; 4897 interface IFilterMapper { 4898 CONST_VTBL IFilterMapperVtbl* lpVtbl; 4899 }; 4900 4901 #ifdef COBJMACROS 4902 #ifndef WIDL_C_INLINE_WRAPPERS 4903 /*** IUnknown methods ***/ 4904 #define IFilterMapper_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4905 #define IFilterMapper_AddRef(This) (This)->lpVtbl->AddRef(This) 4906 #define IFilterMapper_Release(This) (This)->lpVtbl->Release(This) 4907 /*** IFilterMapper methods ***/ 4908 #define IFilterMapper_RegisterFilter(This,clsid,Name,dwMerit) (This)->lpVtbl->RegisterFilter(This,clsid,Name,dwMerit) 4909 #define IFilterMapper_RegisterFilterInstance(This,clsid,Name,MRId) (This)->lpVtbl->RegisterFilterInstance(This,clsid,Name,MRId) 4910 #define IFilterMapper_RegisterPin(This,Filter,Name,bRendered,bOutput,bZero,bMany,ConnectsToFilter,ConnectsToPin) (This)->lpVtbl->RegisterPin(This,Filter,Name,bRendered,bOutput,bZero,bMany,ConnectsToFilter,ConnectsToPin) 4911 #define IFilterMapper_RegisterPinType(This,clsFilter,strName,clsMajorType,clsSubType) (This)->lpVtbl->RegisterPinType(This,clsFilter,strName,clsMajorType,clsSubType) 4912 #define IFilterMapper_UnregisterFilter(This,Filter) (This)->lpVtbl->UnregisterFilter(This,Filter) 4913 #define IFilterMapper_UnregisterFilterInstance(This,MRId) (This)->lpVtbl->UnregisterFilterInstance(This,MRId) 4914 #define IFilterMapper_UnregisterPin(This,Filter,Name) (This)->lpVtbl->UnregisterPin(This,Filter,Name) 4915 #define IFilterMapper_EnumMatchingFilters(This,ppEnum,dwMerit,bInputNeeded,clsInMaj,clsInSub,bRender,bOututNeeded,clsOutMaj,clsOutSub) (This)->lpVtbl->EnumMatchingFilters(This,ppEnum,dwMerit,bInputNeeded,clsInMaj,clsInSub,bRender,bOututNeeded,clsOutMaj,clsOutSub) 4916 #else 4917 /*** IUnknown methods ***/ 4918 static FORCEINLINE HRESULT IFilterMapper_QueryInterface(IFilterMapper* This,REFIID riid,void **ppvObject) { 4919 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 4920 } 4921 static FORCEINLINE ULONG IFilterMapper_AddRef(IFilterMapper* This) { 4922 return This->lpVtbl->AddRef(This); 4923 } 4924 static FORCEINLINE ULONG IFilterMapper_Release(IFilterMapper* This) { 4925 return This->lpVtbl->Release(This); 4926 } 4927 /*** IFilterMapper methods ***/ 4928 static FORCEINLINE HRESULT IFilterMapper_RegisterFilter(IFilterMapper* This,CLSID clsid,LPCWSTR Name,DWORD dwMerit) { 4929 return This->lpVtbl->RegisterFilter(This,clsid,Name,dwMerit); 4930 } 4931 static FORCEINLINE HRESULT IFilterMapper_RegisterFilterInstance(IFilterMapper* This,CLSID clsid,LPCWSTR Name,CLSID *MRId) { 4932 return This->lpVtbl->RegisterFilterInstance(This,clsid,Name,MRId); 4933 } 4934 static FORCEINLINE HRESULT IFilterMapper_RegisterPin(IFilterMapper* This,CLSID Filter,LPCWSTR Name,WINBOOL bRendered,WINBOOL bOutput,WINBOOL bZero,WINBOOL bMany,CLSID ConnectsToFilter,LPCWSTR ConnectsToPin) { 4935 return This->lpVtbl->RegisterPin(This,Filter,Name,bRendered,bOutput,bZero,bMany,ConnectsToFilter,ConnectsToPin); 4936 } 4937 static FORCEINLINE HRESULT IFilterMapper_RegisterPinType(IFilterMapper* This,CLSID clsFilter,LPCWSTR strName,CLSID clsMajorType,CLSID clsSubType) { 4938 return This->lpVtbl->RegisterPinType(This,clsFilter,strName,clsMajorType,clsSubType); 4939 } 4940 static FORCEINLINE HRESULT IFilterMapper_UnregisterFilter(IFilterMapper* This,CLSID Filter) { 4941 return This->lpVtbl->UnregisterFilter(This,Filter); 4942 } 4943 static FORCEINLINE HRESULT IFilterMapper_UnregisterFilterInstance(IFilterMapper* This,CLSID MRId) { 4944 return This->lpVtbl->UnregisterFilterInstance(This,MRId); 4945 } 4946 static FORCEINLINE HRESULT IFilterMapper_UnregisterPin(IFilterMapper* This,CLSID Filter,LPCWSTR Name) { 4947 return This->lpVtbl->UnregisterPin(This,Filter,Name); 4948 } 4949 static FORCEINLINE HRESULT IFilterMapper_EnumMatchingFilters(IFilterMapper* This,IEnumRegFilters **ppEnum,DWORD dwMerit,WINBOOL bInputNeeded,CLSID clsInMaj,CLSID clsInSub,WINBOOL bRender,WINBOOL bOututNeeded,CLSID clsOutMaj,CLSID clsOutSub) { 4950 return This->lpVtbl->EnumMatchingFilters(This,ppEnum,dwMerit,bInputNeeded,clsInMaj,clsInSub,bRender,bOututNeeded,clsOutMaj,clsOutSub); 4951 } 4952 #endif 4953 #endif 4954 4955 #endif 4956 4957 HRESULT STDMETHODCALLTYPE IFilterMapper_RegisterFilter_Proxy( 4958 IFilterMapper* This, 4959 CLSID clsid, 4960 LPCWSTR Name, 4961 DWORD dwMerit); 4962 void __RPC_STUB IFilterMapper_RegisterFilter_Stub( 4963 IRpcStubBuffer* This, 4964 IRpcChannelBuffer* pRpcChannelBuffer, 4965 PRPC_MESSAGE pRpcMessage, 4966 DWORD* pdwStubPhase); 4967 HRESULT STDMETHODCALLTYPE IFilterMapper_RegisterFilterInstance_Proxy( 4968 IFilterMapper* This, 4969 CLSID clsid, 4970 LPCWSTR Name, 4971 CLSID *MRId); 4972 void __RPC_STUB IFilterMapper_RegisterFilterInstance_Stub( 4973 IRpcStubBuffer* This, 4974 IRpcChannelBuffer* pRpcChannelBuffer, 4975 PRPC_MESSAGE pRpcMessage, 4976 DWORD* pdwStubPhase); 4977 HRESULT STDMETHODCALLTYPE IFilterMapper_RegisterPin_Proxy( 4978 IFilterMapper* This, 4979 CLSID Filter, 4980 LPCWSTR Name, 4981 WINBOOL bRendered, 4982 WINBOOL bOutput, 4983 WINBOOL bZero, 4984 WINBOOL bMany, 4985 CLSID ConnectsToFilter, 4986 LPCWSTR ConnectsToPin); 4987 void __RPC_STUB IFilterMapper_RegisterPin_Stub( 4988 IRpcStubBuffer* This, 4989 IRpcChannelBuffer* pRpcChannelBuffer, 4990 PRPC_MESSAGE pRpcMessage, 4991 DWORD* pdwStubPhase); 4992 HRESULT STDMETHODCALLTYPE IFilterMapper_RegisterPinType_Proxy( 4993 IFilterMapper* This, 4994 CLSID clsFilter, 4995 LPCWSTR strName, 4996 CLSID clsMajorType, 4997 CLSID clsSubType); 4998 void __RPC_STUB IFilterMapper_RegisterPinType_Stub( 4999 IRpcStubBuffer* This, 5000 IRpcChannelBuffer* pRpcChannelBuffer, 5001 PRPC_MESSAGE pRpcMessage, 5002 DWORD* pdwStubPhase); 5003 HRESULT STDMETHODCALLTYPE IFilterMapper_UnregisterFilter_Proxy( 5004 IFilterMapper* This, 5005 CLSID Filter); 5006 void __RPC_STUB IFilterMapper_UnregisterFilter_Stub( 5007 IRpcStubBuffer* This, 5008 IRpcChannelBuffer* pRpcChannelBuffer, 5009 PRPC_MESSAGE pRpcMessage, 5010 DWORD* pdwStubPhase); 5011 HRESULT STDMETHODCALLTYPE IFilterMapper_UnregisterFilterInstance_Proxy( 5012 IFilterMapper* This, 5013 CLSID MRId); 5014 void __RPC_STUB IFilterMapper_UnregisterFilterInstance_Stub( 5015 IRpcStubBuffer* This, 5016 IRpcChannelBuffer* pRpcChannelBuffer, 5017 PRPC_MESSAGE pRpcMessage, 5018 DWORD* pdwStubPhase); 5019 HRESULT STDMETHODCALLTYPE IFilterMapper_UnregisterPin_Proxy( 5020 IFilterMapper* This, 5021 CLSID Filter, 5022 LPCWSTR Name); 5023 void __RPC_STUB IFilterMapper_UnregisterPin_Stub( 5024 IRpcStubBuffer* This, 5025 IRpcChannelBuffer* pRpcChannelBuffer, 5026 PRPC_MESSAGE pRpcMessage, 5027 DWORD* pdwStubPhase); 5028 HRESULT STDMETHODCALLTYPE IFilterMapper_EnumMatchingFilters_Proxy( 5029 IFilterMapper* This, 5030 IEnumRegFilters **ppEnum, 5031 DWORD dwMerit, 5032 WINBOOL bInputNeeded, 5033 CLSID clsInMaj, 5034 CLSID clsInSub, 5035 WINBOOL bRender, 5036 WINBOOL bOututNeeded, 5037 CLSID clsOutMaj, 5038 CLSID clsOutSub); 5039 void __RPC_STUB IFilterMapper_EnumMatchingFilters_Stub( 5040 IRpcStubBuffer* This, 5041 IRpcChannelBuffer* pRpcChannelBuffer, 5042 PRPC_MESSAGE pRpcMessage, 5043 DWORD* pdwStubPhase); 5044 5045 #endif /* __IFilterMapper_INTERFACE_DEFINED__ */ 5046 5047 typedef struct __WIDL_strmif_generated_name_00000003 { 5048 const CLSID *clsMajorType; 5049 const CLSID *clsMinorType; 5050 } REGPINTYPES; 5051 typedef struct __WIDL_strmif_generated_name_00000004 { 5052 LPWSTR strName; 5053 WINBOOL bRendered; 5054 WINBOOL bOutput; 5055 WINBOOL bZero; 5056 WINBOOL bMany; 5057 const CLSID *clsConnectsToFilter; 5058 const WCHAR *strConnectsToPin; 5059 UINT nMediaTypes; 5060 const REGPINTYPES *lpMediaType; 5061 } REGFILTERPINS; 5062 typedef struct __WIDL_strmif_generated_name_00000005 { 5063 CLSID clsMedium; 5064 DWORD dw1; 5065 DWORD dw2; 5066 } REGPINMEDIUM; 5067 enum { 5068 REG_PINFLAG_B_ZERO = 0x1, 5069 REG_PINFLAG_B_RENDERER = 0x2, 5070 REG_PINFLAG_B_MANY = 0x4, 5071 REG_PINFLAG_B_OUTPUT = 0x8 5072 }; 5073 5074 typedef struct __WIDL_strmif_generated_name_00000006 { 5075 DWORD dwFlags; 5076 UINT cInstances; 5077 UINT nMediaTypes; 5078 const REGPINTYPES *lpMediaType; 5079 UINT nMediums; 5080 const REGPINMEDIUM *lpMedium; 5081 const CLSID *clsPinCategory; 5082 } REGFILTERPINS2; 5083 typedef struct __WIDL_strmif_generated_name_00000007 { 5084 DWORD dwVersion; 5085 DWORD dwMerit; 5086 __C89_NAMELESS union { 5087 __C89_NAMELESS struct { 5088 ULONG cPins; 5089 const REGFILTERPINS *rgPins; 5090 } __C89_NAMELESSSTRUCTNAME1; 5091 __C89_NAMELESS struct { 5092 ULONG cPins2; 5093 const REGFILTERPINS2 *rgPins2; 5094 } __C89_NAMELESSSTRUCTNAME2; 5095 } __C89_NAMELESSUNIONNAME; 5096 } REGFILTER2; 5097 /***************************************************************************** 5098 * IFilterMapper2 interface 5099 */ 5100 #ifndef __IFilterMapper2_INTERFACE_DEFINED__ 5101 #define __IFilterMapper2_INTERFACE_DEFINED__ 5102 5103 DEFINE_GUID(IID_IFilterMapper2, 0xb79bb0b0, 0x33c1, 0x11d1, 0xab,0xe1, 0x00,0xa0,0xc9,0x05,0xf3,0x75); 5104 #if defined(__cplusplus) && !defined(CINTERFACE) 5105 MIDL_INTERFACE("b79bb0b0-33c1-11d1-abe1-00a0c905f375") 5106 IFilterMapper2 : public IUnknown 5107 { 5108 virtual HRESULT STDMETHODCALLTYPE CreateCategory( 5109 REFCLSID clsidCategory, 5110 DWORD dwCategoryMerit, 5111 LPCWSTR Description) = 0; 5112 5113 virtual HRESULT STDMETHODCALLTYPE UnregisterFilter( 5114 const CLSID *pclsidCategory, 5115 LPCOLESTR szInstance, 5116 REFCLSID Filter) = 0; 5117 5118 virtual HRESULT STDMETHODCALLTYPE RegisterFilter( 5119 REFCLSID clsidFilter, 5120 LPCWSTR Name, 5121 IMoniker **ppMoniker, 5122 const CLSID *pclsidCategory, 5123 LPCOLESTR szInstance, 5124 const REGFILTER2 *prf2) = 0; 5125 5126 virtual HRESULT STDMETHODCALLTYPE EnumMatchingFilters( 5127 IEnumMoniker **ppEnum, 5128 DWORD dwFlags, 5129 WINBOOL bExactMatch, 5130 DWORD dwMerit, 5131 WINBOOL bInputNeeded, 5132 DWORD cInputTypes, 5133 const GUID *pInputTypes, 5134 const REGPINMEDIUM *pMedIn, 5135 const CLSID *pPinCategoryIn, 5136 WINBOOL bRender, 5137 WINBOOL bOutputNeeded, 5138 DWORD cOutputTypes, 5139 const GUID *pOutputTypes, 5140 const REGPINMEDIUM *pMedOut, 5141 const CLSID *pPinCategoryOut) = 0; 5142 5143 }; 5144 #ifdef __CRT_UUID_DECL 5145 __CRT_UUID_DECL(IFilterMapper2, 0xb79bb0b0, 0x33c1, 0x11d1, 0xab,0xe1, 0x00,0xa0,0xc9,0x05,0xf3,0x75) 5146 #endif 5147 #else 5148 typedef struct IFilterMapper2Vtbl { 5149 BEGIN_INTERFACE 5150 5151 /*** IUnknown methods ***/ 5152 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5153 IFilterMapper2* This, 5154 REFIID riid, 5155 void **ppvObject); 5156 5157 ULONG (STDMETHODCALLTYPE *AddRef)( 5158 IFilterMapper2* This); 5159 5160 ULONG (STDMETHODCALLTYPE *Release)( 5161 IFilterMapper2* This); 5162 5163 /*** IFilterMapper2 methods ***/ 5164 HRESULT (STDMETHODCALLTYPE *CreateCategory)( 5165 IFilterMapper2* This, 5166 REFCLSID clsidCategory, 5167 DWORD dwCategoryMerit, 5168 LPCWSTR Description); 5169 5170 HRESULT (STDMETHODCALLTYPE *UnregisterFilter)( 5171 IFilterMapper2* This, 5172 const CLSID *pclsidCategory, 5173 LPCOLESTR szInstance, 5174 REFCLSID Filter); 5175 5176 HRESULT (STDMETHODCALLTYPE *RegisterFilter)( 5177 IFilterMapper2* This, 5178 REFCLSID clsidFilter, 5179 LPCWSTR Name, 5180 IMoniker **ppMoniker, 5181 const CLSID *pclsidCategory, 5182 LPCOLESTR szInstance, 5183 const REGFILTER2 *prf2); 5184 5185 HRESULT (STDMETHODCALLTYPE *EnumMatchingFilters)( 5186 IFilterMapper2* This, 5187 IEnumMoniker **ppEnum, 5188 DWORD dwFlags, 5189 WINBOOL bExactMatch, 5190 DWORD dwMerit, 5191 WINBOOL bInputNeeded, 5192 DWORD cInputTypes, 5193 const GUID *pInputTypes, 5194 const REGPINMEDIUM *pMedIn, 5195 const CLSID *pPinCategoryIn, 5196 WINBOOL bRender, 5197 WINBOOL bOutputNeeded, 5198 DWORD cOutputTypes, 5199 const GUID *pOutputTypes, 5200 const REGPINMEDIUM *pMedOut, 5201 const CLSID *pPinCategoryOut); 5202 5203 END_INTERFACE 5204 } IFilterMapper2Vtbl; 5205 interface IFilterMapper2 { 5206 CONST_VTBL IFilterMapper2Vtbl* lpVtbl; 5207 }; 5208 5209 #ifdef COBJMACROS 5210 #ifndef WIDL_C_INLINE_WRAPPERS 5211 /*** IUnknown methods ***/ 5212 #define IFilterMapper2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5213 #define IFilterMapper2_AddRef(This) (This)->lpVtbl->AddRef(This) 5214 #define IFilterMapper2_Release(This) (This)->lpVtbl->Release(This) 5215 /*** IFilterMapper2 methods ***/ 5216 #define IFilterMapper2_CreateCategory(This,clsidCategory,dwCategoryMerit,Description) (This)->lpVtbl->CreateCategory(This,clsidCategory,dwCategoryMerit,Description) 5217 #define IFilterMapper2_UnregisterFilter(This,pclsidCategory,szInstance,Filter) (This)->lpVtbl->UnregisterFilter(This,pclsidCategory,szInstance,Filter) 5218 #define IFilterMapper2_RegisterFilter(This,clsidFilter,Name,ppMoniker,pclsidCategory,szInstance,prf2) (This)->lpVtbl->RegisterFilter(This,clsidFilter,Name,ppMoniker,pclsidCategory,szInstance,prf2) 5219 #define IFilterMapper2_EnumMatchingFilters(This,ppEnum,dwFlags,bExactMatch,dwMerit,bInputNeeded,cInputTypes,pInputTypes,pMedIn,pPinCategoryIn,bRender,bOutputNeeded,cOutputTypes,pOutputTypes,pMedOut,pPinCategoryOut) (This)->lpVtbl->EnumMatchingFilters(This,ppEnum,dwFlags,bExactMatch,dwMerit,bInputNeeded,cInputTypes,pInputTypes,pMedIn,pPinCategoryIn,bRender,bOutputNeeded,cOutputTypes,pOutputTypes,pMedOut,pPinCategoryOut) 5220 #else 5221 /*** IUnknown methods ***/ 5222 static FORCEINLINE HRESULT IFilterMapper2_QueryInterface(IFilterMapper2* This,REFIID riid,void **ppvObject) { 5223 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5224 } 5225 static FORCEINLINE ULONG IFilterMapper2_AddRef(IFilterMapper2* This) { 5226 return This->lpVtbl->AddRef(This); 5227 } 5228 static FORCEINLINE ULONG IFilterMapper2_Release(IFilterMapper2* This) { 5229 return This->lpVtbl->Release(This); 5230 } 5231 /*** IFilterMapper2 methods ***/ 5232 static FORCEINLINE HRESULT IFilterMapper2_CreateCategory(IFilterMapper2* This,REFCLSID clsidCategory,DWORD dwCategoryMerit,LPCWSTR Description) { 5233 return This->lpVtbl->CreateCategory(This,clsidCategory,dwCategoryMerit,Description); 5234 } 5235 static FORCEINLINE HRESULT IFilterMapper2_UnregisterFilter(IFilterMapper2* This,const CLSID *pclsidCategory,LPCOLESTR szInstance,REFCLSID Filter) { 5236 return This->lpVtbl->UnregisterFilter(This,pclsidCategory,szInstance,Filter); 5237 } 5238 static FORCEINLINE HRESULT IFilterMapper2_RegisterFilter(IFilterMapper2* This,REFCLSID clsidFilter,LPCWSTR Name,IMoniker **ppMoniker,const CLSID *pclsidCategory,LPCOLESTR szInstance,const REGFILTER2 *prf2) { 5239 return This->lpVtbl->RegisterFilter(This,clsidFilter,Name,ppMoniker,pclsidCategory,szInstance,prf2); 5240 } 5241 static FORCEINLINE HRESULT IFilterMapper2_EnumMatchingFilters(IFilterMapper2* This,IEnumMoniker **ppEnum,DWORD dwFlags,WINBOOL bExactMatch,DWORD dwMerit,WINBOOL bInputNeeded,DWORD cInputTypes,const GUID *pInputTypes,const REGPINMEDIUM *pMedIn,const CLSID *pPinCategoryIn,WINBOOL bRender,WINBOOL bOutputNeeded,DWORD cOutputTypes,const GUID *pOutputTypes,const REGPINMEDIUM *pMedOut,const CLSID *pPinCategoryOut) { 5242 return This->lpVtbl->EnumMatchingFilters(This,ppEnum,dwFlags,bExactMatch,dwMerit,bInputNeeded,cInputTypes,pInputTypes,pMedIn,pPinCategoryIn,bRender,bOutputNeeded,cOutputTypes,pOutputTypes,pMedOut,pPinCategoryOut); 5243 } 5244 #endif 5245 #endif 5246 5247 #endif 5248 5249 HRESULT STDMETHODCALLTYPE IFilterMapper2_CreateCategory_Proxy( 5250 IFilterMapper2* This, 5251 REFCLSID clsidCategory, 5252 DWORD dwCategoryMerit, 5253 LPCWSTR Description); 5254 void __RPC_STUB IFilterMapper2_CreateCategory_Stub( 5255 IRpcStubBuffer* This, 5256 IRpcChannelBuffer* pRpcChannelBuffer, 5257 PRPC_MESSAGE pRpcMessage, 5258 DWORD* pdwStubPhase); 5259 HRESULT STDMETHODCALLTYPE IFilterMapper2_UnregisterFilter_Proxy( 5260 IFilterMapper2* This, 5261 const CLSID *pclsidCategory, 5262 LPCOLESTR szInstance, 5263 REFCLSID Filter); 5264 void __RPC_STUB IFilterMapper2_UnregisterFilter_Stub( 5265 IRpcStubBuffer* This, 5266 IRpcChannelBuffer* pRpcChannelBuffer, 5267 PRPC_MESSAGE pRpcMessage, 5268 DWORD* pdwStubPhase); 5269 HRESULT STDMETHODCALLTYPE IFilterMapper2_RegisterFilter_Proxy( 5270 IFilterMapper2* This, 5271 REFCLSID clsidFilter, 5272 LPCWSTR Name, 5273 IMoniker **ppMoniker, 5274 const CLSID *pclsidCategory, 5275 LPCOLESTR szInstance, 5276 const REGFILTER2 *prf2); 5277 void __RPC_STUB IFilterMapper2_RegisterFilter_Stub( 5278 IRpcStubBuffer* This, 5279 IRpcChannelBuffer* pRpcChannelBuffer, 5280 PRPC_MESSAGE pRpcMessage, 5281 DWORD* pdwStubPhase); 5282 HRESULT STDMETHODCALLTYPE IFilterMapper2_EnumMatchingFilters_Proxy( 5283 IFilterMapper2* This, 5284 IEnumMoniker **ppEnum, 5285 DWORD dwFlags, 5286 WINBOOL bExactMatch, 5287 DWORD dwMerit, 5288 WINBOOL bInputNeeded, 5289 DWORD cInputTypes, 5290 const GUID *pInputTypes, 5291 const REGPINMEDIUM *pMedIn, 5292 const CLSID *pPinCategoryIn, 5293 WINBOOL bRender, 5294 WINBOOL bOutputNeeded, 5295 DWORD cOutputTypes, 5296 const GUID *pOutputTypes, 5297 const REGPINMEDIUM *pMedOut, 5298 const CLSID *pPinCategoryOut); 5299 void __RPC_STUB IFilterMapper2_EnumMatchingFilters_Stub( 5300 IRpcStubBuffer* This, 5301 IRpcChannelBuffer* pRpcChannelBuffer, 5302 PRPC_MESSAGE pRpcMessage, 5303 DWORD* pdwStubPhase); 5304 5305 #endif /* __IFilterMapper2_INTERFACE_DEFINED__ */ 5306 5307 /***************************************************************************** 5308 * IFilterMapper3 interface 5309 */ 5310 #ifndef __IFilterMapper3_INTERFACE_DEFINED__ 5311 #define __IFilterMapper3_INTERFACE_DEFINED__ 5312 5313 DEFINE_GUID(IID_IFilterMapper3, 0xb79bb0b1, 0x33c1, 0x11d1, 0xab,0xe1, 0x00,0xa0,0xc9,0x05,0xf3,0x75); 5314 #if defined(__cplusplus) && !defined(CINTERFACE) 5315 MIDL_INTERFACE("b79bb0b1-33c1-11d1-abe1-00a0c905f375") 5316 IFilterMapper3 : public IFilterMapper2 5317 { 5318 virtual HRESULT STDMETHODCALLTYPE GetICreateDevEnum( 5319 ICreateDevEnum **ppEnum) = 0; 5320 5321 }; 5322 #ifdef __CRT_UUID_DECL 5323 __CRT_UUID_DECL(IFilterMapper3, 0xb79bb0b1, 0x33c1, 0x11d1, 0xab,0xe1, 0x00,0xa0,0xc9,0x05,0xf3,0x75) 5324 #endif 5325 #else 5326 typedef struct IFilterMapper3Vtbl { 5327 BEGIN_INTERFACE 5328 5329 /*** IUnknown methods ***/ 5330 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5331 IFilterMapper3* This, 5332 REFIID riid, 5333 void **ppvObject); 5334 5335 ULONG (STDMETHODCALLTYPE *AddRef)( 5336 IFilterMapper3* This); 5337 5338 ULONG (STDMETHODCALLTYPE *Release)( 5339 IFilterMapper3* This); 5340 5341 /*** IFilterMapper2 methods ***/ 5342 HRESULT (STDMETHODCALLTYPE *CreateCategory)( 5343 IFilterMapper3* This, 5344 REFCLSID clsidCategory, 5345 DWORD dwCategoryMerit, 5346 LPCWSTR Description); 5347 5348 HRESULT (STDMETHODCALLTYPE *UnregisterFilter)( 5349 IFilterMapper3* This, 5350 const CLSID *pclsidCategory, 5351 LPCOLESTR szInstance, 5352 REFCLSID Filter); 5353 5354 HRESULT (STDMETHODCALLTYPE *RegisterFilter)( 5355 IFilterMapper3* This, 5356 REFCLSID clsidFilter, 5357 LPCWSTR Name, 5358 IMoniker **ppMoniker, 5359 const CLSID *pclsidCategory, 5360 LPCOLESTR szInstance, 5361 const REGFILTER2 *prf2); 5362 5363 HRESULT (STDMETHODCALLTYPE *EnumMatchingFilters)( 5364 IFilterMapper3* This, 5365 IEnumMoniker **ppEnum, 5366 DWORD dwFlags, 5367 WINBOOL bExactMatch, 5368 DWORD dwMerit, 5369 WINBOOL bInputNeeded, 5370 DWORD cInputTypes, 5371 const GUID *pInputTypes, 5372 const REGPINMEDIUM *pMedIn, 5373 const CLSID *pPinCategoryIn, 5374 WINBOOL bRender, 5375 WINBOOL bOutputNeeded, 5376 DWORD cOutputTypes, 5377 const GUID *pOutputTypes, 5378 const REGPINMEDIUM *pMedOut, 5379 const CLSID *pPinCategoryOut); 5380 5381 /*** IFilterMapper3 methods ***/ 5382 HRESULT (STDMETHODCALLTYPE *GetICreateDevEnum)( 5383 IFilterMapper3* This, 5384 ICreateDevEnum **ppEnum); 5385 5386 END_INTERFACE 5387 } IFilterMapper3Vtbl; 5388 interface IFilterMapper3 { 5389 CONST_VTBL IFilterMapper3Vtbl* lpVtbl; 5390 }; 5391 5392 #ifdef COBJMACROS 5393 #ifndef WIDL_C_INLINE_WRAPPERS 5394 /*** IUnknown methods ***/ 5395 #define IFilterMapper3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5396 #define IFilterMapper3_AddRef(This) (This)->lpVtbl->AddRef(This) 5397 #define IFilterMapper3_Release(This) (This)->lpVtbl->Release(This) 5398 /*** IFilterMapper2 methods ***/ 5399 #define IFilterMapper3_CreateCategory(This,clsidCategory,dwCategoryMerit,Description) (This)->lpVtbl->CreateCategory(This,clsidCategory,dwCategoryMerit,Description) 5400 #define IFilterMapper3_UnregisterFilter(This,pclsidCategory,szInstance,Filter) (This)->lpVtbl->UnregisterFilter(This,pclsidCategory,szInstance,Filter) 5401 #define IFilterMapper3_RegisterFilter(This,clsidFilter,Name,ppMoniker,pclsidCategory,szInstance,prf2) (This)->lpVtbl->RegisterFilter(This,clsidFilter,Name,ppMoniker,pclsidCategory,szInstance,prf2) 5402 #define IFilterMapper3_EnumMatchingFilters(This,ppEnum,dwFlags,bExactMatch,dwMerit,bInputNeeded,cInputTypes,pInputTypes,pMedIn,pPinCategoryIn,bRender,bOutputNeeded,cOutputTypes,pOutputTypes,pMedOut,pPinCategoryOut) (This)->lpVtbl->EnumMatchingFilters(This,ppEnum,dwFlags,bExactMatch,dwMerit,bInputNeeded,cInputTypes,pInputTypes,pMedIn,pPinCategoryIn,bRender,bOutputNeeded,cOutputTypes,pOutputTypes,pMedOut,pPinCategoryOut) 5403 /*** IFilterMapper3 methods ***/ 5404 #define IFilterMapper3_GetICreateDevEnum(This,ppEnum) (This)->lpVtbl->GetICreateDevEnum(This,ppEnum) 5405 #else 5406 /*** IUnknown methods ***/ 5407 static FORCEINLINE HRESULT IFilterMapper3_QueryInterface(IFilterMapper3* This,REFIID riid,void **ppvObject) { 5408 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5409 } 5410 static FORCEINLINE ULONG IFilterMapper3_AddRef(IFilterMapper3* This) { 5411 return This->lpVtbl->AddRef(This); 5412 } 5413 static FORCEINLINE ULONG IFilterMapper3_Release(IFilterMapper3* This) { 5414 return This->lpVtbl->Release(This); 5415 } 5416 /*** IFilterMapper2 methods ***/ 5417 static FORCEINLINE HRESULT IFilterMapper3_CreateCategory(IFilterMapper3* This,REFCLSID clsidCategory,DWORD dwCategoryMerit,LPCWSTR Description) { 5418 return This->lpVtbl->CreateCategory(This,clsidCategory,dwCategoryMerit,Description); 5419 } 5420 static FORCEINLINE HRESULT IFilterMapper3_UnregisterFilter(IFilterMapper3* This,const CLSID *pclsidCategory,LPCOLESTR szInstance,REFCLSID Filter) { 5421 return This->lpVtbl->UnregisterFilter(This,pclsidCategory,szInstance,Filter); 5422 } 5423 static FORCEINLINE HRESULT IFilterMapper3_RegisterFilter(IFilterMapper3* This,REFCLSID clsidFilter,LPCWSTR Name,IMoniker **ppMoniker,const CLSID *pclsidCategory,LPCOLESTR szInstance,const REGFILTER2 *prf2) { 5424 return This->lpVtbl->RegisterFilter(This,clsidFilter,Name,ppMoniker,pclsidCategory,szInstance,prf2); 5425 } 5426 static FORCEINLINE HRESULT IFilterMapper3_EnumMatchingFilters(IFilterMapper3* This,IEnumMoniker **ppEnum,DWORD dwFlags,WINBOOL bExactMatch,DWORD dwMerit,WINBOOL bInputNeeded,DWORD cInputTypes,const GUID *pInputTypes,const REGPINMEDIUM *pMedIn,const CLSID *pPinCategoryIn,WINBOOL bRender,WINBOOL bOutputNeeded,DWORD cOutputTypes,const GUID *pOutputTypes,const REGPINMEDIUM *pMedOut,const CLSID *pPinCategoryOut) { 5427 return This->lpVtbl->EnumMatchingFilters(This,ppEnum,dwFlags,bExactMatch,dwMerit,bInputNeeded,cInputTypes,pInputTypes,pMedIn,pPinCategoryIn,bRender,bOutputNeeded,cOutputTypes,pOutputTypes,pMedOut,pPinCategoryOut); 5428 } 5429 /*** IFilterMapper3 methods ***/ 5430 static FORCEINLINE HRESULT IFilterMapper3_GetICreateDevEnum(IFilterMapper3* This,ICreateDevEnum **ppEnum) { 5431 return This->lpVtbl->GetICreateDevEnum(This,ppEnum); 5432 } 5433 #endif 5434 #endif 5435 5436 #endif 5437 5438 HRESULT STDMETHODCALLTYPE IFilterMapper3_GetICreateDevEnum_Proxy( 5439 IFilterMapper3* This, 5440 ICreateDevEnum **ppEnum); 5441 void __RPC_STUB IFilterMapper3_GetICreateDevEnum_Stub( 5442 IRpcStubBuffer* This, 5443 IRpcChannelBuffer* pRpcChannelBuffer, 5444 PRPC_MESSAGE pRpcMessage, 5445 DWORD* pdwStubPhase); 5446 5447 #endif /* __IFilterMapper3_INTERFACE_DEFINED__ */ 5448 5449 typedef enum tagQualityMessageType { 5450 Famine = 0, 5451 Flood = 1 5452 } QualityMessageType; 5453 typedef struct tagQuality { 5454 QualityMessageType Type; 5455 LONG Proportion; 5456 REFERENCE_TIME Late; 5457 REFERENCE_TIME TimeStamp; 5458 } Quality; 5459 typedef IQualityControl *PQUALITYCONTROL; 5460 /***************************************************************************** 5461 * IQualityControl interface 5462 */ 5463 #ifndef __IQualityControl_INTERFACE_DEFINED__ 5464 #define __IQualityControl_INTERFACE_DEFINED__ 5465 5466 DEFINE_GUID(IID_IQualityControl, 0x56a868a5, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 5467 #if defined(__cplusplus) && !defined(CINTERFACE) 5468 MIDL_INTERFACE("56a868a5-0ad4-11ce-b03a-0020af0ba770") 5469 IQualityControl : public IUnknown 5470 { 5471 virtual HRESULT STDMETHODCALLTYPE Notify( 5472 IBaseFilter *pSelf, 5473 Quality q) = 0; 5474 5475 virtual HRESULT STDMETHODCALLTYPE SetSink( 5476 IQualityControl *piqc) = 0; 5477 5478 }; 5479 #ifdef __CRT_UUID_DECL 5480 __CRT_UUID_DECL(IQualityControl, 0x56a868a5, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 5481 #endif 5482 #else 5483 typedef struct IQualityControlVtbl { 5484 BEGIN_INTERFACE 5485 5486 /*** IUnknown methods ***/ 5487 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5488 IQualityControl* This, 5489 REFIID riid, 5490 void **ppvObject); 5491 5492 ULONG (STDMETHODCALLTYPE *AddRef)( 5493 IQualityControl* This); 5494 5495 ULONG (STDMETHODCALLTYPE *Release)( 5496 IQualityControl* This); 5497 5498 /*** IQualityControl methods ***/ 5499 HRESULT (STDMETHODCALLTYPE *Notify)( 5500 IQualityControl* This, 5501 IBaseFilter *pSelf, 5502 Quality q); 5503 5504 HRESULT (STDMETHODCALLTYPE *SetSink)( 5505 IQualityControl* This, 5506 IQualityControl *piqc); 5507 5508 END_INTERFACE 5509 } IQualityControlVtbl; 5510 interface IQualityControl { 5511 CONST_VTBL IQualityControlVtbl* lpVtbl; 5512 }; 5513 5514 #ifdef COBJMACROS 5515 #ifndef WIDL_C_INLINE_WRAPPERS 5516 /*** IUnknown methods ***/ 5517 #define IQualityControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5518 #define IQualityControl_AddRef(This) (This)->lpVtbl->AddRef(This) 5519 #define IQualityControl_Release(This) (This)->lpVtbl->Release(This) 5520 /*** IQualityControl methods ***/ 5521 #define IQualityControl_Notify(This,pSelf,q) (This)->lpVtbl->Notify(This,pSelf,q) 5522 #define IQualityControl_SetSink(This,piqc) (This)->lpVtbl->SetSink(This,piqc) 5523 #else 5524 /*** IUnknown methods ***/ 5525 static FORCEINLINE HRESULT IQualityControl_QueryInterface(IQualityControl* This,REFIID riid,void **ppvObject) { 5526 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5527 } 5528 static FORCEINLINE ULONG IQualityControl_AddRef(IQualityControl* This) { 5529 return This->lpVtbl->AddRef(This); 5530 } 5531 static FORCEINLINE ULONG IQualityControl_Release(IQualityControl* This) { 5532 return This->lpVtbl->Release(This); 5533 } 5534 /*** IQualityControl methods ***/ 5535 static FORCEINLINE HRESULT IQualityControl_Notify(IQualityControl* This,IBaseFilter *pSelf,Quality q) { 5536 return This->lpVtbl->Notify(This,pSelf,q); 5537 } 5538 static FORCEINLINE HRESULT IQualityControl_SetSink(IQualityControl* This,IQualityControl *piqc) { 5539 return This->lpVtbl->SetSink(This,piqc); 5540 } 5541 #endif 5542 #endif 5543 5544 #endif 5545 5546 HRESULT STDMETHODCALLTYPE IQualityControl_Notify_Proxy( 5547 IQualityControl* This, 5548 IBaseFilter *pSelf, 5549 Quality q); 5550 void __RPC_STUB IQualityControl_Notify_Stub( 5551 IRpcStubBuffer* This, 5552 IRpcChannelBuffer* pRpcChannelBuffer, 5553 PRPC_MESSAGE pRpcMessage, 5554 DWORD* pdwStubPhase); 5555 HRESULT STDMETHODCALLTYPE IQualityControl_SetSink_Proxy( 5556 IQualityControl* This, 5557 IQualityControl *piqc); 5558 void __RPC_STUB IQualityControl_SetSink_Stub( 5559 IRpcStubBuffer* This, 5560 IRpcChannelBuffer* pRpcChannelBuffer, 5561 PRPC_MESSAGE pRpcMessage, 5562 DWORD* pdwStubPhase); 5563 5564 #endif /* __IQualityControl_INTERFACE_DEFINED__ */ 5565 5566 enum { 5567 CK_NOCOLORKEY = 0x0, 5568 CK_INDEX = 0x1, 5569 CK_RGB = 0x2 5570 }; 5571 5572 typedef struct tagCOLORKEY { 5573 DWORD KeyType; 5574 DWORD PaletteIndex; 5575 COLORREF LowColorValue; 5576 COLORREF HighColorValue; 5577 } COLORKEY; 5578 enum { 5579 ADVISE_NONE = 0x0, 5580 ADVISE_CLIPPING = 0x1, 5581 ADVISE_PALETTE = 0x2, 5582 ADVISE_COLORKEY = 0x4, 5583 ADVISE_POSITION = 0x8, 5584 ADVISE_DISPLAY_CHANGE = 0x10 5585 }; 5586 5587 #define ADVISE_ALL (((ADVISE_CLIPPING | ADVISE_PALETTE) | ADVISE_COLORKEY) | ADVISE_POSITION) 5588 5589 #define ADVISE_ALL2 (ADVISE_ALL | ADVISE_DISPLAY_CHANGE) 5590 5591 #ifndef _WINGDI_ 5592 typedef struct _RGNDATAHEADER { 5593 DWORD dwSize; 5594 DWORD iType; 5595 DWORD nCount; 5596 DWORD nRgnSize; 5597 RECT rcBound; 5598 } RGNDATAHEADER; 5599 typedef struct _RGNDATA { 5600 RGNDATAHEADER rdh; 5601 char Buffer[1]; 5602 } RGNDATA; 5603 #endif /* _WINGDI_ */ 5604 /***************************************************************************** 5605 * IOverlayNotify interface 5606 */ 5607 #ifndef __IOverlayNotify_INTERFACE_DEFINED__ 5608 #define __IOverlayNotify_INTERFACE_DEFINED__ 5609 5610 DEFINE_GUID(IID_IOverlayNotify, 0x56a868a0, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 5611 #if defined(__cplusplus) && !defined(CINTERFACE) 5612 MIDL_INTERFACE("56a868a0-0ad4-11ce-b03a-0020af0ba770") 5613 IOverlayNotify : public IUnknown 5614 { 5615 virtual HRESULT STDMETHODCALLTYPE OnPaletteChange( 5616 DWORD dwColors, 5617 const PALETTEENTRY *pPalette) = 0; 5618 5619 virtual HRESULT STDMETHODCALLTYPE OnClipChange( 5620 const RECT *pSourceRect, 5621 const RECT *pDestinationRect, 5622 const RGNDATA *pRgnData) = 0; 5623 5624 virtual HRESULT STDMETHODCALLTYPE OnColorKeyChange( 5625 const COLORKEY *pColorKey) = 0; 5626 5627 virtual HRESULT STDMETHODCALLTYPE OnPositionChange( 5628 const RECT *pSourceRect, 5629 const RECT *pDestinationRect) = 0; 5630 5631 }; 5632 #ifdef __CRT_UUID_DECL 5633 __CRT_UUID_DECL(IOverlayNotify, 0x56a868a0, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 5634 #endif 5635 #else 5636 typedef struct IOverlayNotifyVtbl { 5637 BEGIN_INTERFACE 5638 5639 /*** IUnknown methods ***/ 5640 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5641 IOverlayNotify* This, 5642 REFIID riid, 5643 void **ppvObject); 5644 5645 ULONG (STDMETHODCALLTYPE *AddRef)( 5646 IOverlayNotify* This); 5647 5648 ULONG (STDMETHODCALLTYPE *Release)( 5649 IOverlayNotify* This); 5650 5651 /*** IOverlayNotify methods ***/ 5652 HRESULT (STDMETHODCALLTYPE *OnPaletteChange)( 5653 IOverlayNotify* This, 5654 DWORD dwColors, 5655 const PALETTEENTRY *pPalette); 5656 5657 HRESULT (STDMETHODCALLTYPE *OnClipChange)( 5658 IOverlayNotify* This, 5659 const RECT *pSourceRect, 5660 const RECT *pDestinationRect, 5661 const RGNDATA *pRgnData); 5662 5663 HRESULT (STDMETHODCALLTYPE *OnColorKeyChange)( 5664 IOverlayNotify* This, 5665 const COLORKEY *pColorKey); 5666 5667 HRESULT (STDMETHODCALLTYPE *OnPositionChange)( 5668 IOverlayNotify* This, 5669 const RECT *pSourceRect, 5670 const RECT *pDestinationRect); 5671 5672 END_INTERFACE 5673 } IOverlayNotifyVtbl; 5674 interface IOverlayNotify { 5675 CONST_VTBL IOverlayNotifyVtbl* lpVtbl; 5676 }; 5677 5678 #ifdef COBJMACROS 5679 #ifndef WIDL_C_INLINE_WRAPPERS 5680 /*** IUnknown methods ***/ 5681 #define IOverlayNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5682 #define IOverlayNotify_AddRef(This) (This)->lpVtbl->AddRef(This) 5683 #define IOverlayNotify_Release(This) (This)->lpVtbl->Release(This) 5684 /*** IOverlayNotify methods ***/ 5685 #define IOverlayNotify_OnPaletteChange(This,dwColors,pPalette) (This)->lpVtbl->OnPaletteChange(This,dwColors,pPalette) 5686 #define IOverlayNotify_OnClipChange(This,pSourceRect,pDestinationRect,pRgnData) (This)->lpVtbl->OnClipChange(This,pSourceRect,pDestinationRect,pRgnData) 5687 #define IOverlayNotify_OnColorKeyChange(This,pColorKey) (This)->lpVtbl->OnColorKeyChange(This,pColorKey) 5688 #define IOverlayNotify_OnPositionChange(This,pSourceRect,pDestinationRect) (This)->lpVtbl->OnPositionChange(This,pSourceRect,pDestinationRect) 5689 #else 5690 /*** IUnknown methods ***/ 5691 static FORCEINLINE HRESULT IOverlayNotify_QueryInterface(IOverlayNotify* This,REFIID riid,void **ppvObject) { 5692 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5693 } 5694 static FORCEINLINE ULONG IOverlayNotify_AddRef(IOverlayNotify* This) { 5695 return This->lpVtbl->AddRef(This); 5696 } 5697 static FORCEINLINE ULONG IOverlayNotify_Release(IOverlayNotify* This) { 5698 return This->lpVtbl->Release(This); 5699 } 5700 /*** IOverlayNotify methods ***/ 5701 static FORCEINLINE HRESULT IOverlayNotify_OnPaletteChange(IOverlayNotify* This,DWORD dwColors,const PALETTEENTRY *pPalette) { 5702 return This->lpVtbl->OnPaletteChange(This,dwColors,pPalette); 5703 } 5704 static FORCEINLINE HRESULT IOverlayNotify_OnClipChange(IOverlayNotify* This,const RECT *pSourceRect,const RECT *pDestinationRect,const RGNDATA *pRgnData) { 5705 return This->lpVtbl->OnClipChange(This,pSourceRect,pDestinationRect,pRgnData); 5706 } 5707 static FORCEINLINE HRESULT IOverlayNotify_OnColorKeyChange(IOverlayNotify* This,const COLORKEY *pColorKey) { 5708 return This->lpVtbl->OnColorKeyChange(This,pColorKey); 5709 } 5710 static FORCEINLINE HRESULT IOverlayNotify_OnPositionChange(IOverlayNotify* This,const RECT *pSourceRect,const RECT *pDestinationRect) { 5711 return This->lpVtbl->OnPositionChange(This,pSourceRect,pDestinationRect); 5712 } 5713 #endif 5714 #endif 5715 5716 #endif 5717 5718 HRESULT STDMETHODCALLTYPE IOverlayNotify_OnPaletteChange_Proxy( 5719 IOverlayNotify* This, 5720 DWORD dwColors, 5721 const PALETTEENTRY *pPalette); 5722 void __RPC_STUB IOverlayNotify_OnPaletteChange_Stub( 5723 IRpcStubBuffer* This, 5724 IRpcChannelBuffer* pRpcChannelBuffer, 5725 PRPC_MESSAGE pRpcMessage, 5726 DWORD* pdwStubPhase); 5727 HRESULT STDMETHODCALLTYPE IOverlayNotify_OnClipChange_Proxy( 5728 IOverlayNotify* This, 5729 const RECT *pSourceRect, 5730 const RECT *pDestinationRect, 5731 const RGNDATA *pRgnData); 5732 void __RPC_STUB IOverlayNotify_OnClipChange_Stub( 5733 IRpcStubBuffer* This, 5734 IRpcChannelBuffer* pRpcChannelBuffer, 5735 PRPC_MESSAGE pRpcMessage, 5736 DWORD* pdwStubPhase); 5737 HRESULT STDMETHODCALLTYPE IOverlayNotify_OnColorKeyChange_Proxy( 5738 IOverlayNotify* This, 5739 const COLORKEY *pColorKey); 5740 void __RPC_STUB IOverlayNotify_OnColorKeyChange_Stub( 5741 IRpcStubBuffer* This, 5742 IRpcChannelBuffer* pRpcChannelBuffer, 5743 PRPC_MESSAGE pRpcMessage, 5744 DWORD* pdwStubPhase); 5745 HRESULT STDMETHODCALLTYPE IOverlayNotify_OnPositionChange_Proxy( 5746 IOverlayNotify* This, 5747 const RECT *pSourceRect, 5748 const RECT *pDestinationRect); 5749 void __RPC_STUB IOverlayNotify_OnPositionChange_Stub( 5750 IRpcStubBuffer* This, 5751 IRpcChannelBuffer* pRpcChannelBuffer, 5752 PRPC_MESSAGE pRpcMessage, 5753 DWORD* pdwStubPhase); 5754 5755 #endif /* __IOverlayNotify_INTERFACE_DEFINED__ */ 5756 5757 typedef IOverlayNotify *POVERLAYNOTIFY; 5758 #if 0 5759 typedef HANDLE HMONITOR; 5760 #endif /* 0 */ 5761 /***************************************************************************** 5762 * IOverlayNotify2 interface 5763 */ 5764 #ifndef __IOverlayNotify2_INTERFACE_DEFINED__ 5765 #define __IOverlayNotify2_INTERFACE_DEFINED__ 5766 5767 DEFINE_GUID(IID_IOverlayNotify2, 0x680efa10, 0xd535, 0x11d1, 0x87,0xc8, 0x00,0xa0,0xc9,0x22,0x31,0x96); 5768 #if defined(__cplusplus) && !defined(CINTERFACE) 5769 MIDL_INTERFACE("680efa10-d535-11d1-87c8-00a0c9223196") 5770 IOverlayNotify2 : public IOverlayNotify 5771 { 5772 virtual HRESULT STDMETHODCALLTYPE OnDisplayChange( 5773 HMONITOR hMonitor) = 0; 5774 5775 }; 5776 #ifdef __CRT_UUID_DECL 5777 __CRT_UUID_DECL(IOverlayNotify2, 0x680efa10, 0xd535, 0x11d1, 0x87,0xc8, 0x00,0xa0,0xc9,0x22,0x31,0x96) 5778 #endif 5779 #else 5780 typedef struct IOverlayNotify2Vtbl { 5781 BEGIN_INTERFACE 5782 5783 /*** IUnknown methods ***/ 5784 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5785 IOverlayNotify2* This, 5786 REFIID riid, 5787 void **ppvObject); 5788 5789 ULONG (STDMETHODCALLTYPE *AddRef)( 5790 IOverlayNotify2* This); 5791 5792 ULONG (STDMETHODCALLTYPE *Release)( 5793 IOverlayNotify2* This); 5794 5795 /*** IOverlayNotify methods ***/ 5796 HRESULT (STDMETHODCALLTYPE *OnPaletteChange)( 5797 IOverlayNotify2* This, 5798 DWORD dwColors, 5799 const PALETTEENTRY *pPalette); 5800 5801 HRESULT (STDMETHODCALLTYPE *OnClipChange)( 5802 IOverlayNotify2* This, 5803 const RECT *pSourceRect, 5804 const RECT *pDestinationRect, 5805 const RGNDATA *pRgnData); 5806 5807 HRESULT (STDMETHODCALLTYPE *OnColorKeyChange)( 5808 IOverlayNotify2* This, 5809 const COLORKEY *pColorKey); 5810 5811 HRESULT (STDMETHODCALLTYPE *OnPositionChange)( 5812 IOverlayNotify2* This, 5813 const RECT *pSourceRect, 5814 const RECT *pDestinationRect); 5815 5816 /*** IOverlayNotify2 methods ***/ 5817 HRESULT (STDMETHODCALLTYPE *OnDisplayChange)( 5818 IOverlayNotify2* This, 5819 HMONITOR hMonitor); 5820 5821 END_INTERFACE 5822 } IOverlayNotify2Vtbl; 5823 interface IOverlayNotify2 { 5824 CONST_VTBL IOverlayNotify2Vtbl* lpVtbl; 5825 }; 5826 5827 #ifdef COBJMACROS 5828 #ifndef WIDL_C_INLINE_WRAPPERS 5829 /*** IUnknown methods ***/ 5830 #define IOverlayNotify2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5831 #define IOverlayNotify2_AddRef(This) (This)->lpVtbl->AddRef(This) 5832 #define IOverlayNotify2_Release(This) (This)->lpVtbl->Release(This) 5833 /*** IOverlayNotify methods ***/ 5834 #define IOverlayNotify2_OnPaletteChange(This,dwColors,pPalette) (This)->lpVtbl->OnPaletteChange(This,dwColors,pPalette) 5835 #define IOverlayNotify2_OnClipChange(This,pSourceRect,pDestinationRect,pRgnData) (This)->lpVtbl->OnClipChange(This,pSourceRect,pDestinationRect,pRgnData) 5836 #define IOverlayNotify2_OnColorKeyChange(This,pColorKey) (This)->lpVtbl->OnColorKeyChange(This,pColorKey) 5837 #define IOverlayNotify2_OnPositionChange(This,pSourceRect,pDestinationRect) (This)->lpVtbl->OnPositionChange(This,pSourceRect,pDestinationRect) 5838 /*** IOverlayNotify2 methods ***/ 5839 #define IOverlayNotify2_OnDisplayChange(This,hMonitor) (This)->lpVtbl->OnDisplayChange(This,hMonitor) 5840 #else 5841 /*** IUnknown methods ***/ 5842 static FORCEINLINE HRESULT IOverlayNotify2_QueryInterface(IOverlayNotify2* This,REFIID riid,void **ppvObject) { 5843 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5844 } 5845 static FORCEINLINE ULONG IOverlayNotify2_AddRef(IOverlayNotify2* This) { 5846 return This->lpVtbl->AddRef(This); 5847 } 5848 static FORCEINLINE ULONG IOverlayNotify2_Release(IOverlayNotify2* This) { 5849 return This->lpVtbl->Release(This); 5850 } 5851 /*** IOverlayNotify methods ***/ 5852 static FORCEINLINE HRESULT IOverlayNotify2_OnPaletteChange(IOverlayNotify2* This,DWORD dwColors,const PALETTEENTRY *pPalette) { 5853 return This->lpVtbl->OnPaletteChange(This,dwColors,pPalette); 5854 } 5855 static FORCEINLINE HRESULT IOverlayNotify2_OnClipChange(IOverlayNotify2* This,const RECT *pSourceRect,const RECT *pDestinationRect,const RGNDATA *pRgnData) { 5856 return This->lpVtbl->OnClipChange(This,pSourceRect,pDestinationRect,pRgnData); 5857 } 5858 static FORCEINLINE HRESULT IOverlayNotify2_OnColorKeyChange(IOverlayNotify2* This,const COLORKEY *pColorKey) { 5859 return This->lpVtbl->OnColorKeyChange(This,pColorKey); 5860 } 5861 static FORCEINLINE HRESULT IOverlayNotify2_OnPositionChange(IOverlayNotify2* This,const RECT *pSourceRect,const RECT *pDestinationRect) { 5862 return This->lpVtbl->OnPositionChange(This,pSourceRect,pDestinationRect); 5863 } 5864 /*** IOverlayNotify2 methods ***/ 5865 static FORCEINLINE HRESULT IOverlayNotify2_OnDisplayChange(IOverlayNotify2* This,HMONITOR hMonitor) { 5866 return This->lpVtbl->OnDisplayChange(This,hMonitor); 5867 } 5868 #endif 5869 #endif 5870 5871 #endif 5872 5873 HRESULT STDMETHODCALLTYPE IOverlayNotify2_OnDisplayChange_Proxy( 5874 IOverlayNotify2* This, 5875 HMONITOR hMonitor); 5876 void __RPC_STUB IOverlayNotify2_OnDisplayChange_Stub( 5877 IRpcStubBuffer* This, 5878 IRpcChannelBuffer* pRpcChannelBuffer, 5879 PRPC_MESSAGE pRpcMessage, 5880 DWORD* pdwStubPhase); 5881 5882 #endif /* __IOverlayNotify2_INTERFACE_DEFINED__ */ 5883 5884 typedef IOverlayNotify2 *POVERLAYNOTIFY2; 5885 /***************************************************************************** 5886 * IOverlay interface 5887 */ 5888 #ifndef __IOverlay_INTERFACE_DEFINED__ 5889 #define __IOverlay_INTERFACE_DEFINED__ 5890 5891 DEFINE_GUID(IID_IOverlay, 0x56a868a1, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 5892 #if defined(__cplusplus) && !defined(CINTERFACE) 5893 MIDL_INTERFACE("56a868a1-0ad4-11ce-b03a-0020af0ba770") 5894 IOverlay : public IUnknown 5895 { 5896 virtual HRESULT STDMETHODCALLTYPE GetPalette( 5897 DWORD *pdwColors, 5898 PALETTEENTRY **ppPalette) = 0; 5899 5900 virtual HRESULT STDMETHODCALLTYPE SetPalette( 5901 DWORD dwColors, 5902 PALETTEENTRY *pPalette) = 0; 5903 5904 virtual HRESULT STDMETHODCALLTYPE GetDefaultColorKey( 5905 COLORKEY *pColorKey) = 0; 5906 5907 virtual HRESULT STDMETHODCALLTYPE GetColorKey( 5908 COLORKEY *pColorKey) = 0; 5909 5910 virtual HRESULT STDMETHODCALLTYPE SetColorKey( 5911 COLORKEY *pColorKey) = 0; 5912 5913 virtual HRESULT STDMETHODCALLTYPE GetWindowHandle( 5914 HWND *pHwnd) = 0; 5915 5916 virtual HRESULT STDMETHODCALLTYPE GetClipList( 5917 RECT *pSourceRect, 5918 RECT *pDestinationRect, 5919 RGNDATA **ppRgnData) = 0; 5920 5921 virtual HRESULT STDMETHODCALLTYPE GetVideoPosition( 5922 RECT *pSourceRect, 5923 RECT *pDestinationRect) = 0; 5924 5925 virtual HRESULT STDMETHODCALLTYPE Advise( 5926 IOverlayNotify *pOverlayNotify, 5927 DWORD dwInterests) = 0; 5928 5929 virtual HRESULT STDMETHODCALLTYPE Unadvise( 5930 ) = 0; 5931 5932 }; 5933 #ifdef __CRT_UUID_DECL 5934 __CRT_UUID_DECL(IOverlay, 0x56a868a1, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 5935 #endif 5936 #else 5937 typedef struct IOverlayVtbl { 5938 BEGIN_INTERFACE 5939 5940 /*** IUnknown methods ***/ 5941 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5942 IOverlay* This, 5943 REFIID riid, 5944 void **ppvObject); 5945 5946 ULONG (STDMETHODCALLTYPE *AddRef)( 5947 IOverlay* This); 5948 5949 ULONG (STDMETHODCALLTYPE *Release)( 5950 IOverlay* This); 5951 5952 /*** IOverlay methods ***/ 5953 HRESULT (STDMETHODCALLTYPE *GetPalette)( 5954 IOverlay* This, 5955 DWORD *pdwColors, 5956 PALETTEENTRY **ppPalette); 5957 5958 HRESULT (STDMETHODCALLTYPE *SetPalette)( 5959 IOverlay* This, 5960 DWORD dwColors, 5961 PALETTEENTRY *pPalette); 5962 5963 HRESULT (STDMETHODCALLTYPE *GetDefaultColorKey)( 5964 IOverlay* This, 5965 COLORKEY *pColorKey); 5966 5967 HRESULT (STDMETHODCALLTYPE *GetColorKey)( 5968 IOverlay* This, 5969 COLORKEY *pColorKey); 5970 5971 HRESULT (STDMETHODCALLTYPE *SetColorKey)( 5972 IOverlay* This, 5973 COLORKEY *pColorKey); 5974 5975 HRESULT (STDMETHODCALLTYPE *GetWindowHandle)( 5976 IOverlay* This, 5977 HWND *pHwnd); 5978 5979 HRESULT (STDMETHODCALLTYPE *GetClipList)( 5980 IOverlay* This, 5981 RECT *pSourceRect, 5982 RECT *pDestinationRect, 5983 RGNDATA **ppRgnData); 5984 5985 HRESULT (STDMETHODCALLTYPE *GetVideoPosition)( 5986 IOverlay* This, 5987 RECT *pSourceRect, 5988 RECT *pDestinationRect); 5989 5990 HRESULT (STDMETHODCALLTYPE *Advise)( 5991 IOverlay* This, 5992 IOverlayNotify *pOverlayNotify, 5993 DWORD dwInterests); 5994 5995 HRESULT (STDMETHODCALLTYPE *Unadvise)( 5996 IOverlay* This); 5997 5998 END_INTERFACE 5999 } IOverlayVtbl; 6000 interface IOverlay { 6001 CONST_VTBL IOverlayVtbl* lpVtbl; 6002 }; 6003 6004 #ifdef COBJMACROS 6005 #ifndef WIDL_C_INLINE_WRAPPERS 6006 /*** IUnknown methods ***/ 6007 #define IOverlay_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6008 #define IOverlay_AddRef(This) (This)->lpVtbl->AddRef(This) 6009 #define IOverlay_Release(This) (This)->lpVtbl->Release(This) 6010 /*** IOverlay methods ***/ 6011 #define IOverlay_GetPalette(This,pdwColors,ppPalette) (This)->lpVtbl->GetPalette(This,pdwColors,ppPalette) 6012 #define IOverlay_SetPalette(This,dwColors,pPalette) (This)->lpVtbl->SetPalette(This,dwColors,pPalette) 6013 #define IOverlay_GetDefaultColorKey(This,pColorKey) (This)->lpVtbl->GetDefaultColorKey(This,pColorKey) 6014 #define IOverlay_GetColorKey(This,pColorKey) (This)->lpVtbl->GetColorKey(This,pColorKey) 6015 #define IOverlay_SetColorKey(This,pColorKey) (This)->lpVtbl->SetColorKey(This,pColorKey) 6016 #define IOverlay_GetWindowHandle(This,pHwnd) (This)->lpVtbl->GetWindowHandle(This,pHwnd) 6017 #define IOverlay_GetClipList(This,pSourceRect,pDestinationRect,ppRgnData) (This)->lpVtbl->GetClipList(This,pSourceRect,pDestinationRect,ppRgnData) 6018 #define IOverlay_GetVideoPosition(This,pSourceRect,pDestinationRect) (This)->lpVtbl->GetVideoPosition(This,pSourceRect,pDestinationRect) 6019 #define IOverlay_Advise(This,pOverlayNotify,dwInterests) (This)->lpVtbl->Advise(This,pOverlayNotify,dwInterests) 6020 #define IOverlay_Unadvise(This) (This)->lpVtbl->Unadvise(This) 6021 #else 6022 /*** IUnknown methods ***/ 6023 static FORCEINLINE HRESULT IOverlay_QueryInterface(IOverlay* This,REFIID riid,void **ppvObject) { 6024 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6025 } 6026 static FORCEINLINE ULONG IOverlay_AddRef(IOverlay* This) { 6027 return This->lpVtbl->AddRef(This); 6028 } 6029 static FORCEINLINE ULONG IOverlay_Release(IOverlay* This) { 6030 return This->lpVtbl->Release(This); 6031 } 6032 /*** IOverlay methods ***/ 6033 static FORCEINLINE HRESULT IOverlay_GetPalette(IOverlay* This,DWORD *pdwColors,PALETTEENTRY **ppPalette) { 6034 return This->lpVtbl->GetPalette(This,pdwColors,ppPalette); 6035 } 6036 static FORCEINLINE HRESULT IOverlay_SetPalette(IOverlay* This,DWORD dwColors,PALETTEENTRY *pPalette) { 6037 return This->lpVtbl->SetPalette(This,dwColors,pPalette); 6038 } 6039 static FORCEINLINE HRESULT IOverlay_GetDefaultColorKey(IOverlay* This,COLORKEY *pColorKey) { 6040 return This->lpVtbl->GetDefaultColorKey(This,pColorKey); 6041 } 6042 static FORCEINLINE HRESULT IOverlay_GetColorKey(IOverlay* This,COLORKEY *pColorKey) { 6043 return This->lpVtbl->GetColorKey(This,pColorKey); 6044 } 6045 static FORCEINLINE HRESULT IOverlay_SetColorKey(IOverlay* This,COLORKEY *pColorKey) { 6046 return This->lpVtbl->SetColorKey(This,pColorKey); 6047 } 6048 static FORCEINLINE HRESULT IOverlay_GetWindowHandle(IOverlay* This,HWND *pHwnd) { 6049 return This->lpVtbl->GetWindowHandle(This,pHwnd); 6050 } 6051 static FORCEINLINE HRESULT IOverlay_GetClipList(IOverlay* This,RECT *pSourceRect,RECT *pDestinationRect,RGNDATA **ppRgnData) { 6052 return This->lpVtbl->GetClipList(This,pSourceRect,pDestinationRect,ppRgnData); 6053 } 6054 static FORCEINLINE HRESULT IOverlay_GetVideoPosition(IOverlay* This,RECT *pSourceRect,RECT *pDestinationRect) { 6055 return This->lpVtbl->GetVideoPosition(This,pSourceRect,pDestinationRect); 6056 } 6057 static FORCEINLINE HRESULT IOverlay_Advise(IOverlay* This,IOverlayNotify *pOverlayNotify,DWORD dwInterests) { 6058 return This->lpVtbl->Advise(This,pOverlayNotify,dwInterests); 6059 } 6060 static FORCEINLINE HRESULT IOverlay_Unadvise(IOverlay* This) { 6061 return This->lpVtbl->Unadvise(This); 6062 } 6063 #endif 6064 #endif 6065 6066 #endif 6067 6068 HRESULT STDMETHODCALLTYPE IOverlay_GetPalette_Proxy( 6069 IOverlay* This, 6070 DWORD *pdwColors, 6071 PALETTEENTRY **ppPalette); 6072 void __RPC_STUB IOverlay_GetPalette_Stub( 6073 IRpcStubBuffer* This, 6074 IRpcChannelBuffer* pRpcChannelBuffer, 6075 PRPC_MESSAGE pRpcMessage, 6076 DWORD* pdwStubPhase); 6077 HRESULT STDMETHODCALLTYPE IOverlay_SetPalette_Proxy( 6078 IOverlay* This, 6079 DWORD dwColors, 6080 PALETTEENTRY *pPalette); 6081 void __RPC_STUB IOverlay_SetPalette_Stub( 6082 IRpcStubBuffer* This, 6083 IRpcChannelBuffer* pRpcChannelBuffer, 6084 PRPC_MESSAGE pRpcMessage, 6085 DWORD* pdwStubPhase); 6086 HRESULT STDMETHODCALLTYPE IOverlay_GetDefaultColorKey_Proxy( 6087 IOverlay* This, 6088 COLORKEY *pColorKey); 6089 void __RPC_STUB IOverlay_GetDefaultColorKey_Stub( 6090 IRpcStubBuffer* This, 6091 IRpcChannelBuffer* pRpcChannelBuffer, 6092 PRPC_MESSAGE pRpcMessage, 6093 DWORD* pdwStubPhase); 6094 HRESULT STDMETHODCALLTYPE IOverlay_GetColorKey_Proxy( 6095 IOverlay* This, 6096 COLORKEY *pColorKey); 6097 void __RPC_STUB IOverlay_GetColorKey_Stub( 6098 IRpcStubBuffer* This, 6099 IRpcChannelBuffer* pRpcChannelBuffer, 6100 PRPC_MESSAGE pRpcMessage, 6101 DWORD* pdwStubPhase); 6102 HRESULT STDMETHODCALLTYPE IOverlay_SetColorKey_Proxy( 6103 IOverlay* This, 6104 COLORKEY *pColorKey); 6105 void __RPC_STUB IOverlay_SetColorKey_Stub( 6106 IRpcStubBuffer* This, 6107 IRpcChannelBuffer* pRpcChannelBuffer, 6108 PRPC_MESSAGE pRpcMessage, 6109 DWORD* pdwStubPhase); 6110 HRESULT STDMETHODCALLTYPE IOverlay_GetWindowHandle_Proxy( 6111 IOverlay* This, 6112 HWND *pHwnd); 6113 void __RPC_STUB IOverlay_GetWindowHandle_Stub( 6114 IRpcStubBuffer* This, 6115 IRpcChannelBuffer* pRpcChannelBuffer, 6116 PRPC_MESSAGE pRpcMessage, 6117 DWORD* pdwStubPhase); 6118 HRESULT STDMETHODCALLTYPE IOverlay_GetClipList_Proxy( 6119 IOverlay* This, 6120 RECT *pSourceRect, 6121 RECT *pDestinationRect, 6122 RGNDATA **ppRgnData); 6123 void __RPC_STUB IOverlay_GetClipList_Stub( 6124 IRpcStubBuffer* This, 6125 IRpcChannelBuffer* pRpcChannelBuffer, 6126 PRPC_MESSAGE pRpcMessage, 6127 DWORD* pdwStubPhase); 6128 HRESULT STDMETHODCALLTYPE IOverlay_GetVideoPosition_Proxy( 6129 IOverlay* This, 6130 RECT *pSourceRect, 6131 RECT *pDestinationRect); 6132 void __RPC_STUB IOverlay_GetVideoPosition_Stub( 6133 IRpcStubBuffer* This, 6134 IRpcChannelBuffer* pRpcChannelBuffer, 6135 PRPC_MESSAGE pRpcMessage, 6136 DWORD* pdwStubPhase); 6137 HRESULT STDMETHODCALLTYPE IOverlay_Advise_Proxy( 6138 IOverlay* This, 6139 IOverlayNotify *pOverlayNotify, 6140 DWORD dwInterests); 6141 void __RPC_STUB IOverlay_Advise_Stub( 6142 IRpcStubBuffer* This, 6143 IRpcChannelBuffer* pRpcChannelBuffer, 6144 PRPC_MESSAGE pRpcMessage, 6145 DWORD* pdwStubPhase); 6146 HRESULT STDMETHODCALLTYPE IOverlay_Unadvise_Proxy( 6147 IOverlay* This); 6148 void __RPC_STUB IOverlay_Unadvise_Stub( 6149 IRpcStubBuffer* This, 6150 IRpcChannelBuffer* pRpcChannelBuffer, 6151 PRPC_MESSAGE pRpcMessage, 6152 DWORD* pdwStubPhase); 6153 6154 #endif /* __IOverlay_INTERFACE_DEFINED__ */ 6155 6156 typedef IOverlay *POVERLAY; 6157 /***************************************************************************** 6158 * IMediaEventSink interface 6159 */ 6160 #ifndef __IMediaEventSink_INTERFACE_DEFINED__ 6161 #define __IMediaEventSink_INTERFACE_DEFINED__ 6162 6163 DEFINE_GUID(IID_IMediaEventSink, 0x56a868a2, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 6164 #if defined(__cplusplus) && !defined(CINTERFACE) 6165 MIDL_INTERFACE("56a868a2-0ad4-11ce-b03a-0020af0ba770") 6166 IMediaEventSink : public IUnknown 6167 { 6168 virtual HRESULT STDMETHODCALLTYPE Notify( 6169 LONG EventCode, 6170 LONG_PTR EventParam1, 6171 LONG_PTR EventParam2) = 0; 6172 6173 }; 6174 #ifdef __CRT_UUID_DECL 6175 __CRT_UUID_DECL(IMediaEventSink, 0x56a868a2, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 6176 #endif 6177 #else 6178 typedef struct IMediaEventSinkVtbl { 6179 BEGIN_INTERFACE 6180 6181 /*** IUnknown methods ***/ 6182 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6183 IMediaEventSink* This, 6184 REFIID riid, 6185 void **ppvObject); 6186 6187 ULONG (STDMETHODCALLTYPE *AddRef)( 6188 IMediaEventSink* This); 6189 6190 ULONG (STDMETHODCALLTYPE *Release)( 6191 IMediaEventSink* This); 6192 6193 /*** IMediaEventSink methods ***/ 6194 HRESULT (STDMETHODCALLTYPE *Notify)( 6195 IMediaEventSink* This, 6196 LONG EventCode, 6197 LONG_PTR EventParam1, 6198 LONG_PTR EventParam2); 6199 6200 END_INTERFACE 6201 } IMediaEventSinkVtbl; 6202 interface IMediaEventSink { 6203 CONST_VTBL IMediaEventSinkVtbl* lpVtbl; 6204 }; 6205 6206 #ifdef COBJMACROS 6207 #ifndef WIDL_C_INLINE_WRAPPERS 6208 /*** IUnknown methods ***/ 6209 #define IMediaEventSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6210 #define IMediaEventSink_AddRef(This) (This)->lpVtbl->AddRef(This) 6211 #define IMediaEventSink_Release(This) (This)->lpVtbl->Release(This) 6212 /*** IMediaEventSink methods ***/ 6213 #define IMediaEventSink_Notify(This,EventCode,EventParam1,EventParam2) (This)->lpVtbl->Notify(This,EventCode,EventParam1,EventParam2) 6214 #else 6215 /*** IUnknown methods ***/ 6216 static FORCEINLINE HRESULT IMediaEventSink_QueryInterface(IMediaEventSink* This,REFIID riid,void **ppvObject) { 6217 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6218 } 6219 static FORCEINLINE ULONG IMediaEventSink_AddRef(IMediaEventSink* This) { 6220 return This->lpVtbl->AddRef(This); 6221 } 6222 static FORCEINLINE ULONG IMediaEventSink_Release(IMediaEventSink* This) { 6223 return This->lpVtbl->Release(This); 6224 } 6225 /*** IMediaEventSink methods ***/ 6226 static FORCEINLINE HRESULT IMediaEventSink_Notify(IMediaEventSink* This,LONG EventCode,LONG_PTR EventParam1,LONG_PTR EventParam2) { 6227 return This->lpVtbl->Notify(This,EventCode,EventParam1,EventParam2); 6228 } 6229 #endif 6230 #endif 6231 6232 #endif 6233 6234 HRESULT STDMETHODCALLTYPE IMediaEventSink_Notify_Proxy( 6235 IMediaEventSink* This, 6236 LONG EventCode, 6237 LONG_PTR EventParam1, 6238 LONG_PTR EventParam2); 6239 void __RPC_STUB IMediaEventSink_Notify_Stub( 6240 IRpcStubBuffer* This, 6241 IRpcChannelBuffer* pRpcChannelBuffer, 6242 PRPC_MESSAGE pRpcMessage, 6243 DWORD* pdwStubPhase); 6244 6245 #endif /* __IMediaEventSink_INTERFACE_DEFINED__ */ 6246 6247 typedef IMediaEventSink *PMEDIAEVENTSINK; 6248 /***************************************************************************** 6249 * IFileSourceFilter interface 6250 */ 6251 #ifndef __IFileSourceFilter_INTERFACE_DEFINED__ 6252 #define __IFileSourceFilter_INTERFACE_DEFINED__ 6253 6254 DEFINE_GUID(IID_IFileSourceFilter, 0x56a868a6, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 6255 #if defined(__cplusplus) && !defined(CINTERFACE) 6256 MIDL_INTERFACE("56a868a6-0ad4-11ce-b03a-0020af0ba770") 6257 IFileSourceFilter : public IUnknown 6258 { 6259 virtual HRESULT STDMETHODCALLTYPE Load( 6260 LPCOLESTR pszFileName, 6261 const AM_MEDIA_TYPE *pmt) = 0; 6262 6263 virtual HRESULT STDMETHODCALLTYPE GetCurFile( 6264 LPOLESTR *ppszFileName, 6265 AM_MEDIA_TYPE *pmt) = 0; 6266 6267 }; 6268 #ifdef __CRT_UUID_DECL 6269 __CRT_UUID_DECL(IFileSourceFilter, 0x56a868a6, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 6270 #endif 6271 #else 6272 typedef struct IFileSourceFilterVtbl { 6273 BEGIN_INTERFACE 6274 6275 /*** IUnknown methods ***/ 6276 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6277 IFileSourceFilter* This, 6278 REFIID riid, 6279 void **ppvObject); 6280 6281 ULONG (STDMETHODCALLTYPE *AddRef)( 6282 IFileSourceFilter* This); 6283 6284 ULONG (STDMETHODCALLTYPE *Release)( 6285 IFileSourceFilter* This); 6286 6287 /*** IFileSourceFilter methods ***/ 6288 HRESULT (STDMETHODCALLTYPE *Load)( 6289 IFileSourceFilter* This, 6290 LPCOLESTR pszFileName, 6291 const AM_MEDIA_TYPE *pmt); 6292 6293 HRESULT (STDMETHODCALLTYPE *GetCurFile)( 6294 IFileSourceFilter* This, 6295 LPOLESTR *ppszFileName, 6296 AM_MEDIA_TYPE *pmt); 6297 6298 END_INTERFACE 6299 } IFileSourceFilterVtbl; 6300 interface IFileSourceFilter { 6301 CONST_VTBL IFileSourceFilterVtbl* lpVtbl; 6302 }; 6303 6304 #ifdef COBJMACROS 6305 #ifndef WIDL_C_INLINE_WRAPPERS 6306 /*** IUnknown methods ***/ 6307 #define IFileSourceFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6308 #define IFileSourceFilter_AddRef(This) (This)->lpVtbl->AddRef(This) 6309 #define IFileSourceFilter_Release(This) (This)->lpVtbl->Release(This) 6310 /*** IFileSourceFilter methods ***/ 6311 #define IFileSourceFilter_Load(This,pszFileName,pmt) (This)->lpVtbl->Load(This,pszFileName,pmt) 6312 #define IFileSourceFilter_GetCurFile(This,ppszFileName,pmt) (This)->lpVtbl->GetCurFile(This,ppszFileName,pmt) 6313 #else 6314 /*** IUnknown methods ***/ 6315 static FORCEINLINE HRESULT IFileSourceFilter_QueryInterface(IFileSourceFilter* This,REFIID riid,void **ppvObject) { 6316 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6317 } 6318 static FORCEINLINE ULONG IFileSourceFilter_AddRef(IFileSourceFilter* This) { 6319 return This->lpVtbl->AddRef(This); 6320 } 6321 static FORCEINLINE ULONG IFileSourceFilter_Release(IFileSourceFilter* This) { 6322 return This->lpVtbl->Release(This); 6323 } 6324 /*** IFileSourceFilter methods ***/ 6325 static FORCEINLINE HRESULT IFileSourceFilter_Load(IFileSourceFilter* This,LPCOLESTR pszFileName,const AM_MEDIA_TYPE *pmt) { 6326 return This->lpVtbl->Load(This,pszFileName,pmt); 6327 } 6328 static FORCEINLINE HRESULT IFileSourceFilter_GetCurFile(IFileSourceFilter* This,LPOLESTR *ppszFileName,AM_MEDIA_TYPE *pmt) { 6329 return This->lpVtbl->GetCurFile(This,ppszFileName,pmt); 6330 } 6331 #endif 6332 #endif 6333 6334 #endif 6335 6336 HRESULT STDMETHODCALLTYPE IFileSourceFilter_Load_Proxy( 6337 IFileSourceFilter* This, 6338 LPCOLESTR pszFileName, 6339 const AM_MEDIA_TYPE *pmt); 6340 void __RPC_STUB IFileSourceFilter_Load_Stub( 6341 IRpcStubBuffer* This, 6342 IRpcChannelBuffer* pRpcChannelBuffer, 6343 PRPC_MESSAGE pRpcMessage, 6344 DWORD* pdwStubPhase); 6345 HRESULT STDMETHODCALLTYPE IFileSourceFilter_GetCurFile_Proxy( 6346 IFileSourceFilter* This, 6347 LPOLESTR *ppszFileName, 6348 AM_MEDIA_TYPE *pmt); 6349 void __RPC_STUB IFileSourceFilter_GetCurFile_Stub( 6350 IRpcStubBuffer* This, 6351 IRpcChannelBuffer* pRpcChannelBuffer, 6352 PRPC_MESSAGE pRpcMessage, 6353 DWORD* pdwStubPhase); 6354 6355 #endif /* __IFileSourceFilter_INTERFACE_DEFINED__ */ 6356 6357 typedef IFileSourceFilter *PFILTERFILESOURCE; 6358 /***************************************************************************** 6359 * IFileSinkFilter interface 6360 */ 6361 #ifndef __IFileSinkFilter_INTERFACE_DEFINED__ 6362 #define __IFileSinkFilter_INTERFACE_DEFINED__ 6363 6364 DEFINE_GUID(IID_IFileSinkFilter, 0xa2104830, 0x7c70, 0x11cf, 0x8b,0xce, 0x00,0xaa,0x00,0xa3,0xf1,0xa6); 6365 #if defined(__cplusplus) && !defined(CINTERFACE) 6366 MIDL_INTERFACE("a2104830-7c70-11cf-8bce-00aa00a3f1a6") 6367 IFileSinkFilter : public IUnknown 6368 { 6369 virtual HRESULT STDMETHODCALLTYPE SetFileName( 6370 LPCOLESTR pszFileName, 6371 const AM_MEDIA_TYPE *pmt) = 0; 6372 6373 virtual HRESULT STDMETHODCALLTYPE GetCurFile( 6374 LPOLESTR *ppszFileName, 6375 AM_MEDIA_TYPE *pmt) = 0; 6376 6377 }; 6378 #ifdef __CRT_UUID_DECL 6379 __CRT_UUID_DECL(IFileSinkFilter, 0xa2104830, 0x7c70, 0x11cf, 0x8b,0xce, 0x00,0xaa,0x00,0xa3,0xf1,0xa6) 6380 #endif 6381 #else 6382 typedef struct IFileSinkFilterVtbl { 6383 BEGIN_INTERFACE 6384 6385 /*** IUnknown methods ***/ 6386 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6387 IFileSinkFilter* This, 6388 REFIID riid, 6389 void **ppvObject); 6390 6391 ULONG (STDMETHODCALLTYPE *AddRef)( 6392 IFileSinkFilter* This); 6393 6394 ULONG (STDMETHODCALLTYPE *Release)( 6395 IFileSinkFilter* This); 6396 6397 /*** IFileSinkFilter methods ***/ 6398 HRESULT (STDMETHODCALLTYPE *SetFileName)( 6399 IFileSinkFilter* This, 6400 LPCOLESTR pszFileName, 6401 const AM_MEDIA_TYPE *pmt); 6402 6403 HRESULT (STDMETHODCALLTYPE *GetCurFile)( 6404 IFileSinkFilter* This, 6405 LPOLESTR *ppszFileName, 6406 AM_MEDIA_TYPE *pmt); 6407 6408 END_INTERFACE 6409 } IFileSinkFilterVtbl; 6410 interface IFileSinkFilter { 6411 CONST_VTBL IFileSinkFilterVtbl* lpVtbl; 6412 }; 6413 6414 #ifdef COBJMACROS 6415 #ifndef WIDL_C_INLINE_WRAPPERS 6416 /*** IUnknown methods ***/ 6417 #define IFileSinkFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6418 #define IFileSinkFilter_AddRef(This) (This)->lpVtbl->AddRef(This) 6419 #define IFileSinkFilter_Release(This) (This)->lpVtbl->Release(This) 6420 /*** IFileSinkFilter methods ***/ 6421 #define IFileSinkFilter_SetFileName(This,pszFileName,pmt) (This)->lpVtbl->SetFileName(This,pszFileName,pmt) 6422 #define IFileSinkFilter_GetCurFile(This,ppszFileName,pmt) (This)->lpVtbl->GetCurFile(This,ppszFileName,pmt) 6423 #else 6424 /*** IUnknown methods ***/ 6425 static FORCEINLINE HRESULT IFileSinkFilter_QueryInterface(IFileSinkFilter* This,REFIID riid,void **ppvObject) { 6426 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6427 } 6428 static FORCEINLINE ULONG IFileSinkFilter_AddRef(IFileSinkFilter* This) { 6429 return This->lpVtbl->AddRef(This); 6430 } 6431 static FORCEINLINE ULONG IFileSinkFilter_Release(IFileSinkFilter* This) { 6432 return This->lpVtbl->Release(This); 6433 } 6434 /*** IFileSinkFilter methods ***/ 6435 static FORCEINLINE HRESULT IFileSinkFilter_SetFileName(IFileSinkFilter* This,LPCOLESTR pszFileName,const AM_MEDIA_TYPE *pmt) { 6436 return This->lpVtbl->SetFileName(This,pszFileName,pmt); 6437 } 6438 static FORCEINLINE HRESULT IFileSinkFilter_GetCurFile(IFileSinkFilter* This,LPOLESTR *ppszFileName,AM_MEDIA_TYPE *pmt) { 6439 return This->lpVtbl->GetCurFile(This,ppszFileName,pmt); 6440 } 6441 #endif 6442 #endif 6443 6444 #endif 6445 6446 HRESULT STDMETHODCALLTYPE IFileSinkFilter_SetFileName_Proxy( 6447 IFileSinkFilter* This, 6448 LPCOLESTR pszFileName, 6449 const AM_MEDIA_TYPE *pmt); 6450 void __RPC_STUB IFileSinkFilter_SetFileName_Stub( 6451 IRpcStubBuffer* This, 6452 IRpcChannelBuffer* pRpcChannelBuffer, 6453 PRPC_MESSAGE pRpcMessage, 6454 DWORD* pdwStubPhase); 6455 HRESULT STDMETHODCALLTYPE IFileSinkFilter_GetCurFile_Proxy( 6456 IFileSinkFilter* This, 6457 LPOLESTR *ppszFileName, 6458 AM_MEDIA_TYPE *pmt); 6459 void __RPC_STUB IFileSinkFilter_GetCurFile_Stub( 6460 IRpcStubBuffer* This, 6461 IRpcChannelBuffer* pRpcChannelBuffer, 6462 PRPC_MESSAGE pRpcMessage, 6463 DWORD* pdwStubPhase); 6464 6465 #endif /* __IFileSinkFilter_INTERFACE_DEFINED__ */ 6466 6467 typedef IFileSinkFilter *PFILTERFILESINK; 6468 /***************************************************************************** 6469 * IFileSinkFilter2 interface 6470 */ 6471 #ifndef __IFileSinkFilter2_INTERFACE_DEFINED__ 6472 #define __IFileSinkFilter2_INTERFACE_DEFINED__ 6473 6474 DEFINE_GUID(IID_IFileSinkFilter2, 0x00855b90, 0xce1b, 0x11d0, 0xbd,0x4f, 0x00,0xa0,0xc9,0x11,0xce,0x86); 6475 #if defined(__cplusplus) && !defined(CINTERFACE) 6476 MIDL_INTERFACE("00855b90-ce1b-11d0-bd4f-00a0c911ce86") 6477 IFileSinkFilter2 : public IFileSinkFilter 6478 { 6479 virtual HRESULT STDMETHODCALLTYPE SetMode( 6480 DWORD dwFlags) = 0; 6481 6482 virtual HRESULT STDMETHODCALLTYPE GetMode( 6483 DWORD *pdwFlags) = 0; 6484 6485 }; 6486 #ifdef __CRT_UUID_DECL 6487 __CRT_UUID_DECL(IFileSinkFilter2, 0x00855b90, 0xce1b, 0x11d0, 0xbd,0x4f, 0x00,0xa0,0xc9,0x11,0xce,0x86) 6488 #endif 6489 #else 6490 typedef struct IFileSinkFilter2Vtbl { 6491 BEGIN_INTERFACE 6492 6493 /*** IUnknown methods ***/ 6494 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6495 IFileSinkFilter2* This, 6496 REFIID riid, 6497 void **ppvObject); 6498 6499 ULONG (STDMETHODCALLTYPE *AddRef)( 6500 IFileSinkFilter2* This); 6501 6502 ULONG (STDMETHODCALLTYPE *Release)( 6503 IFileSinkFilter2* This); 6504 6505 /*** IFileSinkFilter methods ***/ 6506 HRESULT (STDMETHODCALLTYPE *SetFileName)( 6507 IFileSinkFilter2* This, 6508 LPCOLESTR pszFileName, 6509 const AM_MEDIA_TYPE *pmt); 6510 6511 HRESULT (STDMETHODCALLTYPE *GetCurFile)( 6512 IFileSinkFilter2* This, 6513 LPOLESTR *ppszFileName, 6514 AM_MEDIA_TYPE *pmt); 6515 6516 /*** IFileSinkFilter2 methods ***/ 6517 HRESULT (STDMETHODCALLTYPE *SetMode)( 6518 IFileSinkFilter2* This, 6519 DWORD dwFlags); 6520 6521 HRESULT (STDMETHODCALLTYPE *GetMode)( 6522 IFileSinkFilter2* This, 6523 DWORD *pdwFlags); 6524 6525 END_INTERFACE 6526 } IFileSinkFilter2Vtbl; 6527 interface IFileSinkFilter2 { 6528 CONST_VTBL IFileSinkFilter2Vtbl* lpVtbl; 6529 }; 6530 6531 #ifdef COBJMACROS 6532 #ifndef WIDL_C_INLINE_WRAPPERS 6533 /*** IUnknown methods ***/ 6534 #define IFileSinkFilter2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6535 #define IFileSinkFilter2_AddRef(This) (This)->lpVtbl->AddRef(This) 6536 #define IFileSinkFilter2_Release(This) (This)->lpVtbl->Release(This) 6537 /*** IFileSinkFilter methods ***/ 6538 #define IFileSinkFilter2_SetFileName(This,pszFileName,pmt) (This)->lpVtbl->SetFileName(This,pszFileName,pmt) 6539 #define IFileSinkFilter2_GetCurFile(This,ppszFileName,pmt) (This)->lpVtbl->GetCurFile(This,ppszFileName,pmt) 6540 /*** IFileSinkFilter2 methods ***/ 6541 #define IFileSinkFilter2_SetMode(This,dwFlags) (This)->lpVtbl->SetMode(This,dwFlags) 6542 #define IFileSinkFilter2_GetMode(This,pdwFlags) (This)->lpVtbl->GetMode(This,pdwFlags) 6543 #else 6544 /*** IUnknown methods ***/ 6545 static FORCEINLINE HRESULT IFileSinkFilter2_QueryInterface(IFileSinkFilter2* This,REFIID riid,void **ppvObject) { 6546 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6547 } 6548 static FORCEINLINE ULONG IFileSinkFilter2_AddRef(IFileSinkFilter2* This) { 6549 return This->lpVtbl->AddRef(This); 6550 } 6551 static FORCEINLINE ULONG IFileSinkFilter2_Release(IFileSinkFilter2* This) { 6552 return This->lpVtbl->Release(This); 6553 } 6554 /*** IFileSinkFilter methods ***/ 6555 static FORCEINLINE HRESULT IFileSinkFilter2_SetFileName(IFileSinkFilter2* This,LPCOLESTR pszFileName,const AM_MEDIA_TYPE *pmt) { 6556 return This->lpVtbl->SetFileName(This,pszFileName,pmt); 6557 } 6558 static FORCEINLINE HRESULT IFileSinkFilter2_GetCurFile(IFileSinkFilter2* This,LPOLESTR *ppszFileName,AM_MEDIA_TYPE *pmt) { 6559 return This->lpVtbl->GetCurFile(This,ppszFileName,pmt); 6560 } 6561 /*** IFileSinkFilter2 methods ***/ 6562 static FORCEINLINE HRESULT IFileSinkFilter2_SetMode(IFileSinkFilter2* This,DWORD dwFlags) { 6563 return This->lpVtbl->SetMode(This,dwFlags); 6564 } 6565 static FORCEINLINE HRESULT IFileSinkFilter2_GetMode(IFileSinkFilter2* This,DWORD *pdwFlags) { 6566 return This->lpVtbl->GetMode(This,pdwFlags); 6567 } 6568 #endif 6569 #endif 6570 6571 #endif 6572 6573 HRESULT STDMETHODCALLTYPE IFileSinkFilter2_SetMode_Proxy( 6574 IFileSinkFilter2* This, 6575 DWORD dwFlags); 6576 void __RPC_STUB IFileSinkFilter2_SetMode_Stub( 6577 IRpcStubBuffer* This, 6578 IRpcChannelBuffer* pRpcChannelBuffer, 6579 PRPC_MESSAGE pRpcMessage, 6580 DWORD* pdwStubPhase); 6581 HRESULT STDMETHODCALLTYPE IFileSinkFilter2_GetMode_Proxy( 6582 IFileSinkFilter2* This, 6583 DWORD *pdwFlags); 6584 void __RPC_STUB IFileSinkFilter2_GetMode_Stub( 6585 IRpcStubBuffer* This, 6586 IRpcChannelBuffer* pRpcChannelBuffer, 6587 PRPC_MESSAGE pRpcMessage, 6588 DWORD* pdwStubPhase); 6589 6590 #endif /* __IFileSinkFilter2_INTERFACE_DEFINED__ */ 6591 6592 typedef IFileSinkFilter2 *PFILESINKFILTER2; 6593 typedef enum __WIDL_strmif_generated_name_00000008 { 6594 AM_FILE_OVERWRITE = 0x1 6595 } AM_FILESINK_FLAGS; 6596 /***************************************************************************** 6597 * IGraphBuilder interface 6598 */ 6599 #ifndef __IGraphBuilder_INTERFACE_DEFINED__ 6600 #define __IGraphBuilder_INTERFACE_DEFINED__ 6601 6602 DEFINE_GUID(IID_IGraphBuilder, 0x56a868a9, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 6603 #if defined(__cplusplus) && !defined(CINTERFACE) 6604 MIDL_INTERFACE("56a868a9-0ad4-11ce-b03a-0020af0ba770") 6605 IGraphBuilder : public IFilterGraph 6606 { 6607 virtual HRESULT STDMETHODCALLTYPE Connect( 6608 IPin *ppinOut, 6609 IPin *ppinIn) = 0; 6610 6611 virtual HRESULT STDMETHODCALLTYPE Render( 6612 IPin *ppinOut) = 0; 6613 6614 virtual HRESULT STDMETHODCALLTYPE RenderFile( 6615 LPCWSTR lpcwstrFile, 6616 LPCWSTR lpcwstrPlayList) = 0; 6617 6618 virtual HRESULT STDMETHODCALLTYPE AddSourceFilter( 6619 LPCWSTR lpcwstrFileName, 6620 LPCWSTR lpcwstrFilterName, 6621 IBaseFilter **ppFilter) = 0; 6622 6623 virtual HRESULT STDMETHODCALLTYPE SetLogFile( 6624 DWORD_PTR hFile) = 0; 6625 6626 virtual HRESULT STDMETHODCALLTYPE Abort( 6627 ) = 0; 6628 6629 virtual HRESULT STDMETHODCALLTYPE ShouldOperationContinue( 6630 ) = 0; 6631 6632 }; 6633 #ifdef __CRT_UUID_DECL 6634 __CRT_UUID_DECL(IGraphBuilder, 0x56a868a9, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 6635 #endif 6636 #else 6637 typedef struct IGraphBuilderVtbl { 6638 BEGIN_INTERFACE 6639 6640 /*** IUnknown methods ***/ 6641 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6642 IGraphBuilder* This, 6643 REFIID riid, 6644 void **ppvObject); 6645 6646 ULONG (STDMETHODCALLTYPE *AddRef)( 6647 IGraphBuilder* This); 6648 6649 ULONG (STDMETHODCALLTYPE *Release)( 6650 IGraphBuilder* This); 6651 6652 /*** IFilterGraph methods ***/ 6653 HRESULT (STDMETHODCALLTYPE *AddFilter)( 6654 IGraphBuilder* This, 6655 IBaseFilter *pFilter, 6656 LPCWSTR pName); 6657 6658 HRESULT (STDMETHODCALLTYPE *RemoveFilter)( 6659 IGraphBuilder* This, 6660 IBaseFilter *pFilter); 6661 6662 HRESULT (STDMETHODCALLTYPE *EnumFilters)( 6663 IGraphBuilder* This, 6664 IEnumFilters **ppEnum); 6665 6666 HRESULT (STDMETHODCALLTYPE *FindFilterByName)( 6667 IGraphBuilder* This, 6668 LPCWSTR pName, 6669 IBaseFilter **ppFilter); 6670 6671 HRESULT (STDMETHODCALLTYPE *ConnectDirect)( 6672 IGraphBuilder* This, 6673 IPin *ppinOut, 6674 IPin *ppinIn, 6675 const AM_MEDIA_TYPE *pmt); 6676 6677 HRESULT (STDMETHODCALLTYPE *Reconnect)( 6678 IGraphBuilder* This, 6679 IPin *ppin); 6680 6681 HRESULT (STDMETHODCALLTYPE *Disconnect)( 6682 IGraphBuilder* This, 6683 IPin *ppin); 6684 6685 HRESULT (STDMETHODCALLTYPE *SetDefaultSyncSource)( 6686 IGraphBuilder* This); 6687 6688 /*** IGraphBuilder methods ***/ 6689 HRESULT (STDMETHODCALLTYPE *Connect)( 6690 IGraphBuilder* This, 6691 IPin *ppinOut, 6692 IPin *ppinIn); 6693 6694 HRESULT (STDMETHODCALLTYPE *Render)( 6695 IGraphBuilder* This, 6696 IPin *ppinOut); 6697 6698 HRESULT (STDMETHODCALLTYPE *RenderFile)( 6699 IGraphBuilder* This, 6700 LPCWSTR lpcwstrFile, 6701 LPCWSTR lpcwstrPlayList); 6702 6703 HRESULT (STDMETHODCALLTYPE *AddSourceFilter)( 6704 IGraphBuilder* This, 6705 LPCWSTR lpcwstrFileName, 6706 LPCWSTR lpcwstrFilterName, 6707 IBaseFilter **ppFilter); 6708 6709 HRESULT (STDMETHODCALLTYPE *SetLogFile)( 6710 IGraphBuilder* This, 6711 DWORD_PTR hFile); 6712 6713 HRESULT (STDMETHODCALLTYPE *Abort)( 6714 IGraphBuilder* This); 6715 6716 HRESULT (STDMETHODCALLTYPE *ShouldOperationContinue)( 6717 IGraphBuilder* This); 6718 6719 END_INTERFACE 6720 } IGraphBuilderVtbl; 6721 interface IGraphBuilder { 6722 CONST_VTBL IGraphBuilderVtbl* lpVtbl; 6723 }; 6724 6725 #ifdef COBJMACROS 6726 #ifndef WIDL_C_INLINE_WRAPPERS 6727 /*** IUnknown methods ***/ 6728 #define IGraphBuilder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6729 #define IGraphBuilder_AddRef(This) (This)->lpVtbl->AddRef(This) 6730 #define IGraphBuilder_Release(This) (This)->lpVtbl->Release(This) 6731 /*** IFilterGraph methods ***/ 6732 #define IGraphBuilder_AddFilter(This,pFilter,pName) (This)->lpVtbl->AddFilter(This,pFilter,pName) 6733 #define IGraphBuilder_RemoveFilter(This,pFilter) (This)->lpVtbl->RemoveFilter(This,pFilter) 6734 #define IGraphBuilder_EnumFilters(This,ppEnum) (This)->lpVtbl->EnumFilters(This,ppEnum) 6735 #define IGraphBuilder_FindFilterByName(This,pName,ppFilter) (This)->lpVtbl->FindFilterByName(This,pName,ppFilter) 6736 #define IGraphBuilder_ConnectDirect(This,ppinOut,ppinIn,pmt) (This)->lpVtbl->ConnectDirect(This,ppinOut,ppinIn,pmt) 6737 #define IGraphBuilder_Reconnect(This,ppin) (This)->lpVtbl->Reconnect(This,ppin) 6738 #define IGraphBuilder_Disconnect(This,ppin) (This)->lpVtbl->Disconnect(This,ppin) 6739 #define IGraphBuilder_SetDefaultSyncSource(This) (This)->lpVtbl->SetDefaultSyncSource(This) 6740 /*** IGraphBuilder methods ***/ 6741 #define IGraphBuilder_Connect(This,ppinOut,ppinIn) (This)->lpVtbl->Connect(This,ppinOut,ppinIn) 6742 #define IGraphBuilder_Render(This,ppinOut) (This)->lpVtbl->Render(This,ppinOut) 6743 #define IGraphBuilder_RenderFile(This,lpcwstrFile,lpcwstrPlayList) (This)->lpVtbl->RenderFile(This,lpcwstrFile,lpcwstrPlayList) 6744 #define IGraphBuilder_AddSourceFilter(This,lpcwstrFileName,lpcwstrFilterName,ppFilter) (This)->lpVtbl->AddSourceFilter(This,lpcwstrFileName,lpcwstrFilterName,ppFilter) 6745 #define IGraphBuilder_SetLogFile(This,hFile) (This)->lpVtbl->SetLogFile(This,hFile) 6746 #define IGraphBuilder_Abort(This) (This)->lpVtbl->Abort(This) 6747 #define IGraphBuilder_ShouldOperationContinue(This) (This)->lpVtbl->ShouldOperationContinue(This) 6748 #else 6749 /*** IUnknown methods ***/ 6750 static FORCEINLINE HRESULT IGraphBuilder_QueryInterface(IGraphBuilder* This,REFIID riid,void **ppvObject) { 6751 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6752 } 6753 static FORCEINLINE ULONG IGraphBuilder_AddRef(IGraphBuilder* This) { 6754 return This->lpVtbl->AddRef(This); 6755 } 6756 static FORCEINLINE ULONG IGraphBuilder_Release(IGraphBuilder* This) { 6757 return This->lpVtbl->Release(This); 6758 } 6759 /*** IFilterGraph methods ***/ 6760 static FORCEINLINE HRESULT IGraphBuilder_AddFilter(IGraphBuilder* This,IBaseFilter *pFilter,LPCWSTR pName) { 6761 return This->lpVtbl->AddFilter(This,pFilter,pName); 6762 } 6763 static FORCEINLINE HRESULT IGraphBuilder_RemoveFilter(IGraphBuilder* This,IBaseFilter *pFilter) { 6764 return This->lpVtbl->RemoveFilter(This,pFilter); 6765 } 6766 static FORCEINLINE HRESULT IGraphBuilder_EnumFilters(IGraphBuilder* This,IEnumFilters **ppEnum) { 6767 return This->lpVtbl->EnumFilters(This,ppEnum); 6768 } 6769 static FORCEINLINE HRESULT IGraphBuilder_FindFilterByName(IGraphBuilder* This,LPCWSTR pName,IBaseFilter **ppFilter) { 6770 return This->lpVtbl->FindFilterByName(This,pName,ppFilter); 6771 } 6772 static FORCEINLINE HRESULT IGraphBuilder_ConnectDirect(IGraphBuilder* This,IPin *ppinOut,IPin *ppinIn,const AM_MEDIA_TYPE *pmt) { 6773 return This->lpVtbl->ConnectDirect(This,ppinOut,ppinIn,pmt); 6774 } 6775 static FORCEINLINE HRESULT IGraphBuilder_Reconnect(IGraphBuilder* This,IPin *ppin) { 6776 return This->lpVtbl->Reconnect(This,ppin); 6777 } 6778 static FORCEINLINE HRESULT IGraphBuilder_Disconnect(IGraphBuilder* This,IPin *ppin) { 6779 return This->lpVtbl->Disconnect(This,ppin); 6780 } 6781 static FORCEINLINE HRESULT IGraphBuilder_SetDefaultSyncSource(IGraphBuilder* This) { 6782 return This->lpVtbl->SetDefaultSyncSource(This); 6783 } 6784 /*** IGraphBuilder methods ***/ 6785 static FORCEINLINE HRESULT IGraphBuilder_Connect(IGraphBuilder* This,IPin *ppinOut,IPin *ppinIn) { 6786 return This->lpVtbl->Connect(This,ppinOut,ppinIn); 6787 } 6788 static FORCEINLINE HRESULT IGraphBuilder_Render(IGraphBuilder* This,IPin *ppinOut) { 6789 return This->lpVtbl->Render(This,ppinOut); 6790 } 6791 static FORCEINLINE HRESULT IGraphBuilder_RenderFile(IGraphBuilder* This,LPCWSTR lpcwstrFile,LPCWSTR lpcwstrPlayList) { 6792 return This->lpVtbl->RenderFile(This,lpcwstrFile,lpcwstrPlayList); 6793 } 6794 static FORCEINLINE HRESULT IGraphBuilder_AddSourceFilter(IGraphBuilder* This,LPCWSTR lpcwstrFileName,LPCWSTR lpcwstrFilterName,IBaseFilter **ppFilter) { 6795 return This->lpVtbl->AddSourceFilter(This,lpcwstrFileName,lpcwstrFilterName,ppFilter); 6796 } 6797 static FORCEINLINE HRESULT IGraphBuilder_SetLogFile(IGraphBuilder* This,DWORD_PTR hFile) { 6798 return This->lpVtbl->SetLogFile(This,hFile); 6799 } 6800 static FORCEINLINE HRESULT IGraphBuilder_Abort(IGraphBuilder* This) { 6801 return This->lpVtbl->Abort(This); 6802 } 6803 static FORCEINLINE HRESULT IGraphBuilder_ShouldOperationContinue(IGraphBuilder* This) { 6804 return This->lpVtbl->ShouldOperationContinue(This); 6805 } 6806 #endif 6807 #endif 6808 6809 #endif 6810 6811 HRESULT STDMETHODCALLTYPE IGraphBuilder_Connect_Proxy( 6812 IGraphBuilder* This, 6813 IPin *ppinOut, 6814 IPin *ppinIn); 6815 void __RPC_STUB IGraphBuilder_Connect_Stub( 6816 IRpcStubBuffer* This, 6817 IRpcChannelBuffer* pRpcChannelBuffer, 6818 PRPC_MESSAGE pRpcMessage, 6819 DWORD* pdwStubPhase); 6820 HRESULT STDMETHODCALLTYPE IGraphBuilder_Render_Proxy( 6821 IGraphBuilder* This, 6822 IPin *ppinOut); 6823 void __RPC_STUB IGraphBuilder_Render_Stub( 6824 IRpcStubBuffer* This, 6825 IRpcChannelBuffer* pRpcChannelBuffer, 6826 PRPC_MESSAGE pRpcMessage, 6827 DWORD* pdwStubPhase); 6828 HRESULT STDMETHODCALLTYPE IGraphBuilder_RenderFile_Proxy( 6829 IGraphBuilder* This, 6830 LPCWSTR lpcwstrFile, 6831 LPCWSTR lpcwstrPlayList); 6832 void __RPC_STUB IGraphBuilder_RenderFile_Stub( 6833 IRpcStubBuffer* This, 6834 IRpcChannelBuffer* pRpcChannelBuffer, 6835 PRPC_MESSAGE pRpcMessage, 6836 DWORD* pdwStubPhase); 6837 HRESULT STDMETHODCALLTYPE IGraphBuilder_AddSourceFilter_Proxy( 6838 IGraphBuilder* This, 6839 LPCWSTR lpcwstrFileName, 6840 LPCWSTR lpcwstrFilterName, 6841 IBaseFilter **ppFilter); 6842 void __RPC_STUB IGraphBuilder_AddSourceFilter_Stub( 6843 IRpcStubBuffer* This, 6844 IRpcChannelBuffer* pRpcChannelBuffer, 6845 PRPC_MESSAGE pRpcMessage, 6846 DWORD* pdwStubPhase); 6847 HRESULT STDMETHODCALLTYPE IGraphBuilder_SetLogFile_Proxy( 6848 IGraphBuilder* This, 6849 DWORD_PTR hFile); 6850 void __RPC_STUB IGraphBuilder_SetLogFile_Stub( 6851 IRpcStubBuffer* This, 6852 IRpcChannelBuffer* pRpcChannelBuffer, 6853 PRPC_MESSAGE pRpcMessage, 6854 DWORD* pdwStubPhase); 6855 HRESULT STDMETHODCALLTYPE IGraphBuilder_Abort_Proxy( 6856 IGraphBuilder* This); 6857 void __RPC_STUB IGraphBuilder_Abort_Stub( 6858 IRpcStubBuffer* This, 6859 IRpcChannelBuffer* pRpcChannelBuffer, 6860 PRPC_MESSAGE pRpcMessage, 6861 DWORD* pdwStubPhase); 6862 HRESULT STDMETHODCALLTYPE IGraphBuilder_ShouldOperationContinue_Proxy( 6863 IGraphBuilder* This); 6864 void __RPC_STUB IGraphBuilder_ShouldOperationContinue_Stub( 6865 IRpcStubBuffer* This, 6866 IRpcChannelBuffer* pRpcChannelBuffer, 6867 PRPC_MESSAGE pRpcMessage, 6868 DWORD* pdwStubPhase); 6869 6870 #endif /* __IGraphBuilder_INTERFACE_DEFINED__ */ 6871 6872 /***************************************************************************** 6873 * ICaptureGraphBuilder interface 6874 */ 6875 #ifndef __ICaptureGraphBuilder_INTERFACE_DEFINED__ 6876 #define __ICaptureGraphBuilder_INTERFACE_DEFINED__ 6877 6878 DEFINE_GUID(IID_ICaptureGraphBuilder, 0xbf87b6e0, 0x8c27, 0x11d0, 0xb3,0xf0, 0x00,0xaa,0x00,0x37,0x61,0xc5); 6879 #if defined(__cplusplus) && !defined(CINTERFACE) 6880 MIDL_INTERFACE("bf87b6e0-8c27-11d0-b3f0-00aa003761c5") 6881 ICaptureGraphBuilder : public IUnknown 6882 { 6883 virtual HRESULT STDMETHODCALLTYPE SetFiltergraph( 6884 IGraphBuilder *pfg) = 0; 6885 6886 virtual HRESULT STDMETHODCALLTYPE GetFiltergraph( 6887 IGraphBuilder **ppfg) = 0; 6888 6889 virtual HRESULT STDMETHODCALLTYPE SetOutputFileName( 6890 const GUID *pType, 6891 LPCOLESTR lpstrFile, 6892 IBaseFilter **ppf, 6893 IFileSinkFilter **ppSink) = 0; 6894 6895 virtual HRESULT STDMETHODCALLTYPE FindInterface( 6896 const GUID *pCategory, 6897 IBaseFilter *pf, 6898 REFIID riid, 6899 void **ppint) = 0; 6900 6901 virtual HRESULT STDMETHODCALLTYPE RenderStream( 6902 const GUID *pCategory, 6903 IUnknown *pSource, 6904 IBaseFilter *pfCompressor, 6905 IBaseFilter *pfRenderer) = 0; 6906 6907 virtual HRESULT STDMETHODCALLTYPE ControlStream( 6908 const GUID *pCategory, 6909 IBaseFilter *pFilter, 6910 REFERENCE_TIME *pstart, 6911 REFERENCE_TIME *pstop, 6912 WORD wStartCookie, 6913 WORD wStopCookie) = 0; 6914 6915 virtual HRESULT STDMETHODCALLTYPE AllocCapFile( 6916 LPCOLESTR lpstr, 6917 DWORDLONG dwlSize) = 0; 6918 6919 virtual HRESULT STDMETHODCALLTYPE CopyCaptureFile( 6920 LPOLESTR lpwstrOld, 6921 LPOLESTR lpwstrNew, 6922 int fAllowEscAbort, 6923 IAMCopyCaptureFileProgress *pCallback) = 0; 6924 6925 }; 6926 #ifdef __CRT_UUID_DECL 6927 __CRT_UUID_DECL(ICaptureGraphBuilder, 0xbf87b6e0, 0x8c27, 0x11d0, 0xb3,0xf0, 0x00,0xaa,0x00,0x37,0x61,0xc5) 6928 #endif 6929 #else 6930 typedef struct ICaptureGraphBuilderVtbl { 6931 BEGIN_INTERFACE 6932 6933 /*** IUnknown methods ***/ 6934 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6935 ICaptureGraphBuilder* This, 6936 REFIID riid, 6937 void **ppvObject); 6938 6939 ULONG (STDMETHODCALLTYPE *AddRef)( 6940 ICaptureGraphBuilder* This); 6941 6942 ULONG (STDMETHODCALLTYPE *Release)( 6943 ICaptureGraphBuilder* This); 6944 6945 /*** ICaptureGraphBuilder methods ***/ 6946 HRESULT (STDMETHODCALLTYPE *SetFiltergraph)( 6947 ICaptureGraphBuilder* This, 6948 IGraphBuilder *pfg); 6949 6950 HRESULT (STDMETHODCALLTYPE *GetFiltergraph)( 6951 ICaptureGraphBuilder* This, 6952 IGraphBuilder **ppfg); 6953 6954 HRESULT (STDMETHODCALLTYPE *SetOutputFileName)( 6955 ICaptureGraphBuilder* This, 6956 const GUID *pType, 6957 LPCOLESTR lpstrFile, 6958 IBaseFilter **ppf, 6959 IFileSinkFilter **ppSink); 6960 6961 HRESULT (STDMETHODCALLTYPE *FindInterface)( 6962 ICaptureGraphBuilder* This, 6963 const GUID *pCategory, 6964 IBaseFilter *pf, 6965 REFIID riid, 6966 void **ppint); 6967 6968 HRESULT (STDMETHODCALLTYPE *RenderStream)( 6969 ICaptureGraphBuilder* This, 6970 const GUID *pCategory, 6971 IUnknown *pSource, 6972 IBaseFilter *pfCompressor, 6973 IBaseFilter *pfRenderer); 6974 6975 HRESULT (STDMETHODCALLTYPE *ControlStream)( 6976 ICaptureGraphBuilder* This, 6977 const GUID *pCategory, 6978 IBaseFilter *pFilter, 6979 REFERENCE_TIME *pstart, 6980 REFERENCE_TIME *pstop, 6981 WORD wStartCookie, 6982 WORD wStopCookie); 6983 6984 HRESULT (STDMETHODCALLTYPE *AllocCapFile)( 6985 ICaptureGraphBuilder* This, 6986 LPCOLESTR lpstr, 6987 DWORDLONG dwlSize); 6988 6989 HRESULT (STDMETHODCALLTYPE *CopyCaptureFile)( 6990 ICaptureGraphBuilder* This, 6991 LPOLESTR lpwstrOld, 6992 LPOLESTR lpwstrNew, 6993 int fAllowEscAbort, 6994 IAMCopyCaptureFileProgress *pCallback); 6995 6996 END_INTERFACE 6997 } ICaptureGraphBuilderVtbl; 6998 interface ICaptureGraphBuilder { 6999 CONST_VTBL ICaptureGraphBuilderVtbl* lpVtbl; 7000 }; 7001 7002 #ifdef COBJMACROS 7003 #ifndef WIDL_C_INLINE_WRAPPERS 7004 /*** IUnknown methods ***/ 7005 #define ICaptureGraphBuilder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7006 #define ICaptureGraphBuilder_AddRef(This) (This)->lpVtbl->AddRef(This) 7007 #define ICaptureGraphBuilder_Release(This) (This)->lpVtbl->Release(This) 7008 /*** ICaptureGraphBuilder methods ***/ 7009 #define ICaptureGraphBuilder_SetFiltergraph(This,pfg) (This)->lpVtbl->SetFiltergraph(This,pfg) 7010 #define ICaptureGraphBuilder_GetFiltergraph(This,ppfg) (This)->lpVtbl->GetFiltergraph(This,ppfg) 7011 #define ICaptureGraphBuilder_SetOutputFileName(This,pType,lpstrFile,ppf,ppSink) (This)->lpVtbl->SetOutputFileName(This,pType,lpstrFile,ppf,ppSink) 7012 #define ICaptureGraphBuilder_FindInterface(This,pCategory,pf,riid,ppint) (This)->lpVtbl->FindInterface(This,pCategory,pf,riid,ppint) 7013 #define ICaptureGraphBuilder_RenderStream(This,pCategory,pSource,pfCompressor,pfRenderer) (This)->lpVtbl->RenderStream(This,pCategory,pSource,pfCompressor,pfRenderer) 7014 #define ICaptureGraphBuilder_ControlStream(This,pCategory,pFilter,pstart,pstop,wStartCookie,wStopCookie) (This)->lpVtbl->ControlStream(This,pCategory,pFilter,pstart,pstop,wStartCookie,wStopCookie) 7015 #define ICaptureGraphBuilder_AllocCapFile(This,lpstr,dwlSize) (This)->lpVtbl->AllocCapFile(This,lpstr,dwlSize) 7016 #define ICaptureGraphBuilder_CopyCaptureFile(This,lpwstrOld,lpwstrNew,fAllowEscAbort,pCallback) (This)->lpVtbl->CopyCaptureFile(This,lpwstrOld,lpwstrNew,fAllowEscAbort,pCallback) 7017 #else 7018 /*** IUnknown methods ***/ 7019 static FORCEINLINE HRESULT ICaptureGraphBuilder_QueryInterface(ICaptureGraphBuilder* This,REFIID riid,void **ppvObject) { 7020 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7021 } 7022 static FORCEINLINE ULONG ICaptureGraphBuilder_AddRef(ICaptureGraphBuilder* This) { 7023 return This->lpVtbl->AddRef(This); 7024 } 7025 static FORCEINLINE ULONG ICaptureGraphBuilder_Release(ICaptureGraphBuilder* This) { 7026 return This->lpVtbl->Release(This); 7027 } 7028 /*** ICaptureGraphBuilder methods ***/ 7029 static FORCEINLINE HRESULT ICaptureGraphBuilder_SetFiltergraph(ICaptureGraphBuilder* This,IGraphBuilder *pfg) { 7030 return This->lpVtbl->SetFiltergraph(This,pfg); 7031 } 7032 static FORCEINLINE HRESULT ICaptureGraphBuilder_GetFiltergraph(ICaptureGraphBuilder* This,IGraphBuilder **ppfg) { 7033 return This->lpVtbl->GetFiltergraph(This,ppfg); 7034 } 7035 static FORCEINLINE HRESULT ICaptureGraphBuilder_SetOutputFileName(ICaptureGraphBuilder* This,const GUID *pType,LPCOLESTR lpstrFile,IBaseFilter **ppf,IFileSinkFilter **ppSink) { 7036 return This->lpVtbl->SetOutputFileName(This,pType,lpstrFile,ppf,ppSink); 7037 } 7038 static FORCEINLINE HRESULT ICaptureGraphBuilder_FindInterface(ICaptureGraphBuilder* This,const GUID *pCategory,IBaseFilter *pf,REFIID riid,void **ppint) { 7039 return This->lpVtbl->FindInterface(This,pCategory,pf,riid,ppint); 7040 } 7041 static FORCEINLINE HRESULT ICaptureGraphBuilder_RenderStream(ICaptureGraphBuilder* This,const GUID *pCategory,IUnknown *pSource,IBaseFilter *pfCompressor,IBaseFilter *pfRenderer) { 7042 return This->lpVtbl->RenderStream(This,pCategory,pSource,pfCompressor,pfRenderer); 7043 } 7044 static FORCEINLINE HRESULT ICaptureGraphBuilder_ControlStream(ICaptureGraphBuilder* This,const GUID *pCategory,IBaseFilter *pFilter,REFERENCE_TIME *pstart,REFERENCE_TIME *pstop,WORD wStartCookie,WORD wStopCookie) { 7045 return This->lpVtbl->ControlStream(This,pCategory,pFilter,pstart,pstop,wStartCookie,wStopCookie); 7046 } 7047 static FORCEINLINE HRESULT ICaptureGraphBuilder_AllocCapFile(ICaptureGraphBuilder* This,LPCOLESTR lpstr,DWORDLONG dwlSize) { 7048 return This->lpVtbl->AllocCapFile(This,lpstr,dwlSize); 7049 } 7050 static FORCEINLINE HRESULT ICaptureGraphBuilder_CopyCaptureFile(ICaptureGraphBuilder* This,LPOLESTR lpwstrOld,LPOLESTR lpwstrNew,int fAllowEscAbort,IAMCopyCaptureFileProgress *pCallback) { 7051 return This->lpVtbl->CopyCaptureFile(This,lpwstrOld,lpwstrNew,fAllowEscAbort,pCallback); 7052 } 7053 #endif 7054 #endif 7055 7056 #endif 7057 7058 HRESULT STDMETHODCALLTYPE ICaptureGraphBuilder_SetFiltergraph_Proxy( 7059 ICaptureGraphBuilder* This, 7060 IGraphBuilder *pfg); 7061 void __RPC_STUB ICaptureGraphBuilder_SetFiltergraph_Stub( 7062 IRpcStubBuffer* This, 7063 IRpcChannelBuffer* pRpcChannelBuffer, 7064 PRPC_MESSAGE pRpcMessage, 7065 DWORD* pdwStubPhase); 7066 HRESULT STDMETHODCALLTYPE ICaptureGraphBuilder_GetFiltergraph_Proxy( 7067 ICaptureGraphBuilder* This, 7068 IGraphBuilder **ppfg); 7069 void __RPC_STUB ICaptureGraphBuilder_GetFiltergraph_Stub( 7070 IRpcStubBuffer* This, 7071 IRpcChannelBuffer* pRpcChannelBuffer, 7072 PRPC_MESSAGE pRpcMessage, 7073 DWORD* pdwStubPhase); 7074 HRESULT STDMETHODCALLTYPE ICaptureGraphBuilder_SetOutputFileName_Proxy( 7075 ICaptureGraphBuilder* This, 7076 const GUID *pType, 7077 LPCOLESTR lpstrFile, 7078 IBaseFilter **ppf, 7079 IFileSinkFilter **ppSink); 7080 void __RPC_STUB ICaptureGraphBuilder_SetOutputFileName_Stub( 7081 IRpcStubBuffer* This, 7082 IRpcChannelBuffer* pRpcChannelBuffer, 7083 PRPC_MESSAGE pRpcMessage, 7084 DWORD* pdwStubPhase); 7085 HRESULT STDMETHODCALLTYPE ICaptureGraphBuilder_RemoteFindInterface_Proxy( 7086 ICaptureGraphBuilder* This, 7087 const GUID *pCategory, 7088 IBaseFilter *pf, 7089 REFIID riid, 7090 IUnknown **ppint); 7091 void __RPC_STUB ICaptureGraphBuilder_RemoteFindInterface_Stub( 7092 IRpcStubBuffer* This, 7093 IRpcChannelBuffer* pRpcChannelBuffer, 7094 PRPC_MESSAGE pRpcMessage, 7095 DWORD* pdwStubPhase); 7096 HRESULT STDMETHODCALLTYPE ICaptureGraphBuilder_RenderStream_Proxy( 7097 ICaptureGraphBuilder* This, 7098 const GUID *pCategory, 7099 IUnknown *pSource, 7100 IBaseFilter *pfCompressor, 7101 IBaseFilter *pfRenderer); 7102 void __RPC_STUB ICaptureGraphBuilder_RenderStream_Stub( 7103 IRpcStubBuffer* This, 7104 IRpcChannelBuffer* pRpcChannelBuffer, 7105 PRPC_MESSAGE pRpcMessage, 7106 DWORD* pdwStubPhase); 7107 HRESULT STDMETHODCALLTYPE ICaptureGraphBuilder_ControlStream_Proxy( 7108 ICaptureGraphBuilder* This, 7109 const GUID *pCategory, 7110 IBaseFilter *pFilter, 7111 REFERENCE_TIME *pstart, 7112 REFERENCE_TIME *pstop, 7113 WORD wStartCookie, 7114 WORD wStopCookie); 7115 void __RPC_STUB ICaptureGraphBuilder_ControlStream_Stub( 7116 IRpcStubBuffer* This, 7117 IRpcChannelBuffer* pRpcChannelBuffer, 7118 PRPC_MESSAGE pRpcMessage, 7119 DWORD* pdwStubPhase); 7120 HRESULT STDMETHODCALLTYPE ICaptureGraphBuilder_AllocCapFile_Proxy( 7121 ICaptureGraphBuilder* This, 7122 LPCOLESTR lpstr, 7123 DWORDLONG dwlSize); 7124 void __RPC_STUB ICaptureGraphBuilder_AllocCapFile_Stub( 7125 IRpcStubBuffer* This, 7126 IRpcChannelBuffer* pRpcChannelBuffer, 7127 PRPC_MESSAGE pRpcMessage, 7128 DWORD* pdwStubPhase); 7129 HRESULT STDMETHODCALLTYPE ICaptureGraphBuilder_CopyCaptureFile_Proxy( 7130 ICaptureGraphBuilder* This, 7131 LPOLESTR lpwstrOld, 7132 LPOLESTR lpwstrNew, 7133 int fAllowEscAbort, 7134 IAMCopyCaptureFileProgress *pCallback); 7135 void __RPC_STUB ICaptureGraphBuilder_CopyCaptureFile_Stub( 7136 IRpcStubBuffer* This, 7137 IRpcChannelBuffer* pRpcChannelBuffer, 7138 PRPC_MESSAGE pRpcMessage, 7139 DWORD* pdwStubPhase); 7140 HRESULT CALLBACK ICaptureGraphBuilder_FindInterface_Proxy( 7141 ICaptureGraphBuilder* This, 7142 const GUID *pCategory, 7143 IBaseFilter *pf, 7144 REFIID riid, 7145 void **ppint); 7146 HRESULT __RPC_STUB ICaptureGraphBuilder_FindInterface_Stub( 7147 ICaptureGraphBuilder* This, 7148 const GUID *pCategory, 7149 IBaseFilter *pf, 7150 REFIID riid, 7151 IUnknown **ppint); 7152 7153 #endif /* __ICaptureGraphBuilder_INTERFACE_DEFINED__ */ 7154 7155 /***************************************************************************** 7156 * IAMCopyCaptureFileProgress interface 7157 */ 7158 #ifndef __IAMCopyCaptureFileProgress_INTERFACE_DEFINED__ 7159 #define __IAMCopyCaptureFileProgress_INTERFACE_DEFINED__ 7160 7161 DEFINE_GUID(IID_IAMCopyCaptureFileProgress, 0x670d1d20, 0xa068, 0x11d0, 0xb3,0xf0, 0x00,0xaa,0x00,0x37,0x61,0xc5); 7162 #if defined(__cplusplus) && !defined(CINTERFACE) 7163 MIDL_INTERFACE("670d1d20-a068-11d0-b3f0-00aa003761c5") 7164 IAMCopyCaptureFileProgress : public IUnknown 7165 { 7166 virtual HRESULT STDMETHODCALLTYPE Progress( 7167 int iProgress) = 0; 7168 7169 }; 7170 #ifdef __CRT_UUID_DECL 7171 __CRT_UUID_DECL(IAMCopyCaptureFileProgress, 0x670d1d20, 0xa068, 0x11d0, 0xb3,0xf0, 0x00,0xaa,0x00,0x37,0x61,0xc5) 7172 #endif 7173 #else 7174 typedef struct IAMCopyCaptureFileProgressVtbl { 7175 BEGIN_INTERFACE 7176 7177 /*** IUnknown methods ***/ 7178 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 7179 IAMCopyCaptureFileProgress* This, 7180 REFIID riid, 7181 void **ppvObject); 7182 7183 ULONG (STDMETHODCALLTYPE *AddRef)( 7184 IAMCopyCaptureFileProgress* This); 7185 7186 ULONG (STDMETHODCALLTYPE *Release)( 7187 IAMCopyCaptureFileProgress* This); 7188 7189 /*** IAMCopyCaptureFileProgress methods ***/ 7190 HRESULT (STDMETHODCALLTYPE *Progress)( 7191 IAMCopyCaptureFileProgress* This, 7192 int iProgress); 7193 7194 END_INTERFACE 7195 } IAMCopyCaptureFileProgressVtbl; 7196 interface IAMCopyCaptureFileProgress { 7197 CONST_VTBL IAMCopyCaptureFileProgressVtbl* lpVtbl; 7198 }; 7199 7200 #ifdef COBJMACROS 7201 #ifndef WIDL_C_INLINE_WRAPPERS 7202 /*** IUnknown methods ***/ 7203 #define IAMCopyCaptureFileProgress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7204 #define IAMCopyCaptureFileProgress_AddRef(This) (This)->lpVtbl->AddRef(This) 7205 #define IAMCopyCaptureFileProgress_Release(This) (This)->lpVtbl->Release(This) 7206 /*** IAMCopyCaptureFileProgress methods ***/ 7207 #define IAMCopyCaptureFileProgress_Progress(This,iProgress) (This)->lpVtbl->Progress(This,iProgress) 7208 #else 7209 /*** IUnknown methods ***/ 7210 static FORCEINLINE HRESULT IAMCopyCaptureFileProgress_QueryInterface(IAMCopyCaptureFileProgress* This,REFIID riid,void **ppvObject) { 7211 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7212 } 7213 static FORCEINLINE ULONG IAMCopyCaptureFileProgress_AddRef(IAMCopyCaptureFileProgress* This) { 7214 return This->lpVtbl->AddRef(This); 7215 } 7216 static FORCEINLINE ULONG IAMCopyCaptureFileProgress_Release(IAMCopyCaptureFileProgress* This) { 7217 return This->lpVtbl->Release(This); 7218 } 7219 /*** IAMCopyCaptureFileProgress methods ***/ 7220 static FORCEINLINE HRESULT IAMCopyCaptureFileProgress_Progress(IAMCopyCaptureFileProgress* This,int iProgress) { 7221 return This->lpVtbl->Progress(This,iProgress); 7222 } 7223 #endif 7224 #endif 7225 7226 #endif 7227 7228 HRESULT STDMETHODCALLTYPE IAMCopyCaptureFileProgress_Progress_Proxy( 7229 IAMCopyCaptureFileProgress* This, 7230 int iProgress); 7231 void __RPC_STUB IAMCopyCaptureFileProgress_Progress_Stub( 7232 IRpcStubBuffer* This, 7233 IRpcChannelBuffer* pRpcChannelBuffer, 7234 PRPC_MESSAGE pRpcMessage, 7235 DWORD* pdwStubPhase); 7236 7237 #endif /* __IAMCopyCaptureFileProgress_INTERFACE_DEFINED__ */ 7238 7239 /***************************************************************************** 7240 * ICaptureGraphBuilder2 interface 7241 */ 7242 #ifndef __ICaptureGraphBuilder2_INTERFACE_DEFINED__ 7243 #define __ICaptureGraphBuilder2_INTERFACE_DEFINED__ 7244 7245 DEFINE_GUID(IID_ICaptureGraphBuilder2, 0x93e5a4e0, 0x2d50, 0x11d2, 0xab,0xfa, 0x00,0xa0,0xc9,0xc6,0xe3,0x8d); 7246 #if defined(__cplusplus) && !defined(CINTERFACE) 7247 MIDL_INTERFACE("93e5a4e0-2d50-11d2-abfa-00a0c9c6e38d") 7248 ICaptureGraphBuilder2 : public IUnknown 7249 { 7250 virtual HRESULT STDMETHODCALLTYPE SetFiltergraph( 7251 IGraphBuilder *pfg) = 0; 7252 7253 virtual HRESULT STDMETHODCALLTYPE GetFiltergraph( 7254 IGraphBuilder **ppfg) = 0; 7255 7256 virtual HRESULT STDMETHODCALLTYPE SetOutputFileName( 7257 const GUID *pType, 7258 LPCOLESTR lpstrFile, 7259 IBaseFilter **ppf, 7260 IFileSinkFilter **ppSink) = 0; 7261 7262 virtual HRESULT STDMETHODCALLTYPE FindInterface( 7263 const GUID *pCategory, 7264 const GUID *pType, 7265 IBaseFilter *pf, 7266 REFIID riid, 7267 void **ppint) = 0; 7268 7269 virtual HRESULT STDMETHODCALLTYPE RenderStream( 7270 const GUID *pCategory, 7271 const GUID *pType, 7272 IUnknown *pSource, 7273 IBaseFilter *pfCompressor, 7274 IBaseFilter *pfRenderer) = 0; 7275 7276 virtual HRESULT STDMETHODCALLTYPE ControlStream( 7277 const GUID *pCategory, 7278 const GUID *pType, 7279 IBaseFilter *pFilter, 7280 REFERENCE_TIME *pstart, 7281 REFERENCE_TIME *pstop, 7282 WORD wStartCookie, 7283 WORD wStopCookie) = 0; 7284 7285 virtual HRESULT STDMETHODCALLTYPE AllocCapFile( 7286 LPCOLESTR lpstr, 7287 DWORDLONG dwlSize) = 0; 7288 7289 virtual HRESULT STDMETHODCALLTYPE CopyCaptureFile( 7290 LPOLESTR lpwstrOld, 7291 LPOLESTR lpwstrNew, 7292 int fAllowEscAbort, 7293 IAMCopyCaptureFileProgress *pCallback) = 0; 7294 7295 virtual HRESULT STDMETHODCALLTYPE FindPin( 7296 IUnknown *pSource, 7297 PIN_DIRECTION pindir, 7298 const GUID *pCategory, 7299 const GUID *pType, 7300 WINBOOL fUnconnected, 7301 int num, 7302 IPin **ppPin) = 0; 7303 7304 }; 7305 #ifdef __CRT_UUID_DECL 7306 __CRT_UUID_DECL(ICaptureGraphBuilder2, 0x93e5a4e0, 0x2d50, 0x11d2, 0xab,0xfa, 0x00,0xa0,0xc9,0xc6,0xe3,0x8d) 7307 #endif 7308 #else 7309 typedef struct ICaptureGraphBuilder2Vtbl { 7310 BEGIN_INTERFACE 7311 7312 /*** IUnknown methods ***/ 7313 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 7314 ICaptureGraphBuilder2* This, 7315 REFIID riid, 7316 void **ppvObject); 7317 7318 ULONG (STDMETHODCALLTYPE *AddRef)( 7319 ICaptureGraphBuilder2* This); 7320 7321 ULONG (STDMETHODCALLTYPE *Release)( 7322 ICaptureGraphBuilder2* This); 7323 7324 /*** ICaptureGraphBuilder2 methods ***/ 7325 HRESULT (STDMETHODCALLTYPE *SetFiltergraph)( 7326 ICaptureGraphBuilder2* This, 7327 IGraphBuilder *pfg); 7328 7329 HRESULT (STDMETHODCALLTYPE *GetFiltergraph)( 7330 ICaptureGraphBuilder2* This, 7331 IGraphBuilder **ppfg); 7332 7333 HRESULT (STDMETHODCALLTYPE *SetOutputFileName)( 7334 ICaptureGraphBuilder2* This, 7335 const GUID *pType, 7336 LPCOLESTR lpstrFile, 7337 IBaseFilter **ppf, 7338 IFileSinkFilter **ppSink); 7339 7340 HRESULT (STDMETHODCALLTYPE *FindInterface)( 7341 ICaptureGraphBuilder2* This, 7342 const GUID *pCategory, 7343 const GUID *pType, 7344 IBaseFilter *pf, 7345 REFIID riid, 7346 void **ppint); 7347 7348 HRESULT (STDMETHODCALLTYPE *RenderStream)( 7349 ICaptureGraphBuilder2* This, 7350 const GUID *pCategory, 7351 const GUID *pType, 7352 IUnknown *pSource, 7353 IBaseFilter *pfCompressor, 7354 IBaseFilter *pfRenderer); 7355 7356 HRESULT (STDMETHODCALLTYPE *ControlStream)( 7357 ICaptureGraphBuilder2* This, 7358 const GUID *pCategory, 7359 const GUID *pType, 7360 IBaseFilter *pFilter, 7361 REFERENCE_TIME *pstart, 7362 REFERENCE_TIME *pstop, 7363 WORD wStartCookie, 7364 WORD wStopCookie); 7365 7366 HRESULT (STDMETHODCALLTYPE *AllocCapFile)( 7367 ICaptureGraphBuilder2* This, 7368 LPCOLESTR lpstr, 7369 DWORDLONG dwlSize); 7370 7371 HRESULT (STDMETHODCALLTYPE *CopyCaptureFile)( 7372 ICaptureGraphBuilder2* This, 7373 LPOLESTR lpwstrOld, 7374 LPOLESTR lpwstrNew, 7375 int fAllowEscAbort, 7376 IAMCopyCaptureFileProgress *pCallback); 7377 7378 HRESULT (STDMETHODCALLTYPE *FindPin)( 7379 ICaptureGraphBuilder2* This, 7380 IUnknown *pSource, 7381 PIN_DIRECTION pindir, 7382 const GUID *pCategory, 7383 const GUID *pType, 7384 WINBOOL fUnconnected, 7385 int num, 7386 IPin **ppPin); 7387 7388 END_INTERFACE 7389 } ICaptureGraphBuilder2Vtbl; 7390 interface ICaptureGraphBuilder2 { 7391 CONST_VTBL ICaptureGraphBuilder2Vtbl* lpVtbl; 7392 }; 7393 7394 #ifdef COBJMACROS 7395 #ifndef WIDL_C_INLINE_WRAPPERS 7396 /*** IUnknown methods ***/ 7397 #define ICaptureGraphBuilder2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7398 #define ICaptureGraphBuilder2_AddRef(This) (This)->lpVtbl->AddRef(This) 7399 #define ICaptureGraphBuilder2_Release(This) (This)->lpVtbl->Release(This) 7400 /*** ICaptureGraphBuilder2 methods ***/ 7401 #define ICaptureGraphBuilder2_SetFiltergraph(This,pfg) (This)->lpVtbl->SetFiltergraph(This,pfg) 7402 #define ICaptureGraphBuilder2_GetFiltergraph(This,ppfg) (This)->lpVtbl->GetFiltergraph(This,ppfg) 7403 #define ICaptureGraphBuilder2_SetOutputFileName(This,pType,lpstrFile,ppf,ppSink) (This)->lpVtbl->SetOutputFileName(This,pType,lpstrFile,ppf,ppSink) 7404 #define ICaptureGraphBuilder2_FindInterface(This,pCategory,pType,pf,riid,ppint) (This)->lpVtbl->FindInterface(This,pCategory,pType,pf,riid,ppint) 7405 #define ICaptureGraphBuilder2_RenderStream(This,pCategory,pType,pSource,pfCompressor,pfRenderer) (This)->lpVtbl->RenderStream(This,pCategory,pType,pSource,pfCompressor,pfRenderer) 7406 #define ICaptureGraphBuilder2_ControlStream(This,pCategory,pType,pFilter,pstart,pstop,wStartCookie,wStopCookie) (This)->lpVtbl->ControlStream(This,pCategory,pType,pFilter,pstart,pstop,wStartCookie,wStopCookie) 7407 #define ICaptureGraphBuilder2_AllocCapFile(This,lpstr,dwlSize) (This)->lpVtbl->AllocCapFile(This,lpstr,dwlSize) 7408 #define ICaptureGraphBuilder2_CopyCaptureFile(This,lpwstrOld,lpwstrNew,fAllowEscAbort,pCallback) (This)->lpVtbl->CopyCaptureFile(This,lpwstrOld,lpwstrNew,fAllowEscAbort,pCallback) 7409 #define ICaptureGraphBuilder2_FindPin(This,pSource,pindir,pCategory,pType,fUnconnected,num,ppPin) (This)->lpVtbl->FindPin(This,pSource,pindir,pCategory,pType,fUnconnected,num,ppPin) 7410 #else 7411 /*** IUnknown methods ***/ 7412 static FORCEINLINE HRESULT ICaptureGraphBuilder2_QueryInterface(ICaptureGraphBuilder2* This,REFIID riid,void **ppvObject) { 7413 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7414 } 7415 static FORCEINLINE ULONG ICaptureGraphBuilder2_AddRef(ICaptureGraphBuilder2* This) { 7416 return This->lpVtbl->AddRef(This); 7417 } 7418 static FORCEINLINE ULONG ICaptureGraphBuilder2_Release(ICaptureGraphBuilder2* This) { 7419 return This->lpVtbl->Release(This); 7420 } 7421 /*** ICaptureGraphBuilder2 methods ***/ 7422 static FORCEINLINE HRESULT ICaptureGraphBuilder2_SetFiltergraph(ICaptureGraphBuilder2* This,IGraphBuilder *pfg) { 7423 return This->lpVtbl->SetFiltergraph(This,pfg); 7424 } 7425 static FORCEINLINE HRESULT ICaptureGraphBuilder2_GetFiltergraph(ICaptureGraphBuilder2* This,IGraphBuilder **ppfg) { 7426 return This->lpVtbl->GetFiltergraph(This,ppfg); 7427 } 7428 static FORCEINLINE HRESULT ICaptureGraphBuilder2_SetOutputFileName(ICaptureGraphBuilder2* This,const GUID *pType,LPCOLESTR lpstrFile,IBaseFilter **ppf,IFileSinkFilter **ppSink) { 7429 return This->lpVtbl->SetOutputFileName(This,pType,lpstrFile,ppf,ppSink); 7430 } 7431 static FORCEINLINE HRESULT ICaptureGraphBuilder2_FindInterface(ICaptureGraphBuilder2* This,const GUID *pCategory,const GUID *pType,IBaseFilter *pf,REFIID riid,void **ppint) { 7432 return This->lpVtbl->FindInterface(This,pCategory,pType,pf,riid,ppint); 7433 } 7434 static FORCEINLINE HRESULT ICaptureGraphBuilder2_RenderStream(ICaptureGraphBuilder2* This,const GUID *pCategory,const GUID *pType,IUnknown *pSource,IBaseFilter *pfCompressor,IBaseFilter *pfRenderer) { 7435 return This->lpVtbl->RenderStream(This,pCategory,pType,pSource,pfCompressor,pfRenderer); 7436 } 7437 static FORCEINLINE HRESULT ICaptureGraphBuilder2_ControlStream(ICaptureGraphBuilder2* This,const GUID *pCategory,const GUID *pType,IBaseFilter *pFilter,REFERENCE_TIME *pstart,REFERENCE_TIME *pstop,WORD wStartCookie,WORD wStopCookie) { 7438 return This->lpVtbl->ControlStream(This,pCategory,pType,pFilter,pstart,pstop,wStartCookie,wStopCookie); 7439 } 7440 static FORCEINLINE HRESULT ICaptureGraphBuilder2_AllocCapFile(ICaptureGraphBuilder2* This,LPCOLESTR lpstr,DWORDLONG dwlSize) { 7441 return This->lpVtbl->AllocCapFile(This,lpstr,dwlSize); 7442 } 7443 static FORCEINLINE HRESULT ICaptureGraphBuilder2_CopyCaptureFile(ICaptureGraphBuilder2* This,LPOLESTR lpwstrOld,LPOLESTR lpwstrNew,int fAllowEscAbort,IAMCopyCaptureFileProgress *pCallback) { 7444 return This->lpVtbl->CopyCaptureFile(This,lpwstrOld,lpwstrNew,fAllowEscAbort,pCallback); 7445 } 7446 static FORCEINLINE HRESULT ICaptureGraphBuilder2_FindPin(ICaptureGraphBuilder2* This,IUnknown *pSource,PIN_DIRECTION pindir,const GUID *pCategory,const GUID *pType,WINBOOL fUnconnected,int num,IPin **ppPin) { 7447 return This->lpVtbl->FindPin(This,pSource,pindir,pCategory,pType,fUnconnected,num,ppPin); 7448 } 7449 #endif 7450 #endif 7451 7452 #endif 7453 7454 HRESULT STDMETHODCALLTYPE ICaptureGraphBuilder2_SetFiltergraph_Proxy( 7455 ICaptureGraphBuilder2* This, 7456 IGraphBuilder *pfg); 7457 void __RPC_STUB ICaptureGraphBuilder2_SetFiltergraph_Stub( 7458 IRpcStubBuffer* This, 7459 IRpcChannelBuffer* pRpcChannelBuffer, 7460 PRPC_MESSAGE pRpcMessage, 7461 DWORD* pdwStubPhase); 7462 HRESULT STDMETHODCALLTYPE ICaptureGraphBuilder2_GetFiltergraph_Proxy( 7463 ICaptureGraphBuilder2* This, 7464 IGraphBuilder **ppfg); 7465 void __RPC_STUB ICaptureGraphBuilder2_GetFiltergraph_Stub( 7466 IRpcStubBuffer* This, 7467 IRpcChannelBuffer* pRpcChannelBuffer, 7468 PRPC_MESSAGE pRpcMessage, 7469 DWORD* pdwStubPhase); 7470 HRESULT STDMETHODCALLTYPE ICaptureGraphBuilder2_SetOutputFileName_Proxy( 7471 ICaptureGraphBuilder2* This, 7472 const GUID *pType, 7473 LPCOLESTR lpstrFile, 7474 IBaseFilter **ppf, 7475 IFileSinkFilter **ppSink); 7476 void __RPC_STUB ICaptureGraphBuilder2_SetOutputFileName_Stub( 7477 IRpcStubBuffer* This, 7478 IRpcChannelBuffer* pRpcChannelBuffer, 7479 PRPC_MESSAGE pRpcMessage, 7480 DWORD* pdwStubPhase); 7481 HRESULT STDMETHODCALLTYPE ICaptureGraphBuilder2_RemoteFindInterface_Proxy( 7482 ICaptureGraphBuilder2* This, 7483 const GUID *pCategory, 7484 const GUID *pType, 7485 IBaseFilter *pf, 7486 REFIID riid, 7487 IUnknown **ppint); 7488 void __RPC_STUB ICaptureGraphBuilder2_RemoteFindInterface_Stub( 7489 IRpcStubBuffer* This, 7490 IRpcChannelBuffer* pRpcChannelBuffer, 7491 PRPC_MESSAGE pRpcMessage, 7492 DWORD* pdwStubPhase); 7493 HRESULT STDMETHODCALLTYPE ICaptureGraphBuilder2_RenderStream_Proxy( 7494 ICaptureGraphBuilder2* This, 7495 const GUID *pCategory, 7496 const GUID *pType, 7497 IUnknown *pSource, 7498 IBaseFilter *pfCompressor, 7499 IBaseFilter *pfRenderer); 7500 void __RPC_STUB ICaptureGraphBuilder2_RenderStream_Stub( 7501 IRpcStubBuffer* This, 7502 IRpcChannelBuffer* pRpcChannelBuffer, 7503 PRPC_MESSAGE pRpcMessage, 7504 DWORD* pdwStubPhase); 7505 HRESULT STDMETHODCALLTYPE ICaptureGraphBuilder2_ControlStream_Proxy( 7506 ICaptureGraphBuilder2* This, 7507 const GUID *pCategory, 7508 const GUID *pType, 7509 IBaseFilter *pFilter, 7510 REFERENCE_TIME *pstart, 7511 REFERENCE_TIME *pstop, 7512 WORD wStartCookie, 7513 WORD wStopCookie); 7514 void __RPC_STUB ICaptureGraphBuilder2_ControlStream_Stub( 7515 IRpcStubBuffer* This, 7516 IRpcChannelBuffer* pRpcChannelBuffer, 7517 PRPC_MESSAGE pRpcMessage, 7518 DWORD* pdwStubPhase); 7519 HRESULT STDMETHODCALLTYPE ICaptureGraphBuilder2_AllocCapFile_Proxy( 7520 ICaptureGraphBuilder2* This, 7521 LPCOLESTR lpstr, 7522 DWORDLONG dwlSize); 7523 void __RPC_STUB ICaptureGraphBuilder2_AllocCapFile_Stub( 7524 IRpcStubBuffer* This, 7525 IRpcChannelBuffer* pRpcChannelBuffer, 7526 PRPC_MESSAGE pRpcMessage, 7527 DWORD* pdwStubPhase); 7528 HRESULT STDMETHODCALLTYPE ICaptureGraphBuilder2_CopyCaptureFile_Proxy( 7529 ICaptureGraphBuilder2* This, 7530 LPOLESTR lpwstrOld, 7531 LPOLESTR lpwstrNew, 7532 int fAllowEscAbort, 7533 IAMCopyCaptureFileProgress *pCallback); 7534 void __RPC_STUB ICaptureGraphBuilder2_CopyCaptureFile_Stub( 7535 IRpcStubBuffer* This, 7536 IRpcChannelBuffer* pRpcChannelBuffer, 7537 PRPC_MESSAGE pRpcMessage, 7538 DWORD* pdwStubPhase); 7539 HRESULT STDMETHODCALLTYPE ICaptureGraphBuilder2_FindPin_Proxy( 7540 ICaptureGraphBuilder2* This, 7541 IUnknown *pSource, 7542 PIN_DIRECTION pindir, 7543 const GUID *pCategory, 7544 const GUID *pType, 7545 WINBOOL fUnconnected, 7546 int num, 7547 IPin **ppPin); 7548 void __RPC_STUB ICaptureGraphBuilder2_FindPin_Stub( 7549 IRpcStubBuffer* This, 7550 IRpcChannelBuffer* pRpcChannelBuffer, 7551 PRPC_MESSAGE pRpcMessage, 7552 DWORD* pdwStubPhase); 7553 HRESULT CALLBACK ICaptureGraphBuilder2_FindInterface_Proxy( 7554 ICaptureGraphBuilder2* This, 7555 const GUID *pCategory, 7556 const GUID *pType, 7557 IBaseFilter *pf, 7558 REFIID riid, 7559 void **ppint); 7560 HRESULT __RPC_STUB ICaptureGraphBuilder2_FindInterface_Stub( 7561 ICaptureGraphBuilder2* This, 7562 const GUID *pCategory, 7563 const GUID *pType, 7564 IBaseFilter *pf, 7565 REFIID riid, 7566 IUnknown **ppint); 7567 7568 #endif /* __ICaptureGraphBuilder2_INTERFACE_DEFINED__ */ 7569 7570 /***************************************************************************** 7571 * IConfigAviMux interface 7572 */ 7573 #ifndef __IConfigAviMux_INTERFACE_DEFINED__ 7574 #define __IConfigAviMux_INTERFACE_DEFINED__ 7575 7576 DEFINE_GUID(IID_IConfigAviMux, 0x5acd6aa0, 0xf482, 0x11ce, 0x8b,0x67, 0x00,0xaa,0x00,0xa3,0xf1,0xa6); 7577 #if defined(__cplusplus) && !defined(CINTERFACE) 7578 MIDL_INTERFACE("5acd6aa0-f482-11ce-8b67-00aa00a3f1a6") 7579 IConfigAviMux : public IUnknown 7580 { 7581 virtual HRESULT STDMETHODCALLTYPE SetMasterStream( 7582 LONG iStream) = 0; 7583 7584 virtual HRESULT STDMETHODCALLTYPE GetMasterStream( 7585 LONG *pStream) = 0; 7586 7587 virtual HRESULT STDMETHODCALLTYPE SetOutputCompatibilityIndex( 7588 WINBOOL fOldIndex) = 0; 7589 7590 virtual HRESULT STDMETHODCALLTYPE GetOutputCompatibilityIndex( 7591 WINBOOL *pfOldIndex) = 0; 7592 7593 }; 7594 #ifdef __CRT_UUID_DECL 7595 __CRT_UUID_DECL(IConfigAviMux, 0x5acd6aa0, 0xf482, 0x11ce, 0x8b,0x67, 0x00,0xaa,0x00,0xa3,0xf1,0xa6) 7596 #endif 7597 #else 7598 typedef struct IConfigAviMuxVtbl { 7599 BEGIN_INTERFACE 7600 7601 /*** IUnknown methods ***/ 7602 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 7603 IConfigAviMux* This, 7604 REFIID riid, 7605 void **ppvObject); 7606 7607 ULONG (STDMETHODCALLTYPE *AddRef)( 7608 IConfigAviMux* This); 7609 7610 ULONG (STDMETHODCALLTYPE *Release)( 7611 IConfigAviMux* This); 7612 7613 /*** IConfigAviMux methods ***/ 7614 HRESULT (STDMETHODCALLTYPE *SetMasterStream)( 7615 IConfigAviMux* This, 7616 LONG iStream); 7617 7618 HRESULT (STDMETHODCALLTYPE *GetMasterStream)( 7619 IConfigAviMux* This, 7620 LONG *pStream); 7621 7622 HRESULT (STDMETHODCALLTYPE *SetOutputCompatibilityIndex)( 7623 IConfigAviMux* This, 7624 WINBOOL fOldIndex); 7625 7626 HRESULT (STDMETHODCALLTYPE *GetOutputCompatibilityIndex)( 7627 IConfigAviMux* This, 7628 WINBOOL *pfOldIndex); 7629 7630 END_INTERFACE 7631 } IConfigAviMuxVtbl; 7632 interface IConfigAviMux { 7633 CONST_VTBL IConfigAviMuxVtbl* lpVtbl; 7634 }; 7635 7636 #ifdef COBJMACROS 7637 #ifndef WIDL_C_INLINE_WRAPPERS 7638 /*** IUnknown methods ***/ 7639 #define IConfigAviMux_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7640 #define IConfigAviMux_AddRef(This) (This)->lpVtbl->AddRef(This) 7641 #define IConfigAviMux_Release(This) (This)->lpVtbl->Release(This) 7642 /*** IConfigAviMux methods ***/ 7643 #define IConfigAviMux_SetMasterStream(This,iStream) (This)->lpVtbl->SetMasterStream(This,iStream) 7644 #define IConfigAviMux_GetMasterStream(This,pStream) (This)->lpVtbl->GetMasterStream(This,pStream) 7645 #define IConfigAviMux_SetOutputCompatibilityIndex(This,fOldIndex) (This)->lpVtbl->SetOutputCompatibilityIndex(This,fOldIndex) 7646 #define IConfigAviMux_GetOutputCompatibilityIndex(This,pfOldIndex) (This)->lpVtbl->GetOutputCompatibilityIndex(This,pfOldIndex) 7647 #else 7648 /*** IUnknown methods ***/ 7649 static FORCEINLINE HRESULT IConfigAviMux_QueryInterface(IConfigAviMux* This,REFIID riid,void **ppvObject) { 7650 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7651 } 7652 static FORCEINLINE ULONG IConfigAviMux_AddRef(IConfigAviMux* This) { 7653 return This->lpVtbl->AddRef(This); 7654 } 7655 static FORCEINLINE ULONG IConfigAviMux_Release(IConfigAviMux* This) { 7656 return This->lpVtbl->Release(This); 7657 } 7658 /*** IConfigAviMux methods ***/ 7659 static FORCEINLINE HRESULT IConfigAviMux_SetMasterStream(IConfigAviMux* This,LONG iStream) { 7660 return This->lpVtbl->SetMasterStream(This,iStream); 7661 } 7662 static FORCEINLINE HRESULT IConfigAviMux_GetMasterStream(IConfigAviMux* This,LONG *pStream) { 7663 return This->lpVtbl->GetMasterStream(This,pStream); 7664 } 7665 static FORCEINLINE HRESULT IConfigAviMux_SetOutputCompatibilityIndex(IConfigAviMux* This,WINBOOL fOldIndex) { 7666 return This->lpVtbl->SetOutputCompatibilityIndex(This,fOldIndex); 7667 } 7668 static FORCEINLINE HRESULT IConfigAviMux_GetOutputCompatibilityIndex(IConfigAviMux* This,WINBOOL *pfOldIndex) { 7669 return This->lpVtbl->GetOutputCompatibilityIndex(This,pfOldIndex); 7670 } 7671 #endif 7672 #endif 7673 7674 #endif 7675 7676 HRESULT STDMETHODCALLTYPE IConfigAviMux_SetMasterStream_Proxy( 7677 IConfigAviMux* This, 7678 LONG iStream); 7679 void __RPC_STUB IConfigAviMux_SetMasterStream_Stub( 7680 IRpcStubBuffer* This, 7681 IRpcChannelBuffer* pRpcChannelBuffer, 7682 PRPC_MESSAGE pRpcMessage, 7683 DWORD* pdwStubPhase); 7684 HRESULT STDMETHODCALLTYPE IConfigAviMux_GetMasterStream_Proxy( 7685 IConfigAviMux* This, 7686 LONG *pStream); 7687 void __RPC_STUB IConfigAviMux_GetMasterStream_Stub( 7688 IRpcStubBuffer* This, 7689 IRpcChannelBuffer* pRpcChannelBuffer, 7690 PRPC_MESSAGE pRpcMessage, 7691 DWORD* pdwStubPhase); 7692 HRESULT STDMETHODCALLTYPE IConfigAviMux_SetOutputCompatibilityIndex_Proxy( 7693 IConfigAviMux* This, 7694 WINBOOL fOldIndex); 7695 void __RPC_STUB IConfigAviMux_SetOutputCompatibilityIndex_Stub( 7696 IRpcStubBuffer* This, 7697 IRpcChannelBuffer* pRpcChannelBuffer, 7698 PRPC_MESSAGE pRpcMessage, 7699 DWORD* pdwStubPhase); 7700 HRESULT STDMETHODCALLTYPE IConfigAviMux_GetOutputCompatibilityIndex_Proxy( 7701 IConfigAviMux* This, 7702 WINBOOL *pfOldIndex); 7703 void __RPC_STUB IConfigAviMux_GetOutputCompatibilityIndex_Stub( 7704 IRpcStubBuffer* This, 7705 IRpcChannelBuffer* pRpcChannelBuffer, 7706 PRPC_MESSAGE pRpcMessage, 7707 DWORD* pdwStubPhase); 7708 7709 #endif /* __IConfigAviMux_INTERFACE_DEFINED__ */ 7710 7711 /***************************************************************************** 7712 * IConfigInterleaving interface 7713 */ 7714 #ifndef __IConfigInterleaving_INTERFACE_DEFINED__ 7715 #define __IConfigInterleaving_INTERFACE_DEFINED__ 7716 7717 typedef enum InterleavingMode { 7718 INTERLEAVE_NONE = 0, 7719 INTERLEAVE_CAPTURE = 1, 7720 INTERLEAVE_FULL = 2, 7721 INTERLEAVE_NONE_BUFFERED = 3 7722 } InterleavingMode; 7723 DEFINE_GUID(IID_IConfigInterleaving, 0xbee3d220, 0x157b, 0x11d0, 0xbd,0x23, 0x00,0xa0,0xc9,0x11,0xce,0x86); 7724 #if defined(__cplusplus) && !defined(CINTERFACE) 7725 MIDL_INTERFACE("bee3d220-157b-11d0-bd23-00a0c911ce86") 7726 IConfigInterleaving : public IUnknown 7727 { 7728 virtual HRESULT STDMETHODCALLTYPE put_Mode( 7729 InterleavingMode mode) = 0; 7730 7731 virtual HRESULT STDMETHODCALLTYPE get_Mode( 7732 InterleavingMode *pMode) = 0; 7733 7734 virtual HRESULT STDMETHODCALLTYPE put_Interleaving( 7735 const REFERENCE_TIME *prtInterleave, 7736 const REFERENCE_TIME *prtPreroll) = 0; 7737 7738 virtual HRESULT STDMETHODCALLTYPE get_Interleaving( 7739 REFERENCE_TIME *prtInterleave, 7740 REFERENCE_TIME *prtPreroll) = 0; 7741 7742 }; 7743 #ifdef __CRT_UUID_DECL 7744 __CRT_UUID_DECL(IConfigInterleaving, 0xbee3d220, 0x157b, 0x11d0, 0xbd,0x23, 0x00,0xa0,0xc9,0x11,0xce,0x86) 7745 #endif 7746 #else 7747 typedef struct IConfigInterleavingVtbl { 7748 BEGIN_INTERFACE 7749 7750 /*** IUnknown methods ***/ 7751 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 7752 IConfigInterleaving* This, 7753 REFIID riid, 7754 void **ppvObject); 7755 7756 ULONG (STDMETHODCALLTYPE *AddRef)( 7757 IConfigInterleaving* This); 7758 7759 ULONG (STDMETHODCALLTYPE *Release)( 7760 IConfigInterleaving* This); 7761 7762 /*** IConfigInterleaving methods ***/ 7763 HRESULT (STDMETHODCALLTYPE *put_Mode)( 7764 IConfigInterleaving* This, 7765 InterleavingMode mode); 7766 7767 HRESULT (STDMETHODCALLTYPE *get_Mode)( 7768 IConfigInterleaving* This, 7769 InterleavingMode *pMode); 7770 7771 HRESULT (STDMETHODCALLTYPE *put_Interleaving)( 7772 IConfigInterleaving* This, 7773 const REFERENCE_TIME *prtInterleave, 7774 const REFERENCE_TIME *prtPreroll); 7775 7776 HRESULT (STDMETHODCALLTYPE *get_Interleaving)( 7777 IConfigInterleaving* This, 7778 REFERENCE_TIME *prtInterleave, 7779 REFERENCE_TIME *prtPreroll); 7780 7781 END_INTERFACE 7782 } IConfigInterleavingVtbl; 7783 interface IConfigInterleaving { 7784 CONST_VTBL IConfigInterleavingVtbl* lpVtbl; 7785 }; 7786 7787 #ifdef COBJMACROS 7788 #ifndef WIDL_C_INLINE_WRAPPERS 7789 /*** IUnknown methods ***/ 7790 #define IConfigInterleaving_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7791 #define IConfigInterleaving_AddRef(This) (This)->lpVtbl->AddRef(This) 7792 #define IConfigInterleaving_Release(This) (This)->lpVtbl->Release(This) 7793 /*** IConfigInterleaving methods ***/ 7794 #define IConfigInterleaving_put_Mode(This,mode) (This)->lpVtbl->put_Mode(This,mode) 7795 #define IConfigInterleaving_get_Mode(This,pMode) (This)->lpVtbl->get_Mode(This,pMode) 7796 #define IConfigInterleaving_put_Interleaving(This,prtInterleave,prtPreroll) (This)->lpVtbl->put_Interleaving(This,prtInterleave,prtPreroll) 7797 #define IConfigInterleaving_get_Interleaving(This,prtInterleave,prtPreroll) (This)->lpVtbl->get_Interleaving(This,prtInterleave,prtPreroll) 7798 #else 7799 /*** IUnknown methods ***/ 7800 static FORCEINLINE HRESULT IConfigInterleaving_QueryInterface(IConfigInterleaving* This,REFIID riid,void **ppvObject) { 7801 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7802 } 7803 static FORCEINLINE ULONG IConfigInterleaving_AddRef(IConfigInterleaving* This) { 7804 return This->lpVtbl->AddRef(This); 7805 } 7806 static FORCEINLINE ULONG IConfigInterleaving_Release(IConfigInterleaving* This) { 7807 return This->lpVtbl->Release(This); 7808 } 7809 /*** IConfigInterleaving methods ***/ 7810 static FORCEINLINE HRESULT IConfigInterleaving_put_Mode(IConfigInterleaving* This,InterleavingMode mode) { 7811 return This->lpVtbl->put_Mode(This,mode); 7812 } 7813 static FORCEINLINE HRESULT IConfigInterleaving_get_Mode(IConfigInterleaving* This,InterleavingMode *pMode) { 7814 return This->lpVtbl->get_Mode(This,pMode); 7815 } 7816 static FORCEINLINE HRESULT IConfigInterleaving_put_Interleaving(IConfigInterleaving* This,const REFERENCE_TIME *prtInterleave,const REFERENCE_TIME *prtPreroll) { 7817 return This->lpVtbl->put_Interleaving(This,prtInterleave,prtPreroll); 7818 } 7819 static FORCEINLINE HRESULT IConfigInterleaving_get_Interleaving(IConfigInterleaving* This,REFERENCE_TIME *prtInterleave,REFERENCE_TIME *prtPreroll) { 7820 return This->lpVtbl->get_Interleaving(This,prtInterleave,prtPreroll); 7821 } 7822 #endif 7823 #endif 7824 7825 #endif 7826 7827 HRESULT STDMETHODCALLTYPE IConfigInterleaving_put_Mode_Proxy( 7828 IConfigInterleaving* This, 7829 InterleavingMode mode); 7830 void __RPC_STUB IConfigInterleaving_put_Mode_Stub( 7831 IRpcStubBuffer* This, 7832 IRpcChannelBuffer* pRpcChannelBuffer, 7833 PRPC_MESSAGE pRpcMessage, 7834 DWORD* pdwStubPhase); 7835 HRESULT STDMETHODCALLTYPE IConfigInterleaving_get_Mode_Proxy( 7836 IConfigInterleaving* This, 7837 InterleavingMode *pMode); 7838 void __RPC_STUB IConfigInterleaving_get_Mode_Stub( 7839 IRpcStubBuffer* This, 7840 IRpcChannelBuffer* pRpcChannelBuffer, 7841 PRPC_MESSAGE pRpcMessage, 7842 DWORD* pdwStubPhase); 7843 HRESULT STDMETHODCALLTYPE IConfigInterleaving_put_Interleaving_Proxy( 7844 IConfigInterleaving* This, 7845 const REFERENCE_TIME *prtInterleave, 7846 const REFERENCE_TIME *prtPreroll); 7847 void __RPC_STUB IConfigInterleaving_put_Interleaving_Stub( 7848 IRpcStubBuffer* This, 7849 IRpcChannelBuffer* pRpcChannelBuffer, 7850 PRPC_MESSAGE pRpcMessage, 7851 DWORD* pdwStubPhase); 7852 HRESULT STDMETHODCALLTYPE IConfigInterleaving_get_Interleaving_Proxy( 7853 IConfigInterleaving* This, 7854 REFERENCE_TIME *prtInterleave, 7855 REFERENCE_TIME *prtPreroll); 7856 void __RPC_STUB IConfigInterleaving_get_Interleaving_Stub( 7857 IRpcStubBuffer* This, 7858 IRpcChannelBuffer* pRpcChannelBuffer, 7859 PRPC_MESSAGE pRpcMessage, 7860 DWORD* pdwStubPhase); 7861 7862 #endif /* __IConfigInterleaving_INTERFACE_DEFINED__ */ 7863 7864 /***************************************************************************** 7865 * IAMClockSlave interface 7866 */ 7867 #ifndef __IAMClockSlave_INTERFACE_DEFINED__ 7868 #define __IAMClockSlave_INTERFACE_DEFINED__ 7869 7870 DEFINE_GUID(IID_IAMClockSlave, 0x9fd52741, 0x176d, 0x4b36, 0x8f,0x51, 0xca,0x8f,0x93,0x32,0x23,0xbe); 7871 #if defined(__cplusplus) && !defined(CINTERFACE) 7872 MIDL_INTERFACE("9fd52741-176d-4b36-8f51-ca8f933223be") 7873 IAMClockSlave : public IUnknown 7874 { 7875 virtual HRESULT STDMETHODCALLTYPE SetErrorTolerance( 7876 DWORD dwTolerance) = 0; 7877 7878 virtual HRESULT STDMETHODCALLTYPE GetErrorTolerance( 7879 DWORD *pdwTolerance) = 0; 7880 7881 }; 7882 #ifdef __CRT_UUID_DECL 7883 __CRT_UUID_DECL(IAMClockSlave, 0x9fd52741, 0x176d, 0x4b36, 0x8f,0x51, 0xca,0x8f,0x93,0x32,0x23,0xbe) 7884 #endif 7885 #else 7886 typedef struct IAMClockSlaveVtbl { 7887 BEGIN_INTERFACE 7888 7889 /*** IUnknown methods ***/ 7890 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 7891 IAMClockSlave* This, 7892 REFIID riid, 7893 void **ppvObject); 7894 7895 ULONG (STDMETHODCALLTYPE *AddRef)( 7896 IAMClockSlave* This); 7897 7898 ULONG (STDMETHODCALLTYPE *Release)( 7899 IAMClockSlave* This); 7900 7901 /*** IAMClockSlave methods ***/ 7902 HRESULT (STDMETHODCALLTYPE *SetErrorTolerance)( 7903 IAMClockSlave* This, 7904 DWORD dwTolerance); 7905 7906 HRESULT (STDMETHODCALLTYPE *GetErrorTolerance)( 7907 IAMClockSlave* This, 7908 DWORD *pdwTolerance); 7909 7910 END_INTERFACE 7911 } IAMClockSlaveVtbl; 7912 interface IAMClockSlave { 7913 CONST_VTBL IAMClockSlaveVtbl* lpVtbl; 7914 }; 7915 7916 #ifdef COBJMACROS 7917 #ifndef WIDL_C_INLINE_WRAPPERS 7918 /*** IUnknown methods ***/ 7919 #define IAMClockSlave_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7920 #define IAMClockSlave_AddRef(This) (This)->lpVtbl->AddRef(This) 7921 #define IAMClockSlave_Release(This) (This)->lpVtbl->Release(This) 7922 /*** IAMClockSlave methods ***/ 7923 #define IAMClockSlave_SetErrorTolerance(This,dwTolerance) (This)->lpVtbl->SetErrorTolerance(This,dwTolerance) 7924 #define IAMClockSlave_GetErrorTolerance(This,pdwTolerance) (This)->lpVtbl->GetErrorTolerance(This,pdwTolerance) 7925 #else 7926 /*** IUnknown methods ***/ 7927 static FORCEINLINE HRESULT IAMClockSlave_QueryInterface(IAMClockSlave* This,REFIID riid,void **ppvObject) { 7928 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7929 } 7930 static FORCEINLINE ULONG IAMClockSlave_AddRef(IAMClockSlave* This) { 7931 return This->lpVtbl->AddRef(This); 7932 } 7933 static FORCEINLINE ULONG IAMClockSlave_Release(IAMClockSlave* This) { 7934 return This->lpVtbl->Release(This); 7935 } 7936 /*** IAMClockSlave methods ***/ 7937 static FORCEINLINE HRESULT IAMClockSlave_SetErrorTolerance(IAMClockSlave* This,DWORD dwTolerance) { 7938 return This->lpVtbl->SetErrorTolerance(This,dwTolerance); 7939 } 7940 static FORCEINLINE HRESULT IAMClockSlave_GetErrorTolerance(IAMClockSlave* This,DWORD *pdwTolerance) { 7941 return This->lpVtbl->GetErrorTolerance(This,pdwTolerance); 7942 } 7943 #endif 7944 #endif 7945 7946 #endif 7947 7948 HRESULT STDMETHODCALLTYPE IAMClockSlave_SetErrorTolerance_Proxy( 7949 IAMClockSlave* This, 7950 DWORD dwTolerance); 7951 void __RPC_STUB IAMClockSlave_SetErrorTolerance_Stub( 7952 IRpcStubBuffer* This, 7953 IRpcChannelBuffer* pRpcChannelBuffer, 7954 PRPC_MESSAGE pRpcMessage, 7955 DWORD* pdwStubPhase); 7956 HRESULT STDMETHODCALLTYPE IAMClockSlave_GetErrorTolerance_Proxy( 7957 IAMClockSlave* This, 7958 DWORD *pdwTolerance); 7959 void __RPC_STUB IAMClockSlave_GetErrorTolerance_Stub( 7960 IRpcStubBuffer* This, 7961 IRpcChannelBuffer* pRpcChannelBuffer, 7962 PRPC_MESSAGE pRpcMessage, 7963 DWORD* pdwStubPhase); 7964 7965 #endif /* __IAMClockSlave_INTERFACE_DEFINED__ */ 7966 7967 typedef struct _AMCOPPSignature { 7968 BYTE Signature[256]; 7969 } AMCOPPSignature; 7970 typedef struct _AMCOPPCommand { 7971 GUID macKDI; 7972 GUID guidCommandID; 7973 DWORD dwSequence; 7974 DWORD bSizeData; 7975 BYTE CommandData[4056]; 7976 } AMCOPPCommand; 7977 typedef struct _AMCOPPCommand *LPAMCOPPCommand; 7978 typedef struct _AMCOPPStatusInput { 7979 GUID rApp; 7980 GUID guidStatusRequestID; 7981 DWORD dwSequence; 7982 DWORD cbSizeData; 7983 BYTE StatusData[4056]; 7984 } AMCOPPStatusInput; 7985 typedef struct _AMCOPPStatusInput *LPAMCOPPStatusInput; 7986 typedef struct _AMCOPPStatusOutput { 7987 GUID macKDI; 7988 DWORD cbSizeData; 7989 BYTE COPPStatus[4076]; 7990 } AMCOPPStatusOutput; 7991 typedef struct _AMCOPPStatusOutput *LPAMCOPPStatusOutput; 7992 /***************************************************************************** 7993 * IAMCertifiedOutputProtection interface 7994 */ 7995 #ifndef __IAMCertifiedOutputProtection_INTERFACE_DEFINED__ 7996 #define __IAMCertifiedOutputProtection_INTERFACE_DEFINED__ 7997 7998 DEFINE_GUID(IID_IAMCertifiedOutputProtection, 0x6feded3e, 0x0ff1, 0x4901, 0xa2,0xf1, 0x43,0xf7,0x01,0x2c,0x85,0x15); 7999 #if defined(__cplusplus) && !defined(CINTERFACE) 8000 MIDL_INTERFACE("6feded3e-0ff1-4901-a2f1-43f7012c8515") 8001 IAMCertifiedOutputProtection : public IUnknown 8002 { 8003 virtual HRESULT STDMETHODCALLTYPE KeyExchange( 8004 GUID *pRandom, 8005 BYTE **VarLenCertGH, 8006 DWORD *pdwLengthCertGH) = 0; 8007 8008 virtual HRESULT STDMETHODCALLTYPE SessionSequenceStart( 8009 AMCOPPSignature *pSig) = 0; 8010 8011 virtual HRESULT STDMETHODCALLTYPE ProtectionCommand( 8012 const AMCOPPCommand *cmd) = 0; 8013 8014 virtual HRESULT STDMETHODCALLTYPE ProtectionStatus( 8015 const AMCOPPStatusInput *pStatusInput, 8016 AMCOPPStatusOutput *pStatusOutput) = 0; 8017 8018 }; 8019 #ifdef __CRT_UUID_DECL 8020 __CRT_UUID_DECL(IAMCertifiedOutputProtection, 0x6feded3e, 0x0ff1, 0x4901, 0xa2,0xf1, 0x43,0xf7,0x01,0x2c,0x85,0x15) 8021 #endif 8022 #else 8023 typedef struct IAMCertifiedOutputProtectionVtbl { 8024 BEGIN_INTERFACE 8025 8026 /*** IUnknown methods ***/ 8027 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 8028 IAMCertifiedOutputProtection* This, 8029 REFIID riid, 8030 void **ppvObject); 8031 8032 ULONG (STDMETHODCALLTYPE *AddRef)( 8033 IAMCertifiedOutputProtection* This); 8034 8035 ULONG (STDMETHODCALLTYPE *Release)( 8036 IAMCertifiedOutputProtection* This); 8037 8038 /*** IAMCertifiedOutputProtection methods ***/ 8039 HRESULT (STDMETHODCALLTYPE *KeyExchange)( 8040 IAMCertifiedOutputProtection* This, 8041 GUID *pRandom, 8042 BYTE **VarLenCertGH, 8043 DWORD *pdwLengthCertGH); 8044 8045 HRESULT (STDMETHODCALLTYPE *SessionSequenceStart)( 8046 IAMCertifiedOutputProtection* This, 8047 AMCOPPSignature *pSig); 8048 8049 HRESULT (STDMETHODCALLTYPE *ProtectionCommand)( 8050 IAMCertifiedOutputProtection* This, 8051 const AMCOPPCommand *cmd); 8052 8053 HRESULT (STDMETHODCALLTYPE *ProtectionStatus)( 8054 IAMCertifiedOutputProtection* This, 8055 const AMCOPPStatusInput *pStatusInput, 8056 AMCOPPStatusOutput *pStatusOutput); 8057 8058 END_INTERFACE 8059 } IAMCertifiedOutputProtectionVtbl; 8060 interface IAMCertifiedOutputProtection { 8061 CONST_VTBL IAMCertifiedOutputProtectionVtbl* lpVtbl; 8062 }; 8063 8064 #ifdef COBJMACROS 8065 #ifndef WIDL_C_INLINE_WRAPPERS 8066 /*** IUnknown methods ***/ 8067 #define IAMCertifiedOutputProtection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 8068 #define IAMCertifiedOutputProtection_AddRef(This) (This)->lpVtbl->AddRef(This) 8069 #define IAMCertifiedOutputProtection_Release(This) (This)->lpVtbl->Release(This) 8070 /*** IAMCertifiedOutputProtection methods ***/ 8071 #define IAMCertifiedOutputProtection_KeyExchange(This,pRandom,VarLenCertGH,pdwLengthCertGH) (This)->lpVtbl->KeyExchange(This,pRandom,VarLenCertGH,pdwLengthCertGH) 8072 #define IAMCertifiedOutputProtection_SessionSequenceStart(This,pSig) (This)->lpVtbl->SessionSequenceStart(This,pSig) 8073 #define IAMCertifiedOutputProtection_ProtectionCommand(This,cmd) (This)->lpVtbl->ProtectionCommand(This,cmd) 8074 #define IAMCertifiedOutputProtection_ProtectionStatus(This,pStatusInput,pStatusOutput) (This)->lpVtbl->ProtectionStatus(This,pStatusInput,pStatusOutput) 8075 #else 8076 /*** IUnknown methods ***/ 8077 static FORCEINLINE HRESULT IAMCertifiedOutputProtection_QueryInterface(IAMCertifiedOutputProtection* This,REFIID riid,void **ppvObject) { 8078 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 8079 } 8080 static FORCEINLINE ULONG IAMCertifiedOutputProtection_AddRef(IAMCertifiedOutputProtection* This) { 8081 return This->lpVtbl->AddRef(This); 8082 } 8083 static FORCEINLINE ULONG IAMCertifiedOutputProtection_Release(IAMCertifiedOutputProtection* This) { 8084 return This->lpVtbl->Release(This); 8085 } 8086 /*** IAMCertifiedOutputProtection methods ***/ 8087 static FORCEINLINE HRESULT IAMCertifiedOutputProtection_KeyExchange(IAMCertifiedOutputProtection* This,GUID *pRandom,BYTE **VarLenCertGH,DWORD *pdwLengthCertGH) { 8088 return This->lpVtbl->KeyExchange(This,pRandom,VarLenCertGH,pdwLengthCertGH); 8089 } 8090 static FORCEINLINE HRESULT IAMCertifiedOutputProtection_SessionSequenceStart(IAMCertifiedOutputProtection* This,AMCOPPSignature *pSig) { 8091 return This->lpVtbl->SessionSequenceStart(This,pSig); 8092 } 8093 static FORCEINLINE HRESULT IAMCertifiedOutputProtection_ProtectionCommand(IAMCertifiedOutputProtection* This,const AMCOPPCommand *cmd) { 8094 return This->lpVtbl->ProtectionCommand(This,cmd); 8095 } 8096 static FORCEINLINE HRESULT IAMCertifiedOutputProtection_ProtectionStatus(IAMCertifiedOutputProtection* This,const AMCOPPStatusInput *pStatusInput,AMCOPPStatusOutput *pStatusOutput) { 8097 return This->lpVtbl->ProtectionStatus(This,pStatusInput,pStatusOutput); 8098 } 8099 #endif 8100 #endif 8101 8102 #endif 8103 8104 HRESULT STDMETHODCALLTYPE IAMCertifiedOutputProtection_KeyExchange_Proxy( 8105 IAMCertifiedOutputProtection* This, 8106 GUID *pRandom, 8107 BYTE **VarLenCertGH, 8108 DWORD *pdwLengthCertGH); 8109 void __RPC_STUB IAMCertifiedOutputProtection_KeyExchange_Stub( 8110 IRpcStubBuffer* This, 8111 IRpcChannelBuffer* pRpcChannelBuffer, 8112 PRPC_MESSAGE pRpcMessage, 8113 DWORD* pdwStubPhase); 8114 HRESULT STDMETHODCALLTYPE IAMCertifiedOutputProtection_SessionSequenceStart_Proxy( 8115 IAMCertifiedOutputProtection* This, 8116 AMCOPPSignature *pSig); 8117 void __RPC_STUB IAMCertifiedOutputProtection_SessionSequenceStart_Stub( 8118 IRpcStubBuffer* This, 8119 IRpcChannelBuffer* pRpcChannelBuffer, 8120 PRPC_MESSAGE pRpcMessage, 8121 DWORD* pdwStubPhase); 8122 HRESULT STDMETHODCALLTYPE IAMCertifiedOutputProtection_ProtectionCommand_Proxy( 8123 IAMCertifiedOutputProtection* This, 8124 const AMCOPPCommand *cmd); 8125 void __RPC_STUB IAMCertifiedOutputProtection_ProtectionCommand_Stub( 8126 IRpcStubBuffer* This, 8127 IRpcChannelBuffer* pRpcChannelBuffer, 8128 PRPC_MESSAGE pRpcMessage, 8129 DWORD* pdwStubPhase); 8130 HRESULT STDMETHODCALLTYPE IAMCertifiedOutputProtection_ProtectionStatus_Proxy( 8131 IAMCertifiedOutputProtection* This, 8132 const AMCOPPStatusInput *pStatusInput, 8133 AMCOPPStatusOutput *pStatusOutput); 8134 void __RPC_STUB IAMCertifiedOutputProtection_ProtectionStatus_Stub( 8135 IRpcStubBuffer* This, 8136 IRpcChannelBuffer* pRpcChannelBuffer, 8137 PRPC_MESSAGE pRpcMessage, 8138 DWORD* pdwStubPhase); 8139 8140 #endif /* __IAMCertifiedOutputProtection_INTERFACE_DEFINED__ */ 8141 8142 enum _AM_RENSDEREXFLAGS { 8143 AM_RENDEREX_RENDERTOEXISTINGRENDERERS = 0x1 8144 }; 8145 8146 /***************************************************************************** 8147 * IFilterGraph2 interface 8148 */ 8149 #ifndef __IFilterGraph2_INTERFACE_DEFINED__ 8150 #define __IFilterGraph2_INTERFACE_DEFINED__ 8151 8152 DEFINE_GUID(IID_IFilterGraph2, 0x36b73882, 0xc2c8, 0x11cf, 0x8b,0x46, 0x00,0x80,0x5f,0x6c,0xef,0x60); 8153 #if defined(__cplusplus) && !defined(CINTERFACE) 8154 MIDL_INTERFACE("36b73882-c2c8-11cf-8b46-00805f6cef60") 8155 IFilterGraph2 : public IGraphBuilder 8156 { 8157 virtual HRESULT STDMETHODCALLTYPE AddSourceFilterForMoniker( 8158 IMoniker *pMoniker, 8159 IBindCtx *pCtx, 8160 LPCWSTR lpcwstrFilterName, 8161 IBaseFilter **ppFilter) = 0; 8162 8163 virtual HRESULT STDMETHODCALLTYPE ReconnectEx( 8164 IPin *ppin, 8165 const AM_MEDIA_TYPE *pmt) = 0; 8166 8167 virtual HRESULT STDMETHODCALLTYPE RenderEx( 8168 IPin *pPinOut, 8169 DWORD dwFlags, 8170 DWORD *pvContext) = 0; 8171 8172 }; 8173 #ifdef __CRT_UUID_DECL 8174 __CRT_UUID_DECL(IFilterGraph2, 0x36b73882, 0xc2c8, 0x11cf, 0x8b,0x46, 0x00,0x80,0x5f,0x6c,0xef,0x60) 8175 #endif 8176 #else 8177 typedef struct IFilterGraph2Vtbl { 8178 BEGIN_INTERFACE 8179 8180 /*** IUnknown methods ***/ 8181 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 8182 IFilterGraph2* This, 8183 REFIID riid, 8184 void **ppvObject); 8185 8186 ULONG (STDMETHODCALLTYPE *AddRef)( 8187 IFilterGraph2* This); 8188 8189 ULONG (STDMETHODCALLTYPE *Release)( 8190 IFilterGraph2* This); 8191 8192 /*** IFilterGraph methods ***/ 8193 HRESULT (STDMETHODCALLTYPE *AddFilter)( 8194 IFilterGraph2* This, 8195 IBaseFilter *pFilter, 8196 LPCWSTR pName); 8197 8198 HRESULT (STDMETHODCALLTYPE *RemoveFilter)( 8199 IFilterGraph2* This, 8200 IBaseFilter *pFilter); 8201 8202 HRESULT (STDMETHODCALLTYPE *EnumFilters)( 8203 IFilterGraph2* This, 8204 IEnumFilters **ppEnum); 8205 8206 HRESULT (STDMETHODCALLTYPE *FindFilterByName)( 8207 IFilterGraph2* This, 8208 LPCWSTR pName, 8209 IBaseFilter **ppFilter); 8210 8211 HRESULT (STDMETHODCALLTYPE *ConnectDirect)( 8212 IFilterGraph2* This, 8213 IPin *ppinOut, 8214 IPin *ppinIn, 8215 const AM_MEDIA_TYPE *pmt); 8216 8217 HRESULT (STDMETHODCALLTYPE *Reconnect)( 8218 IFilterGraph2* This, 8219 IPin *ppin); 8220 8221 HRESULT (STDMETHODCALLTYPE *Disconnect)( 8222 IFilterGraph2* This, 8223 IPin *ppin); 8224 8225 HRESULT (STDMETHODCALLTYPE *SetDefaultSyncSource)( 8226 IFilterGraph2* This); 8227 8228 /*** IGraphBuilder methods ***/ 8229 HRESULT (STDMETHODCALLTYPE *Connect)( 8230 IFilterGraph2* This, 8231 IPin *ppinOut, 8232 IPin *ppinIn); 8233 8234 HRESULT (STDMETHODCALLTYPE *Render)( 8235 IFilterGraph2* This, 8236 IPin *ppinOut); 8237 8238 HRESULT (STDMETHODCALLTYPE *RenderFile)( 8239 IFilterGraph2* This, 8240 LPCWSTR lpcwstrFile, 8241 LPCWSTR lpcwstrPlayList); 8242 8243 HRESULT (STDMETHODCALLTYPE *AddSourceFilter)( 8244 IFilterGraph2* This, 8245 LPCWSTR lpcwstrFileName, 8246 LPCWSTR lpcwstrFilterName, 8247 IBaseFilter **ppFilter); 8248 8249 HRESULT (STDMETHODCALLTYPE *SetLogFile)( 8250 IFilterGraph2* This, 8251 DWORD_PTR hFile); 8252 8253 HRESULT (STDMETHODCALLTYPE *Abort)( 8254 IFilterGraph2* This); 8255 8256 HRESULT (STDMETHODCALLTYPE *ShouldOperationContinue)( 8257 IFilterGraph2* This); 8258 8259 /*** IFilterGraph2 methods ***/ 8260 HRESULT (STDMETHODCALLTYPE *AddSourceFilterForMoniker)( 8261 IFilterGraph2* This, 8262 IMoniker *pMoniker, 8263 IBindCtx *pCtx, 8264 LPCWSTR lpcwstrFilterName, 8265 IBaseFilter **ppFilter); 8266 8267 HRESULT (STDMETHODCALLTYPE *ReconnectEx)( 8268 IFilterGraph2* This, 8269 IPin *ppin, 8270 const AM_MEDIA_TYPE *pmt); 8271 8272 HRESULT (STDMETHODCALLTYPE *RenderEx)( 8273 IFilterGraph2* This, 8274 IPin *pPinOut, 8275 DWORD dwFlags, 8276 DWORD *pvContext); 8277 8278 END_INTERFACE 8279 } IFilterGraph2Vtbl; 8280 interface IFilterGraph2 { 8281 CONST_VTBL IFilterGraph2Vtbl* lpVtbl; 8282 }; 8283 8284 #ifdef COBJMACROS 8285 #ifndef WIDL_C_INLINE_WRAPPERS 8286 /*** IUnknown methods ***/ 8287 #define IFilterGraph2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 8288 #define IFilterGraph2_AddRef(This) (This)->lpVtbl->AddRef(This) 8289 #define IFilterGraph2_Release(This) (This)->lpVtbl->Release(This) 8290 /*** IFilterGraph methods ***/ 8291 #define IFilterGraph2_AddFilter(This,pFilter,pName) (This)->lpVtbl->AddFilter(This,pFilter,pName) 8292 #define IFilterGraph2_RemoveFilter(This,pFilter) (This)->lpVtbl->RemoveFilter(This,pFilter) 8293 #define IFilterGraph2_EnumFilters(This,ppEnum) (This)->lpVtbl->EnumFilters(This,ppEnum) 8294 #define IFilterGraph2_FindFilterByName(This,pName,ppFilter) (This)->lpVtbl->FindFilterByName(This,pName,ppFilter) 8295 #define IFilterGraph2_ConnectDirect(This,ppinOut,ppinIn,pmt) (This)->lpVtbl->ConnectDirect(This,ppinOut,ppinIn,pmt) 8296 #define IFilterGraph2_Reconnect(This,ppin) (This)->lpVtbl->Reconnect(This,ppin) 8297 #define IFilterGraph2_Disconnect(This,ppin) (This)->lpVtbl->Disconnect(This,ppin) 8298 #define IFilterGraph2_SetDefaultSyncSource(This) (This)->lpVtbl->SetDefaultSyncSource(This) 8299 /*** IGraphBuilder methods ***/ 8300 #define IFilterGraph2_Connect(This,ppinOut,ppinIn) (This)->lpVtbl->Connect(This,ppinOut,ppinIn) 8301 #define IFilterGraph2_Render(This,ppinOut) (This)->lpVtbl->Render(This,ppinOut) 8302 #define IFilterGraph2_RenderFile(This,lpcwstrFile,lpcwstrPlayList) (This)->lpVtbl->RenderFile(This,lpcwstrFile,lpcwstrPlayList) 8303 #define IFilterGraph2_AddSourceFilter(This,lpcwstrFileName,lpcwstrFilterName,ppFilter) (This)->lpVtbl->AddSourceFilter(This,lpcwstrFileName,lpcwstrFilterName,ppFilter) 8304 #define IFilterGraph2_SetLogFile(This,hFile) (This)->lpVtbl->SetLogFile(This,hFile) 8305 #define IFilterGraph2_Abort(This) (This)->lpVtbl->Abort(This) 8306 #define IFilterGraph2_ShouldOperationContinue(This) (This)->lpVtbl->ShouldOperationContinue(This) 8307 /*** IFilterGraph2 methods ***/ 8308 #define IFilterGraph2_AddSourceFilterForMoniker(This,pMoniker,pCtx,lpcwstrFilterName,ppFilter) (This)->lpVtbl->AddSourceFilterForMoniker(This,pMoniker,pCtx,lpcwstrFilterName,ppFilter) 8309 #define IFilterGraph2_ReconnectEx(This,ppin,pmt) (This)->lpVtbl->ReconnectEx(This,ppin,pmt) 8310 #define IFilterGraph2_RenderEx(This,pPinOut,dwFlags,pvContext) (This)->lpVtbl->RenderEx(This,pPinOut,dwFlags,pvContext) 8311 #else 8312 /*** IUnknown methods ***/ 8313 static FORCEINLINE HRESULT IFilterGraph2_QueryInterface(IFilterGraph2* This,REFIID riid,void **ppvObject) { 8314 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 8315 } 8316 static FORCEINLINE ULONG IFilterGraph2_AddRef(IFilterGraph2* This) { 8317 return This->lpVtbl->AddRef(This); 8318 } 8319 static FORCEINLINE ULONG IFilterGraph2_Release(IFilterGraph2* This) { 8320 return This->lpVtbl->Release(This); 8321 } 8322 /*** IFilterGraph methods ***/ 8323 static FORCEINLINE HRESULT IFilterGraph2_AddFilter(IFilterGraph2* This,IBaseFilter *pFilter,LPCWSTR pName) { 8324 return This->lpVtbl->AddFilter(This,pFilter,pName); 8325 } 8326 static FORCEINLINE HRESULT IFilterGraph2_RemoveFilter(IFilterGraph2* This,IBaseFilter *pFilter) { 8327 return This->lpVtbl->RemoveFilter(This,pFilter); 8328 } 8329 static FORCEINLINE HRESULT IFilterGraph2_EnumFilters(IFilterGraph2* This,IEnumFilters **ppEnum) { 8330 return This->lpVtbl->EnumFilters(This,ppEnum); 8331 } 8332 static FORCEINLINE HRESULT IFilterGraph2_FindFilterByName(IFilterGraph2* This,LPCWSTR pName,IBaseFilter **ppFilter) { 8333 return This->lpVtbl->FindFilterByName(This,pName,ppFilter); 8334 } 8335 static FORCEINLINE HRESULT IFilterGraph2_ConnectDirect(IFilterGraph2* This,IPin *ppinOut,IPin *ppinIn,const AM_MEDIA_TYPE *pmt) { 8336 return This->lpVtbl->ConnectDirect(This,ppinOut,ppinIn,pmt); 8337 } 8338 static FORCEINLINE HRESULT IFilterGraph2_Reconnect(IFilterGraph2* This,IPin *ppin) { 8339 return This->lpVtbl->Reconnect(This,ppin); 8340 } 8341 static FORCEINLINE HRESULT IFilterGraph2_Disconnect(IFilterGraph2* This,IPin *ppin) { 8342 return This->lpVtbl->Disconnect(This,ppin); 8343 } 8344 static FORCEINLINE HRESULT IFilterGraph2_SetDefaultSyncSource(IFilterGraph2* This) { 8345 return This->lpVtbl->SetDefaultSyncSource(This); 8346 } 8347 /*** IGraphBuilder methods ***/ 8348 static FORCEINLINE HRESULT IFilterGraph2_Connect(IFilterGraph2* This,IPin *ppinOut,IPin *ppinIn) { 8349 return This->lpVtbl->Connect(This,ppinOut,ppinIn); 8350 } 8351 static FORCEINLINE HRESULT IFilterGraph2_Render(IFilterGraph2* This,IPin *ppinOut) { 8352 return This->lpVtbl->Render(This,ppinOut); 8353 } 8354 static FORCEINLINE HRESULT IFilterGraph2_RenderFile(IFilterGraph2* This,LPCWSTR lpcwstrFile,LPCWSTR lpcwstrPlayList) { 8355 return This->lpVtbl->RenderFile(This,lpcwstrFile,lpcwstrPlayList); 8356 } 8357 static FORCEINLINE HRESULT IFilterGraph2_AddSourceFilter(IFilterGraph2* This,LPCWSTR lpcwstrFileName,LPCWSTR lpcwstrFilterName,IBaseFilter **ppFilter) { 8358 return This->lpVtbl->AddSourceFilter(This,lpcwstrFileName,lpcwstrFilterName,ppFilter); 8359 } 8360 static FORCEINLINE HRESULT IFilterGraph2_SetLogFile(IFilterGraph2* This,DWORD_PTR hFile) { 8361 return This->lpVtbl->SetLogFile(This,hFile); 8362 } 8363 static FORCEINLINE HRESULT IFilterGraph2_Abort(IFilterGraph2* This) { 8364 return This->lpVtbl->Abort(This); 8365 } 8366 static FORCEINLINE HRESULT IFilterGraph2_ShouldOperationContinue(IFilterGraph2* This) { 8367 return This->lpVtbl->ShouldOperationContinue(This); 8368 } 8369 /*** IFilterGraph2 methods ***/ 8370 static FORCEINLINE HRESULT IFilterGraph2_AddSourceFilterForMoniker(IFilterGraph2* This,IMoniker *pMoniker,IBindCtx *pCtx,LPCWSTR lpcwstrFilterName,IBaseFilter **ppFilter) { 8371 return This->lpVtbl->AddSourceFilterForMoniker(This,pMoniker,pCtx,lpcwstrFilterName,ppFilter); 8372 } 8373 static FORCEINLINE HRESULT IFilterGraph2_ReconnectEx(IFilterGraph2* This,IPin *ppin,const AM_MEDIA_TYPE *pmt) { 8374 return This->lpVtbl->ReconnectEx(This,ppin,pmt); 8375 } 8376 static FORCEINLINE HRESULT IFilterGraph2_RenderEx(IFilterGraph2* This,IPin *pPinOut,DWORD dwFlags,DWORD *pvContext) { 8377 return This->lpVtbl->RenderEx(This,pPinOut,dwFlags,pvContext); 8378 } 8379 #endif 8380 #endif 8381 8382 #endif 8383 8384 HRESULT STDMETHODCALLTYPE IFilterGraph2_AddSourceFilterForMoniker_Proxy( 8385 IFilterGraph2* This, 8386 IMoniker *pMoniker, 8387 IBindCtx *pCtx, 8388 LPCWSTR lpcwstrFilterName, 8389 IBaseFilter **ppFilter); 8390 void __RPC_STUB IFilterGraph2_AddSourceFilterForMoniker_Stub( 8391 IRpcStubBuffer* This, 8392 IRpcChannelBuffer* pRpcChannelBuffer, 8393 PRPC_MESSAGE pRpcMessage, 8394 DWORD* pdwStubPhase); 8395 HRESULT STDMETHODCALLTYPE IFilterGraph2_ReconnectEx_Proxy( 8396 IFilterGraph2* This, 8397 IPin *ppin, 8398 const AM_MEDIA_TYPE *pmt); 8399 void __RPC_STUB IFilterGraph2_ReconnectEx_Stub( 8400 IRpcStubBuffer* This, 8401 IRpcChannelBuffer* pRpcChannelBuffer, 8402 PRPC_MESSAGE pRpcMessage, 8403 DWORD* pdwStubPhase); 8404 HRESULT STDMETHODCALLTYPE IFilterGraph2_RenderEx_Proxy( 8405 IFilterGraph2* This, 8406 IPin *pPinOut, 8407 DWORD dwFlags, 8408 DWORD *pvContext); 8409 void __RPC_STUB IFilterGraph2_RenderEx_Stub( 8410 IRpcStubBuffer* This, 8411 IRpcChannelBuffer* pRpcChannelBuffer, 8412 PRPC_MESSAGE pRpcMessage, 8413 DWORD* pdwStubPhase); 8414 8415 #endif /* __IFilterGraph2_INTERFACE_DEFINED__ */ 8416 8417 /***************************************************************************** 8418 * IStreamBuilder interface 8419 */ 8420 #ifndef __IStreamBuilder_INTERFACE_DEFINED__ 8421 #define __IStreamBuilder_INTERFACE_DEFINED__ 8422 8423 DEFINE_GUID(IID_IStreamBuilder, 0x56a868bf, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 8424 #if defined(__cplusplus) && !defined(CINTERFACE) 8425 MIDL_INTERFACE("56a868bf-0ad4-11ce-b03a-0020af0ba770") 8426 IStreamBuilder : public IUnknown 8427 { 8428 virtual HRESULT STDMETHODCALLTYPE Render( 8429 IPin *ppinOut, 8430 IGraphBuilder *pGraph) = 0; 8431 8432 virtual HRESULT STDMETHODCALLTYPE Backout( 8433 IPin *ppinOut, 8434 IGraphBuilder *pGraph) = 0; 8435 8436 }; 8437 #ifdef __CRT_UUID_DECL 8438 __CRT_UUID_DECL(IStreamBuilder, 0x56a868bf, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 8439 #endif 8440 #else 8441 typedef struct IStreamBuilderVtbl { 8442 BEGIN_INTERFACE 8443 8444 /*** IUnknown methods ***/ 8445 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 8446 IStreamBuilder* This, 8447 REFIID riid, 8448 void **ppvObject); 8449 8450 ULONG (STDMETHODCALLTYPE *AddRef)( 8451 IStreamBuilder* This); 8452 8453 ULONG (STDMETHODCALLTYPE *Release)( 8454 IStreamBuilder* This); 8455 8456 /*** IStreamBuilder methods ***/ 8457 HRESULT (STDMETHODCALLTYPE *Render)( 8458 IStreamBuilder* This, 8459 IPin *ppinOut, 8460 IGraphBuilder *pGraph); 8461 8462 HRESULT (STDMETHODCALLTYPE *Backout)( 8463 IStreamBuilder* This, 8464 IPin *ppinOut, 8465 IGraphBuilder *pGraph); 8466 8467 END_INTERFACE 8468 } IStreamBuilderVtbl; 8469 interface IStreamBuilder { 8470 CONST_VTBL IStreamBuilderVtbl* lpVtbl; 8471 }; 8472 8473 #ifdef COBJMACROS 8474 #ifndef WIDL_C_INLINE_WRAPPERS 8475 /*** IUnknown methods ***/ 8476 #define IStreamBuilder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 8477 #define IStreamBuilder_AddRef(This) (This)->lpVtbl->AddRef(This) 8478 #define IStreamBuilder_Release(This) (This)->lpVtbl->Release(This) 8479 /*** IStreamBuilder methods ***/ 8480 #define IStreamBuilder_Render(This,ppinOut,pGraph) (This)->lpVtbl->Render(This,ppinOut,pGraph) 8481 #define IStreamBuilder_Backout(This,ppinOut,pGraph) (This)->lpVtbl->Backout(This,ppinOut,pGraph) 8482 #else 8483 /*** IUnknown methods ***/ 8484 static FORCEINLINE HRESULT IStreamBuilder_QueryInterface(IStreamBuilder* This,REFIID riid,void **ppvObject) { 8485 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 8486 } 8487 static FORCEINLINE ULONG IStreamBuilder_AddRef(IStreamBuilder* This) { 8488 return This->lpVtbl->AddRef(This); 8489 } 8490 static FORCEINLINE ULONG IStreamBuilder_Release(IStreamBuilder* This) { 8491 return This->lpVtbl->Release(This); 8492 } 8493 /*** IStreamBuilder methods ***/ 8494 static FORCEINLINE HRESULT IStreamBuilder_Render(IStreamBuilder* This,IPin *ppinOut,IGraphBuilder *pGraph) { 8495 return This->lpVtbl->Render(This,ppinOut,pGraph); 8496 } 8497 static FORCEINLINE HRESULT IStreamBuilder_Backout(IStreamBuilder* This,IPin *ppinOut,IGraphBuilder *pGraph) { 8498 return This->lpVtbl->Backout(This,ppinOut,pGraph); 8499 } 8500 #endif 8501 #endif 8502 8503 #endif 8504 8505 HRESULT STDMETHODCALLTYPE IStreamBuilder_Render_Proxy( 8506 IStreamBuilder* This, 8507 IPin *ppinOut, 8508 IGraphBuilder *pGraph); 8509 void __RPC_STUB IStreamBuilder_Render_Stub( 8510 IRpcStubBuffer* This, 8511 IRpcChannelBuffer* pRpcChannelBuffer, 8512 PRPC_MESSAGE pRpcMessage, 8513 DWORD* pdwStubPhase); 8514 HRESULT STDMETHODCALLTYPE IStreamBuilder_Backout_Proxy( 8515 IStreamBuilder* This, 8516 IPin *ppinOut, 8517 IGraphBuilder *pGraph); 8518 void __RPC_STUB IStreamBuilder_Backout_Stub( 8519 IRpcStubBuffer* This, 8520 IRpcChannelBuffer* pRpcChannelBuffer, 8521 PRPC_MESSAGE pRpcMessage, 8522 DWORD* pdwStubPhase); 8523 8524 #endif /* __IStreamBuilder_INTERFACE_DEFINED__ */ 8525 8526 /***************************************************************************** 8527 * IAMStreamConfig interface 8528 */ 8529 #ifndef __IAMStreamConfig_INTERFACE_DEFINED__ 8530 #define __IAMStreamConfig_INTERFACE_DEFINED__ 8531 8532 typedef struct _VIDEO_STREAM_CONFIG_CAPS { 8533 GUID guid; 8534 ULONG VideoStandard; 8535 SIZE InputSize; 8536 SIZE MinCroppingSize; 8537 SIZE MaxCroppingSize; 8538 int CropGranularityX; 8539 int CropGranularityY; 8540 int CropAlignX; 8541 int CropAlignY; 8542 SIZE MinOutputSize; 8543 SIZE MaxOutputSize; 8544 int OutputGranularityX; 8545 int OutputGranularityY; 8546 int StretchTapsX; 8547 int StretchTapsY; 8548 int ShrinkTapsX; 8549 int ShrinkTapsY; 8550 LONGLONG MinFrameInterval; 8551 LONGLONG MaxFrameInterval; 8552 LONG MinBitsPerSecond; 8553 LONG MaxBitsPerSecond; 8554 } VIDEO_STREAM_CONFIG_CAPS; 8555 typedef struct _AUDIO_STREAM_CONFIG_CAPS { 8556 GUID guid; 8557 ULONG MinimumChannels; 8558 ULONG MaximumChannels; 8559 ULONG ChannelsGranularity; 8560 ULONG MinimumBitsPerSample; 8561 ULONG MaximumBitsPerSample; 8562 ULONG BitsPerSampleGranularity; 8563 ULONG MinimumSampleFrequency; 8564 ULONG MaximumSampleFrequency; 8565 ULONG SampleFrequencyGranularity; 8566 } AUDIO_STREAM_CONFIG_CAPS; 8567 DEFINE_GUID(IID_IAMStreamConfig, 0xc6e13340, 0x30ac, 0x11d0, 0xa1,0x8c, 0x00,0xa0,0xc9,0x11,0x89,0x56); 8568 #if defined(__cplusplus) && !defined(CINTERFACE) 8569 MIDL_INTERFACE("c6e13340-30ac-11d0-a18c-00a0c9118956") 8570 IAMStreamConfig : public IUnknown 8571 { 8572 virtual HRESULT STDMETHODCALLTYPE SetFormat( 8573 AM_MEDIA_TYPE *pmt) = 0; 8574 8575 virtual HRESULT STDMETHODCALLTYPE GetFormat( 8576 AM_MEDIA_TYPE **pmt) = 0; 8577 8578 virtual HRESULT STDMETHODCALLTYPE GetNumberOfCapabilities( 8579 int *piCount, 8580 int *piSize) = 0; 8581 8582 virtual HRESULT STDMETHODCALLTYPE GetStreamCaps( 8583 int iIndex, 8584 AM_MEDIA_TYPE **pmt, 8585 BYTE *pSCC) = 0; 8586 8587 }; 8588 #ifdef __CRT_UUID_DECL 8589 __CRT_UUID_DECL(IAMStreamConfig, 0xc6e13340, 0x30ac, 0x11d0, 0xa1,0x8c, 0x00,0xa0,0xc9,0x11,0x89,0x56) 8590 #endif 8591 #else 8592 typedef struct IAMStreamConfigVtbl { 8593 BEGIN_INTERFACE 8594 8595 /*** IUnknown methods ***/ 8596 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 8597 IAMStreamConfig* This, 8598 REFIID riid, 8599 void **ppvObject); 8600 8601 ULONG (STDMETHODCALLTYPE *AddRef)( 8602 IAMStreamConfig* This); 8603 8604 ULONG (STDMETHODCALLTYPE *Release)( 8605 IAMStreamConfig* This); 8606 8607 /*** IAMStreamConfig methods ***/ 8608 HRESULT (STDMETHODCALLTYPE *SetFormat)( 8609 IAMStreamConfig* This, 8610 AM_MEDIA_TYPE *pmt); 8611 8612 HRESULT (STDMETHODCALLTYPE *GetFormat)( 8613 IAMStreamConfig* This, 8614 AM_MEDIA_TYPE **pmt); 8615 8616 HRESULT (STDMETHODCALLTYPE *GetNumberOfCapabilities)( 8617 IAMStreamConfig* This, 8618 int *piCount, 8619 int *piSize); 8620 8621 HRESULT (STDMETHODCALLTYPE *GetStreamCaps)( 8622 IAMStreamConfig* This, 8623 int iIndex, 8624 AM_MEDIA_TYPE **pmt, 8625 BYTE *pSCC); 8626 8627 END_INTERFACE 8628 } IAMStreamConfigVtbl; 8629 interface IAMStreamConfig { 8630 CONST_VTBL IAMStreamConfigVtbl* lpVtbl; 8631 }; 8632 8633 #ifdef COBJMACROS 8634 #ifndef WIDL_C_INLINE_WRAPPERS 8635 /*** IUnknown methods ***/ 8636 #define IAMStreamConfig_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 8637 #define IAMStreamConfig_AddRef(This) (This)->lpVtbl->AddRef(This) 8638 #define IAMStreamConfig_Release(This) (This)->lpVtbl->Release(This) 8639 /*** IAMStreamConfig methods ***/ 8640 #define IAMStreamConfig_SetFormat(This,pmt) (This)->lpVtbl->SetFormat(This,pmt) 8641 #define IAMStreamConfig_GetFormat(This,pmt) (This)->lpVtbl->GetFormat(This,pmt) 8642 #define IAMStreamConfig_GetNumberOfCapabilities(This,piCount,piSize) (This)->lpVtbl->GetNumberOfCapabilities(This,piCount,piSize) 8643 #define IAMStreamConfig_GetStreamCaps(This,iIndex,pmt,pSCC) (This)->lpVtbl->GetStreamCaps(This,iIndex,pmt,pSCC) 8644 #else 8645 /*** IUnknown methods ***/ 8646 static FORCEINLINE HRESULT IAMStreamConfig_QueryInterface(IAMStreamConfig* This,REFIID riid,void **ppvObject) { 8647 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 8648 } 8649 static FORCEINLINE ULONG IAMStreamConfig_AddRef(IAMStreamConfig* This) { 8650 return This->lpVtbl->AddRef(This); 8651 } 8652 static FORCEINLINE ULONG IAMStreamConfig_Release(IAMStreamConfig* This) { 8653 return This->lpVtbl->Release(This); 8654 } 8655 /*** IAMStreamConfig methods ***/ 8656 static FORCEINLINE HRESULT IAMStreamConfig_SetFormat(IAMStreamConfig* This,AM_MEDIA_TYPE *pmt) { 8657 return This->lpVtbl->SetFormat(This,pmt); 8658 } 8659 static FORCEINLINE HRESULT IAMStreamConfig_GetFormat(IAMStreamConfig* This,AM_MEDIA_TYPE **pmt) { 8660 return This->lpVtbl->GetFormat(This,pmt); 8661 } 8662 static FORCEINLINE HRESULT IAMStreamConfig_GetNumberOfCapabilities(IAMStreamConfig* This,int *piCount,int *piSize) { 8663 return This->lpVtbl->GetNumberOfCapabilities(This,piCount,piSize); 8664 } 8665 static FORCEINLINE HRESULT IAMStreamConfig_GetStreamCaps(IAMStreamConfig* This,int iIndex,AM_MEDIA_TYPE **pmt,BYTE *pSCC) { 8666 return This->lpVtbl->GetStreamCaps(This,iIndex,pmt,pSCC); 8667 } 8668 #endif 8669 #endif 8670 8671 #endif 8672 8673 HRESULT STDMETHODCALLTYPE IAMStreamConfig_SetFormat_Proxy( 8674 IAMStreamConfig* This, 8675 AM_MEDIA_TYPE *pmt); 8676 void __RPC_STUB IAMStreamConfig_SetFormat_Stub( 8677 IRpcStubBuffer* This, 8678 IRpcChannelBuffer* pRpcChannelBuffer, 8679 PRPC_MESSAGE pRpcMessage, 8680 DWORD* pdwStubPhase); 8681 HRESULT STDMETHODCALLTYPE IAMStreamConfig_GetFormat_Proxy( 8682 IAMStreamConfig* This, 8683 AM_MEDIA_TYPE **pmt); 8684 void __RPC_STUB IAMStreamConfig_GetFormat_Stub( 8685 IRpcStubBuffer* This, 8686 IRpcChannelBuffer* pRpcChannelBuffer, 8687 PRPC_MESSAGE pRpcMessage, 8688 DWORD* pdwStubPhase); 8689 HRESULT STDMETHODCALLTYPE IAMStreamConfig_GetNumberOfCapabilities_Proxy( 8690 IAMStreamConfig* This, 8691 int *piCount, 8692 int *piSize); 8693 void __RPC_STUB IAMStreamConfig_GetNumberOfCapabilities_Stub( 8694 IRpcStubBuffer* This, 8695 IRpcChannelBuffer* pRpcChannelBuffer, 8696 PRPC_MESSAGE pRpcMessage, 8697 DWORD* pdwStubPhase); 8698 HRESULT STDMETHODCALLTYPE IAMStreamConfig_GetStreamCaps_Proxy( 8699 IAMStreamConfig* This, 8700 int iIndex, 8701 AM_MEDIA_TYPE **pmt, 8702 BYTE *pSCC); 8703 void __RPC_STUB IAMStreamConfig_GetStreamCaps_Stub( 8704 IRpcStubBuffer* This, 8705 IRpcChannelBuffer* pRpcChannelBuffer, 8706 PRPC_MESSAGE pRpcMessage, 8707 DWORD* pdwStubPhase); 8708 8709 #endif /* __IAMStreamConfig_INTERFACE_DEFINED__ */ 8710 8711 typedef enum tagVideoProcAmpProperty { 8712 VideoProcAmp_Brightness = 0, 8713 VideoProcAmp_Contrast = 1, 8714 VideoProcAmp_Hue = 2, 8715 VideoProcAmp_Saturation = 3, 8716 VideoProcAmp_Sharpness = 4, 8717 VideoProcAmp_Gamma = 5, 8718 VideoProcAmp_ColorEnable = 6, 8719 VideoProcAmp_WhiteBalance = 7, 8720 VideoProcAmp_BacklightCompensation = 8, 8721 VideoProcAmp_Gain = 9 8722 } VideoProcAmpProperty; 8723 typedef enum tagVideoProcAmpFlags { 8724 VideoProcAmp_Flags_Auto = 0x1, 8725 VideoProcAmp_Flags_Manual = 0x2 8726 } VideoProcAmpFlags; 8727 /***************************************************************************** 8728 * IAMVideoProcAmp interface 8729 */ 8730 #ifndef __IAMVideoProcAmp_INTERFACE_DEFINED__ 8731 #define __IAMVideoProcAmp_INTERFACE_DEFINED__ 8732 8733 DEFINE_GUID(IID_IAMVideoProcAmp, 0xc6e13360, 0x30ac, 0x11d0, 0xa1,0x8c, 0x00,0xa0,0xc9,0x11,0x89,0x56); 8734 #if defined(__cplusplus) && !defined(CINTERFACE) 8735 MIDL_INTERFACE("c6e13360-30ac-11d0-a18c-00a0c9118956") 8736 IAMVideoProcAmp : public IUnknown 8737 { 8738 virtual HRESULT STDMETHODCALLTYPE GetRange( 8739 LONG Property, 8740 LONG *pMin, 8741 LONG *pMax, 8742 LONG *pSteppingDelta, 8743 LONG *pDefault, 8744 LONG *pCapsFlags) = 0; 8745 8746 virtual HRESULT STDMETHODCALLTYPE Set( 8747 LONG Property, 8748 LONG lValue, 8749 LONG Flags) = 0; 8750 8751 virtual HRESULT STDMETHODCALLTYPE Get( 8752 LONG Property, 8753 LONG *lValue, 8754 LONG *Flags) = 0; 8755 8756 }; 8757 #ifdef __CRT_UUID_DECL 8758 __CRT_UUID_DECL(IAMVideoProcAmp, 0xc6e13360, 0x30ac, 0x11d0, 0xa1,0x8c, 0x00,0xa0,0xc9,0x11,0x89,0x56) 8759 #endif 8760 #else 8761 typedef struct IAMVideoProcAmpVtbl { 8762 BEGIN_INTERFACE 8763 8764 /*** IUnknown methods ***/ 8765 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 8766 IAMVideoProcAmp* This, 8767 REFIID riid, 8768 void **ppvObject); 8769 8770 ULONG (STDMETHODCALLTYPE *AddRef)( 8771 IAMVideoProcAmp* This); 8772 8773 ULONG (STDMETHODCALLTYPE *Release)( 8774 IAMVideoProcAmp* This); 8775 8776 /*** IAMVideoProcAmp methods ***/ 8777 HRESULT (STDMETHODCALLTYPE *GetRange)( 8778 IAMVideoProcAmp* This, 8779 LONG Property, 8780 LONG *pMin, 8781 LONG *pMax, 8782 LONG *pSteppingDelta, 8783 LONG *pDefault, 8784 LONG *pCapsFlags); 8785 8786 HRESULT (STDMETHODCALLTYPE *Set)( 8787 IAMVideoProcAmp* This, 8788 LONG Property, 8789 LONG lValue, 8790 LONG Flags); 8791 8792 HRESULT (STDMETHODCALLTYPE *Get)( 8793 IAMVideoProcAmp* This, 8794 LONG Property, 8795 LONG *lValue, 8796 LONG *Flags); 8797 8798 END_INTERFACE 8799 } IAMVideoProcAmpVtbl; 8800 interface IAMVideoProcAmp { 8801 CONST_VTBL IAMVideoProcAmpVtbl* lpVtbl; 8802 }; 8803 8804 #ifdef COBJMACROS 8805 #ifndef WIDL_C_INLINE_WRAPPERS 8806 /*** IUnknown methods ***/ 8807 #define IAMVideoProcAmp_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 8808 #define IAMVideoProcAmp_AddRef(This) (This)->lpVtbl->AddRef(This) 8809 #define IAMVideoProcAmp_Release(This) (This)->lpVtbl->Release(This) 8810 /*** IAMVideoProcAmp methods ***/ 8811 #define IAMVideoProcAmp_GetRange(This,Property,pMin,pMax,pSteppingDelta,pDefault,pCapsFlags) (This)->lpVtbl->GetRange(This,Property,pMin,pMax,pSteppingDelta,pDefault,pCapsFlags) 8812 #define IAMVideoProcAmp_Set(This,Property,lValue,Flags) (This)->lpVtbl->Set(This,Property,lValue,Flags) 8813 #define IAMVideoProcAmp_Get(This,Property,lValue,Flags) (This)->lpVtbl->Get(This,Property,lValue,Flags) 8814 #else 8815 /*** IUnknown methods ***/ 8816 static FORCEINLINE HRESULT IAMVideoProcAmp_QueryInterface(IAMVideoProcAmp* This,REFIID riid,void **ppvObject) { 8817 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 8818 } 8819 static FORCEINLINE ULONG IAMVideoProcAmp_AddRef(IAMVideoProcAmp* This) { 8820 return This->lpVtbl->AddRef(This); 8821 } 8822 static FORCEINLINE ULONG IAMVideoProcAmp_Release(IAMVideoProcAmp* This) { 8823 return This->lpVtbl->Release(This); 8824 } 8825 /*** IAMVideoProcAmp methods ***/ 8826 static FORCEINLINE HRESULT IAMVideoProcAmp_GetRange(IAMVideoProcAmp* This,LONG Property,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlags) { 8827 return This->lpVtbl->GetRange(This,Property,pMin,pMax,pSteppingDelta,pDefault,pCapsFlags); 8828 } 8829 static FORCEINLINE HRESULT IAMVideoProcAmp_Set(IAMVideoProcAmp* This,LONG Property,LONG lValue,LONG Flags) { 8830 return This->lpVtbl->Set(This,Property,lValue,Flags); 8831 } 8832 static FORCEINLINE HRESULT IAMVideoProcAmp_Get(IAMVideoProcAmp* This,LONG Property,LONG *lValue,LONG *Flags) { 8833 return This->lpVtbl->Get(This,Property,lValue,Flags); 8834 } 8835 #endif 8836 #endif 8837 8838 #endif 8839 8840 HRESULT STDMETHODCALLTYPE IAMVideoProcAmp_GetRange_Proxy( 8841 IAMVideoProcAmp* This, 8842 LONG Property, 8843 LONG *pMin, 8844 LONG *pMax, 8845 LONG *pSteppingDelta, 8846 LONG *pDefault, 8847 LONG *pCapsFlags); 8848 void __RPC_STUB IAMVideoProcAmp_GetRange_Stub( 8849 IRpcStubBuffer* This, 8850 IRpcChannelBuffer* pRpcChannelBuffer, 8851 PRPC_MESSAGE pRpcMessage, 8852 DWORD* pdwStubPhase); 8853 HRESULT STDMETHODCALLTYPE IAMVideoProcAmp_Set_Proxy( 8854 IAMVideoProcAmp* This, 8855 LONG Property, 8856 LONG lValue, 8857 LONG Flags); 8858 void __RPC_STUB IAMVideoProcAmp_Set_Stub( 8859 IRpcStubBuffer* This, 8860 IRpcChannelBuffer* pRpcChannelBuffer, 8861 PRPC_MESSAGE pRpcMessage, 8862 DWORD* pdwStubPhase); 8863 HRESULT STDMETHODCALLTYPE IAMVideoProcAmp_Get_Proxy( 8864 IAMVideoProcAmp* This, 8865 LONG Property, 8866 LONG *lValue, 8867 LONG *Flags); 8868 void __RPC_STUB IAMVideoProcAmp_Get_Stub( 8869 IRpcStubBuffer* This, 8870 IRpcChannelBuffer* pRpcChannelBuffer, 8871 PRPC_MESSAGE pRpcMessage, 8872 DWORD* pdwStubPhase); 8873 8874 #endif /* __IAMVideoProcAmp_INTERFACE_DEFINED__ */ 8875 8876 /***************************************************************************** 8877 * IAsyncReader interface 8878 */ 8879 #ifndef __IAsyncReader_INTERFACE_DEFINED__ 8880 #define __IAsyncReader_INTERFACE_DEFINED__ 8881 8882 DEFINE_GUID(IID_IAsyncReader, 0x56a868aa, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 8883 #if defined(__cplusplus) && !defined(CINTERFACE) 8884 MIDL_INTERFACE("56a868aa-0ad4-11ce-b03a-0020af0ba770") 8885 IAsyncReader : public IUnknown 8886 { 8887 virtual HRESULT STDMETHODCALLTYPE RequestAllocator( 8888 IMemAllocator *pPreferred, 8889 ALLOCATOR_PROPERTIES *pProps, 8890 IMemAllocator **ppActual) = 0; 8891 8892 virtual HRESULT STDMETHODCALLTYPE Request( 8893 IMediaSample *pSample, 8894 DWORD_PTR dwUser) = 0; 8895 8896 virtual HRESULT STDMETHODCALLTYPE WaitForNext( 8897 DWORD dwTimeout, 8898 IMediaSample **ppSample, 8899 DWORD_PTR *pdwUser) = 0; 8900 8901 virtual HRESULT STDMETHODCALLTYPE SyncReadAligned( 8902 IMediaSample *pSample) = 0; 8903 8904 virtual HRESULT STDMETHODCALLTYPE SyncRead( 8905 LONGLONG llPosition, 8906 LONG lLength, 8907 BYTE *pBuffer) = 0; 8908 8909 virtual HRESULT STDMETHODCALLTYPE Length( 8910 LONGLONG *pTotal, 8911 LONGLONG *pAvailable) = 0; 8912 8913 virtual HRESULT STDMETHODCALLTYPE BeginFlush( 8914 ) = 0; 8915 8916 virtual HRESULT STDMETHODCALLTYPE EndFlush( 8917 ) = 0; 8918 8919 }; 8920 #ifdef __CRT_UUID_DECL 8921 __CRT_UUID_DECL(IAsyncReader, 0x56a868aa, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 8922 #endif 8923 #else 8924 typedef struct IAsyncReaderVtbl { 8925 BEGIN_INTERFACE 8926 8927 /*** IUnknown methods ***/ 8928 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 8929 IAsyncReader* This, 8930 REFIID riid, 8931 void **ppvObject); 8932 8933 ULONG (STDMETHODCALLTYPE *AddRef)( 8934 IAsyncReader* This); 8935 8936 ULONG (STDMETHODCALLTYPE *Release)( 8937 IAsyncReader* This); 8938 8939 /*** IAsyncReader methods ***/ 8940 HRESULT (STDMETHODCALLTYPE *RequestAllocator)( 8941 IAsyncReader* This, 8942 IMemAllocator *pPreferred, 8943 ALLOCATOR_PROPERTIES *pProps, 8944 IMemAllocator **ppActual); 8945 8946 HRESULT (STDMETHODCALLTYPE *Request)( 8947 IAsyncReader* This, 8948 IMediaSample *pSample, 8949 DWORD_PTR dwUser); 8950 8951 HRESULT (STDMETHODCALLTYPE *WaitForNext)( 8952 IAsyncReader* This, 8953 DWORD dwTimeout, 8954 IMediaSample **ppSample, 8955 DWORD_PTR *pdwUser); 8956 8957 HRESULT (STDMETHODCALLTYPE *SyncReadAligned)( 8958 IAsyncReader* This, 8959 IMediaSample *pSample); 8960 8961 HRESULT (STDMETHODCALLTYPE *SyncRead)( 8962 IAsyncReader* This, 8963 LONGLONG llPosition, 8964 LONG lLength, 8965 BYTE *pBuffer); 8966 8967 HRESULT (STDMETHODCALLTYPE *Length)( 8968 IAsyncReader* This, 8969 LONGLONG *pTotal, 8970 LONGLONG *pAvailable); 8971 8972 HRESULT (STDMETHODCALLTYPE *BeginFlush)( 8973 IAsyncReader* This); 8974 8975 HRESULT (STDMETHODCALLTYPE *EndFlush)( 8976 IAsyncReader* This); 8977 8978 END_INTERFACE 8979 } IAsyncReaderVtbl; 8980 interface IAsyncReader { 8981 CONST_VTBL IAsyncReaderVtbl* lpVtbl; 8982 }; 8983 8984 #ifdef COBJMACROS 8985 #ifndef WIDL_C_INLINE_WRAPPERS 8986 /*** IUnknown methods ***/ 8987 #define IAsyncReader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 8988 #define IAsyncReader_AddRef(This) (This)->lpVtbl->AddRef(This) 8989 #define IAsyncReader_Release(This) (This)->lpVtbl->Release(This) 8990 /*** IAsyncReader methods ***/ 8991 #define IAsyncReader_RequestAllocator(This,pPreferred,pProps,ppActual) (This)->lpVtbl->RequestAllocator(This,pPreferred,pProps,ppActual) 8992 #define IAsyncReader_Request(This,pSample,dwUser) (This)->lpVtbl->Request(This,pSample,dwUser) 8993 #define IAsyncReader_WaitForNext(This,dwTimeout,ppSample,pdwUser) (This)->lpVtbl->WaitForNext(This,dwTimeout,ppSample,pdwUser) 8994 #define IAsyncReader_SyncReadAligned(This,pSample) (This)->lpVtbl->SyncReadAligned(This,pSample) 8995 #define IAsyncReader_SyncRead(This,llPosition,lLength,pBuffer) (This)->lpVtbl->SyncRead(This,llPosition,lLength,pBuffer) 8996 #define IAsyncReader_Length(This,pTotal,pAvailable) (This)->lpVtbl->Length(This,pTotal,pAvailable) 8997 #define IAsyncReader_BeginFlush(This) (This)->lpVtbl->BeginFlush(This) 8998 #define IAsyncReader_EndFlush(This) (This)->lpVtbl->EndFlush(This) 8999 #else 9000 /*** IUnknown methods ***/ 9001 static FORCEINLINE HRESULT IAsyncReader_QueryInterface(IAsyncReader* This,REFIID riid,void **ppvObject) { 9002 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 9003 } 9004 static FORCEINLINE ULONG IAsyncReader_AddRef(IAsyncReader* This) { 9005 return This->lpVtbl->AddRef(This); 9006 } 9007 static FORCEINLINE ULONG IAsyncReader_Release(IAsyncReader* This) { 9008 return This->lpVtbl->Release(This); 9009 } 9010 /*** IAsyncReader methods ***/ 9011 static FORCEINLINE HRESULT IAsyncReader_RequestAllocator(IAsyncReader* This,IMemAllocator *pPreferred,ALLOCATOR_PROPERTIES *pProps,IMemAllocator **ppActual) { 9012 return This->lpVtbl->RequestAllocator(This,pPreferred,pProps,ppActual); 9013 } 9014 static FORCEINLINE HRESULT IAsyncReader_Request(IAsyncReader* This,IMediaSample *pSample,DWORD_PTR dwUser) { 9015 return This->lpVtbl->Request(This,pSample,dwUser); 9016 } 9017 static FORCEINLINE HRESULT IAsyncReader_WaitForNext(IAsyncReader* This,DWORD dwTimeout,IMediaSample **ppSample,DWORD_PTR *pdwUser) { 9018 return This->lpVtbl->WaitForNext(This,dwTimeout,ppSample,pdwUser); 9019 } 9020 static FORCEINLINE HRESULT IAsyncReader_SyncReadAligned(IAsyncReader* This,IMediaSample *pSample) { 9021 return This->lpVtbl->SyncReadAligned(This,pSample); 9022 } 9023 static FORCEINLINE HRESULT IAsyncReader_SyncRead(IAsyncReader* This,LONGLONG llPosition,LONG lLength,BYTE *pBuffer) { 9024 return This->lpVtbl->SyncRead(This,llPosition,lLength,pBuffer); 9025 } 9026 static FORCEINLINE HRESULT IAsyncReader_Length(IAsyncReader* This,LONGLONG *pTotal,LONGLONG *pAvailable) { 9027 return This->lpVtbl->Length(This,pTotal,pAvailable); 9028 } 9029 static FORCEINLINE HRESULT IAsyncReader_BeginFlush(IAsyncReader* This) { 9030 return This->lpVtbl->BeginFlush(This); 9031 } 9032 static FORCEINLINE HRESULT IAsyncReader_EndFlush(IAsyncReader* This) { 9033 return This->lpVtbl->EndFlush(This); 9034 } 9035 #endif 9036 #endif 9037 9038 #endif 9039 9040 HRESULT STDMETHODCALLTYPE IAsyncReader_RequestAllocator_Proxy( 9041 IAsyncReader* This, 9042 IMemAllocator *pPreferred, 9043 ALLOCATOR_PROPERTIES *pProps, 9044 IMemAllocator **ppActual); 9045 void __RPC_STUB IAsyncReader_RequestAllocator_Stub( 9046 IRpcStubBuffer* This, 9047 IRpcChannelBuffer* pRpcChannelBuffer, 9048 PRPC_MESSAGE pRpcMessage, 9049 DWORD* pdwStubPhase); 9050 HRESULT STDMETHODCALLTYPE IAsyncReader_Request_Proxy( 9051 IAsyncReader* This, 9052 IMediaSample *pSample, 9053 DWORD_PTR dwUser); 9054 void __RPC_STUB IAsyncReader_Request_Stub( 9055 IRpcStubBuffer* This, 9056 IRpcChannelBuffer* pRpcChannelBuffer, 9057 PRPC_MESSAGE pRpcMessage, 9058 DWORD* pdwStubPhase); 9059 HRESULT STDMETHODCALLTYPE IAsyncReader_WaitForNext_Proxy( 9060 IAsyncReader* This, 9061 DWORD dwTimeout, 9062 IMediaSample **ppSample, 9063 DWORD_PTR *pdwUser); 9064 void __RPC_STUB IAsyncReader_WaitForNext_Stub( 9065 IRpcStubBuffer* This, 9066 IRpcChannelBuffer* pRpcChannelBuffer, 9067 PRPC_MESSAGE pRpcMessage, 9068 DWORD* pdwStubPhase); 9069 HRESULT STDMETHODCALLTYPE IAsyncReader_SyncReadAligned_Proxy( 9070 IAsyncReader* This, 9071 IMediaSample *pSample); 9072 void __RPC_STUB IAsyncReader_SyncReadAligned_Stub( 9073 IRpcStubBuffer* This, 9074 IRpcChannelBuffer* pRpcChannelBuffer, 9075 PRPC_MESSAGE pRpcMessage, 9076 DWORD* pdwStubPhase); 9077 HRESULT STDMETHODCALLTYPE IAsyncReader_SyncRead_Proxy( 9078 IAsyncReader* This, 9079 LONGLONG llPosition, 9080 LONG lLength, 9081 BYTE *pBuffer); 9082 void __RPC_STUB IAsyncReader_SyncRead_Stub( 9083 IRpcStubBuffer* This, 9084 IRpcChannelBuffer* pRpcChannelBuffer, 9085 PRPC_MESSAGE pRpcMessage, 9086 DWORD* pdwStubPhase); 9087 HRESULT STDMETHODCALLTYPE IAsyncReader_Length_Proxy( 9088 IAsyncReader* This, 9089 LONGLONG *pTotal, 9090 LONGLONG *pAvailable); 9091 void __RPC_STUB IAsyncReader_Length_Stub( 9092 IRpcStubBuffer* This, 9093 IRpcChannelBuffer* pRpcChannelBuffer, 9094 PRPC_MESSAGE pRpcMessage, 9095 DWORD* pdwStubPhase); 9096 HRESULT STDMETHODCALLTYPE IAsyncReader_BeginFlush_Proxy( 9097 IAsyncReader* This); 9098 void __RPC_STUB IAsyncReader_BeginFlush_Stub( 9099 IRpcStubBuffer* This, 9100 IRpcChannelBuffer* pRpcChannelBuffer, 9101 PRPC_MESSAGE pRpcMessage, 9102 DWORD* pdwStubPhase); 9103 HRESULT STDMETHODCALLTYPE IAsyncReader_EndFlush_Proxy( 9104 IAsyncReader* This); 9105 void __RPC_STUB IAsyncReader_EndFlush_Stub( 9106 IRpcStubBuffer* This, 9107 IRpcChannelBuffer* pRpcChannelBuffer, 9108 PRPC_MESSAGE pRpcMessage, 9109 DWORD* pdwStubPhase); 9110 9111 #endif /* __IAsyncReader_INTERFACE_DEFINED__ */ 9112 9113 /***************************************************************************** 9114 * IGraphVersion interface 9115 */ 9116 #ifndef __IGraphVersion_INTERFACE_DEFINED__ 9117 #define __IGraphVersion_INTERFACE_DEFINED__ 9118 9119 DEFINE_GUID(IID_IGraphVersion, 0x56a868ab, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 9120 #if defined(__cplusplus) && !defined(CINTERFACE) 9121 MIDL_INTERFACE("56a868ab-0ad4-11ce-b03a-0020af0ba770") 9122 IGraphVersion : public IUnknown 9123 { 9124 virtual HRESULT STDMETHODCALLTYPE QueryVersion( 9125 LONG *pVersion) = 0; 9126 9127 }; 9128 #ifdef __CRT_UUID_DECL 9129 __CRT_UUID_DECL(IGraphVersion, 0x56a868ab, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 9130 #endif 9131 #else 9132 typedef struct IGraphVersionVtbl { 9133 BEGIN_INTERFACE 9134 9135 /*** IUnknown methods ***/ 9136 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 9137 IGraphVersion* This, 9138 REFIID riid, 9139 void **ppvObject); 9140 9141 ULONG (STDMETHODCALLTYPE *AddRef)( 9142 IGraphVersion* This); 9143 9144 ULONG (STDMETHODCALLTYPE *Release)( 9145 IGraphVersion* This); 9146 9147 /*** IGraphVersion methods ***/ 9148 HRESULT (STDMETHODCALLTYPE *QueryVersion)( 9149 IGraphVersion* This, 9150 LONG *pVersion); 9151 9152 END_INTERFACE 9153 } IGraphVersionVtbl; 9154 interface IGraphVersion { 9155 CONST_VTBL IGraphVersionVtbl* lpVtbl; 9156 }; 9157 9158 #ifdef COBJMACROS 9159 #ifndef WIDL_C_INLINE_WRAPPERS 9160 /*** IUnknown methods ***/ 9161 #define IGraphVersion_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 9162 #define IGraphVersion_AddRef(This) (This)->lpVtbl->AddRef(This) 9163 #define IGraphVersion_Release(This) (This)->lpVtbl->Release(This) 9164 /*** IGraphVersion methods ***/ 9165 #define IGraphVersion_QueryVersion(This,pVersion) (This)->lpVtbl->QueryVersion(This,pVersion) 9166 #else 9167 /*** IUnknown methods ***/ 9168 static FORCEINLINE HRESULT IGraphVersion_QueryInterface(IGraphVersion* This,REFIID riid,void **ppvObject) { 9169 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 9170 } 9171 static FORCEINLINE ULONG IGraphVersion_AddRef(IGraphVersion* This) { 9172 return This->lpVtbl->AddRef(This); 9173 } 9174 static FORCEINLINE ULONG IGraphVersion_Release(IGraphVersion* This) { 9175 return This->lpVtbl->Release(This); 9176 } 9177 /*** IGraphVersion methods ***/ 9178 static FORCEINLINE HRESULT IGraphVersion_QueryVersion(IGraphVersion* This,LONG *pVersion) { 9179 return This->lpVtbl->QueryVersion(This,pVersion); 9180 } 9181 #endif 9182 #endif 9183 9184 #endif 9185 9186 HRESULT STDMETHODCALLTYPE IGraphVersion_QueryVersion_Proxy( 9187 IGraphVersion* This, 9188 LONG *pVersion); 9189 void __RPC_STUB IGraphVersion_QueryVersion_Stub( 9190 IRpcStubBuffer* This, 9191 IRpcChannelBuffer* pRpcChannelBuffer, 9192 PRPC_MESSAGE pRpcMessage, 9193 DWORD* pdwStubPhase); 9194 9195 #endif /* __IGraphVersion_INTERFACE_DEFINED__ */ 9196 9197 /***************************************************************************** 9198 * IResourceConsumer interface 9199 */ 9200 #ifndef __IResourceConsumer_INTERFACE_DEFINED__ 9201 #define __IResourceConsumer_INTERFACE_DEFINED__ 9202 9203 DEFINE_GUID(IID_IResourceConsumer, 0x56a868ad, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 9204 #if defined(__cplusplus) && !defined(CINTERFACE) 9205 MIDL_INTERFACE("56a868ad-0ad4-11ce-b03a-0020af0ba770") 9206 IResourceConsumer : public IUnknown 9207 { 9208 virtual HRESULT STDMETHODCALLTYPE AcquireResource( 9209 LONG idResource) = 0; 9210 9211 virtual HRESULT STDMETHODCALLTYPE ReleaseResource( 9212 LONG idResource) = 0; 9213 9214 }; 9215 #ifdef __CRT_UUID_DECL 9216 __CRT_UUID_DECL(IResourceConsumer, 0x56a868ad, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 9217 #endif 9218 #else 9219 typedef struct IResourceConsumerVtbl { 9220 BEGIN_INTERFACE 9221 9222 /*** IUnknown methods ***/ 9223 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 9224 IResourceConsumer* This, 9225 REFIID riid, 9226 void **ppvObject); 9227 9228 ULONG (STDMETHODCALLTYPE *AddRef)( 9229 IResourceConsumer* This); 9230 9231 ULONG (STDMETHODCALLTYPE *Release)( 9232 IResourceConsumer* This); 9233 9234 /*** IResourceConsumer methods ***/ 9235 HRESULT (STDMETHODCALLTYPE *AcquireResource)( 9236 IResourceConsumer* This, 9237 LONG idResource); 9238 9239 HRESULT (STDMETHODCALLTYPE *ReleaseResource)( 9240 IResourceConsumer* This, 9241 LONG idResource); 9242 9243 END_INTERFACE 9244 } IResourceConsumerVtbl; 9245 interface IResourceConsumer { 9246 CONST_VTBL IResourceConsumerVtbl* lpVtbl; 9247 }; 9248 9249 #ifdef COBJMACROS 9250 #ifndef WIDL_C_INLINE_WRAPPERS 9251 /*** IUnknown methods ***/ 9252 #define IResourceConsumer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 9253 #define IResourceConsumer_AddRef(This) (This)->lpVtbl->AddRef(This) 9254 #define IResourceConsumer_Release(This) (This)->lpVtbl->Release(This) 9255 /*** IResourceConsumer methods ***/ 9256 #define IResourceConsumer_AcquireResource(This,idResource) (This)->lpVtbl->AcquireResource(This,idResource) 9257 #define IResourceConsumer_ReleaseResource(This,idResource) (This)->lpVtbl->ReleaseResource(This,idResource) 9258 #else 9259 /*** IUnknown methods ***/ 9260 static FORCEINLINE HRESULT IResourceConsumer_QueryInterface(IResourceConsumer* This,REFIID riid,void **ppvObject) { 9261 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 9262 } 9263 static FORCEINLINE ULONG IResourceConsumer_AddRef(IResourceConsumer* This) { 9264 return This->lpVtbl->AddRef(This); 9265 } 9266 static FORCEINLINE ULONG IResourceConsumer_Release(IResourceConsumer* This) { 9267 return This->lpVtbl->Release(This); 9268 } 9269 /*** IResourceConsumer methods ***/ 9270 static FORCEINLINE HRESULT IResourceConsumer_AcquireResource(IResourceConsumer* This,LONG idResource) { 9271 return This->lpVtbl->AcquireResource(This,idResource); 9272 } 9273 static FORCEINLINE HRESULT IResourceConsumer_ReleaseResource(IResourceConsumer* This,LONG idResource) { 9274 return This->lpVtbl->ReleaseResource(This,idResource); 9275 } 9276 #endif 9277 #endif 9278 9279 #endif 9280 9281 HRESULT STDMETHODCALLTYPE IResourceConsumer_AcquireResource_Proxy( 9282 IResourceConsumer* This, 9283 LONG idResource); 9284 void __RPC_STUB IResourceConsumer_AcquireResource_Stub( 9285 IRpcStubBuffer* This, 9286 IRpcChannelBuffer* pRpcChannelBuffer, 9287 PRPC_MESSAGE pRpcMessage, 9288 DWORD* pdwStubPhase); 9289 HRESULT STDMETHODCALLTYPE IResourceConsumer_ReleaseResource_Proxy( 9290 IResourceConsumer* This, 9291 LONG idResource); 9292 void __RPC_STUB IResourceConsumer_ReleaseResource_Stub( 9293 IRpcStubBuffer* This, 9294 IRpcChannelBuffer* pRpcChannelBuffer, 9295 PRPC_MESSAGE pRpcMessage, 9296 DWORD* pdwStubPhase); 9297 9298 #endif /* __IResourceConsumer_INTERFACE_DEFINED__ */ 9299 9300 /***************************************************************************** 9301 * IResourceManager interface 9302 */ 9303 #ifndef __IResourceManager_INTERFACE_DEFINED__ 9304 #define __IResourceManager_INTERFACE_DEFINED__ 9305 9306 DEFINE_GUID(IID_IResourceManager, 0x56a868ac, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70); 9307 #if defined(__cplusplus) && !defined(CINTERFACE) 9308 MIDL_INTERFACE("56a868ac-0ad4-11ce-b03a-0020af0ba770") 9309 IResourceManager : public IUnknown 9310 { 9311 virtual HRESULT STDMETHODCALLTYPE Register( 9312 LPCWSTR pName, 9313 LONG cResource, 9314 LONG *plToken) = 0; 9315 9316 virtual HRESULT STDMETHODCALLTYPE RegisterGroup( 9317 LPCWSTR pName, 9318 LONG cResource, 9319 LONG *palTokens, 9320 LONG *plToken) = 0; 9321 9322 virtual HRESULT STDMETHODCALLTYPE RequestResource( 9323 LONG idResource, 9324 IUnknown *pFocusObject, 9325 IResourceConsumer *pConsumer) = 0; 9326 9327 virtual HRESULT STDMETHODCALLTYPE NotifyAcquire( 9328 LONG idResource, 9329 IResourceConsumer *pConsumer, 9330 HRESULT hr) = 0; 9331 9332 virtual HRESULT STDMETHODCALLTYPE NotifyRelease( 9333 LONG idResource, 9334 IResourceConsumer *pConsumer, 9335 WINBOOL bStillWant) = 0; 9336 9337 virtual HRESULT STDMETHODCALLTYPE CancelRequest( 9338 LONG idResource, 9339 IResourceConsumer *pConsumer) = 0; 9340 9341 virtual HRESULT STDMETHODCALLTYPE SetFocus( 9342 IUnknown *pFocusObject) = 0; 9343 9344 virtual HRESULT STDMETHODCALLTYPE ReleaseFocus( 9345 IUnknown *pFocusObject) = 0; 9346 9347 }; 9348 #ifdef __CRT_UUID_DECL 9349 __CRT_UUID_DECL(IResourceManager, 0x56a868ac, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70) 9350 #endif 9351 #else 9352 typedef struct IResourceManagerVtbl { 9353 BEGIN_INTERFACE 9354 9355 /*** IUnknown methods ***/ 9356 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 9357 IResourceManager* This, 9358 REFIID riid, 9359 void **ppvObject); 9360 9361 ULONG (STDMETHODCALLTYPE *AddRef)( 9362 IResourceManager* This); 9363 9364 ULONG (STDMETHODCALLTYPE *Release)( 9365 IResourceManager* This); 9366 9367 /*** IResourceManager methods ***/ 9368 HRESULT (STDMETHODCALLTYPE *Register)( 9369 IResourceManager* This, 9370 LPCWSTR pName, 9371 LONG cResource, 9372 LONG *plToken); 9373 9374 HRESULT (STDMETHODCALLTYPE *RegisterGroup)( 9375 IResourceManager* This, 9376 LPCWSTR pName, 9377 LONG cResource, 9378 LONG *palTokens, 9379 LONG *plToken); 9380 9381 HRESULT (STDMETHODCALLTYPE *RequestResource)( 9382 IResourceManager* This, 9383 LONG idResource, 9384 IUnknown *pFocusObject, 9385 IResourceConsumer *pConsumer); 9386 9387 HRESULT (STDMETHODCALLTYPE *NotifyAcquire)( 9388 IResourceManager* This, 9389 LONG idResource, 9390 IResourceConsumer *pConsumer, 9391 HRESULT hr); 9392 9393 HRESULT (STDMETHODCALLTYPE *NotifyRelease)( 9394 IResourceManager* This, 9395 LONG idResource, 9396 IResourceConsumer *pConsumer, 9397 WINBOOL bStillWant); 9398 9399 HRESULT (STDMETHODCALLTYPE *CancelRequest)( 9400 IResourceManager* This, 9401 LONG idResource, 9402 IResourceConsumer *pConsumer); 9403 9404 HRESULT (STDMETHODCALLTYPE *SetFocus)( 9405 IResourceManager* This, 9406 IUnknown *pFocusObject); 9407 9408 HRESULT (STDMETHODCALLTYPE *ReleaseFocus)( 9409 IResourceManager* This, 9410 IUnknown *pFocusObject); 9411 9412 END_INTERFACE 9413 } IResourceManagerVtbl; 9414 interface IResourceManager { 9415 CONST_VTBL IResourceManagerVtbl* lpVtbl; 9416 }; 9417 9418 #ifdef COBJMACROS 9419 #ifndef WIDL_C_INLINE_WRAPPERS 9420 /*** IUnknown methods ***/ 9421 #define IResourceManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 9422 #define IResourceManager_AddRef(This) (This)->lpVtbl->AddRef(This) 9423 #define IResourceManager_Release(This) (This)->lpVtbl->Release(This) 9424 /*** IResourceManager methods ***/ 9425 #define IResourceManager_Register(This,pName,cResource,plToken) (This)->lpVtbl->Register(This,pName,cResource,plToken) 9426 #define IResourceManager_RegisterGroup(This,pName,cResource,palTokens,plToken) (This)->lpVtbl->RegisterGroup(This,pName,cResource,palTokens,plToken) 9427 #define IResourceManager_RequestResource(This,idResource,pFocusObject,pConsumer) (This)->lpVtbl->RequestResource(This,idResource,pFocusObject,pConsumer) 9428 #define IResourceManager_NotifyAcquire(This,idResource,pConsumer,hr) (This)->lpVtbl->NotifyAcquire(This,idResource,pConsumer,hr) 9429 #define IResourceManager_NotifyRelease(This,idResource,pConsumer,bStillWant) (This)->lpVtbl->NotifyRelease(This,idResource,pConsumer,bStillWant) 9430 #define IResourceManager_CancelRequest(This,idResource,pConsumer) (This)->lpVtbl->CancelRequest(This,idResource,pConsumer) 9431 #define IResourceManager_SetFocus(This,pFocusObject) (This)->lpVtbl->SetFocus(This,pFocusObject) 9432 #define IResourceManager_ReleaseFocus(This,pFocusObject) (This)->lpVtbl->ReleaseFocus(This,pFocusObject) 9433 #else 9434 /*** IUnknown methods ***/ 9435 static FORCEINLINE HRESULT IResourceManager_QueryInterface(IResourceManager* This,REFIID riid,void **ppvObject) { 9436 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 9437 } 9438 static FORCEINLINE ULONG IResourceManager_AddRef(IResourceManager* This) { 9439 return This->lpVtbl->AddRef(This); 9440 } 9441 static FORCEINLINE ULONG IResourceManager_Release(IResourceManager* This) { 9442 return This->lpVtbl->Release(This); 9443 } 9444 /*** IResourceManager methods ***/ 9445 static FORCEINLINE HRESULT IResourceManager_Register(IResourceManager* This,LPCWSTR pName,LONG cResource,LONG *plToken) { 9446 return This->lpVtbl->Register(This,pName,cResource,plToken); 9447 } 9448 static FORCEINLINE HRESULT IResourceManager_RegisterGroup(IResourceManager* This,LPCWSTR pName,LONG cResource,LONG *palTokens,LONG *plToken) { 9449 return This->lpVtbl->RegisterGroup(This,pName,cResource,palTokens,plToken); 9450 } 9451 static FORCEINLINE HRESULT IResourceManager_RequestResource(IResourceManager* This,LONG idResource,IUnknown *pFocusObject,IResourceConsumer *pConsumer) { 9452 return This->lpVtbl->RequestResource(This,idResource,pFocusObject,pConsumer); 9453 } 9454 static FORCEINLINE HRESULT IResourceManager_NotifyAcquire(IResourceManager* This,LONG idResource,IResourceConsumer *pConsumer,HRESULT hr) { 9455 return This->lpVtbl->NotifyAcquire(This,idResource,pConsumer,hr); 9456 } 9457 static FORCEINLINE HRESULT IResourceManager_NotifyRelease(IResourceManager* This,LONG idResource,IResourceConsumer *pConsumer,WINBOOL bStillWant) { 9458 return This->lpVtbl->NotifyRelease(This,idResource,pConsumer,bStillWant); 9459 } 9460 static FORCEINLINE HRESULT IResourceManager_CancelRequest(IResourceManager* This,LONG idResource,IResourceConsumer *pConsumer) { 9461 return This->lpVtbl->CancelRequest(This,idResource,pConsumer); 9462 } 9463 static FORCEINLINE HRESULT IResourceManager_SetFocus(IResourceManager* This,IUnknown *pFocusObject) { 9464 return This->lpVtbl->SetFocus(This,pFocusObject); 9465 } 9466 static FORCEINLINE HRESULT IResourceManager_ReleaseFocus(IResourceManager* This,IUnknown *pFocusObject) { 9467 return This->lpVtbl->ReleaseFocus(This,pFocusObject); 9468 } 9469 #endif 9470 #endif 9471 9472 #endif 9473 9474 HRESULT STDMETHODCALLTYPE IResourceManager_Register_Proxy( 9475 IResourceManager* This, 9476 LPCWSTR pName, 9477 LONG cResource, 9478 LONG *plToken); 9479 void __RPC_STUB IResourceManager_Register_Stub( 9480 IRpcStubBuffer* This, 9481 IRpcChannelBuffer* pRpcChannelBuffer, 9482 PRPC_MESSAGE pRpcMessage, 9483 DWORD* pdwStubPhase); 9484 HRESULT STDMETHODCALLTYPE IResourceManager_RegisterGroup_Proxy( 9485 IResourceManager* This, 9486 LPCWSTR pName, 9487 LONG cResource, 9488 LONG *palTokens, 9489 LONG *plToken); 9490 void __RPC_STUB IResourceManager_RegisterGroup_Stub( 9491 IRpcStubBuffer* This, 9492 IRpcChannelBuffer* pRpcChannelBuffer, 9493 PRPC_MESSAGE pRpcMessage, 9494 DWORD* pdwStubPhase); 9495 HRESULT STDMETHODCALLTYPE IResourceManager_RequestResource_Proxy( 9496 IResourceManager* This, 9497 LONG idResource, 9498 IUnknown *pFocusObject, 9499 IResourceConsumer *pConsumer); 9500 void __RPC_STUB IResourceManager_RequestResource_Stub( 9501 IRpcStubBuffer* This, 9502 IRpcChannelBuffer* pRpcChannelBuffer, 9503 PRPC_MESSAGE pRpcMessage, 9504 DWORD* pdwStubPhase); 9505 HRESULT STDMETHODCALLTYPE IResourceManager_NotifyAcquire_Proxy( 9506 IResourceManager* This, 9507 LONG idResource, 9508 IResourceConsumer *pConsumer, 9509 HRESULT hr); 9510 void __RPC_STUB IResourceManager_NotifyAcquire_Stub( 9511 IRpcStubBuffer* This, 9512 IRpcChannelBuffer* pRpcChannelBuffer, 9513 PRPC_MESSAGE pRpcMessage, 9514 DWORD* pdwStubPhase); 9515 HRESULT STDMETHODCALLTYPE IResourceManager_NotifyRelease_Proxy( 9516 IResourceManager* This, 9517 LONG idResource, 9518 IResourceConsumer *pConsumer, 9519 WINBOOL bStillWant); 9520 void __RPC_STUB IResourceManager_NotifyRelease_Stub( 9521 IRpcStubBuffer* This, 9522 IRpcChannelBuffer* pRpcChannelBuffer, 9523 PRPC_MESSAGE pRpcMessage, 9524 DWORD* pdwStubPhase); 9525 HRESULT STDMETHODCALLTYPE IResourceManager_CancelRequest_Proxy( 9526 IResourceManager* This, 9527 LONG idResource, 9528 IResourceConsumer *pConsumer); 9529 void __RPC_STUB IResourceManager_CancelRequest_Stub( 9530 IRpcStubBuffer* This, 9531 IRpcChannelBuffer* pRpcChannelBuffer, 9532 PRPC_MESSAGE pRpcMessage, 9533 DWORD* pdwStubPhase); 9534 HRESULT STDMETHODCALLTYPE IResourceManager_SetFocus_Proxy( 9535 IResourceManager* This, 9536 IUnknown *pFocusObject); 9537 void __RPC_STUB IResourceManager_SetFocus_Stub( 9538 IRpcStubBuffer* This, 9539 IRpcChannelBuffer* pRpcChannelBuffer, 9540 PRPC_MESSAGE pRpcMessage, 9541 DWORD* pdwStubPhase); 9542 HRESULT STDMETHODCALLTYPE IResourceManager_ReleaseFocus_Proxy( 9543 IResourceManager* This, 9544 IUnknown *pFocusObject); 9545 void __RPC_STUB IResourceManager_ReleaseFocus_Stub( 9546 IRpcStubBuffer* This, 9547 IRpcChannelBuffer* pRpcChannelBuffer, 9548 PRPC_MESSAGE pRpcMessage, 9549 DWORD* pdwStubPhase); 9550 9551 #endif /* __IResourceManager_INTERFACE_DEFINED__ */ 9552 9553 typedef enum AM_STREAM_INFO_FLAGS { 9554 AM_STREAM_INFO_START_DEFINED = 0x1, 9555 AM_STREAM_INFO_STOP_DEFINED = 0x2, 9556 AM_STREAM_INFO_DISCARDING = 0x4, 9557 AM_STREAM_INFO_STOP_SEND_EXTRA = 0x10 9558 } AM_STREAM_INFO_FLAGS; 9559 typedef struct AM_STREAM_INFO { 9560 REFERENCE_TIME tStart; 9561 REFERENCE_TIME tStop; 9562 DWORD dwStartCookie; 9563 DWORD dwStopCookie; 9564 DWORD dwFlags; 9565 } AM_STREAM_INFO; 9566 /***************************************************************************** 9567 * IAMStreamControl interface 9568 */ 9569 #ifndef __IAMStreamControl_INTERFACE_DEFINED__ 9570 #define __IAMStreamControl_INTERFACE_DEFINED__ 9571 9572 DEFINE_GUID(IID_IAMStreamControl, 0x36b73881, 0xc2c8, 0x11cf, 0x8b,0x46, 0x00,0x80,0x5f,0x6c,0xef,0x60); 9573 #if defined(__cplusplus) && !defined(CINTERFACE) 9574 MIDL_INTERFACE("36b73881-c2c8-11cf-8b46-00805f6cef60") 9575 IAMStreamControl : public IUnknown 9576 { 9577 virtual HRESULT STDMETHODCALLTYPE StartAt( 9578 const REFERENCE_TIME *ptStart, 9579 DWORD dwCookie) = 0; 9580 9581 virtual HRESULT STDMETHODCALLTYPE StopAt( 9582 const REFERENCE_TIME *ptStop, 9583 WINBOOL bSendExtra, 9584 DWORD dwCookie) = 0; 9585 9586 virtual HRESULT STDMETHODCALLTYPE GetInfo( 9587 AM_STREAM_INFO *pInfo) = 0; 9588 9589 }; 9590 #ifdef __CRT_UUID_DECL 9591 __CRT_UUID_DECL(IAMStreamControl, 0x36b73881, 0xc2c8, 0x11cf, 0x8b,0x46, 0x00,0x80,0x5f,0x6c,0xef,0x60) 9592 #endif 9593 #else 9594 typedef struct IAMStreamControlVtbl { 9595 BEGIN_INTERFACE 9596 9597 /*** IUnknown methods ***/ 9598 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 9599 IAMStreamControl* This, 9600 REFIID riid, 9601 void **ppvObject); 9602 9603 ULONG (STDMETHODCALLTYPE *AddRef)( 9604 IAMStreamControl* This); 9605 9606 ULONG (STDMETHODCALLTYPE *Release)( 9607 IAMStreamControl* This); 9608 9609 /*** IAMStreamControl methods ***/ 9610 HRESULT (STDMETHODCALLTYPE *StartAt)( 9611 IAMStreamControl* This, 9612 const REFERENCE_TIME *ptStart, 9613 DWORD dwCookie); 9614 9615 HRESULT (STDMETHODCALLTYPE *StopAt)( 9616 IAMStreamControl* This, 9617 const REFERENCE_TIME *ptStop, 9618 WINBOOL bSendExtra, 9619 DWORD dwCookie); 9620 9621 HRESULT (STDMETHODCALLTYPE *GetInfo)( 9622 IAMStreamControl* This, 9623 AM_STREAM_INFO *pInfo); 9624 9625 END_INTERFACE 9626 } IAMStreamControlVtbl; 9627 interface IAMStreamControl { 9628 CONST_VTBL IAMStreamControlVtbl* lpVtbl; 9629 }; 9630 9631 #ifdef COBJMACROS 9632 #ifndef WIDL_C_INLINE_WRAPPERS 9633 /*** IUnknown methods ***/ 9634 #define IAMStreamControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 9635 #define IAMStreamControl_AddRef(This) (This)->lpVtbl->AddRef(This) 9636 #define IAMStreamControl_Release(This) (This)->lpVtbl->Release(This) 9637 /*** IAMStreamControl methods ***/ 9638 #define IAMStreamControl_StartAt(This,ptStart,dwCookie) (This)->lpVtbl->StartAt(This,ptStart,dwCookie) 9639 #define IAMStreamControl_StopAt(This,ptStop,bSendExtra,dwCookie) (This)->lpVtbl->StopAt(This,ptStop,bSendExtra,dwCookie) 9640 #define IAMStreamControl_GetInfo(This,pInfo) (This)->lpVtbl->GetInfo(This,pInfo) 9641 #else 9642 /*** IUnknown methods ***/ 9643 static FORCEINLINE HRESULT IAMStreamControl_QueryInterface(IAMStreamControl* This,REFIID riid,void **ppvObject) { 9644 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 9645 } 9646 static FORCEINLINE ULONG IAMStreamControl_AddRef(IAMStreamControl* This) { 9647 return This->lpVtbl->AddRef(This); 9648 } 9649 static FORCEINLINE ULONG IAMStreamControl_Release(IAMStreamControl* This) { 9650 return This->lpVtbl->Release(This); 9651 } 9652 /*** IAMStreamControl methods ***/ 9653 static FORCEINLINE HRESULT IAMStreamControl_StartAt(IAMStreamControl* This,const REFERENCE_TIME *ptStart,DWORD dwCookie) { 9654 return This->lpVtbl->StartAt(This,ptStart,dwCookie); 9655 } 9656 static FORCEINLINE HRESULT IAMStreamControl_StopAt(IAMStreamControl* This,const REFERENCE_TIME *ptStop,WINBOOL bSendExtra,DWORD dwCookie) { 9657 return This->lpVtbl->StopAt(This,ptStop,bSendExtra,dwCookie); 9658 } 9659 static FORCEINLINE HRESULT IAMStreamControl_GetInfo(IAMStreamControl* This,AM_STREAM_INFO *pInfo) { 9660 return This->lpVtbl->GetInfo(This,pInfo); 9661 } 9662 #endif 9663 #endif 9664 9665 #endif 9666 9667 HRESULT STDMETHODCALLTYPE IAMStreamControl_StartAt_Proxy( 9668 IAMStreamControl* This, 9669 const REFERENCE_TIME *ptStart, 9670 DWORD dwCookie); 9671 void __RPC_STUB IAMStreamControl_StartAt_Stub( 9672 IRpcStubBuffer* This, 9673 IRpcChannelBuffer* pRpcChannelBuffer, 9674 PRPC_MESSAGE pRpcMessage, 9675 DWORD* pdwStubPhase); 9676 HRESULT STDMETHODCALLTYPE IAMStreamControl_StopAt_Proxy( 9677 IAMStreamControl* This, 9678 const REFERENCE_TIME *ptStop, 9679 WINBOOL bSendExtra, 9680 DWORD dwCookie); 9681 void __RPC_STUB IAMStreamControl_StopAt_Stub( 9682 IRpcStubBuffer* This, 9683 IRpcChannelBuffer* pRpcChannelBuffer, 9684 PRPC_MESSAGE pRpcMessage, 9685 DWORD* pdwStubPhase); 9686 HRESULT STDMETHODCALLTYPE IAMStreamControl_GetInfo_Proxy( 9687 IAMStreamControl* This, 9688 AM_STREAM_INFO *pInfo); 9689 void __RPC_STUB IAMStreamControl_GetInfo_Stub( 9690 IRpcStubBuffer* This, 9691 IRpcChannelBuffer* pRpcChannelBuffer, 9692 PRPC_MESSAGE pRpcMessage, 9693 DWORD* pdwStubPhase); 9694 9695 #endif /* __IAMStreamControl_INTERFACE_DEFINED__ */ 9696 9697 #ifndef _IKsPropertySet_ 9698 #define _IKsPropertySet_ 9699 #define KSPROPERTY_SUPPORT_GET 1 9700 #define KSPROPERTY_SUPPORT_SET 2 9701 /***************************************************************************** 9702 * IKsPropertySet interface 9703 */ 9704 #ifndef __IKsPropertySet_INTERFACE_DEFINED__ 9705 #define __IKsPropertySet_INTERFACE_DEFINED__ 9706 9707 DEFINE_GUID(IID_IKsPropertySet, 0x31efac30, 0x515c, 0x11d0, 0xa9,0xaa, 0x00,0xaa,0x00,0x61,0xbe,0x93); 9708 #if defined(__cplusplus) && !defined(CINTERFACE) 9709 MIDL_INTERFACE("31efac30-515c-11d0-a9aa-00aa0061be93") 9710 IKsPropertySet : public IUnknown 9711 { 9712 virtual HRESULT STDMETHODCALLTYPE Set( 9713 REFGUID guidPropSet, 9714 DWORD dwPropID, 9715 LPVOID pInstanceData, 9716 DWORD cbInstanceData, 9717 LPVOID pPropData, 9718 DWORD cbPropData) = 0; 9719 9720 virtual HRESULT STDMETHODCALLTYPE Get( 9721 REFGUID guidPropSet, 9722 DWORD dwPropID, 9723 LPVOID pInstanceData, 9724 DWORD cbInstanceData, 9725 LPVOID pPropData, 9726 DWORD cbPropData, 9727 DWORD *pcbReturned) = 0; 9728 9729 virtual HRESULT STDMETHODCALLTYPE QuerySupported( 9730 REFGUID guidPropSet, 9731 DWORD dwPropID, 9732 DWORD *pTypeSupport) = 0; 9733 9734 }; 9735 #ifdef __CRT_UUID_DECL 9736 __CRT_UUID_DECL(IKsPropertySet, 0x31efac30, 0x515c, 0x11d0, 0xa9,0xaa, 0x00,0xaa,0x00,0x61,0xbe,0x93) 9737 #endif 9738 #else 9739 typedef struct IKsPropertySetVtbl { 9740 BEGIN_INTERFACE 9741 9742 /*** IUnknown methods ***/ 9743 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 9744 IKsPropertySet* This, 9745 REFIID riid, 9746 void **ppvObject); 9747 9748 ULONG (STDMETHODCALLTYPE *AddRef)( 9749 IKsPropertySet* This); 9750 9751 ULONG (STDMETHODCALLTYPE *Release)( 9752 IKsPropertySet* This); 9753 9754 /*** IKsPropertySet methods ***/ 9755 HRESULT (STDMETHODCALLTYPE *Set)( 9756 IKsPropertySet* This, 9757 REFGUID guidPropSet, 9758 DWORD dwPropID, 9759 LPVOID pInstanceData, 9760 DWORD cbInstanceData, 9761 LPVOID pPropData, 9762 DWORD cbPropData); 9763 9764 HRESULT (STDMETHODCALLTYPE *Get)( 9765 IKsPropertySet* This, 9766 REFGUID guidPropSet, 9767 DWORD dwPropID, 9768 LPVOID pInstanceData, 9769 DWORD cbInstanceData, 9770 LPVOID pPropData, 9771 DWORD cbPropData, 9772 DWORD *pcbReturned); 9773 9774 HRESULT (STDMETHODCALLTYPE *QuerySupported)( 9775 IKsPropertySet* This, 9776 REFGUID guidPropSet, 9777 DWORD dwPropID, 9778 DWORD *pTypeSupport); 9779 9780 END_INTERFACE 9781 } IKsPropertySetVtbl; 9782 interface IKsPropertySet { 9783 CONST_VTBL IKsPropertySetVtbl* lpVtbl; 9784 }; 9785 9786 #ifdef COBJMACROS 9787 #ifndef WIDL_C_INLINE_WRAPPERS 9788 /*** IUnknown methods ***/ 9789 #define IKsPropertySet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 9790 #define IKsPropertySet_AddRef(This) (This)->lpVtbl->AddRef(This) 9791 #define IKsPropertySet_Release(This) (This)->lpVtbl->Release(This) 9792 /*** IKsPropertySet methods ***/ 9793 #define IKsPropertySet_Set(This,guidPropSet,dwPropID,pInstanceData,cbInstanceData,pPropData,cbPropData) (This)->lpVtbl->Set(This,guidPropSet,dwPropID,pInstanceData,cbInstanceData,pPropData,cbPropData) 9794 #define IKsPropertySet_Get(This,guidPropSet,dwPropID,pInstanceData,cbInstanceData,pPropData,cbPropData,pcbReturned) (This)->lpVtbl->Get(This,guidPropSet,dwPropID,pInstanceData,cbInstanceData,pPropData,cbPropData,pcbReturned) 9795 #define IKsPropertySet_QuerySupported(This,guidPropSet,dwPropID,pTypeSupport) (This)->lpVtbl->QuerySupported(This,guidPropSet,dwPropID,pTypeSupport) 9796 #else 9797 /*** IUnknown methods ***/ 9798 static FORCEINLINE HRESULT IKsPropertySet_QueryInterface(IKsPropertySet* This,REFIID riid,void **ppvObject) { 9799 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 9800 } 9801 static FORCEINLINE ULONG IKsPropertySet_AddRef(IKsPropertySet* This) { 9802 return This->lpVtbl->AddRef(This); 9803 } 9804 static FORCEINLINE ULONG IKsPropertySet_Release(IKsPropertySet* This) { 9805 return This->lpVtbl->Release(This); 9806 } 9807 /*** IKsPropertySet methods ***/ 9808 static FORCEINLINE HRESULT IKsPropertySet_Set(IKsPropertySet* This,REFGUID guidPropSet,DWORD dwPropID,LPVOID pInstanceData,DWORD cbInstanceData,LPVOID pPropData,DWORD cbPropData) { 9809 return This->lpVtbl->Set(This,guidPropSet,dwPropID,pInstanceData,cbInstanceData,pPropData,cbPropData); 9810 } 9811 static FORCEINLINE HRESULT IKsPropertySet_Get(IKsPropertySet* This,REFGUID guidPropSet,DWORD dwPropID,LPVOID pInstanceData,DWORD cbInstanceData,LPVOID pPropData,DWORD cbPropData,DWORD *pcbReturned) { 9812 return This->lpVtbl->Get(This,guidPropSet,dwPropID,pInstanceData,cbInstanceData,pPropData,cbPropData,pcbReturned); 9813 } 9814 static FORCEINLINE HRESULT IKsPropertySet_QuerySupported(IKsPropertySet* This,REFGUID guidPropSet,DWORD dwPropID,DWORD *pTypeSupport) { 9815 return This->lpVtbl->QuerySupported(This,guidPropSet,dwPropID,pTypeSupport); 9816 } 9817 #endif 9818 #endif 9819 9820 #endif 9821 9822 HRESULT STDMETHODCALLTYPE IKsPropertySet_Set_Proxy( 9823 IKsPropertySet* This, 9824 REFGUID guidPropSet, 9825 DWORD dwPropID, 9826 LPVOID pInstanceData, 9827 DWORD cbInstanceData, 9828 LPVOID pPropData, 9829 DWORD cbPropData); 9830 void __RPC_STUB IKsPropertySet_Set_Stub( 9831 IRpcStubBuffer* This, 9832 IRpcChannelBuffer* pRpcChannelBuffer, 9833 PRPC_MESSAGE pRpcMessage, 9834 DWORD* pdwStubPhase); 9835 HRESULT STDMETHODCALLTYPE IKsPropertySet_Get_Proxy( 9836 IKsPropertySet* This, 9837 REFGUID guidPropSet, 9838 DWORD dwPropID, 9839 LPVOID pInstanceData, 9840 DWORD cbInstanceData, 9841 LPVOID pPropData, 9842 DWORD cbPropData, 9843 DWORD *pcbReturned); 9844 void __RPC_STUB IKsPropertySet_Get_Stub( 9845 IRpcStubBuffer* This, 9846 IRpcChannelBuffer* pRpcChannelBuffer, 9847 PRPC_MESSAGE pRpcMessage, 9848 DWORD* pdwStubPhase); 9849 HRESULT STDMETHODCALLTYPE IKsPropertySet_QuerySupported_Proxy( 9850 IKsPropertySet* This, 9851 REFGUID guidPropSet, 9852 DWORD dwPropID, 9853 DWORD *pTypeSupport); 9854 void __RPC_STUB IKsPropertySet_QuerySupported_Stub( 9855 IRpcStubBuffer* This, 9856 IRpcChannelBuffer* pRpcChannelBuffer, 9857 PRPC_MESSAGE pRpcMessage, 9858 DWORD* pdwStubPhase); 9859 9860 #endif /* __IKsPropertySet_INTERFACE_DEFINED__ */ 9861 9862 #endif /* _IKsPropertySet_ */ 9863 /***************************************************************************** 9864 * IMediaPropertyBag interface 9865 */ 9866 #ifndef __IMediaPropertyBag_INTERFACE_DEFINED__ 9867 #define __IMediaPropertyBag_INTERFACE_DEFINED__ 9868 9869 typedef IMediaPropertyBag *LPMEDIAPROPERTYBAG; 9870 DEFINE_GUID(IID_IMediaPropertyBag, 0x6025a880, 0xc0d5, 0x11d0, 0xbd,0x4e, 0x00,0xa0,0xc9,0x11,0xce,0x86); 9871 #if defined(__cplusplus) && !defined(CINTERFACE) 9872 MIDL_INTERFACE("6025a880-c0d5-11d0-bd4e-00a0c911ce86") 9873 IMediaPropertyBag : public IPropertyBag 9874 { 9875 virtual HRESULT STDMETHODCALLTYPE EnumProperty( 9876 ULONG iProperty, 9877 VARIANT *pvarPropertyName, 9878 VARIANT *pvarPropertyValue) = 0; 9879 9880 }; 9881 #ifdef __CRT_UUID_DECL 9882 __CRT_UUID_DECL(IMediaPropertyBag, 0x6025a880, 0xc0d5, 0x11d0, 0xbd,0x4e, 0x00,0xa0,0xc9,0x11,0xce,0x86) 9883 #endif 9884 #else 9885 typedef struct IMediaPropertyBagVtbl { 9886 BEGIN_INTERFACE 9887 9888 /*** IUnknown methods ***/ 9889 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 9890 IMediaPropertyBag* This, 9891 REFIID riid, 9892 void **ppvObject); 9893 9894 ULONG (STDMETHODCALLTYPE *AddRef)( 9895 IMediaPropertyBag* This); 9896 9897 ULONG (STDMETHODCALLTYPE *Release)( 9898 IMediaPropertyBag* This); 9899 9900 /*** IPropertyBag methods ***/ 9901 HRESULT (STDMETHODCALLTYPE *Read)( 9902 IMediaPropertyBag* This, 9903 LPCOLESTR pszPropName, 9904 VARIANT *pVar, 9905 IErrorLog *pErrorLog); 9906 9907 HRESULT (STDMETHODCALLTYPE *Write)( 9908 IMediaPropertyBag* This, 9909 LPCOLESTR pszPropName, 9910 VARIANT *pVar); 9911 9912 /*** IMediaPropertyBag methods ***/ 9913 HRESULT (STDMETHODCALLTYPE *EnumProperty)( 9914 IMediaPropertyBag* This, 9915 ULONG iProperty, 9916 VARIANT *pvarPropertyName, 9917 VARIANT *pvarPropertyValue); 9918 9919 END_INTERFACE 9920 } IMediaPropertyBagVtbl; 9921 interface IMediaPropertyBag { 9922 CONST_VTBL IMediaPropertyBagVtbl* lpVtbl; 9923 }; 9924 9925 #ifdef COBJMACROS 9926 #ifndef WIDL_C_INLINE_WRAPPERS 9927 /*** IUnknown methods ***/ 9928 #define IMediaPropertyBag_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 9929 #define IMediaPropertyBag_AddRef(This) (This)->lpVtbl->AddRef(This) 9930 #define IMediaPropertyBag_Release(This) (This)->lpVtbl->Release(This) 9931 /*** IPropertyBag methods ***/ 9932 #define IMediaPropertyBag_Read(This,pszPropName,pVar,pErrorLog) (This)->lpVtbl->Read(This,pszPropName,pVar,pErrorLog) 9933 #define IMediaPropertyBag_Write(This,pszPropName,pVar) (This)->lpVtbl->Write(This,pszPropName,pVar) 9934 /*** IMediaPropertyBag methods ***/ 9935 #define IMediaPropertyBag_EnumProperty(This,iProperty,pvarPropertyName,pvarPropertyValue) (This)->lpVtbl->EnumProperty(This,iProperty,pvarPropertyName,pvarPropertyValue) 9936 #else 9937 /*** IUnknown methods ***/ 9938 static FORCEINLINE HRESULT IMediaPropertyBag_QueryInterface(IMediaPropertyBag* This,REFIID riid,void **ppvObject) { 9939 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 9940 } 9941 static FORCEINLINE ULONG IMediaPropertyBag_AddRef(IMediaPropertyBag* This) { 9942 return This->lpVtbl->AddRef(This); 9943 } 9944 static FORCEINLINE ULONG IMediaPropertyBag_Release(IMediaPropertyBag* This) { 9945 return This->lpVtbl->Release(This); 9946 } 9947 /*** IPropertyBag methods ***/ 9948 static FORCEINLINE HRESULT IMediaPropertyBag_Read(IMediaPropertyBag* This,LPCOLESTR pszPropName,VARIANT *pVar,IErrorLog *pErrorLog) { 9949 return This->lpVtbl->Read(This,pszPropName,pVar,pErrorLog); 9950 } 9951 static FORCEINLINE HRESULT IMediaPropertyBag_Write(IMediaPropertyBag* This,LPCOLESTR pszPropName,VARIANT *pVar) { 9952 return This->lpVtbl->Write(This,pszPropName,pVar); 9953 } 9954 /*** IMediaPropertyBag methods ***/ 9955 static FORCEINLINE HRESULT IMediaPropertyBag_EnumProperty(IMediaPropertyBag* This,ULONG iProperty,VARIANT *pvarPropertyName,VARIANT *pvarPropertyValue) { 9956 return This->lpVtbl->EnumProperty(This,iProperty,pvarPropertyName,pvarPropertyValue); 9957 } 9958 #endif 9959 #endif 9960 9961 #endif 9962 9963 HRESULT STDMETHODCALLTYPE IMediaPropertyBag_EnumProperty_Proxy( 9964 IMediaPropertyBag* This, 9965 ULONG iProperty, 9966 VARIANT *pvarPropertyName, 9967 VARIANT *pvarPropertyValue); 9968 void __RPC_STUB IMediaPropertyBag_EnumProperty_Stub( 9969 IRpcStubBuffer* This, 9970 IRpcChannelBuffer* pRpcChannelBuffer, 9971 PRPC_MESSAGE pRpcMessage, 9972 DWORD* pdwStubPhase); 9973 9974 #endif /* __IMediaPropertyBag_INTERFACE_DEFINED__ */ 9975 9976 /***************************************************************************** 9977 * IPersistMediaPropertyBag interface 9978 */ 9979 #ifndef __IPersistMediaPropertyBag_INTERFACE_DEFINED__ 9980 #define __IPersistMediaPropertyBag_INTERFACE_DEFINED__ 9981 9982 typedef IPersistMediaPropertyBag *LPPERSISTMEDIAPROPERTYBAG; 9983 DEFINE_GUID(IID_IPersistMediaPropertyBag, 0x5738e040, 0xb67f, 0x11d0, 0xbd,0x4d, 0x00,0xa0,0xc9,0x11,0xce,0x86); 9984 #if defined(__cplusplus) && !defined(CINTERFACE) 9985 MIDL_INTERFACE("5738e040-b67f-11d0-bd4d-00a0c911ce86") 9986 IPersistMediaPropertyBag : public IPersist 9987 { 9988 virtual HRESULT STDMETHODCALLTYPE InitNew( 9989 ) = 0; 9990 9991 virtual HRESULT STDMETHODCALLTYPE Load( 9992 IMediaPropertyBag *pPropBag, 9993 IErrorLog *pErrorLog) = 0; 9994 9995 virtual HRESULT STDMETHODCALLTYPE Save( 9996 IMediaPropertyBag *pPropBag, 9997 WINBOOL fClearDirty, 9998 WINBOOL fSaveAllProperties) = 0; 9999 10000 }; 10001 #ifdef __CRT_UUID_DECL 10002 __CRT_UUID_DECL(IPersistMediaPropertyBag, 0x5738e040, 0xb67f, 0x11d0, 0xbd,0x4d, 0x00,0xa0,0xc9,0x11,0xce,0x86) 10003 #endif 10004 #else 10005 typedef struct IPersistMediaPropertyBagVtbl { 10006 BEGIN_INTERFACE 10007 10008 /*** IUnknown methods ***/ 10009 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 10010 IPersistMediaPropertyBag* This, 10011 REFIID riid, 10012 void **ppvObject); 10013 10014 ULONG (STDMETHODCALLTYPE *AddRef)( 10015 IPersistMediaPropertyBag* This); 10016 10017 ULONG (STDMETHODCALLTYPE *Release)( 10018 IPersistMediaPropertyBag* This); 10019 10020 /*** IPersist methods ***/ 10021 HRESULT (STDMETHODCALLTYPE *GetClassID)( 10022 IPersistMediaPropertyBag* This, 10023 CLSID *pClassID); 10024 10025 /*** IPersistMediaPropertyBag methods ***/ 10026 HRESULT (STDMETHODCALLTYPE *InitNew)( 10027 IPersistMediaPropertyBag* This); 10028 10029 HRESULT (STDMETHODCALLTYPE *Load)( 10030 IPersistMediaPropertyBag* This, 10031 IMediaPropertyBag *pPropBag, 10032 IErrorLog *pErrorLog); 10033 10034 HRESULT (STDMETHODCALLTYPE *Save)( 10035 IPersistMediaPropertyBag* This, 10036 IMediaPropertyBag *pPropBag, 10037 WINBOOL fClearDirty, 10038 WINBOOL fSaveAllProperties); 10039 10040 END_INTERFACE 10041 } IPersistMediaPropertyBagVtbl; 10042 interface IPersistMediaPropertyBag { 10043 CONST_VTBL IPersistMediaPropertyBagVtbl* lpVtbl; 10044 }; 10045 10046 #ifdef COBJMACROS 10047 #ifndef WIDL_C_INLINE_WRAPPERS 10048 /*** IUnknown methods ***/ 10049 #define IPersistMediaPropertyBag_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 10050 #define IPersistMediaPropertyBag_AddRef(This) (This)->lpVtbl->AddRef(This) 10051 #define IPersistMediaPropertyBag_Release(This) (This)->lpVtbl->Release(This) 10052 /*** IPersist methods ***/ 10053 #define IPersistMediaPropertyBag_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) 10054 /*** IPersistMediaPropertyBag methods ***/ 10055 #define IPersistMediaPropertyBag_InitNew(This) (This)->lpVtbl->InitNew(This) 10056 #define IPersistMediaPropertyBag_Load(This,pPropBag,pErrorLog) (This)->lpVtbl->Load(This,pPropBag,pErrorLog) 10057 #define IPersistMediaPropertyBag_Save(This,pPropBag,fClearDirty,fSaveAllProperties) (This)->lpVtbl->Save(This,pPropBag,fClearDirty,fSaveAllProperties) 10058 #else 10059 /*** IUnknown methods ***/ 10060 static FORCEINLINE HRESULT IPersistMediaPropertyBag_QueryInterface(IPersistMediaPropertyBag* This,REFIID riid,void **ppvObject) { 10061 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 10062 } 10063 static FORCEINLINE ULONG IPersistMediaPropertyBag_AddRef(IPersistMediaPropertyBag* This) { 10064 return This->lpVtbl->AddRef(This); 10065 } 10066 static FORCEINLINE ULONG IPersistMediaPropertyBag_Release(IPersistMediaPropertyBag* This) { 10067 return This->lpVtbl->Release(This); 10068 } 10069 /*** IPersist methods ***/ 10070 static FORCEINLINE HRESULT IPersistMediaPropertyBag_GetClassID(IPersistMediaPropertyBag* This,CLSID *pClassID) { 10071 return This->lpVtbl->GetClassID(This,pClassID); 10072 } 10073 /*** IPersistMediaPropertyBag methods ***/ 10074 static FORCEINLINE HRESULT IPersistMediaPropertyBag_InitNew(IPersistMediaPropertyBag* This) { 10075 return This->lpVtbl->InitNew(This); 10076 } 10077 static FORCEINLINE HRESULT IPersistMediaPropertyBag_Load(IPersistMediaPropertyBag* This,IMediaPropertyBag *pPropBag,IErrorLog *pErrorLog) { 10078 return This->lpVtbl->Load(This,pPropBag,pErrorLog); 10079 } 10080 static FORCEINLINE HRESULT IPersistMediaPropertyBag_Save(IPersistMediaPropertyBag* This,IMediaPropertyBag *pPropBag,WINBOOL fClearDirty,WINBOOL fSaveAllProperties) { 10081 return This->lpVtbl->Save(This,pPropBag,fClearDirty,fSaveAllProperties); 10082 } 10083 #endif 10084 #endif 10085 10086 #endif 10087 10088 HRESULT STDMETHODCALLTYPE IPersistMediaPropertyBag_InitNew_Proxy( 10089 IPersistMediaPropertyBag* This); 10090 void __RPC_STUB IPersistMediaPropertyBag_InitNew_Stub( 10091 IRpcStubBuffer* This, 10092 IRpcChannelBuffer* pRpcChannelBuffer, 10093 PRPC_MESSAGE pRpcMessage, 10094 DWORD* pdwStubPhase); 10095 HRESULT STDMETHODCALLTYPE IPersistMediaPropertyBag_Load_Proxy( 10096 IPersistMediaPropertyBag* This, 10097 IMediaPropertyBag *pPropBag, 10098 IErrorLog *pErrorLog); 10099 void __RPC_STUB IPersistMediaPropertyBag_Load_Stub( 10100 IRpcStubBuffer* This, 10101 IRpcChannelBuffer* pRpcChannelBuffer, 10102 PRPC_MESSAGE pRpcMessage, 10103 DWORD* pdwStubPhase); 10104 HRESULT STDMETHODCALLTYPE IPersistMediaPropertyBag_Save_Proxy( 10105 IPersistMediaPropertyBag* This, 10106 IMediaPropertyBag *pPropBag, 10107 WINBOOL fClearDirty, 10108 WINBOOL fSaveAllProperties); 10109 void __RPC_STUB IPersistMediaPropertyBag_Save_Stub( 10110 IRpcStubBuffer* This, 10111 IRpcChannelBuffer* pRpcChannelBuffer, 10112 PRPC_MESSAGE pRpcMessage, 10113 DWORD* pdwStubPhase); 10114 10115 #endif /* __IPersistMediaPropertyBag_INTERFACE_DEFINED__ */ 10116 10117 /***************************************************************************** 10118 * ISeekingPassThru interface 10119 */ 10120 #ifndef __ISeekingPassThru_INTERFACE_DEFINED__ 10121 #define __ISeekingPassThru_INTERFACE_DEFINED__ 10122 10123 DEFINE_GUID(IID_ISeekingPassThru, 0x36b73883, 0xc2c8, 0x11cf, 0x8b,0x46, 0x00,0x80,0x5f,0x6c,0xef,0x60); 10124 #if defined(__cplusplus) && !defined(CINTERFACE) 10125 MIDL_INTERFACE("36b73883-c2c8-11cf-8b46-00805f6cef60") 10126 ISeekingPassThru : public IUnknown 10127 { 10128 virtual HRESULT STDMETHODCALLTYPE Init( 10129 WINBOOL bSupportRendering, 10130 IPin *pPin) = 0; 10131 10132 }; 10133 #ifdef __CRT_UUID_DECL 10134 __CRT_UUID_DECL(ISeekingPassThru, 0x36b73883, 0xc2c8, 0x11cf, 0x8b,0x46, 0x00,0x80,0x5f,0x6c,0xef,0x60) 10135 #endif 10136 #else 10137 typedef struct ISeekingPassThruVtbl { 10138 BEGIN_INTERFACE 10139 10140 /*** IUnknown methods ***/ 10141 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 10142 ISeekingPassThru* This, 10143 REFIID riid, 10144 void **ppvObject); 10145 10146 ULONG (STDMETHODCALLTYPE *AddRef)( 10147 ISeekingPassThru* This); 10148 10149 ULONG (STDMETHODCALLTYPE *Release)( 10150 ISeekingPassThru* This); 10151 10152 /*** ISeekingPassThru methods ***/ 10153 HRESULT (STDMETHODCALLTYPE *Init)( 10154 ISeekingPassThru* This, 10155 WINBOOL bSupportRendering, 10156 IPin *pPin); 10157 10158 END_INTERFACE 10159 } ISeekingPassThruVtbl; 10160 interface ISeekingPassThru { 10161 CONST_VTBL ISeekingPassThruVtbl* lpVtbl; 10162 }; 10163 10164 #ifdef COBJMACROS 10165 #ifndef WIDL_C_INLINE_WRAPPERS 10166 /*** IUnknown methods ***/ 10167 #define ISeekingPassThru_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 10168 #define ISeekingPassThru_AddRef(This) (This)->lpVtbl->AddRef(This) 10169 #define ISeekingPassThru_Release(This) (This)->lpVtbl->Release(This) 10170 /*** ISeekingPassThru methods ***/ 10171 #define ISeekingPassThru_Init(This,bSupportRendering,pPin) (This)->lpVtbl->Init(This,bSupportRendering,pPin) 10172 #else 10173 /*** IUnknown methods ***/ 10174 static FORCEINLINE HRESULT ISeekingPassThru_QueryInterface(ISeekingPassThru* This,REFIID riid,void **ppvObject) { 10175 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 10176 } 10177 static FORCEINLINE ULONG ISeekingPassThru_AddRef(ISeekingPassThru* This) { 10178 return This->lpVtbl->AddRef(This); 10179 } 10180 static FORCEINLINE ULONG ISeekingPassThru_Release(ISeekingPassThru* This) { 10181 return This->lpVtbl->Release(This); 10182 } 10183 /*** ISeekingPassThru methods ***/ 10184 static FORCEINLINE HRESULT ISeekingPassThru_Init(ISeekingPassThru* This,WINBOOL bSupportRendering,IPin *pPin) { 10185 return This->lpVtbl->Init(This,bSupportRendering,pPin); 10186 } 10187 #endif 10188 #endif 10189 10190 #endif 10191 10192 HRESULT STDMETHODCALLTYPE ISeekingPassThru_Init_Proxy( 10193 ISeekingPassThru* This, 10194 WINBOOL bSupportRendering, 10195 IPin *pPin); 10196 void __RPC_STUB ISeekingPassThru_Init_Stub( 10197 IRpcStubBuffer* This, 10198 IRpcChannelBuffer* pRpcChannelBuffer, 10199 PRPC_MESSAGE pRpcMessage, 10200 DWORD* pdwStubPhase); 10201 10202 #endif /* __ISeekingPassThru_INTERFACE_DEFINED__ */ 10203 10204 enum _AM_FILTER_MISC_FLAGS { 10205 AM_FILTER_MISC_FLAGS_IS_RENDERER = 0x1, 10206 AM_FILTER_MISC_FLAGS_IS_SOURCE = 0x2 10207 }; 10208 10209 /***************************************************************************** 10210 * IAMFilterMiscFlags interface 10211 */ 10212 #ifndef __IAMFilterMiscFlags_INTERFACE_DEFINED__ 10213 #define __IAMFilterMiscFlags_INTERFACE_DEFINED__ 10214 10215 DEFINE_GUID(IID_IAMFilterMiscFlags, 0x2dd74950, 0xa890, 0x11d1, 0xab,0xe8, 0x00,0xa0,0xc9,0x05,0xf3,0x75); 10216 #if defined(__cplusplus) && !defined(CINTERFACE) 10217 MIDL_INTERFACE("2dd74950-a890-11d1-abe8-00a0c905f375") 10218 IAMFilterMiscFlags : public IUnknown 10219 { 10220 virtual ULONG STDMETHODCALLTYPE GetMiscFlags( 10221 ) = 0; 10222 10223 }; 10224 #ifdef __CRT_UUID_DECL 10225 __CRT_UUID_DECL(IAMFilterMiscFlags, 0x2dd74950, 0xa890, 0x11d1, 0xab,0xe8, 0x00,0xa0,0xc9,0x05,0xf3,0x75) 10226 #endif 10227 #else 10228 typedef struct IAMFilterMiscFlagsVtbl { 10229 BEGIN_INTERFACE 10230 10231 /*** IUnknown methods ***/ 10232 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 10233 IAMFilterMiscFlags* This, 10234 REFIID riid, 10235 void **ppvObject); 10236 10237 ULONG (STDMETHODCALLTYPE *AddRef)( 10238 IAMFilterMiscFlags* This); 10239 10240 ULONG (STDMETHODCALLTYPE *Release)( 10241 IAMFilterMiscFlags* This); 10242 10243 /*** IAMFilterMiscFlags methods ***/ 10244 ULONG (STDMETHODCALLTYPE *GetMiscFlags)( 10245 IAMFilterMiscFlags* This); 10246 10247 END_INTERFACE 10248 } IAMFilterMiscFlagsVtbl; 10249 interface IAMFilterMiscFlags { 10250 CONST_VTBL IAMFilterMiscFlagsVtbl* lpVtbl; 10251 }; 10252 10253 #ifdef COBJMACROS 10254 #ifndef WIDL_C_INLINE_WRAPPERS 10255 /*** IUnknown methods ***/ 10256 #define IAMFilterMiscFlags_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 10257 #define IAMFilterMiscFlags_AddRef(This) (This)->lpVtbl->AddRef(This) 10258 #define IAMFilterMiscFlags_Release(This) (This)->lpVtbl->Release(This) 10259 /*** IAMFilterMiscFlags methods ***/ 10260 #define IAMFilterMiscFlags_GetMiscFlags(This) (This)->lpVtbl->GetMiscFlags(This) 10261 #else 10262 /*** IUnknown methods ***/ 10263 static FORCEINLINE HRESULT IAMFilterMiscFlags_QueryInterface(IAMFilterMiscFlags* This,REFIID riid,void **ppvObject) { 10264 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 10265 } 10266 static FORCEINLINE ULONG IAMFilterMiscFlags_AddRef(IAMFilterMiscFlags* This) { 10267 return This->lpVtbl->AddRef(This); 10268 } 10269 static FORCEINLINE ULONG IAMFilterMiscFlags_Release(IAMFilterMiscFlags* This) { 10270 return This->lpVtbl->Release(This); 10271 } 10272 /*** IAMFilterMiscFlags methods ***/ 10273 static FORCEINLINE ULONG IAMFilterMiscFlags_GetMiscFlags(IAMFilterMiscFlags* This) { 10274 return This->lpVtbl->GetMiscFlags(This); 10275 } 10276 #endif 10277 #endif 10278 10279 #endif 10280 10281 ULONG STDMETHODCALLTYPE IAMFilterMiscFlags_GetMiscFlags_Proxy( 10282 IAMFilterMiscFlags* This); 10283 void __RPC_STUB IAMFilterMiscFlags_GetMiscFlags_Stub( 10284 IRpcStubBuffer* This, 10285 IRpcChannelBuffer* pRpcChannelBuffer, 10286 PRPC_MESSAGE pRpcMessage, 10287 DWORD* pdwStubPhase); 10288 10289 #endif /* __IAMFilterMiscFlags_INTERFACE_DEFINED__ */ 10290 10291 /***************************************************************************** 10292 * IAMGraphBuilderCallback interface 10293 */ 10294 #ifndef __IAMGraphBuilderCallback_INTERFACE_DEFINED__ 10295 #define __IAMGraphBuilderCallback_INTERFACE_DEFINED__ 10296 10297 DEFINE_GUID(IID_IAMGraphBuilderCallback, 0x4995f511, 0x9ddb, 0x4f12, 0xbd,0x3b, 0xf0,0x46,0x11,0x80,0x7b,0x79); 10298 #if defined(__cplusplus) && !defined(CINTERFACE) 10299 MIDL_INTERFACE("4995f511-9ddb-4f12-bd3b-f04611807b79") 10300 IAMGraphBuilderCallback : public IUnknown 10301 { 10302 virtual HRESULT STDMETHODCALLTYPE SelectedFilter( 10303 IMoniker *pMon) = 0; 10304 10305 virtual HRESULT STDMETHODCALLTYPE CreatedFilter( 10306 IBaseFilter *pFil) = 0; 10307 10308 }; 10309 #ifdef __CRT_UUID_DECL 10310 __CRT_UUID_DECL(IAMGraphBuilderCallback, 0x4995f511, 0x9ddb, 0x4f12, 0xbd,0x3b, 0xf0,0x46,0x11,0x80,0x7b,0x79) 10311 #endif 10312 #else 10313 typedef struct IAMGraphBuilderCallbackVtbl { 10314 BEGIN_INTERFACE 10315 10316 /*** IUnknown methods ***/ 10317 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 10318 IAMGraphBuilderCallback* This, 10319 REFIID riid, 10320 void **ppvObject); 10321 10322 ULONG (STDMETHODCALLTYPE *AddRef)( 10323 IAMGraphBuilderCallback* This); 10324 10325 ULONG (STDMETHODCALLTYPE *Release)( 10326 IAMGraphBuilderCallback* This); 10327 10328 /*** IAMGraphBuilderCallback methods ***/ 10329 HRESULT (STDMETHODCALLTYPE *SelectedFilter)( 10330 IAMGraphBuilderCallback* This, 10331 IMoniker *pMon); 10332 10333 HRESULT (STDMETHODCALLTYPE *CreatedFilter)( 10334 IAMGraphBuilderCallback* This, 10335 IBaseFilter *pFil); 10336 10337 END_INTERFACE 10338 } IAMGraphBuilderCallbackVtbl; 10339 interface IAMGraphBuilderCallback { 10340 CONST_VTBL IAMGraphBuilderCallbackVtbl* lpVtbl; 10341 }; 10342 10343 #ifdef COBJMACROS 10344 #ifndef WIDL_C_INLINE_WRAPPERS 10345 /*** IUnknown methods ***/ 10346 #define IAMGraphBuilderCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 10347 #define IAMGraphBuilderCallback_AddRef(This) (This)->lpVtbl->AddRef(This) 10348 #define IAMGraphBuilderCallback_Release(This) (This)->lpVtbl->Release(This) 10349 /*** IAMGraphBuilderCallback methods ***/ 10350 #define IAMGraphBuilderCallback_SelectedFilter(This,pMon) (This)->lpVtbl->SelectedFilter(This,pMon) 10351 #define IAMGraphBuilderCallback_CreatedFilter(This,pFil) (This)->lpVtbl->CreatedFilter(This,pFil) 10352 #else 10353 /*** IUnknown methods ***/ 10354 static FORCEINLINE HRESULT IAMGraphBuilderCallback_QueryInterface(IAMGraphBuilderCallback* This,REFIID riid,void **ppvObject) { 10355 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 10356 } 10357 static FORCEINLINE ULONG IAMGraphBuilderCallback_AddRef(IAMGraphBuilderCallback* This) { 10358 return This->lpVtbl->AddRef(This); 10359 } 10360 static FORCEINLINE ULONG IAMGraphBuilderCallback_Release(IAMGraphBuilderCallback* This) { 10361 return This->lpVtbl->Release(This); 10362 } 10363 /*** IAMGraphBuilderCallback methods ***/ 10364 static FORCEINLINE HRESULT IAMGraphBuilderCallback_SelectedFilter(IAMGraphBuilderCallback* This,IMoniker *pMon) { 10365 return This->lpVtbl->SelectedFilter(This,pMon); 10366 } 10367 static FORCEINLINE HRESULT IAMGraphBuilderCallback_CreatedFilter(IAMGraphBuilderCallback* This,IBaseFilter *pFil) { 10368 return This->lpVtbl->CreatedFilter(This,pFil); 10369 } 10370 #endif 10371 #endif 10372 10373 #endif 10374 10375 HRESULT STDMETHODCALLTYPE IAMGraphBuilderCallback_SelectedFilter_Proxy( 10376 IAMGraphBuilderCallback* This, 10377 IMoniker *pMon); 10378 void __RPC_STUB IAMGraphBuilderCallback_SelectedFilter_Stub( 10379 IRpcStubBuffer* This, 10380 IRpcChannelBuffer* pRpcChannelBuffer, 10381 PRPC_MESSAGE pRpcMessage, 10382 DWORD* pdwStubPhase); 10383 HRESULT STDMETHODCALLTYPE IAMGraphBuilderCallback_CreatedFilter_Proxy( 10384 IAMGraphBuilderCallback* This, 10385 IBaseFilter *pFil); 10386 void __RPC_STUB IAMGraphBuilderCallback_CreatedFilter_Stub( 10387 IRpcStubBuffer* This, 10388 IRpcChannelBuffer* pRpcChannelBuffer, 10389 PRPC_MESSAGE pRpcMessage, 10390 DWORD* pdwStubPhase); 10391 10392 #endif /* __IAMGraphBuilderCallback_INTERFACE_DEFINED__ */ 10393 10394 /***************************************************************************** 10395 * IAMVfwCaptureDialogs interface 10396 */ 10397 #ifndef __IAMVfwCaptureDialogs_INTERFACE_DEFINED__ 10398 #define __IAMVfwCaptureDialogs_INTERFACE_DEFINED__ 10399 10400 DEFINE_GUID(IID_IAMVfwCaptureDialogs, 0xd8d715a0, 0x6e5e, 0x11d0, 0xb3,0xf0, 0x00,0xaa,0x00,0x37,0x61,0xc5); 10401 #if defined(__cplusplus) && !defined(CINTERFACE) 10402 MIDL_INTERFACE("d8d715a0-6e5e-11d0-b3f0-00aa003761c5") 10403 IAMVfwCaptureDialogs : public IUnknown 10404 { 10405 virtual HRESULT STDMETHODCALLTYPE HasDialog( 10406 int dialog) = 0; 10407 10408 virtual HRESULT STDMETHODCALLTYPE ShowDialog( 10409 int dialog, 10410 HWND hwnd) = 0; 10411 10412 virtual HRESULT STDMETHODCALLTYPE SendDriverMessage( 10413 int dialog, 10414 int msg, 10415 LONG data1, 10416 LONG data2) = 0; 10417 10418 }; 10419 #ifdef __CRT_UUID_DECL 10420 __CRT_UUID_DECL(IAMVfwCaptureDialogs, 0xd8d715a0, 0x6e5e, 0x11d0, 0xb3,0xf0, 0x00,0xaa,0x00,0x37,0x61,0xc5) 10421 #endif 10422 #else 10423 typedef struct IAMVfwCaptureDialogsVtbl { 10424 BEGIN_INTERFACE 10425 10426 /*** IUnknown methods ***/ 10427 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 10428 IAMVfwCaptureDialogs* This, 10429 REFIID riid, 10430 void **ppvObject); 10431 10432 ULONG (STDMETHODCALLTYPE *AddRef)( 10433 IAMVfwCaptureDialogs* This); 10434 10435 ULONG (STDMETHODCALLTYPE *Release)( 10436 IAMVfwCaptureDialogs* This); 10437 10438 /*** IAMVfwCaptureDialogs methods ***/ 10439 HRESULT (STDMETHODCALLTYPE *HasDialog)( 10440 IAMVfwCaptureDialogs* This, 10441 int dialog); 10442 10443 HRESULT (STDMETHODCALLTYPE *ShowDialog)( 10444 IAMVfwCaptureDialogs* This, 10445 int dialog, 10446 HWND hwnd); 10447 10448 HRESULT (STDMETHODCALLTYPE *SendDriverMessage)( 10449 IAMVfwCaptureDialogs* This, 10450 int dialog, 10451 int msg, 10452 LONG data1, 10453 LONG data2); 10454 10455 END_INTERFACE 10456 } IAMVfwCaptureDialogsVtbl; 10457 interface IAMVfwCaptureDialogs { 10458 CONST_VTBL IAMVfwCaptureDialogsVtbl* lpVtbl; 10459 }; 10460 10461 #ifdef COBJMACROS 10462 #ifndef WIDL_C_INLINE_WRAPPERS 10463 /*** IUnknown methods ***/ 10464 #define IAMVfwCaptureDialogs_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 10465 #define IAMVfwCaptureDialogs_AddRef(This) (This)->lpVtbl->AddRef(This) 10466 #define IAMVfwCaptureDialogs_Release(This) (This)->lpVtbl->Release(This) 10467 /*** IAMVfwCaptureDialogs methods ***/ 10468 #define IAMVfwCaptureDialogs_HasDialog(This,dialog) (This)->lpVtbl->HasDialog(This,dialog) 10469 #define IAMVfwCaptureDialogs_ShowDialog(This,dialog,hwnd) (This)->lpVtbl->ShowDialog(This,dialog,hwnd) 10470 #define IAMVfwCaptureDialogs_SendDriverMessage(This,dialog,msg,data1,data2) (This)->lpVtbl->SendDriverMessage(This,dialog,msg,data1,data2) 10471 #else 10472 /*** IUnknown methods ***/ 10473 static FORCEINLINE HRESULT IAMVfwCaptureDialogs_QueryInterface(IAMVfwCaptureDialogs* This,REFIID riid,void **ppvObject) { 10474 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 10475 } 10476 static FORCEINLINE ULONG IAMVfwCaptureDialogs_AddRef(IAMVfwCaptureDialogs* This) { 10477 return This->lpVtbl->AddRef(This); 10478 } 10479 static FORCEINLINE ULONG IAMVfwCaptureDialogs_Release(IAMVfwCaptureDialogs* This) { 10480 return This->lpVtbl->Release(This); 10481 } 10482 /*** IAMVfwCaptureDialogs methods ***/ 10483 static FORCEINLINE HRESULT IAMVfwCaptureDialogs_HasDialog(IAMVfwCaptureDialogs* This,int dialog) { 10484 return This->lpVtbl->HasDialog(This,dialog); 10485 } 10486 static FORCEINLINE HRESULT IAMVfwCaptureDialogs_ShowDialog(IAMVfwCaptureDialogs* This,int dialog,HWND hwnd) { 10487 return This->lpVtbl->ShowDialog(This,dialog,hwnd); 10488 } 10489 static FORCEINLINE HRESULT IAMVfwCaptureDialogs_SendDriverMessage(IAMVfwCaptureDialogs* This,int dialog,int msg,LONG data1,LONG data2) { 10490 return This->lpVtbl->SendDriverMessage(This,dialog,msg,data1,data2); 10491 } 10492 #endif 10493 #endif 10494 10495 #endif 10496 10497 HRESULT STDMETHODCALLTYPE IAMVfwCaptureDialogs_HasDialog_Proxy( 10498 IAMVfwCaptureDialogs* This, 10499 int dialog); 10500 void __RPC_STUB IAMVfwCaptureDialogs_HasDialog_Stub( 10501 IRpcStubBuffer* This, 10502 IRpcChannelBuffer* pRpcChannelBuffer, 10503 PRPC_MESSAGE pRpcMessage, 10504 DWORD* pdwStubPhase); 10505 HRESULT STDMETHODCALLTYPE IAMVfwCaptureDialogs_ShowDialog_Proxy( 10506 IAMVfwCaptureDialogs* This, 10507 int dialog, 10508 HWND hwnd); 10509 void __RPC_STUB IAMVfwCaptureDialogs_ShowDialog_Stub( 10510 IRpcStubBuffer* This, 10511 IRpcChannelBuffer* pRpcChannelBuffer, 10512 PRPC_MESSAGE pRpcMessage, 10513 DWORD* pdwStubPhase); 10514 HRESULT STDMETHODCALLTYPE IAMVfwCaptureDialogs_SendDriverMessage_Proxy( 10515 IAMVfwCaptureDialogs* This, 10516 int dialog, 10517 int msg, 10518 LONG data1, 10519 LONG data2); 10520 void __RPC_STUB IAMVfwCaptureDialogs_SendDriverMessage_Stub( 10521 IRpcStubBuffer* This, 10522 IRpcChannelBuffer* pRpcChannelBuffer, 10523 PRPC_MESSAGE pRpcMessage, 10524 DWORD* pdwStubPhase); 10525 10526 #endif /* __IAMVfwCaptureDialogs_INTERFACE_DEFINED__ */ 10527 10528 #if (_WIN32_WINNT >= 0x0601) 10529 /***************************************************************************** 10530 * IAMAsyncReaderTimestampScaling interface 10531 */ 10532 #ifndef __IAMAsyncReaderTimestampScaling_INTERFACE_DEFINED__ 10533 #define __IAMAsyncReaderTimestampScaling_INTERFACE_DEFINED__ 10534 10535 DEFINE_GUID(IID_IAMAsyncReaderTimestampScaling, 0xcf7b26fc, 0x9a00, 0x485b, 0x81,0x47, 0x3e,0x78,0x9d,0x5e,0x8f,0x67); 10536 #if defined(__cplusplus) && !defined(CINTERFACE) 10537 MIDL_INTERFACE("cf7b26fc-9a00-485b-8147-3e789d5e8f67") 10538 IAMAsyncReaderTimestampScaling : public IUnknown 10539 { 10540 virtual HRESULT STDMETHODCALLTYPE GetTimestampMode( 10541 WINBOOL *pfRaw) = 0; 10542 10543 virtual HRESULT STDMETHODCALLTYPE SetTimestampMode( 10544 WINBOOL fRaw) = 0; 10545 10546 }; 10547 #ifdef __CRT_UUID_DECL 10548 __CRT_UUID_DECL(IAMAsyncReaderTimestampScaling, 0xcf7b26fc, 0x9a00, 0x485b, 0x81,0x47, 0x3e,0x78,0x9d,0x5e,0x8f,0x67) 10549 #endif 10550 #else 10551 typedef struct IAMAsyncReaderTimestampScalingVtbl { 10552 BEGIN_INTERFACE 10553 10554 /*** IUnknown methods ***/ 10555 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 10556 IAMAsyncReaderTimestampScaling* This, 10557 REFIID riid, 10558 void **ppvObject); 10559 10560 ULONG (STDMETHODCALLTYPE *AddRef)( 10561 IAMAsyncReaderTimestampScaling* This); 10562 10563 ULONG (STDMETHODCALLTYPE *Release)( 10564 IAMAsyncReaderTimestampScaling* This); 10565 10566 /*** IAMAsyncReaderTimestampScaling methods ***/ 10567 HRESULT (STDMETHODCALLTYPE *GetTimestampMode)( 10568 IAMAsyncReaderTimestampScaling* This, 10569 WINBOOL *pfRaw); 10570 10571 HRESULT (STDMETHODCALLTYPE *SetTimestampMode)( 10572 IAMAsyncReaderTimestampScaling* This, 10573 WINBOOL fRaw); 10574 10575 END_INTERFACE 10576 } IAMAsyncReaderTimestampScalingVtbl; 10577 interface IAMAsyncReaderTimestampScaling { 10578 CONST_VTBL IAMAsyncReaderTimestampScalingVtbl* lpVtbl; 10579 }; 10580 10581 #ifdef COBJMACROS 10582 #ifndef WIDL_C_INLINE_WRAPPERS 10583 /*** IUnknown methods ***/ 10584 #define IAMAsyncReaderTimestampScaling_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 10585 #define IAMAsyncReaderTimestampScaling_AddRef(This) (This)->lpVtbl->AddRef(This) 10586 #define IAMAsyncReaderTimestampScaling_Release(This) (This)->lpVtbl->Release(This) 10587 /*** IAMAsyncReaderTimestampScaling methods ***/ 10588 #define IAMAsyncReaderTimestampScaling_GetTimestampMode(This,pfRaw) (This)->lpVtbl->GetTimestampMode(This,pfRaw) 10589 #define IAMAsyncReaderTimestampScaling_SetTimestampMode(This,fRaw) (This)->lpVtbl->SetTimestampMode(This,fRaw) 10590 #else 10591 /*** IUnknown methods ***/ 10592 static FORCEINLINE HRESULT IAMAsyncReaderTimestampScaling_QueryInterface(IAMAsyncReaderTimestampScaling* This,REFIID riid,void **ppvObject) { 10593 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 10594 } 10595 static FORCEINLINE ULONG IAMAsyncReaderTimestampScaling_AddRef(IAMAsyncReaderTimestampScaling* This) { 10596 return This->lpVtbl->AddRef(This); 10597 } 10598 static FORCEINLINE ULONG IAMAsyncReaderTimestampScaling_Release(IAMAsyncReaderTimestampScaling* This) { 10599 return This->lpVtbl->Release(This); 10600 } 10601 /*** IAMAsyncReaderTimestampScaling methods ***/ 10602 static FORCEINLINE HRESULT IAMAsyncReaderTimestampScaling_GetTimestampMode(IAMAsyncReaderTimestampScaling* This,WINBOOL *pfRaw) { 10603 return This->lpVtbl->GetTimestampMode(This,pfRaw); 10604 } 10605 static FORCEINLINE HRESULT IAMAsyncReaderTimestampScaling_SetTimestampMode(IAMAsyncReaderTimestampScaling* This,WINBOOL fRaw) { 10606 return This->lpVtbl->SetTimestampMode(This,fRaw); 10607 } 10608 #endif 10609 #endif 10610 10611 #endif 10612 10613 HRESULT STDMETHODCALLTYPE IAMAsyncReaderTimestampScaling_GetTimestampMode_Proxy( 10614 IAMAsyncReaderTimestampScaling* This, 10615 WINBOOL *pfRaw); 10616 void __RPC_STUB IAMAsyncReaderTimestampScaling_GetTimestampMode_Stub( 10617 IRpcStubBuffer* This, 10618 IRpcChannelBuffer* pRpcChannelBuffer, 10619 PRPC_MESSAGE pRpcMessage, 10620 DWORD* pdwStubPhase); 10621 HRESULT STDMETHODCALLTYPE IAMAsyncReaderTimestampScaling_SetTimestampMode_Proxy( 10622 IAMAsyncReaderTimestampScaling* This, 10623 WINBOOL fRaw); 10624 void __RPC_STUB IAMAsyncReaderTimestampScaling_SetTimestampMode_Stub( 10625 IRpcStubBuffer* This, 10626 IRpcChannelBuffer* pRpcChannelBuffer, 10627 PRPC_MESSAGE pRpcMessage, 10628 DWORD* pdwStubPhase); 10629 10630 #endif /* __IAMAsyncReaderTimestampScaling_INTERFACE_DEFINED__ */ 10631 10632 /***************************************************************************** 10633 * IAMPluginControl interface 10634 */ 10635 #ifndef __IAMPluginControl_INTERFACE_DEFINED__ 10636 #define __IAMPluginControl_INTERFACE_DEFINED__ 10637 10638 DEFINE_GUID(IID_IAMPluginControl, 0x0e26a181, 0xf40c, 0x4635, 0x87,0x86, 0x97,0x62,0x84,0xb5,0x29,0x81); 10639 #if defined(__cplusplus) && !defined(CINTERFACE) 10640 MIDL_INTERFACE("0e26a181-f40c-4635-8786-976284b52981") 10641 IAMPluginControl : public IUnknown 10642 { 10643 virtual HRESULT STDMETHODCALLTYPE GetPreferredClsid( 10644 REFGUID subType, 10645 CLSID *clsid) = 0; 10646 10647 virtual HRESULT STDMETHODCALLTYPE GetPreferredClsidByIndex( 10648 DWORD index, 10649 GUID *subType, 10650 CLSID *clsid) = 0; 10651 10652 virtual HRESULT STDMETHODCALLTYPE SetPreferredClsid( 10653 REFGUID subType, 10654 const CLSID *clsid) = 0; 10655 10656 virtual HRESULT STDMETHODCALLTYPE IsDisabled( 10657 REFCLSID clsid) = 0; 10658 10659 virtual HRESULT STDMETHODCALLTYPE GetDisabledByIndex( 10660 DWORD index, 10661 CLSID *clsid) = 0; 10662 10663 virtual HRESULT STDMETHODCALLTYPE SetDisabled( 10664 REFCLSID clsid, 10665 WINBOOL disabled) = 0; 10666 10667 virtual HRESULT STDMETHODCALLTYPE IsLegacyDisabled( 10668 LPCWSTR dllName) = 0; 10669 10670 }; 10671 #ifdef __CRT_UUID_DECL 10672 __CRT_UUID_DECL(IAMPluginControl, 0x0e26a181, 0xf40c, 0x4635, 0x87,0x86, 0x97,0x62,0x84,0xb5,0x29,0x81) 10673 #endif 10674 #else 10675 typedef struct IAMPluginControlVtbl { 10676 BEGIN_INTERFACE 10677 10678 /*** IUnknown methods ***/ 10679 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 10680 IAMPluginControl* This, 10681 REFIID riid, 10682 void **ppvObject); 10683 10684 ULONG (STDMETHODCALLTYPE *AddRef)( 10685 IAMPluginControl* This); 10686 10687 ULONG (STDMETHODCALLTYPE *Release)( 10688 IAMPluginControl* This); 10689 10690 /*** IAMPluginControl methods ***/ 10691 HRESULT (STDMETHODCALLTYPE *GetPreferredClsid)( 10692 IAMPluginControl* This, 10693 REFGUID subType, 10694 CLSID *clsid); 10695 10696 HRESULT (STDMETHODCALLTYPE *GetPreferredClsidByIndex)( 10697 IAMPluginControl* This, 10698 DWORD index, 10699 GUID *subType, 10700 CLSID *clsid); 10701 10702 HRESULT (STDMETHODCALLTYPE *SetPreferredClsid)( 10703 IAMPluginControl* This, 10704 REFGUID subType, 10705 const CLSID *clsid); 10706 10707 HRESULT (STDMETHODCALLTYPE *IsDisabled)( 10708 IAMPluginControl* This, 10709 REFCLSID clsid); 10710 10711 HRESULT (STDMETHODCALLTYPE *GetDisabledByIndex)( 10712 IAMPluginControl* This, 10713 DWORD index, 10714 CLSID *clsid); 10715 10716 HRESULT (STDMETHODCALLTYPE *SetDisabled)( 10717 IAMPluginControl* This, 10718 REFCLSID clsid, 10719 WINBOOL disabled); 10720 10721 HRESULT (STDMETHODCALLTYPE *IsLegacyDisabled)( 10722 IAMPluginControl* This, 10723 LPCWSTR dllName); 10724 10725 END_INTERFACE 10726 } IAMPluginControlVtbl; 10727 interface IAMPluginControl { 10728 CONST_VTBL IAMPluginControlVtbl* lpVtbl; 10729 }; 10730 10731 #ifdef COBJMACROS 10732 #ifndef WIDL_C_INLINE_WRAPPERS 10733 /*** IUnknown methods ***/ 10734 #define IAMPluginControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 10735 #define IAMPluginControl_AddRef(This) (This)->lpVtbl->AddRef(This) 10736 #define IAMPluginControl_Release(This) (This)->lpVtbl->Release(This) 10737 /*** IAMPluginControl methods ***/ 10738 #define IAMPluginControl_GetPreferredClsid(This,subType,clsid) (This)->lpVtbl->GetPreferredClsid(This,subType,clsid) 10739 #define IAMPluginControl_GetPreferredClsidByIndex(This,index,subType,clsid) (This)->lpVtbl->GetPreferredClsidByIndex(This,index,subType,clsid) 10740 #define IAMPluginControl_SetPreferredClsid(This,subType,clsid) (This)->lpVtbl->SetPreferredClsid(This,subType,clsid) 10741 #define IAMPluginControl_IsDisabled(This,clsid) (This)->lpVtbl->IsDisabled(This,clsid) 10742 #define IAMPluginControl_GetDisabledByIndex(This,index,clsid) (This)->lpVtbl->GetDisabledByIndex(This,index,clsid) 10743 #define IAMPluginControl_SetDisabled(This,clsid,disabled) (This)->lpVtbl->SetDisabled(This,clsid,disabled) 10744 #define IAMPluginControl_IsLegacyDisabled(This,dllName) (This)->lpVtbl->IsLegacyDisabled(This,dllName) 10745 #else 10746 /*** IUnknown methods ***/ 10747 static FORCEINLINE HRESULT IAMPluginControl_QueryInterface(IAMPluginControl* This,REFIID riid,void **ppvObject) { 10748 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 10749 } 10750 static FORCEINLINE ULONG IAMPluginControl_AddRef(IAMPluginControl* This) { 10751 return This->lpVtbl->AddRef(This); 10752 } 10753 static FORCEINLINE ULONG IAMPluginControl_Release(IAMPluginControl* This) { 10754 return This->lpVtbl->Release(This); 10755 } 10756 /*** IAMPluginControl methods ***/ 10757 static FORCEINLINE HRESULT IAMPluginControl_GetPreferredClsid(IAMPluginControl* This,REFGUID subType,CLSID *clsid) { 10758 return This->lpVtbl->GetPreferredClsid(This,subType,clsid); 10759 } 10760 static FORCEINLINE HRESULT IAMPluginControl_GetPreferredClsidByIndex(IAMPluginControl* This,DWORD index,GUID *subType,CLSID *clsid) { 10761 return This->lpVtbl->GetPreferredClsidByIndex(This,index,subType,clsid); 10762 } 10763 static FORCEINLINE HRESULT IAMPluginControl_SetPreferredClsid(IAMPluginControl* This,REFGUID subType,const CLSID *clsid) { 10764 return This->lpVtbl->SetPreferredClsid(This,subType,clsid); 10765 } 10766 static FORCEINLINE HRESULT IAMPluginControl_IsDisabled(IAMPluginControl* This,REFCLSID clsid) { 10767 return This->lpVtbl->IsDisabled(This,clsid); 10768 } 10769 static FORCEINLINE HRESULT IAMPluginControl_GetDisabledByIndex(IAMPluginControl* This,DWORD index,CLSID *clsid) { 10770 return This->lpVtbl->GetDisabledByIndex(This,index,clsid); 10771 } 10772 static FORCEINLINE HRESULT IAMPluginControl_SetDisabled(IAMPluginControl* This,REFCLSID clsid,WINBOOL disabled) { 10773 return This->lpVtbl->SetDisabled(This,clsid,disabled); 10774 } 10775 static FORCEINLINE HRESULT IAMPluginControl_IsLegacyDisabled(IAMPluginControl* This,LPCWSTR dllName) { 10776 return This->lpVtbl->IsLegacyDisabled(This,dllName); 10777 } 10778 #endif 10779 #endif 10780 10781 #endif 10782 10783 HRESULT STDMETHODCALLTYPE IAMPluginControl_GetPreferredClsid_Proxy( 10784 IAMPluginControl* This, 10785 REFGUID subType, 10786 CLSID *clsid); 10787 void __RPC_STUB IAMPluginControl_GetPreferredClsid_Stub( 10788 IRpcStubBuffer* This, 10789 IRpcChannelBuffer* pRpcChannelBuffer, 10790 PRPC_MESSAGE pRpcMessage, 10791 DWORD* pdwStubPhase); 10792 HRESULT STDMETHODCALLTYPE IAMPluginControl_GetPreferredClsidByIndex_Proxy( 10793 IAMPluginControl* This, 10794 DWORD index, 10795 GUID *subType, 10796 CLSID *clsid); 10797 void __RPC_STUB IAMPluginControl_GetPreferredClsidByIndex_Stub( 10798 IRpcStubBuffer* This, 10799 IRpcChannelBuffer* pRpcChannelBuffer, 10800 PRPC_MESSAGE pRpcMessage, 10801 DWORD* pdwStubPhase); 10802 HRESULT STDMETHODCALLTYPE IAMPluginControl_SetPreferredClsid_Proxy( 10803 IAMPluginControl* This, 10804 REFGUID subType, 10805 const CLSID *clsid); 10806 void __RPC_STUB IAMPluginControl_SetPreferredClsid_Stub( 10807 IRpcStubBuffer* This, 10808 IRpcChannelBuffer* pRpcChannelBuffer, 10809 PRPC_MESSAGE pRpcMessage, 10810 DWORD* pdwStubPhase); 10811 HRESULT STDMETHODCALLTYPE IAMPluginControl_IsDisabled_Proxy( 10812 IAMPluginControl* This, 10813 REFCLSID clsid); 10814 void __RPC_STUB IAMPluginControl_IsDisabled_Stub( 10815 IRpcStubBuffer* This, 10816 IRpcChannelBuffer* pRpcChannelBuffer, 10817 PRPC_MESSAGE pRpcMessage, 10818 DWORD* pdwStubPhase); 10819 HRESULT STDMETHODCALLTYPE IAMPluginControl_GetDisabledByIndex_Proxy( 10820 IAMPluginControl* This, 10821 DWORD index, 10822 CLSID *clsid); 10823 void __RPC_STUB IAMPluginControl_GetDisabledByIndex_Stub( 10824 IRpcStubBuffer* This, 10825 IRpcChannelBuffer* pRpcChannelBuffer, 10826 PRPC_MESSAGE pRpcMessage, 10827 DWORD* pdwStubPhase); 10828 HRESULT STDMETHODCALLTYPE IAMPluginControl_SetDisabled_Proxy( 10829 IAMPluginControl* This, 10830 REFCLSID clsid, 10831 WINBOOL disabled); 10832 void __RPC_STUB IAMPluginControl_SetDisabled_Stub( 10833 IRpcStubBuffer* This, 10834 IRpcChannelBuffer* pRpcChannelBuffer, 10835 PRPC_MESSAGE pRpcMessage, 10836 DWORD* pdwStubPhase); 10837 HRESULT STDMETHODCALLTYPE IAMPluginControl_IsLegacyDisabled_Proxy( 10838 IAMPluginControl* This, 10839 LPCWSTR dllName); 10840 void __RPC_STUB IAMPluginControl_IsLegacyDisabled_Stub( 10841 IRpcStubBuffer* This, 10842 IRpcChannelBuffer* pRpcChannelBuffer, 10843 PRPC_MESSAGE pRpcMessage, 10844 DWORD* pdwStubPhase); 10845 10846 #endif /* __IAMPluginControl_INTERFACE_DEFINED__ */ 10847 10848 #endif /*(_WIN32_WINNT >= 0x0601)*/ 10849 #ifndef __IReferenceClock2_FWD_DEFINED__ 10850 #define __IReferenceClock2_FWD_DEFINED__ 10851 typedef struct IReferenceClock2 IReferenceClock2; 10852 #endif 10853 #ifndef __IDistributorNotify_FWD_DEFINED__ 10854 #define __IDistributorNotify_FWD_DEFINED__ 10855 typedef struct IDistributorNotify IDistributorNotify; 10856 #endif 10857 10858 #ifndef __IAMVideoCompression_FWD_DEFINED__ 10859 #define __IAMVideoCompression_FWD_DEFINED__ 10860 typedef struct IAMVideoCompression IAMVideoCompression; 10861 #endif 10862 10863 #ifndef __IAMVfwCompressDialogs_FWD_DEFINED__ 10864 #define __IAMVfwCompressDialogs_FWD_DEFINED__ 10865 typedef struct IAMVfwCompressDialogs IAMVfwCompressDialogs; 10866 #endif 10867 10868 #ifndef __IAMDroppedFrames_FWD_DEFINED__ 10869 #define __IAMDroppedFrames_FWD_DEFINED__ 10870 typedef struct IAMDroppedFrames IAMDroppedFrames; 10871 #endif 10872 10873 #ifndef __IAMAudioInputMixer_FWD_DEFINED__ 10874 #define __IAMAudioInputMixer_FWD_DEFINED__ 10875 typedef struct IAMAudioInputMixer IAMAudioInputMixer; 10876 #endif 10877 10878 #ifndef __IAMBufferNegotiation_FWD_DEFINED__ 10879 #define __IAMBufferNegotiation_FWD_DEFINED__ 10880 typedef struct IAMBufferNegotiation IAMBufferNegotiation; 10881 #endif 10882 10883 #ifndef __IAMAnalogVideoDecoder_FWD_DEFINED__ 10884 #define __IAMAnalogVideoDecoder_FWD_DEFINED__ 10885 typedef struct IAMAnalogVideoDecoder IAMAnalogVideoDecoder; 10886 #endif 10887 10888 #ifndef __IAMCameraControl_FWD_DEFINED__ 10889 #define __IAMCameraControl_FWD_DEFINED__ 10890 typedef struct IAMCameraControl IAMCameraControl; 10891 #endif 10892 10893 #ifndef __IAMVideoControl_FWD_DEFINED__ 10894 #define __IAMVideoControl_FWD_DEFINED__ 10895 typedef struct IAMVideoControl IAMVideoControl; 10896 #endif 10897 10898 #ifndef __IAMCrossbar_FWD_DEFINED__ 10899 #define __IAMCrossbar_FWD_DEFINED__ 10900 typedef struct IAMCrossbar IAMCrossbar; 10901 #endif 10902 10903 #ifndef __IAMTuner_FWD_DEFINED__ 10904 #define __IAMTuner_FWD_DEFINED__ 10905 typedef struct IAMTuner IAMTuner; 10906 #endif 10907 10908 #ifndef __IAMTunerNotification_FWD_DEFINED__ 10909 #define __IAMTunerNotification_FWD_DEFINED__ 10910 typedef struct IAMTunerNotification IAMTunerNotification; 10911 #endif 10912 10913 #ifndef __IAMTVTuner_FWD_DEFINED__ 10914 #define __IAMTVTuner_FWD_DEFINED__ 10915 typedef struct IAMTVTuner IAMTVTuner; 10916 #endif 10917 10918 #ifndef __IBPCSatelliteTuner_FWD_DEFINED__ 10919 #define __IBPCSatelliteTuner_FWD_DEFINED__ 10920 typedef struct IBPCSatelliteTuner IBPCSatelliteTuner; 10921 #endif 10922 10923 #ifndef __IAMTVAudio_FWD_DEFINED__ 10924 #define __IAMTVAudio_FWD_DEFINED__ 10925 typedef struct IAMTVAudio IAMTVAudio; 10926 #endif 10927 10928 #ifndef __IAMTVAudioNotification_FWD_DEFINED__ 10929 #define __IAMTVAudioNotification_FWD_DEFINED__ 10930 typedef struct IAMTVAudioNotification IAMTVAudioNotification; 10931 #endif 10932 10933 #ifndef __IAMAnalogVideoEncoder_FWD_DEFINED__ 10934 #define __IAMAnalogVideoEncoder_FWD_DEFINED__ 10935 typedef struct IAMAnalogVideoEncoder IAMAnalogVideoEncoder; 10936 #endif 10937 10938 #ifndef __IAMPhysicalPinInfo_FWD_DEFINED__ 10939 #define __IAMPhysicalPinInfo_FWD_DEFINED__ 10940 typedef struct IAMPhysicalPinInfo IAMPhysicalPinInfo; 10941 #endif 10942 10943 #ifndef __IAMExtDevice_FWD_DEFINED__ 10944 #define __IAMExtDevice_FWD_DEFINED__ 10945 typedef struct IAMExtDevice IAMExtDevice; 10946 #endif 10947 10948 #ifndef __IAMExtTransport_FWD_DEFINED__ 10949 #define __IAMExtTransport_FWD_DEFINED__ 10950 typedef struct IAMExtTransport IAMExtTransport; 10951 #endif 10952 10953 #ifndef __IAMTimecodeReader_FWD_DEFINED__ 10954 #define __IAMTimecodeReader_FWD_DEFINED__ 10955 typedef struct IAMTimecodeReader IAMTimecodeReader; 10956 #endif 10957 10958 #ifndef __IAMTimecodeGenerator_FWD_DEFINED__ 10959 #define __IAMTimecodeGenerator_FWD_DEFINED__ 10960 typedef struct IAMTimecodeGenerator IAMTimecodeGenerator; 10961 #endif 10962 10963 #ifndef __IAMTimecodeDisplay_FWD_DEFINED__ 10964 #define __IAMTimecodeDisplay_FWD_DEFINED__ 10965 typedef struct IAMTimecodeDisplay IAMTimecodeDisplay; 10966 #endif 10967 10968 #ifndef __IAMDevMemoryAllocator_FWD_DEFINED__ 10969 #define __IAMDevMemoryAllocator_FWD_DEFINED__ 10970 typedef struct IAMDevMemoryAllocator IAMDevMemoryAllocator; 10971 #endif 10972 10973 #ifndef __IAMDevMemoryControl_FWD_DEFINED__ 10974 #define __IAMDevMemoryControl_FWD_DEFINED__ 10975 typedef struct IAMDevMemoryControl IAMDevMemoryControl; 10976 #endif 10977 10978 #ifndef __IAMStreamSelect_FWD_DEFINED__ 10979 #define __IAMStreamSelect_FWD_DEFINED__ 10980 typedef struct IAMStreamSelect IAMStreamSelect; 10981 #endif 10982 10983 #ifndef __IAMResourceControl_FWD_DEFINED__ 10984 #define __IAMResourceControl_FWD_DEFINED__ 10985 typedef struct IAMResourceControl IAMResourceControl; 10986 #endif 10987 10988 #ifndef __IAMClockAdjust_FWD_DEFINED__ 10989 #define __IAMClockAdjust_FWD_DEFINED__ 10990 typedef struct IAMClockAdjust IAMClockAdjust; 10991 #endif 10992 10993 #ifndef __IDrawVideoImage_FWD_DEFINED__ 10994 #define __IDrawVideoImage_FWD_DEFINED__ 10995 typedef struct IDrawVideoImage IDrawVideoImage; 10996 #endif 10997 10998 #ifndef __IDecimateVideoImage_FWD_DEFINED__ 10999 #define __IDecimateVideoImage_FWD_DEFINED__ 11000 typedef struct IDecimateVideoImage IDecimateVideoImage; 11001 #endif 11002 11003 #ifndef __IAMVideoDecimationProperties_FWD_DEFINED__ 11004 #define __IAMVideoDecimationProperties_FWD_DEFINED__ 11005 typedef struct IAMVideoDecimationProperties IAMVideoDecimationProperties; 11006 #endif 11007 11008 #ifndef __IVideoFrameStep_FWD_DEFINED__ 11009 #define __IVideoFrameStep_FWD_DEFINED__ 11010 typedef struct IVideoFrameStep IVideoFrameStep; 11011 #endif 11012 11013 #ifndef __IAMLatency_FWD_DEFINED__ 11014 #define __IAMLatency_FWD_DEFINED__ 11015 typedef struct IAMLatency IAMLatency; 11016 #endif 11017 11018 #ifndef __IAMPushSource_FWD_DEFINED__ 11019 #define __IAMPushSource_FWD_DEFINED__ 11020 typedef struct IAMPushSource IAMPushSource; 11021 #endif 11022 11023 #ifndef __IAMDeviceRemoval_FWD_DEFINED__ 11024 #define __IAMDeviceRemoval_FWD_DEFINED__ 11025 typedef struct IAMDeviceRemoval IAMDeviceRemoval; 11026 #endif 11027 11028 #ifndef __IDVEnc_FWD_DEFINED__ 11029 #define __IDVEnc_FWD_DEFINED__ 11030 typedef struct IDVEnc IDVEnc; 11031 #endif 11032 11033 #ifndef __IIPDVDec_FWD_DEFINED__ 11034 #define __IIPDVDec_FWD_DEFINED__ 11035 typedef struct IIPDVDec IIPDVDec; 11036 #endif 11037 11038 #ifndef __IDVRGB219_FWD_DEFINED__ 11039 #define __IDVRGB219_FWD_DEFINED__ 11040 typedef struct IDVRGB219 IDVRGB219; 11041 #endif 11042 11043 #ifndef __IDVSplitter_FWD_DEFINED__ 11044 #define __IDVSplitter_FWD_DEFINED__ 11045 typedef struct IDVSplitter IDVSplitter; 11046 #endif 11047 11048 #ifndef __IAMAudioRendererStats_FWD_DEFINED__ 11049 #define __IAMAudioRendererStats_FWD_DEFINED__ 11050 typedef struct IAMAudioRendererStats IAMAudioRendererStats; 11051 #endif 11052 11053 #ifndef __IAMGraphStreams_FWD_DEFINED__ 11054 #define __IAMGraphStreams_FWD_DEFINED__ 11055 typedef struct IAMGraphStreams IAMGraphStreams; 11056 #endif 11057 11058 #ifndef __IAMOverlayFX_FWD_DEFINED__ 11059 #define __IAMOverlayFX_FWD_DEFINED__ 11060 typedef struct IAMOverlayFX IAMOverlayFX; 11061 #endif 11062 11063 #ifndef __IAMOpenProgress_FWD_DEFINED__ 11064 #define __IAMOpenProgress_FWD_DEFINED__ 11065 typedef struct IAMOpenProgress IAMOpenProgress; 11066 #endif 11067 11068 #ifndef __IMpeg2Demultiplexer_FWD_DEFINED__ 11069 #define __IMpeg2Demultiplexer_FWD_DEFINED__ 11070 typedef struct IMpeg2Demultiplexer IMpeg2Demultiplexer; 11071 #endif 11072 11073 #ifndef __IEnumStreamIdMap_FWD_DEFINED__ 11074 #define __IEnumStreamIdMap_FWD_DEFINED__ 11075 typedef struct IEnumStreamIdMap IEnumStreamIdMap; 11076 #endif 11077 11078 #ifndef __IMPEG2StreamIdMap_FWD_DEFINED__ 11079 #define __IMPEG2StreamIdMap_FWD_DEFINED__ 11080 typedef struct IMPEG2StreamIdMap IMPEG2StreamIdMap; 11081 #endif 11082 11083 #ifndef __IRegisterServiceProvider_FWD_DEFINED__ 11084 #define __IRegisterServiceProvider_FWD_DEFINED__ 11085 typedef struct IRegisterServiceProvider IRegisterServiceProvider; 11086 #endif 11087 11088 #ifndef __ICodecAPI_FWD_DEFINED__ 11089 #define __ICodecAPI_FWD_DEFINED__ 11090 typedef struct ICodecAPI ICodecAPI; 11091 #endif 11092 11093 #ifndef __IGetCapabilitiesKey_FWD_DEFINED__ 11094 #define __IGetCapabilitiesKey_FWD_DEFINED__ 11095 typedef struct IGetCapabilitiesKey IGetCapabilitiesKey; 11096 #endif 11097 11098 #ifndef __IEncoderAPI_FWD_DEFINED__ 11099 #define __IEncoderAPI_FWD_DEFINED__ 11100 typedef struct IEncoderAPI IEncoderAPI; 11101 #endif 11102 11103 #ifndef __IVideoEncoder_FWD_DEFINED__ 11104 #define __IVideoEncoder_FWD_DEFINED__ 11105 typedef struct IVideoEncoder IVideoEncoder; 11106 #endif 11107 11108 #ifndef __IAMDecoderCaps_FWD_DEFINED__ 11109 #define __IAMDecoderCaps_FWD_DEFINED__ 11110 typedef struct IAMDecoderCaps IAMDecoderCaps; 11111 #endif 11112 11113 #ifndef __IDvdControl_FWD_DEFINED__ 11114 #define __IDvdControl_FWD_DEFINED__ 11115 typedef struct IDvdControl IDvdControl; 11116 #endif 11117 11118 #ifndef __IDvdInfo_FWD_DEFINED__ 11119 #define __IDvdInfo_FWD_DEFINED__ 11120 typedef struct IDvdInfo IDvdInfo; 11121 #endif 11122 11123 #ifndef __IDvdCmd_FWD_DEFINED__ 11124 #define __IDvdCmd_FWD_DEFINED__ 11125 typedef struct IDvdCmd IDvdCmd; 11126 #endif 11127 11128 #ifndef __IDvdState_FWD_DEFINED__ 11129 #define __IDvdState_FWD_DEFINED__ 11130 typedef struct IDvdState IDvdState; 11131 #endif 11132 11133 #ifndef __IDvdControl2_FWD_DEFINED__ 11134 #define __IDvdControl2_FWD_DEFINED__ 11135 typedef struct IDvdControl2 IDvdControl2; 11136 #endif 11137 11138 #ifndef __IDvdInfo2_FWD_DEFINED__ 11139 #define __IDvdInfo2_FWD_DEFINED__ 11140 typedef struct IDvdInfo2 IDvdInfo2; 11141 #endif 11142 11143 #ifndef __IDvdGraphBuilder_FWD_DEFINED__ 11144 #define __IDvdGraphBuilder_FWD_DEFINED__ 11145 typedef struct IDvdGraphBuilder IDvdGraphBuilder; 11146 #endif 11147 11148 #ifndef __IDDrawExclModeVideo_FWD_DEFINED__ 11149 #define __IDDrawExclModeVideo_FWD_DEFINED__ 11150 typedef struct IDDrawExclModeVideo IDDrawExclModeVideo; 11151 #endif 11152 11153 #ifndef __IDDrawExclModeVideoCallback_FWD_DEFINED__ 11154 #define __IDDrawExclModeVideoCallback_FWD_DEFINED__ 11155 typedef struct IDDrawExclModeVideoCallback IDDrawExclModeVideoCallback; 11156 #endif 11157 11158 #ifndef __IPinConnection_FWD_DEFINED__ 11159 #define __IPinConnection_FWD_DEFINED__ 11160 typedef struct IPinConnection IPinConnection; 11161 #endif 11162 11163 #ifndef __IPinFlowControl_FWD_DEFINED__ 11164 #define __IPinFlowControl_FWD_DEFINED__ 11165 typedef struct IPinFlowControl IPinFlowControl; 11166 #endif 11167 11168 #ifndef __IGraphConfig_FWD_DEFINED__ 11169 #define __IGraphConfig_FWD_DEFINED__ 11170 typedef struct IGraphConfig IGraphConfig; 11171 #endif 11172 11173 #ifndef __IGraphConfigCallback_FWD_DEFINED__ 11174 #define __IGraphConfigCallback_FWD_DEFINED__ 11175 typedef struct IGraphConfigCallback IGraphConfigCallback; 11176 #endif 11177 11178 #ifndef __IFilterChain_FWD_DEFINED__ 11179 #define __IFilterChain_FWD_DEFINED__ 11180 typedef struct IFilterChain IFilterChain; 11181 #endif 11182 11183 #ifndef __IVMRImagePresenter_FWD_DEFINED__ 11184 #define __IVMRImagePresenter_FWD_DEFINED__ 11185 typedef struct IVMRImagePresenter IVMRImagePresenter; 11186 #endif 11187 11188 #ifndef __IVMRSurfaceAllocator_FWD_DEFINED__ 11189 #define __IVMRSurfaceAllocator_FWD_DEFINED__ 11190 typedef struct IVMRSurfaceAllocator IVMRSurfaceAllocator; 11191 #endif 11192 11193 #ifndef __IVMRSurfaceAllocatorNotify_FWD_DEFINED__ 11194 #define __IVMRSurfaceAllocatorNotify_FWD_DEFINED__ 11195 typedef struct IVMRSurfaceAllocatorNotify IVMRSurfaceAllocatorNotify; 11196 #endif 11197 11198 #ifndef __IVMRWindowlessControl_FWD_DEFINED__ 11199 #define __IVMRWindowlessControl_FWD_DEFINED__ 11200 typedef struct IVMRWindowlessControl IVMRWindowlessControl; 11201 #endif 11202 11203 #ifndef __IVMRMixerControl_FWD_DEFINED__ 11204 #define __IVMRMixerControl_FWD_DEFINED__ 11205 typedef struct IVMRMixerControl IVMRMixerControl; 11206 #endif 11207 11208 #ifndef __IVMRMonitorConfig_FWD_DEFINED__ 11209 #define __IVMRMonitorConfig_FWD_DEFINED__ 11210 typedef struct IVMRMonitorConfig IVMRMonitorConfig; 11211 #endif 11212 11213 #ifndef __IVMRFilterConfig_FWD_DEFINED__ 11214 #define __IVMRFilterConfig_FWD_DEFINED__ 11215 typedef struct IVMRFilterConfig IVMRFilterConfig; 11216 #endif 11217 11218 #ifndef __IVMRAspectRatioControl_FWD_DEFINED__ 11219 #define __IVMRAspectRatioControl_FWD_DEFINED__ 11220 typedef struct IVMRAspectRatioControl IVMRAspectRatioControl; 11221 #endif 11222 11223 #ifndef __IVMRDeinterlaceControl_FWD_DEFINED__ 11224 #define __IVMRDeinterlaceControl_FWD_DEFINED__ 11225 typedef struct IVMRDeinterlaceControl IVMRDeinterlaceControl; 11226 #endif 11227 11228 #ifndef __IVMRMixerBitmap_FWD_DEFINED__ 11229 #define __IVMRMixerBitmap_FWD_DEFINED__ 11230 typedef struct IVMRMixerBitmap IVMRMixerBitmap; 11231 #endif 11232 11233 #ifndef __IVMRImageCompositor_FWD_DEFINED__ 11234 #define __IVMRImageCompositor_FWD_DEFINED__ 11235 typedef struct IVMRImageCompositor IVMRImageCompositor; 11236 #endif 11237 11238 #ifndef __IVMRVideoStreamControl_FWD_DEFINED__ 11239 #define __IVMRVideoStreamControl_FWD_DEFINED__ 11240 typedef struct IVMRVideoStreamControl IVMRVideoStreamControl; 11241 #endif 11242 11243 #ifndef __IVMRSurface_FWD_DEFINED__ 11244 #define __IVMRSurface_FWD_DEFINED__ 11245 typedef struct IVMRSurface IVMRSurface; 11246 #endif 11247 11248 #ifndef __IVMRImagePresenterConfig_FWD_DEFINED__ 11249 #define __IVMRImagePresenterConfig_FWD_DEFINED__ 11250 typedef struct IVMRImagePresenterConfig IVMRImagePresenterConfig; 11251 #endif 11252 11253 #ifndef __IVMRImagePresenterExclModeConfig_FWD_DEFINED__ 11254 #define __IVMRImagePresenterExclModeConfig_FWD_DEFINED__ 11255 typedef struct IVMRImagePresenterExclModeConfig IVMRImagePresenterExclModeConfig; 11256 #endif 11257 11258 #ifndef __IVPManager_FWD_DEFINED__ 11259 #define __IVPManager_FWD_DEFINED__ 11260 typedef struct IVPManager IVPManager; 11261 #endif 11262 11263 #ifndef __IAMAsyncReaderTimestampScaling_FWD_DEFINED__ 11264 #define __IAMAsyncReaderTimestampScaling_FWD_DEFINED__ 11265 typedef struct IAMAsyncReaderTimestampScaling IAMAsyncReaderTimestampScaling; 11266 #endif 11267 11268 #ifndef __IAMPluginControl_FWD_DEFINED__ 11269 #define __IAMPluginControl_FWD_DEFINED__ 11270 typedef struct IAMPluginControl IAMPluginControl; 11271 #endif 11272 11273 #include "ocidl.h" 11274 11275 extern RPC_IF_HANDLE __MIDL_itf_strmif_0125_v0_0_c_ifspec; 11276 extern RPC_IF_HANDLE __MIDL_itf_strmif_0125_v0_0_s_ifspec; 11277 #ifndef __IReferenceClock2_INTERFACE_DEFINED__ 11278 #define __IReferenceClock2_INTERFACE_DEFINED__ 11279 EXTERN_C const IID IID_IReferenceClock2; 11280 #if defined(__cplusplus) && !defined(CINTERFACE) 11281 struct IReferenceClock2 : public IReferenceClock { 11282 }; 11283 #else 11284 typedef struct IReferenceClock2Vtbl { 11285 BEGIN_INTERFACE 11286 HRESULT (WINAPI *QueryInterface)(IReferenceClock2 *This,REFIID riid,void **ppvObject); 11287 ULONG (WINAPI *AddRef)(IReferenceClock2 *This); 11288 ULONG (WINAPI *Release)(IReferenceClock2 *This); 11289 HRESULT (WINAPI *GetTime)(IReferenceClock2 *This,REFERENCE_TIME *pTime); 11290 HRESULT (WINAPI *AdviseTime)(IReferenceClock2 *This,REFERENCE_TIME baseTime,REFERENCE_TIME streamTime,HEVENT hEvent,DWORD_PTR *pdwAdviseCookie); 11291 HRESULT (WINAPI *AdvisePeriodic)(IReferenceClock2 *This,REFERENCE_TIME startTime,REFERENCE_TIME periodTime,HSEMAPHORE hSemaphore,DWORD_PTR *pdwAdviseCookie); 11292 HRESULT (WINAPI *Unadvise)(IReferenceClock2 *This,DWORD_PTR dwAdviseCookie); 11293 END_INTERFACE 11294 } IReferenceClock2Vtbl; 11295 struct IReferenceClock2 { 11296 CONST_VTBL struct IReferenceClock2Vtbl *lpVtbl; 11297 }; 11298 #ifdef COBJMACROS 11299 #define IReferenceClock2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 11300 #define IReferenceClock2_AddRef(This) (This)->lpVtbl->AddRef(This) 11301 #define IReferenceClock2_Release(This) (This)->lpVtbl->Release(This) 11302 #define IReferenceClock2_GetTime(This,pTime) (This)->lpVtbl->GetTime(This,pTime) 11303 #define IReferenceClock2_AdviseTime(This,baseTime,streamTime,hEvent,pdwAdviseCookie) (This)->lpVtbl->AdviseTime(This,baseTime,streamTime,hEvent,pdwAdviseCookie) 11304 #define IReferenceClock2_AdvisePeriodic(This,startTime,periodTime,hSemaphore,pdwAdviseCookie) (This)->lpVtbl->AdvisePeriodic(This,startTime,periodTime,hSemaphore,pdwAdviseCookie) 11305 #define IReferenceClock2_Unadvise(This,dwAdviseCookie) (This)->lpVtbl->Unadvise(This,dwAdviseCookie) 11306 #endif 11307 #endif 11308 #endif 11309 11310 typedef IReferenceClock2 *PREFERENCECLOCK2; 11311 11312 #ifndef __IDistributorNotify_INTERFACE_DEFINED__ 11313 #define __IDistributorNotify_INTERFACE_DEFINED__ 11314 EXTERN_C const IID IID_IDistributorNotify; 11315 #if defined(__cplusplus) && !defined(CINTERFACE) 11316 struct IDistributorNotify : public IUnknown { 11317 public: 11318 virtual HRESULT WINAPI Stop(void) = 0; 11319 virtual HRESULT WINAPI Pause(void) = 0; 11320 virtual HRESULT WINAPI Run(REFERENCE_TIME tStart) = 0; 11321 virtual HRESULT WINAPI SetSyncSource(IReferenceClock *pClock) = 0; 11322 virtual HRESULT WINAPI NotifyGraphChange(void) = 0; 11323 }; 11324 #else 11325 typedef struct IDistributorNotifyVtbl { 11326 BEGIN_INTERFACE 11327 HRESULT (WINAPI *QueryInterface)(IDistributorNotify *This,REFIID riid,void **ppvObject); 11328 ULONG (WINAPI *AddRef)(IDistributorNotify *This); 11329 ULONG (WINAPI *Release)(IDistributorNotify *This); 11330 HRESULT (WINAPI *Stop)(IDistributorNotify *This); 11331 HRESULT (WINAPI *Pause)(IDistributorNotify *This); 11332 HRESULT (WINAPI *Run)(IDistributorNotify *This,REFERENCE_TIME tStart); 11333 HRESULT (WINAPI *SetSyncSource)(IDistributorNotify *This,IReferenceClock *pClock); 11334 HRESULT (WINAPI *NotifyGraphChange)(IDistributorNotify *This); 11335 END_INTERFACE 11336 } IDistributorNotifyVtbl; 11337 struct IDistributorNotify { 11338 CONST_VTBL struct IDistributorNotifyVtbl *lpVtbl; 11339 }; 11340 #ifdef COBJMACROS 11341 #define IDistributorNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 11342 #define IDistributorNotify_AddRef(This) (This)->lpVtbl->AddRef(This) 11343 #define IDistributorNotify_Release(This) (This)->lpVtbl->Release(This) 11344 #define IDistributorNotify_Stop(This) (This)->lpVtbl->Stop(This) 11345 #define IDistributorNotify_Pause(This) (This)->lpVtbl->Pause(This) 11346 #define IDistributorNotify_Run(This,tStart) (This)->lpVtbl->Run(This,tStart) 11347 #define IDistributorNotify_SetSyncSource(This,pClock) (This)->lpVtbl->SetSyncSource(This,pClock) 11348 #define IDistributorNotify_NotifyGraphChange(This) (This)->lpVtbl->NotifyGraphChange(This) 11349 #endif 11350 #endif 11351 HRESULT WINAPI IDistributorNotify_Stop_Proxy(IDistributorNotify *This); 11352 void __RPC_STUB IDistributorNotify_Stop_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11353 HRESULT WINAPI IDistributorNotify_Pause_Proxy(IDistributorNotify *This); 11354 void __RPC_STUB IDistributorNotify_Pause_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11355 HRESULT WINAPI IDistributorNotify_Run_Proxy(IDistributorNotify *This,REFERENCE_TIME tStart); 11356 void __RPC_STUB IDistributorNotify_Run_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11357 HRESULT WINAPI IDistributorNotify_SetSyncSource_Proxy(IDistributorNotify *This,IReferenceClock *pClock); 11358 void __RPC_STUB IDistributorNotify_SetSyncSource_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11359 HRESULT WINAPI IDistributorNotify_NotifyGraphChange_Proxy(IDistributorNotify *This); 11360 void __RPC_STUB IDistributorNotify_NotifyGraphChange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11361 #endif 11362 11363 typedef enum __MIDL___MIDL_itf_strmif_0167_0001 { 11364 CompressionCaps_CanQuality = 0x1,CompressionCaps_CanCrunch = 0x2,CompressionCaps_CanKeyFrame = 0x4,CompressionCaps_CanBFrame = 0x8, 11365 CompressionCaps_CanWindow = 0x10 11366 } CompressionCaps; 11367 11368 extern RPC_IF_HANDLE __MIDL_itf_strmif_0167_v0_0_c_ifspec; 11369 extern RPC_IF_HANDLE __MIDL_itf_strmif_0167_v0_0_s_ifspec; 11370 #ifndef __IAMVideoCompression_INTERFACE_DEFINED__ 11371 #define __IAMVideoCompression_INTERFACE_DEFINED__ 11372 EXTERN_C const IID IID_IAMVideoCompression; 11373 #if defined(__cplusplus) && !defined(CINTERFACE) 11374 struct IAMVideoCompression : public IUnknown { 11375 public: 11376 virtual HRESULT WINAPI put_KeyFrameRate(LONG KeyFrameRate) = 0; 11377 virtual HRESULT WINAPI get_KeyFrameRate(LONG *pKeyFrameRate) = 0; 11378 virtual HRESULT WINAPI put_PFramesPerKeyFrame(LONG PFramesPerKeyFrame) = 0; 11379 virtual HRESULT WINAPI get_PFramesPerKeyFrame(LONG *pPFramesPerKeyFrame) = 0; 11380 virtual HRESULT WINAPI put_Quality(double Quality) = 0; 11381 virtual HRESULT WINAPI get_Quality(double *pQuality) = 0; 11382 virtual HRESULT WINAPI put_WindowSize(DWORDLONG WindowSize) = 0; 11383 virtual HRESULT WINAPI get_WindowSize(DWORDLONG *pWindowSize) = 0; 11384 virtual HRESULT WINAPI GetInfo(WCHAR *pszVersion,int *pcbVersion,LPWSTR pszDescription,int *pcbDescription,LONG *pDefaultKeyFrameRate,LONG *pDefaultPFramesPerKey,double *pDefaultQuality,LONG *pCapabilities) = 0; 11385 virtual HRESULT WINAPI OverrideKeyFrame(LONG FrameNumber) = 0; 11386 virtual HRESULT WINAPI OverrideFrameSize(LONG FrameNumber,LONG Size) = 0; 11387 }; 11388 #else 11389 typedef struct IAMVideoCompressionVtbl { 11390 BEGIN_INTERFACE 11391 HRESULT (WINAPI *QueryInterface)(IAMVideoCompression *This,REFIID riid,void **ppvObject); 11392 ULONG (WINAPI *AddRef)(IAMVideoCompression *This); 11393 ULONG (WINAPI *Release)(IAMVideoCompression *This); 11394 HRESULT (WINAPI *put_KeyFrameRate)(IAMVideoCompression *This,LONG KeyFrameRate); 11395 HRESULT (WINAPI *get_KeyFrameRate)(IAMVideoCompression *This,LONG *pKeyFrameRate); 11396 HRESULT (WINAPI *put_PFramesPerKeyFrame)(IAMVideoCompression *This,LONG PFramesPerKeyFrame); 11397 HRESULT (WINAPI *get_PFramesPerKeyFrame)(IAMVideoCompression *This,LONG *pPFramesPerKeyFrame); 11398 HRESULT (WINAPI *put_Quality)(IAMVideoCompression *This,double Quality); 11399 HRESULT (WINAPI *get_Quality)(IAMVideoCompression *This,double *pQuality); 11400 HRESULT (WINAPI *put_WindowSize)(IAMVideoCompression *This,DWORDLONG WindowSize); 11401 HRESULT (WINAPI *get_WindowSize)(IAMVideoCompression *This,DWORDLONG *pWindowSize); 11402 HRESULT (WINAPI *GetInfo)(IAMVideoCompression *This,WCHAR *pszVersion,int *pcbVersion,LPWSTR pszDescription,int *pcbDescription,LONG *pDefaultKeyFrameRate,LONG *pDefaultPFramesPerKey,double *pDefaultQuality,LONG *pCapabilities); 11403 HRESULT (WINAPI *OverrideKeyFrame)(IAMVideoCompression *This,LONG FrameNumber); 11404 HRESULT (WINAPI *OverrideFrameSize)(IAMVideoCompression *This,LONG FrameNumber,LONG Size); 11405 END_INTERFACE 11406 } IAMVideoCompressionVtbl; 11407 struct IAMVideoCompression { 11408 CONST_VTBL struct IAMVideoCompressionVtbl *lpVtbl; 11409 }; 11410 #ifdef COBJMACROS 11411 #define IAMVideoCompression_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 11412 #define IAMVideoCompression_AddRef(This) (This)->lpVtbl->AddRef(This) 11413 #define IAMVideoCompression_Release(This) (This)->lpVtbl->Release(This) 11414 #define IAMVideoCompression_put_KeyFrameRate(This,KeyFrameRate) (This)->lpVtbl->put_KeyFrameRate(This,KeyFrameRate) 11415 #define IAMVideoCompression_get_KeyFrameRate(This,pKeyFrameRate) (This)->lpVtbl->get_KeyFrameRate(This,pKeyFrameRate) 11416 #define IAMVideoCompression_put_PFramesPerKeyFrame(This,PFramesPerKeyFrame) (This)->lpVtbl->put_PFramesPerKeyFrame(This,PFramesPerKeyFrame) 11417 #define IAMVideoCompression_get_PFramesPerKeyFrame(This,pPFramesPerKeyFrame) (This)->lpVtbl->get_PFramesPerKeyFrame(This,pPFramesPerKeyFrame) 11418 #define IAMVideoCompression_put_Quality(This,Quality) (This)->lpVtbl->put_Quality(This,Quality) 11419 #define IAMVideoCompression_get_Quality(This,pQuality) (This)->lpVtbl->get_Quality(This,pQuality) 11420 #define IAMVideoCompression_put_WindowSize(This,WindowSize) (This)->lpVtbl->put_WindowSize(This,WindowSize) 11421 #define IAMVideoCompression_get_WindowSize(This,pWindowSize) (This)->lpVtbl->get_WindowSize(This,pWindowSize) 11422 #define IAMVideoCompression_GetInfo(This,pszVersion,pcbVersion,pszDescription,pcbDescription,pDefaultKeyFrameRate,pDefaultPFramesPerKey,pDefaultQuality,pCapabilities) (This)->lpVtbl->GetInfo(This,pszVersion,pcbVersion,pszDescription,pcbDescription,pDefaultKeyFrameRate,pDefaultPFramesPerKey,pDefaultQuality,pCapabilities) 11423 #define IAMVideoCompression_OverrideKeyFrame(This,FrameNumber) (This)->lpVtbl->OverrideKeyFrame(This,FrameNumber) 11424 #define IAMVideoCompression_OverrideFrameSize(This,FrameNumber,Size) (This)->lpVtbl->OverrideFrameSize(This,FrameNumber,Size) 11425 #endif 11426 #endif 11427 HRESULT WINAPI IAMVideoCompression_put_KeyFrameRate_Proxy(IAMVideoCompression *This,LONG KeyFrameRate); 11428 void __RPC_STUB IAMVideoCompression_put_KeyFrameRate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11429 HRESULT WINAPI IAMVideoCompression_get_KeyFrameRate_Proxy(IAMVideoCompression *This,LONG *pKeyFrameRate); 11430 void __RPC_STUB IAMVideoCompression_get_KeyFrameRate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11431 HRESULT WINAPI IAMVideoCompression_put_PFramesPerKeyFrame_Proxy(IAMVideoCompression *This,LONG PFramesPerKeyFrame); 11432 void __RPC_STUB IAMVideoCompression_put_PFramesPerKeyFrame_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11433 HRESULT WINAPI IAMVideoCompression_get_PFramesPerKeyFrame_Proxy(IAMVideoCompression *This,LONG *pPFramesPerKeyFrame); 11434 void __RPC_STUB IAMVideoCompression_get_PFramesPerKeyFrame_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11435 HRESULT WINAPI IAMVideoCompression_put_Quality_Proxy(IAMVideoCompression *This,double Quality); 11436 void __RPC_STUB IAMVideoCompression_put_Quality_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11437 HRESULT WINAPI IAMVideoCompression_get_Quality_Proxy(IAMVideoCompression *This,double *pQuality); 11438 void __RPC_STUB IAMVideoCompression_get_Quality_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11439 HRESULT WINAPI IAMVideoCompression_put_WindowSize_Proxy(IAMVideoCompression *This,DWORDLONG WindowSize); 11440 void __RPC_STUB IAMVideoCompression_put_WindowSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11441 HRESULT WINAPI IAMVideoCompression_get_WindowSize_Proxy(IAMVideoCompression *This,DWORDLONG *pWindowSize); 11442 void __RPC_STUB IAMVideoCompression_get_WindowSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11443 HRESULT WINAPI IAMVideoCompression_GetInfo_Proxy(IAMVideoCompression *This,WCHAR *pszVersion,int *pcbVersion,LPWSTR pszDescription,int *pcbDescription,LONG *pDefaultKeyFrameRate,LONG *pDefaultPFramesPerKey,double *pDefaultQuality,LONG *pCapabilities); 11444 void __RPC_STUB IAMVideoCompression_GetInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11445 HRESULT WINAPI IAMVideoCompression_OverrideKeyFrame_Proxy(IAMVideoCompression *This,LONG FrameNumber); 11446 void __RPC_STUB IAMVideoCompression_OverrideKeyFrame_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11447 HRESULT WINAPI IAMVideoCompression_OverrideFrameSize_Proxy(IAMVideoCompression *This,LONG FrameNumber,LONG Size); 11448 void __RPC_STUB IAMVideoCompression_OverrideFrameSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11449 #endif 11450 11451 typedef enum __MIDL___MIDL_itf_strmif_0168_0001 { 11452 VfwCaptureDialog_Source = 0x1,VfwCaptureDialog_Format = 0x2,VfwCaptureDialog_Display = 0x4 11453 } VfwCaptureDialogs; 11454 11455 typedef enum __MIDL___MIDL_itf_strmif_0168_0002 { 11456 VfwCompressDialog_Config = 0x1,VfwCompressDialog_About = 0x2,VfwCompressDialog_QueryConfig = 0x4,VfwCompressDialog_QueryAbout = 0x8 11457 } VfwCompressDialogs; 11458 11459 #ifndef __IAMVfwCompressDialogs_INTERFACE_DEFINED__ 11460 #define __IAMVfwCompressDialogs_INTERFACE_DEFINED__ 11461 EXTERN_C const IID IID_IAMVfwCompressDialogs; 11462 #if defined(__cplusplus) && !defined(CINTERFACE) 11463 struct IAMVfwCompressDialogs : public IUnknown { 11464 public: 11465 virtual HRESULT WINAPI ShowDialog(int iDialog,HWND hwnd) = 0; 11466 virtual HRESULT WINAPI GetState(LPVOID pState,int *pcbState) = 0; 11467 virtual HRESULT WINAPI SetState(LPVOID pState,int cbState) = 0; 11468 virtual HRESULT WINAPI SendDriverMessage(int uMsg,LONG dw1,LONG dw2) = 0; 11469 }; 11470 #else 11471 typedef struct IAMVfwCompressDialogsVtbl { 11472 BEGIN_INTERFACE 11473 HRESULT (WINAPI *QueryInterface)(IAMVfwCompressDialogs *This,REFIID riid,void **ppvObject); 11474 ULONG (WINAPI *AddRef)(IAMVfwCompressDialogs *This); 11475 ULONG (WINAPI *Release)(IAMVfwCompressDialogs *This); 11476 HRESULT (WINAPI *ShowDialog)(IAMVfwCompressDialogs *This,int iDialog,HWND hwnd); 11477 HRESULT (WINAPI *GetState)(IAMVfwCompressDialogs *This,LPVOID pState,int *pcbState); 11478 HRESULT (WINAPI *SetState)(IAMVfwCompressDialogs *This,LPVOID pState,int cbState); 11479 HRESULT (WINAPI *SendDriverMessage)(IAMVfwCompressDialogs *This,int uMsg,LONG dw1,LONG dw2); 11480 END_INTERFACE 11481 } IAMVfwCompressDialogsVtbl; 11482 struct IAMVfwCompressDialogs { 11483 CONST_VTBL struct IAMVfwCompressDialogsVtbl *lpVtbl; 11484 }; 11485 #ifdef COBJMACROS 11486 #define IAMVfwCompressDialogs_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 11487 #define IAMVfwCompressDialogs_AddRef(This) (This)->lpVtbl->AddRef(This) 11488 #define IAMVfwCompressDialogs_Release(This) (This)->lpVtbl->Release(This) 11489 #define IAMVfwCompressDialogs_ShowDialog(This,iDialog,hwnd) (This)->lpVtbl->ShowDialog(This,iDialog,hwnd) 11490 #define IAMVfwCompressDialogs_GetState(This,pState,pcbState) (This)->lpVtbl->GetState(This,pState,pcbState) 11491 #define IAMVfwCompressDialogs_SetState(This,pState,cbState) (This)->lpVtbl->SetState(This,pState,cbState) 11492 #define IAMVfwCompressDialogs_SendDriverMessage(This,uMsg,dw1,dw2) (This)->lpVtbl->SendDriverMessage(This,uMsg,dw1,dw2) 11493 #endif 11494 #endif 11495 HRESULT WINAPI IAMVfwCompressDialogs_ShowDialog_Proxy(IAMVfwCompressDialogs *This,int iDialog,HWND hwnd); 11496 void __RPC_STUB IAMVfwCompressDialogs_ShowDialog_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11497 HRESULT WINAPI IAMVfwCompressDialogs_GetState_Proxy(IAMVfwCompressDialogs *This,LPVOID pState,int *pcbState); 11498 void __RPC_STUB IAMVfwCompressDialogs_GetState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11499 HRESULT WINAPI IAMVfwCompressDialogs_SetState_Proxy(IAMVfwCompressDialogs *This,LPVOID pState,int cbState); 11500 void __RPC_STUB IAMVfwCompressDialogs_SetState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11501 HRESULT WINAPI IAMVfwCompressDialogs_SendDriverMessage_Proxy(IAMVfwCompressDialogs *This,int uMsg,LONG dw1,LONG dw2); 11502 void __RPC_STUB IAMVfwCompressDialogs_SendDriverMessage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11503 #endif 11504 11505 #ifndef __IAMDroppedFrames_INTERFACE_DEFINED__ 11506 #define __IAMDroppedFrames_INTERFACE_DEFINED__ 11507 EXTERN_C const IID IID_IAMDroppedFrames; 11508 #if defined(__cplusplus) && !defined(CINTERFACE) 11509 struct IAMDroppedFrames : public IUnknown { 11510 public: 11511 virtual HRESULT WINAPI GetNumDropped(LONG *plDropped) = 0; 11512 virtual HRESULT WINAPI GetNumNotDropped(LONG *plNotDropped) = 0; 11513 virtual HRESULT WINAPI GetDroppedInfo(LONG lSize,LONG *plArray,LONG *plNumCopied) = 0; 11514 virtual HRESULT WINAPI GetAverageFrameSize(LONG *plAverageSize) = 0; 11515 }; 11516 #else 11517 typedef struct IAMDroppedFramesVtbl { 11518 BEGIN_INTERFACE 11519 HRESULT (WINAPI *QueryInterface)(IAMDroppedFrames *This,REFIID riid,void **ppvObject); 11520 ULONG (WINAPI *AddRef)(IAMDroppedFrames *This); 11521 ULONG (WINAPI *Release)(IAMDroppedFrames *This); 11522 HRESULT (WINAPI *GetNumDropped)(IAMDroppedFrames *This,LONG *plDropped); 11523 HRESULT (WINAPI *GetNumNotDropped)(IAMDroppedFrames *This,LONG *plNotDropped); 11524 HRESULT (WINAPI *GetDroppedInfo)(IAMDroppedFrames *This,LONG lSize,LONG *plArray,LONG *plNumCopied); 11525 HRESULT (WINAPI *GetAverageFrameSize)(IAMDroppedFrames *This,LONG *plAverageSize); 11526 END_INTERFACE 11527 } IAMDroppedFramesVtbl; 11528 struct IAMDroppedFrames { 11529 CONST_VTBL struct IAMDroppedFramesVtbl *lpVtbl; 11530 }; 11531 #ifdef COBJMACROS 11532 #define IAMDroppedFrames_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 11533 #define IAMDroppedFrames_AddRef(This) (This)->lpVtbl->AddRef(This) 11534 #define IAMDroppedFrames_Release(This) (This)->lpVtbl->Release(This) 11535 #define IAMDroppedFrames_GetNumDropped(This,plDropped) (This)->lpVtbl->GetNumDropped(This,plDropped) 11536 #define IAMDroppedFrames_GetNumNotDropped(This,plNotDropped) (This)->lpVtbl->GetNumNotDropped(This,plNotDropped) 11537 #define IAMDroppedFrames_GetDroppedInfo(This,lSize,plArray,plNumCopied) (This)->lpVtbl->GetDroppedInfo(This,lSize,plArray,plNumCopied) 11538 #define IAMDroppedFrames_GetAverageFrameSize(This,plAverageSize) (This)->lpVtbl->GetAverageFrameSize(This,plAverageSize) 11539 #endif 11540 #endif 11541 HRESULT WINAPI IAMDroppedFrames_GetNumDropped_Proxy(IAMDroppedFrames *This,LONG *plDropped); 11542 void __RPC_STUB IAMDroppedFrames_GetNumDropped_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11543 HRESULT WINAPI IAMDroppedFrames_GetNumNotDropped_Proxy(IAMDroppedFrames *This,LONG *plNotDropped); 11544 void __RPC_STUB IAMDroppedFrames_GetNumNotDropped_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11545 HRESULT WINAPI IAMDroppedFrames_GetDroppedInfo_Proxy(IAMDroppedFrames *This,LONG lSize,LONG *plArray,LONG *plNumCopied); 11546 void __RPC_STUB IAMDroppedFrames_GetDroppedInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11547 HRESULT WINAPI IAMDroppedFrames_GetAverageFrameSize_Proxy(IAMDroppedFrames *This,LONG *plAverageSize); 11548 void __RPC_STUB IAMDroppedFrames_GetAverageFrameSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11549 #endif 11550 11551 #define AMF_AUTOMATICGAIN -1.0 11552 11553 extern RPC_IF_HANDLE __MIDL_itf_strmif_0171_v0_0_c_ifspec; 11554 extern RPC_IF_HANDLE __MIDL_itf_strmif_0171_v0_0_s_ifspec; 11555 #ifndef __IAMAudioInputMixer_INTERFACE_DEFINED__ 11556 #define __IAMAudioInputMixer_INTERFACE_DEFINED__ 11557 EXTERN_C const IID IID_IAMAudioInputMixer; 11558 #if defined(__cplusplus) && !defined(CINTERFACE) 11559 struct IAMAudioInputMixer : public IUnknown { 11560 public: 11561 virtual HRESULT WINAPI put_Enable(WINBOOL fEnable) = 0; 11562 virtual HRESULT WINAPI get_Enable(WINBOOL *pfEnable) = 0; 11563 virtual HRESULT WINAPI put_Mono(WINBOOL fMono) = 0; 11564 virtual HRESULT WINAPI get_Mono(WINBOOL *pfMono) = 0; 11565 virtual HRESULT WINAPI put_MixLevel(double Level) = 0; 11566 virtual HRESULT WINAPI get_MixLevel(double *pLevel) = 0; 11567 virtual HRESULT WINAPI put_Pan(double Pan) = 0; 11568 virtual HRESULT WINAPI get_Pan(double *pPan) = 0; 11569 virtual HRESULT WINAPI put_Loudness(WINBOOL fLoudness) = 0; 11570 virtual HRESULT WINAPI get_Loudness(WINBOOL *pfLoudness) = 0; 11571 virtual HRESULT WINAPI put_Treble(double Treble) = 0; 11572 virtual HRESULT WINAPI get_Treble(double *pTreble) = 0; 11573 virtual HRESULT WINAPI get_TrebleRange(double *pRange) = 0; 11574 virtual HRESULT WINAPI put_Bass(double Bass) = 0; 11575 virtual HRESULT WINAPI get_Bass(double *pBass) = 0; 11576 virtual HRESULT WINAPI get_BassRange(double *pRange) = 0; 11577 }; 11578 #else 11579 typedef struct IAMAudioInputMixerVtbl { 11580 BEGIN_INTERFACE 11581 HRESULT (WINAPI *QueryInterface)(IAMAudioInputMixer *This,REFIID riid,void **ppvObject); 11582 ULONG (WINAPI *AddRef)(IAMAudioInputMixer *This); 11583 ULONG (WINAPI *Release)(IAMAudioInputMixer *This); 11584 HRESULT (WINAPI *put_Enable)(IAMAudioInputMixer *This,WINBOOL fEnable); 11585 HRESULT (WINAPI *get_Enable)(IAMAudioInputMixer *This,WINBOOL *pfEnable); 11586 HRESULT (WINAPI *put_Mono)(IAMAudioInputMixer *This,WINBOOL fMono); 11587 HRESULT (WINAPI *get_Mono)(IAMAudioInputMixer *This,WINBOOL *pfMono); 11588 HRESULT (WINAPI *put_MixLevel)(IAMAudioInputMixer *This,double Level); 11589 HRESULT (WINAPI *get_MixLevel)(IAMAudioInputMixer *This,double *pLevel); 11590 HRESULT (WINAPI *put_Pan)(IAMAudioInputMixer *This,double Pan); 11591 HRESULT (WINAPI *get_Pan)(IAMAudioInputMixer *This,double *pPan); 11592 HRESULT (WINAPI *put_Loudness)(IAMAudioInputMixer *This,WINBOOL fLoudness); 11593 HRESULT (WINAPI *get_Loudness)(IAMAudioInputMixer *This,WINBOOL *pfLoudness); 11594 HRESULT (WINAPI *put_Treble)(IAMAudioInputMixer *This,double Treble); 11595 HRESULT (WINAPI *get_Treble)(IAMAudioInputMixer *This,double *pTreble); 11596 HRESULT (WINAPI *get_TrebleRange)(IAMAudioInputMixer *This,double *pRange); 11597 HRESULT (WINAPI *put_Bass)(IAMAudioInputMixer *This,double Bass); 11598 HRESULT (WINAPI *get_Bass)(IAMAudioInputMixer *This,double *pBass); 11599 HRESULT (WINAPI *get_BassRange)(IAMAudioInputMixer *This,double *pRange); 11600 END_INTERFACE 11601 } IAMAudioInputMixerVtbl; 11602 struct IAMAudioInputMixer { 11603 CONST_VTBL struct IAMAudioInputMixerVtbl *lpVtbl; 11604 }; 11605 #ifdef COBJMACROS 11606 #define IAMAudioInputMixer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 11607 #define IAMAudioInputMixer_AddRef(This) (This)->lpVtbl->AddRef(This) 11608 #define IAMAudioInputMixer_Release(This) (This)->lpVtbl->Release(This) 11609 #define IAMAudioInputMixer_put_Enable(This,fEnable) (This)->lpVtbl->put_Enable(This,fEnable) 11610 #define IAMAudioInputMixer_get_Enable(This,pfEnable) (This)->lpVtbl->get_Enable(This,pfEnable) 11611 #define IAMAudioInputMixer_put_Mono(This,fMono) (This)->lpVtbl->put_Mono(This,fMono) 11612 #define IAMAudioInputMixer_get_Mono(This,pfMono) (This)->lpVtbl->get_Mono(This,pfMono) 11613 #define IAMAudioInputMixer_put_MixLevel(This,Level) (This)->lpVtbl->put_MixLevel(This,Level) 11614 #define IAMAudioInputMixer_get_MixLevel(This,pLevel) (This)->lpVtbl->get_MixLevel(This,pLevel) 11615 #define IAMAudioInputMixer_put_Pan(This,Pan) (This)->lpVtbl->put_Pan(This,Pan) 11616 #define IAMAudioInputMixer_get_Pan(This,pPan) (This)->lpVtbl->get_Pan(This,pPan) 11617 #define IAMAudioInputMixer_put_Loudness(This,fLoudness) (This)->lpVtbl->put_Loudness(This,fLoudness) 11618 #define IAMAudioInputMixer_get_Loudness(This,pfLoudness) (This)->lpVtbl->get_Loudness(This,pfLoudness) 11619 #define IAMAudioInputMixer_put_Treble(This,Treble) (This)->lpVtbl->put_Treble(This,Treble) 11620 #define IAMAudioInputMixer_get_Treble(This,pTreble) (This)->lpVtbl->get_Treble(This,pTreble) 11621 #define IAMAudioInputMixer_get_TrebleRange(This,pRange) (This)->lpVtbl->get_TrebleRange(This,pRange) 11622 #define IAMAudioInputMixer_put_Bass(This,Bass) (This)->lpVtbl->put_Bass(This,Bass) 11623 #define IAMAudioInputMixer_get_Bass(This,pBass) (This)->lpVtbl->get_Bass(This,pBass) 11624 #define IAMAudioInputMixer_get_BassRange(This,pRange) (This)->lpVtbl->get_BassRange(This,pRange) 11625 #endif 11626 #endif 11627 HRESULT WINAPI IAMAudioInputMixer_put_Enable_Proxy(IAMAudioInputMixer *This,WINBOOL fEnable); 11628 void __RPC_STUB IAMAudioInputMixer_put_Enable_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11629 HRESULT WINAPI IAMAudioInputMixer_get_Enable_Proxy(IAMAudioInputMixer *This,WINBOOL *pfEnable); 11630 void __RPC_STUB IAMAudioInputMixer_get_Enable_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11631 HRESULT WINAPI IAMAudioInputMixer_put_Mono_Proxy(IAMAudioInputMixer *This,WINBOOL fMono); 11632 void __RPC_STUB IAMAudioInputMixer_put_Mono_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11633 HRESULT WINAPI IAMAudioInputMixer_get_Mono_Proxy(IAMAudioInputMixer *This,WINBOOL *pfMono); 11634 void __RPC_STUB IAMAudioInputMixer_get_Mono_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11635 HRESULT WINAPI IAMAudioInputMixer_put_MixLevel_Proxy(IAMAudioInputMixer *This,double Level); 11636 void __RPC_STUB IAMAudioInputMixer_put_MixLevel_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11637 HRESULT WINAPI IAMAudioInputMixer_get_MixLevel_Proxy(IAMAudioInputMixer *This,double *pLevel); 11638 void __RPC_STUB IAMAudioInputMixer_get_MixLevel_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11639 HRESULT WINAPI IAMAudioInputMixer_put_Pan_Proxy(IAMAudioInputMixer *This,double Pan); 11640 void __RPC_STUB IAMAudioInputMixer_put_Pan_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11641 HRESULT WINAPI IAMAudioInputMixer_get_Pan_Proxy(IAMAudioInputMixer *This,double *pPan); 11642 void __RPC_STUB IAMAudioInputMixer_get_Pan_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11643 HRESULT WINAPI IAMAudioInputMixer_put_Loudness_Proxy(IAMAudioInputMixer *This,WINBOOL fLoudness); 11644 void __RPC_STUB IAMAudioInputMixer_put_Loudness_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11645 HRESULT WINAPI IAMAudioInputMixer_get_Loudness_Proxy(IAMAudioInputMixer *This,WINBOOL *pfLoudness); 11646 void __RPC_STUB IAMAudioInputMixer_get_Loudness_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11647 HRESULT WINAPI IAMAudioInputMixer_put_Treble_Proxy(IAMAudioInputMixer *This,double Treble); 11648 void __RPC_STUB IAMAudioInputMixer_put_Treble_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11649 HRESULT WINAPI IAMAudioInputMixer_get_Treble_Proxy(IAMAudioInputMixer *This,double *pTreble); 11650 void __RPC_STUB IAMAudioInputMixer_get_Treble_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11651 HRESULT WINAPI IAMAudioInputMixer_get_TrebleRange_Proxy(IAMAudioInputMixer *This,double *pRange); 11652 void __RPC_STUB IAMAudioInputMixer_get_TrebleRange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11653 HRESULT WINAPI IAMAudioInputMixer_put_Bass_Proxy(IAMAudioInputMixer *This,double Bass); 11654 void __RPC_STUB IAMAudioInputMixer_put_Bass_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11655 HRESULT WINAPI IAMAudioInputMixer_get_Bass_Proxy(IAMAudioInputMixer *This,double *pBass); 11656 void __RPC_STUB IAMAudioInputMixer_get_Bass_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11657 HRESULT WINAPI IAMAudioInputMixer_get_BassRange_Proxy(IAMAudioInputMixer *This,double *pRange); 11658 void __RPC_STUB IAMAudioInputMixer_get_BassRange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11659 #endif 11660 11661 #ifndef __IAMBufferNegotiation_INTERFACE_DEFINED__ 11662 #define __IAMBufferNegotiation_INTERFACE_DEFINED__ 11663 EXTERN_C const IID IID_IAMBufferNegotiation; 11664 #if defined(__cplusplus) && !defined(CINTERFACE) 11665 struct IAMBufferNegotiation : public IUnknown { 11666 public: 11667 virtual HRESULT WINAPI SuggestAllocatorProperties(const ALLOCATOR_PROPERTIES *pprop) = 0; 11668 virtual HRESULT WINAPI GetAllocatorProperties(ALLOCATOR_PROPERTIES *pprop) = 0; 11669 }; 11670 #else 11671 typedef struct IAMBufferNegotiationVtbl { 11672 BEGIN_INTERFACE 11673 HRESULT (WINAPI *QueryInterface)(IAMBufferNegotiation *This,REFIID riid,void **ppvObject); 11674 ULONG (WINAPI *AddRef)(IAMBufferNegotiation *This); 11675 ULONG (WINAPI *Release)(IAMBufferNegotiation *This); 11676 HRESULT (WINAPI *SuggestAllocatorProperties)(IAMBufferNegotiation *This,const ALLOCATOR_PROPERTIES *pprop); 11677 HRESULT (WINAPI *GetAllocatorProperties)(IAMBufferNegotiation *This,ALLOCATOR_PROPERTIES *pprop); 11678 END_INTERFACE 11679 } IAMBufferNegotiationVtbl; 11680 struct IAMBufferNegotiation { 11681 CONST_VTBL struct IAMBufferNegotiationVtbl *lpVtbl; 11682 }; 11683 #ifdef COBJMACROS 11684 #define IAMBufferNegotiation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 11685 #define IAMBufferNegotiation_AddRef(This) (This)->lpVtbl->AddRef(This) 11686 #define IAMBufferNegotiation_Release(This) (This)->lpVtbl->Release(This) 11687 #define IAMBufferNegotiation_SuggestAllocatorProperties(This,pprop) (This)->lpVtbl->SuggestAllocatorProperties(This,pprop) 11688 #define IAMBufferNegotiation_GetAllocatorProperties(This,pprop) (This)->lpVtbl->GetAllocatorProperties(This,pprop) 11689 #endif 11690 #endif 11691 HRESULT WINAPI IAMBufferNegotiation_SuggestAllocatorProperties_Proxy(IAMBufferNegotiation *This,const ALLOCATOR_PROPERTIES *pprop); 11692 void __RPC_STUB IAMBufferNegotiation_SuggestAllocatorProperties_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11693 HRESULT WINAPI IAMBufferNegotiation_GetAllocatorProperties_Proxy(IAMBufferNegotiation *This,ALLOCATOR_PROPERTIES *pprop); 11694 void __RPC_STUB IAMBufferNegotiation_GetAllocatorProperties_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11695 #endif 11696 11697 #define AnalogVideo_NTSC_Mask 0x00000007 11698 #define AnalogVideo_PAL_Mask 0x00100FF0 11699 #define AnalogVideo_SECAM_Mask 0x000FF000 11700 11701 typedef enum __MIDL___MIDL_itf_strmif_0173_0001 { 11702 VideoCopyProtectionMacrovisionBasic = 0,VideoCopyProtectionMacrovisionCBI = VideoCopyProtectionMacrovisionBasic + 1 11703 } VideoCopyProtectionType; 11704 11705 typedef enum tagPhysicalConnectorType { 11706 PhysConn_Video_Tuner = 1, 11707 PhysConn_Video_Composite,PhysConn_Video_SVideo,PhysConn_Video_RGB, 11708 PhysConn_Video_YRYBY,PhysConn_Video_SerialDigital,PhysConn_Video_ParallelDigital, 11709 PhysConn_Video_SCSI,PhysConn_Video_AUX,PhysConn_Video_1394,PhysConn_Video_USB, 11710 PhysConn_Video_VideoDecoder,PhysConn_Video_VideoEncoder,PhysConn_Video_SCART,PhysConn_Video_Black, 11711 PhysConn_Audio_Tuner = 0x1000,PhysConn_Audio_Line = 0x1001,PhysConn_Audio_Mic = 0x1002, 11712 PhysConn_Audio_AESDigital = 0x1003,PhysConn_Audio_SPDIFDigital = 0x1004, 11713 PhysConn_Audio_SCSI = 0x1005,PhysConn_Audio_AUX = 0x1006,PhysConn_Audio_1394 = 0x1007, 11714 PhysConn_Audio_USB = 0x1008,PhysConn_Audio_AudioDecoder = 0x1009 11715 } PhysicalConnectorType; 11716 11717 extern RPC_IF_HANDLE __MIDL_itf_strmif_0173_v0_0_c_ifspec; 11718 extern RPC_IF_HANDLE __MIDL_itf_strmif_0173_v0_0_s_ifspec; 11719 #ifndef __IAMAnalogVideoDecoder_INTERFACE_DEFINED__ 11720 #define __IAMAnalogVideoDecoder_INTERFACE_DEFINED__ 11721 EXTERN_C const IID IID_IAMAnalogVideoDecoder; 11722 #if defined(__cplusplus) && !defined(CINTERFACE) 11723 struct IAMAnalogVideoDecoder : public IUnknown { 11724 public: 11725 virtual HRESULT WINAPI get_AvailableTVFormats(LONG *lAnalogVideoStandard) = 0; 11726 virtual HRESULT WINAPI put_TVFormat(LONG lAnalogVideoStandard) = 0; 11727 virtual HRESULT WINAPI get_TVFormat(LONG *plAnalogVideoStandard) = 0; 11728 virtual HRESULT WINAPI get_HorizontalLocked(LONG *plLocked) = 0; 11729 virtual HRESULT WINAPI put_VCRHorizontalLocking(LONG lVCRHorizontalLocking) = 0; 11730 virtual HRESULT WINAPI get_VCRHorizontalLocking(LONG *plVCRHorizontalLocking) = 0; 11731 virtual HRESULT WINAPI get_NumberOfLines(LONG *plNumberOfLines) = 0; 11732 virtual HRESULT WINAPI put_OutputEnable(LONG lOutputEnable) = 0; 11733 virtual HRESULT WINAPI get_OutputEnable(LONG *plOutputEnable) = 0; 11734 }; 11735 #else 11736 typedef struct IAMAnalogVideoDecoderVtbl { 11737 BEGIN_INTERFACE 11738 HRESULT (WINAPI *QueryInterface)(IAMAnalogVideoDecoder *This,REFIID riid,void **ppvObject); 11739 ULONG (WINAPI *AddRef)(IAMAnalogVideoDecoder *This); 11740 ULONG (WINAPI *Release)(IAMAnalogVideoDecoder *This); 11741 HRESULT (WINAPI *get_AvailableTVFormats)(IAMAnalogVideoDecoder *This,LONG *lAnalogVideoStandard); 11742 HRESULT (WINAPI *put_TVFormat)(IAMAnalogVideoDecoder *This,LONG lAnalogVideoStandard); 11743 HRESULT (WINAPI *get_TVFormat)(IAMAnalogVideoDecoder *This,LONG *plAnalogVideoStandard); 11744 HRESULT (WINAPI *get_HorizontalLocked)(IAMAnalogVideoDecoder *This,LONG *plLocked); 11745 HRESULT (WINAPI *put_VCRHorizontalLocking)(IAMAnalogVideoDecoder *This,LONG lVCRHorizontalLocking); 11746 HRESULT (WINAPI *get_VCRHorizontalLocking)(IAMAnalogVideoDecoder *This,LONG *plVCRHorizontalLocking); 11747 HRESULT (WINAPI *get_NumberOfLines)(IAMAnalogVideoDecoder *This,LONG *plNumberOfLines); 11748 HRESULT (WINAPI *put_OutputEnable)(IAMAnalogVideoDecoder *This,LONG lOutputEnable); 11749 HRESULT (WINAPI *get_OutputEnable)(IAMAnalogVideoDecoder *This,LONG *plOutputEnable); 11750 END_INTERFACE 11751 } IAMAnalogVideoDecoderVtbl; 11752 struct IAMAnalogVideoDecoder { 11753 CONST_VTBL struct IAMAnalogVideoDecoderVtbl *lpVtbl; 11754 }; 11755 #ifdef COBJMACROS 11756 #define IAMAnalogVideoDecoder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 11757 #define IAMAnalogVideoDecoder_AddRef(This) (This)->lpVtbl->AddRef(This) 11758 #define IAMAnalogVideoDecoder_Release(This) (This)->lpVtbl->Release(This) 11759 #define IAMAnalogVideoDecoder_get_AvailableTVFormats(This,lAnalogVideoStandard) (This)->lpVtbl->get_AvailableTVFormats(This,lAnalogVideoStandard) 11760 #define IAMAnalogVideoDecoder_put_TVFormat(This,lAnalogVideoStandard) (This)->lpVtbl->put_TVFormat(This,lAnalogVideoStandard) 11761 #define IAMAnalogVideoDecoder_get_TVFormat(This,plAnalogVideoStandard) (This)->lpVtbl->get_TVFormat(This,plAnalogVideoStandard) 11762 #define IAMAnalogVideoDecoder_get_HorizontalLocked(This,plLocked) (This)->lpVtbl->get_HorizontalLocked(This,plLocked) 11763 #define IAMAnalogVideoDecoder_put_VCRHorizontalLocking(This,lVCRHorizontalLocking) (This)->lpVtbl->put_VCRHorizontalLocking(This,lVCRHorizontalLocking) 11764 #define IAMAnalogVideoDecoder_get_VCRHorizontalLocking(This,plVCRHorizontalLocking) (This)->lpVtbl->get_VCRHorizontalLocking(This,plVCRHorizontalLocking) 11765 #define IAMAnalogVideoDecoder_get_NumberOfLines(This,plNumberOfLines) (This)->lpVtbl->get_NumberOfLines(This,plNumberOfLines) 11766 #define IAMAnalogVideoDecoder_put_OutputEnable(This,lOutputEnable) (This)->lpVtbl->put_OutputEnable(This,lOutputEnable) 11767 #define IAMAnalogVideoDecoder_get_OutputEnable(This,plOutputEnable) (This)->lpVtbl->get_OutputEnable(This,plOutputEnable) 11768 #endif 11769 #endif 11770 HRESULT WINAPI IAMAnalogVideoDecoder_get_AvailableTVFormats_Proxy(IAMAnalogVideoDecoder *This,LONG *lAnalogVideoStandard); 11771 void __RPC_STUB IAMAnalogVideoDecoder_get_AvailableTVFormats_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11772 HRESULT WINAPI IAMAnalogVideoDecoder_put_TVFormat_Proxy(IAMAnalogVideoDecoder *This,LONG lAnalogVideoStandard); 11773 void __RPC_STUB IAMAnalogVideoDecoder_put_TVFormat_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11774 HRESULT WINAPI IAMAnalogVideoDecoder_get_TVFormat_Proxy(IAMAnalogVideoDecoder *This,LONG *plAnalogVideoStandard); 11775 void __RPC_STUB IAMAnalogVideoDecoder_get_TVFormat_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11776 HRESULT WINAPI IAMAnalogVideoDecoder_get_HorizontalLocked_Proxy(IAMAnalogVideoDecoder *This,LONG *plLocked); 11777 void __RPC_STUB IAMAnalogVideoDecoder_get_HorizontalLocked_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11778 HRESULT WINAPI IAMAnalogVideoDecoder_put_VCRHorizontalLocking_Proxy(IAMAnalogVideoDecoder *This,LONG lVCRHorizontalLocking); 11779 void __RPC_STUB IAMAnalogVideoDecoder_put_VCRHorizontalLocking_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11780 HRESULT WINAPI IAMAnalogVideoDecoder_get_VCRHorizontalLocking_Proxy(IAMAnalogVideoDecoder *This,LONG *plVCRHorizontalLocking); 11781 void __RPC_STUB IAMAnalogVideoDecoder_get_VCRHorizontalLocking_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11782 HRESULT WINAPI IAMAnalogVideoDecoder_get_NumberOfLines_Proxy(IAMAnalogVideoDecoder *This,LONG *plNumberOfLines); 11783 void __RPC_STUB IAMAnalogVideoDecoder_get_NumberOfLines_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11784 HRESULT WINAPI IAMAnalogVideoDecoder_put_OutputEnable_Proxy(IAMAnalogVideoDecoder *This,LONG lOutputEnable); 11785 void __RPC_STUB IAMAnalogVideoDecoder_put_OutputEnable_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11786 HRESULT WINAPI IAMAnalogVideoDecoder_get_OutputEnable_Proxy(IAMAnalogVideoDecoder *This,LONG *plOutputEnable); 11787 void __RPC_STUB IAMAnalogVideoDecoder_get_OutputEnable_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11788 #endif 11789 11790 typedef enum tagCameraControlProperty { 11791 CameraControl_Pan = 0, 11792 CameraControl_Tilt,CameraControl_Roll,CameraControl_Zoom,CameraControl_Exposure, 11793 CameraControl_Iris,CameraControl_Focus 11794 } CameraControlProperty; 11795 11796 typedef enum tagCameraControlFlags { 11797 CameraControl_Flags_Auto = 0x1,CameraControl_Flags_Manual = 0x2 11798 } CameraControlFlags; 11799 11800 extern RPC_IF_HANDLE __MIDL_itf_strmif_0175_v0_0_c_ifspec; 11801 extern RPC_IF_HANDLE __MIDL_itf_strmif_0175_v0_0_s_ifspec; 11802 #ifndef __IAMCameraControl_INTERFACE_DEFINED__ 11803 #define __IAMCameraControl_INTERFACE_DEFINED__ 11804 EXTERN_C const IID IID_IAMCameraControl; 11805 #if defined(__cplusplus) && !defined(CINTERFACE) 11806 struct IAMCameraControl : public IUnknown { 11807 public: 11808 virtual HRESULT WINAPI GetRange(LONG Property,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlags) = 0; 11809 virtual HRESULT WINAPI Set(LONG Property,LONG lValue,LONG Flags) = 0; 11810 virtual HRESULT WINAPI Get(LONG Property,LONG *lValue,LONG *Flags) = 0; 11811 }; 11812 #else 11813 typedef struct IAMCameraControlVtbl { 11814 BEGIN_INTERFACE 11815 HRESULT (WINAPI *QueryInterface)(IAMCameraControl *This,REFIID riid,void **ppvObject); 11816 ULONG (WINAPI *AddRef)(IAMCameraControl *This); 11817 ULONG (WINAPI *Release)(IAMCameraControl *This); 11818 HRESULT (WINAPI *GetRange)(IAMCameraControl *This,LONG Property,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlags); 11819 HRESULT (WINAPI *Set)(IAMCameraControl *This,LONG Property,LONG lValue,LONG Flags); 11820 HRESULT (WINAPI *Get)(IAMCameraControl *This,LONG Property,LONG *lValue,LONG *Flags); 11821 END_INTERFACE 11822 } IAMCameraControlVtbl; 11823 struct IAMCameraControl { 11824 CONST_VTBL struct IAMCameraControlVtbl *lpVtbl; 11825 }; 11826 #ifdef COBJMACROS 11827 #define IAMCameraControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 11828 #define IAMCameraControl_AddRef(This) (This)->lpVtbl->AddRef(This) 11829 #define IAMCameraControl_Release(This) (This)->lpVtbl->Release(This) 11830 #define IAMCameraControl_GetRange(This,Property,pMin,pMax,pSteppingDelta,pDefault,pCapsFlags) (This)->lpVtbl->GetRange(This,Property,pMin,pMax,pSteppingDelta,pDefault,pCapsFlags) 11831 #define IAMCameraControl_Set(This,Property,lValue,Flags) (This)->lpVtbl->Set(This,Property,lValue,Flags) 11832 #define IAMCameraControl_Get(This,Property,lValue,Flags) (This)->lpVtbl->Get(This,Property,lValue,Flags) 11833 #endif 11834 #endif 11835 HRESULT WINAPI IAMCameraControl_GetRange_Proxy(IAMCameraControl *This,LONG Property,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlags); 11836 void __RPC_STUB IAMCameraControl_GetRange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11837 HRESULT WINAPI IAMCameraControl_Set_Proxy(IAMCameraControl *This,LONG Property,LONG lValue,LONG Flags); 11838 void __RPC_STUB IAMCameraControl_Set_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11839 HRESULT WINAPI IAMCameraControl_Get_Proxy(IAMCameraControl *This,LONG Property,LONG *lValue,LONG *Flags); 11840 void __RPC_STUB IAMCameraControl_Get_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11841 #endif 11842 11843 typedef enum tagVideoControlFlags { 11844 VideoControlFlag_FlipHorizontal = 0x1,VideoControlFlag_FlipVertical = 0x2,VideoControlFlag_ExternalTriggerEnable = 0x4,VideoControlFlag_Trigger = 0x8 11845 } VideoControlFlags; 11846 11847 extern RPC_IF_HANDLE __MIDL_itf_strmif_0176_v0_0_c_ifspec; 11848 extern RPC_IF_HANDLE __MIDL_itf_strmif_0176_v0_0_s_ifspec; 11849 #ifndef __IAMVideoControl_INTERFACE_DEFINED__ 11850 #define __IAMVideoControl_INTERFACE_DEFINED__ 11851 EXTERN_C const IID IID_IAMVideoControl; 11852 #if defined(__cplusplus) && !defined(CINTERFACE) 11853 struct IAMVideoControl : public IUnknown { 11854 public: 11855 virtual HRESULT WINAPI GetCaps(IPin *pPin,LONG *pCapsFlags) = 0; 11856 virtual HRESULT WINAPI SetMode(IPin *pPin,LONG Mode) = 0; 11857 virtual HRESULT WINAPI GetMode(IPin *pPin,LONG *Mode) = 0; 11858 virtual HRESULT WINAPI GetCurrentActualFrameRate(IPin *pPin,LONGLONG *ActualFrameRate) = 0; 11859 virtual HRESULT WINAPI GetMaxAvailableFrameRate(IPin *pPin,LONG iIndex,SIZE Dimensions,LONGLONG *MaxAvailableFrameRate) = 0; 11860 virtual HRESULT WINAPI GetFrameRateList(IPin *pPin,LONG iIndex,SIZE Dimensions,LONG *ListSize,LONGLONG **FrameRates) = 0; 11861 }; 11862 #else 11863 typedef struct IAMVideoControlVtbl { 11864 BEGIN_INTERFACE 11865 HRESULT (WINAPI *QueryInterface)(IAMVideoControl *This,REFIID riid,void **ppvObject); 11866 ULONG (WINAPI *AddRef)(IAMVideoControl *This); 11867 ULONG (WINAPI *Release)(IAMVideoControl *This); 11868 HRESULT (WINAPI *GetCaps)(IAMVideoControl *This,IPin *pPin,LONG *pCapsFlags); 11869 HRESULT (WINAPI *SetMode)(IAMVideoControl *This,IPin *pPin,LONG Mode); 11870 HRESULT (WINAPI *GetMode)(IAMVideoControl *This,IPin *pPin,LONG *Mode); 11871 HRESULT (WINAPI *GetCurrentActualFrameRate)(IAMVideoControl *This,IPin *pPin,LONGLONG *ActualFrameRate); 11872 HRESULT (WINAPI *GetMaxAvailableFrameRate)(IAMVideoControl *This,IPin *pPin,LONG iIndex,SIZE Dimensions,LONGLONG *MaxAvailableFrameRate); 11873 HRESULT (WINAPI *GetFrameRateList)(IAMVideoControl *This,IPin *pPin,LONG iIndex,SIZE Dimensions,LONG *ListSize,LONGLONG **FrameRates); 11874 END_INTERFACE 11875 } IAMVideoControlVtbl; 11876 struct IAMVideoControl { 11877 CONST_VTBL struct IAMVideoControlVtbl *lpVtbl; 11878 }; 11879 #ifdef COBJMACROS 11880 #define IAMVideoControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 11881 #define IAMVideoControl_AddRef(This) (This)->lpVtbl->AddRef(This) 11882 #define IAMVideoControl_Release(This) (This)->lpVtbl->Release(This) 11883 #define IAMVideoControl_GetCaps(This,pPin,pCapsFlags) (This)->lpVtbl->GetCaps(This,pPin,pCapsFlags) 11884 #define IAMVideoControl_SetMode(This,pPin,Mode) (This)->lpVtbl->SetMode(This,pPin,Mode) 11885 #define IAMVideoControl_GetMode(This,pPin,Mode) (This)->lpVtbl->GetMode(This,pPin,Mode) 11886 #define IAMVideoControl_GetCurrentActualFrameRate(This,pPin,ActualFrameRate) (This)->lpVtbl->GetCurrentActualFrameRate(This,pPin,ActualFrameRate) 11887 #define IAMVideoControl_GetMaxAvailableFrameRate(This,pPin,iIndex,Dimensions,MaxAvailableFrameRate) (This)->lpVtbl->GetMaxAvailableFrameRate(This,pPin,iIndex,Dimensions,MaxAvailableFrameRate) 11888 #define IAMVideoControl_GetFrameRateList(This,pPin,iIndex,Dimensions,ListSize,FrameRates) (This)->lpVtbl->GetFrameRateList(This,pPin,iIndex,Dimensions,ListSize,FrameRates) 11889 #endif 11890 #endif 11891 HRESULT WINAPI IAMVideoControl_GetCaps_Proxy(IAMVideoControl *This,IPin *pPin,LONG *pCapsFlags); 11892 void __RPC_STUB IAMVideoControl_GetCaps_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11893 HRESULT WINAPI IAMVideoControl_SetMode_Proxy(IAMVideoControl *This,IPin *pPin,LONG Mode); 11894 void __RPC_STUB IAMVideoControl_SetMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11895 HRESULT WINAPI IAMVideoControl_GetMode_Proxy(IAMVideoControl *This,IPin *pPin,LONG *Mode); 11896 void __RPC_STUB IAMVideoControl_GetMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11897 HRESULT WINAPI IAMVideoControl_GetCurrentActualFrameRate_Proxy(IAMVideoControl *This,IPin *pPin,LONGLONG *ActualFrameRate); 11898 void __RPC_STUB IAMVideoControl_GetCurrentActualFrameRate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11899 HRESULT WINAPI IAMVideoControl_GetMaxAvailableFrameRate_Proxy(IAMVideoControl *This,IPin *pPin,LONG iIndex,SIZE Dimensions,LONGLONG *MaxAvailableFrameRate); 11900 void __RPC_STUB IAMVideoControl_GetMaxAvailableFrameRate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11901 HRESULT WINAPI IAMVideoControl_GetFrameRateList_Proxy(IAMVideoControl *This,IPin *pPin,LONG iIndex,SIZE Dimensions,LONG *ListSize,LONGLONG **FrameRates); 11902 void __RPC_STUB IAMVideoControl_GetFrameRateList_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11903 #endif 11904 11905 #ifdef __CRT_UUID_DECL 11906 __CRT_UUID_DECL(IAMCrossbar,0xc6e13380,0x30ac,0x11d0,0xa1,0x8c,0x00,0xa0,0xc9,0x11,0x89,0x56); 11907 #endif 11908 11909 #ifndef __IAMCrossbar_INTERFACE_DEFINED__ 11910 #define __IAMCrossbar_INTERFACE_DEFINED__ 11911 EXTERN_C const IID IID_IAMCrossbar; 11912 #if defined(__cplusplus) && !defined(CINTERFACE) 11913 struct IAMCrossbar : public IUnknown { 11914 public: 11915 virtual HRESULT WINAPI get_PinCounts(LONG *OutputPinCount,LONG *InputPinCount) = 0; 11916 virtual HRESULT WINAPI CanRoute(LONG OutputPinIndex,LONG InputPinIndex) = 0; 11917 virtual HRESULT WINAPI Route(LONG OutputPinIndex,LONG InputPinIndex) = 0; 11918 virtual HRESULT WINAPI get_IsRoutedTo(LONG OutputPinIndex,LONG *InputPinIndex) = 0; 11919 virtual HRESULT WINAPI get_CrossbarPinInfo(WINBOOL IsInputPin,LONG PinIndex,LONG *PinIndexRelated,LONG *PhysicalType) = 0; 11920 }; 11921 #else 11922 typedef struct IAMCrossbarVtbl { 11923 BEGIN_INTERFACE 11924 HRESULT (WINAPI *QueryInterface)(IAMCrossbar *This,REFIID riid,void **ppvObject); 11925 ULONG (WINAPI *AddRef)(IAMCrossbar *This); 11926 ULONG (WINAPI *Release)(IAMCrossbar *This); 11927 HRESULT (WINAPI *get_PinCounts)(IAMCrossbar *This,LONG *OutputPinCount,LONG *InputPinCount); 11928 HRESULT (WINAPI *CanRoute)(IAMCrossbar *This,LONG OutputPinIndex,LONG InputPinIndex); 11929 HRESULT (WINAPI *Route)(IAMCrossbar *This,LONG OutputPinIndex,LONG InputPinIndex); 11930 HRESULT (WINAPI *get_IsRoutedTo)(IAMCrossbar *This,LONG OutputPinIndex,LONG *InputPinIndex); 11931 HRESULT (WINAPI *get_CrossbarPinInfo)(IAMCrossbar *This,WINBOOL IsInputPin,LONG PinIndex,LONG *PinIndexRelated,LONG *PhysicalType); 11932 END_INTERFACE 11933 } IAMCrossbarVtbl; 11934 struct IAMCrossbar { 11935 CONST_VTBL struct IAMCrossbarVtbl *lpVtbl; 11936 }; 11937 #ifdef COBJMACROS 11938 #define IAMCrossbar_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 11939 #define IAMCrossbar_AddRef(This) (This)->lpVtbl->AddRef(This) 11940 #define IAMCrossbar_Release(This) (This)->lpVtbl->Release(This) 11941 #define IAMCrossbar_get_PinCounts(This,OutputPinCount,InputPinCount) (This)->lpVtbl->get_PinCounts(This,OutputPinCount,InputPinCount) 11942 #define IAMCrossbar_CanRoute(This,OutputPinIndex,InputPinIndex) (This)->lpVtbl->CanRoute(This,OutputPinIndex,InputPinIndex) 11943 #define IAMCrossbar_Route(This,OutputPinIndex,InputPinIndex) (This)->lpVtbl->Route(This,OutputPinIndex,InputPinIndex) 11944 #define IAMCrossbar_get_IsRoutedTo(This,OutputPinIndex,InputPinIndex) (This)->lpVtbl->get_IsRoutedTo(This,OutputPinIndex,InputPinIndex) 11945 #define IAMCrossbar_get_CrossbarPinInfo(This,IsInputPin,PinIndex,PinIndexRelated,PhysicalType) (This)->lpVtbl->get_CrossbarPinInfo(This,IsInputPin,PinIndex,PinIndexRelated,PhysicalType) 11946 #endif 11947 #endif 11948 HRESULT WINAPI IAMCrossbar_get_PinCounts_Proxy(IAMCrossbar *This,LONG *OutputPinCount,LONG *InputPinCount); 11949 void __RPC_STUB IAMCrossbar_get_PinCounts_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11950 HRESULT WINAPI IAMCrossbar_CanRoute_Proxy(IAMCrossbar *This,LONG OutputPinIndex,LONG InputPinIndex); 11951 void __RPC_STUB IAMCrossbar_CanRoute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11952 HRESULT WINAPI IAMCrossbar_Route_Proxy(IAMCrossbar *This,LONG OutputPinIndex,LONG InputPinIndex); 11953 void __RPC_STUB IAMCrossbar_Route_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11954 HRESULT WINAPI IAMCrossbar_get_IsRoutedTo_Proxy(IAMCrossbar *This,LONG OutputPinIndex,LONG *InputPinIndex); 11955 void __RPC_STUB IAMCrossbar_get_IsRoutedTo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11956 HRESULT WINAPI IAMCrossbar_get_CrossbarPinInfo_Proxy(IAMCrossbar *This,WINBOOL IsInputPin,LONG PinIndex,LONG *PinIndexRelated,LONG *PhysicalType); 11957 void __RPC_STUB IAMCrossbar_get_CrossbarPinInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 11958 #endif 11959 11960 typedef enum tagAMTunerSubChannel { 11961 AMTUNER_SUBCHAN_NO_TUNE = -2,AMTUNER_SUBCHAN_DEFAULT = -1 11962 } AMTunerSubChannel; 11963 11964 typedef enum tagAMTunerSignalStrength { 11965 AMTUNER_HASNOSIGNALSTRENGTH = -1,AMTUNER_NOSIGNAL = 0,AMTUNER_SIGNALPRESENT = 1 11966 } AMTunerSignalStrength; 11967 11968 typedef enum tagAMTunerModeType { 11969 AMTUNER_MODE_DEFAULT = 0,AMTUNER_MODE_TV = 0x1,AMTUNER_MODE_FM_RADIO = 0x2,AMTUNER_MODE_AM_RADIO = 0x4,AMTUNER_MODE_DSS = 0x8 11970 } AMTunerModeType; 11971 11972 typedef enum tagAMTunerEventType { 11973 AMTUNER_EVENT_CHANGED = 0x1 11974 } AMTunerEventType; 11975 11976 extern RPC_IF_HANDLE __MIDL_itf_strmif_0178_v0_0_c_ifspec; 11977 extern RPC_IF_HANDLE __MIDL_itf_strmif_0178_v0_0_s_ifspec; 11978 #ifndef __IAMTuner_INTERFACE_DEFINED__ 11979 #define __IAMTuner_INTERFACE_DEFINED__ 11980 EXTERN_C const IID IID_IAMTuner; 11981 #if defined(__cplusplus) && !defined(CINTERFACE) 11982 struct IAMTuner : public IUnknown { 11983 public: 11984 virtual HRESULT WINAPI put_Channel(LONG lChannel,LONG lVideoSubChannel,LONG lAudioSubChannel) = 0; 11985 virtual HRESULT WINAPI get_Channel(LONG *plChannel,LONG *plVideoSubChannel,LONG *plAudioSubChannel) = 0; 11986 virtual HRESULT WINAPI ChannelMinMax(LONG *lChannelMin,LONG *lChannelMax) = 0; 11987 virtual HRESULT WINAPI put_CountryCode(LONG lCountryCode) = 0; 11988 virtual HRESULT WINAPI get_CountryCode(LONG *plCountryCode) = 0; 11989 virtual HRESULT WINAPI put_TuningSpace(LONG lTuningSpace) = 0; 11990 virtual HRESULT WINAPI get_TuningSpace(LONG *plTuningSpace) = 0; 11991 virtual HRESULT WINAPI Logon(HANDLE hCurrentUser) = 0; 11992 virtual HRESULT WINAPI Logout(void) = 0; 11993 virtual HRESULT WINAPI SignalPresent(LONG *plSignalStrength) = 0; 11994 virtual HRESULT WINAPI put_Mode(AMTunerModeType lMode) = 0; 11995 virtual HRESULT WINAPI get_Mode(AMTunerModeType *plMode) = 0; 11996 virtual HRESULT WINAPI GetAvailableModes(LONG *plModes) = 0; 11997 virtual HRESULT WINAPI RegisterNotificationCallBack(IAMTunerNotification *pNotify,LONG lEvents) = 0; 11998 virtual HRESULT WINAPI UnRegisterNotificationCallBack(IAMTunerNotification *pNotify) = 0; 11999 }; 12000 #else 12001 typedef struct IAMTunerVtbl { 12002 BEGIN_INTERFACE 12003 HRESULT (WINAPI *QueryInterface)(IAMTuner *This,REFIID riid,void **ppvObject); 12004 ULONG (WINAPI *AddRef)(IAMTuner *This); 12005 ULONG (WINAPI *Release)(IAMTuner *This); 12006 HRESULT (WINAPI *put_Channel)(IAMTuner *This,LONG lChannel,LONG lVideoSubChannel,LONG lAudioSubChannel); 12007 HRESULT (WINAPI *get_Channel)(IAMTuner *This,LONG *plChannel,LONG *plVideoSubChannel,LONG *plAudioSubChannel); 12008 HRESULT (WINAPI *ChannelMinMax)(IAMTuner *This,LONG *lChannelMin,LONG *lChannelMax); 12009 HRESULT (WINAPI *put_CountryCode)(IAMTuner *This,LONG lCountryCode); 12010 HRESULT (WINAPI *get_CountryCode)(IAMTuner *This,LONG *plCountryCode); 12011 HRESULT (WINAPI *put_TuningSpace)(IAMTuner *This,LONG lTuningSpace); 12012 HRESULT (WINAPI *get_TuningSpace)(IAMTuner *This,LONG *plTuningSpace); 12013 HRESULT (WINAPI *Logon)(IAMTuner *This,HANDLE hCurrentUser); 12014 HRESULT (WINAPI *Logout)(IAMTuner *This); 12015 HRESULT (WINAPI *SignalPresent)(IAMTuner *This,LONG *plSignalStrength); 12016 HRESULT (WINAPI *put_Mode)(IAMTuner *This,AMTunerModeType lMode); 12017 HRESULT (WINAPI *get_Mode)(IAMTuner *This,AMTunerModeType *plMode); 12018 HRESULT (WINAPI *GetAvailableModes)(IAMTuner *This,LONG *plModes); 12019 HRESULT (WINAPI *RegisterNotificationCallBack)(IAMTuner *This,IAMTunerNotification *pNotify,LONG lEvents); 12020 HRESULT (WINAPI *UnRegisterNotificationCallBack)(IAMTuner *This,IAMTunerNotification *pNotify); 12021 END_INTERFACE 12022 } IAMTunerVtbl; 12023 struct IAMTuner { 12024 CONST_VTBL struct IAMTunerVtbl *lpVtbl; 12025 }; 12026 #ifdef COBJMACROS 12027 #define IAMTuner_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12028 #define IAMTuner_AddRef(This) (This)->lpVtbl->AddRef(This) 12029 #define IAMTuner_Release(This) (This)->lpVtbl->Release(This) 12030 #define IAMTuner_put_Channel(This,lChannel,lVideoSubChannel,lAudioSubChannel) (This)->lpVtbl->put_Channel(This,lChannel,lVideoSubChannel,lAudioSubChannel) 12031 #define IAMTuner_get_Channel(This,plChannel,plVideoSubChannel,plAudioSubChannel) (This)->lpVtbl->get_Channel(This,plChannel,plVideoSubChannel,plAudioSubChannel) 12032 #define IAMTuner_ChannelMinMax(This,lChannelMin,lChannelMax) (This)->lpVtbl->ChannelMinMax(This,lChannelMin,lChannelMax) 12033 #define IAMTuner_put_CountryCode(This,lCountryCode) (This)->lpVtbl->put_CountryCode(This,lCountryCode) 12034 #define IAMTuner_get_CountryCode(This,plCountryCode) (This)->lpVtbl->get_CountryCode(This,plCountryCode) 12035 #define IAMTuner_put_TuningSpace(This,lTuningSpace) (This)->lpVtbl->put_TuningSpace(This,lTuningSpace) 12036 #define IAMTuner_get_TuningSpace(This,plTuningSpace) (This)->lpVtbl->get_TuningSpace(This,plTuningSpace) 12037 #define IAMTuner_Logon(This,hCurrentUser) (This)->lpVtbl->Logon(This,hCurrentUser) 12038 #define IAMTuner_Logout(This) (This)->lpVtbl->Logout(This) 12039 #define IAMTuner_SignalPresent(This,plSignalStrength) (This)->lpVtbl->SignalPresent(This,plSignalStrength) 12040 #define IAMTuner_put_Mode(This,lMode) (This)->lpVtbl->put_Mode(This,lMode) 12041 #define IAMTuner_get_Mode(This,plMode) (This)->lpVtbl->get_Mode(This,plMode) 12042 #define IAMTuner_GetAvailableModes(This,plModes) (This)->lpVtbl->GetAvailableModes(This,plModes) 12043 #define IAMTuner_RegisterNotificationCallBack(This,pNotify,lEvents) (This)->lpVtbl->RegisterNotificationCallBack(This,pNotify,lEvents) 12044 #define IAMTuner_UnRegisterNotificationCallBack(This,pNotify) (This)->lpVtbl->UnRegisterNotificationCallBack(This,pNotify) 12045 #endif 12046 #endif 12047 HRESULT WINAPI IAMTuner_put_Channel_Proxy(IAMTuner *This,LONG lChannel,LONG lVideoSubChannel,LONG lAudioSubChannel); 12048 void __RPC_STUB IAMTuner_put_Channel_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12049 HRESULT WINAPI IAMTuner_get_Channel_Proxy(IAMTuner *This,LONG *plChannel,LONG *plVideoSubChannel,LONG *plAudioSubChannel); 12050 void __RPC_STUB IAMTuner_get_Channel_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12051 HRESULT WINAPI IAMTuner_ChannelMinMax_Proxy(IAMTuner *This,LONG *lChannelMin,LONG *lChannelMax); 12052 void __RPC_STUB IAMTuner_ChannelMinMax_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12053 HRESULT WINAPI IAMTuner_put_CountryCode_Proxy(IAMTuner *This,LONG lCountryCode); 12054 void __RPC_STUB IAMTuner_put_CountryCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12055 HRESULT WINAPI IAMTuner_get_CountryCode_Proxy(IAMTuner *This,LONG *plCountryCode); 12056 void __RPC_STUB IAMTuner_get_CountryCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12057 HRESULT WINAPI IAMTuner_put_TuningSpace_Proxy(IAMTuner *This,LONG lTuningSpace); 12058 void __RPC_STUB IAMTuner_put_TuningSpace_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12059 HRESULT WINAPI IAMTuner_get_TuningSpace_Proxy(IAMTuner *This,LONG *plTuningSpace); 12060 void __RPC_STUB IAMTuner_get_TuningSpace_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12061 HRESULT WINAPI IAMTuner_Logon_Proxy(IAMTuner *This,HANDLE hCurrentUser); 12062 void __RPC_STUB IAMTuner_Logon_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12063 HRESULT WINAPI IAMTuner_Logout_Proxy(IAMTuner *This); 12064 void __RPC_STUB IAMTuner_Logout_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12065 HRESULT WINAPI IAMTuner_SignalPresent_Proxy(IAMTuner *This,LONG *plSignalStrength); 12066 void __RPC_STUB IAMTuner_SignalPresent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12067 HRESULT WINAPI IAMTuner_put_Mode_Proxy(IAMTuner *This,AMTunerModeType lMode); 12068 void __RPC_STUB IAMTuner_put_Mode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12069 HRESULT WINAPI IAMTuner_get_Mode_Proxy(IAMTuner *This,AMTunerModeType *plMode); 12070 void __RPC_STUB IAMTuner_get_Mode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12071 HRESULT WINAPI IAMTuner_GetAvailableModes_Proxy(IAMTuner *This,LONG *plModes); 12072 void __RPC_STUB IAMTuner_GetAvailableModes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12073 HRESULT WINAPI IAMTuner_RegisterNotificationCallBack_Proxy(IAMTuner *This,IAMTunerNotification *pNotify,LONG lEvents); 12074 void __RPC_STUB IAMTuner_RegisterNotificationCallBack_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12075 HRESULT WINAPI IAMTuner_UnRegisterNotificationCallBack_Proxy(IAMTuner *This,IAMTunerNotification *pNotify); 12076 void __RPC_STUB IAMTuner_UnRegisterNotificationCallBack_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12077 #endif 12078 12079 #ifndef __IAMTunerNotification_INTERFACE_DEFINED__ 12080 #define __IAMTunerNotification_INTERFACE_DEFINED__ 12081 EXTERN_C const IID IID_IAMTunerNotification; 12082 #if defined(__cplusplus) && !defined(CINTERFACE) 12083 struct IAMTunerNotification : public IUnknown { 12084 public: 12085 virtual HRESULT WINAPI OnEvent(AMTunerEventType Event) = 0; 12086 }; 12087 #else 12088 typedef struct IAMTunerNotificationVtbl { 12089 BEGIN_INTERFACE 12090 HRESULT (WINAPI *QueryInterface)(IAMTunerNotification *This,REFIID riid,void **ppvObject); 12091 ULONG (WINAPI *AddRef)(IAMTunerNotification *This); 12092 ULONG (WINAPI *Release)(IAMTunerNotification *This); 12093 HRESULT (WINAPI *OnEvent)(IAMTunerNotification *This,AMTunerEventType Event); 12094 END_INTERFACE 12095 } IAMTunerNotificationVtbl; 12096 struct IAMTunerNotification { 12097 CONST_VTBL struct IAMTunerNotificationVtbl *lpVtbl; 12098 }; 12099 #ifdef COBJMACROS 12100 #define IAMTunerNotification_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12101 #define IAMTunerNotification_AddRef(This) (This)->lpVtbl->AddRef(This) 12102 #define IAMTunerNotification_Release(This) (This)->lpVtbl->Release(This) 12103 #define IAMTunerNotification_OnEvent(This,Event) (This)->lpVtbl->OnEvent(This,Event) 12104 #endif 12105 #endif 12106 HRESULT WINAPI IAMTunerNotification_OnEvent_Proxy(IAMTunerNotification *This,AMTunerEventType Event); 12107 void __RPC_STUB IAMTunerNotification_OnEvent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12108 #endif 12109 12110 #ifndef __IAMTVTuner_INTERFACE_DEFINED__ 12111 #define __IAMTVTuner_INTERFACE_DEFINED__ 12112 EXTERN_C const IID IID_IAMTVTuner; 12113 #if defined(__cplusplus) && !defined(CINTERFACE) 12114 struct IAMTVTuner : public IAMTuner { 12115 public: 12116 virtual HRESULT WINAPI get_AvailableTVFormats(LONG *lAnalogVideoStandard) = 0; 12117 virtual HRESULT WINAPI get_TVFormat(LONG *plAnalogVideoStandard) = 0; 12118 virtual HRESULT WINAPI AutoTune(LONG lChannel,LONG *plFoundSignal) = 0; 12119 virtual HRESULT WINAPI StoreAutoTune(void) = 0; 12120 virtual HRESULT WINAPI get_NumInputConnections(LONG *plNumInputConnections) = 0; 12121 virtual HRESULT WINAPI put_InputType(LONG lIndex,TunerInputType InputType) = 0; 12122 virtual HRESULT WINAPI get_InputType(LONG lIndex,TunerInputType *pInputType) = 0; 12123 virtual HRESULT WINAPI put_ConnectInput(LONG lIndex) = 0; 12124 virtual HRESULT WINAPI get_ConnectInput(LONG *plIndex) = 0; 12125 virtual HRESULT WINAPI get_VideoFrequency(LONG *lFreq) = 0; 12126 virtual HRESULT WINAPI get_AudioFrequency(LONG *lFreq) = 0; 12127 }; 12128 #else 12129 typedef struct IAMTVTunerVtbl { 12130 BEGIN_INTERFACE 12131 HRESULT (WINAPI *QueryInterface)(IAMTVTuner *This,REFIID riid,void **ppvObject); 12132 ULONG (WINAPI *AddRef)(IAMTVTuner *This); 12133 ULONG (WINAPI *Release)(IAMTVTuner *This); 12134 HRESULT (WINAPI *put_Channel)(IAMTVTuner *This,LONG lChannel,LONG lVideoSubChannel,LONG lAudioSubChannel); 12135 HRESULT (WINAPI *get_Channel)(IAMTVTuner *This,LONG *plChannel,LONG *plVideoSubChannel,LONG *plAudioSubChannel); 12136 HRESULT (WINAPI *ChannelMinMax)(IAMTVTuner *This,LONG *lChannelMin,LONG *lChannelMax); 12137 HRESULT (WINAPI *put_CountryCode)(IAMTVTuner *This,LONG lCountryCode); 12138 HRESULT (WINAPI *get_CountryCode)(IAMTVTuner *This,LONG *plCountryCode); 12139 HRESULT (WINAPI *put_TuningSpace)(IAMTVTuner *This,LONG lTuningSpace); 12140 HRESULT (WINAPI *get_TuningSpace)(IAMTVTuner *This,LONG *plTuningSpace); 12141 HRESULT (WINAPI *Logon)(IAMTVTuner *This,HANDLE hCurrentUser); 12142 HRESULT (WINAPI *Logout)(IAMTVTuner *This); 12143 HRESULT (WINAPI *SignalPresent)(IAMTVTuner *This,LONG *plSignalStrength); 12144 HRESULT (WINAPI *put_Mode)(IAMTVTuner *This,AMTunerModeType lMode); 12145 HRESULT (WINAPI *get_Mode)(IAMTVTuner *This,AMTunerModeType *plMode); 12146 HRESULT (WINAPI *GetAvailableModes)(IAMTVTuner *This,LONG *plModes); 12147 HRESULT (WINAPI *RegisterNotificationCallBack)(IAMTVTuner *This,IAMTunerNotification *pNotify,LONG lEvents); 12148 HRESULT (WINAPI *UnRegisterNotificationCallBack)(IAMTVTuner *This,IAMTunerNotification *pNotify); 12149 HRESULT (WINAPI *get_AvailableTVFormats)(IAMTVTuner *This,LONG *lAnalogVideoStandard); 12150 HRESULT (WINAPI *get_TVFormat)(IAMTVTuner *This,LONG *plAnalogVideoStandard); 12151 HRESULT (WINAPI *AutoTune)(IAMTVTuner *This,LONG lChannel,LONG *plFoundSignal); 12152 HRESULT (WINAPI *StoreAutoTune)(IAMTVTuner *This); 12153 HRESULT (WINAPI *get_NumInputConnections)(IAMTVTuner *This,LONG *plNumInputConnections); 12154 HRESULT (WINAPI *put_InputType)(IAMTVTuner *This,LONG lIndex,TunerInputType InputType); 12155 HRESULT (WINAPI *get_InputType)(IAMTVTuner *This,LONG lIndex,TunerInputType *pInputType); 12156 HRESULT (WINAPI *put_ConnectInput)(IAMTVTuner *This,LONG lIndex); 12157 HRESULT (WINAPI *get_ConnectInput)(IAMTVTuner *This,LONG *plIndex); 12158 HRESULT (WINAPI *get_VideoFrequency)(IAMTVTuner *This,LONG *lFreq); 12159 HRESULT (WINAPI *get_AudioFrequency)(IAMTVTuner *This,LONG *lFreq); 12160 END_INTERFACE 12161 } IAMTVTunerVtbl; 12162 struct IAMTVTuner { 12163 CONST_VTBL struct IAMTVTunerVtbl *lpVtbl; 12164 }; 12165 #ifdef COBJMACROS 12166 #define IAMTVTuner_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12167 #define IAMTVTuner_AddRef(This) (This)->lpVtbl->AddRef(This) 12168 #define IAMTVTuner_Release(This) (This)->lpVtbl->Release(This) 12169 #define IAMTVTuner_put_Channel(This,lChannel,lVideoSubChannel,lAudioSubChannel) (This)->lpVtbl->put_Channel(This,lChannel,lVideoSubChannel,lAudioSubChannel) 12170 #define IAMTVTuner_get_Channel(This,plChannel,plVideoSubChannel,plAudioSubChannel) (This)->lpVtbl->get_Channel(This,plChannel,plVideoSubChannel,plAudioSubChannel) 12171 #define IAMTVTuner_ChannelMinMax(This,lChannelMin,lChannelMax) (This)->lpVtbl->ChannelMinMax(This,lChannelMin,lChannelMax) 12172 #define IAMTVTuner_put_CountryCode(This,lCountryCode) (This)->lpVtbl->put_CountryCode(This,lCountryCode) 12173 #define IAMTVTuner_get_CountryCode(This,plCountryCode) (This)->lpVtbl->get_CountryCode(This,plCountryCode) 12174 #define IAMTVTuner_put_TuningSpace(This,lTuningSpace) (This)->lpVtbl->put_TuningSpace(This,lTuningSpace) 12175 #define IAMTVTuner_get_TuningSpace(This,plTuningSpace) (This)->lpVtbl->get_TuningSpace(This,plTuningSpace) 12176 #define IAMTVTuner_Logon(This,hCurrentUser) (This)->lpVtbl->Logon(This,hCurrentUser) 12177 #define IAMTVTuner_Logout(This) (This)->lpVtbl->Logout(This) 12178 #define IAMTVTuner_SignalPresent(This,plSignalStrength) (This)->lpVtbl->SignalPresent(This,plSignalStrength) 12179 #define IAMTVTuner_put_Mode(This,lMode) (This)->lpVtbl->put_Mode(This,lMode) 12180 #define IAMTVTuner_get_Mode(This,plMode) (This)->lpVtbl->get_Mode(This,plMode) 12181 #define IAMTVTuner_GetAvailableModes(This,plModes) (This)->lpVtbl->GetAvailableModes(This,plModes) 12182 #define IAMTVTuner_RegisterNotificationCallBack(This,pNotify,lEvents) (This)->lpVtbl->RegisterNotificationCallBack(This,pNotify,lEvents) 12183 #define IAMTVTuner_UnRegisterNotificationCallBack(This,pNotify) (This)->lpVtbl->UnRegisterNotificationCallBack(This,pNotify) 12184 #define IAMTVTuner_get_AvailableTVFormats(This,lAnalogVideoStandard) (This)->lpVtbl->get_AvailableTVFormats(This,lAnalogVideoStandard) 12185 #define IAMTVTuner_get_TVFormat(This,plAnalogVideoStandard) (This)->lpVtbl->get_TVFormat(This,plAnalogVideoStandard) 12186 #define IAMTVTuner_AutoTune(This,lChannel,plFoundSignal) (This)->lpVtbl->AutoTune(This,lChannel,plFoundSignal) 12187 #define IAMTVTuner_StoreAutoTune(This) (This)->lpVtbl->StoreAutoTune(This) 12188 #define IAMTVTuner_get_NumInputConnections(This,plNumInputConnections) (This)->lpVtbl->get_NumInputConnections(This,plNumInputConnections) 12189 #define IAMTVTuner_put_InputType(This,lIndex,InputType) (This)->lpVtbl->put_InputType(This,lIndex,InputType) 12190 #define IAMTVTuner_get_InputType(This,lIndex,pInputType) (This)->lpVtbl->get_InputType(This,lIndex,pInputType) 12191 #define IAMTVTuner_put_ConnectInput(This,lIndex) (This)->lpVtbl->put_ConnectInput(This,lIndex) 12192 #define IAMTVTuner_get_ConnectInput(This,plIndex) (This)->lpVtbl->get_ConnectInput(This,plIndex) 12193 #define IAMTVTuner_get_VideoFrequency(This,lFreq) (This)->lpVtbl->get_VideoFrequency(This,lFreq) 12194 #define IAMTVTuner_get_AudioFrequency(This,lFreq) (This)->lpVtbl->get_AudioFrequency(This,lFreq) 12195 #endif 12196 #endif 12197 HRESULT WINAPI IAMTVTuner_get_AvailableTVFormats_Proxy(IAMTVTuner *This,LONG *lAnalogVideoStandard); 12198 void __RPC_STUB IAMTVTuner_get_AvailableTVFormats_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12199 HRESULT WINAPI IAMTVTuner_get_TVFormat_Proxy(IAMTVTuner *This,LONG *plAnalogVideoStandard); 12200 void __RPC_STUB IAMTVTuner_get_TVFormat_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12201 HRESULT WINAPI IAMTVTuner_AutoTune_Proxy(IAMTVTuner *This,LONG lChannel,LONG *plFoundSignal); 12202 void __RPC_STUB IAMTVTuner_AutoTune_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12203 HRESULT WINAPI IAMTVTuner_StoreAutoTune_Proxy(IAMTVTuner *This); 12204 void __RPC_STUB IAMTVTuner_StoreAutoTune_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12205 HRESULT WINAPI IAMTVTuner_get_NumInputConnections_Proxy(IAMTVTuner *This,LONG *plNumInputConnections); 12206 void __RPC_STUB IAMTVTuner_get_NumInputConnections_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12207 HRESULT WINAPI IAMTVTuner_put_InputType_Proxy(IAMTVTuner *This,LONG lIndex,TunerInputType InputType); 12208 void __RPC_STUB IAMTVTuner_put_InputType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12209 HRESULT WINAPI IAMTVTuner_get_InputType_Proxy(IAMTVTuner *This,LONG lIndex,TunerInputType *pInputType); 12210 void __RPC_STUB IAMTVTuner_get_InputType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12211 HRESULT WINAPI IAMTVTuner_put_ConnectInput_Proxy(IAMTVTuner *This,LONG lIndex); 12212 void __RPC_STUB IAMTVTuner_put_ConnectInput_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12213 HRESULT WINAPI IAMTVTuner_get_ConnectInput_Proxy(IAMTVTuner *This,LONG *plIndex); 12214 void __RPC_STUB IAMTVTuner_get_ConnectInput_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12215 HRESULT WINAPI IAMTVTuner_get_VideoFrequency_Proxy(IAMTVTuner *This,LONG *lFreq); 12216 void __RPC_STUB IAMTVTuner_get_VideoFrequency_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12217 HRESULT WINAPI IAMTVTuner_get_AudioFrequency_Proxy(IAMTVTuner *This,LONG *lFreq); 12218 void __RPC_STUB IAMTVTuner_get_AudioFrequency_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12219 #endif 12220 12221 #ifndef __IBPCSatelliteTuner_INTERFACE_DEFINED__ 12222 #define __IBPCSatelliteTuner_INTERFACE_DEFINED__ 12223 EXTERN_C const IID IID_IBPCSatelliteTuner; 12224 #if defined(__cplusplus) && !defined(CINTERFACE) 12225 struct IBPCSatelliteTuner : public IAMTuner { 12226 public: 12227 virtual HRESULT WINAPI get_DefaultSubChannelTypes(LONG *plDefaultVideoType,LONG *plDefaultAudioType) = 0; 12228 virtual HRESULT WINAPI put_DefaultSubChannelTypes(LONG lDefaultVideoType,LONG lDefaultAudioType) = 0; 12229 virtual HRESULT WINAPI IsTapingPermitted(void) = 0; 12230 }; 12231 #else 12232 typedef struct IBPCSatelliteTunerVtbl { 12233 BEGIN_INTERFACE 12234 HRESULT (WINAPI *QueryInterface)(IBPCSatelliteTuner *This,REFIID riid,void **ppvObject); 12235 ULONG (WINAPI *AddRef)(IBPCSatelliteTuner *This); 12236 ULONG (WINAPI *Release)(IBPCSatelliteTuner *This); 12237 HRESULT (WINAPI *put_Channel)(IBPCSatelliteTuner *This,LONG lChannel,LONG lVideoSubChannel,LONG lAudioSubChannel); 12238 HRESULT (WINAPI *get_Channel)(IBPCSatelliteTuner *This,LONG *plChannel,LONG *plVideoSubChannel,LONG *plAudioSubChannel); 12239 HRESULT (WINAPI *ChannelMinMax)(IBPCSatelliteTuner *This,LONG *lChannelMin,LONG *lChannelMax); 12240 HRESULT (WINAPI *put_CountryCode)(IBPCSatelliteTuner *This,LONG lCountryCode); 12241 HRESULT (WINAPI *get_CountryCode)(IBPCSatelliteTuner *This,LONG *plCountryCode); 12242 HRESULT (WINAPI *put_TuningSpace)(IBPCSatelliteTuner *This,LONG lTuningSpace); 12243 HRESULT (WINAPI *get_TuningSpace)(IBPCSatelliteTuner *This,LONG *plTuningSpace); 12244 HRESULT (WINAPI *Logon)(IBPCSatelliteTuner *This,HANDLE hCurrentUser); 12245 HRESULT (WINAPI *Logout)(IBPCSatelliteTuner *This); 12246 HRESULT (WINAPI *SignalPresent)(IBPCSatelliteTuner *This,LONG *plSignalStrength); 12247 HRESULT (WINAPI *put_Mode)(IBPCSatelliteTuner *This,AMTunerModeType lMode); 12248 HRESULT (WINAPI *get_Mode)(IBPCSatelliteTuner *This,AMTunerModeType *plMode); 12249 HRESULT (WINAPI *GetAvailableModes)(IBPCSatelliteTuner *This,LONG *plModes); 12250 HRESULT (WINAPI *RegisterNotificationCallBack)(IBPCSatelliteTuner *This,IAMTunerNotification *pNotify,LONG lEvents); 12251 HRESULT (WINAPI *UnRegisterNotificationCallBack)(IBPCSatelliteTuner *This,IAMTunerNotification *pNotify); 12252 HRESULT (WINAPI *get_DefaultSubChannelTypes)(IBPCSatelliteTuner *This,LONG *plDefaultVideoType,LONG *plDefaultAudioType); 12253 HRESULT (WINAPI *put_DefaultSubChannelTypes)(IBPCSatelliteTuner *This,LONG lDefaultVideoType,LONG lDefaultAudioType); 12254 HRESULT (WINAPI *IsTapingPermitted)(IBPCSatelliteTuner *This); 12255 END_INTERFACE 12256 } IBPCSatelliteTunerVtbl; 12257 struct IBPCSatelliteTuner { 12258 CONST_VTBL struct IBPCSatelliteTunerVtbl *lpVtbl; 12259 }; 12260 #ifdef COBJMACROS 12261 #define IBPCSatelliteTuner_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12262 #define IBPCSatelliteTuner_AddRef(This) (This)->lpVtbl->AddRef(This) 12263 #define IBPCSatelliteTuner_Release(This) (This)->lpVtbl->Release(This) 12264 #define IBPCSatelliteTuner_put_Channel(This,lChannel,lVideoSubChannel,lAudioSubChannel) (This)->lpVtbl->put_Channel(This,lChannel,lVideoSubChannel,lAudioSubChannel) 12265 #define IBPCSatelliteTuner_get_Channel(This,plChannel,plVideoSubChannel,plAudioSubChannel) (This)->lpVtbl->get_Channel(This,plChannel,plVideoSubChannel,plAudioSubChannel) 12266 #define IBPCSatelliteTuner_ChannelMinMax(This,lChannelMin,lChannelMax) (This)->lpVtbl->ChannelMinMax(This,lChannelMin,lChannelMax) 12267 #define IBPCSatelliteTuner_put_CountryCode(This,lCountryCode) (This)->lpVtbl->put_CountryCode(This,lCountryCode) 12268 #define IBPCSatelliteTuner_get_CountryCode(This,plCountryCode) (This)->lpVtbl->get_CountryCode(This,plCountryCode) 12269 #define IBPCSatelliteTuner_put_TuningSpace(This,lTuningSpace) (This)->lpVtbl->put_TuningSpace(This,lTuningSpace) 12270 #define IBPCSatelliteTuner_get_TuningSpace(This,plTuningSpace) (This)->lpVtbl->get_TuningSpace(This,plTuningSpace) 12271 #define IBPCSatelliteTuner_Logon(This,hCurrentUser) (This)->lpVtbl->Logon(This,hCurrentUser) 12272 #define IBPCSatelliteTuner_Logout(This) (This)->lpVtbl->Logout(This) 12273 #define IBPCSatelliteTuner_SignalPresent(This,plSignalStrength) (This)->lpVtbl->SignalPresent(This,plSignalStrength) 12274 #define IBPCSatelliteTuner_put_Mode(This,lMode) (This)->lpVtbl->put_Mode(This,lMode) 12275 #define IBPCSatelliteTuner_get_Mode(This,plMode) (This)->lpVtbl->get_Mode(This,plMode) 12276 #define IBPCSatelliteTuner_GetAvailableModes(This,plModes) (This)->lpVtbl->GetAvailableModes(This,plModes) 12277 #define IBPCSatelliteTuner_RegisterNotificationCallBack(This,pNotify,lEvents) (This)->lpVtbl->RegisterNotificationCallBack(This,pNotify,lEvents) 12278 #define IBPCSatelliteTuner_UnRegisterNotificationCallBack(This,pNotify) (This)->lpVtbl->UnRegisterNotificationCallBack(This,pNotify) 12279 #define IBPCSatelliteTuner_get_DefaultSubChannelTypes(This,plDefaultVideoType,plDefaultAudioType) (This)->lpVtbl->get_DefaultSubChannelTypes(This,plDefaultVideoType,plDefaultAudioType) 12280 #define IBPCSatelliteTuner_put_DefaultSubChannelTypes(This,lDefaultVideoType,lDefaultAudioType) (This)->lpVtbl->put_DefaultSubChannelTypes(This,lDefaultVideoType,lDefaultAudioType) 12281 #define IBPCSatelliteTuner_IsTapingPermitted(This) (This)->lpVtbl->IsTapingPermitted(This) 12282 #endif 12283 #endif 12284 HRESULT WINAPI IBPCSatelliteTuner_get_DefaultSubChannelTypes_Proxy(IBPCSatelliteTuner *This,LONG *plDefaultVideoType,LONG *plDefaultAudioType); 12285 void __RPC_STUB IBPCSatelliteTuner_get_DefaultSubChannelTypes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12286 HRESULT WINAPI IBPCSatelliteTuner_put_DefaultSubChannelTypes_Proxy(IBPCSatelliteTuner *This,LONG lDefaultVideoType,LONG lDefaultAudioType); 12287 void __RPC_STUB IBPCSatelliteTuner_put_DefaultSubChannelTypes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12288 HRESULT WINAPI IBPCSatelliteTuner_IsTapingPermitted_Proxy(IBPCSatelliteTuner *This); 12289 void __RPC_STUB IBPCSatelliteTuner_IsTapingPermitted_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12290 #endif 12291 12292 typedef enum tagAMTVAudioEventType { 12293 AMTVAUDIO_EVENT_CHANGED = 0x1 12294 } AMTVAudioEventType; 12295 12296 extern RPC_IF_HANDLE __MIDL_itf_strmif_0182_v0_0_c_ifspec; 12297 extern RPC_IF_HANDLE __MIDL_itf_strmif_0182_v0_0_s_ifspec; 12298 #ifndef __IAMTVAudio_INTERFACE_DEFINED__ 12299 #define __IAMTVAudio_INTERFACE_DEFINED__ 12300 EXTERN_C const IID IID_IAMTVAudio; 12301 #if defined(__cplusplus) && !defined(CINTERFACE) 12302 struct IAMTVAudio : public IUnknown { 12303 public: 12304 virtual HRESULT WINAPI GetHardwareSupportedTVAudioModes(LONG *plModes) = 0; 12305 virtual HRESULT WINAPI GetAvailableTVAudioModes(LONG *plModes) = 0; 12306 virtual HRESULT WINAPI get_TVAudioMode(LONG *plMode) = 0; 12307 virtual HRESULT WINAPI put_TVAudioMode(LONG lMode) = 0; 12308 virtual HRESULT WINAPI RegisterNotificationCallBack(IAMTunerNotification *pNotify,LONG lEvents) = 0; 12309 virtual HRESULT WINAPI UnRegisterNotificationCallBack(IAMTunerNotification *pNotify) = 0; 12310 }; 12311 #else 12312 typedef struct IAMTVAudioVtbl { 12313 BEGIN_INTERFACE 12314 HRESULT (WINAPI *QueryInterface)(IAMTVAudio *This,REFIID riid,void **ppvObject); 12315 ULONG (WINAPI *AddRef)(IAMTVAudio *This); 12316 ULONG (WINAPI *Release)(IAMTVAudio *This); 12317 HRESULT (WINAPI *GetHardwareSupportedTVAudioModes)(IAMTVAudio *This,LONG *plModes); 12318 HRESULT (WINAPI *GetAvailableTVAudioModes)(IAMTVAudio *This,LONG *plModes); 12319 HRESULT (WINAPI *get_TVAudioMode)(IAMTVAudio *This,LONG *plMode); 12320 HRESULT (WINAPI *put_TVAudioMode)(IAMTVAudio *This,LONG lMode); 12321 HRESULT (WINAPI *RegisterNotificationCallBack)(IAMTVAudio *This,IAMTunerNotification *pNotify,LONG lEvents); 12322 HRESULT (WINAPI *UnRegisterNotificationCallBack)(IAMTVAudio *This,IAMTunerNotification *pNotify); 12323 END_INTERFACE 12324 } IAMTVAudioVtbl; 12325 struct IAMTVAudio { 12326 CONST_VTBL struct IAMTVAudioVtbl *lpVtbl; 12327 }; 12328 #ifdef COBJMACROS 12329 #define IAMTVAudio_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12330 #define IAMTVAudio_AddRef(This) (This)->lpVtbl->AddRef(This) 12331 #define IAMTVAudio_Release(This) (This)->lpVtbl->Release(This) 12332 #define IAMTVAudio_GetHardwareSupportedTVAudioModes(This,plModes) (This)->lpVtbl->GetHardwareSupportedTVAudioModes(This,plModes) 12333 #define IAMTVAudio_GetAvailableTVAudioModes(This,plModes) (This)->lpVtbl->GetAvailableTVAudioModes(This,plModes) 12334 #define IAMTVAudio_get_TVAudioMode(This,plMode) (This)->lpVtbl->get_TVAudioMode(This,plMode) 12335 #define IAMTVAudio_put_TVAudioMode(This,lMode) (This)->lpVtbl->put_TVAudioMode(This,lMode) 12336 #define IAMTVAudio_RegisterNotificationCallBack(This,pNotify,lEvents) (This)->lpVtbl->RegisterNotificationCallBack(This,pNotify,lEvents) 12337 #define IAMTVAudio_UnRegisterNotificationCallBack(This,pNotify) (This)->lpVtbl->UnRegisterNotificationCallBack(This,pNotify) 12338 #endif 12339 #endif 12340 HRESULT WINAPI IAMTVAudio_GetHardwareSupportedTVAudioModes_Proxy(IAMTVAudio *This,LONG *plModes); 12341 void __RPC_STUB IAMTVAudio_GetHardwareSupportedTVAudioModes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12342 HRESULT WINAPI IAMTVAudio_GetAvailableTVAudioModes_Proxy(IAMTVAudio *This,LONG *plModes); 12343 void __RPC_STUB IAMTVAudio_GetAvailableTVAudioModes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12344 HRESULT WINAPI IAMTVAudio_get_TVAudioMode_Proxy(IAMTVAudio *This,LONG *plMode); 12345 void __RPC_STUB IAMTVAudio_get_TVAudioMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12346 HRESULT WINAPI IAMTVAudio_put_TVAudioMode_Proxy(IAMTVAudio *This,LONG lMode); 12347 void __RPC_STUB IAMTVAudio_put_TVAudioMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12348 HRESULT WINAPI IAMTVAudio_RegisterNotificationCallBack_Proxy(IAMTVAudio *This,IAMTunerNotification *pNotify,LONG lEvents); 12349 void __RPC_STUB IAMTVAudio_RegisterNotificationCallBack_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12350 HRESULT WINAPI IAMTVAudio_UnRegisterNotificationCallBack_Proxy(IAMTVAudio *This,IAMTunerNotification *pNotify); 12351 void __RPC_STUB IAMTVAudio_UnRegisterNotificationCallBack_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12352 #endif 12353 12354 #ifndef __IAMTVAudioNotification_INTERFACE_DEFINED__ 12355 #define __IAMTVAudioNotification_INTERFACE_DEFINED__ 12356 EXTERN_C const IID IID_IAMTVAudioNotification; 12357 #if defined(__cplusplus) && !defined(CINTERFACE) 12358 struct IAMTVAudioNotification : public IUnknown { 12359 public: 12360 virtual HRESULT WINAPI OnEvent(AMTVAudioEventType Event) = 0; 12361 }; 12362 #else 12363 typedef struct IAMTVAudioNotificationVtbl { 12364 BEGIN_INTERFACE 12365 HRESULT (WINAPI *QueryInterface)(IAMTVAudioNotification *This,REFIID riid,void **ppvObject); 12366 ULONG (WINAPI *AddRef)(IAMTVAudioNotification *This); 12367 ULONG (WINAPI *Release)(IAMTVAudioNotification *This); 12368 HRESULT (WINAPI *OnEvent)(IAMTVAudioNotification *This,AMTVAudioEventType Event); 12369 END_INTERFACE 12370 } IAMTVAudioNotificationVtbl; 12371 struct IAMTVAudioNotification { 12372 CONST_VTBL struct IAMTVAudioNotificationVtbl *lpVtbl; 12373 }; 12374 #ifdef COBJMACROS 12375 #define IAMTVAudioNotification_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12376 #define IAMTVAudioNotification_AddRef(This) (This)->lpVtbl->AddRef(This) 12377 #define IAMTVAudioNotification_Release(This) (This)->lpVtbl->Release(This) 12378 #define IAMTVAudioNotification_OnEvent(This,Event) (This)->lpVtbl->OnEvent(This,Event) 12379 #endif 12380 #endif 12381 HRESULT WINAPI IAMTVAudioNotification_OnEvent_Proxy(IAMTVAudioNotification *This,AMTVAudioEventType Event); 12382 void __RPC_STUB IAMTVAudioNotification_OnEvent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12383 #endif 12384 12385 #ifndef __IAMAnalogVideoEncoder_INTERFACE_DEFINED__ 12386 #define __IAMAnalogVideoEncoder_INTERFACE_DEFINED__ 12387 EXTERN_C const IID IID_IAMAnalogVideoEncoder; 12388 #if defined(__cplusplus) && !defined(CINTERFACE) 12389 struct IAMAnalogVideoEncoder : public IUnknown { 12390 public: 12391 virtual HRESULT WINAPI get_AvailableTVFormats(LONG *lAnalogVideoStandard) = 0; 12392 virtual HRESULT WINAPI put_TVFormat(LONG lAnalogVideoStandard) = 0; 12393 virtual HRESULT WINAPI get_TVFormat(LONG *plAnalogVideoStandard) = 0; 12394 virtual HRESULT WINAPI put_CopyProtection(LONG lVideoCopyProtection) = 0; 12395 virtual HRESULT WINAPI get_CopyProtection(LONG *lVideoCopyProtection) = 0; 12396 virtual HRESULT WINAPI put_CCEnable(LONG lCCEnable) = 0; 12397 virtual HRESULT WINAPI get_CCEnable(LONG *lCCEnable) = 0; 12398 }; 12399 #else 12400 typedef struct IAMAnalogVideoEncoderVtbl { 12401 BEGIN_INTERFACE 12402 HRESULT (WINAPI *QueryInterface)(IAMAnalogVideoEncoder *This,REFIID riid,void **ppvObject); 12403 ULONG (WINAPI *AddRef)(IAMAnalogVideoEncoder *This); 12404 ULONG (WINAPI *Release)(IAMAnalogVideoEncoder *This); 12405 HRESULT (WINAPI *get_AvailableTVFormats)(IAMAnalogVideoEncoder *This,LONG *lAnalogVideoStandard); 12406 HRESULT (WINAPI *put_TVFormat)(IAMAnalogVideoEncoder *This,LONG lAnalogVideoStandard); 12407 HRESULT (WINAPI *get_TVFormat)(IAMAnalogVideoEncoder *This,LONG *plAnalogVideoStandard); 12408 HRESULT (WINAPI *put_CopyProtection)(IAMAnalogVideoEncoder *This,LONG lVideoCopyProtection); 12409 HRESULT (WINAPI *get_CopyProtection)(IAMAnalogVideoEncoder *This,LONG *lVideoCopyProtection); 12410 HRESULT (WINAPI *put_CCEnable)(IAMAnalogVideoEncoder *This,LONG lCCEnable); 12411 HRESULT (WINAPI *get_CCEnable)(IAMAnalogVideoEncoder *This,LONG *lCCEnable); 12412 END_INTERFACE 12413 } IAMAnalogVideoEncoderVtbl; 12414 struct IAMAnalogVideoEncoder { 12415 CONST_VTBL struct IAMAnalogVideoEncoderVtbl *lpVtbl; 12416 }; 12417 #ifdef COBJMACROS 12418 #define IAMAnalogVideoEncoder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12419 #define IAMAnalogVideoEncoder_AddRef(This) (This)->lpVtbl->AddRef(This) 12420 #define IAMAnalogVideoEncoder_Release(This) (This)->lpVtbl->Release(This) 12421 #define IAMAnalogVideoEncoder_get_AvailableTVFormats(This,lAnalogVideoStandard) (This)->lpVtbl->get_AvailableTVFormats(This,lAnalogVideoStandard) 12422 #define IAMAnalogVideoEncoder_put_TVFormat(This,lAnalogVideoStandard) (This)->lpVtbl->put_TVFormat(This,lAnalogVideoStandard) 12423 #define IAMAnalogVideoEncoder_get_TVFormat(This,plAnalogVideoStandard) (This)->lpVtbl->get_TVFormat(This,plAnalogVideoStandard) 12424 #define IAMAnalogVideoEncoder_put_CopyProtection(This,lVideoCopyProtection) (This)->lpVtbl->put_CopyProtection(This,lVideoCopyProtection) 12425 #define IAMAnalogVideoEncoder_get_CopyProtection(This,lVideoCopyProtection) (This)->lpVtbl->get_CopyProtection(This,lVideoCopyProtection) 12426 #define IAMAnalogVideoEncoder_put_CCEnable(This,lCCEnable) (This)->lpVtbl->put_CCEnable(This,lCCEnable) 12427 #define IAMAnalogVideoEncoder_get_CCEnable(This,lCCEnable) (This)->lpVtbl->get_CCEnable(This,lCCEnable) 12428 #endif 12429 #endif 12430 HRESULT WINAPI IAMAnalogVideoEncoder_get_AvailableTVFormats_Proxy(IAMAnalogVideoEncoder *This,LONG *lAnalogVideoStandard); 12431 void __RPC_STUB IAMAnalogVideoEncoder_get_AvailableTVFormats_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12432 HRESULT WINAPI IAMAnalogVideoEncoder_put_TVFormat_Proxy(IAMAnalogVideoEncoder *This,LONG lAnalogVideoStandard); 12433 void __RPC_STUB IAMAnalogVideoEncoder_put_TVFormat_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12434 HRESULT WINAPI IAMAnalogVideoEncoder_get_TVFormat_Proxy(IAMAnalogVideoEncoder *This,LONG *plAnalogVideoStandard); 12435 void __RPC_STUB IAMAnalogVideoEncoder_get_TVFormat_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12436 HRESULT WINAPI IAMAnalogVideoEncoder_put_CopyProtection_Proxy(IAMAnalogVideoEncoder *This,LONG lVideoCopyProtection); 12437 void __RPC_STUB IAMAnalogVideoEncoder_put_CopyProtection_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12438 HRESULT WINAPI IAMAnalogVideoEncoder_get_CopyProtection_Proxy(IAMAnalogVideoEncoder *This,LONG *lVideoCopyProtection); 12439 void __RPC_STUB IAMAnalogVideoEncoder_get_CopyProtection_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12440 HRESULT WINAPI IAMAnalogVideoEncoder_put_CCEnable_Proxy(IAMAnalogVideoEncoder *This,LONG lCCEnable); 12441 void __RPC_STUB IAMAnalogVideoEncoder_put_CCEnable_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12442 HRESULT WINAPI IAMAnalogVideoEncoder_get_CCEnable_Proxy(IAMAnalogVideoEncoder *This,LONG *lCCEnable); 12443 void __RPC_STUB IAMAnalogVideoEncoder_get_CCEnable_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12444 #endif 12445 12446 typedef enum __MIDL___MIDL_itf_strmif_0185_0001 { 12447 AMPROPERTY_PIN_CATEGORY = 0,AMPROPERTY_PIN_MEDIUM = AMPROPERTY_PIN_CATEGORY + 1 12448 } AMPROPERTY_PIN; 12449 12450 #ifndef __IAMPhysicalPinInfo_INTERFACE_DEFINED__ 12451 #define __IAMPhysicalPinInfo_INTERFACE_DEFINED__ 12452 EXTERN_C const IID IID_IAMPhysicalPinInfo; 12453 #if defined(__cplusplus) && !defined(CINTERFACE) 12454 struct IAMPhysicalPinInfo : public IUnknown { 12455 public: 12456 virtual HRESULT WINAPI GetPhysicalType(LONG *pType,LPOLESTR *ppszType) = 0; 12457 }; 12458 #else 12459 typedef struct IAMPhysicalPinInfoVtbl { 12460 BEGIN_INTERFACE 12461 HRESULT (WINAPI *QueryInterface)(IAMPhysicalPinInfo *This,REFIID riid,void **ppvObject); 12462 ULONG (WINAPI *AddRef)(IAMPhysicalPinInfo *This); 12463 ULONG (WINAPI *Release)(IAMPhysicalPinInfo *This); 12464 HRESULT (WINAPI *GetPhysicalType)(IAMPhysicalPinInfo *This,LONG *pType,LPOLESTR *ppszType); 12465 END_INTERFACE 12466 } IAMPhysicalPinInfoVtbl; 12467 struct IAMPhysicalPinInfo { 12468 CONST_VTBL struct IAMPhysicalPinInfoVtbl *lpVtbl; 12469 }; 12470 #ifdef COBJMACROS 12471 #define IAMPhysicalPinInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12472 #define IAMPhysicalPinInfo_AddRef(This) (This)->lpVtbl->AddRef(This) 12473 #define IAMPhysicalPinInfo_Release(This) (This)->lpVtbl->Release(This) 12474 #define IAMPhysicalPinInfo_GetPhysicalType(This,pType,ppszType) (This)->lpVtbl->GetPhysicalType(This,pType,ppszType) 12475 #endif 12476 #endif 12477 HRESULT WINAPI IAMPhysicalPinInfo_GetPhysicalType_Proxy(IAMPhysicalPinInfo *This,LONG *pType,LPOLESTR *ppszType); 12478 void __RPC_STUB IAMPhysicalPinInfo_GetPhysicalType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12479 #endif 12480 12481 typedef IAMPhysicalPinInfo *PAMPHYSICALPININFO; 12482 12483 extern RPC_IF_HANDLE __MIDL_itf_strmif_0338_v0_0_c_ifspec; 12484 extern RPC_IF_HANDLE __MIDL_itf_strmif_0338_v0_0_s_ifspec; 12485 #ifndef __IAMExtDevice_INTERFACE_DEFINED__ 12486 #define __IAMExtDevice_INTERFACE_DEFINED__ 12487 EXTERN_C const IID IID_IAMExtDevice; 12488 #if defined(__cplusplus) && !defined(CINTERFACE) 12489 struct IAMExtDevice : public IUnknown { 12490 public: 12491 virtual HRESULT WINAPI GetCapability(LONG Capability,LONG *pValue,double *pdblValue) = 0; 12492 virtual HRESULT WINAPI get_ExternalDeviceID(LPOLESTR *ppszData) = 0; 12493 virtual HRESULT WINAPI get_ExternalDeviceVersion(LPOLESTR *ppszData) = 0; 12494 virtual HRESULT WINAPI put_DevicePower(LONG PowerMode) = 0; 12495 virtual HRESULT WINAPI get_DevicePower(LONG *pPowerMode) = 0; 12496 virtual HRESULT WINAPI Calibrate(HEVENT hEvent,LONG Mode,LONG *pStatus) = 0; 12497 virtual HRESULT WINAPI put_DevicePort(LONG DevicePort) = 0; 12498 virtual HRESULT WINAPI get_DevicePort(LONG *pDevicePort) = 0; 12499 }; 12500 #else 12501 typedef struct IAMExtDeviceVtbl { 12502 BEGIN_INTERFACE 12503 HRESULT (WINAPI *QueryInterface)(IAMExtDevice *This,REFIID riid,void **ppvObject); 12504 ULONG (WINAPI *AddRef)(IAMExtDevice *This); 12505 ULONG (WINAPI *Release)(IAMExtDevice *This); 12506 HRESULT (WINAPI *GetCapability)(IAMExtDevice *This,LONG Capability,LONG *pValue,double *pdblValue); 12507 HRESULT (WINAPI *get_ExternalDeviceID)(IAMExtDevice *This,LPOLESTR *ppszData); 12508 HRESULT (WINAPI *get_ExternalDeviceVersion)(IAMExtDevice *This,LPOLESTR *ppszData); 12509 HRESULT (WINAPI *put_DevicePower)(IAMExtDevice *This,LONG PowerMode); 12510 HRESULT (WINAPI *get_DevicePower)(IAMExtDevice *This,LONG *pPowerMode); 12511 HRESULT (WINAPI *Calibrate)(IAMExtDevice *This,HEVENT hEvent,LONG Mode,LONG *pStatus); 12512 HRESULT (WINAPI *put_DevicePort)(IAMExtDevice *This,LONG DevicePort); 12513 HRESULT (WINAPI *get_DevicePort)(IAMExtDevice *This,LONG *pDevicePort); 12514 END_INTERFACE 12515 } IAMExtDeviceVtbl; 12516 struct IAMExtDevice { 12517 CONST_VTBL struct IAMExtDeviceVtbl *lpVtbl; 12518 }; 12519 #ifdef COBJMACROS 12520 #define IAMExtDevice_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12521 #define IAMExtDevice_AddRef(This) (This)->lpVtbl->AddRef(This) 12522 #define IAMExtDevice_Release(This) (This)->lpVtbl->Release(This) 12523 #define IAMExtDevice_GetCapability(This,Capability,pValue,pdblValue) (This)->lpVtbl->GetCapability(This,Capability,pValue,pdblValue) 12524 #define IAMExtDevice_get_ExternalDeviceID(This,ppszData) (This)->lpVtbl->get_ExternalDeviceID(This,ppszData) 12525 #define IAMExtDevice_get_ExternalDeviceVersion(This,ppszData) (This)->lpVtbl->get_ExternalDeviceVersion(This,ppszData) 12526 #define IAMExtDevice_put_DevicePower(This,PowerMode) (This)->lpVtbl->put_DevicePower(This,PowerMode) 12527 #define IAMExtDevice_get_DevicePower(This,pPowerMode) (This)->lpVtbl->get_DevicePower(This,pPowerMode) 12528 #define IAMExtDevice_Calibrate(This,hEvent,Mode,pStatus) (This)->lpVtbl->Calibrate(This,hEvent,Mode,pStatus) 12529 #define IAMExtDevice_put_DevicePort(This,DevicePort) (This)->lpVtbl->put_DevicePort(This,DevicePort) 12530 #define IAMExtDevice_get_DevicePort(This,pDevicePort) (This)->lpVtbl->get_DevicePort(This,pDevicePort) 12531 #endif 12532 #endif 12533 HRESULT WINAPI IAMExtDevice_GetCapability_Proxy(IAMExtDevice *This,LONG Capability,LONG *pValue,double *pdblValue); 12534 void __RPC_STUB IAMExtDevice_GetCapability_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12535 HRESULT WINAPI IAMExtDevice_get_ExternalDeviceID_Proxy(IAMExtDevice *This,LPOLESTR *ppszData); 12536 void __RPC_STUB IAMExtDevice_get_ExternalDeviceID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12537 HRESULT WINAPI IAMExtDevice_get_ExternalDeviceVersion_Proxy(IAMExtDevice *This,LPOLESTR *ppszData); 12538 void __RPC_STUB IAMExtDevice_get_ExternalDeviceVersion_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12539 HRESULT WINAPI IAMExtDevice_put_DevicePower_Proxy(IAMExtDevice *This,LONG PowerMode); 12540 void __RPC_STUB IAMExtDevice_put_DevicePower_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12541 HRESULT WINAPI IAMExtDevice_get_DevicePower_Proxy(IAMExtDevice *This,LONG *pPowerMode); 12542 void __RPC_STUB IAMExtDevice_get_DevicePower_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12543 HRESULT WINAPI IAMExtDevice_Calibrate_Proxy(IAMExtDevice *This,HEVENT hEvent,LONG Mode,LONG *pStatus); 12544 void __RPC_STUB IAMExtDevice_Calibrate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12545 HRESULT WINAPI IAMExtDevice_put_DevicePort_Proxy(IAMExtDevice *This,LONG DevicePort); 12546 void __RPC_STUB IAMExtDevice_put_DevicePort_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12547 HRESULT WINAPI IAMExtDevice_get_DevicePort_Proxy(IAMExtDevice *This,LONG *pDevicePort); 12548 void __RPC_STUB IAMExtDevice_get_DevicePort_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12549 #endif 12550 12551 typedef IAMExtDevice *PEXTDEVICE; 12552 12553 extern RPC_IF_HANDLE __MIDL_itf_strmif_0339_v0_0_c_ifspec; 12554 extern RPC_IF_HANDLE __MIDL_itf_strmif_0339_v0_0_s_ifspec; 12555 #ifndef __IAMExtTransport_INTERFACE_DEFINED__ 12556 #define __IAMExtTransport_INTERFACE_DEFINED__ 12557 EXTERN_C const IID IID_IAMExtTransport; 12558 #if defined(__cplusplus) && !defined(CINTERFACE) 12559 struct IAMExtTransport : public IUnknown { 12560 public: 12561 virtual HRESULT WINAPI GetCapability(LONG Capability,LONG *pValue,double *pdblValue) = 0; 12562 virtual HRESULT WINAPI put_MediaState(LONG State) = 0; 12563 virtual HRESULT WINAPI get_MediaState(LONG *pState) = 0; 12564 virtual HRESULT WINAPI put_LocalControl(LONG State) = 0; 12565 virtual HRESULT WINAPI get_LocalControl(LONG *pState) = 0; 12566 virtual HRESULT WINAPI GetStatus(LONG StatusItem,LONG *pValue) = 0; 12567 virtual HRESULT WINAPI GetTransportBasicParameters(LONG Param,LONG *pValue,LPOLESTR *ppszData) = 0; 12568 virtual HRESULT WINAPI SetTransportBasicParameters(LONG Param,LONG Value,LPCOLESTR pszData) = 0; 12569 virtual HRESULT WINAPI GetTransportVideoParameters(LONG Param,LONG *pValue) = 0; 12570 virtual HRESULT WINAPI SetTransportVideoParameters(LONG Param,LONG Value) = 0; 12571 virtual HRESULT WINAPI GetTransportAudioParameters(LONG Param,LONG *pValue) = 0; 12572 virtual HRESULT WINAPI SetTransportAudioParameters(LONG Param,LONG Value) = 0; 12573 virtual HRESULT WINAPI put_Mode(LONG Mode) = 0; 12574 virtual HRESULT WINAPI get_Mode(LONG *pMode) = 0; 12575 virtual HRESULT WINAPI put_Rate(double dblRate) = 0; 12576 virtual HRESULT WINAPI get_Rate(double *pdblRate) = 0; 12577 virtual HRESULT WINAPI GetChase(LONG *pEnabled,LONG *pOffset,HEVENT *phEvent) = 0; 12578 virtual HRESULT WINAPI SetChase(LONG Enable,LONG Offset,HEVENT hEvent) = 0; 12579 virtual HRESULT WINAPI GetBump(LONG *pSpeed,LONG *pDuration) = 0; 12580 virtual HRESULT WINAPI SetBump(LONG Speed,LONG Duration) = 0; 12581 virtual HRESULT WINAPI get_AntiClogControl(LONG *pEnabled) = 0; 12582 virtual HRESULT WINAPI put_AntiClogControl(LONG Enable) = 0; 12583 virtual HRESULT WINAPI GetEditPropertySet(LONG EditID,LONG *pState) = 0; 12584 virtual HRESULT WINAPI SetEditPropertySet(LONG *pEditID,LONG State) = 0; 12585 virtual HRESULT WINAPI GetEditProperty(LONG EditID,LONG Param,LONG *pValue) = 0; 12586 virtual HRESULT WINAPI SetEditProperty(LONG EditID,LONG Param,LONG Value) = 0; 12587 virtual HRESULT WINAPI get_EditStart(LONG *pValue) = 0; 12588 virtual HRESULT WINAPI put_EditStart(LONG Value) = 0; 12589 }; 12590 #else 12591 typedef struct IAMExtTransportVtbl { 12592 BEGIN_INTERFACE 12593 HRESULT (WINAPI *QueryInterface)(IAMExtTransport *This,REFIID riid,void **ppvObject); 12594 ULONG (WINAPI *AddRef)(IAMExtTransport *This); 12595 ULONG (WINAPI *Release)(IAMExtTransport *This); 12596 HRESULT (WINAPI *GetCapability)(IAMExtTransport *This,LONG Capability,LONG *pValue,double *pdblValue); 12597 HRESULT (WINAPI *put_MediaState)(IAMExtTransport *This,LONG State); 12598 HRESULT (WINAPI *get_MediaState)(IAMExtTransport *This,LONG *pState); 12599 HRESULT (WINAPI *put_LocalControl)(IAMExtTransport *This,LONG State); 12600 HRESULT (WINAPI *get_LocalControl)(IAMExtTransport *This,LONG *pState); 12601 HRESULT (WINAPI *GetStatus)(IAMExtTransport *This,LONG StatusItem,LONG *pValue); 12602 HRESULT (WINAPI *GetTransportBasicParameters)(IAMExtTransport *This,LONG Param,LONG *pValue,LPOLESTR *ppszData); 12603 HRESULT (WINAPI *SetTransportBasicParameters)(IAMExtTransport *This,LONG Param,LONG Value,LPCOLESTR pszData); 12604 HRESULT (WINAPI *GetTransportVideoParameters)(IAMExtTransport *This,LONG Param,LONG *pValue); 12605 HRESULT (WINAPI *SetTransportVideoParameters)(IAMExtTransport *This,LONG Param,LONG Value); 12606 HRESULT (WINAPI *GetTransportAudioParameters)(IAMExtTransport *This,LONG Param,LONG *pValue); 12607 HRESULT (WINAPI *SetTransportAudioParameters)(IAMExtTransport *This,LONG Param,LONG Value); 12608 HRESULT (WINAPI *put_Mode)(IAMExtTransport *This,LONG Mode); 12609 HRESULT (WINAPI *get_Mode)(IAMExtTransport *This,LONG *pMode); 12610 HRESULT (WINAPI *put_Rate)(IAMExtTransport *This,double dblRate); 12611 HRESULT (WINAPI *get_Rate)(IAMExtTransport *This,double *pdblRate); 12612 HRESULT (WINAPI *GetChase)(IAMExtTransport *This,LONG *pEnabled,LONG *pOffset,HEVENT *phEvent); 12613 HRESULT (WINAPI *SetChase)(IAMExtTransport *This,LONG Enable,LONG Offset,HEVENT hEvent); 12614 HRESULT (WINAPI *GetBump)(IAMExtTransport *This,LONG *pSpeed,LONG *pDuration); 12615 HRESULT (WINAPI *SetBump)(IAMExtTransport *This,LONG Speed,LONG Duration); 12616 HRESULT (WINAPI *get_AntiClogControl)(IAMExtTransport *This,LONG *pEnabled); 12617 HRESULT (WINAPI *put_AntiClogControl)(IAMExtTransport *This,LONG Enable); 12618 HRESULT (WINAPI *GetEditPropertySet)(IAMExtTransport *This,LONG EditID,LONG *pState); 12619 HRESULT (WINAPI *SetEditPropertySet)(IAMExtTransport *This,LONG *pEditID,LONG State); 12620 HRESULT (WINAPI *GetEditProperty)(IAMExtTransport *This,LONG EditID,LONG Param,LONG *pValue); 12621 HRESULT (WINAPI *SetEditProperty)(IAMExtTransport *This,LONG EditID,LONG Param,LONG Value); 12622 HRESULT (WINAPI *get_EditStart)(IAMExtTransport *This,LONG *pValue); 12623 HRESULT (WINAPI *put_EditStart)(IAMExtTransport *This,LONG Value); 12624 END_INTERFACE 12625 } IAMExtTransportVtbl; 12626 struct IAMExtTransport { 12627 CONST_VTBL struct IAMExtTransportVtbl *lpVtbl; 12628 }; 12629 #ifdef COBJMACROS 12630 #define IAMExtTransport_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12631 #define IAMExtTransport_AddRef(This) (This)->lpVtbl->AddRef(This) 12632 #define IAMExtTransport_Release(This) (This)->lpVtbl->Release(This) 12633 #define IAMExtTransport_GetCapability(This,Capability,pValue,pdblValue) (This)->lpVtbl->GetCapability(This,Capability,pValue,pdblValue) 12634 #define IAMExtTransport_put_MediaState(This,State) (This)->lpVtbl->put_MediaState(This,State) 12635 #define IAMExtTransport_get_MediaState(This,pState) (This)->lpVtbl->get_MediaState(This,pState) 12636 #define IAMExtTransport_put_LocalControl(This,State) (This)->lpVtbl->put_LocalControl(This,State) 12637 #define IAMExtTransport_get_LocalControl(This,pState) (This)->lpVtbl->get_LocalControl(This,pState) 12638 #define IAMExtTransport_GetStatus(This,StatusItem,pValue) (This)->lpVtbl->GetStatus(This,StatusItem,pValue) 12639 #define IAMExtTransport_GetTransportBasicParameters(This,Param,pValue,ppszData) (This)->lpVtbl->GetTransportBasicParameters(This,Param,pValue,ppszData) 12640 #define IAMExtTransport_SetTransportBasicParameters(This,Param,Value,pszData) (This)->lpVtbl->SetTransportBasicParameters(This,Param,Value,pszData) 12641 #define IAMExtTransport_GetTransportVideoParameters(This,Param,pValue) (This)->lpVtbl->GetTransportVideoParameters(This,Param,pValue) 12642 #define IAMExtTransport_SetTransportVideoParameters(This,Param,Value) (This)->lpVtbl->SetTransportVideoParameters(This,Param,Value) 12643 #define IAMExtTransport_GetTransportAudioParameters(This,Param,pValue) (This)->lpVtbl->GetTransportAudioParameters(This,Param,pValue) 12644 #define IAMExtTransport_SetTransportAudioParameters(This,Param,Value) (This)->lpVtbl->SetTransportAudioParameters(This,Param,Value) 12645 #define IAMExtTransport_put_Mode(This,Mode) (This)->lpVtbl->put_Mode(This,Mode) 12646 #define IAMExtTransport_get_Mode(This,pMode) (This)->lpVtbl->get_Mode(This,pMode) 12647 #define IAMExtTransport_put_Rate(This,dblRate) (This)->lpVtbl->put_Rate(This,dblRate) 12648 #define IAMExtTransport_get_Rate(This,pdblRate) (This)->lpVtbl->get_Rate(This,pdblRate) 12649 #define IAMExtTransport_GetChase(This,pEnabled,pOffset,phEvent) (This)->lpVtbl->GetChase(This,pEnabled,pOffset,phEvent) 12650 #define IAMExtTransport_SetChase(This,Enable,Offset,hEvent) (This)->lpVtbl->SetChase(This,Enable,Offset,hEvent) 12651 #define IAMExtTransport_GetBump(This,pSpeed,pDuration) (This)->lpVtbl->GetBump(This,pSpeed,pDuration) 12652 #define IAMExtTransport_SetBump(This,Speed,Duration) (This)->lpVtbl->SetBump(This,Speed,Duration) 12653 #define IAMExtTransport_get_AntiClogControl(This,pEnabled) (This)->lpVtbl->get_AntiClogControl(This,pEnabled) 12654 #define IAMExtTransport_put_AntiClogControl(This,Enable) (This)->lpVtbl->put_AntiClogControl(This,Enable) 12655 #define IAMExtTransport_GetEditPropertySet(This,EditID,pState) (This)->lpVtbl->GetEditPropertySet(This,EditID,pState) 12656 #define IAMExtTransport_SetEditPropertySet(This,pEditID,State) (This)->lpVtbl->SetEditPropertySet(This,pEditID,State) 12657 #define IAMExtTransport_GetEditProperty(This,EditID,Param,pValue) (This)->lpVtbl->GetEditProperty(This,EditID,Param,pValue) 12658 #define IAMExtTransport_SetEditProperty(This,EditID,Param,Value) (This)->lpVtbl->SetEditProperty(This,EditID,Param,Value) 12659 #define IAMExtTransport_get_EditStart(This,pValue) (This)->lpVtbl->get_EditStart(This,pValue) 12660 #define IAMExtTransport_put_EditStart(This,Value) (This)->lpVtbl->put_EditStart(This,Value) 12661 #endif 12662 #endif 12663 HRESULT WINAPI IAMExtTransport_GetCapability_Proxy(IAMExtTransport *This,LONG Capability,LONG *pValue,double *pdblValue); 12664 void __RPC_STUB IAMExtTransport_GetCapability_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12665 HRESULT WINAPI IAMExtTransport_put_MediaState_Proxy(IAMExtTransport *This,LONG State); 12666 void __RPC_STUB IAMExtTransport_put_MediaState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12667 HRESULT WINAPI IAMExtTransport_get_MediaState_Proxy(IAMExtTransport *This,LONG *pState); 12668 void __RPC_STUB IAMExtTransport_get_MediaState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12669 HRESULT WINAPI IAMExtTransport_put_LocalControl_Proxy(IAMExtTransport *This,LONG State); 12670 void __RPC_STUB IAMExtTransport_put_LocalControl_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12671 HRESULT WINAPI IAMExtTransport_get_LocalControl_Proxy(IAMExtTransport *This,LONG *pState); 12672 void __RPC_STUB IAMExtTransport_get_LocalControl_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12673 HRESULT WINAPI IAMExtTransport_GetStatus_Proxy(IAMExtTransport *This,LONG StatusItem,LONG *pValue); 12674 void __RPC_STUB IAMExtTransport_GetStatus_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12675 HRESULT WINAPI IAMExtTransport_GetTransportBasicParameters_Proxy(IAMExtTransport *This,LONG Param,LONG *pValue,LPOLESTR *ppszData); 12676 void __RPC_STUB IAMExtTransport_GetTransportBasicParameters_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12677 HRESULT WINAPI IAMExtTransport_SetTransportBasicParameters_Proxy(IAMExtTransport *This,LONG Param,LONG Value,LPCOLESTR pszData); 12678 void __RPC_STUB IAMExtTransport_SetTransportBasicParameters_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12679 HRESULT WINAPI IAMExtTransport_GetTransportVideoParameters_Proxy(IAMExtTransport *This,LONG Param,LONG *pValue); 12680 void __RPC_STUB IAMExtTransport_GetTransportVideoParameters_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12681 HRESULT WINAPI IAMExtTransport_SetTransportVideoParameters_Proxy(IAMExtTransport *This,LONG Param,LONG Value); 12682 void __RPC_STUB IAMExtTransport_SetTransportVideoParameters_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12683 HRESULT WINAPI IAMExtTransport_GetTransportAudioParameters_Proxy(IAMExtTransport *This,LONG Param,LONG *pValue); 12684 void __RPC_STUB IAMExtTransport_GetTransportAudioParameters_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12685 HRESULT WINAPI IAMExtTransport_SetTransportAudioParameters_Proxy(IAMExtTransport *This,LONG Param,LONG Value); 12686 void __RPC_STUB IAMExtTransport_SetTransportAudioParameters_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12687 HRESULT WINAPI IAMExtTransport_put_Mode_Proxy(IAMExtTransport *This,LONG Mode); 12688 void __RPC_STUB IAMExtTransport_put_Mode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12689 HRESULT WINAPI IAMExtTransport_get_Mode_Proxy(IAMExtTransport *This,LONG *pMode); 12690 void __RPC_STUB IAMExtTransport_get_Mode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12691 HRESULT WINAPI IAMExtTransport_put_Rate_Proxy(IAMExtTransport *This,double dblRate); 12692 void __RPC_STUB IAMExtTransport_put_Rate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12693 HRESULT WINAPI IAMExtTransport_get_Rate_Proxy(IAMExtTransport *This,double *pdblRate); 12694 void __RPC_STUB IAMExtTransport_get_Rate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12695 HRESULT WINAPI IAMExtTransport_GetChase_Proxy(IAMExtTransport *This,LONG *pEnabled,LONG *pOffset,HEVENT *phEvent); 12696 void __RPC_STUB IAMExtTransport_GetChase_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12697 HRESULT WINAPI IAMExtTransport_SetChase_Proxy(IAMExtTransport *This,LONG Enable,LONG Offset,HEVENT hEvent); 12698 void __RPC_STUB IAMExtTransport_SetChase_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12699 HRESULT WINAPI IAMExtTransport_GetBump_Proxy(IAMExtTransport *This,LONG *pSpeed,LONG *pDuration); 12700 void __RPC_STUB IAMExtTransport_GetBump_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12701 HRESULT WINAPI IAMExtTransport_SetBump_Proxy(IAMExtTransport *This,LONG Speed,LONG Duration); 12702 void __RPC_STUB IAMExtTransport_SetBump_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12703 HRESULT WINAPI IAMExtTransport_get_AntiClogControl_Proxy(IAMExtTransport *This,LONG *pEnabled); 12704 void __RPC_STUB IAMExtTransport_get_AntiClogControl_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12705 HRESULT WINAPI IAMExtTransport_put_AntiClogControl_Proxy(IAMExtTransport *This,LONG Enable); 12706 void __RPC_STUB IAMExtTransport_put_AntiClogControl_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12707 HRESULT WINAPI IAMExtTransport_GetEditPropertySet_Proxy(IAMExtTransport *This,LONG EditID,LONG *pState); 12708 void __RPC_STUB IAMExtTransport_GetEditPropertySet_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12709 HRESULT WINAPI IAMExtTransport_SetEditPropertySet_Proxy(IAMExtTransport *This,LONG *pEditID,LONG State); 12710 void __RPC_STUB IAMExtTransport_SetEditPropertySet_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12711 HRESULT WINAPI IAMExtTransport_GetEditProperty_Proxy(IAMExtTransport *This,LONG EditID,LONG Param,LONG *pValue); 12712 void __RPC_STUB IAMExtTransport_GetEditProperty_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12713 HRESULT WINAPI IAMExtTransport_SetEditProperty_Proxy(IAMExtTransport *This,LONG EditID,LONG Param,LONG Value); 12714 void __RPC_STUB IAMExtTransport_SetEditProperty_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12715 HRESULT WINAPI IAMExtTransport_get_EditStart_Proxy(IAMExtTransport *This,LONG *pValue); 12716 void __RPC_STUB IAMExtTransport_get_EditStart_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12717 HRESULT WINAPI IAMExtTransport_put_EditStart_Proxy(IAMExtTransport *This,LONG Value); 12718 void __RPC_STUB IAMExtTransport_put_EditStart_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12719 #endif 12720 12721 typedef IAMExtTransport *PIAMEXTTRANSPORT; 12722 12723 #ifndef TIMECODE_DEFINED 12724 #define TIMECODE_DEFINED 12725 typedef union _timecode { 12726 __C89_NAMELESS struct { 12727 WORD wFrameRate; 12728 WORD wFrameFract; 12729 DWORD dwFrames; 12730 }; 12731 DWORDLONG qw; 12732 } TIMECODE; 12733 #endif 12734 12735 typedef TIMECODE *PTIMECODE; 12736 12737 typedef struct tagTIMECODE_SAMPLE { 12738 LONGLONG qwTick; 12739 TIMECODE timecode; 12740 DWORD dwUser; 12741 DWORD dwFlags; 12742 } TIMECODE_SAMPLE; 12743 12744 typedef TIMECODE_SAMPLE *PTIMECODE_SAMPLE; 12745 12746 extern RPC_IF_HANDLE __MIDL_itf_strmif_0340_v0_0_c_ifspec; 12747 extern RPC_IF_HANDLE __MIDL_itf_strmif_0340_v0_0_s_ifspec; 12748 #ifndef __IAMTimecodeReader_INTERFACE_DEFINED__ 12749 #define __IAMTimecodeReader_INTERFACE_DEFINED__ 12750 EXTERN_C const IID IID_IAMTimecodeReader; 12751 #if defined(__cplusplus) && !defined(CINTERFACE) 12752 struct IAMTimecodeReader : public IUnknown { 12753 public: 12754 virtual HRESULT WINAPI GetTCRMode(LONG Param,LONG *pValue) = 0; 12755 virtual HRESULT WINAPI SetTCRMode(LONG Param,LONG Value) = 0; 12756 virtual HRESULT WINAPI put_VITCLine(LONG Line) = 0; 12757 virtual HRESULT WINAPI get_VITCLine(LONG *pLine) = 0; 12758 virtual HRESULT WINAPI GetTimecode(PTIMECODE_SAMPLE pTimecodeSample) = 0; 12759 }; 12760 #else 12761 typedef struct IAMTimecodeReaderVtbl { 12762 BEGIN_INTERFACE 12763 HRESULT (WINAPI *QueryInterface)(IAMTimecodeReader *This,REFIID riid,void **ppvObject); 12764 ULONG (WINAPI *AddRef)(IAMTimecodeReader *This); 12765 ULONG (WINAPI *Release)(IAMTimecodeReader *This); 12766 HRESULT (WINAPI *GetTCRMode)(IAMTimecodeReader *This,LONG Param,LONG *pValue); 12767 HRESULT (WINAPI *SetTCRMode)(IAMTimecodeReader *This,LONG Param,LONG Value); 12768 HRESULT (WINAPI *put_VITCLine)(IAMTimecodeReader *This,LONG Line); 12769 HRESULT (WINAPI *get_VITCLine)(IAMTimecodeReader *This,LONG *pLine); 12770 HRESULT (WINAPI *GetTimecode)(IAMTimecodeReader *This,PTIMECODE_SAMPLE pTimecodeSample); 12771 END_INTERFACE 12772 } IAMTimecodeReaderVtbl; 12773 struct IAMTimecodeReader { 12774 CONST_VTBL struct IAMTimecodeReaderVtbl *lpVtbl; 12775 }; 12776 #ifdef COBJMACROS 12777 #define IAMTimecodeReader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12778 #define IAMTimecodeReader_AddRef(This) (This)->lpVtbl->AddRef(This) 12779 #define IAMTimecodeReader_Release(This) (This)->lpVtbl->Release(This) 12780 #define IAMTimecodeReader_GetTCRMode(This,Param,pValue) (This)->lpVtbl->GetTCRMode(This,Param,pValue) 12781 #define IAMTimecodeReader_SetTCRMode(This,Param,Value) (This)->lpVtbl->SetTCRMode(This,Param,Value) 12782 #define IAMTimecodeReader_put_VITCLine(This,Line) (This)->lpVtbl->put_VITCLine(This,Line) 12783 #define IAMTimecodeReader_get_VITCLine(This,pLine) (This)->lpVtbl->get_VITCLine(This,pLine) 12784 #define IAMTimecodeReader_GetTimecode(This,pTimecodeSample) (This)->lpVtbl->GetTimecode(This,pTimecodeSample) 12785 #endif 12786 #endif 12787 HRESULT WINAPI IAMTimecodeReader_GetTCRMode_Proxy(IAMTimecodeReader *This,LONG Param,LONG *pValue); 12788 void __RPC_STUB IAMTimecodeReader_GetTCRMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12789 HRESULT WINAPI IAMTimecodeReader_SetTCRMode_Proxy(IAMTimecodeReader *This,LONG Param,LONG Value); 12790 void __RPC_STUB IAMTimecodeReader_SetTCRMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12791 HRESULT WINAPI IAMTimecodeReader_put_VITCLine_Proxy(IAMTimecodeReader *This,LONG Line); 12792 void __RPC_STUB IAMTimecodeReader_put_VITCLine_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12793 HRESULT WINAPI IAMTimecodeReader_get_VITCLine_Proxy(IAMTimecodeReader *This,LONG *pLine); 12794 void __RPC_STUB IAMTimecodeReader_get_VITCLine_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12795 HRESULT WINAPI IAMTimecodeReader_GetTimecode_Proxy(IAMTimecodeReader *This,PTIMECODE_SAMPLE pTimecodeSample); 12796 void __RPC_STUB IAMTimecodeReader_GetTimecode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12797 #endif 12798 12799 typedef IAMTimecodeReader *PIAMTIMECODEREADER; 12800 12801 extern RPC_IF_HANDLE __MIDL_itf_strmif_0341_v0_0_c_ifspec; 12802 extern RPC_IF_HANDLE __MIDL_itf_strmif_0341_v0_0_s_ifspec; 12803 #ifndef __IAMTimecodeGenerator_INTERFACE_DEFINED__ 12804 #define __IAMTimecodeGenerator_INTERFACE_DEFINED__ 12805 EXTERN_C const IID IID_IAMTimecodeGenerator; 12806 #if defined(__cplusplus) && !defined(CINTERFACE) 12807 struct IAMTimecodeGenerator : public IUnknown { 12808 public: 12809 virtual HRESULT WINAPI GetTCGMode(LONG Param,LONG *pValue) = 0; 12810 virtual HRESULT WINAPI SetTCGMode(LONG Param,LONG Value) = 0; 12811 virtual HRESULT WINAPI put_VITCLine(LONG Line) = 0; 12812 virtual HRESULT WINAPI get_VITCLine(LONG *pLine) = 0; 12813 virtual HRESULT WINAPI SetTimecode(PTIMECODE_SAMPLE pTimecodeSample) = 0; 12814 virtual HRESULT WINAPI GetTimecode(PTIMECODE_SAMPLE pTimecodeSample) = 0; 12815 }; 12816 #else 12817 typedef struct IAMTimecodeGeneratorVtbl { 12818 BEGIN_INTERFACE 12819 HRESULT (WINAPI *QueryInterface)(IAMTimecodeGenerator *This,REFIID riid,void **ppvObject); 12820 ULONG (WINAPI *AddRef)(IAMTimecodeGenerator *This); 12821 ULONG (WINAPI *Release)(IAMTimecodeGenerator *This); 12822 HRESULT (WINAPI *GetTCGMode)(IAMTimecodeGenerator *This,LONG Param,LONG *pValue); 12823 HRESULT (WINAPI *SetTCGMode)(IAMTimecodeGenerator *This,LONG Param,LONG Value); 12824 HRESULT (WINAPI *put_VITCLine)(IAMTimecodeGenerator *This,LONG Line); 12825 HRESULT (WINAPI *get_VITCLine)(IAMTimecodeGenerator *This,LONG *pLine); 12826 HRESULT (WINAPI *SetTimecode)(IAMTimecodeGenerator *This,PTIMECODE_SAMPLE pTimecodeSample); 12827 HRESULT (WINAPI *GetTimecode)(IAMTimecodeGenerator *This,PTIMECODE_SAMPLE pTimecodeSample); 12828 END_INTERFACE 12829 } IAMTimecodeGeneratorVtbl; 12830 struct IAMTimecodeGenerator { 12831 CONST_VTBL struct IAMTimecodeGeneratorVtbl *lpVtbl; 12832 }; 12833 #ifdef COBJMACROS 12834 #define IAMTimecodeGenerator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12835 #define IAMTimecodeGenerator_AddRef(This) (This)->lpVtbl->AddRef(This) 12836 #define IAMTimecodeGenerator_Release(This) (This)->lpVtbl->Release(This) 12837 #define IAMTimecodeGenerator_GetTCGMode(This,Param,pValue) (This)->lpVtbl->GetTCGMode(This,Param,pValue) 12838 #define IAMTimecodeGenerator_SetTCGMode(This,Param,Value) (This)->lpVtbl->SetTCGMode(This,Param,Value) 12839 #define IAMTimecodeGenerator_put_VITCLine(This,Line) (This)->lpVtbl->put_VITCLine(This,Line) 12840 #define IAMTimecodeGenerator_get_VITCLine(This,pLine) (This)->lpVtbl->get_VITCLine(This,pLine) 12841 #define IAMTimecodeGenerator_SetTimecode(This,pTimecodeSample) (This)->lpVtbl->SetTimecode(This,pTimecodeSample) 12842 #define IAMTimecodeGenerator_GetTimecode(This,pTimecodeSample) (This)->lpVtbl->GetTimecode(This,pTimecodeSample) 12843 #endif 12844 #endif 12845 HRESULT WINAPI IAMTimecodeGenerator_GetTCGMode_Proxy(IAMTimecodeGenerator *This,LONG Param,LONG *pValue); 12846 void __RPC_STUB IAMTimecodeGenerator_GetTCGMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12847 HRESULT WINAPI IAMTimecodeGenerator_SetTCGMode_Proxy(IAMTimecodeGenerator *This,LONG Param,LONG Value); 12848 void __RPC_STUB IAMTimecodeGenerator_SetTCGMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12849 HRESULT WINAPI IAMTimecodeGenerator_put_VITCLine_Proxy(IAMTimecodeGenerator *This,LONG Line); 12850 void __RPC_STUB IAMTimecodeGenerator_put_VITCLine_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12851 HRESULT WINAPI IAMTimecodeGenerator_get_VITCLine_Proxy(IAMTimecodeGenerator *This,LONG *pLine); 12852 void __RPC_STUB IAMTimecodeGenerator_get_VITCLine_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12853 HRESULT WINAPI IAMTimecodeGenerator_SetTimecode_Proxy(IAMTimecodeGenerator *This,PTIMECODE_SAMPLE pTimecodeSample); 12854 void __RPC_STUB IAMTimecodeGenerator_SetTimecode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12855 HRESULT WINAPI IAMTimecodeGenerator_GetTimecode_Proxy(IAMTimecodeGenerator *This,PTIMECODE_SAMPLE pTimecodeSample); 12856 void __RPC_STUB IAMTimecodeGenerator_GetTimecode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12857 #endif 12858 12859 typedef IAMTimecodeGenerator *PIAMTIMECODEGENERATOR; 12860 12861 extern RPC_IF_HANDLE __MIDL_itf_strmif_0342_v0_0_c_ifspec; 12862 extern RPC_IF_HANDLE __MIDL_itf_strmif_0342_v0_0_s_ifspec; 12863 #ifndef __IAMTimecodeDisplay_INTERFACE_DEFINED__ 12864 #define __IAMTimecodeDisplay_INTERFACE_DEFINED__ 12865 EXTERN_C const IID IID_IAMTimecodeDisplay; 12866 #if defined(__cplusplus) && !defined(CINTERFACE) 12867 struct IAMTimecodeDisplay : public IUnknown { 12868 public: 12869 virtual HRESULT WINAPI GetTCDisplayEnable(LONG *pState) = 0; 12870 virtual HRESULT WINAPI SetTCDisplayEnable(LONG State) = 0; 12871 virtual HRESULT WINAPI GetTCDisplay(LONG Param,LONG *pValue) = 0; 12872 virtual HRESULT WINAPI SetTCDisplay(LONG Param,LONG Value) = 0; 12873 }; 12874 #else 12875 typedef struct IAMTimecodeDisplayVtbl { 12876 BEGIN_INTERFACE 12877 HRESULT (WINAPI *QueryInterface)(IAMTimecodeDisplay *This,REFIID riid,void **ppvObject); 12878 ULONG (WINAPI *AddRef)(IAMTimecodeDisplay *This); 12879 ULONG (WINAPI *Release)(IAMTimecodeDisplay *This); 12880 HRESULT (WINAPI *GetTCDisplayEnable)(IAMTimecodeDisplay *This,LONG *pState); 12881 HRESULT (WINAPI *SetTCDisplayEnable)(IAMTimecodeDisplay *This,LONG State); 12882 HRESULT (WINAPI *GetTCDisplay)(IAMTimecodeDisplay *This,LONG Param,LONG *pValue); 12883 HRESULT (WINAPI *SetTCDisplay)(IAMTimecodeDisplay *This,LONG Param,LONG Value); 12884 END_INTERFACE 12885 } IAMTimecodeDisplayVtbl; 12886 struct IAMTimecodeDisplay { 12887 CONST_VTBL struct IAMTimecodeDisplayVtbl *lpVtbl; 12888 }; 12889 #ifdef COBJMACROS 12890 #define IAMTimecodeDisplay_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12891 #define IAMTimecodeDisplay_AddRef(This) (This)->lpVtbl->AddRef(This) 12892 #define IAMTimecodeDisplay_Release(This) (This)->lpVtbl->Release(This) 12893 #define IAMTimecodeDisplay_GetTCDisplayEnable(This,pState) (This)->lpVtbl->GetTCDisplayEnable(This,pState) 12894 #define IAMTimecodeDisplay_SetTCDisplayEnable(This,State) (This)->lpVtbl->SetTCDisplayEnable(This,State) 12895 #define IAMTimecodeDisplay_GetTCDisplay(This,Param,pValue) (This)->lpVtbl->GetTCDisplay(This,Param,pValue) 12896 #define IAMTimecodeDisplay_SetTCDisplay(This,Param,Value) (This)->lpVtbl->SetTCDisplay(This,Param,Value) 12897 #endif 12898 #endif 12899 HRESULT WINAPI IAMTimecodeDisplay_GetTCDisplayEnable_Proxy(IAMTimecodeDisplay *This,LONG *pState); 12900 void __RPC_STUB IAMTimecodeDisplay_GetTCDisplayEnable_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12901 HRESULT WINAPI IAMTimecodeDisplay_SetTCDisplayEnable_Proxy(IAMTimecodeDisplay *This,LONG State); 12902 void __RPC_STUB IAMTimecodeDisplay_SetTCDisplayEnable_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12903 HRESULT WINAPI IAMTimecodeDisplay_GetTCDisplay_Proxy(IAMTimecodeDisplay *This,LONG Param,LONG *pValue); 12904 void __RPC_STUB IAMTimecodeDisplay_GetTCDisplay_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12905 HRESULT WINAPI IAMTimecodeDisplay_SetTCDisplay_Proxy(IAMTimecodeDisplay *This,LONG Param,LONG Value); 12906 void __RPC_STUB IAMTimecodeDisplay_SetTCDisplay_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12907 #endif 12908 12909 typedef IAMTimecodeDisplay *PIAMTIMECODEDISPLAY; 12910 12911 extern RPC_IF_HANDLE __MIDL_itf_strmif_0343_v0_0_c_ifspec; 12912 extern RPC_IF_HANDLE __MIDL_itf_strmif_0343_v0_0_s_ifspec; 12913 #ifndef __IAMDevMemoryAllocator_INTERFACE_DEFINED__ 12914 #define __IAMDevMemoryAllocator_INTERFACE_DEFINED__ 12915 EXTERN_C const IID IID_IAMDevMemoryAllocator; 12916 #if defined(__cplusplus) && !defined(CINTERFACE) 12917 struct IAMDevMemoryAllocator : public IUnknown { 12918 public: 12919 virtual HRESULT WINAPI GetInfo(DWORD *pdwcbTotalFree,DWORD *pdwcbLargestFree,DWORD *pdwcbTotalMemory,DWORD *pdwcbMinimumChunk) = 0; 12920 virtual HRESULT WINAPI CheckMemory(const BYTE *pBuffer) = 0; 12921 virtual HRESULT WINAPI Alloc(BYTE **ppBuffer,DWORD *pdwcbBuffer) = 0; 12922 virtual HRESULT WINAPI Free(BYTE *pBuffer) = 0; 12923 virtual HRESULT WINAPI GetDevMemoryObject(IUnknown **ppUnkInnner,IUnknown *pUnkOuter) = 0; 12924 }; 12925 #else 12926 typedef struct IAMDevMemoryAllocatorVtbl { 12927 BEGIN_INTERFACE 12928 HRESULT (WINAPI *QueryInterface)(IAMDevMemoryAllocator *This,REFIID riid,void **ppvObject); 12929 ULONG (WINAPI *AddRef)(IAMDevMemoryAllocator *This); 12930 ULONG (WINAPI *Release)(IAMDevMemoryAllocator *This); 12931 HRESULT (WINAPI *GetInfo)(IAMDevMemoryAllocator *This,DWORD *pdwcbTotalFree,DWORD *pdwcbLargestFree,DWORD *pdwcbTotalMemory,DWORD *pdwcbMinimumChunk); 12932 HRESULT (WINAPI *CheckMemory)(IAMDevMemoryAllocator *This,const BYTE *pBuffer); 12933 HRESULT (WINAPI *Alloc)(IAMDevMemoryAllocator *This,BYTE **ppBuffer,DWORD *pdwcbBuffer); 12934 HRESULT (WINAPI *Free)(IAMDevMemoryAllocator *This,BYTE *pBuffer); 12935 HRESULT (WINAPI *GetDevMemoryObject)(IAMDevMemoryAllocator *This,IUnknown **ppUnkInnner,IUnknown *pUnkOuter); 12936 END_INTERFACE 12937 } IAMDevMemoryAllocatorVtbl; 12938 struct IAMDevMemoryAllocator { 12939 CONST_VTBL struct IAMDevMemoryAllocatorVtbl *lpVtbl; 12940 }; 12941 #ifdef COBJMACROS 12942 #define IAMDevMemoryAllocator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12943 #define IAMDevMemoryAllocator_AddRef(This) (This)->lpVtbl->AddRef(This) 12944 #define IAMDevMemoryAllocator_Release(This) (This)->lpVtbl->Release(This) 12945 #define IAMDevMemoryAllocator_GetInfo(This,pdwcbTotalFree,pdwcbLargestFree,pdwcbTotalMemory,pdwcbMinimumChunk) (This)->lpVtbl->GetInfo(This,pdwcbTotalFree,pdwcbLargestFree,pdwcbTotalMemory,pdwcbMinimumChunk) 12946 #define IAMDevMemoryAllocator_CheckMemory(This,pBuffer) (This)->lpVtbl->CheckMemory(This,pBuffer) 12947 #define IAMDevMemoryAllocator_Alloc(This,ppBuffer,pdwcbBuffer) (This)->lpVtbl->Alloc(This,ppBuffer,pdwcbBuffer) 12948 #define IAMDevMemoryAllocator_Free(This,pBuffer) (This)->lpVtbl->Free(This,pBuffer) 12949 #define IAMDevMemoryAllocator_GetDevMemoryObject(This,ppUnkInnner,pUnkOuter) (This)->lpVtbl->GetDevMemoryObject(This,ppUnkInnner,pUnkOuter) 12950 #endif 12951 #endif 12952 HRESULT WINAPI IAMDevMemoryAllocator_GetInfo_Proxy(IAMDevMemoryAllocator *This,DWORD *pdwcbTotalFree,DWORD *pdwcbLargestFree,DWORD *pdwcbTotalMemory,DWORD *pdwcbMinimumChunk); 12953 void __RPC_STUB IAMDevMemoryAllocator_GetInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12954 HRESULT WINAPI IAMDevMemoryAllocator_CheckMemory_Proxy(IAMDevMemoryAllocator *This,const BYTE *pBuffer); 12955 void __RPC_STUB IAMDevMemoryAllocator_CheckMemory_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12956 HRESULT WINAPI IAMDevMemoryAllocator_Alloc_Proxy(IAMDevMemoryAllocator *This,BYTE **ppBuffer,DWORD *pdwcbBuffer); 12957 void __RPC_STUB IAMDevMemoryAllocator_Alloc_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12958 HRESULT WINAPI IAMDevMemoryAllocator_Free_Proxy(IAMDevMemoryAllocator *This,BYTE *pBuffer); 12959 void __RPC_STUB IAMDevMemoryAllocator_Free_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12960 HRESULT WINAPI IAMDevMemoryAllocator_GetDevMemoryObject_Proxy(IAMDevMemoryAllocator *This,IUnknown **ppUnkInnner,IUnknown *pUnkOuter); 12961 void __RPC_STUB IAMDevMemoryAllocator_GetDevMemoryObject_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 12962 #endif 12963 12964 typedef IAMDevMemoryAllocator *PAMDEVMEMORYALLOCATOR; 12965 12966 extern RPC_IF_HANDLE __MIDL_itf_strmif_0344_v0_0_c_ifspec; 12967 extern RPC_IF_HANDLE __MIDL_itf_strmif_0344_v0_0_s_ifspec; 12968 #ifndef __IAMDevMemoryControl_INTERFACE_DEFINED__ 12969 #define __IAMDevMemoryControl_INTERFACE_DEFINED__ 12970 EXTERN_C const IID IID_IAMDevMemoryControl; 12971 #if defined(__cplusplus) && !defined(CINTERFACE) 12972 struct IAMDevMemoryControl : public IUnknown { 12973 public: 12974 virtual HRESULT WINAPI QueryWriteSync(void) = 0; 12975 virtual HRESULT WINAPI WriteSync(void) = 0; 12976 virtual HRESULT WINAPI GetDevId(DWORD *pdwDevId) = 0; 12977 }; 12978 #else 12979 typedef struct IAMDevMemoryControlVtbl { 12980 BEGIN_INTERFACE 12981 HRESULT (WINAPI *QueryInterface)(IAMDevMemoryControl *This,REFIID riid,void **ppvObject); 12982 ULONG (WINAPI *AddRef)(IAMDevMemoryControl *This); 12983 ULONG (WINAPI *Release)(IAMDevMemoryControl *This); 12984 HRESULT (WINAPI *QueryWriteSync)(IAMDevMemoryControl *This); 12985 HRESULT (WINAPI *WriteSync)(IAMDevMemoryControl *This); 12986 HRESULT (WINAPI *GetDevId)(IAMDevMemoryControl *This,DWORD *pdwDevId); 12987 END_INTERFACE 12988 } IAMDevMemoryControlVtbl; 12989 struct IAMDevMemoryControl { 12990 CONST_VTBL struct IAMDevMemoryControlVtbl *lpVtbl; 12991 }; 12992 #ifdef COBJMACROS 12993 #define IAMDevMemoryControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12994 #define IAMDevMemoryControl_AddRef(This) (This)->lpVtbl->AddRef(This) 12995 #define IAMDevMemoryControl_Release(This) (This)->lpVtbl->Release(This) 12996 #define IAMDevMemoryControl_QueryWriteSync(This) (This)->lpVtbl->QueryWriteSync(This) 12997 #define IAMDevMemoryControl_WriteSync(This) (This)->lpVtbl->WriteSync(This) 12998 #define IAMDevMemoryControl_GetDevId(This,pdwDevId) (This)->lpVtbl->GetDevId(This,pdwDevId) 12999 #endif 13000 #endif 13001 HRESULT WINAPI IAMDevMemoryControl_QueryWriteSync_Proxy(IAMDevMemoryControl *This); 13002 void __RPC_STUB IAMDevMemoryControl_QueryWriteSync_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13003 HRESULT WINAPI IAMDevMemoryControl_WriteSync_Proxy(IAMDevMemoryControl *This); 13004 void __RPC_STUB IAMDevMemoryControl_WriteSync_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13005 HRESULT WINAPI IAMDevMemoryControl_GetDevId_Proxy(IAMDevMemoryControl *This,DWORD *pdwDevId); 13006 void __RPC_STUB IAMDevMemoryControl_GetDevId_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13007 #endif 13008 13009 typedef IAMDevMemoryControl *PAMDEVMEMORYCONTROL; 13010 13011 enum _AMSTREAMSELECTINFOFLAGS { 13012 AMSTREAMSELECTINFO_ENABLED = 0x1,AMSTREAMSELECTINFO_EXCLUSIVE = 0x2 13013 }; 13014 13015 enum _AMSTREAMSELECTENABLEFLAGS { 13016 AMSTREAMSELECTENABLE_ENABLE = 0x1,AMSTREAMSELECTENABLE_ENABLEALL = 0x2 13017 }; 13018 13019 extern RPC_IF_HANDLE __MIDL_itf_strmif_0345_v0_0_c_ifspec; 13020 extern RPC_IF_HANDLE __MIDL_itf_strmif_0345_v0_0_s_ifspec; 13021 #ifndef __IAMStreamSelect_INTERFACE_DEFINED__ 13022 #define __IAMStreamSelect_INTERFACE_DEFINED__ 13023 EXTERN_C const IID IID_IAMStreamSelect; 13024 #if defined(__cplusplus) && !defined(CINTERFACE) 13025 struct IAMStreamSelect : public IUnknown { 13026 public: 13027 virtual HRESULT WINAPI Count(DWORD *pcStreams) = 0; 13028 virtual HRESULT WINAPI Info(LONG lIndex,AM_MEDIA_TYPE **ppmt,DWORD *pdwFlags,LCID *plcid,DWORD *pdwGroup,WCHAR **ppszName,IUnknown **ppObject,IUnknown **ppUnk) = 0; 13029 virtual HRESULT WINAPI Enable(LONG lIndex,DWORD dwFlags) = 0; 13030 }; 13031 #else 13032 typedef struct IAMStreamSelectVtbl { 13033 BEGIN_INTERFACE 13034 HRESULT (WINAPI *QueryInterface)(IAMStreamSelect *This,REFIID riid,void **ppvObject); 13035 ULONG (WINAPI *AddRef)(IAMStreamSelect *This); 13036 ULONG (WINAPI *Release)(IAMStreamSelect *This); 13037 HRESULT (WINAPI *Count)(IAMStreamSelect *This,DWORD *pcStreams); 13038 HRESULT (WINAPI *Info)(IAMStreamSelect *This,LONG lIndex,AM_MEDIA_TYPE **ppmt,DWORD *pdwFlags,LCID *plcid,DWORD *pdwGroup,WCHAR **ppszName,IUnknown **ppObject,IUnknown **ppUnk); 13039 HRESULT (WINAPI *Enable)(IAMStreamSelect *This,LONG lIndex,DWORD dwFlags); 13040 END_INTERFACE 13041 } IAMStreamSelectVtbl; 13042 struct IAMStreamSelect { 13043 CONST_VTBL struct IAMStreamSelectVtbl *lpVtbl; 13044 }; 13045 #ifdef COBJMACROS 13046 #define IAMStreamSelect_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13047 #define IAMStreamSelect_AddRef(This) (This)->lpVtbl->AddRef(This) 13048 #define IAMStreamSelect_Release(This) (This)->lpVtbl->Release(This) 13049 #define IAMStreamSelect_Count(This,pcStreams) (This)->lpVtbl->Count(This,pcStreams) 13050 #define IAMStreamSelect_Info(This,lIndex,ppmt,pdwFlags,plcid,pdwGroup,ppszName,ppObject,ppUnk) (This)->lpVtbl->Info(This,lIndex,ppmt,pdwFlags,plcid,pdwGroup,ppszName,ppObject,ppUnk) 13051 #define IAMStreamSelect_Enable(This,lIndex,dwFlags) (This)->lpVtbl->Enable(This,lIndex,dwFlags) 13052 #endif 13053 #endif 13054 HRESULT WINAPI IAMStreamSelect_Count_Proxy(IAMStreamSelect *This,DWORD *pcStreams); 13055 void __RPC_STUB IAMStreamSelect_Count_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13056 HRESULT WINAPI IAMStreamSelect_Info_Proxy(IAMStreamSelect *This,LONG lIndex,AM_MEDIA_TYPE **ppmt,DWORD *pdwFlags,LCID *plcid,DWORD *pdwGroup,WCHAR **ppszName,IUnknown **ppObject,IUnknown **ppUnk); 13057 void __RPC_STUB IAMStreamSelect_Info_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13058 HRESULT WINAPI IAMStreamSelect_Enable_Proxy(IAMStreamSelect *This,LONG lIndex,DWORD dwFlags); 13059 void __RPC_STUB IAMStreamSelect_Enable_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13060 #endif 13061 13062 typedef IAMStreamSelect *PAMSTREAMSELECT; 13063 13064 enum _AMRESCTL_RESERVEFLAGS { 13065 AMRESCTL_RESERVEFLAGS_RESERVE = 0,AMRESCTL_RESERVEFLAGS_UNRESERVE = 0x1 13066 }; 13067 13068 extern RPC_IF_HANDLE __MIDL_itf_strmif_0346_v0_0_c_ifspec; 13069 extern RPC_IF_HANDLE __MIDL_itf_strmif_0346_v0_0_s_ifspec; 13070 #ifndef __IAMResourceControl_INTERFACE_DEFINED__ 13071 #define __IAMResourceControl_INTERFACE_DEFINED__ 13072 EXTERN_C const IID IID_IAMResourceControl; 13073 #if defined(__cplusplus) && !defined(CINTERFACE) 13074 struct IAMResourceControl : public IUnknown { 13075 public: 13076 virtual HRESULT WINAPI Reserve(DWORD dwFlags,PVOID pvReserved) = 0; 13077 }; 13078 #else 13079 typedef struct IAMResourceControlVtbl { 13080 BEGIN_INTERFACE 13081 HRESULT (WINAPI *QueryInterface)(IAMResourceControl *This,REFIID riid,void **ppvObject); 13082 ULONG (WINAPI *AddRef)(IAMResourceControl *This); 13083 ULONG (WINAPI *Release)(IAMResourceControl *This); 13084 HRESULT (WINAPI *Reserve)(IAMResourceControl *This,DWORD dwFlags,PVOID pvReserved); 13085 END_INTERFACE 13086 } IAMResourceControlVtbl; 13087 struct IAMResourceControl { 13088 CONST_VTBL struct IAMResourceControlVtbl *lpVtbl; 13089 }; 13090 #ifdef COBJMACROS 13091 #define IAMResourceControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13092 #define IAMResourceControl_AddRef(This) (This)->lpVtbl->AddRef(This) 13093 #define IAMResourceControl_Release(This) (This)->lpVtbl->Release(This) 13094 #define IAMResourceControl_Reserve(This,dwFlags,pvReserved) (This)->lpVtbl->Reserve(This,dwFlags,pvReserved) 13095 #endif 13096 #endif 13097 HRESULT WINAPI IAMResourceControl_Reserve_Proxy(IAMResourceControl *This,DWORD dwFlags,PVOID pvReserved); 13098 void __RPC_STUB IAMResourceControl_Reserve_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13099 #endif 13100 13101 #ifndef __IAMClockAdjust_INTERFACE_DEFINED__ 13102 #define __IAMClockAdjust_INTERFACE_DEFINED__ 13103 EXTERN_C const IID IID_IAMClockAdjust; 13104 #if defined(__cplusplus) && !defined(CINTERFACE) 13105 struct IAMClockAdjust : public IUnknown { 13106 public: 13107 virtual HRESULT WINAPI SetClockDelta(REFERENCE_TIME rtDelta) = 0; 13108 }; 13109 #else 13110 typedef struct IAMClockAdjustVtbl { 13111 BEGIN_INTERFACE 13112 HRESULT (WINAPI *QueryInterface)(IAMClockAdjust *This,REFIID riid,void **ppvObject); 13113 ULONG (WINAPI *AddRef)(IAMClockAdjust *This); 13114 ULONG (WINAPI *Release)(IAMClockAdjust *This); 13115 HRESULT (WINAPI *SetClockDelta)(IAMClockAdjust *This,REFERENCE_TIME rtDelta); 13116 END_INTERFACE 13117 } IAMClockAdjustVtbl; 13118 struct IAMClockAdjust { 13119 CONST_VTBL struct IAMClockAdjustVtbl *lpVtbl; 13120 }; 13121 #ifdef COBJMACROS 13122 #define IAMClockAdjust_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13123 #define IAMClockAdjust_AddRef(This) (This)->lpVtbl->AddRef(This) 13124 #define IAMClockAdjust_Release(This) (This)->lpVtbl->Release(This) 13125 #define IAMClockAdjust_SetClockDelta(This,rtDelta) (This)->lpVtbl->SetClockDelta(This,rtDelta) 13126 #endif 13127 #endif 13128 HRESULT WINAPI IAMClockAdjust_SetClockDelta_Proxy(IAMClockAdjust *This,REFERENCE_TIME rtDelta); 13129 void __RPC_STUB IAMClockAdjust_SetClockDelta_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13130 #endif 13131 13132 #ifndef __IDrawVideoImage_INTERFACE_DEFINED__ 13133 #define __IDrawVideoImage_INTERFACE_DEFINED__ 13134 EXTERN_C const IID IID_IDrawVideoImage; 13135 #if defined(__cplusplus) && !defined(CINTERFACE) 13136 struct IDrawVideoImage : public IUnknown { 13137 public: 13138 virtual HRESULT WINAPI DrawVideoImageBegin(void) = 0; 13139 virtual HRESULT WINAPI DrawVideoImageEnd(void) = 0; 13140 virtual HRESULT WINAPI DrawVideoImageDraw(HDC hdc,LPRECT lprcSrc,LPRECT lprcDst) = 0; 13141 }; 13142 #else 13143 typedef struct IDrawVideoImageVtbl { 13144 BEGIN_INTERFACE 13145 HRESULT (WINAPI *QueryInterface)(IDrawVideoImage *This,REFIID riid,void **ppvObject); 13146 ULONG (WINAPI *AddRef)(IDrawVideoImage *This); 13147 ULONG (WINAPI *Release)(IDrawVideoImage *This); 13148 HRESULT (WINAPI *DrawVideoImageBegin)(IDrawVideoImage *This); 13149 HRESULT (WINAPI *DrawVideoImageEnd)(IDrawVideoImage *This); 13150 HRESULT (WINAPI *DrawVideoImageDraw)(IDrawVideoImage *This,HDC hdc,LPRECT lprcSrc,LPRECT lprcDst); 13151 END_INTERFACE 13152 } IDrawVideoImageVtbl; 13153 struct IDrawVideoImage { 13154 CONST_VTBL struct IDrawVideoImageVtbl *lpVtbl; 13155 }; 13156 #ifdef COBJMACROS 13157 #define IDrawVideoImage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13158 #define IDrawVideoImage_AddRef(This) (This)->lpVtbl->AddRef(This) 13159 #define IDrawVideoImage_Release(This) (This)->lpVtbl->Release(This) 13160 #define IDrawVideoImage_DrawVideoImageBegin(This) (This)->lpVtbl->DrawVideoImageBegin(This) 13161 #define IDrawVideoImage_DrawVideoImageEnd(This) (This)->lpVtbl->DrawVideoImageEnd(This) 13162 #define IDrawVideoImage_DrawVideoImageDraw(This,hdc,lprcSrc,lprcDst) (This)->lpVtbl->DrawVideoImageDraw(This,hdc,lprcSrc,lprcDst) 13163 #endif 13164 #endif 13165 HRESULT WINAPI IDrawVideoImage_DrawVideoImageBegin_Proxy(IDrawVideoImage *This); 13166 void __RPC_STUB IDrawVideoImage_DrawVideoImageBegin_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13167 HRESULT WINAPI IDrawVideoImage_DrawVideoImageEnd_Proxy(IDrawVideoImage *This); 13168 void __RPC_STUB IDrawVideoImage_DrawVideoImageEnd_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13169 HRESULT WINAPI IDrawVideoImage_DrawVideoImageDraw_Proxy(IDrawVideoImage *This,HDC hdc,LPRECT lprcSrc,LPRECT lprcDst); 13170 void __RPC_STUB IDrawVideoImage_DrawVideoImageDraw_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13171 #endif 13172 13173 #ifndef __IDecimateVideoImage_INTERFACE_DEFINED__ 13174 #define __IDecimateVideoImage_INTERFACE_DEFINED__ 13175 EXTERN_C const IID IID_IDecimateVideoImage; 13176 #if defined(__cplusplus) && !defined(CINTERFACE) 13177 struct IDecimateVideoImage : public IUnknown { 13178 public: 13179 virtual HRESULT WINAPI SetDecimationImageSize(LONG lWidth,LONG lHeight) = 0; 13180 virtual HRESULT WINAPI ResetDecimationImageSize(void) = 0; 13181 }; 13182 #else 13183 typedef struct IDecimateVideoImageVtbl { 13184 BEGIN_INTERFACE 13185 HRESULT (WINAPI *QueryInterface)(IDecimateVideoImage *This,REFIID riid,void **ppvObject); 13186 ULONG (WINAPI *AddRef)(IDecimateVideoImage *This); 13187 ULONG (WINAPI *Release)(IDecimateVideoImage *This); 13188 HRESULT (WINAPI *SetDecimationImageSize)(IDecimateVideoImage *This,LONG lWidth,LONG lHeight); 13189 HRESULT (WINAPI *ResetDecimationImageSize)(IDecimateVideoImage *This); 13190 END_INTERFACE 13191 } IDecimateVideoImageVtbl; 13192 struct IDecimateVideoImage { 13193 CONST_VTBL struct IDecimateVideoImageVtbl *lpVtbl; 13194 }; 13195 #ifdef COBJMACROS 13196 #define IDecimateVideoImage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13197 #define IDecimateVideoImage_AddRef(This) (This)->lpVtbl->AddRef(This) 13198 #define IDecimateVideoImage_Release(This) (This)->lpVtbl->Release(This) 13199 #define IDecimateVideoImage_SetDecimationImageSize(This,lWidth,lHeight) (This)->lpVtbl->SetDecimationImageSize(This,lWidth,lHeight) 13200 #define IDecimateVideoImage_ResetDecimationImageSize(This) (This)->lpVtbl->ResetDecimationImageSize(This) 13201 #endif 13202 #endif 13203 HRESULT WINAPI IDecimateVideoImage_SetDecimationImageSize_Proxy(IDecimateVideoImage *This,LONG lWidth,LONG lHeight); 13204 void __RPC_STUB IDecimateVideoImage_SetDecimationImageSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13205 HRESULT WINAPI IDecimateVideoImage_ResetDecimationImageSize_Proxy(IDecimateVideoImage *This); 13206 void __RPC_STUB IDecimateVideoImage_ResetDecimationImageSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13207 #endif 13208 13209 typedef enum _DECIMATION_USAGE { 13210 DECIMATION_LEGACY = 0, 13211 DECIMATION_USE_DECODER_ONLY,DECIMATION_USE_VIDEOPORT_ONLY,DECIMATION_USE_OVERLAY_ONLY, 13212 DECIMATION_DEFAULT 13213 } DECIMATION_USAGE; 13214 13215 extern RPC_IF_HANDLE __MIDL_itf_strmif_0351_v0_0_c_ifspec; 13216 extern RPC_IF_HANDLE __MIDL_itf_strmif_0351_v0_0_s_ifspec; 13217 #ifndef __IAMVideoDecimationProperties_INTERFACE_DEFINED__ 13218 #define __IAMVideoDecimationProperties_INTERFACE_DEFINED__ 13219 EXTERN_C const IID IID_IAMVideoDecimationProperties; 13220 #if defined(__cplusplus) && !defined(CINTERFACE) 13221 struct IAMVideoDecimationProperties : public IUnknown { 13222 public: 13223 virtual HRESULT WINAPI QueryDecimationUsage(DECIMATION_USAGE *lpUsage) = 0; 13224 virtual HRESULT WINAPI SetDecimationUsage(DECIMATION_USAGE Usage) = 0; 13225 }; 13226 #else 13227 typedef struct IAMVideoDecimationPropertiesVtbl { 13228 BEGIN_INTERFACE 13229 HRESULT (WINAPI *QueryInterface)(IAMVideoDecimationProperties *This,REFIID riid,void **ppvObject); 13230 ULONG (WINAPI *AddRef)(IAMVideoDecimationProperties *This); 13231 ULONG (WINAPI *Release)(IAMVideoDecimationProperties *This); 13232 HRESULT (WINAPI *QueryDecimationUsage)(IAMVideoDecimationProperties *This,DECIMATION_USAGE *lpUsage); 13233 HRESULT (WINAPI *SetDecimationUsage)(IAMVideoDecimationProperties *This,DECIMATION_USAGE Usage); 13234 END_INTERFACE 13235 } IAMVideoDecimationPropertiesVtbl; 13236 struct IAMVideoDecimationProperties { 13237 CONST_VTBL struct IAMVideoDecimationPropertiesVtbl *lpVtbl; 13238 }; 13239 #ifdef COBJMACROS 13240 #define IAMVideoDecimationProperties_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13241 #define IAMVideoDecimationProperties_AddRef(This) (This)->lpVtbl->AddRef(This) 13242 #define IAMVideoDecimationProperties_Release(This) (This)->lpVtbl->Release(This) 13243 #define IAMVideoDecimationProperties_QueryDecimationUsage(This,lpUsage) (This)->lpVtbl->QueryDecimationUsage(This,lpUsage) 13244 #define IAMVideoDecimationProperties_SetDecimationUsage(This,Usage) (This)->lpVtbl->SetDecimationUsage(This,Usage) 13245 #endif 13246 #endif 13247 HRESULT WINAPI IAMVideoDecimationProperties_QueryDecimationUsage_Proxy(IAMVideoDecimationProperties *This,DECIMATION_USAGE *lpUsage); 13248 void __RPC_STUB IAMVideoDecimationProperties_QueryDecimationUsage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13249 HRESULT WINAPI IAMVideoDecimationProperties_SetDecimationUsage_Proxy(IAMVideoDecimationProperties *This,DECIMATION_USAGE Usage); 13250 void __RPC_STUB IAMVideoDecimationProperties_SetDecimationUsage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13251 #endif 13252 13253 #ifndef __IVideoFrameStep_INTERFACE_DEFINED__ 13254 #define __IVideoFrameStep_INTERFACE_DEFINED__ 13255 EXTERN_C const IID IID_IVideoFrameStep; 13256 #if defined(__cplusplus) && !defined(CINTERFACE) 13257 struct IVideoFrameStep : public IUnknown { 13258 public: 13259 virtual HRESULT WINAPI Step(DWORD dwFrames,IUnknown *pStepObject) = 0; 13260 virtual HRESULT WINAPI CanStep(LONG bMultiple,IUnknown *pStepObject) = 0; 13261 virtual HRESULT WINAPI CancelStep(void) = 0; 13262 }; 13263 #else 13264 typedef struct IVideoFrameStepVtbl { 13265 BEGIN_INTERFACE 13266 HRESULT (WINAPI *QueryInterface)(IVideoFrameStep *This,REFIID riid,void **ppvObject); 13267 ULONG (WINAPI *AddRef)(IVideoFrameStep *This); 13268 ULONG (WINAPI *Release)(IVideoFrameStep *This); 13269 HRESULT (WINAPI *Step)(IVideoFrameStep *This,DWORD dwFrames,IUnknown *pStepObject); 13270 HRESULT (WINAPI *CanStep)(IVideoFrameStep *This,LONG bMultiple,IUnknown *pStepObject); 13271 HRESULT (WINAPI *CancelStep)(IVideoFrameStep *This); 13272 END_INTERFACE 13273 } IVideoFrameStepVtbl; 13274 struct IVideoFrameStep { 13275 CONST_VTBL struct IVideoFrameStepVtbl *lpVtbl; 13276 }; 13277 #ifdef COBJMACROS 13278 #define IVideoFrameStep_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13279 #define IVideoFrameStep_AddRef(This) (This)->lpVtbl->AddRef(This) 13280 #define IVideoFrameStep_Release(This) (This)->lpVtbl->Release(This) 13281 #define IVideoFrameStep_Step(This,dwFrames,pStepObject) (This)->lpVtbl->Step(This,dwFrames,pStepObject) 13282 #define IVideoFrameStep_CanStep(This,bMultiple,pStepObject) (This)->lpVtbl->CanStep(This,bMultiple,pStepObject) 13283 #define IVideoFrameStep_CancelStep(This) (This)->lpVtbl->CancelStep(This) 13284 #endif 13285 #endif 13286 HRESULT WINAPI IVideoFrameStep_Step_Proxy(IVideoFrameStep *This,DWORD dwFrames,IUnknown *pStepObject); 13287 void __RPC_STUB IVideoFrameStep_Step_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13288 HRESULT WINAPI IVideoFrameStep_CanStep_Proxy(IVideoFrameStep *This,LONG bMultiple,IUnknown *pStepObject); 13289 void __RPC_STUB IVideoFrameStep_CanStep_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13290 HRESULT WINAPI IVideoFrameStep_CancelStep_Proxy(IVideoFrameStep *This); 13291 void __RPC_STUB IVideoFrameStep_CancelStep_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13292 #endif 13293 13294 enum _AM_PUSHSOURCE_FLAGS { 13295 AM_PUSHSOURCECAPS_INTERNAL_RM = 0x1,AM_PUSHSOURCECAPS_NOT_LIVE = 0x2,AM_PUSHSOURCECAPS_PRIVATE_CLOCK = 0x4, 13296 AM_PUSHSOURCEREQS_USE_STREAM_CLOCK = 0x10000,AM_PUSHSOURCEREQS_USE_CLOCK_CHAIN = 0x20000 13297 }; 13298 13299 extern RPC_IF_HANDLE __MIDL_itf_strmif_0353_v0_0_c_ifspec; 13300 extern RPC_IF_HANDLE __MIDL_itf_strmif_0353_v0_0_s_ifspec; 13301 #ifndef __IAMLatency_INTERFACE_DEFINED__ 13302 #define __IAMLatency_INTERFACE_DEFINED__ 13303 EXTERN_C const IID IID_IAMLatency; 13304 #if defined(__cplusplus) && !defined(CINTERFACE) 13305 struct IAMLatency : public IUnknown { 13306 public: 13307 virtual HRESULT WINAPI GetLatency(REFERENCE_TIME *prtLatency) = 0; 13308 }; 13309 #else 13310 typedef struct IAMLatencyVtbl { 13311 BEGIN_INTERFACE 13312 HRESULT (WINAPI *QueryInterface)(IAMLatency *This,REFIID riid,void **ppvObject); 13313 ULONG (WINAPI *AddRef)(IAMLatency *This); 13314 ULONG (WINAPI *Release)(IAMLatency *This); 13315 HRESULT (WINAPI *GetLatency)(IAMLatency *This,REFERENCE_TIME *prtLatency); 13316 END_INTERFACE 13317 } IAMLatencyVtbl; 13318 struct IAMLatency { 13319 CONST_VTBL struct IAMLatencyVtbl *lpVtbl; 13320 }; 13321 #ifdef COBJMACROS 13322 #define IAMLatency_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13323 #define IAMLatency_AddRef(This) (This)->lpVtbl->AddRef(This) 13324 #define IAMLatency_Release(This) (This)->lpVtbl->Release(This) 13325 #define IAMLatency_GetLatency(This,prtLatency) (This)->lpVtbl->GetLatency(This,prtLatency) 13326 #endif 13327 #endif 13328 HRESULT WINAPI IAMLatency_GetLatency_Proxy(IAMLatency *This,REFERENCE_TIME *prtLatency); 13329 void __RPC_STUB IAMLatency_GetLatency_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13330 #endif 13331 13332 #ifndef __IAMPushSource_INTERFACE_DEFINED__ 13333 #define __IAMPushSource_INTERFACE_DEFINED__ 13334 EXTERN_C const IID IID_IAMPushSource; 13335 #if defined(__cplusplus) && !defined(CINTERFACE) 13336 struct IAMPushSource : public IAMLatency { 13337 public: 13338 virtual HRESULT WINAPI GetPushSourceFlags(ULONG *pFlags) = 0; 13339 virtual HRESULT WINAPI SetPushSourceFlags(ULONG Flags) = 0; 13340 virtual HRESULT WINAPI SetStreamOffset(REFERENCE_TIME rtOffset) = 0; 13341 virtual HRESULT WINAPI GetStreamOffset(REFERENCE_TIME *prtOffset) = 0; 13342 virtual HRESULT WINAPI GetMaxStreamOffset(REFERENCE_TIME *prtMaxOffset) = 0; 13343 virtual HRESULT WINAPI SetMaxStreamOffset(REFERENCE_TIME rtMaxOffset) = 0; 13344 }; 13345 #else 13346 typedef struct IAMPushSourceVtbl { 13347 BEGIN_INTERFACE 13348 HRESULT (WINAPI *QueryInterface)(IAMPushSource *This,REFIID riid,void **ppvObject); 13349 ULONG (WINAPI *AddRef)(IAMPushSource *This); 13350 ULONG (WINAPI *Release)(IAMPushSource *This); 13351 HRESULT (WINAPI *GetLatency)(IAMPushSource *This,REFERENCE_TIME *prtLatency); 13352 HRESULT (WINAPI *GetPushSourceFlags)(IAMPushSource *This,ULONG *pFlags); 13353 HRESULT (WINAPI *SetPushSourceFlags)(IAMPushSource *This,ULONG Flags); 13354 HRESULT (WINAPI *SetStreamOffset)(IAMPushSource *This,REFERENCE_TIME rtOffset); 13355 HRESULT (WINAPI *GetStreamOffset)(IAMPushSource *This,REFERENCE_TIME *prtOffset); 13356 HRESULT (WINAPI *GetMaxStreamOffset)(IAMPushSource *This,REFERENCE_TIME *prtMaxOffset); 13357 HRESULT (WINAPI *SetMaxStreamOffset)(IAMPushSource *This,REFERENCE_TIME rtMaxOffset); 13358 END_INTERFACE 13359 } IAMPushSourceVtbl; 13360 struct IAMPushSource { 13361 CONST_VTBL struct IAMPushSourceVtbl *lpVtbl; 13362 }; 13363 #ifdef COBJMACROS 13364 #define IAMPushSource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13365 #define IAMPushSource_AddRef(This) (This)->lpVtbl->AddRef(This) 13366 #define IAMPushSource_Release(This) (This)->lpVtbl->Release(This) 13367 #define IAMPushSource_GetLatency(This,prtLatency) (This)->lpVtbl->GetLatency(This,prtLatency) 13368 #define IAMPushSource_GetPushSourceFlags(This,pFlags) (This)->lpVtbl->GetPushSourceFlags(This,pFlags) 13369 #define IAMPushSource_SetPushSourceFlags(This,Flags) (This)->lpVtbl->SetPushSourceFlags(This,Flags) 13370 #define IAMPushSource_SetStreamOffset(This,rtOffset) (This)->lpVtbl->SetStreamOffset(This,rtOffset) 13371 #define IAMPushSource_GetStreamOffset(This,prtOffset) (This)->lpVtbl->GetStreamOffset(This,prtOffset) 13372 #define IAMPushSource_GetMaxStreamOffset(This,prtMaxOffset) (This)->lpVtbl->GetMaxStreamOffset(This,prtMaxOffset) 13373 #define IAMPushSource_SetMaxStreamOffset(This,rtMaxOffset) (This)->lpVtbl->SetMaxStreamOffset(This,rtMaxOffset) 13374 #endif 13375 #endif 13376 HRESULT WINAPI IAMPushSource_GetPushSourceFlags_Proxy(IAMPushSource *This,ULONG *pFlags); 13377 void __RPC_STUB IAMPushSource_GetPushSourceFlags_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13378 HRESULT WINAPI IAMPushSource_SetPushSourceFlags_Proxy(IAMPushSource *This,ULONG Flags); 13379 void __RPC_STUB IAMPushSource_SetPushSourceFlags_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13380 HRESULT WINAPI IAMPushSource_SetStreamOffset_Proxy(IAMPushSource *This,REFERENCE_TIME rtOffset); 13381 void __RPC_STUB IAMPushSource_SetStreamOffset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13382 HRESULT WINAPI IAMPushSource_GetStreamOffset_Proxy(IAMPushSource *This,REFERENCE_TIME *prtOffset); 13383 void __RPC_STUB IAMPushSource_GetStreamOffset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13384 HRESULT WINAPI IAMPushSource_GetMaxStreamOffset_Proxy(IAMPushSource *This,REFERENCE_TIME *prtMaxOffset); 13385 void __RPC_STUB IAMPushSource_GetMaxStreamOffset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13386 HRESULT WINAPI IAMPushSource_SetMaxStreamOffset_Proxy(IAMPushSource *This,REFERENCE_TIME rtMaxOffset); 13387 void __RPC_STUB IAMPushSource_SetMaxStreamOffset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13388 #endif 13389 13390 #ifndef __IAMDeviceRemoval_INTERFACE_DEFINED__ 13391 #define __IAMDeviceRemoval_INTERFACE_DEFINED__ 13392 EXTERN_C const IID IID_IAMDeviceRemoval; 13393 #if defined(__cplusplus) && !defined(CINTERFACE) 13394 struct IAMDeviceRemoval : public IUnknown { 13395 public: 13396 virtual HRESULT WINAPI DeviceInfo(CLSID *pclsidInterfaceClass,WCHAR **pwszSymbolicLink) = 0; 13397 virtual HRESULT WINAPI Reassociate(void) = 0; 13398 virtual HRESULT WINAPI Disassociate(void) = 0; 13399 }; 13400 #else 13401 typedef struct IAMDeviceRemovalVtbl { 13402 BEGIN_INTERFACE 13403 HRESULT (WINAPI *QueryInterface)(IAMDeviceRemoval *This,REFIID riid,void **ppvObject); 13404 ULONG (WINAPI *AddRef)(IAMDeviceRemoval *This); 13405 ULONG (WINAPI *Release)(IAMDeviceRemoval *This); 13406 HRESULT (WINAPI *DeviceInfo)(IAMDeviceRemoval *This,CLSID *pclsidInterfaceClass,WCHAR **pwszSymbolicLink); 13407 HRESULT (WINAPI *Reassociate)(IAMDeviceRemoval *This); 13408 HRESULT (WINAPI *Disassociate)(IAMDeviceRemoval *This); 13409 END_INTERFACE 13410 } IAMDeviceRemovalVtbl; 13411 struct IAMDeviceRemoval { 13412 CONST_VTBL struct IAMDeviceRemovalVtbl *lpVtbl; 13413 }; 13414 #ifdef COBJMACROS 13415 #define IAMDeviceRemoval_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13416 #define IAMDeviceRemoval_AddRef(This) (This)->lpVtbl->AddRef(This) 13417 #define IAMDeviceRemoval_Release(This) (This)->lpVtbl->Release(This) 13418 #define IAMDeviceRemoval_DeviceInfo(This,pclsidInterfaceClass,pwszSymbolicLink) (This)->lpVtbl->DeviceInfo(This,pclsidInterfaceClass,pwszSymbolicLink) 13419 #define IAMDeviceRemoval_Reassociate(This) (This)->lpVtbl->Reassociate(This) 13420 #define IAMDeviceRemoval_Disassociate(This) (This)->lpVtbl->Disassociate(This) 13421 #endif 13422 #endif 13423 HRESULT WINAPI IAMDeviceRemoval_DeviceInfo_Proxy(IAMDeviceRemoval *This,CLSID *pclsidInterfaceClass,WCHAR **pwszSymbolicLink); 13424 void __RPC_STUB IAMDeviceRemoval_DeviceInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13425 HRESULT WINAPI IAMDeviceRemoval_Reassociate_Proxy(IAMDeviceRemoval *This); 13426 void __RPC_STUB IAMDeviceRemoval_Reassociate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13427 HRESULT WINAPI IAMDeviceRemoval_Disassociate_Proxy(IAMDeviceRemoval *This); 13428 void __RPC_STUB IAMDeviceRemoval_Disassociate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13429 #endif 13430 13431 typedef struct __MIDL___MIDL_itf_strmif_0355_0001 { 13432 DWORD dwDVAAuxSrc; 13433 DWORD dwDVAAuxCtl; 13434 DWORD dwDVAAuxSrc1; 13435 DWORD dwDVAAuxCtl1; 13436 DWORD dwDVVAuxSrc; 13437 DWORD dwDVVAuxCtl; 13438 DWORD dwDVReserved[2]; 13439 } DVINFO; 13440 13441 typedef struct __MIDL___MIDL_itf_strmif_0355_0001 *PDVINFO; 13442 13443 enum _DVENCODERRESOLUTION { 13444 DVENCODERRESOLUTION_720x480 = 2012,DVENCODERRESOLUTION_360x240 = 2013,DVENCODERRESOLUTION_180x120 = 2014,DVENCODERRESOLUTION_88x60 = 2015 13445 }; 13446 13447 enum _DVENCODERVIDEOFORMAT { 13448 DVENCODERVIDEOFORMAT_NTSC = 2000,DVENCODERVIDEOFORMAT_PAL = 2001 13449 }; 13450 13451 enum _DVENCODERFORMAT { 13452 DVENCODERFORMAT_DVSD = 2007,DVENCODERFORMAT_DVHD = 2008,DVENCODERFORMAT_DVSL = 2009 13453 }; 13454 13455 extern RPC_IF_HANDLE __MIDL_itf_strmif_0355_v0_0_c_ifspec; 13456 extern RPC_IF_HANDLE __MIDL_itf_strmif_0355_v0_0_s_ifspec; 13457 #ifndef __IDVEnc_INTERFACE_DEFINED__ 13458 #define __IDVEnc_INTERFACE_DEFINED__ 13459 EXTERN_C const IID IID_IDVEnc; 13460 #if defined(__cplusplus) && !defined(CINTERFACE) 13461 struct IDVEnc : public IUnknown { 13462 public: 13463 virtual HRESULT WINAPI get_IFormatResolution(int *VideoFormat,int *DVFormat,int *Resolution,BYTE fDVInfo,DVINFO *sDVInfo) = 0; 13464 virtual HRESULT WINAPI put_IFormatResolution(int VideoFormat,int DVFormat,int Resolution,BYTE fDVInfo,DVINFO *sDVInfo) = 0; 13465 }; 13466 #else 13467 typedef struct IDVEncVtbl { 13468 BEGIN_INTERFACE 13469 HRESULT (WINAPI *QueryInterface)(IDVEnc *This,REFIID riid,void **ppvObject); 13470 ULONG (WINAPI *AddRef)(IDVEnc *This); 13471 ULONG (WINAPI *Release)(IDVEnc *This); 13472 HRESULT (WINAPI *get_IFormatResolution)(IDVEnc *This,int *VideoFormat,int *DVFormat,int *Resolution,BYTE fDVInfo,DVINFO *sDVInfo); 13473 HRESULT (WINAPI *put_IFormatResolution)(IDVEnc *This,int VideoFormat,int DVFormat,int Resolution,BYTE fDVInfo,DVINFO *sDVInfo); 13474 END_INTERFACE 13475 } IDVEncVtbl; 13476 struct IDVEnc { 13477 CONST_VTBL struct IDVEncVtbl *lpVtbl; 13478 }; 13479 #ifdef COBJMACROS 13480 #define IDVEnc_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13481 #define IDVEnc_AddRef(This) (This)->lpVtbl->AddRef(This) 13482 #define IDVEnc_Release(This) (This)->lpVtbl->Release(This) 13483 #define IDVEnc_get_IFormatResolution(This,VideoFormat,DVFormat,Resolution,fDVInfo,sDVInfo) (This)->lpVtbl->get_IFormatResolution(This,VideoFormat,DVFormat,Resolution,fDVInfo,sDVInfo) 13484 #define IDVEnc_put_IFormatResolution(This,VideoFormat,DVFormat,Resolution,fDVInfo,sDVInfo) (This)->lpVtbl->put_IFormatResolution(This,VideoFormat,DVFormat,Resolution,fDVInfo,sDVInfo) 13485 #endif 13486 #endif 13487 HRESULT WINAPI IDVEnc_get_IFormatResolution_Proxy(IDVEnc *This,int *VideoFormat,int *DVFormat,int *Resolution,BYTE fDVInfo,DVINFO *sDVInfo); 13488 void __RPC_STUB IDVEnc_get_IFormatResolution_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13489 HRESULT WINAPI IDVEnc_put_IFormatResolution_Proxy(IDVEnc *This,int VideoFormat,int DVFormat,int Resolution,BYTE fDVInfo,DVINFO *sDVInfo); 13490 void __RPC_STUB IDVEnc_put_IFormatResolution_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13491 #endif 13492 13493 enum _DVDECODERRESOLUTION { 13494 DVDECODERRESOLUTION_720x480 = 1000,DVDECODERRESOLUTION_360x240 = 1001,DVDECODERRESOLUTION_180x120 = 1002,DVDECODERRESOLUTION_88x60 = 1003 13495 }; 13496 13497 enum _DVRESOLUTION { 13498 DVRESOLUTION_FULL = 1000,DVRESOLUTION_HALF = 1001,DVRESOLUTION_QUARTER = 1002,DVRESOLUTION_DC = 1003 13499 }; 13500 13501 extern RPC_IF_HANDLE __MIDL_itf_strmif_0356_v0_0_c_ifspec; 13502 extern RPC_IF_HANDLE __MIDL_itf_strmif_0356_v0_0_s_ifspec; 13503 #ifndef __IIPDVDec_INTERFACE_DEFINED__ 13504 #define __IIPDVDec_INTERFACE_DEFINED__ 13505 EXTERN_C const IID IID_IIPDVDec; 13506 #if defined(__cplusplus) && !defined(CINTERFACE) 13507 struct IIPDVDec : public IUnknown { 13508 public: 13509 virtual HRESULT WINAPI get_IPDisplay(int *displayPix) = 0; 13510 virtual HRESULT WINAPI put_IPDisplay(int displayPix) = 0; 13511 }; 13512 #else 13513 typedef struct IIPDVDecVtbl { 13514 BEGIN_INTERFACE 13515 HRESULT (WINAPI *QueryInterface)(IIPDVDec *This,REFIID riid,void **ppvObject); 13516 ULONG (WINAPI *AddRef)(IIPDVDec *This); 13517 ULONG (WINAPI *Release)(IIPDVDec *This); 13518 HRESULT (WINAPI *get_IPDisplay)(IIPDVDec *This,int *displayPix); 13519 HRESULT (WINAPI *put_IPDisplay)(IIPDVDec *This,int displayPix); 13520 END_INTERFACE 13521 } IIPDVDecVtbl; 13522 struct IIPDVDec { 13523 CONST_VTBL struct IIPDVDecVtbl *lpVtbl; 13524 }; 13525 #ifdef COBJMACROS 13526 #define IIPDVDec_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13527 #define IIPDVDec_AddRef(This) (This)->lpVtbl->AddRef(This) 13528 #define IIPDVDec_Release(This) (This)->lpVtbl->Release(This) 13529 #define IIPDVDec_get_IPDisplay(This,displayPix) (This)->lpVtbl->get_IPDisplay(This,displayPix) 13530 #define IIPDVDec_put_IPDisplay(This,displayPix) (This)->lpVtbl->put_IPDisplay(This,displayPix) 13531 #endif 13532 #endif 13533 HRESULT WINAPI IIPDVDec_get_IPDisplay_Proxy(IIPDVDec *This,int *displayPix); 13534 void __RPC_STUB IIPDVDec_get_IPDisplay_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13535 HRESULT WINAPI IIPDVDec_put_IPDisplay_Proxy(IIPDVDec *This,int displayPix); 13536 void __RPC_STUB IIPDVDec_put_IPDisplay_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13537 #endif 13538 13539 #ifndef __IDVRGB219_INTERFACE_DEFINED__ 13540 #define __IDVRGB219_INTERFACE_DEFINED__ 13541 EXTERN_C const IID IID_IDVRGB219; 13542 #if defined(__cplusplus) && !defined(CINTERFACE) 13543 struct IDVRGB219 : public IUnknown { 13544 public: 13545 virtual HRESULT WINAPI SetRGB219(WINBOOL bState) = 0; 13546 }; 13547 #else 13548 typedef struct IDVRGB219Vtbl { 13549 BEGIN_INTERFACE 13550 HRESULT (WINAPI *QueryInterface)(IDVRGB219 *This,REFIID riid,void **ppvObject); 13551 ULONG (WINAPI *AddRef)(IDVRGB219 *This); 13552 ULONG (WINAPI *Release)(IDVRGB219 *This); 13553 HRESULT (WINAPI *SetRGB219)(IDVRGB219 *This,WINBOOL bState); 13554 END_INTERFACE 13555 } IDVRGB219Vtbl; 13556 struct IDVRGB219 { 13557 CONST_VTBL struct IDVRGB219Vtbl *lpVtbl; 13558 }; 13559 #ifdef COBJMACROS 13560 #define IDVRGB219_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13561 #define IDVRGB219_AddRef(This) (This)->lpVtbl->AddRef(This) 13562 #define IDVRGB219_Release(This) (This)->lpVtbl->Release(This) 13563 #define IDVRGB219_SetRGB219(This,bState) (This)->lpVtbl->SetRGB219(This,bState) 13564 #endif 13565 #endif 13566 HRESULT WINAPI IDVRGB219_SetRGB219_Proxy(IDVRGB219 *This,WINBOOL bState); 13567 void __RPC_STUB IDVRGB219_SetRGB219_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13568 #endif 13569 13570 #ifndef __IDVSplitter_INTERFACE_DEFINED__ 13571 #define __IDVSplitter_INTERFACE_DEFINED__ 13572 EXTERN_C const IID IID_IDVSplitter; 13573 #if defined(__cplusplus) && !defined(CINTERFACE) 13574 struct IDVSplitter : public IUnknown { 13575 public: 13576 virtual HRESULT WINAPI DiscardAlternateVideoFrames(int nDiscard) = 0; 13577 }; 13578 #else 13579 typedef struct IDVSplitterVtbl { 13580 BEGIN_INTERFACE 13581 HRESULT (WINAPI *QueryInterface)(IDVSplitter *This,REFIID riid,void **ppvObject); 13582 ULONG (WINAPI *AddRef)(IDVSplitter *This); 13583 ULONG (WINAPI *Release)(IDVSplitter *This); 13584 HRESULT (WINAPI *DiscardAlternateVideoFrames)(IDVSplitter *This,int nDiscard); 13585 END_INTERFACE 13586 } IDVSplitterVtbl; 13587 struct IDVSplitter { 13588 CONST_VTBL struct IDVSplitterVtbl *lpVtbl; 13589 }; 13590 #ifdef COBJMACROS 13591 #define IDVSplitter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13592 #define IDVSplitter_AddRef(This) (This)->lpVtbl->AddRef(This) 13593 #define IDVSplitter_Release(This) (This)->lpVtbl->Release(This) 13594 #define IDVSplitter_DiscardAlternateVideoFrames(This,nDiscard) (This)->lpVtbl->DiscardAlternateVideoFrames(This,nDiscard) 13595 #endif 13596 #endif 13597 HRESULT WINAPI IDVSplitter_DiscardAlternateVideoFrames_Proxy(IDVSplitter *This,int nDiscard); 13598 void __RPC_STUB IDVSplitter_DiscardAlternateVideoFrames_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13599 #endif 13600 13601 enum _AM_AUDIO_RENDERER_STAT_PARAM { 13602 AM_AUDREND_STAT_PARAM_BREAK_COUNT = 1, 13603 AM_AUDREND_STAT_PARAM_SLAVE_MODE,AM_AUDREND_STAT_PARAM_SILENCE_DUR, 13604 AM_AUDREND_STAT_PARAM_LAST_BUFFER_DUR,AM_AUDREND_STAT_PARAM_DISCONTINUITIES, 13605 AM_AUDREND_STAT_PARAM_SLAVE_RATE,AM_AUDREND_STAT_PARAM_SLAVE_DROPWRITE_DUR, 13606 AM_AUDREND_STAT_PARAM_SLAVE_HIGHLOWERROR,AM_AUDREND_STAT_PARAM_SLAVE_LASTHIGHLOWERROR, 13607 AM_AUDREND_STAT_PARAM_SLAVE_ACCUMERROR,AM_AUDREND_STAT_PARAM_BUFFERFULLNESS, 13608 AM_AUDREND_STAT_PARAM_JITTER 13609 }; 13610 13611 extern RPC_IF_HANDLE __MIDL_itf_strmif_0359_v0_0_c_ifspec; 13612 extern RPC_IF_HANDLE __MIDL_itf_strmif_0359_v0_0_s_ifspec; 13613 #ifndef __IAMAudioRendererStats_INTERFACE_DEFINED__ 13614 #define __IAMAudioRendererStats_INTERFACE_DEFINED__ 13615 EXTERN_C const IID IID_IAMAudioRendererStats; 13616 #if defined(__cplusplus) && !defined(CINTERFACE) 13617 struct IAMAudioRendererStats : public IUnknown { 13618 public: 13619 virtual HRESULT WINAPI GetStatParam(DWORD dwParam,DWORD *pdwParam1,DWORD *pdwParam2) = 0; 13620 }; 13621 #else 13622 typedef struct IAMAudioRendererStatsVtbl { 13623 BEGIN_INTERFACE 13624 HRESULT (WINAPI *QueryInterface)(IAMAudioRendererStats *This,REFIID riid,void **ppvObject); 13625 ULONG (WINAPI *AddRef)(IAMAudioRendererStats *This); 13626 ULONG (WINAPI *Release)(IAMAudioRendererStats *This); 13627 HRESULT (WINAPI *GetStatParam)(IAMAudioRendererStats *This,DWORD dwParam,DWORD *pdwParam1,DWORD *pdwParam2); 13628 END_INTERFACE 13629 } IAMAudioRendererStatsVtbl; 13630 struct IAMAudioRendererStats { 13631 CONST_VTBL struct IAMAudioRendererStatsVtbl *lpVtbl; 13632 }; 13633 #ifdef COBJMACROS 13634 #define IAMAudioRendererStats_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13635 #define IAMAudioRendererStats_AddRef(This) (This)->lpVtbl->AddRef(This) 13636 #define IAMAudioRendererStats_Release(This) (This)->lpVtbl->Release(This) 13637 #define IAMAudioRendererStats_GetStatParam(This,dwParam,pdwParam1,pdwParam2) (This)->lpVtbl->GetStatParam(This,dwParam,pdwParam1,pdwParam2) 13638 #endif 13639 #endif 13640 HRESULT WINAPI IAMAudioRendererStats_GetStatParam_Proxy(IAMAudioRendererStats *This,DWORD dwParam,DWORD *pdwParam1,DWORD *pdwParam2); 13641 void __RPC_STUB IAMAudioRendererStats_GetStatParam_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13642 #endif 13643 13644 enum _AM_INTF_SEARCH_FLAGS { 13645 AM_INTF_SEARCH_INPUT_PIN = 0x1,AM_INTF_SEARCH_OUTPUT_PIN = 0x2,AM_INTF_SEARCH_FILTER = 0x4 13646 }; 13647 13648 extern RPC_IF_HANDLE __MIDL_itf_strmif_0361_v0_0_c_ifspec; 13649 extern RPC_IF_HANDLE __MIDL_itf_strmif_0361_v0_0_s_ifspec; 13650 #ifndef __IAMGraphStreams_INTERFACE_DEFINED__ 13651 #define __IAMGraphStreams_INTERFACE_DEFINED__ 13652 EXTERN_C const IID IID_IAMGraphStreams; 13653 #if defined(__cplusplus) && !defined(CINTERFACE) 13654 struct IAMGraphStreams : public IUnknown { 13655 public: 13656 virtual HRESULT WINAPI FindUpstreamInterface(IPin *pPin,REFIID riid,void **ppvInterface,DWORD dwFlags) = 0; 13657 virtual HRESULT WINAPI SyncUsingStreamOffset(WINBOOL bUseStreamOffset) = 0; 13658 virtual HRESULT WINAPI SetMaxGraphLatency(REFERENCE_TIME rtMaxGraphLatency) = 0; 13659 }; 13660 #else 13661 typedef struct IAMGraphStreamsVtbl { 13662 BEGIN_INTERFACE 13663 HRESULT (WINAPI *QueryInterface)(IAMGraphStreams *This,REFIID riid,void **ppvObject); 13664 ULONG (WINAPI *AddRef)(IAMGraphStreams *This); 13665 ULONG (WINAPI *Release)(IAMGraphStreams *This); 13666 HRESULT (WINAPI *FindUpstreamInterface)(IAMGraphStreams *This,IPin *pPin,REFIID riid,void **ppvInterface,DWORD dwFlags); 13667 HRESULT (WINAPI *SyncUsingStreamOffset)(IAMGraphStreams *This,WINBOOL bUseStreamOffset); 13668 HRESULT (WINAPI *SetMaxGraphLatency)(IAMGraphStreams *This,REFERENCE_TIME rtMaxGraphLatency); 13669 END_INTERFACE 13670 } IAMGraphStreamsVtbl; 13671 struct IAMGraphStreams { 13672 CONST_VTBL struct IAMGraphStreamsVtbl *lpVtbl; 13673 }; 13674 #ifdef COBJMACROS 13675 #define IAMGraphStreams_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13676 #define IAMGraphStreams_AddRef(This) (This)->lpVtbl->AddRef(This) 13677 #define IAMGraphStreams_Release(This) (This)->lpVtbl->Release(This) 13678 #define IAMGraphStreams_FindUpstreamInterface(This,pPin,riid,ppvInterface,dwFlags) (This)->lpVtbl->FindUpstreamInterface(This,pPin,riid,ppvInterface,dwFlags) 13679 #define IAMGraphStreams_SyncUsingStreamOffset(This,bUseStreamOffset) (This)->lpVtbl->SyncUsingStreamOffset(This,bUseStreamOffset) 13680 #define IAMGraphStreams_SetMaxGraphLatency(This,rtMaxGraphLatency) (This)->lpVtbl->SetMaxGraphLatency(This,rtMaxGraphLatency) 13681 #endif 13682 #endif 13683 HRESULT WINAPI IAMGraphStreams_FindUpstreamInterface_Proxy(IAMGraphStreams *This,IPin *pPin,REFIID riid,void **ppvInterface,DWORD dwFlags); 13684 void __RPC_STUB IAMGraphStreams_FindUpstreamInterface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13685 HRESULT WINAPI IAMGraphStreams_SyncUsingStreamOffset_Proxy(IAMGraphStreams *This,WINBOOL bUseStreamOffset); 13686 void __RPC_STUB IAMGraphStreams_SyncUsingStreamOffset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13687 HRESULT WINAPI IAMGraphStreams_SetMaxGraphLatency_Proxy(IAMGraphStreams *This,REFERENCE_TIME rtMaxGraphLatency); 13688 void __RPC_STUB IAMGraphStreams_SetMaxGraphLatency_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13689 #endif 13690 13691 enum AMOVERLAYFX { 13692 AMOVERFX_NOFX = 0,AMOVERFX_MIRRORLEFTRIGHT = 0x2,AMOVERFX_MIRRORUPDOWN = 0x4,AMOVERFX_DEINTERLACE = 0x8 13693 }; 13694 13695 extern RPC_IF_HANDLE __MIDL_itf_strmif_0362_v0_0_c_ifspec; 13696 extern RPC_IF_HANDLE __MIDL_itf_strmif_0362_v0_0_s_ifspec; 13697 #ifndef __IAMOverlayFX_INTERFACE_DEFINED__ 13698 #define __IAMOverlayFX_INTERFACE_DEFINED__ 13699 EXTERN_C const IID IID_IAMOverlayFX; 13700 #if defined(__cplusplus) && !defined(CINTERFACE) 13701 struct IAMOverlayFX : public IUnknown { 13702 public: 13703 virtual HRESULT WINAPI QueryOverlayFXCaps(DWORD *lpdwOverlayFXCaps) = 0; 13704 virtual HRESULT WINAPI SetOverlayFX(DWORD dwOverlayFX) = 0; 13705 virtual HRESULT WINAPI GetOverlayFX(DWORD *lpdwOverlayFX) = 0; 13706 }; 13707 #else 13708 typedef struct IAMOverlayFXVtbl { 13709 BEGIN_INTERFACE 13710 HRESULT (WINAPI *QueryInterface)(IAMOverlayFX *This,REFIID riid,void **ppvObject); 13711 ULONG (WINAPI *AddRef)(IAMOverlayFX *This); 13712 ULONG (WINAPI *Release)(IAMOverlayFX *This); 13713 HRESULT (WINAPI *QueryOverlayFXCaps)(IAMOverlayFX *This,DWORD *lpdwOverlayFXCaps); 13714 HRESULT (WINAPI *SetOverlayFX)(IAMOverlayFX *This,DWORD dwOverlayFX); 13715 HRESULT (WINAPI *GetOverlayFX)(IAMOverlayFX *This,DWORD *lpdwOverlayFX); 13716 END_INTERFACE 13717 } IAMOverlayFXVtbl; 13718 struct IAMOverlayFX { 13719 CONST_VTBL struct IAMOverlayFXVtbl *lpVtbl; 13720 }; 13721 #ifdef COBJMACROS 13722 #define IAMOverlayFX_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13723 #define IAMOverlayFX_AddRef(This) (This)->lpVtbl->AddRef(This) 13724 #define IAMOverlayFX_Release(This) (This)->lpVtbl->Release(This) 13725 #define IAMOverlayFX_QueryOverlayFXCaps(This,lpdwOverlayFXCaps) (This)->lpVtbl->QueryOverlayFXCaps(This,lpdwOverlayFXCaps) 13726 #define IAMOverlayFX_SetOverlayFX(This,dwOverlayFX) (This)->lpVtbl->SetOverlayFX(This,dwOverlayFX) 13727 #define IAMOverlayFX_GetOverlayFX(This,lpdwOverlayFX) (This)->lpVtbl->GetOverlayFX(This,lpdwOverlayFX) 13728 #endif 13729 #endif 13730 HRESULT WINAPI IAMOverlayFX_QueryOverlayFXCaps_Proxy(IAMOverlayFX *This,DWORD *lpdwOverlayFXCaps); 13731 void __RPC_STUB IAMOverlayFX_QueryOverlayFXCaps_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13732 HRESULT WINAPI IAMOverlayFX_SetOverlayFX_Proxy(IAMOverlayFX *This,DWORD dwOverlayFX); 13733 void __RPC_STUB IAMOverlayFX_SetOverlayFX_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13734 HRESULT WINAPI IAMOverlayFX_GetOverlayFX_Proxy(IAMOverlayFX *This,DWORD *lpdwOverlayFX); 13735 void __RPC_STUB IAMOverlayFX_GetOverlayFX_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13736 #endif 13737 13738 #ifndef __IAMOpenProgress_INTERFACE_DEFINED__ 13739 #define __IAMOpenProgress_INTERFACE_DEFINED__ 13740 EXTERN_C const IID IID_IAMOpenProgress; 13741 #if defined(__cplusplus) && !defined(CINTERFACE) 13742 struct IAMOpenProgress : public IUnknown { 13743 public: 13744 virtual HRESULT WINAPI QueryProgress(LONGLONG *pllTotal,LONGLONG *pllCurrent) = 0; 13745 virtual HRESULT WINAPI AbortOperation(void) = 0; 13746 }; 13747 #else 13748 typedef struct IAMOpenProgressVtbl { 13749 BEGIN_INTERFACE 13750 HRESULT (WINAPI *QueryInterface)(IAMOpenProgress *This,REFIID riid,void **ppvObject); 13751 ULONG (WINAPI *AddRef)(IAMOpenProgress *This); 13752 ULONG (WINAPI *Release)(IAMOpenProgress *This); 13753 HRESULT (WINAPI *QueryProgress)(IAMOpenProgress *This,LONGLONG *pllTotal,LONGLONG *pllCurrent); 13754 HRESULT (WINAPI *AbortOperation)(IAMOpenProgress *This); 13755 END_INTERFACE 13756 } IAMOpenProgressVtbl; 13757 struct IAMOpenProgress { 13758 CONST_VTBL struct IAMOpenProgressVtbl *lpVtbl; 13759 }; 13760 #ifdef COBJMACROS 13761 #define IAMOpenProgress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13762 #define IAMOpenProgress_AddRef(This) (This)->lpVtbl->AddRef(This) 13763 #define IAMOpenProgress_Release(This) (This)->lpVtbl->Release(This) 13764 #define IAMOpenProgress_QueryProgress(This,pllTotal,pllCurrent) (This)->lpVtbl->QueryProgress(This,pllTotal,pllCurrent) 13765 #define IAMOpenProgress_AbortOperation(This) (This)->lpVtbl->AbortOperation(This) 13766 #endif 13767 #endif 13768 HRESULT WINAPI IAMOpenProgress_QueryProgress_Proxy(IAMOpenProgress *This,LONGLONG *pllTotal,LONGLONG *pllCurrent); 13769 void __RPC_STUB IAMOpenProgress_QueryProgress_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13770 HRESULT WINAPI IAMOpenProgress_AbortOperation_Proxy(IAMOpenProgress *This); 13771 void __RPC_STUB IAMOpenProgress_AbortOperation_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13772 #endif 13773 13774 #ifdef __CRT_UUID_DECL 13775 __CRT_UUID_DECL(IMpeg2Demultiplexer,0x436eee9c,0x264f,0x4242,0x90,0xe1,0x4e,0x33,0x0c,0x10,0x75,0x12); 13776 #endif 13777 13778 #ifndef __IMpeg2Demultiplexer_INTERFACE_DEFINED__ 13779 #define __IMpeg2Demultiplexer_INTERFACE_DEFINED__ 13780 EXTERN_C const IID IID_IMpeg2Demultiplexer; 13781 #if defined(__cplusplus) && !defined(CINTERFACE) 13782 struct IMpeg2Demultiplexer : public IUnknown { 13783 public: 13784 virtual HRESULT WINAPI CreateOutputPin(AM_MEDIA_TYPE *pMediaType,LPWSTR pszPinName,IPin **ppIPin) = 0; 13785 virtual HRESULT WINAPI SetOutputPinMediaType(LPWSTR pszPinName,AM_MEDIA_TYPE *pMediaType) = 0; 13786 virtual HRESULT WINAPI DeleteOutputPin(LPWSTR pszPinName) = 0; 13787 }; 13788 #else 13789 typedef struct IMpeg2DemultiplexerVtbl { 13790 BEGIN_INTERFACE 13791 HRESULT (WINAPI *QueryInterface)(IMpeg2Demultiplexer *This,REFIID riid,void **ppvObject); 13792 ULONG (WINAPI *AddRef)(IMpeg2Demultiplexer *This); 13793 ULONG (WINAPI *Release)(IMpeg2Demultiplexer *This); 13794 HRESULT (WINAPI *CreateOutputPin)(IMpeg2Demultiplexer *This,AM_MEDIA_TYPE *pMediaType,LPWSTR pszPinName,IPin **ppIPin); 13795 HRESULT (WINAPI *SetOutputPinMediaType)(IMpeg2Demultiplexer *This,LPWSTR pszPinName,AM_MEDIA_TYPE *pMediaType); 13796 HRESULT (WINAPI *DeleteOutputPin)(IMpeg2Demultiplexer *This,LPWSTR pszPinName); 13797 END_INTERFACE 13798 } IMpeg2DemultiplexerVtbl; 13799 struct IMpeg2Demultiplexer { 13800 CONST_VTBL struct IMpeg2DemultiplexerVtbl *lpVtbl; 13801 }; 13802 #ifdef COBJMACROS 13803 #define IMpeg2Demultiplexer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13804 #define IMpeg2Demultiplexer_AddRef(This) (This)->lpVtbl->AddRef(This) 13805 #define IMpeg2Demultiplexer_Release(This) (This)->lpVtbl->Release(This) 13806 #define IMpeg2Demultiplexer_CreateOutputPin(This,pMediaType,pszPinName,ppIPin) (This)->lpVtbl->CreateOutputPin(This,pMediaType,pszPinName,ppIPin) 13807 #define IMpeg2Demultiplexer_SetOutputPinMediaType(This,pszPinName,pMediaType) (This)->lpVtbl->SetOutputPinMediaType(This,pszPinName,pMediaType) 13808 #define IMpeg2Demultiplexer_DeleteOutputPin(This,pszPinName) (This)->lpVtbl->DeleteOutputPin(This,pszPinName) 13809 #endif 13810 #endif 13811 HRESULT WINAPI IMpeg2Demultiplexer_CreateOutputPin_Proxy(IMpeg2Demultiplexer *This,AM_MEDIA_TYPE *pMediaType,LPWSTR pszPinName,IPin **ppIPin); 13812 void __RPC_STUB IMpeg2Demultiplexer_CreateOutputPin_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13813 HRESULT WINAPI IMpeg2Demultiplexer_SetOutputPinMediaType_Proxy(IMpeg2Demultiplexer *This,LPWSTR pszPinName,AM_MEDIA_TYPE *pMediaType); 13814 void __RPC_STUB IMpeg2Demultiplexer_SetOutputPinMediaType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13815 HRESULT WINAPI IMpeg2Demultiplexer_DeleteOutputPin_Proxy(IMpeg2Demultiplexer *This,LPWSTR pszPinName); 13816 void __RPC_STUB IMpeg2Demultiplexer_DeleteOutputPin_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13817 #endif 13818 13819 #define MPEG2_PROGRAM_STREAM_MAP 0x00000000 13820 #define MPEG2_PROGRAM_ELEMENTARY_STREAM 0x00000001 13821 #define MPEG2_PROGRAM_DIRECTORY_PES_PACKET 0x00000002 13822 #define MPEG2_PROGRAM_PACK_HEADER 0x00000003 13823 #define MPEG2_PROGRAM_PES_STREAM 0x00000004 13824 #define MPEG2_PROGRAM_SYSTEM_HEADER 0x00000005 13825 #define SUBSTREAM_FILTER_VAL_NONE 0x10000000 13826 13827 typedef struct __MIDL___MIDL_itf_strmif_0365_0001 { 13828 ULONG stream_id; 13829 DWORD dwMediaSampleContent; 13830 ULONG ulSubstreamFilterValue; 13831 int iDataOffset; 13832 } STREAM_ID_MAP; 13833 13834 extern RPC_IF_HANDLE __MIDL_itf_strmif_0365_v0_0_c_ifspec; 13835 extern RPC_IF_HANDLE __MIDL_itf_strmif_0365_v0_0_s_ifspec; 13836 #ifndef __IEnumStreamIdMap_INTERFACE_DEFINED__ 13837 #define __IEnumStreamIdMap_INTERFACE_DEFINED__ 13838 EXTERN_C const IID IID_IEnumStreamIdMap; 13839 #if defined(__cplusplus) && !defined(CINTERFACE) 13840 struct IEnumStreamIdMap : public IUnknown { 13841 public: 13842 virtual HRESULT WINAPI Next(ULONG cRequest,STREAM_ID_MAP *pStreamIdMap,ULONG *pcReceived) = 0; 13843 virtual HRESULT WINAPI Skip(ULONG cRecords) = 0; 13844 virtual HRESULT WINAPI Reset(void) = 0; 13845 virtual HRESULT WINAPI Clone(IEnumStreamIdMap **ppIEnumStreamIdMap) = 0; 13846 }; 13847 #else 13848 typedef struct IEnumStreamIdMapVtbl { 13849 BEGIN_INTERFACE 13850 HRESULT (WINAPI *QueryInterface)(IEnumStreamIdMap *This,REFIID riid,void **ppvObject); 13851 ULONG (WINAPI *AddRef)(IEnumStreamIdMap *This); 13852 ULONG (WINAPI *Release)(IEnumStreamIdMap *This); 13853 HRESULT (WINAPI *Next)(IEnumStreamIdMap *This,ULONG cRequest,STREAM_ID_MAP *pStreamIdMap,ULONG *pcReceived); 13854 HRESULT (WINAPI *Skip)(IEnumStreamIdMap *This,ULONG cRecords); 13855 HRESULT (WINAPI *Reset)(IEnumStreamIdMap *This); 13856 HRESULT (WINAPI *Clone)(IEnumStreamIdMap *This,IEnumStreamIdMap **ppIEnumStreamIdMap); 13857 END_INTERFACE 13858 } IEnumStreamIdMapVtbl; 13859 struct IEnumStreamIdMap { 13860 CONST_VTBL struct IEnumStreamIdMapVtbl *lpVtbl; 13861 }; 13862 #ifdef COBJMACROS 13863 #define IEnumStreamIdMap_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13864 #define IEnumStreamIdMap_AddRef(This) (This)->lpVtbl->AddRef(This) 13865 #define IEnumStreamIdMap_Release(This) (This)->lpVtbl->Release(This) 13866 #define IEnumStreamIdMap_Next(This,cRequest,pStreamIdMap,pcReceived) (This)->lpVtbl->Next(This,cRequest,pStreamIdMap,pcReceived) 13867 #define IEnumStreamIdMap_Skip(This,cRecords) (This)->lpVtbl->Skip(This,cRecords) 13868 #define IEnumStreamIdMap_Reset(This) (This)->lpVtbl->Reset(This) 13869 #define IEnumStreamIdMap_Clone(This,ppIEnumStreamIdMap) (This)->lpVtbl->Clone(This,ppIEnumStreamIdMap) 13870 #endif 13871 #endif 13872 HRESULT WINAPI IEnumStreamIdMap_Next_Proxy(IEnumStreamIdMap *This,ULONG cRequest,STREAM_ID_MAP *pStreamIdMap,ULONG *pcReceived); 13873 void __RPC_STUB IEnumStreamIdMap_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13874 HRESULT WINAPI IEnumStreamIdMap_Skip_Proxy(IEnumStreamIdMap *This,ULONG cRecords); 13875 void __RPC_STUB IEnumStreamIdMap_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13876 HRESULT WINAPI IEnumStreamIdMap_Reset_Proxy(IEnumStreamIdMap *This); 13877 void __RPC_STUB IEnumStreamIdMap_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13878 HRESULT WINAPI IEnumStreamIdMap_Clone_Proxy(IEnumStreamIdMap *This,IEnumStreamIdMap **ppIEnumStreamIdMap); 13879 void __RPC_STUB IEnumStreamIdMap_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13880 #endif 13881 13882 #ifndef __IMPEG2StreamIdMap_INTERFACE_DEFINED__ 13883 #define __IMPEG2StreamIdMap_INTERFACE_DEFINED__ 13884 EXTERN_C const IID IID_IMPEG2StreamIdMap; 13885 #if defined(__cplusplus) && !defined(CINTERFACE) 13886 struct IMPEG2StreamIdMap : public IUnknown { 13887 public: 13888 virtual HRESULT WINAPI MapStreamId(ULONG ulStreamId,DWORD MediaSampleContent,ULONG ulSubstreamFilterValue,int iDataOffset) = 0; 13889 virtual HRESULT WINAPI UnmapStreamId(ULONG culStreamId,ULONG *pulStreamId) = 0; 13890 virtual HRESULT WINAPI EnumStreamIdMap(IEnumStreamIdMap **ppIEnumStreamIdMap) = 0; 13891 }; 13892 #else 13893 typedef struct IMPEG2StreamIdMapVtbl { 13894 BEGIN_INTERFACE 13895 HRESULT (WINAPI *QueryInterface)(IMPEG2StreamIdMap *This,REFIID riid,void **ppvObject); 13896 ULONG (WINAPI *AddRef)(IMPEG2StreamIdMap *This); 13897 ULONG (WINAPI *Release)(IMPEG2StreamIdMap *This); 13898 HRESULT (WINAPI *MapStreamId)(IMPEG2StreamIdMap *This,ULONG ulStreamId,DWORD MediaSampleContent,ULONG ulSubstreamFilterValue,int iDataOffset); 13899 HRESULT (WINAPI *UnmapStreamId)(IMPEG2StreamIdMap *This,ULONG culStreamId,ULONG *pulStreamId); 13900 HRESULT (WINAPI *EnumStreamIdMap)(IMPEG2StreamIdMap *This,IEnumStreamIdMap **ppIEnumStreamIdMap); 13901 END_INTERFACE 13902 } IMPEG2StreamIdMapVtbl; 13903 struct IMPEG2StreamIdMap { 13904 CONST_VTBL struct IMPEG2StreamIdMapVtbl *lpVtbl; 13905 }; 13906 #ifdef COBJMACROS 13907 #define IMPEG2StreamIdMap_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13908 #define IMPEG2StreamIdMap_AddRef(This) (This)->lpVtbl->AddRef(This) 13909 #define IMPEG2StreamIdMap_Release(This) (This)->lpVtbl->Release(This) 13910 #define IMPEG2StreamIdMap_MapStreamId(This,ulStreamId,MediaSampleContent,ulSubstreamFilterValue,iDataOffset) (This)->lpVtbl->MapStreamId(This,ulStreamId,MediaSampleContent,ulSubstreamFilterValue,iDataOffset) 13911 #define IMPEG2StreamIdMap_UnmapStreamId(This,culStreamId,pulStreamId) (This)->lpVtbl->UnmapStreamId(This,culStreamId,pulStreamId) 13912 #define IMPEG2StreamIdMap_EnumStreamIdMap(This,ppIEnumStreamIdMap) (This)->lpVtbl->EnumStreamIdMap(This,ppIEnumStreamIdMap) 13913 #endif 13914 #endif 13915 HRESULT WINAPI IMPEG2StreamIdMap_MapStreamId_Proxy(IMPEG2StreamIdMap *This,ULONG ulStreamId,DWORD MediaSampleContent,ULONG ulSubstreamFilterValue,int iDataOffset); 13916 void __RPC_STUB IMPEG2StreamIdMap_MapStreamId_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13917 HRESULT WINAPI IMPEG2StreamIdMap_UnmapStreamId_Proxy(IMPEG2StreamIdMap *This,ULONG culStreamId,ULONG *pulStreamId); 13918 void __RPC_STUB IMPEG2StreamIdMap_UnmapStreamId_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13919 HRESULT WINAPI IMPEG2StreamIdMap_EnumStreamIdMap_Proxy(IMPEG2StreamIdMap *This,IEnumStreamIdMap **ppIEnumStreamIdMap); 13920 void __RPC_STUB IMPEG2StreamIdMap_EnumStreamIdMap_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13921 #endif 13922 13923 #ifndef __IRegisterServiceProvider_INTERFACE_DEFINED__ 13924 #define __IRegisterServiceProvider_INTERFACE_DEFINED__ 13925 EXTERN_C const IID IID_IRegisterServiceProvider; 13926 #if defined(__cplusplus) && !defined(CINTERFACE) 13927 struct IRegisterServiceProvider : public IUnknown { 13928 public: 13929 virtual HRESULT WINAPI RegisterService(REFGUID guidService,IUnknown *pUnkObject) = 0; 13930 }; 13931 #else 13932 typedef struct IRegisterServiceProviderVtbl { 13933 BEGIN_INTERFACE 13934 HRESULT (WINAPI *QueryInterface)(IRegisterServiceProvider *This,REFIID riid,void **ppvObject); 13935 ULONG (WINAPI *AddRef)(IRegisterServiceProvider *This); 13936 ULONG (WINAPI *Release)(IRegisterServiceProvider *This); 13937 HRESULT (WINAPI *RegisterService)(IRegisterServiceProvider *This,REFGUID guidService,IUnknown *pUnkObject); 13938 END_INTERFACE 13939 } IRegisterServiceProviderVtbl; 13940 struct IRegisterServiceProvider { 13941 CONST_VTBL struct IRegisterServiceProviderVtbl *lpVtbl; 13942 }; 13943 #ifdef COBJMACROS 13944 #define IRegisterServiceProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13945 #define IRegisterServiceProvider_AddRef(This) (This)->lpVtbl->AddRef(This) 13946 #define IRegisterServiceProvider_Release(This) (This)->lpVtbl->Release(This) 13947 #define IRegisterServiceProvider_RegisterService(This,guidService,pUnkObject) (This)->lpVtbl->RegisterService(This,guidService,pUnkObject) 13948 #endif 13949 #endif 13950 HRESULT WINAPI IRegisterServiceProvider_RegisterService_Proxy(IRegisterServiceProvider *This,REFGUID guidService,IUnknown *pUnkObject); 13951 void __RPC_STUB IRegisterServiceProvider_RegisterService_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 13952 #endif 13953 13954 #ifdef __cplusplus 13955 #ifndef _IAMFilterGraphCallback_ 13956 #define _IAMFilterGraphCallback_ 13957 EXTERN_GUID(IID_IAMFilterGraphCallback,0x56a868fd,0x0ad4,0x11ce,0xb0,0xa3,0x0,0x20,0xaf,0x0b,0xa7,0x70); 13958 struct IAMFilterGraphCallback : public IUnknown { 13959 virtual HRESULT UnableToRender(IPin *pPin) = 0; 13960 }; 13961 #endif 13962 #endif 13963 struct CodecAPIEventData { 13964 GUID guid; 13965 DWORD dataLength; 13966 DWORD reserved[3]; 13967 }; 13968 13969 extern RPC_IF_HANDLE __MIDL_itf_strmif_0370_v0_0_c_ifspec; 13970 extern RPC_IF_HANDLE __MIDL_itf_strmif_0370_v0_0_s_ifspec; 13971 #ifndef __ICodecAPI_INTERFACE_DEFINED__ 13972 #define __ICodecAPI_INTERFACE_DEFINED__ 13973 EXTERN_C const IID IID_ICodecAPI; 13974 #if defined(__cplusplus) && !defined(CINTERFACE) 13975 struct ICodecAPI : public IUnknown { 13976 public: 13977 virtual HRESULT WINAPI IsSupported(const GUID *Api) = 0; 13978 virtual HRESULT WINAPI IsModifiable(const GUID *Api) = 0; 13979 virtual HRESULT WINAPI GetParameterRange(const GUID *Api,VARIANT *ValueMin,VARIANT *ValueMax,VARIANT *SteppingDelta) = 0; 13980 virtual HRESULT WINAPI GetParameterValues(const GUID *Api,VARIANT **Values,ULONG *ValuesCount) = 0; 13981 virtual HRESULT WINAPI GetDefaultValue(const GUID *Api,VARIANT *Value) = 0; 13982 virtual HRESULT WINAPI GetValue(const GUID *Api,VARIANT *Value) = 0; 13983 virtual HRESULT WINAPI SetValue(const GUID *Api,VARIANT *Value) = 0; 13984 virtual HRESULT WINAPI RegisterForEvent(const GUID *Api,LONG_PTR userData) = 0; 13985 virtual HRESULT WINAPI UnregisterForEvent(const GUID *Api) = 0; 13986 virtual HRESULT WINAPI SetAllDefaults(void) = 0; 13987 virtual HRESULT WINAPI SetValueWithNotify(const GUID *Api,VARIANT *Value,GUID **ChangedParam,ULONG *ChangedParamCount) = 0; 13988 virtual HRESULT WINAPI SetAllDefaultsWithNotify(GUID **ChangedParam,ULONG *ChangedParamCount) = 0; 13989 virtual HRESULT WINAPI GetAllSettings(IStream *__MIDL_0016) = 0; 13990 virtual HRESULT WINAPI SetAllSettings(IStream *__MIDL_0017) = 0; 13991 virtual HRESULT WINAPI SetAllSettingsWithNotify(IStream *__MIDL_0018,GUID **ChangedParam,ULONG *ChangedParamCount) = 0; 13992 }; 13993 #else 13994 typedef struct ICodecAPIVtbl { 13995 BEGIN_INTERFACE 13996 HRESULT (WINAPI *QueryInterface)(ICodecAPI *This,REFIID riid,void **ppvObject); 13997 ULONG (WINAPI *AddRef)(ICodecAPI *This); 13998 ULONG (WINAPI *Release)(ICodecAPI *This); 13999 HRESULT (WINAPI *IsSupported)(ICodecAPI *This,const GUID *Api); 14000 HRESULT (WINAPI *IsModifiable)(ICodecAPI *This,const GUID *Api); 14001 HRESULT (WINAPI *GetParameterRange)(ICodecAPI *This,const GUID *Api,VARIANT *ValueMin,VARIANT *ValueMax,VARIANT *SteppingDelta); 14002 HRESULT (WINAPI *GetParameterValues)(ICodecAPI *This,const GUID *Api,VARIANT **Values,ULONG *ValuesCount); 14003 HRESULT (WINAPI *GetDefaultValue)(ICodecAPI *This,const GUID *Api,VARIANT *Value); 14004 HRESULT (WINAPI *GetValue)(ICodecAPI *This,const GUID *Api,VARIANT *Value); 14005 HRESULT (WINAPI *SetValue)(ICodecAPI *This,const GUID *Api,VARIANT *Value); 14006 HRESULT (WINAPI *RegisterForEvent)(ICodecAPI *This,const GUID *Api,LONG_PTR userData); 14007 HRESULT (WINAPI *UnregisterForEvent)(ICodecAPI *This,const GUID *Api); 14008 HRESULT (WINAPI *SetAllDefaults)(ICodecAPI *This); 14009 HRESULT (WINAPI *SetValueWithNotify)(ICodecAPI *This,const GUID *Api,VARIANT *Value,GUID **ChangedParam,ULONG *ChangedParamCount); 14010 HRESULT (WINAPI *SetAllDefaultsWithNotify)(ICodecAPI *This,GUID **ChangedParam,ULONG *ChangedParamCount); 14011 HRESULT (WINAPI *GetAllSettings)(ICodecAPI *This,IStream *__MIDL_0016); 14012 HRESULT (WINAPI *SetAllSettings)(ICodecAPI *This,IStream *__MIDL_0017); 14013 HRESULT (WINAPI *SetAllSettingsWithNotify)(ICodecAPI *This,IStream *__MIDL_0018,GUID **ChangedParam,ULONG *ChangedParamCount); 14014 END_INTERFACE 14015 } ICodecAPIVtbl; 14016 struct ICodecAPI { 14017 CONST_VTBL struct ICodecAPIVtbl *lpVtbl; 14018 }; 14019 #ifdef COBJMACROS 14020 #define ICodecAPI_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 14021 #define ICodecAPI_AddRef(This) (This)->lpVtbl->AddRef(This) 14022 #define ICodecAPI_Release(This) (This)->lpVtbl->Release(This) 14023 #define ICodecAPI_IsSupported(This,Api) (This)->lpVtbl->IsSupported(This,Api) 14024 #define ICodecAPI_IsModifiable(This,Api) (This)->lpVtbl->IsModifiable(This,Api) 14025 #define ICodecAPI_GetParameterRange(This,Api,ValueMin,ValueMax,SteppingDelta) (This)->lpVtbl->GetParameterRange(This,Api,ValueMin,ValueMax,SteppingDelta) 14026 #define ICodecAPI_GetParameterValues(This,Api,Values,ValuesCount) (This)->lpVtbl->GetParameterValues(This,Api,Values,ValuesCount) 14027 #define ICodecAPI_GetDefaultValue(This,Api,Value) (This)->lpVtbl->GetDefaultValue(This,Api,Value) 14028 #define ICodecAPI_GetValue(This,Api,Value) (This)->lpVtbl->GetValue(This,Api,Value) 14029 #define ICodecAPI_SetValue(This,Api,Value) (This)->lpVtbl->SetValue(This,Api,Value) 14030 #define ICodecAPI_RegisterForEvent(This,Api,userData) (This)->lpVtbl->RegisterForEvent(This,Api,userData) 14031 #define ICodecAPI_UnregisterForEvent(This,Api) (This)->lpVtbl->UnregisterForEvent(This,Api) 14032 #define ICodecAPI_SetAllDefaults(This) (This)->lpVtbl->SetAllDefaults(This) 14033 #define ICodecAPI_SetValueWithNotify(This,Api,Value,ChangedParam,ChangedParamCount) (This)->lpVtbl->SetValueWithNotify(This,Api,Value,ChangedParam,ChangedParamCount) 14034 #define ICodecAPI_SetAllDefaultsWithNotify(This,ChangedParam,ChangedParamCount) (This)->lpVtbl->SetAllDefaultsWithNotify(This,ChangedParam,ChangedParamCount) 14035 #define ICodecAPI_GetAllSettings(This,__MIDL_0016) (This)->lpVtbl->GetAllSettings(This,__MIDL_0016) 14036 #define ICodecAPI_SetAllSettings(This,__MIDL_0017) (This)->lpVtbl->SetAllSettings(This,__MIDL_0017) 14037 #define ICodecAPI_SetAllSettingsWithNotify(This,__MIDL_0018,ChangedParam,ChangedParamCount) (This)->lpVtbl->SetAllSettingsWithNotify(This,__MIDL_0018,ChangedParam,ChangedParamCount) 14038 #endif 14039 #endif 14040 HRESULT WINAPI ICodecAPI_IsSupported_Proxy(ICodecAPI *This,const GUID *Api); 14041 void __RPC_STUB ICodecAPI_IsSupported_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14042 HRESULT WINAPI ICodecAPI_IsModifiable_Proxy(ICodecAPI *This,const GUID *Api); 14043 void __RPC_STUB ICodecAPI_IsModifiable_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14044 HRESULT WINAPI ICodecAPI_GetParameterRange_Proxy(ICodecAPI *This,const GUID *Api,VARIANT *ValueMin,VARIANT *ValueMax,VARIANT *SteppingDelta); 14045 void __RPC_STUB ICodecAPI_GetParameterRange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14046 HRESULT WINAPI ICodecAPI_GetParameterValues_Proxy(ICodecAPI *This,const GUID *Api,VARIANT **Values,ULONG *ValuesCount); 14047 void __RPC_STUB ICodecAPI_GetParameterValues_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14048 HRESULT WINAPI ICodecAPI_GetDefaultValue_Proxy(ICodecAPI *This,const GUID *Api,VARIANT *Value); 14049 void __RPC_STUB ICodecAPI_GetDefaultValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14050 HRESULT WINAPI ICodecAPI_GetValue_Proxy(ICodecAPI *This,const GUID *Api,VARIANT *Value); 14051 void __RPC_STUB ICodecAPI_GetValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14052 HRESULT WINAPI ICodecAPI_SetValue_Proxy(ICodecAPI *This,const GUID *Api,VARIANT *Value); 14053 void __RPC_STUB ICodecAPI_SetValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14054 HRESULT WINAPI ICodecAPI_RegisterForEvent_Proxy(ICodecAPI *This,const GUID *Api,LONG_PTR userData); 14055 void __RPC_STUB ICodecAPI_RegisterForEvent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14056 HRESULT WINAPI ICodecAPI_UnregisterForEvent_Proxy(ICodecAPI *This,const GUID *Api); 14057 void __RPC_STUB ICodecAPI_UnregisterForEvent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14058 HRESULT WINAPI ICodecAPI_SetAllDefaults_Proxy(ICodecAPI *This); 14059 void __RPC_STUB ICodecAPI_SetAllDefaults_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14060 HRESULT WINAPI ICodecAPI_SetValueWithNotify_Proxy(ICodecAPI *This,const GUID *Api,VARIANT *Value,GUID **ChangedParam,ULONG *ChangedParamCount); 14061 void __RPC_STUB ICodecAPI_SetValueWithNotify_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14062 HRESULT WINAPI ICodecAPI_SetAllDefaultsWithNotify_Proxy(ICodecAPI *This,GUID **ChangedParam,ULONG *ChangedParamCount); 14063 void __RPC_STUB ICodecAPI_SetAllDefaultsWithNotify_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14064 HRESULT WINAPI ICodecAPI_GetAllSettings_Proxy(ICodecAPI *This,IStream *__MIDL_0016); 14065 void __RPC_STUB ICodecAPI_GetAllSettings_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14066 HRESULT WINAPI ICodecAPI_SetAllSettings_Proxy(ICodecAPI *This,IStream *__MIDL_0017); 14067 void __RPC_STUB ICodecAPI_SetAllSettings_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14068 HRESULT WINAPI ICodecAPI_SetAllSettingsWithNotify_Proxy(ICodecAPI *This,IStream *__MIDL_0018,GUID **ChangedParam,ULONG *ChangedParamCount); 14069 void __RPC_STUB ICodecAPI_SetAllSettingsWithNotify_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14070 #endif 14071 14072 #ifndef __IGetCapabilitiesKey_INTERFACE_DEFINED__ 14073 #define __IGetCapabilitiesKey_INTERFACE_DEFINED__ 14074 EXTERN_C const IID IID_IGetCapabilitiesKey; 14075 #if defined(__cplusplus) && !defined(CINTERFACE) 14076 struct IGetCapabilitiesKey : public IUnknown { 14077 public: 14078 virtual HRESULT WINAPI GetCapabilitiesKey(HKEY *pHKey) = 0; 14079 }; 14080 #else 14081 typedef struct IGetCapabilitiesKeyVtbl { 14082 BEGIN_INTERFACE 14083 HRESULT (WINAPI *QueryInterface)(IGetCapabilitiesKey *This,REFIID riid,void **ppvObject); 14084 ULONG (WINAPI *AddRef)(IGetCapabilitiesKey *This); 14085 ULONG (WINAPI *Release)(IGetCapabilitiesKey *This); 14086 HRESULT (WINAPI *GetCapabilitiesKey)(IGetCapabilitiesKey *This,HKEY *pHKey); 14087 END_INTERFACE 14088 } IGetCapabilitiesKeyVtbl; 14089 struct IGetCapabilitiesKey { 14090 CONST_VTBL struct IGetCapabilitiesKeyVtbl *lpVtbl; 14091 }; 14092 #ifdef COBJMACROS 14093 #define IGetCapabilitiesKey_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 14094 #define IGetCapabilitiesKey_AddRef(This) (This)->lpVtbl->AddRef(This) 14095 #define IGetCapabilitiesKey_Release(This) (This)->lpVtbl->Release(This) 14096 #define IGetCapabilitiesKey_GetCapabilitiesKey(This,pHKey) (This)->lpVtbl->GetCapabilitiesKey(This,pHKey) 14097 #endif 14098 #endif 14099 HRESULT WINAPI IGetCapabilitiesKey_GetCapabilitiesKey_Proxy(IGetCapabilitiesKey *This,HKEY *pHKey); 14100 void __RPC_STUB IGetCapabilitiesKey_GetCapabilitiesKey_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14101 #endif 14102 14103 #ifndef __IEncoderAPI_INTERFACE_DEFINED__ 14104 #define __IEncoderAPI_INTERFACE_DEFINED__ 14105 EXTERN_C const IID IID_IEncoderAPI; 14106 #if defined(__cplusplus) && !defined(CINTERFACE) 14107 struct IEncoderAPI : public IUnknown { 14108 public: 14109 virtual HRESULT WINAPI IsSupported(const GUID *Api) = 0; 14110 virtual HRESULT WINAPI IsAvailable(const GUID *Api) = 0; 14111 virtual HRESULT WINAPI GetParameterRange(const GUID *Api,VARIANT *ValueMin,VARIANT *ValueMax,VARIANT *SteppingDelta) = 0; 14112 virtual HRESULT WINAPI GetParameterValues(const GUID *Api,VARIANT **Values,ULONG *ValuesCount) = 0; 14113 virtual HRESULT WINAPI GetDefaultValue(const GUID *Api,VARIANT *Value) = 0; 14114 virtual HRESULT WINAPI GetValue(const GUID *Api,VARIANT *Value) = 0; 14115 virtual HRESULT WINAPI SetValue(const GUID *Api,VARIANT *Value) = 0; 14116 }; 14117 #else 14118 typedef struct IEncoderAPIVtbl { 14119 BEGIN_INTERFACE 14120 HRESULT (WINAPI *QueryInterface)(IEncoderAPI *This,REFIID riid,void **ppvObject); 14121 ULONG (WINAPI *AddRef)(IEncoderAPI *This); 14122 ULONG (WINAPI *Release)(IEncoderAPI *This); 14123 HRESULT (WINAPI *IsSupported)(IEncoderAPI *This,const GUID *Api); 14124 HRESULT (WINAPI *IsAvailable)(IEncoderAPI *This,const GUID *Api); 14125 HRESULT (WINAPI *GetParameterRange)(IEncoderAPI *This,const GUID *Api,VARIANT *ValueMin,VARIANT *ValueMax,VARIANT *SteppingDelta); 14126 HRESULT (WINAPI *GetParameterValues)(IEncoderAPI *This,const GUID *Api,VARIANT **Values,ULONG *ValuesCount); 14127 HRESULT (WINAPI *GetDefaultValue)(IEncoderAPI *This,const GUID *Api,VARIANT *Value); 14128 HRESULT (WINAPI *GetValue)(IEncoderAPI *This,const GUID *Api,VARIANT *Value); 14129 HRESULT (WINAPI *SetValue)(IEncoderAPI *This,const GUID *Api,VARIANT *Value); 14130 END_INTERFACE 14131 } IEncoderAPIVtbl; 14132 struct IEncoderAPI { 14133 CONST_VTBL struct IEncoderAPIVtbl *lpVtbl; 14134 }; 14135 #ifdef COBJMACROS 14136 #define IEncoderAPI_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 14137 #define IEncoderAPI_AddRef(This) (This)->lpVtbl->AddRef(This) 14138 #define IEncoderAPI_Release(This) (This)->lpVtbl->Release(This) 14139 #define IEncoderAPI_IsSupported(This,Api) (This)->lpVtbl->IsSupported(This,Api) 14140 #define IEncoderAPI_IsAvailable(This,Api) (This)->lpVtbl->IsAvailable(This,Api) 14141 #define IEncoderAPI_GetParameterRange(This,Api,ValueMin,ValueMax,SteppingDelta) (This)->lpVtbl->GetParameterRange(This,Api,ValueMin,ValueMax,SteppingDelta) 14142 #define IEncoderAPI_GetParameterValues(This,Api,Values,ValuesCount) (This)->lpVtbl->GetParameterValues(This,Api,Values,ValuesCount) 14143 #define IEncoderAPI_GetDefaultValue(This,Api,Value) (This)->lpVtbl->GetDefaultValue(This,Api,Value) 14144 #define IEncoderAPI_GetValue(This,Api,Value) (This)->lpVtbl->GetValue(This,Api,Value) 14145 #define IEncoderAPI_SetValue(This,Api,Value) (This)->lpVtbl->SetValue(This,Api,Value) 14146 #endif 14147 #endif 14148 HRESULT WINAPI IEncoderAPI_IsSupported_Proxy(IEncoderAPI *This,const GUID *Api); 14149 void __RPC_STUB IEncoderAPI_IsSupported_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14150 HRESULT WINAPI IEncoderAPI_IsAvailable_Proxy(IEncoderAPI *This,const GUID *Api); 14151 void __RPC_STUB IEncoderAPI_IsAvailable_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14152 HRESULT WINAPI IEncoderAPI_GetParameterRange_Proxy(IEncoderAPI *This,const GUID *Api,VARIANT *ValueMin,VARIANT *ValueMax,VARIANT *SteppingDelta); 14153 void __RPC_STUB IEncoderAPI_GetParameterRange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14154 HRESULT WINAPI IEncoderAPI_GetParameterValues_Proxy(IEncoderAPI *This,const GUID *Api,VARIANT **Values,ULONG *ValuesCount); 14155 void __RPC_STUB IEncoderAPI_GetParameterValues_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14156 HRESULT WINAPI IEncoderAPI_GetDefaultValue_Proxy(IEncoderAPI *This,const GUID *Api,VARIANT *Value); 14157 void __RPC_STUB IEncoderAPI_GetDefaultValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14158 HRESULT WINAPI IEncoderAPI_GetValue_Proxy(IEncoderAPI *This,const GUID *Api,VARIANT *Value); 14159 void __RPC_STUB IEncoderAPI_GetValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14160 HRESULT WINAPI IEncoderAPI_SetValue_Proxy(IEncoderAPI *This,const GUID *Api,VARIANT *Value); 14161 void __RPC_STUB IEncoderAPI_SetValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14162 #endif 14163 14164 #ifndef __IVideoEncoder_INTERFACE_DEFINED__ 14165 #define __IVideoEncoder_INTERFACE_DEFINED__ 14166 EXTERN_C const IID IID_IVideoEncoder; 14167 #if defined(__cplusplus) && !defined(CINTERFACE) 14168 struct IVideoEncoder : public IEncoderAPI { 14169 public: 14170 }; 14171 #else 14172 typedef struct IVideoEncoderVtbl { 14173 BEGIN_INTERFACE 14174 HRESULT (WINAPI *QueryInterface)(IVideoEncoder *This,REFIID riid,void **ppvObject); 14175 ULONG (WINAPI *AddRef)(IVideoEncoder *This); 14176 ULONG (WINAPI *Release)(IVideoEncoder *This); 14177 HRESULT (WINAPI *IsSupported)(IVideoEncoder *This,const GUID *Api); 14178 HRESULT (WINAPI *IsAvailable)(IVideoEncoder *This,const GUID *Api); 14179 HRESULT (WINAPI *GetParameterRange)(IVideoEncoder *This,const GUID *Api,VARIANT *ValueMin,VARIANT *ValueMax,VARIANT *SteppingDelta); 14180 HRESULT (WINAPI *GetParameterValues)(IVideoEncoder *This,const GUID *Api,VARIANT **Values,ULONG *ValuesCount); 14181 HRESULT (WINAPI *GetDefaultValue)(IVideoEncoder *This,const GUID *Api,VARIANT *Value); 14182 HRESULT (WINAPI *GetValue)(IVideoEncoder *This,const GUID *Api,VARIANT *Value); 14183 HRESULT (WINAPI *SetValue)(IVideoEncoder *This,const GUID *Api,VARIANT *Value); 14184 END_INTERFACE 14185 } IVideoEncoderVtbl; 14186 struct IVideoEncoder { 14187 CONST_VTBL struct IVideoEncoderVtbl *lpVtbl; 14188 }; 14189 #ifdef COBJMACROS 14190 #define IVideoEncoder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 14191 #define IVideoEncoder_AddRef(This) (This)->lpVtbl->AddRef(This) 14192 #define IVideoEncoder_Release(This) (This)->lpVtbl->Release(This) 14193 #define IVideoEncoder_IsSupported(This,Api) (This)->lpVtbl->IsSupported(This,Api) 14194 #define IVideoEncoder_IsAvailable(This,Api) (This)->lpVtbl->IsAvailable(This,Api) 14195 #define IVideoEncoder_GetParameterRange(This,Api,ValueMin,ValueMax,SteppingDelta) (This)->lpVtbl->GetParameterRange(This,Api,ValueMin,ValueMax,SteppingDelta) 14196 #define IVideoEncoder_GetParameterValues(This,Api,Values,ValuesCount) (This)->lpVtbl->GetParameterValues(This,Api,Values,ValuesCount) 14197 #define IVideoEncoder_GetDefaultValue(This,Api,Value) (This)->lpVtbl->GetDefaultValue(This,Api,Value) 14198 #define IVideoEncoder_GetValue(This,Api,Value) (This)->lpVtbl->GetValue(This,Api,Value) 14199 #define IVideoEncoder_SetValue(This,Api,Value) (This)->lpVtbl->SetValue(This,Api,Value) 14200 #endif 14201 #endif 14202 #endif 14203 14204 #ifndef __ENCODER_API_DEFINES__ 14205 #define __ENCODER_API_DEFINES__ 14206 typedef enum __MIDL___MIDL_itf_strmif_0374_0001 { 14207 ConstantBitRate = 0, 14208 VariableBitRateAverage,VariableBitRatePeak 14209 } VIDEOENCODER_BITRATE_MODE; 14210 #endif 14211 #define AM_GETDECODERCAP_QUERY_VMR_SUPPORT 0x00000001 14212 #define VMR_NOTSUPPORTED 0x00000000 14213 #define VMR_SUPPORTED 0x00000001 14214 #define AM_QUERY_DECODER_VMR_SUPPORT 0x00000001 14215 #define AM_QUERY_DECODER_DXVA_1_SUPPORT 0x00000002 14216 #define AM_QUERY_DECODER_DVD_SUPPORT 0x00000003 14217 #define AM_QUERY_DECODER_ATSC_SD_SUPPORT 0x00000004 14218 #define AM_QUERY_DECODER_ATSC_HD_SUPPORT 0x00000005 14219 #define AM_GETDECODERCAP_QUERY_VMR9_SUPPORT 0x00000006 14220 #define DECODER_CAP_NOTSUPPORTED 0x00000000 14221 #define DECODER_CAP_SUPPORTED 0x00000001 14222 14223 extern RPC_IF_HANDLE __MIDL_itf_strmif_0374_v0_0_c_ifspec; 14224 extern RPC_IF_HANDLE __MIDL_itf_strmif_0374_v0_0_s_ifspec; 14225 #ifndef __IAMDecoderCaps_INTERFACE_DEFINED__ 14226 #define __IAMDecoderCaps_INTERFACE_DEFINED__ 14227 EXTERN_C const IID IID_IAMDecoderCaps; 14228 #if defined(__cplusplus) && !defined(CINTERFACE) 14229 struct IAMDecoderCaps : public IUnknown { 14230 public: 14231 virtual HRESULT WINAPI GetDecoderCaps(DWORD dwCapIndex,DWORD *lpdwCap) = 0; 14232 }; 14233 #else 14234 typedef struct IAMDecoderCapsVtbl { 14235 BEGIN_INTERFACE 14236 HRESULT (WINAPI *QueryInterface)(IAMDecoderCaps *This,REFIID riid,void **ppvObject); 14237 ULONG (WINAPI *AddRef)(IAMDecoderCaps *This); 14238 ULONG (WINAPI *Release)(IAMDecoderCaps *This); 14239 HRESULT (WINAPI *GetDecoderCaps)(IAMDecoderCaps *This,DWORD dwCapIndex,DWORD *lpdwCap); 14240 END_INTERFACE 14241 } IAMDecoderCapsVtbl; 14242 struct IAMDecoderCaps { 14243 CONST_VTBL struct IAMDecoderCapsVtbl *lpVtbl; 14244 }; 14245 #ifdef COBJMACROS 14246 #define IAMDecoderCaps_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 14247 #define IAMDecoderCaps_AddRef(This) (This)->lpVtbl->AddRef(This) 14248 #define IAMDecoderCaps_Release(This) (This)->lpVtbl->Release(This) 14249 #define IAMDecoderCaps_GetDecoderCaps(This,dwCapIndex,lpdwCap) (This)->lpVtbl->GetDecoderCaps(This,dwCapIndex,lpdwCap) 14250 #endif 14251 #endif 14252 HRESULT WINAPI IAMDecoderCaps_GetDecoderCaps_Proxy(IAMDecoderCaps *This,DWORD dwCapIndex,DWORD *lpdwCap); 14253 void __RPC_STUB IAMDecoderCaps_GetDecoderCaps_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14254 #endif 14255 14256 #ifdef MINGW_HAS_DDRAW_H 14257 #include <ddraw.h> 14258 #else 14259 typedef void *IDirectDraw; 14260 typedef void *IDirectDrawSurface; 14261 typedef void *LPDIRECTDRAWSURFACE7; 14262 typedef void *LPDIRECTDRAW7; 14263 typedef void *LPDDPIXELFORMAT; 14264 typedef struct DDCOLORKEY { 14265 DWORD dw1; 14266 DWORD dw2; 14267 } DDCOLORKEY; 14268 typedef DDCOLORKEY *LPDDCOLORKEY; 14269 #endif 14270 14271 typedef enum tagDVD_DOMAIN { 14272 DVD_DOMAIN_FirstPlay = 1, 14273 DVD_DOMAIN_VideoManagerMenu,DVD_DOMAIN_VideoTitleSetMenu,DVD_DOMAIN_Title, 14274 DVD_DOMAIN_Stop 14275 } DVD_DOMAIN; 14276 14277 typedef enum tagDVD_MENU_ID { 14278 DVD_MENU_Title = 2,DVD_MENU_Root = 3,DVD_MENU_Subpicture = 4,DVD_MENU_Audio = 5, 14279 DVD_MENU_Angle = 6,DVD_MENU_Chapter = 7 14280 } DVD_MENU_ID; 14281 14282 typedef enum tagDVD_DISC_SIDE { 14283 DVD_SIDE_A = 1,DVD_SIDE_B = 2 14284 } DVD_DISC_SIDE; 14285 14286 typedef enum tagDVD_PREFERRED_DISPLAY_MODE { 14287 DISPLAY_CONTENT_DEFAULT = 0,DISPLAY_16x9 = 1,DISPLAY_4x3_PANSCAN_PREFERRED = 2,DISPLAY_4x3_LETTERBOX_PREFERRED = 3 14288 } DVD_PREFERRED_DISPLAY_MODE; 14289 14290 typedef WORD DVD_REGISTER; 14291 typedef DVD_REGISTER GPRMARRAY[16]; 14292 typedef DVD_REGISTER SPRMARRAY[24]; 14293 14294 typedef struct tagDVD_ATR { 14295 ULONG ulCAT; 14296 BYTE pbATRI[768]; 14297 } DVD_ATR; 14298 14299 typedef BYTE DVD_VideoATR[2]; 14300 typedef BYTE DVD_AudioATR[8]; 14301 typedef BYTE DVD_SubpictureATR[6]; 14302 14303 typedef enum tagDVD_FRAMERATE { 14304 DVD_FPS_25 = 1,DVD_FPS_30NonDrop = 3 14305 } DVD_FRAMERATE; 14306 14307 typedef struct tagDVD_TIMECODE { 14308 ULONG Hours1 :4; 14309 ULONG Hours10 :4; 14310 ULONG Minutes1 :4; 14311 ULONG Minutes10:4; 14312 ULONG Seconds1 :4; 14313 ULONG Seconds10:4; 14314 ULONG Frames1 :4; 14315 ULONG Frames10 :2; 14316 ULONG FrameRateCode: 2; 14317 } DVD_TIMECODE; 14318 14319 typedef enum tagDVD_TIMECODE_FLAGS { 14320 DVD_TC_FLAG_25fps = 0x1,DVD_TC_FLAG_30fps = 0x2,DVD_TC_FLAG_DropFrame = 0x4,DVD_TC_FLAG_Interpolated = 0x8 14321 } DVD_TIMECODE_FLAGS; 14322 14323 typedef struct tagDVD_HMSF_TIMECODE { 14324 BYTE bHours; 14325 BYTE bMinutes; 14326 BYTE bSeconds; 14327 BYTE bFrames; 14328 } DVD_HMSF_TIMECODE; 14329 14330 typedef struct tagDVD_PLAYBACK_LOCATION2 { 14331 ULONG TitleNum; 14332 ULONG ChapterNum; 14333 DVD_HMSF_TIMECODE TimeCode; 14334 ULONG TimeCodeFlags; 14335 } DVD_PLAYBACK_LOCATION2; 14336 14337 typedef struct tagDVD_PLAYBACK_LOCATION { 14338 ULONG TitleNum; 14339 ULONG ChapterNum; 14340 ULONG TimeCode; 14341 } DVD_PLAYBACK_LOCATION; 14342 14343 typedef DWORD VALID_UOP_SOMTHING_OR_OTHER; 14344 14345 typedef enum __MIDL___MIDL_itf_strmif_0376_0001 { 14346 UOP_FLAG_Play_Title_Or_AtTime = 0x1,UOP_FLAG_Play_Chapter = 0x2,UOP_FLAG_Play_Title = 0x4,UOP_FLAG_Stop = 0x8,UOP_FLAG_ReturnFromSubMenu = 0x10, 14347 UOP_FLAG_Play_Chapter_Or_AtTime = 0x20,UOP_FLAG_PlayPrev_Or_Replay_Chapter = 0x40,UOP_FLAG_PlayNext_Chapter = 0x80,UOP_FLAG_Play_Forwards = 0x100, 14348 UOP_FLAG_Play_Backwards = 0x200,UOP_FLAG_ShowMenu_Title = 0x400,UOP_FLAG_ShowMenu_Root = 0x800,UOP_FLAG_ShowMenu_SubPic = 0x1000, 14349 UOP_FLAG_ShowMenu_Audio = 0x2000,UOP_FLAG_ShowMenu_Angle = 0x4000,UOP_FLAG_ShowMenu_Chapter = 0x8000,UOP_FLAG_Resume = 0x10000, 14350 UOP_FLAG_Select_Or_Activate_Button = 0x20000,UOP_FLAG_Still_Off = 0x40000,UOP_FLAG_Pause_On = 0x80000,UOP_FLAG_Select_Audio_Stream = 0x100000, 14351 UOP_FLAG_Select_SubPic_Stream = 0x200000,UOP_FLAG_Select_Angle = 0x400000,UOP_FLAG_Select_Karaoke_Audio_Presentation_Mode = 0x800000, 14352 UOP_FLAG_Select_Video_Mode_Preference = 0x1000000 14353 } VALID_UOP_FLAG; 14354 14355 typedef enum __MIDL___MIDL_itf_strmif_0376_0002 { 14356 DVD_CMD_FLAG_None = 0,DVD_CMD_FLAG_Flush = 0x1,DVD_CMD_FLAG_SendEvents = 0x2,DVD_CMD_FLAG_Block = 0x4,DVD_CMD_FLAG_StartWhenRendered = 0x8, 14357 DVD_CMD_FLAG_EndAfterRendered = 0x10 14358 } DVD_CMD_FLAGS; 14359 14360 typedef enum __MIDL___MIDL_itf_strmif_0376_0003 { 14361 DVD_ResetOnStop = 1,DVD_NotifyParentalLevelChange = 2,DVD_HMSF_TimeCodeEvents = 3,DVD_AudioDuringFFwdRew = 4 14362 } DVD_OPTION_FLAG; 14363 14364 typedef enum __MIDL___MIDL_itf_strmif_0376_0004 { 14365 DVD_Relative_Upper = 1,DVD_Relative_Lower = 2,DVD_Relative_Left = 3,DVD_Relative_Right = 4 14366 } DVD_RELATIVE_BUTTON; 14367 14368 typedef enum tagDVD_PARENTAL_LEVEL { 14369 DVD_PARENTAL_LEVEL_8 = 0x8000,DVD_PARENTAL_LEVEL_7 = 0x4000,DVD_PARENTAL_LEVEL_6 = 0x2000,DVD_PARENTAL_LEVEL_5 = 0x1000, 14370 DVD_PARENTAL_LEVEL_4 = 0x800,DVD_PARENTAL_LEVEL_3 = 0x400,DVD_PARENTAL_LEVEL_2 = 0x200,DVD_PARENTAL_LEVEL_1 = 0x100 14371 } DVD_PARENTAL_LEVEL; 14372 14373 typedef enum tagDVD_AUDIO_LANG_EXT { 14374 DVD_AUD_EXT_NotSpecified = 0,DVD_AUD_EXT_Captions = 1,DVD_AUD_EXT_VisuallyImpaired = 2,DVD_AUD_EXT_DirectorComments1 = 3, 14375 DVD_AUD_EXT_DirectorComments2 = 4 14376 } DVD_AUDIO_LANG_EXT; 14377 14378 typedef enum tagDVD_SUBPICTURE_LANG_EXT { 14379 DVD_SP_EXT_NotSpecified = 0,DVD_SP_EXT_Caption_Normal = 1,DVD_SP_EXT_Caption_Big = 2,DVD_SP_EXT_Caption_Children = 3,DVD_SP_EXT_CC_Normal = 5, 14380 DVD_SP_EXT_CC_Big = 6,DVD_SP_EXT_CC_Children = 7,DVD_SP_EXT_Forced = 9,DVD_SP_EXT_DirectorComments_Normal = 13,DVD_SP_EXT_DirectorComments_Big = 14, 14381 DVD_SP_EXT_DirectorComments_Children = 15 14382 } DVD_SUBPICTURE_LANG_EXT; 14383 14384 typedef enum tagDVD_AUDIO_APPMODE { 14385 DVD_AudioMode_None = 0,DVD_AudioMode_Karaoke = 1,DVD_AudioMode_Surround = 2,DVD_AudioMode_Other = 3 14386 } DVD_AUDIO_APPMODE; 14387 14388 typedef enum tagDVD_AUDIO_FORMAT { 14389 DVD_AudioFormat_AC3 = 0,DVD_AudioFormat_MPEG1 = 1,DVD_AudioFormat_MPEG1_DRC = 2,DVD_AudioFormat_MPEG2 = 3,DVD_AudioFormat_MPEG2_DRC = 4, 14390 DVD_AudioFormat_LPCM = 5,DVD_AudioFormat_DTS = 6,DVD_AudioFormat_SDDS = 7,DVD_AudioFormat_Other = 8 14391 } DVD_AUDIO_FORMAT; 14392 14393 typedef enum tagDVD_KARAOKE_DOWNMIX { 14394 DVD_Mix_0to0 = 0x1,DVD_Mix_1to0 = 0x2,DVD_Mix_2to0 = 0x4,DVD_Mix_3to0 = 0x8,DVD_Mix_4to0 = 0x10,DVD_Mix_Lto0 = 0x20,DVD_Mix_Rto0 = 0x40, 14395 DVD_Mix_0to1 = 0x100,DVD_Mix_1to1 = 0x200,DVD_Mix_2to1 = 0x400,DVD_Mix_3to1 = 0x800,DVD_Mix_4to1 = 0x1000,DVD_Mix_Lto1 = 0x2000, 14396 DVD_Mix_Rto1 = 0x4000 14397 } DVD_KARAOKE_DOWNMIX; 14398 14399 typedef struct tagDVD_AudioAttributes { 14400 DVD_AUDIO_APPMODE AppMode; 14401 BYTE AppModeData; 14402 DVD_AUDIO_FORMAT AudioFormat; 14403 LCID Language; 14404 DVD_AUDIO_LANG_EXT LanguageExtension; 14405 WINBOOL fHasMultichannelInfo; 14406 DWORD dwFrequency; 14407 BYTE bQuantization; 14408 BYTE bNumberOfChannels; 14409 DWORD dwReserved[2]; 14410 } DVD_AudioAttributes; 14411 14412 typedef struct tagDVD_MUA_MixingInfo { 14413 WINBOOL fMixTo0; 14414 WINBOOL fMixTo1; 14415 WINBOOL fMix0InPhase; 14416 WINBOOL fMix1InPhase; 14417 DWORD dwSpeakerPosition; 14418 } DVD_MUA_MixingInfo; 14419 14420 typedef struct tagDVD_MUA_Coeff { 14421 double log2_alpha; 14422 double log2_beta; 14423 } DVD_MUA_Coeff; 14424 14425 typedef struct tagDVD_MultichannelAudioAttributes { 14426 DVD_MUA_MixingInfo Info[8]; 14427 DVD_MUA_Coeff Coeff[8]; 14428 } DVD_MultichannelAudioAttributes; 14429 14430 typedef enum tagDVD_KARAOKE_CONTENTS { 14431 DVD_Karaoke_GuideVocal1 = 0x1,DVD_Karaoke_GuideVocal2 = 0x2,DVD_Karaoke_GuideMelody1 = 0x4,DVD_Karaoke_GuideMelody2 = 0x8, 14432 DVD_Karaoke_GuideMelodyA = 0x10,DVD_Karaoke_GuideMelodyB = 0x20,DVD_Karaoke_SoundEffectA = 0x40,DVD_Karaoke_SoundEffectB = 0x80 14433 } DVD_KARAOKE_CONTENTS; 14434 14435 typedef enum tagDVD_KARAOKE_ASSIGNMENT { 14436 DVD_Assignment_reserved0 = 0,DVD_Assignment_reserved1 = 1,DVD_Assignment_LR = 2,DVD_Assignment_LRM = 3,DVD_Assignment_LR1 = 4, 14437 DVD_Assignment_LRM1 = 5,DVD_Assignment_LR12 = 6,DVD_Assignment_LRM12 = 7 14438 } DVD_KARAOKE_ASSIGNMENT; 14439 14440 typedef struct tagDVD_KaraokeAttributes { 14441 BYTE bVersion; 14442 WINBOOL fMasterOfCeremoniesInGuideVocal1; 14443 WINBOOL fDuet; 14444 DVD_KARAOKE_ASSIGNMENT ChannelAssignment; 14445 WORD wChannelContents[8]; 14446 } DVD_KaraokeAttributes; 14447 14448 typedef enum tagDVD_VIDEO_COMPRESSION { 14449 DVD_VideoCompression_Other = 0,DVD_VideoCompression_MPEG1 = 1,DVD_VideoCompression_MPEG2 = 2 14450 } DVD_VIDEO_COMPRESSION; 14451 14452 typedef struct tagDVD_VideoAttributes { 14453 WINBOOL fPanscanPermitted; 14454 WINBOOL fLetterboxPermitted; 14455 ULONG ulAspectX; 14456 ULONG ulAspectY; 14457 ULONG ulFrameRate; 14458 ULONG ulFrameHeight; 14459 DVD_VIDEO_COMPRESSION Compression; 14460 WINBOOL fLine21Field1InGOP; 14461 WINBOOL fLine21Field2InGOP; 14462 ULONG ulSourceResolutionX; 14463 ULONG ulSourceResolutionY; 14464 WINBOOL fIsSourceLetterboxed; 14465 WINBOOL fIsFilmMode; 14466 } DVD_VideoAttributes; 14467 14468 typedef enum tagDVD_SUBPICTURE_TYPE { 14469 DVD_SPType_NotSpecified = 0,DVD_SPType_Language = 1,DVD_SPType_Other = 2 14470 } DVD_SUBPICTURE_TYPE; 14471 14472 typedef enum tagDVD_SUBPICTURE_CODING { 14473 DVD_SPCoding_RunLength = 0,DVD_SPCoding_Extended = 1,DVD_SPCoding_Other = 2 14474 } DVD_SUBPICTURE_CODING; 14475 14476 typedef struct tagDVD_SubpictureAttributes { 14477 DVD_SUBPICTURE_TYPE Type; 14478 DVD_SUBPICTURE_CODING CodingMode; 14479 LCID Language; 14480 DVD_SUBPICTURE_LANG_EXT LanguageExtension; 14481 } DVD_SubpictureAttributes; 14482 14483 typedef enum tagDVD_TITLE_APPMODE { 14484 DVD_AppMode_Not_Specified = 0,DVD_AppMode_Karaoke = 1,DVD_AppMode_Other = 3 14485 } DVD_TITLE_APPMODE; 14486 14487 typedef struct tagDVD_TitleMainAttributes { 14488 DVD_TITLE_APPMODE AppMode; 14489 DVD_VideoAttributes VideoAttributes; 14490 ULONG ulNumberOfAudioStreams; 14491 DVD_AudioAttributes AudioAttributes[8]; 14492 DVD_MultichannelAudioAttributes MultichannelAudioAttributes[8]; 14493 ULONG ulNumberOfSubpictureStreams; 14494 DVD_SubpictureAttributes SubpictureAttributes[32]; 14495 } DVD_TitleAttributes; 14496 14497 typedef struct tagDVD_MenuAttributes { 14498 WINBOOL fCompatibleRegion[8]; 14499 DVD_VideoAttributes VideoAttributes; 14500 WINBOOL fAudioPresent; 14501 DVD_AudioAttributes AudioAttributes; 14502 WINBOOL fSubpicturePresent; 14503 DVD_SubpictureAttributes SubpictureAttributes; 14504 } DVD_MenuAttributes; 14505 14506 extern RPC_IF_HANDLE __MIDL_itf_strmif_0376_v0_0_c_ifspec; 14507 extern RPC_IF_HANDLE __MIDL_itf_strmif_0376_v0_0_s_ifspec; 14508 #ifndef __IDvdControl_INTERFACE_DEFINED__ 14509 #define __IDvdControl_INTERFACE_DEFINED__ 14510 EXTERN_C const IID IID_IDvdControl; 14511 #if defined(__cplusplus) && !defined(CINTERFACE) 14512 struct IDvdControl : public IUnknown { 14513 public: 14514 virtual HRESULT WINAPI TitlePlay(ULONG ulTitle) = 0; 14515 virtual HRESULT WINAPI ChapterPlay(ULONG ulTitle,ULONG ulChapter) = 0; 14516 virtual HRESULT WINAPI TimePlay(ULONG ulTitle,ULONG bcdTime) = 0; 14517 virtual HRESULT WINAPI StopForResume(void) = 0; 14518 virtual HRESULT WINAPI GoUp(void) = 0; 14519 virtual HRESULT WINAPI TimeSearch(ULONG bcdTime) = 0; 14520 virtual HRESULT WINAPI ChapterSearch(ULONG ulChapter) = 0; 14521 virtual HRESULT WINAPI PrevPGSearch(void) = 0; 14522 virtual HRESULT WINAPI TopPGSearch(void) = 0; 14523 virtual HRESULT WINAPI NextPGSearch(void) = 0; 14524 virtual HRESULT WINAPI ForwardScan(double dwSpeed) = 0; 14525 virtual HRESULT WINAPI BackwardScan(double dwSpeed) = 0; 14526 virtual HRESULT WINAPI MenuCall(DVD_MENU_ID MenuID) = 0; 14527 virtual HRESULT WINAPI Resume(void) = 0; 14528 virtual HRESULT WINAPI UpperButtonSelect(void) = 0; 14529 virtual HRESULT WINAPI LowerButtonSelect(void) = 0; 14530 virtual HRESULT WINAPI LeftButtonSelect(void) = 0; 14531 virtual HRESULT WINAPI RightButtonSelect(void) = 0; 14532 virtual HRESULT WINAPI ButtonActivate(void) = 0; 14533 virtual HRESULT WINAPI ButtonSelectAndActivate(ULONG ulButton) = 0; 14534 virtual HRESULT WINAPI StillOff(void) = 0; 14535 virtual HRESULT WINAPI PauseOn(void) = 0; 14536 virtual HRESULT WINAPI PauseOff(void) = 0; 14537 virtual HRESULT WINAPI MenuLanguageSelect(LCID Language) = 0; 14538 virtual HRESULT WINAPI AudioStreamChange(ULONG ulAudio) = 0; 14539 virtual HRESULT WINAPI SubpictureStreamChange(ULONG ulSubPicture,WINBOOL bDisplay) = 0; 14540 virtual HRESULT WINAPI AngleChange(ULONG ulAngle) = 0; 14541 virtual HRESULT WINAPI ParentalLevelSelect(ULONG ulParentalLevel) = 0; 14542 virtual HRESULT WINAPI ParentalCountrySelect(WORD wCountry) = 0; 14543 virtual HRESULT WINAPI KaraokeAudioPresentationModeChange(ULONG ulMode) = 0; 14544 virtual HRESULT WINAPI VideoModePreferrence(ULONG ulPreferredDisplayMode) = 0; 14545 virtual HRESULT WINAPI SetRoot(LPCWSTR pszPath) = 0; 14546 virtual HRESULT WINAPI MouseActivate(POINT point) = 0; 14547 virtual HRESULT WINAPI MouseSelect(POINT point) = 0; 14548 virtual HRESULT WINAPI ChapterPlayAutoStop(ULONG ulTitle,ULONG ulChapter,ULONG ulChaptersToPlay) = 0; 14549 }; 14550 #else 14551 typedef struct IDvdControlVtbl { 14552 BEGIN_INTERFACE 14553 HRESULT (WINAPI *QueryInterface)(IDvdControl *This,REFIID riid,void **ppvObject); 14554 ULONG (WINAPI *AddRef)(IDvdControl *This); 14555 ULONG (WINAPI *Release)(IDvdControl *This); 14556 HRESULT (WINAPI *TitlePlay)(IDvdControl *This,ULONG ulTitle); 14557 HRESULT (WINAPI *ChapterPlay)(IDvdControl *This,ULONG ulTitle,ULONG ulChapter); 14558 HRESULT (WINAPI *TimePlay)(IDvdControl *This,ULONG ulTitle,ULONG bcdTime); 14559 HRESULT (WINAPI *StopForResume)(IDvdControl *This); 14560 HRESULT (WINAPI *GoUp)(IDvdControl *This); 14561 HRESULT (WINAPI *TimeSearch)(IDvdControl *This,ULONG bcdTime); 14562 HRESULT (WINAPI *ChapterSearch)(IDvdControl *This,ULONG ulChapter); 14563 HRESULT (WINAPI *PrevPGSearch)(IDvdControl *This); 14564 HRESULT (WINAPI *TopPGSearch)(IDvdControl *This); 14565 HRESULT (WINAPI *NextPGSearch)(IDvdControl *This); 14566 HRESULT (WINAPI *ForwardScan)(IDvdControl *This,double dwSpeed); 14567 HRESULT (WINAPI *BackwardScan)(IDvdControl *This,double dwSpeed); 14568 HRESULT (WINAPI *MenuCall)(IDvdControl *This,DVD_MENU_ID MenuID); 14569 HRESULT (WINAPI *Resume)(IDvdControl *This); 14570 HRESULT (WINAPI *UpperButtonSelect)(IDvdControl *This); 14571 HRESULT (WINAPI *LowerButtonSelect)(IDvdControl *This); 14572 HRESULT (WINAPI *LeftButtonSelect)(IDvdControl *This); 14573 HRESULT (WINAPI *RightButtonSelect)(IDvdControl *This); 14574 HRESULT (WINAPI *ButtonActivate)(IDvdControl *This); 14575 HRESULT (WINAPI *ButtonSelectAndActivate)(IDvdControl *This,ULONG ulButton); 14576 HRESULT (WINAPI *StillOff)(IDvdControl *This); 14577 HRESULT (WINAPI *PauseOn)(IDvdControl *This); 14578 HRESULT (WINAPI *PauseOff)(IDvdControl *This); 14579 HRESULT (WINAPI *MenuLanguageSelect)(IDvdControl *This,LCID Language); 14580 HRESULT (WINAPI *AudioStreamChange)(IDvdControl *This,ULONG ulAudio); 14581 HRESULT (WINAPI *SubpictureStreamChange)(IDvdControl *This,ULONG ulSubPicture,WINBOOL bDisplay); 14582 HRESULT (WINAPI *AngleChange)(IDvdControl *This,ULONG ulAngle); 14583 HRESULT (WINAPI *ParentalLevelSelect)(IDvdControl *This,ULONG ulParentalLevel); 14584 HRESULT (WINAPI *ParentalCountrySelect)(IDvdControl *This,WORD wCountry); 14585 HRESULT (WINAPI *KaraokeAudioPresentationModeChange)(IDvdControl *This,ULONG ulMode); 14586 HRESULT (WINAPI *VideoModePreferrence)(IDvdControl *This,ULONG ulPreferredDisplayMode); 14587 HRESULT (WINAPI *SetRoot)(IDvdControl *This,LPCWSTR pszPath); 14588 HRESULT (WINAPI *MouseActivate)(IDvdControl *This,POINT point); 14589 HRESULT (WINAPI *MouseSelect)(IDvdControl *This,POINT point); 14590 HRESULT (WINAPI *ChapterPlayAutoStop)(IDvdControl *This,ULONG ulTitle,ULONG ulChapter,ULONG ulChaptersToPlay); 14591 END_INTERFACE 14592 } IDvdControlVtbl; 14593 struct IDvdControl { 14594 CONST_VTBL struct IDvdControlVtbl *lpVtbl; 14595 }; 14596 #ifdef COBJMACROS 14597 #define IDvdControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 14598 #define IDvdControl_AddRef(This) (This)->lpVtbl->AddRef(This) 14599 #define IDvdControl_Release(This) (This)->lpVtbl->Release(This) 14600 #define IDvdControl_TitlePlay(This,ulTitle) (This)->lpVtbl->TitlePlay(This,ulTitle) 14601 #define IDvdControl_ChapterPlay(This,ulTitle,ulChapter) (This)->lpVtbl->ChapterPlay(This,ulTitle,ulChapter) 14602 #define IDvdControl_TimePlay(This,ulTitle,bcdTime) (This)->lpVtbl->TimePlay(This,ulTitle,bcdTime) 14603 #define IDvdControl_StopForResume(This) (This)->lpVtbl->StopForResume(This) 14604 #define IDvdControl_GoUp(This) (This)->lpVtbl->GoUp(This) 14605 #define IDvdControl_TimeSearch(This,bcdTime) (This)->lpVtbl->TimeSearch(This,bcdTime) 14606 #define IDvdControl_ChapterSearch(This,ulChapter) (This)->lpVtbl->ChapterSearch(This,ulChapter) 14607 #define IDvdControl_PrevPGSearch(This) (This)->lpVtbl->PrevPGSearch(This) 14608 #define IDvdControl_TopPGSearch(This) (This)->lpVtbl->TopPGSearch(This) 14609 #define IDvdControl_NextPGSearch(This) (This)->lpVtbl->NextPGSearch(This) 14610 #define IDvdControl_ForwardScan(This,dwSpeed) (This)->lpVtbl->ForwardScan(This,dwSpeed) 14611 #define IDvdControl_BackwardScan(This,dwSpeed) (This)->lpVtbl->BackwardScan(This,dwSpeed) 14612 #define IDvdControl_MenuCall(This,MenuID) (This)->lpVtbl->MenuCall(This,MenuID) 14613 #define IDvdControl_Resume(This) (This)->lpVtbl->Resume(This) 14614 #define IDvdControl_UpperButtonSelect(This) (This)->lpVtbl->UpperButtonSelect(This) 14615 #define IDvdControl_LowerButtonSelect(This) (This)->lpVtbl->LowerButtonSelect(This) 14616 #define IDvdControl_LeftButtonSelect(This) (This)->lpVtbl->LeftButtonSelect(This) 14617 #define IDvdControl_RightButtonSelect(This) (This)->lpVtbl->RightButtonSelect(This) 14618 #define IDvdControl_ButtonActivate(This) (This)->lpVtbl->ButtonActivate(This) 14619 #define IDvdControl_ButtonSelectAndActivate(This,ulButton) (This)->lpVtbl->ButtonSelectAndActivate(This,ulButton) 14620 #define IDvdControl_StillOff(This) (This)->lpVtbl->StillOff(This) 14621 #define IDvdControl_PauseOn(This) (This)->lpVtbl->PauseOn(This) 14622 #define IDvdControl_PauseOff(This) (This)->lpVtbl->PauseOff(This) 14623 #define IDvdControl_MenuLanguageSelect(This,Language) (This)->lpVtbl->MenuLanguageSelect(This,Language) 14624 #define IDvdControl_AudioStreamChange(This,ulAudio) (This)->lpVtbl->AudioStreamChange(This,ulAudio) 14625 #define IDvdControl_SubpictureStreamChange(This,ulSubPicture,bDisplay) (This)->lpVtbl->SubpictureStreamChange(This,ulSubPicture,bDisplay) 14626 #define IDvdControl_AngleChange(This,ulAngle) (This)->lpVtbl->AngleChange(This,ulAngle) 14627 #define IDvdControl_ParentalLevelSelect(This,ulParentalLevel) (This)->lpVtbl->ParentalLevelSelect(This,ulParentalLevel) 14628 #define IDvdControl_ParentalCountrySelect(This,wCountry) (This)->lpVtbl->ParentalCountrySelect(This,wCountry) 14629 #define IDvdControl_KaraokeAudioPresentationModeChange(This,ulMode) (This)->lpVtbl->KaraokeAudioPresentationModeChange(This,ulMode) 14630 #define IDvdControl_VideoModePreferrence(This,ulPreferredDisplayMode) (This)->lpVtbl->VideoModePreferrence(This,ulPreferredDisplayMode) 14631 #define IDvdControl_SetRoot(This,pszPath) (This)->lpVtbl->SetRoot(This,pszPath) 14632 #define IDvdControl_MouseActivate(This,point) (This)->lpVtbl->MouseActivate(This,point) 14633 #define IDvdControl_MouseSelect(This,point) (This)->lpVtbl->MouseSelect(This,point) 14634 #define IDvdControl_ChapterPlayAutoStop(This,ulTitle,ulChapter,ulChaptersToPlay) (This)->lpVtbl->ChapterPlayAutoStop(This,ulTitle,ulChapter,ulChaptersToPlay) 14635 #endif 14636 #endif 14637 HRESULT WINAPI IDvdControl_TitlePlay_Proxy(IDvdControl *This,ULONG ulTitle); 14638 void __RPC_STUB IDvdControl_TitlePlay_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14639 HRESULT WINAPI IDvdControl_ChapterPlay_Proxy(IDvdControl *This,ULONG ulTitle,ULONG ulChapter); 14640 void __RPC_STUB IDvdControl_ChapterPlay_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14641 HRESULT WINAPI IDvdControl_TimePlay_Proxy(IDvdControl *This,ULONG ulTitle,ULONG bcdTime); 14642 void __RPC_STUB IDvdControl_TimePlay_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14643 HRESULT WINAPI IDvdControl_StopForResume_Proxy(IDvdControl *This); 14644 void __RPC_STUB IDvdControl_StopForResume_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14645 HRESULT WINAPI IDvdControl_GoUp_Proxy(IDvdControl *This); 14646 void __RPC_STUB IDvdControl_GoUp_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14647 HRESULT WINAPI IDvdControl_TimeSearch_Proxy(IDvdControl *This,ULONG bcdTime); 14648 void __RPC_STUB IDvdControl_TimeSearch_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14649 HRESULT WINAPI IDvdControl_ChapterSearch_Proxy(IDvdControl *This,ULONG ulChapter); 14650 void __RPC_STUB IDvdControl_ChapterSearch_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14651 HRESULT WINAPI IDvdControl_PrevPGSearch_Proxy(IDvdControl *This); 14652 void __RPC_STUB IDvdControl_PrevPGSearch_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14653 HRESULT WINAPI IDvdControl_TopPGSearch_Proxy(IDvdControl *This); 14654 void __RPC_STUB IDvdControl_TopPGSearch_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14655 HRESULT WINAPI IDvdControl_NextPGSearch_Proxy(IDvdControl *This); 14656 void __RPC_STUB IDvdControl_NextPGSearch_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14657 HRESULT WINAPI IDvdControl_ForwardScan_Proxy(IDvdControl *This,double dwSpeed); 14658 void __RPC_STUB IDvdControl_ForwardScan_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14659 HRESULT WINAPI IDvdControl_BackwardScan_Proxy(IDvdControl *This,double dwSpeed); 14660 void __RPC_STUB IDvdControl_BackwardScan_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14661 HRESULT WINAPI IDvdControl_MenuCall_Proxy(IDvdControl *This,DVD_MENU_ID MenuID); 14662 void __RPC_STUB IDvdControl_MenuCall_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14663 HRESULT WINAPI IDvdControl_Resume_Proxy(IDvdControl *This); 14664 void __RPC_STUB IDvdControl_Resume_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14665 HRESULT WINAPI IDvdControl_UpperButtonSelect_Proxy(IDvdControl *This); 14666 void __RPC_STUB IDvdControl_UpperButtonSelect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14667 HRESULT WINAPI IDvdControl_LowerButtonSelect_Proxy(IDvdControl *This); 14668 void __RPC_STUB IDvdControl_LowerButtonSelect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14669 HRESULT WINAPI IDvdControl_LeftButtonSelect_Proxy(IDvdControl *This); 14670 void __RPC_STUB IDvdControl_LeftButtonSelect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14671 HRESULT WINAPI IDvdControl_RightButtonSelect_Proxy(IDvdControl *This); 14672 void __RPC_STUB IDvdControl_RightButtonSelect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14673 HRESULT WINAPI IDvdControl_ButtonActivate_Proxy(IDvdControl *This); 14674 void __RPC_STUB IDvdControl_ButtonActivate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14675 HRESULT WINAPI IDvdControl_ButtonSelectAndActivate_Proxy(IDvdControl *This,ULONG ulButton); 14676 void __RPC_STUB IDvdControl_ButtonSelectAndActivate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14677 HRESULT WINAPI IDvdControl_StillOff_Proxy(IDvdControl *This); 14678 void __RPC_STUB IDvdControl_StillOff_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14679 HRESULT WINAPI IDvdControl_PauseOn_Proxy(IDvdControl *This); 14680 void __RPC_STUB IDvdControl_PauseOn_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14681 HRESULT WINAPI IDvdControl_PauseOff_Proxy(IDvdControl *This); 14682 void __RPC_STUB IDvdControl_PauseOff_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14683 HRESULT WINAPI IDvdControl_MenuLanguageSelect_Proxy(IDvdControl *This,LCID Language); 14684 void __RPC_STUB IDvdControl_MenuLanguageSelect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14685 HRESULT WINAPI IDvdControl_AudioStreamChange_Proxy(IDvdControl *This,ULONG ulAudio); 14686 void __RPC_STUB IDvdControl_AudioStreamChange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14687 HRESULT WINAPI IDvdControl_SubpictureStreamChange_Proxy(IDvdControl *This,ULONG ulSubPicture,WINBOOL bDisplay); 14688 void __RPC_STUB IDvdControl_SubpictureStreamChange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14689 HRESULT WINAPI IDvdControl_AngleChange_Proxy(IDvdControl *This,ULONG ulAngle); 14690 void __RPC_STUB IDvdControl_AngleChange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14691 HRESULT WINAPI IDvdControl_ParentalLevelSelect_Proxy(IDvdControl *This,ULONG ulParentalLevel); 14692 void __RPC_STUB IDvdControl_ParentalLevelSelect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14693 HRESULT WINAPI IDvdControl_ParentalCountrySelect_Proxy(IDvdControl *This,WORD wCountry); 14694 void __RPC_STUB IDvdControl_ParentalCountrySelect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14695 HRESULT WINAPI IDvdControl_KaraokeAudioPresentationModeChange_Proxy(IDvdControl *This,ULONG ulMode); 14696 void __RPC_STUB IDvdControl_KaraokeAudioPresentationModeChange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14697 HRESULT WINAPI IDvdControl_VideoModePreferrence_Proxy(IDvdControl *This,ULONG ulPreferredDisplayMode); 14698 void __RPC_STUB IDvdControl_VideoModePreferrence_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14699 HRESULT WINAPI IDvdControl_SetRoot_Proxy(IDvdControl *This,LPCWSTR pszPath); 14700 void __RPC_STUB IDvdControl_SetRoot_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14701 HRESULT WINAPI IDvdControl_MouseActivate_Proxy(IDvdControl *This,POINT point); 14702 void __RPC_STUB IDvdControl_MouseActivate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14703 HRESULT WINAPI IDvdControl_MouseSelect_Proxy(IDvdControl *This,POINT point); 14704 void __RPC_STUB IDvdControl_MouseSelect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14705 HRESULT WINAPI IDvdControl_ChapterPlayAutoStop_Proxy(IDvdControl *This,ULONG ulTitle,ULONG ulChapter,ULONG ulChaptersToPlay); 14706 void __RPC_STUB IDvdControl_ChapterPlayAutoStop_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14707 #endif 14708 14709 #ifndef __IDvdInfo_INTERFACE_DEFINED__ 14710 #define __IDvdInfo_INTERFACE_DEFINED__ 14711 EXTERN_C const IID IID_IDvdInfo; 14712 #if defined(__cplusplus) && !defined(CINTERFACE) 14713 struct IDvdInfo : public IUnknown { 14714 public: 14715 virtual HRESULT WINAPI GetCurrentDomain(DVD_DOMAIN *pDomain) = 0; 14716 virtual HRESULT WINAPI GetCurrentLocation(DVD_PLAYBACK_LOCATION *pLocation) = 0; 14717 virtual HRESULT WINAPI GetTotalTitleTime(ULONG *pulTotalTime) = 0; 14718 virtual HRESULT WINAPI GetCurrentButton(ULONG *pulButtonsAvailable,ULONG *pulCurrentButton) = 0; 14719 virtual HRESULT WINAPI GetCurrentAngle(ULONG *pulAnglesAvailable,ULONG *pulCurrentAngle) = 0; 14720 virtual HRESULT WINAPI GetCurrentAudio(ULONG *pulStreamsAvailable,ULONG *pulCurrentStream) = 0; 14721 virtual HRESULT WINAPI GetCurrentSubpicture(ULONG *pulStreamsAvailable,ULONG *pulCurrentStream,WINBOOL *pIsDisabled) = 0; 14722 virtual HRESULT WINAPI GetCurrentUOPS(VALID_UOP_SOMTHING_OR_OTHER *pUOP) = 0; 14723 virtual HRESULT WINAPI GetAllSPRMs(SPRMARRAY *pRegisterArray) = 0; 14724 virtual HRESULT WINAPI GetAllGPRMs(GPRMARRAY *pRegisterArray) = 0; 14725 virtual HRESULT WINAPI GetAudioLanguage(ULONG ulStream,LCID *pLanguage) = 0; 14726 virtual HRESULT WINAPI GetSubpictureLanguage(ULONG ulStream,LCID *pLanguage) = 0; 14727 virtual HRESULT WINAPI GetTitleAttributes(ULONG ulTitle,DVD_ATR *pATR) = 0; 14728 virtual HRESULT WINAPI GetVMGAttributes(DVD_ATR *pATR) = 0; 14729 virtual HRESULT WINAPI GetCurrentVideoAttributes(DVD_VideoATR *pATR) = 0; 14730 virtual HRESULT WINAPI GetCurrentAudioAttributes(DVD_AudioATR *pATR) = 0; 14731 virtual HRESULT WINAPI GetCurrentSubpictureAttributes(DVD_SubpictureATR *pATR) = 0; 14732 virtual HRESULT WINAPI GetCurrentVolumeInfo(ULONG *pulNumOfVol,ULONG *pulThisVolNum,DVD_DISC_SIDE *pSide,ULONG *pulNumOfTitles) = 0; 14733 virtual HRESULT WINAPI GetDVDTextInfo(BYTE *pTextManager,ULONG ulBufSize,ULONG *pulActualSize) = 0; 14734 virtual HRESULT WINAPI GetPlayerParentalLevel(ULONG *pulParentalLevel,ULONG *pulCountryCode) = 0; 14735 virtual HRESULT WINAPI GetNumberOfChapters(ULONG ulTitle,ULONG *pulNumberOfChapters) = 0; 14736 virtual HRESULT WINAPI GetTitleParentalLevels(ULONG ulTitle,ULONG *pulParentalLevels) = 0; 14737 virtual HRESULT WINAPI GetRoot(LPSTR pRoot,ULONG ulBufSize,ULONG *pulActualSize) = 0; 14738 }; 14739 #else 14740 typedef struct IDvdInfoVtbl { 14741 BEGIN_INTERFACE 14742 HRESULT (WINAPI *QueryInterface)(IDvdInfo *This,REFIID riid,void **ppvObject); 14743 ULONG (WINAPI *AddRef)(IDvdInfo *This); 14744 ULONG (WINAPI *Release)(IDvdInfo *This); 14745 HRESULT (WINAPI *GetCurrentDomain)(IDvdInfo *This,DVD_DOMAIN *pDomain); 14746 HRESULT (WINAPI *GetCurrentLocation)(IDvdInfo *This,DVD_PLAYBACK_LOCATION *pLocation); 14747 HRESULT (WINAPI *GetTotalTitleTime)(IDvdInfo *This,ULONG *pulTotalTime); 14748 HRESULT (WINAPI *GetCurrentButton)(IDvdInfo *This,ULONG *pulButtonsAvailable,ULONG *pulCurrentButton); 14749 HRESULT (WINAPI *GetCurrentAngle)(IDvdInfo *This,ULONG *pulAnglesAvailable,ULONG *pulCurrentAngle); 14750 HRESULT (WINAPI *GetCurrentAudio)(IDvdInfo *This,ULONG *pulStreamsAvailable,ULONG *pulCurrentStream); 14751 HRESULT (WINAPI *GetCurrentSubpicture)(IDvdInfo *This,ULONG *pulStreamsAvailable,ULONG *pulCurrentStream,WINBOOL *pIsDisabled); 14752 HRESULT (WINAPI *GetCurrentUOPS)(IDvdInfo *This,VALID_UOP_SOMTHING_OR_OTHER *pUOP); 14753 HRESULT (WINAPI *GetAllSPRMs)(IDvdInfo *This,SPRMARRAY *pRegisterArray); 14754 HRESULT (WINAPI *GetAllGPRMs)(IDvdInfo *This,GPRMARRAY *pRegisterArray); 14755 HRESULT (WINAPI *GetAudioLanguage)(IDvdInfo *This,ULONG ulStream,LCID *pLanguage); 14756 HRESULT (WINAPI *GetSubpictureLanguage)(IDvdInfo *This,ULONG ulStream,LCID *pLanguage); 14757 HRESULT (WINAPI *GetTitleAttributes)(IDvdInfo *This,ULONG ulTitle,DVD_ATR *pATR); 14758 HRESULT (WINAPI *GetVMGAttributes)(IDvdInfo *This,DVD_ATR *pATR); 14759 HRESULT (WINAPI *GetCurrentVideoAttributes)(IDvdInfo *This,DVD_VideoATR *pATR); 14760 HRESULT (WINAPI *GetCurrentAudioAttributes)(IDvdInfo *This,DVD_AudioATR *pATR); 14761 HRESULT (WINAPI *GetCurrentSubpictureAttributes)(IDvdInfo *This,DVD_SubpictureATR *pATR); 14762 HRESULT (WINAPI *GetCurrentVolumeInfo)(IDvdInfo *This,ULONG *pulNumOfVol,ULONG *pulThisVolNum,DVD_DISC_SIDE *pSide,ULONG *pulNumOfTitles); 14763 HRESULT (WINAPI *GetDVDTextInfo)(IDvdInfo *This,BYTE *pTextManager,ULONG ulBufSize,ULONG *pulActualSize); 14764 HRESULT (WINAPI *GetPlayerParentalLevel)(IDvdInfo *This,ULONG *pulParentalLevel,ULONG *pulCountryCode); 14765 HRESULT (WINAPI *GetNumberOfChapters)(IDvdInfo *This,ULONG ulTitle,ULONG *pulNumberOfChapters); 14766 HRESULT (WINAPI *GetTitleParentalLevels)(IDvdInfo *This,ULONG ulTitle,ULONG *pulParentalLevels); 14767 HRESULT (WINAPI *GetRoot)(IDvdInfo *This,LPSTR pRoot,ULONG ulBufSize,ULONG *pulActualSize); 14768 END_INTERFACE 14769 } IDvdInfoVtbl; 14770 struct IDvdInfo { 14771 CONST_VTBL struct IDvdInfoVtbl *lpVtbl; 14772 }; 14773 #ifdef COBJMACROS 14774 #define IDvdInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 14775 #define IDvdInfo_AddRef(This) (This)->lpVtbl->AddRef(This) 14776 #define IDvdInfo_Release(This) (This)->lpVtbl->Release(This) 14777 #define IDvdInfo_GetCurrentDomain(This,pDomain) (This)->lpVtbl->GetCurrentDomain(This,pDomain) 14778 #define IDvdInfo_GetCurrentLocation(This,pLocation) (This)->lpVtbl->GetCurrentLocation(This,pLocation) 14779 #define IDvdInfo_GetTotalTitleTime(This,pulTotalTime) (This)->lpVtbl->GetTotalTitleTime(This,pulTotalTime) 14780 #define IDvdInfo_GetCurrentButton(This,pulButtonsAvailable,pulCurrentButton) (This)->lpVtbl->GetCurrentButton(This,pulButtonsAvailable,pulCurrentButton) 14781 #define IDvdInfo_GetCurrentAngle(This,pulAnglesAvailable,pulCurrentAngle) (This)->lpVtbl->GetCurrentAngle(This,pulAnglesAvailable,pulCurrentAngle) 14782 #define IDvdInfo_GetCurrentAudio(This,pulStreamsAvailable,pulCurrentStream) (This)->lpVtbl->GetCurrentAudio(This,pulStreamsAvailable,pulCurrentStream) 14783 #define IDvdInfo_GetCurrentSubpicture(This,pulStreamsAvailable,pulCurrentStream,pIsDisabled) (This)->lpVtbl->GetCurrentSubpicture(This,pulStreamsAvailable,pulCurrentStream,pIsDisabled) 14784 #define IDvdInfo_GetCurrentUOPS(This,pUOP) (This)->lpVtbl->GetCurrentUOPS(This,pUOP) 14785 #define IDvdInfo_GetAllSPRMs(This,pRegisterArray) (This)->lpVtbl->GetAllSPRMs(This,pRegisterArray) 14786 #define IDvdInfo_GetAllGPRMs(This,pRegisterArray) (This)->lpVtbl->GetAllGPRMs(This,pRegisterArray) 14787 #define IDvdInfo_GetAudioLanguage(This,ulStream,pLanguage) (This)->lpVtbl->GetAudioLanguage(This,ulStream,pLanguage) 14788 #define IDvdInfo_GetSubpictureLanguage(This,ulStream,pLanguage) (This)->lpVtbl->GetSubpictureLanguage(This,ulStream,pLanguage) 14789 #define IDvdInfo_GetTitleAttributes(This,ulTitle,pATR) (This)->lpVtbl->GetTitleAttributes(This,ulTitle,pATR) 14790 #define IDvdInfo_GetVMGAttributes(This,pATR) (This)->lpVtbl->GetVMGAttributes(This,pATR) 14791 #define IDvdInfo_GetCurrentVideoAttributes(This,pATR) (This)->lpVtbl->GetCurrentVideoAttributes(This,pATR) 14792 #define IDvdInfo_GetCurrentAudioAttributes(This,pATR) (This)->lpVtbl->GetCurrentAudioAttributes(This,pATR) 14793 #define IDvdInfo_GetCurrentSubpictureAttributes(This,pATR) (This)->lpVtbl->GetCurrentSubpictureAttributes(This,pATR) 14794 #define IDvdInfo_GetCurrentVolumeInfo(This,pulNumOfVol,pulThisVolNum,pSide,pulNumOfTitles) (This)->lpVtbl->GetCurrentVolumeInfo(This,pulNumOfVol,pulThisVolNum,pSide,pulNumOfTitles) 14795 #define IDvdInfo_GetDVDTextInfo(This,pTextManager,ulBufSize,pulActualSize) (This)->lpVtbl->GetDVDTextInfo(This,pTextManager,ulBufSize,pulActualSize) 14796 #define IDvdInfo_GetPlayerParentalLevel(This,pulParentalLevel,pulCountryCode) (This)->lpVtbl->GetPlayerParentalLevel(This,pulParentalLevel,pulCountryCode) 14797 #define IDvdInfo_GetNumberOfChapters(This,ulTitle,pulNumberOfChapters) (This)->lpVtbl->GetNumberOfChapters(This,ulTitle,pulNumberOfChapters) 14798 #define IDvdInfo_GetTitleParentalLevels(This,ulTitle,pulParentalLevels) (This)->lpVtbl->GetTitleParentalLevels(This,ulTitle,pulParentalLevels) 14799 #define IDvdInfo_GetRoot(This,pRoot,ulBufSize,pulActualSize) (This)->lpVtbl->GetRoot(This,pRoot,ulBufSize,pulActualSize) 14800 #endif 14801 #endif 14802 HRESULT WINAPI IDvdInfo_GetCurrentDomain_Proxy(IDvdInfo *This,DVD_DOMAIN *pDomain); 14803 void __RPC_STUB IDvdInfo_GetCurrentDomain_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14804 HRESULT WINAPI IDvdInfo_GetCurrentLocation_Proxy(IDvdInfo *This,DVD_PLAYBACK_LOCATION *pLocation); 14805 void __RPC_STUB IDvdInfo_GetCurrentLocation_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14806 HRESULT WINAPI IDvdInfo_GetTotalTitleTime_Proxy(IDvdInfo *This,ULONG *pulTotalTime); 14807 void __RPC_STUB IDvdInfo_GetTotalTitleTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14808 HRESULT WINAPI IDvdInfo_GetCurrentButton_Proxy(IDvdInfo *This,ULONG *pulButtonsAvailable,ULONG *pulCurrentButton); 14809 void __RPC_STUB IDvdInfo_GetCurrentButton_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14810 HRESULT WINAPI IDvdInfo_GetCurrentAngle_Proxy(IDvdInfo *This,ULONG *pulAnglesAvailable,ULONG *pulCurrentAngle); 14811 void __RPC_STUB IDvdInfo_GetCurrentAngle_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14812 HRESULT WINAPI IDvdInfo_GetCurrentAudio_Proxy(IDvdInfo *This,ULONG *pulStreamsAvailable,ULONG *pulCurrentStream); 14813 void __RPC_STUB IDvdInfo_GetCurrentAudio_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14814 HRESULT WINAPI IDvdInfo_GetCurrentSubpicture_Proxy(IDvdInfo *This,ULONG *pulStreamsAvailable,ULONG *pulCurrentStream,WINBOOL *pIsDisabled); 14815 void __RPC_STUB IDvdInfo_GetCurrentSubpicture_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14816 HRESULT WINAPI IDvdInfo_GetCurrentUOPS_Proxy(IDvdInfo *This,VALID_UOP_SOMTHING_OR_OTHER *pUOP); 14817 void __RPC_STUB IDvdInfo_GetCurrentUOPS_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14818 HRESULT WINAPI IDvdInfo_GetAllSPRMs_Proxy(IDvdInfo *This,SPRMARRAY *pRegisterArray); 14819 void __RPC_STUB IDvdInfo_GetAllSPRMs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14820 HRESULT WINAPI IDvdInfo_GetAllGPRMs_Proxy(IDvdInfo *This,GPRMARRAY *pRegisterArray); 14821 void __RPC_STUB IDvdInfo_GetAllGPRMs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14822 HRESULT WINAPI IDvdInfo_GetAudioLanguage_Proxy(IDvdInfo *This,ULONG ulStream,LCID *pLanguage); 14823 void __RPC_STUB IDvdInfo_GetAudioLanguage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14824 HRESULT WINAPI IDvdInfo_GetSubpictureLanguage_Proxy(IDvdInfo *This,ULONG ulStream,LCID *pLanguage); 14825 void __RPC_STUB IDvdInfo_GetSubpictureLanguage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14826 HRESULT WINAPI IDvdInfo_GetTitleAttributes_Proxy(IDvdInfo *This,ULONG ulTitle,DVD_ATR *pATR); 14827 void __RPC_STUB IDvdInfo_GetTitleAttributes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14828 HRESULT WINAPI IDvdInfo_GetVMGAttributes_Proxy(IDvdInfo *This,DVD_ATR *pATR); 14829 void __RPC_STUB IDvdInfo_GetVMGAttributes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14830 HRESULT WINAPI IDvdInfo_GetCurrentVideoAttributes_Proxy(IDvdInfo *This,DVD_VideoATR *pATR); 14831 void __RPC_STUB IDvdInfo_GetCurrentVideoAttributes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14832 HRESULT WINAPI IDvdInfo_GetCurrentAudioAttributes_Proxy(IDvdInfo *This,DVD_AudioATR *pATR); 14833 void __RPC_STUB IDvdInfo_GetCurrentAudioAttributes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14834 HRESULT WINAPI IDvdInfo_GetCurrentSubpictureAttributes_Proxy(IDvdInfo *This,DVD_SubpictureATR *pATR); 14835 void __RPC_STUB IDvdInfo_GetCurrentSubpictureAttributes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14836 HRESULT WINAPI IDvdInfo_GetCurrentVolumeInfo_Proxy(IDvdInfo *This,ULONG *pulNumOfVol,ULONG *pulThisVolNum,DVD_DISC_SIDE *pSide,ULONG *pulNumOfTitles); 14837 void __RPC_STUB IDvdInfo_GetCurrentVolumeInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14838 HRESULT WINAPI IDvdInfo_GetDVDTextInfo_Proxy(IDvdInfo *This,BYTE *pTextManager,ULONG ulBufSize,ULONG *pulActualSize); 14839 void __RPC_STUB IDvdInfo_GetDVDTextInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14840 HRESULT WINAPI IDvdInfo_GetPlayerParentalLevel_Proxy(IDvdInfo *This,ULONG *pulParentalLevel,ULONG *pulCountryCode); 14841 void __RPC_STUB IDvdInfo_GetPlayerParentalLevel_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14842 HRESULT WINAPI IDvdInfo_GetNumberOfChapters_Proxy(IDvdInfo *This,ULONG ulTitle,ULONG *pulNumberOfChapters); 14843 void __RPC_STUB IDvdInfo_GetNumberOfChapters_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14844 HRESULT WINAPI IDvdInfo_GetTitleParentalLevels_Proxy(IDvdInfo *This,ULONG ulTitle,ULONG *pulParentalLevels); 14845 void __RPC_STUB IDvdInfo_GetTitleParentalLevels_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14846 HRESULT WINAPI IDvdInfo_GetRoot_Proxy(IDvdInfo *This,LPSTR pRoot,ULONG ulBufSize,ULONG *pulActualSize); 14847 void __RPC_STUB IDvdInfo_GetRoot_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14848 #endif 14849 14850 #ifndef __IDvdCmd_INTERFACE_DEFINED__ 14851 #define __IDvdCmd_INTERFACE_DEFINED__ 14852 EXTERN_C const IID IID_IDvdCmd; 14853 #if defined(__cplusplus) && !defined(CINTERFACE) 14854 struct IDvdCmd : public IUnknown { 14855 public: 14856 virtual HRESULT WINAPI WaitForStart(void) = 0; 14857 virtual HRESULT WINAPI WaitForEnd(void) = 0; 14858 }; 14859 #else 14860 typedef struct IDvdCmdVtbl { 14861 BEGIN_INTERFACE 14862 HRESULT (WINAPI *QueryInterface)(IDvdCmd *This,REFIID riid,void **ppvObject); 14863 ULONG (WINAPI *AddRef)(IDvdCmd *This); 14864 ULONG (WINAPI *Release)(IDvdCmd *This); 14865 HRESULT (WINAPI *WaitForStart)(IDvdCmd *This); 14866 HRESULT (WINAPI *WaitForEnd)(IDvdCmd *This); 14867 END_INTERFACE 14868 } IDvdCmdVtbl; 14869 struct IDvdCmd { 14870 CONST_VTBL struct IDvdCmdVtbl *lpVtbl; 14871 }; 14872 #ifdef COBJMACROS 14873 #define IDvdCmd_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 14874 #define IDvdCmd_AddRef(This) (This)->lpVtbl->AddRef(This) 14875 #define IDvdCmd_Release(This) (This)->lpVtbl->Release(This) 14876 #define IDvdCmd_WaitForStart(This) (This)->lpVtbl->WaitForStart(This) 14877 #define IDvdCmd_WaitForEnd(This) (This)->lpVtbl->WaitForEnd(This) 14878 #endif 14879 #endif 14880 HRESULT WINAPI IDvdCmd_WaitForStart_Proxy(IDvdCmd *This); 14881 void __RPC_STUB IDvdCmd_WaitForStart_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14882 HRESULT WINAPI IDvdCmd_WaitForEnd_Proxy(IDvdCmd *This); 14883 void __RPC_STUB IDvdCmd_WaitForEnd_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14884 #endif 14885 14886 #ifndef __IDvdState_INTERFACE_DEFINED__ 14887 #define __IDvdState_INTERFACE_DEFINED__ 14888 EXTERN_C const IID IID_IDvdState; 14889 #if defined(__cplusplus) && !defined(CINTERFACE) 14890 struct IDvdState : public IUnknown { 14891 public: 14892 virtual HRESULT WINAPI GetDiscID(ULONGLONG *pullUniqueID) = 0; 14893 virtual HRESULT WINAPI GetParentalLevel(ULONG *pulParentalLevel) = 0; 14894 }; 14895 #else 14896 typedef struct IDvdStateVtbl { 14897 BEGIN_INTERFACE 14898 HRESULT (WINAPI *QueryInterface)(IDvdState *This,REFIID riid,void **ppvObject); 14899 ULONG (WINAPI *AddRef)(IDvdState *This); 14900 ULONG (WINAPI *Release)(IDvdState *This); 14901 HRESULT (WINAPI *GetDiscID)(IDvdState *This,ULONGLONG *pullUniqueID); 14902 HRESULT (WINAPI *GetParentalLevel)(IDvdState *This,ULONG *pulParentalLevel); 14903 END_INTERFACE 14904 } IDvdStateVtbl; 14905 struct IDvdState { 14906 CONST_VTBL struct IDvdStateVtbl *lpVtbl; 14907 }; 14908 #ifdef COBJMACROS 14909 #define IDvdState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 14910 #define IDvdState_AddRef(This) (This)->lpVtbl->AddRef(This) 14911 #define IDvdState_Release(This) (This)->lpVtbl->Release(This) 14912 #define IDvdState_GetDiscID(This,pullUniqueID) (This)->lpVtbl->GetDiscID(This,pullUniqueID) 14913 #define IDvdState_GetParentalLevel(This,pulParentalLevel) (This)->lpVtbl->GetParentalLevel(This,pulParentalLevel) 14914 #endif 14915 #endif 14916 HRESULT WINAPI IDvdState_GetDiscID_Proxy(IDvdState *This,ULONGLONG *pullUniqueID); 14917 void __RPC_STUB IDvdState_GetDiscID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14918 HRESULT WINAPI IDvdState_GetParentalLevel_Proxy(IDvdState *This,ULONG *pulParentalLevel); 14919 void __RPC_STUB IDvdState_GetParentalLevel_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 14920 #endif 14921 14922 #ifndef __IDvdControl2_INTERFACE_DEFINED__ 14923 #define __IDvdControl2_INTERFACE_DEFINED__ 14924 EXTERN_C const IID IID_IDvdControl2; 14925 #if defined(__cplusplus) && !defined(CINTERFACE) 14926 struct IDvdControl2 : public IUnknown { 14927 public: 14928 virtual HRESULT WINAPI PlayTitle(ULONG ulTitle,DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14929 virtual HRESULT WINAPI PlayChapterInTitle(ULONG ulTitle,ULONG ulChapter,DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14930 virtual HRESULT WINAPI PlayAtTimeInTitle(ULONG ulTitle,DVD_HMSF_TIMECODE *pStartTime,DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14931 virtual HRESULT WINAPI Stop(void) = 0; 14932 virtual HRESULT WINAPI ReturnFromSubmenu(DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14933 virtual HRESULT WINAPI PlayAtTime(DVD_HMSF_TIMECODE *pTime,DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14934 virtual HRESULT WINAPI PlayChapter(ULONG ulChapter,DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14935 virtual HRESULT WINAPI PlayPrevChapter(DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14936 virtual HRESULT WINAPI ReplayChapter(DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14937 virtual HRESULT WINAPI PlayNextChapter(DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14938 virtual HRESULT WINAPI PlayForwards(double dSpeed,DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14939 virtual HRESULT WINAPI PlayBackwards(double dSpeed,DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14940 virtual HRESULT WINAPI ShowMenu(DVD_MENU_ID MenuID,DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14941 virtual HRESULT WINAPI Resume(DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14942 virtual HRESULT WINAPI SelectRelativeButton(DVD_RELATIVE_BUTTON buttonDir) = 0; 14943 virtual HRESULT WINAPI ActivateButton(void) = 0; 14944 virtual HRESULT WINAPI SelectButton(ULONG ulButton) = 0; 14945 virtual HRESULT WINAPI SelectAndActivateButton(ULONG ulButton) = 0; 14946 virtual HRESULT WINAPI StillOff(void) = 0; 14947 virtual HRESULT WINAPI Pause(WINBOOL bState) = 0; 14948 virtual HRESULT WINAPI SelectAudioStream(ULONG ulAudio,DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14949 virtual HRESULT WINAPI SelectSubpictureStream(ULONG ulSubPicture,DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14950 virtual HRESULT WINAPI SetSubpictureState(WINBOOL bState,DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14951 virtual HRESULT WINAPI SelectAngle(ULONG ulAngle,DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14952 virtual HRESULT WINAPI SelectParentalLevel(ULONG ulParentalLevel) = 0; 14953 virtual HRESULT WINAPI SelectParentalCountry(BYTE bCountry[2]) = 0; 14954 virtual HRESULT WINAPI SelectKaraokeAudioPresentationMode(ULONG ulMode) = 0; 14955 virtual HRESULT WINAPI SelectVideoModePreference(ULONG ulPreferredDisplayMode) = 0; 14956 virtual HRESULT WINAPI SetDVDDirectory(LPCWSTR pszwPath) = 0; 14957 virtual HRESULT WINAPI ActivateAtPosition(POINT point) = 0; 14958 virtual HRESULT WINAPI SelectAtPosition(POINT point) = 0; 14959 virtual HRESULT WINAPI PlayChaptersAutoStop(ULONG ulTitle,ULONG ulChapter,ULONG ulChaptersToPlay,DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14960 virtual HRESULT WINAPI AcceptParentalLevelChange(WINBOOL bAccept) = 0; 14961 virtual HRESULT WINAPI SetOption(DVD_OPTION_FLAG flag,WINBOOL fState) = 0; 14962 virtual HRESULT WINAPI SetState(IDvdState *pState,DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14963 virtual HRESULT WINAPI PlayPeriodInTitleAutoStop(ULONG ulTitle,DVD_HMSF_TIMECODE *pStartTime,DVD_HMSF_TIMECODE *pEndTime,DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14964 virtual HRESULT WINAPI SetGPRM(ULONG ulIndex,WORD wValue,DWORD dwFlags,IDvdCmd **ppCmd) = 0; 14965 virtual HRESULT WINAPI SelectDefaultMenuLanguage(LCID Language) = 0; 14966 virtual HRESULT WINAPI SelectDefaultAudioLanguage(LCID Language,DVD_AUDIO_LANG_EXT audioExtension) = 0; 14967 virtual HRESULT WINAPI SelectDefaultSubpictureLanguage(LCID Language,DVD_SUBPICTURE_LANG_EXT subpictureExtension) = 0; 14968 }; 14969 #else 14970 typedef struct IDvdControl2Vtbl { 14971 BEGIN_INTERFACE 14972 HRESULT (WINAPI *QueryInterface)(IDvdControl2 *This,REFIID riid,void **ppvObject); 14973 ULONG (WINAPI *AddRef)(IDvdControl2 *This); 14974 ULONG (WINAPI *Release)(IDvdControl2 *This); 14975 HRESULT (WINAPI *PlayTitle)(IDvdControl2 *This,ULONG ulTitle,DWORD dwFlags,IDvdCmd **ppCmd); 14976 HRESULT (WINAPI *PlayChapterInTitle)(IDvdControl2 *This,ULONG ulTitle,ULONG ulChapter,DWORD dwFlags,IDvdCmd **ppCmd); 14977 HRESULT (WINAPI *PlayAtTimeInTitle)(IDvdControl2 *This,ULONG ulTitle,DVD_HMSF_TIMECODE *pStartTime,DWORD dwFlags,IDvdCmd **ppCmd); 14978 HRESULT (WINAPI *Stop)(IDvdControl2 *This); 14979 HRESULT (WINAPI *ReturnFromSubmenu)(IDvdControl2 *This,DWORD dwFlags,IDvdCmd **ppCmd); 14980 HRESULT (WINAPI *PlayAtTime)(IDvdControl2 *This,DVD_HMSF_TIMECODE *pTime,DWORD dwFlags,IDvdCmd **ppCmd); 14981 HRESULT (WINAPI *PlayChapter)(IDvdControl2 *This,ULONG ulChapter,DWORD dwFlags,IDvdCmd **ppCmd); 14982 HRESULT (WINAPI *PlayPrevChapter)(IDvdControl2 *This,DWORD dwFlags,IDvdCmd **ppCmd); 14983 HRESULT (WINAPI *ReplayChapter)(IDvdControl2 *This,DWORD dwFlags,IDvdCmd **ppCmd); 14984 HRESULT (WINAPI *PlayNextChapter)(IDvdControl2 *This,DWORD dwFlags,IDvdCmd **ppCmd); 14985 HRESULT (WINAPI *PlayForwards)(IDvdControl2 *This,double dSpeed,DWORD dwFlags,IDvdCmd **ppCmd); 14986 HRESULT (WINAPI *PlayBackwards)(IDvdControl2 *This,double dSpeed,DWORD dwFlags,IDvdCmd **ppCmd); 14987 HRESULT (WINAPI *ShowMenu)(IDvdControl2 *This,DVD_MENU_ID MenuID,DWORD dwFlags,IDvdCmd **ppCmd); 14988 HRESULT (WINAPI *Resume)(IDvdControl2 *This,DWORD dwFlags,IDvdCmd **ppCmd); 14989 HRESULT (WINAPI *SelectRelativeButton)(IDvdControl2 *This,DVD_RELATIVE_BUTTON buttonDir); 14990 HRESULT (WINAPI *ActivateButton)(IDvdControl2 *This); 14991 HRESULT (WINAPI *SelectButton)(IDvdControl2 *This,ULONG ulButton); 14992 HRESULT (WINAPI *SelectAndActivateButton)(IDvdControl2 *This,ULONG ulButton); 14993 HRESULT (WINAPI *StillOff)(IDvdControl2 *This); 14994 HRESULT (WINAPI *Pause)(IDvdControl2 *This,WINBOOL bState); 14995 HRESULT (WINAPI *SelectAudioStream)(IDvdControl2 *This,ULONG ulAudio,DWORD dwFlags,IDvdCmd **ppCmd); 14996 HRESULT (WINAPI *SelectSubpictureStream)(IDvdControl2 *This,ULONG ulSubPicture,DWORD dwFlags,IDvdCmd **ppCmd); 14997 HRESULT (WINAPI *SetSubpictureState)(IDvdControl2 *This,WINBOOL bState,DWORD dwFlags,IDvdCmd **ppCmd); 14998 HRESULT (WINAPI *SelectAngle)(IDvdControl2 *This,ULONG ulAngle,DWORD dwFlags,IDvdCmd **ppCmd); 14999 HRESULT (WINAPI *SelectParentalLevel)(IDvdControl2 *This,ULONG ulParentalLevel); 15000 HRESULT (WINAPI *SelectParentalCountry)(IDvdControl2 *This,BYTE bCountry[2]); 15001 HRESULT (WINAPI *SelectKaraokeAudioPresentationMode)(IDvdControl2 *This,ULONG ulMode); 15002 HRESULT (WINAPI *SelectVideoModePreference)(IDvdControl2 *This,ULONG ulPreferredDisplayMode); 15003 HRESULT (WINAPI *SetDVDDirectory)(IDvdControl2 *This,LPCWSTR pszwPath); 15004 HRESULT (WINAPI *ActivateAtPosition)(IDvdControl2 *This,POINT point); 15005 HRESULT (WINAPI *SelectAtPosition)(IDvdControl2 *This,POINT point); 15006 HRESULT (WINAPI *PlayChaptersAutoStop)(IDvdControl2 *This,ULONG ulTitle,ULONG ulChapter,ULONG ulChaptersToPlay,DWORD dwFlags,IDvdCmd **ppCmd); 15007 HRESULT (WINAPI *AcceptParentalLevelChange)(IDvdControl2 *This,WINBOOL bAccept); 15008 HRESULT (WINAPI *SetOption)(IDvdControl2 *This,DVD_OPTION_FLAG flag,WINBOOL fState); 15009 HRESULT (WINAPI *SetState)(IDvdControl2 *This,IDvdState *pState,DWORD dwFlags,IDvdCmd **ppCmd); 15010 HRESULT (WINAPI *PlayPeriodInTitleAutoStop)(IDvdControl2 *This,ULONG ulTitle,DVD_HMSF_TIMECODE *pStartTime,DVD_HMSF_TIMECODE *pEndTime,DWORD dwFlags,IDvdCmd **ppCmd); 15011 HRESULT (WINAPI *SetGPRM)(IDvdControl2 *This,ULONG ulIndex,WORD wValue,DWORD dwFlags,IDvdCmd **ppCmd); 15012 HRESULT (WINAPI *SelectDefaultMenuLanguage)(IDvdControl2 *This,LCID Language); 15013 HRESULT (WINAPI *SelectDefaultAudioLanguage)(IDvdControl2 *This,LCID Language,DVD_AUDIO_LANG_EXT audioExtension); 15014 HRESULT (WINAPI *SelectDefaultSubpictureLanguage)(IDvdControl2 *This,LCID Language,DVD_SUBPICTURE_LANG_EXT subpictureExtension); 15015 END_INTERFACE 15016 } IDvdControl2Vtbl; 15017 struct IDvdControl2 { 15018 CONST_VTBL struct IDvdControl2Vtbl *lpVtbl; 15019 }; 15020 #ifdef COBJMACROS 15021 #define IDvdControl2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15022 #define IDvdControl2_AddRef(This) (This)->lpVtbl->AddRef(This) 15023 #define IDvdControl2_Release(This) (This)->lpVtbl->Release(This) 15024 #define IDvdControl2_PlayTitle(This,ulTitle,dwFlags,ppCmd) (This)->lpVtbl->PlayTitle(This,ulTitle,dwFlags,ppCmd) 15025 #define IDvdControl2_PlayChapterInTitle(This,ulTitle,ulChapter,dwFlags,ppCmd) (This)->lpVtbl->PlayChapterInTitle(This,ulTitle,ulChapter,dwFlags,ppCmd) 15026 #define IDvdControl2_PlayAtTimeInTitle(This,ulTitle,pStartTime,dwFlags,ppCmd) (This)->lpVtbl->PlayAtTimeInTitle(This,ulTitle,pStartTime,dwFlags,ppCmd) 15027 #define IDvdControl2_Stop(This) (This)->lpVtbl->Stop(This) 15028 #define IDvdControl2_ReturnFromSubmenu(This,dwFlags,ppCmd) (This)->lpVtbl->ReturnFromSubmenu(This,dwFlags,ppCmd) 15029 #define IDvdControl2_PlayAtTime(This,pTime,dwFlags,ppCmd) (This)->lpVtbl->PlayAtTime(This,pTime,dwFlags,ppCmd) 15030 #define IDvdControl2_PlayChapter(This,ulChapter,dwFlags,ppCmd) (This)->lpVtbl->PlayChapter(This,ulChapter,dwFlags,ppCmd) 15031 #define IDvdControl2_PlayPrevChapter(This,dwFlags,ppCmd) (This)->lpVtbl->PlayPrevChapter(This,dwFlags,ppCmd) 15032 #define IDvdControl2_ReplayChapter(This,dwFlags,ppCmd) (This)->lpVtbl->ReplayChapter(This,dwFlags,ppCmd) 15033 #define IDvdControl2_PlayNextChapter(This,dwFlags,ppCmd) (This)->lpVtbl->PlayNextChapter(This,dwFlags,ppCmd) 15034 #define IDvdControl2_PlayForwards(This,dSpeed,dwFlags,ppCmd) (This)->lpVtbl->PlayForwards(This,dSpeed,dwFlags,ppCmd) 15035 #define IDvdControl2_PlayBackwards(This,dSpeed,dwFlags,ppCmd) (This)->lpVtbl->PlayBackwards(This,dSpeed,dwFlags,ppCmd) 15036 #define IDvdControl2_ShowMenu(This,MenuID,dwFlags,ppCmd) (This)->lpVtbl->ShowMenu(This,MenuID,dwFlags,ppCmd) 15037 #define IDvdControl2_Resume(This,dwFlags,ppCmd) (This)->lpVtbl->Resume(This,dwFlags,ppCmd) 15038 #define IDvdControl2_SelectRelativeButton(This,buttonDir) (This)->lpVtbl->SelectRelativeButton(This,buttonDir) 15039 #define IDvdControl2_ActivateButton(This) (This)->lpVtbl->ActivateButton(This) 15040 #define IDvdControl2_SelectButton(This,ulButton) (This)->lpVtbl->SelectButton(This,ulButton) 15041 #define IDvdControl2_SelectAndActivateButton(This,ulButton) (This)->lpVtbl->SelectAndActivateButton(This,ulButton) 15042 #define IDvdControl2_StillOff(This) (This)->lpVtbl->StillOff(This) 15043 #define IDvdControl2_Pause(This,bState) (This)->lpVtbl->Pause(This,bState) 15044 #define IDvdControl2_SelectAudioStream(This,ulAudio,dwFlags,ppCmd) (This)->lpVtbl->SelectAudioStream(This,ulAudio,dwFlags,ppCmd) 15045 #define IDvdControl2_SelectSubpictureStream(This,ulSubPicture,dwFlags,ppCmd) (This)->lpVtbl->SelectSubpictureStream(This,ulSubPicture,dwFlags,ppCmd) 15046 #define IDvdControl2_SetSubpictureState(This,bState,dwFlags,ppCmd) (This)->lpVtbl->SetSubpictureState(This,bState,dwFlags,ppCmd) 15047 #define IDvdControl2_SelectAngle(This,ulAngle,dwFlags,ppCmd) (This)->lpVtbl->SelectAngle(This,ulAngle,dwFlags,ppCmd) 15048 #define IDvdControl2_SelectParentalLevel(This,ulParentalLevel) (This)->lpVtbl->SelectParentalLevel(This,ulParentalLevel) 15049 #define IDvdControl2_SelectParentalCountry(This,bCountry) (This)->lpVtbl->SelectParentalCountry(This,bCountry) 15050 #define IDvdControl2_SelectKaraokeAudioPresentationMode(This,ulMode) (This)->lpVtbl->SelectKaraokeAudioPresentationMode(This,ulMode) 15051 #define IDvdControl2_SelectVideoModePreference(This,ulPreferredDisplayMode) (This)->lpVtbl->SelectVideoModePreference(This,ulPreferredDisplayMode) 15052 #define IDvdControl2_SetDVDDirectory(This,pszwPath) (This)->lpVtbl->SetDVDDirectory(This,pszwPath) 15053 #define IDvdControl2_ActivateAtPosition(This,point) (This)->lpVtbl->ActivateAtPosition(This,point) 15054 #define IDvdControl2_SelectAtPosition(This,point) (This)->lpVtbl->SelectAtPosition(This,point) 15055 #define IDvdControl2_PlayChaptersAutoStop(This,ulTitle,ulChapter,ulChaptersToPlay,dwFlags,ppCmd) (This)->lpVtbl->PlayChaptersAutoStop(This,ulTitle,ulChapter,ulChaptersToPlay,dwFlags,ppCmd) 15056 #define IDvdControl2_AcceptParentalLevelChange(This,bAccept) (This)->lpVtbl->AcceptParentalLevelChange(This,bAccept) 15057 #define IDvdControl2_SetOption(This,flag,fState) (This)->lpVtbl->SetOption(This,flag,fState) 15058 #define IDvdControl2_SetState(This,pState,dwFlags,ppCmd) (This)->lpVtbl->SetState(This,pState,dwFlags,ppCmd) 15059 #define IDvdControl2_PlayPeriodInTitleAutoStop(This,ulTitle,pStartTime,pEndTime,dwFlags,ppCmd) (This)->lpVtbl->PlayPeriodInTitleAutoStop(This,ulTitle,pStartTime,pEndTime,dwFlags,ppCmd) 15060 #define IDvdControl2_SetGPRM(This,ulIndex,wValue,dwFlags,ppCmd) (This)->lpVtbl->SetGPRM(This,ulIndex,wValue,dwFlags,ppCmd) 15061 #define IDvdControl2_SelectDefaultMenuLanguage(This,Language) (This)->lpVtbl->SelectDefaultMenuLanguage(This,Language) 15062 #define IDvdControl2_SelectDefaultAudioLanguage(This,Language,audioExtension) (This)->lpVtbl->SelectDefaultAudioLanguage(This,Language,audioExtension) 15063 #define IDvdControl2_SelectDefaultSubpictureLanguage(This,Language,subpictureExtension) (This)->lpVtbl->SelectDefaultSubpictureLanguage(This,Language,subpictureExtension) 15064 #endif 15065 #endif 15066 HRESULT WINAPI IDvdControl2_PlayTitle_Proxy(IDvdControl2 *This,ULONG ulTitle,DWORD dwFlags,IDvdCmd **ppCmd); 15067 void __RPC_STUB IDvdControl2_PlayTitle_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15068 HRESULT WINAPI IDvdControl2_PlayChapterInTitle_Proxy(IDvdControl2 *This,ULONG ulTitle,ULONG ulChapter,DWORD dwFlags,IDvdCmd **ppCmd); 15069 void __RPC_STUB IDvdControl2_PlayChapterInTitle_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15070 HRESULT WINAPI IDvdControl2_PlayAtTimeInTitle_Proxy(IDvdControl2 *This,ULONG ulTitle,DVD_HMSF_TIMECODE *pStartTime,DWORD dwFlags,IDvdCmd **ppCmd); 15071 void __RPC_STUB IDvdControl2_PlayAtTimeInTitle_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15072 HRESULT WINAPI IDvdControl2_Stop_Proxy(IDvdControl2 *This); 15073 void __RPC_STUB IDvdControl2_Stop_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15074 HRESULT WINAPI IDvdControl2_ReturnFromSubmenu_Proxy(IDvdControl2 *This,DWORD dwFlags,IDvdCmd **ppCmd); 15075 void __RPC_STUB IDvdControl2_ReturnFromSubmenu_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15076 HRESULT WINAPI IDvdControl2_PlayAtTime_Proxy(IDvdControl2 *This,DVD_HMSF_TIMECODE *pTime,DWORD dwFlags,IDvdCmd **ppCmd); 15077 void __RPC_STUB IDvdControl2_PlayAtTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15078 HRESULT WINAPI IDvdControl2_PlayChapter_Proxy(IDvdControl2 *This,ULONG ulChapter,DWORD dwFlags,IDvdCmd **ppCmd); 15079 void __RPC_STUB IDvdControl2_PlayChapter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15080 HRESULT WINAPI IDvdControl2_PlayPrevChapter_Proxy(IDvdControl2 *This,DWORD dwFlags,IDvdCmd **ppCmd); 15081 void __RPC_STUB IDvdControl2_PlayPrevChapter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15082 HRESULT WINAPI IDvdControl2_ReplayChapter_Proxy(IDvdControl2 *This,DWORD dwFlags,IDvdCmd **ppCmd); 15083 void __RPC_STUB IDvdControl2_ReplayChapter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15084 HRESULT WINAPI IDvdControl2_PlayNextChapter_Proxy(IDvdControl2 *This,DWORD dwFlags,IDvdCmd **ppCmd); 15085 void __RPC_STUB IDvdControl2_PlayNextChapter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15086 HRESULT WINAPI IDvdControl2_PlayForwards_Proxy(IDvdControl2 *This,double dSpeed,DWORD dwFlags,IDvdCmd **ppCmd); 15087 void __RPC_STUB IDvdControl2_PlayForwards_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15088 HRESULT WINAPI IDvdControl2_PlayBackwards_Proxy(IDvdControl2 *This,double dSpeed,DWORD dwFlags,IDvdCmd **ppCmd); 15089 void __RPC_STUB IDvdControl2_PlayBackwards_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15090 HRESULT WINAPI IDvdControl2_ShowMenu_Proxy(IDvdControl2 *This,DVD_MENU_ID MenuID,DWORD dwFlags,IDvdCmd **ppCmd); 15091 void __RPC_STUB IDvdControl2_ShowMenu_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15092 HRESULT WINAPI IDvdControl2_Resume_Proxy(IDvdControl2 *This,DWORD dwFlags,IDvdCmd **ppCmd); 15093 void __RPC_STUB IDvdControl2_Resume_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15094 HRESULT WINAPI IDvdControl2_SelectRelativeButton_Proxy(IDvdControl2 *This,DVD_RELATIVE_BUTTON buttonDir); 15095 void __RPC_STUB IDvdControl2_SelectRelativeButton_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15096 HRESULT WINAPI IDvdControl2_ActivateButton_Proxy(IDvdControl2 *This); 15097 void __RPC_STUB IDvdControl2_ActivateButton_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15098 HRESULT WINAPI IDvdControl2_SelectButton_Proxy(IDvdControl2 *This,ULONG ulButton); 15099 void __RPC_STUB IDvdControl2_SelectButton_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15100 HRESULT WINAPI IDvdControl2_SelectAndActivateButton_Proxy(IDvdControl2 *This,ULONG ulButton); 15101 void __RPC_STUB IDvdControl2_SelectAndActivateButton_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15102 HRESULT WINAPI IDvdControl2_StillOff_Proxy(IDvdControl2 *This); 15103 void __RPC_STUB IDvdControl2_StillOff_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15104 HRESULT WINAPI IDvdControl2_Pause_Proxy(IDvdControl2 *This,WINBOOL bState); 15105 void __RPC_STUB IDvdControl2_Pause_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15106 HRESULT WINAPI IDvdControl2_SelectAudioStream_Proxy(IDvdControl2 *This,ULONG ulAudio,DWORD dwFlags,IDvdCmd **ppCmd); 15107 void __RPC_STUB IDvdControl2_SelectAudioStream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15108 HRESULT WINAPI IDvdControl2_SelectSubpictureStream_Proxy(IDvdControl2 *This,ULONG ulSubPicture,DWORD dwFlags,IDvdCmd **ppCmd); 15109 void __RPC_STUB IDvdControl2_SelectSubpictureStream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15110 HRESULT WINAPI IDvdControl2_SetSubpictureState_Proxy(IDvdControl2 *This,WINBOOL bState,DWORD dwFlags,IDvdCmd **ppCmd); 15111 void __RPC_STUB IDvdControl2_SetSubpictureState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15112 HRESULT WINAPI IDvdControl2_SelectAngle_Proxy(IDvdControl2 *This,ULONG ulAngle,DWORD dwFlags,IDvdCmd **ppCmd); 15113 void __RPC_STUB IDvdControl2_SelectAngle_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15114 HRESULT WINAPI IDvdControl2_SelectParentalLevel_Proxy(IDvdControl2 *This,ULONG ulParentalLevel); 15115 void __RPC_STUB IDvdControl2_SelectParentalLevel_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15116 HRESULT WINAPI IDvdControl2_SelectParentalCountry_Proxy(IDvdControl2 *This,BYTE bCountry[2]); 15117 void __RPC_STUB IDvdControl2_SelectParentalCountry_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15118 HRESULT WINAPI IDvdControl2_SelectKaraokeAudioPresentationMode_Proxy(IDvdControl2 *This,ULONG ulMode); 15119 void __RPC_STUB IDvdControl2_SelectKaraokeAudioPresentationMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15120 HRESULT WINAPI IDvdControl2_SelectVideoModePreference_Proxy(IDvdControl2 *This,ULONG ulPreferredDisplayMode); 15121 void __RPC_STUB IDvdControl2_SelectVideoModePreference_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15122 HRESULT WINAPI IDvdControl2_SetDVDDirectory_Proxy(IDvdControl2 *This,LPCWSTR pszwPath); 15123 void __RPC_STUB IDvdControl2_SetDVDDirectory_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15124 HRESULT WINAPI IDvdControl2_ActivateAtPosition_Proxy(IDvdControl2 *This,POINT point); 15125 void __RPC_STUB IDvdControl2_ActivateAtPosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15126 HRESULT WINAPI IDvdControl2_SelectAtPosition_Proxy(IDvdControl2 *This,POINT point); 15127 void __RPC_STUB IDvdControl2_SelectAtPosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15128 HRESULT WINAPI IDvdControl2_PlayChaptersAutoStop_Proxy(IDvdControl2 *This,ULONG ulTitle,ULONG ulChapter,ULONG ulChaptersToPlay,DWORD dwFlags,IDvdCmd **ppCmd); 15129 void __RPC_STUB IDvdControl2_PlayChaptersAutoStop_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15130 HRESULT WINAPI IDvdControl2_AcceptParentalLevelChange_Proxy(IDvdControl2 *This,WINBOOL bAccept); 15131 void __RPC_STUB IDvdControl2_AcceptParentalLevelChange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15132 HRESULT WINAPI IDvdControl2_SetOption_Proxy(IDvdControl2 *This,DVD_OPTION_FLAG flag,WINBOOL fState); 15133 void __RPC_STUB IDvdControl2_SetOption_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15134 HRESULT WINAPI IDvdControl2_SetState_Proxy(IDvdControl2 *This,IDvdState *pState,DWORD dwFlags,IDvdCmd **ppCmd); 15135 void __RPC_STUB IDvdControl2_SetState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15136 HRESULT WINAPI IDvdControl2_PlayPeriodInTitleAutoStop_Proxy(IDvdControl2 *This,ULONG ulTitle,DVD_HMSF_TIMECODE *pStartTime,DVD_HMSF_TIMECODE *pEndTime,DWORD dwFlags,IDvdCmd **ppCmd); 15137 void __RPC_STUB IDvdControl2_PlayPeriodInTitleAutoStop_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15138 HRESULT WINAPI IDvdControl2_SetGPRM_Proxy(IDvdControl2 *This,ULONG ulIndex,WORD wValue,DWORD dwFlags,IDvdCmd **ppCmd); 15139 void __RPC_STUB IDvdControl2_SetGPRM_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15140 HRESULT WINAPI IDvdControl2_SelectDefaultMenuLanguage_Proxy(IDvdControl2 *This,LCID Language); 15141 void __RPC_STUB IDvdControl2_SelectDefaultMenuLanguage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15142 HRESULT WINAPI IDvdControl2_SelectDefaultAudioLanguage_Proxy(IDvdControl2 *This,LCID Language,DVD_AUDIO_LANG_EXT audioExtension); 15143 void __RPC_STUB IDvdControl2_SelectDefaultAudioLanguage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15144 HRESULT WINAPI IDvdControl2_SelectDefaultSubpictureLanguage_Proxy(IDvdControl2 *This,LCID Language,DVD_SUBPICTURE_LANG_EXT subpictureExtension); 15145 void __RPC_STUB IDvdControl2_SelectDefaultSubpictureLanguage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15146 #endif 15147 15148 enum DVD_TextStringType { 15149 DVD_Struct_Volume = 0x1,DVD_Struct_Title = 0x2,DVD_Struct_ParentalID = 0x3,DVD_Struct_PartOfTitle = 0x4,DVD_Struct_Cell = 0x5, 15150 DVD_Stream_Audio = 0x10,DVD_Stream_Subpicture = 0x11,DVD_Stream_Angle = 0x12,DVD_Channel_Audio = 0x20,DVD_General_Name = 0x30, 15151 DVD_General_Comments = 0x31,DVD_Title_Series = 0x38,DVD_Title_Movie = 0x39,DVD_Title_Video = 0x3a,DVD_Title_Album = 0x3b,DVD_Title_Song = 0x3c, 15152 DVD_Title_Other = 0x3f,DVD_Title_Sub_Series = 0x40,DVD_Title_Sub_Movie = 0x41,DVD_Title_Sub_Video = 0x42,DVD_Title_Sub_Album = 0x43, 15153 DVD_Title_Sub_Song = 0x44,DVD_Title_Sub_Other = 0x47,DVD_Title_Orig_Series = 0x48,DVD_Title_Orig_Movie = 0x49,DVD_Title_Orig_Video = 0x4a, 15154 DVD_Title_Orig_Album = 0x4b,DVD_Title_Orig_Song = 0x4c,DVD_Title_Orig_Other = 0x4f,DVD_Other_Scene = 0x50,DVD_Other_Cut = 0x51,DVD_Other_Take = 0x52 15155 }; 15156 15157 enum DVD_TextCharSet { 15158 DVD_CharSet_Unicode = 0,DVD_CharSet_ISO646 = 1,DVD_CharSet_JIS_Roman_Kanji = 2,DVD_CharSet_ISO8859_1 = 3, 15159 DVD_CharSet_ShiftJIS_Kanji_Roman_Katakana = 4 15160 }; 15161 #define DVD_TITLE_MENU 0x000 15162 #define DVD_STREAM_DATA_CURRENT 0x800 15163 #define DVD_STREAM_DATA_VMGM 0x400 15164 #define DVD_STREAM_DATA_VTSM 0x401 15165 #define DVD_DEFAULT_AUDIO_STREAM 0x0f 15166 15167 typedef struct tagDVD_DECODER_CAPS { 15168 DWORD dwSize; 15169 DWORD dwAudioCaps; 15170 double dFwdMaxRateVideo; 15171 double dFwdMaxRateAudio; 15172 double dFwdMaxRateSP; 15173 double dBwdMaxRateVideo; 15174 double dBwdMaxRateAudio; 15175 double dBwdMaxRateSP; 15176 DWORD dwRes1; 15177 DWORD dwRes2; 15178 DWORD dwRes3; 15179 DWORD dwRes4; 15180 } DVD_DECODER_CAPS; 15181 15182 #define DVD_AUDIO_CAPS_AC3 0x00000001 15183 #define DVD_AUDIO_CAPS_MPEG2 0x00000002 15184 #define DVD_AUDIO_CAPS_LPCM 0x00000004 15185 #define DVD_AUDIO_CAPS_DTS 0x00000008 15186 #define DVD_AUDIO_CAPS_SDDS 0x00000010 15187 15188 extern RPC_IF_HANDLE __MIDL_itf_strmif_0387_v0_0_c_ifspec; 15189 extern RPC_IF_HANDLE __MIDL_itf_strmif_0387_v0_0_s_ifspec; 15190 #ifndef __IDvdInfo2_INTERFACE_DEFINED__ 15191 #define __IDvdInfo2_INTERFACE_DEFINED__ 15192 EXTERN_C const IID IID_IDvdInfo2; 15193 #if defined(__cplusplus) && !defined(CINTERFACE) 15194 struct IDvdInfo2 : public IUnknown { 15195 public: 15196 virtual HRESULT WINAPI GetCurrentDomain(DVD_DOMAIN *pDomain) = 0; 15197 virtual HRESULT WINAPI GetCurrentLocation(DVD_PLAYBACK_LOCATION2 *pLocation) = 0; 15198 virtual HRESULT WINAPI GetTotalTitleTime(DVD_HMSF_TIMECODE *pTotalTime,ULONG *ulTimeCodeFlags) = 0; 15199 virtual HRESULT WINAPI GetCurrentButton(ULONG *pulButtonsAvailable,ULONG *pulCurrentButton) = 0; 15200 virtual HRESULT WINAPI GetCurrentAngle(ULONG *pulAnglesAvailable,ULONG *pulCurrentAngle) = 0; 15201 virtual HRESULT WINAPI GetCurrentAudio(ULONG *pulStreamsAvailable,ULONG *pulCurrentStream) = 0; 15202 virtual HRESULT WINAPI GetCurrentSubpicture(ULONG *pulStreamsAvailable,ULONG *pulCurrentStream,WINBOOL *pbIsDisabled) = 0; 15203 virtual HRESULT WINAPI GetCurrentUOPS(ULONG *pulUOPs) = 0; 15204 virtual HRESULT WINAPI GetAllSPRMs(SPRMARRAY *pRegisterArray) = 0; 15205 virtual HRESULT WINAPI GetAllGPRMs(GPRMARRAY *pRegisterArray) = 0; 15206 virtual HRESULT WINAPI GetAudioLanguage(ULONG ulStream,LCID *pLanguage) = 0; 15207 virtual HRESULT WINAPI GetSubpictureLanguage(ULONG ulStream,LCID *pLanguage) = 0; 15208 virtual HRESULT WINAPI GetTitleAttributes(ULONG ulTitle,DVD_MenuAttributes *pMenu,DVD_TitleAttributes *pTitle) = 0; 15209 virtual HRESULT WINAPI GetVMGAttributes(DVD_MenuAttributes *pATR) = 0; 15210 virtual HRESULT WINAPI GetCurrentVideoAttributes(DVD_VideoAttributes *pATR) = 0; 15211 virtual HRESULT WINAPI GetAudioAttributes(ULONG ulStream,DVD_AudioAttributes *pATR) = 0; 15212 virtual HRESULT WINAPI GetKaraokeAttributes(ULONG ulStream,DVD_KaraokeAttributes *pAttributes) = 0; 15213 virtual HRESULT WINAPI GetSubpictureAttributes(ULONG ulStream,DVD_SubpictureAttributes *pATR) = 0; 15214 virtual HRESULT WINAPI GetDVDVolumeInfo(ULONG *pulNumOfVolumes,ULONG *pulVolume,DVD_DISC_SIDE *pSide,ULONG *pulNumOfTitles) = 0; 15215 virtual HRESULT WINAPI GetDVDTextNumberOfLanguages(ULONG *pulNumOfLangs) = 0; 15216 virtual HRESULT WINAPI GetDVDTextLanguageInfo(ULONG ulLangIndex,ULONG *pulNumOfStrings,LCID *pLangCode,enum DVD_TextCharSet *pbCharacterSet) = 0; 15217 virtual HRESULT WINAPI GetDVDTextStringAsNative(ULONG ulLangIndex,ULONG ulStringIndex,BYTE *pbBuffer,ULONG ulMaxBufferSize,ULONG *pulActualSize,enum DVD_TextStringType *pType) = 0; 15218 virtual HRESULT WINAPI GetDVDTextStringAsUnicode(ULONG ulLangIndex,ULONG ulStringIndex,WCHAR *pchwBuffer,ULONG ulMaxBufferSize,ULONG *pulActualSize,enum DVD_TextStringType *pType) = 0; 15219 virtual HRESULT WINAPI GetPlayerParentalLevel(ULONG *pulParentalLevel,BYTE pbCountryCode[2]) = 0; 15220 virtual HRESULT WINAPI GetNumberOfChapters(ULONG ulTitle,ULONG *pulNumOfChapters) = 0; 15221 virtual HRESULT WINAPI GetTitleParentalLevels(ULONG ulTitle,ULONG *pulParentalLevels) = 0; 15222 virtual HRESULT WINAPI GetDVDDirectory(LPWSTR pszwPath,ULONG ulMaxSize,ULONG *pulActualSize) = 0; 15223 virtual HRESULT WINAPI IsAudioStreamEnabled(ULONG ulStreamNum,WINBOOL *pbEnabled) = 0; 15224 virtual HRESULT WINAPI GetDiscID(LPCWSTR pszwPath,ULONGLONG *pullDiscID) = 0; 15225 virtual HRESULT WINAPI GetState(IDvdState **pStateData) = 0; 15226 virtual HRESULT WINAPI GetMenuLanguages(LCID *pLanguages,ULONG ulMaxLanguages,ULONG *pulActualLanguages) = 0; 15227 virtual HRESULT WINAPI GetButtonAtPosition(POINT point,ULONG *pulButtonIndex) = 0; 15228 virtual HRESULT WINAPI GetCmdFromEvent(LONG_PTR lParam1,IDvdCmd **pCmdObj) = 0; 15229 virtual HRESULT WINAPI GetDefaultMenuLanguage(LCID *pLanguage) = 0; 15230 virtual HRESULT WINAPI GetDefaultAudioLanguage(LCID *pLanguage,DVD_AUDIO_LANG_EXT *pAudioExtension) = 0; 15231 virtual HRESULT WINAPI GetDefaultSubpictureLanguage(LCID *pLanguage,DVD_SUBPICTURE_LANG_EXT *pSubpictureExtension) = 0; 15232 virtual HRESULT WINAPI GetDecoderCaps(DVD_DECODER_CAPS *pCaps) = 0; 15233 virtual HRESULT WINAPI GetButtonRect(ULONG ulButton,RECT *pRect) = 0; 15234 virtual HRESULT WINAPI IsSubpictureStreamEnabled(ULONG ulStreamNum,WINBOOL *pbEnabled) = 0; 15235 }; 15236 #else 15237 typedef struct IDvdInfo2Vtbl { 15238 BEGIN_INTERFACE 15239 HRESULT (WINAPI *QueryInterface)(IDvdInfo2 *This,REFIID riid,void **ppvObject); 15240 ULONG (WINAPI *AddRef)(IDvdInfo2 *This); 15241 ULONG (WINAPI *Release)(IDvdInfo2 *This); 15242 HRESULT (WINAPI *GetCurrentDomain)(IDvdInfo2 *This,DVD_DOMAIN *pDomain); 15243 HRESULT (WINAPI *GetCurrentLocation)(IDvdInfo2 *This,DVD_PLAYBACK_LOCATION2 *pLocation); 15244 HRESULT (WINAPI *GetTotalTitleTime)(IDvdInfo2 *This,DVD_HMSF_TIMECODE *pTotalTime,ULONG *ulTimeCodeFlags); 15245 HRESULT (WINAPI *GetCurrentButton)(IDvdInfo2 *This,ULONG *pulButtonsAvailable,ULONG *pulCurrentButton); 15246 HRESULT (WINAPI *GetCurrentAngle)(IDvdInfo2 *This,ULONG *pulAnglesAvailable,ULONG *pulCurrentAngle); 15247 HRESULT (WINAPI *GetCurrentAudio)(IDvdInfo2 *This,ULONG *pulStreamsAvailable,ULONG *pulCurrentStream); 15248 HRESULT (WINAPI *GetCurrentSubpicture)(IDvdInfo2 *This,ULONG *pulStreamsAvailable,ULONG *pulCurrentStream,WINBOOL *pbIsDisabled); 15249 HRESULT (WINAPI *GetCurrentUOPS)(IDvdInfo2 *This,ULONG *pulUOPs); 15250 HRESULT (WINAPI *GetAllSPRMs)(IDvdInfo2 *This,SPRMARRAY *pRegisterArray); 15251 HRESULT (WINAPI *GetAllGPRMs)(IDvdInfo2 *This,GPRMARRAY *pRegisterArray); 15252 HRESULT (WINAPI *GetAudioLanguage)(IDvdInfo2 *This,ULONG ulStream,LCID *pLanguage); 15253 HRESULT (WINAPI *GetSubpictureLanguage)(IDvdInfo2 *This,ULONG ulStream,LCID *pLanguage); 15254 HRESULT (WINAPI *GetTitleAttributes)(IDvdInfo2 *This,ULONG ulTitle,DVD_MenuAttributes *pMenu,DVD_TitleAttributes *pTitle); 15255 HRESULT (WINAPI *GetVMGAttributes)(IDvdInfo2 *This,DVD_MenuAttributes *pATR); 15256 HRESULT (WINAPI *GetCurrentVideoAttributes)(IDvdInfo2 *This,DVD_VideoAttributes *pATR); 15257 HRESULT (WINAPI *GetAudioAttributes)(IDvdInfo2 *This,ULONG ulStream,DVD_AudioAttributes *pATR); 15258 HRESULT (WINAPI *GetKaraokeAttributes)(IDvdInfo2 *This,ULONG ulStream,DVD_KaraokeAttributes *pAttributes); 15259 HRESULT (WINAPI *GetSubpictureAttributes)(IDvdInfo2 *This,ULONG ulStream,DVD_SubpictureAttributes *pATR); 15260 HRESULT (WINAPI *GetDVDVolumeInfo)(IDvdInfo2 *This,ULONG *pulNumOfVolumes,ULONG *pulVolume,DVD_DISC_SIDE *pSide,ULONG *pulNumOfTitles); 15261 HRESULT (WINAPI *GetDVDTextNumberOfLanguages)(IDvdInfo2 *This,ULONG *pulNumOfLangs); 15262 HRESULT (WINAPI *GetDVDTextLanguageInfo)(IDvdInfo2 *This,ULONG ulLangIndex,ULONG *pulNumOfStrings,LCID *pLangCode,enum DVD_TextCharSet *pbCharacterSet); 15263 HRESULT (WINAPI *GetDVDTextStringAsNative)(IDvdInfo2 *This,ULONG ulLangIndex,ULONG ulStringIndex,BYTE *pbBuffer,ULONG ulMaxBufferSize,ULONG *pulActualSize,enum DVD_TextStringType *pType); 15264 HRESULT (WINAPI *GetDVDTextStringAsUnicode)(IDvdInfo2 *This,ULONG ulLangIndex,ULONG ulStringIndex,WCHAR *pchwBuffer,ULONG ulMaxBufferSize,ULONG *pulActualSize,enum DVD_TextStringType *pType); 15265 HRESULT (WINAPI *GetPlayerParentalLevel)(IDvdInfo2 *This,ULONG *pulParentalLevel,BYTE pbCountryCode[2]); 15266 HRESULT (WINAPI *GetNumberOfChapters)(IDvdInfo2 *This,ULONG ulTitle,ULONG *pulNumOfChapters); 15267 HRESULT (WINAPI *GetTitleParentalLevels)(IDvdInfo2 *This,ULONG ulTitle,ULONG *pulParentalLevels); 15268 HRESULT (WINAPI *GetDVDDirectory)(IDvdInfo2 *This,LPWSTR pszwPath,ULONG ulMaxSize,ULONG *pulActualSize); 15269 HRESULT (WINAPI *IsAudioStreamEnabled)(IDvdInfo2 *This,ULONG ulStreamNum,WINBOOL *pbEnabled); 15270 HRESULT (WINAPI *GetDiscID)(IDvdInfo2 *This,LPCWSTR pszwPath,ULONGLONG *pullDiscID); 15271 HRESULT (WINAPI *GetState)(IDvdInfo2 *This,IDvdState **pStateData); 15272 HRESULT (WINAPI *GetMenuLanguages)(IDvdInfo2 *This,LCID *pLanguages,ULONG ulMaxLanguages,ULONG *pulActualLanguages); 15273 HRESULT (WINAPI *GetButtonAtPosition)(IDvdInfo2 *This,POINT point,ULONG *pulButtonIndex); 15274 HRESULT (WINAPI *GetCmdFromEvent)(IDvdInfo2 *This,LONG_PTR lParam1,IDvdCmd **pCmdObj); 15275 HRESULT (WINAPI *GetDefaultMenuLanguage)(IDvdInfo2 *This,LCID *pLanguage); 15276 HRESULT (WINAPI *GetDefaultAudioLanguage)(IDvdInfo2 *This,LCID *pLanguage,DVD_AUDIO_LANG_EXT *pAudioExtension); 15277 HRESULT (WINAPI *GetDefaultSubpictureLanguage)(IDvdInfo2 *This,LCID *pLanguage,DVD_SUBPICTURE_LANG_EXT *pSubpictureExtension); 15278 HRESULT (WINAPI *GetDecoderCaps)(IDvdInfo2 *This,DVD_DECODER_CAPS *pCaps); 15279 HRESULT (WINAPI *GetButtonRect)(IDvdInfo2 *This,ULONG ulButton,RECT *pRect); 15280 HRESULT (WINAPI *IsSubpictureStreamEnabled)(IDvdInfo2 *This,ULONG ulStreamNum,WINBOOL *pbEnabled); 15281 END_INTERFACE 15282 } IDvdInfo2Vtbl; 15283 struct IDvdInfo2 { 15284 CONST_VTBL struct IDvdInfo2Vtbl *lpVtbl; 15285 }; 15286 #ifdef COBJMACROS 15287 #define IDvdInfo2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15288 #define IDvdInfo2_AddRef(This) (This)->lpVtbl->AddRef(This) 15289 #define IDvdInfo2_Release(This) (This)->lpVtbl->Release(This) 15290 #define IDvdInfo2_GetCurrentDomain(This,pDomain) (This)->lpVtbl->GetCurrentDomain(This,pDomain) 15291 #define IDvdInfo2_GetCurrentLocation(This,pLocation) (This)->lpVtbl->GetCurrentLocation(This,pLocation) 15292 #define IDvdInfo2_GetTotalTitleTime(This,pTotalTime,ulTimeCodeFlags) (This)->lpVtbl->GetTotalTitleTime(This,pTotalTime,ulTimeCodeFlags) 15293 #define IDvdInfo2_GetCurrentButton(This,pulButtonsAvailable,pulCurrentButton) (This)->lpVtbl->GetCurrentButton(This,pulButtonsAvailable,pulCurrentButton) 15294 #define IDvdInfo2_GetCurrentAngle(This,pulAnglesAvailable,pulCurrentAngle) (This)->lpVtbl->GetCurrentAngle(This,pulAnglesAvailable,pulCurrentAngle) 15295 #define IDvdInfo2_GetCurrentAudio(This,pulStreamsAvailable,pulCurrentStream) (This)->lpVtbl->GetCurrentAudio(This,pulStreamsAvailable,pulCurrentStream) 15296 #define IDvdInfo2_GetCurrentSubpicture(This,pulStreamsAvailable,pulCurrentStream,pbIsDisabled) (This)->lpVtbl->GetCurrentSubpicture(This,pulStreamsAvailable,pulCurrentStream,pbIsDisabled) 15297 #define IDvdInfo2_GetCurrentUOPS(This,pulUOPs) (This)->lpVtbl->GetCurrentUOPS(This,pulUOPs) 15298 #define IDvdInfo2_GetAllSPRMs(This,pRegisterArray) (This)->lpVtbl->GetAllSPRMs(This,pRegisterArray) 15299 #define IDvdInfo2_GetAllGPRMs(This,pRegisterArray) (This)->lpVtbl->GetAllGPRMs(This,pRegisterArray) 15300 #define IDvdInfo2_GetAudioLanguage(This,ulStream,pLanguage) (This)->lpVtbl->GetAudioLanguage(This,ulStream,pLanguage) 15301 #define IDvdInfo2_GetSubpictureLanguage(This,ulStream,pLanguage) (This)->lpVtbl->GetSubpictureLanguage(This,ulStream,pLanguage) 15302 #define IDvdInfo2_GetTitleAttributes(This,ulTitle,pMenu,pTitle) (This)->lpVtbl->GetTitleAttributes(This,ulTitle,pMenu,pTitle) 15303 #define IDvdInfo2_GetVMGAttributes(This,pATR) (This)->lpVtbl->GetVMGAttributes(This,pATR) 15304 #define IDvdInfo2_GetCurrentVideoAttributes(This,pATR) (This)->lpVtbl->GetCurrentVideoAttributes(This,pATR) 15305 #define IDvdInfo2_GetAudioAttributes(This,ulStream,pATR) (This)->lpVtbl->GetAudioAttributes(This,ulStream,pATR) 15306 #define IDvdInfo2_GetKaraokeAttributes(This,ulStream,pAttributes) (This)->lpVtbl->GetKaraokeAttributes(This,ulStream,pAttributes) 15307 #define IDvdInfo2_GetSubpictureAttributes(This,ulStream,pATR) (This)->lpVtbl->GetSubpictureAttributes(This,ulStream,pATR) 15308 #define IDvdInfo2_GetDVDVolumeInfo(This,pulNumOfVolumes,pulVolume,pSide,pulNumOfTitles) (This)->lpVtbl->GetDVDVolumeInfo(This,pulNumOfVolumes,pulVolume,pSide,pulNumOfTitles) 15309 #define IDvdInfo2_GetDVDTextNumberOfLanguages(This,pulNumOfLangs) (This)->lpVtbl->GetDVDTextNumberOfLanguages(This,pulNumOfLangs) 15310 #define IDvdInfo2_GetDVDTextLanguageInfo(This,ulLangIndex,pulNumOfStrings,pLangCode,pbCharacterSet) (This)->lpVtbl->GetDVDTextLanguageInfo(This,ulLangIndex,pulNumOfStrings,pLangCode,pbCharacterSet) 15311 #define IDvdInfo2_GetDVDTextStringAsNative(This,ulLangIndex,ulStringIndex,pbBuffer,ulMaxBufferSize,pulActualSize,pType) (This)->lpVtbl->GetDVDTextStringAsNative(This,ulLangIndex,ulStringIndex,pbBuffer,ulMaxBufferSize,pulActualSize,pType) 15312 #define IDvdInfo2_GetDVDTextStringAsUnicode(This,ulLangIndex,ulStringIndex,pchwBuffer,ulMaxBufferSize,pulActualSize,pType) (This)->lpVtbl->GetDVDTextStringAsUnicode(This,ulLangIndex,ulStringIndex,pchwBuffer,ulMaxBufferSize,pulActualSize,pType) 15313 #define IDvdInfo2_GetPlayerParentalLevel(This,pulParentalLevel,pbCountryCode) (This)->lpVtbl->GetPlayerParentalLevel(This,pulParentalLevel,pbCountryCode) 15314 #define IDvdInfo2_GetNumberOfChapters(This,ulTitle,pulNumOfChapters) (This)->lpVtbl->GetNumberOfChapters(This,ulTitle,pulNumOfChapters) 15315 #define IDvdInfo2_GetTitleParentalLevels(This,ulTitle,pulParentalLevels) (This)->lpVtbl->GetTitleParentalLevels(This,ulTitle,pulParentalLevels) 15316 #define IDvdInfo2_GetDVDDirectory(This,pszwPath,ulMaxSize,pulActualSize) (This)->lpVtbl->GetDVDDirectory(This,pszwPath,ulMaxSize,pulActualSize) 15317 #define IDvdInfo2_IsAudioStreamEnabled(This,ulStreamNum,pbEnabled) (This)->lpVtbl->IsAudioStreamEnabled(This,ulStreamNum,pbEnabled) 15318 #define IDvdInfo2_GetDiscID(This,pszwPath,pullDiscID) (This)->lpVtbl->GetDiscID(This,pszwPath,pullDiscID) 15319 #define IDvdInfo2_GetState(This,pStateData) (This)->lpVtbl->GetState(This,pStateData) 15320 #define IDvdInfo2_GetMenuLanguages(This,pLanguages,ulMaxLanguages,pulActualLanguages) (This)->lpVtbl->GetMenuLanguages(This,pLanguages,ulMaxLanguages,pulActualLanguages) 15321 #define IDvdInfo2_GetButtonAtPosition(This,point,pulButtonIndex) (This)->lpVtbl->GetButtonAtPosition(This,point,pulButtonIndex) 15322 #define IDvdInfo2_GetCmdFromEvent(This,lParam1,pCmdObj) (This)->lpVtbl->GetCmdFromEvent(This,lParam1,pCmdObj) 15323 #define IDvdInfo2_GetDefaultMenuLanguage(This,pLanguage) (This)->lpVtbl->GetDefaultMenuLanguage(This,pLanguage) 15324 #define IDvdInfo2_GetDefaultAudioLanguage(This,pLanguage,pAudioExtension) (This)->lpVtbl->GetDefaultAudioLanguage(This,pLanguage,pAudioExtension) 15325 #define IDvdInfo2_GetDefaultSubpictureLanguage(This,pLanguage,pSubpictureExtension) (This)->lpVtbl->GetDefaultSubpictureLanguage(This,pLanguage,pSubpictureExtension) 15326 #define IDvdInfo2_GetDecoderCaps(This,pCaps) (This)->lpVtbl->GetDecoderCaps(This,pCaps) 15327 #define IDvdInfo2_GetButtonRect(This,ulButton,pRect) (This)->lpVtbl->GetButtonRect(This,ulButton,pRect) 15328 #define IDvdInfo2_IsSubpictureStreamEnabled(This,ulStreamNum,pbEnabled) (This)->lpVtbl->IsSubpictureStreamEnabled(This,ulStreamNum,pbEnabled) 15329 #endif 15330 #endif 15331 HRESULT WINAPI IDvdInfo2_GetCurrentDomain_Proxy(IDvdInfo2 *This,DVD_DOMAIN *pDomain); 15332 void __RPC_STUB IDvdInfo2_GetCurrentDomain_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15333 HRESULT WINAPI IDvdInfo2_GetCurrentLocation_Proxy(IDvdInfo2 *This,DVD_PLAYBACK_LOCATION2 *pLocation); 15334 void __RPC_STUB IDvdInfo2_GetCurrentLocation_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15335 HRESULT WINAPI IDvdInfo2_GetTotalTitleTime_Proxy(IDvdInfo2 *This,DVD_HMSF_TIMECODE *pTotalTime,ULONG *ulTimeCodeFlags); 15336 void __RPC_STUB IDvdInfo2_GetTotalTitleTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15337 HRESULT WINAPI IDvdInfo2_GetCurrentButton_Proxy(IDvdInfo2 *This,ULONG *pulButtonsAvailable,ULONG *pulCurrentButton); 15338 void __RPC_STUB IDvdInfo2_GetCurrentButton_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15339 HRESULT WINAPI IDvdInfo2_GetCurrentAngle_Proxy(IDvdInfo2 *This,ULONG *pulAnglesAvailable,ULONG *pulCurrentAngle); 15340 void __RPC_STUB IDvdInfo2_GetCurrentAngle_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15341 HRESULT WINAPI IDvdInfo2_GetCurrentAudio_Proxy(IDvdInfo2 *This,ULONG *pulStreamsAvailable,ULONG *pulCurrentStream); 15342 void __RPC_STUB IDvdInfo2_GetCurrentAudio_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15343 HRESULT WINAPI IDvdInfo2_GetCurrentSubpicture_Proxy(IDvdInfo2 *This,ULONG *pulStreamsAvailable,ULONG *pulCurrentStream,WINBOOL *pbIsDisabled); 15344 void __RPC_STUB IDvdInfo2_GetCurrentSubpicture_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15345 HRESULT WINAPI IDvdInfo2_GetCurrentUOPS_Proxy(IDvdInfo2 *This,ULONG *pulUOPs); 15346 void __RPC_STUB IDvdInfo2_GetCurrentUOPS_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15347 HRESULT WINAPI IDvdInfo2_GetAllSPRMs_Proxy(IDvdInfo2 *This,SPRMARRAY *pRegisterArray); 15348 void __RPC_STUB IDvdInfo2_GetAllSPRMs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15349 HRESULT WINAPI IDvdInfo2_GetAllGPRMs_Proxy(IDvdInfo2 *This,GPRMARRAY *pRegisterArray); 15350 void __RPC_STUB IDvdInfo2_GetAllGPRMs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15351 HRESULT WINAPI IDvdInfo2_GetAudioLanguage_Proxy(IDvdInfo2 *This,ULONG ulStream,LCID *pLanguage); 15352 void __RPC_STUB IDvdInfo2_GetAudioLanguage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15353 HRESULT WINAPI IDvdInfo2_GetSubpictureLanguage_Proxy(IDvdInfo2 *This,ULONG ulStream,LCID *pLanguage); 15354 void __RPC_STUB IDvdInfo2_GetSubpictureLanguage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15355 HRESULT WINAPI IDvdInfo2_GetTitleAttributes_Proxy(IDvdInfo2 *This,ULONG ulTitle,DVD_MenuAttributes *pMenu,DVD_TitleAttributes *pTitle); 15356 void __RPC_STUB IDvdInfo2_GetTitleAttributes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15357 HRESULT WINAPI IDvdInfo2_GetVMGAttributes_Proxy(IDvdInfo2 *This,DVD_MenuAttributes *pATR); 15358 void __RPC_STUB IDvdInfo2_GetVMGAttributes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15359 HRESULT WINAPI IDvdInfo2_GetCurrentVideoAttributes_Proxy(IDvdInfo2 *This,DVD_VideoAttributes *pATR); 15360 void __RPC_STUB IDvdInfo2_GetCurrentVideoAttributes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15361 HRESULT WINAPI IDvdInfo2_GetAudioAttributes_Proxy(IDvdInfo2 *This,ULONG ulStream,DVD_AudioAttributes *pATR); 15362 void __RPC_STUB IDvdInfo2_GetAudioAttributes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15363 HRESULT WINAPI IDvdInfo2_GetKaraokeAttributes_Proxy(IDvdInfo2 *This,ULONG ulStream,DVD_KaraokeAttributes *pAttributes); 15364 void __RPC_STUB IDvdInfo2_GetKaraokeAttributes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15365 HRESULT WINAPI IDvdInfo2_GetSubpictureAttributes_Proxy(IDvdInfo2 *This,ULONG ulStream,DVD_SubpictureAttributes *pATR); 15366 void __RPC_STUB IDvdInfo2_GetSubpictureAttributes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15367 HRESULT WINAPI IDvdInfo2_GetDVDVolumeInfo_Proxy(IDvdInfo2 *This,ULONG *pulNumOfVolumes,ULONG *pulVolume,DVD_DISC_SIDE *pSide,ULONG *pulNumOfTitles); 15368 void __RPC_STUB IDvdInfo2_GetDVDVolumeInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15369 HRESULT WINAPI IDvdInfo2_GetDVDTextNumberOfLanguages_Proxy(IDvdInfo2 *This,ULONG *pulNumOfLangs); 15370 void __RPC_STUB IDvdInfo2_GetDVDTextNumberOfLanguages_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15371 HRESULT WINAPI IDvdInfo2_GetDVDTextLanguageInfo_Proxy(IDvdInfo2 *This,ULONG ulLangIndex,ULONG *pulNumOfStrings,LCID *pLangCode,enum DVD_TextCharSet *pbCharacterSet); 15372 void __RPC_STUB IDvdInfo2_GetDVDTextLanguageInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15373 HRESULT WINAPI IDvdInfo2_GetDVDTextStringAsNative_Proxy(IDvdInfo2 *This,ULONG ulLangIndex,ULONG ulStringIndex,BYTE *pbBuffer,ULONG ulMaxBufferSize,ULONG *pulActualSize,enum DVD_TextStringType *pType); 15374 void __RPC_STUB IDvdInfo2_GetDVDTextStringAsNative_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15375 HRESULT WINAPI IDvdInfo2_GetDVDTextStringAsUnicode_Proxy(IDvdInfo2 *This,ULONG ulLangIndex,ULONG ulStringIndex,WCHAR *pchwBuffer,ULONG ulMaxBufferSize,ULONG *pulActualSize,enum DVD_TextStringType *pType); 15376 void __RPC_STUB IDvdInfo2_GetDVDTextStringAsUnicode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15377 HRESULT WINAPI IDvdInfo2_GetPlayerParentalLevel_Proxy(IDvdInfo2 *This,ULONG *pulParentalLevel,BYTE pbCountryCode[2]); 15378 void __RPC_STUB IDvdInfo2_GetPlayerParentalLevel_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15379 HRESULT WINAPI IDvdInfo2_GetNumberOfChapters_Proxy(IDvdInfo2 *This,ULONG ulTitle,ULONG *pulNumOfChapters); 15380 void __RPC_STUB IDvdInfo2_GetNumberOfChapters_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15381 HRESULT WINAPI IDvdInfo2_GetTitleParentalLevels_Proxy(IDvdInfo2 *This,ULONG ulTitle,ULONG *pulParentalLevels); 15382 void __RPC_STUB IDvdInfo2_GetTitleParentalLevels_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15383 HRESULT WINAPI IDvdInfo2_GetDVDDirectory_Proxy(IDvdInfo2 *This,LPWSTR pszwPath,ULONG ulMaxSize,ULONG *pulActualSize); 15384 void __RPC_STUB IDvdInfo2_GetDVDDirectory_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15385 HRESULT WINAPI IDvdInfo2_IsAudioStreamEnabled_Proxy(IDvdInfo2 *This,ULONG ulStreamNum,WINBOOL *pbEnabled); 15386 void __RPC_STUB IDvdInfo2_IsAudioStreamEnabled_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15387 HRESULT WINAPI IDvdInfo2_GetDiscID_Proxy(IDvdInfo2 *This,LPCWSTR pszwPath,ULONGLONG *pullDiscID); 15388 void __RPC_STUB IDvdInfo2_GetDiscID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15389 HRESULT WINAPI IDvdInfo2_GetState_Proxy(IDvdInfo2 *This,IDvdState **pStateData); 15390 void __RPC_STUB IDvdInfo2_GetState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15391 HRESULT WINAPI IDvdInfo2_GetMenuLanguages_Proxy(IDvdInfo2 *This,LCID *pLanguages,ULONG ulMaxLanguages,ULONG *pulActualLanguages); 15392 void __RPC_STUB IDvdInfo2_GetMenuLanguages_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15393 HRESULT WINAPI IDvdInfo2_GetButtonAtPosition_Proxy(IDvdInfo2 *This,POINT point,ULONG *pulButtonIndex); 15394 void __RPC_STUB IDvdInfo2_GetButtonAtPosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15395 HRESULT WINAPI IDvdInfo2_GetCmdFromEvent_Proxy(IDvdInfo2 *This,LONG_PTR lParam1,IDvdCmd **pCmdObj); 15396 void __RPC_STUB IDvdInfo2_GetCmdFromEvent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15397 HRESULT WINAPI IDvdInfo2_GetDefaultMenuLanguage_Proxy(IDvdInfo2 *This,LCID *pLanguage); 15398 void __RPC_STUB IDvdInfo2_GetDefaultMenuLanguage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15399 HRESULT WINAPI IDvdInfo2_GetDefaultAudioLanguage_Proxy(IDvdInfo2 *This,LCID *pLanguage,DVD_AUDIO_LANG_EXT *pAudioExtension); 15400 void __RPC_STUB IDvdInfo2_GetDefaultAudioLanguage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15401 HRESULT WINAPI IDvdInfo2_GetDefaultSubpictureLanguage_Proxy(IDvdInfo2 *This,LCID *pLanguage,DVD_SUBPICTURE_LANG_EXT *pSubpictureExtension); 15402 void __RPC_STUB IDvdInfo2_GetDefaultSubpictureLanguage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15403 HRESULT WINAPI IDvdInfo2_GetDecoderCaps_Proxy(IDvdInfo2 *This,DVD_DECODER_CAPS *pCaps); 15404 void __RPC_STUB IDvdInfo2_GetDecoderCaps_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15405 HRESULT WINAPI IDvdInfo2_GetButtonRect_Proxy(IDvdInfo2 *This,ULONG ulButton,RECT *pRect); 15406 void __RPC_STUB IDvdInfo2_GetButtonRect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15407 HRESULT WINAPI IDvdInfo2_IsSubpictureStreamEnabled_Proxy(IDvdInfo2 *This,ULONG ulStreamNum,WINBOOL *pbEnabled); 15408 void __RPC_STUB IDvdInfo2_IsSubpictureStreamEnabled_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15409 #endif 15410 15411 typedef enum _AM_DVD_GRAPH_FLAGS { 15412 AM_DVD_HWDEC_PREFER = 0x1,AM_DVD_HWDEC_ONLY = 0x2,AM_DVD_SWDEC_PREFER = 0x4,AM_DVD_SWDEC_ONLY = 0x8,AM_DVD_NOVPE = 0x100, 15413 AM_DVD_VMR9_ONLY = 0x800 15414 } AM_DVD_GRAPH_FLAGS; 15415 15416 typedef enum _AM_DVD_STREAM_FLAGS { 15417 AM_DVD_STREAM_VIDEO = 0x1,AM_DVD_STREAM_AUDIO = 0x2,AM_DVD_STREAM_SUBPIC = 0x4 15418 } AM_DVD_STREAM_FLAGS; 15419 15420 typedef struct __MIDL___MIDL_itf_strmif_0389_0001 { 15421 HRESULT hrVPEStatus; 15422 WINBOOL bDvdVolInvalid; 15423 WINBOOL bDvdVolUnknown; 15424 WINBOOL bNoLine21In; 15425 WINBOOL bNoLine21Out; 15426 int iNumStreams; 15427 int iNumStreamsFailed; 15428 DWORD dwFailedStreamsFlag; 15429 } AM_DVD_RENDERSTATUS; 15430 15431 extern RPC_IF_HANDLE __MIDL_itf_strmif_0389_v0_0_c_ifspec; 15432 extern RPC_IF_HANDLE __MIDL_itf_strmif_0389_v0_0_s_ifspec; 15433 #ifndef __IDvdGraphBuilder_INTERFACE_DEFINED__ 15434 #define __IDvdGraphBuilder_INTERFACE_DEFINED__ 15435 EXTERN_C const IID IID_IDvdGraphBuilder; 15436 #if defined(__cplusplus) && !defined(CINTERFACE) 15437 struct IDvdGraphBuilder : public IUnknown { 15438 public: 15439 virtual HRESULT WINAPI GetFiltergraph(IGraphBuilder **ppGB) = 0; 15440 virtual HRESULT WINAPI GetDvdInterface(REFIID riid,void **ppvIF) = 0; 15441 virtual HRESULT WINAPI RenderDvdVideoVolume(LPCWSTR lpcwszPathName,DWORD dwFlags,AM_DVD_RENDERSTATUS *pStatus) = 0; 15442 }; 15443 #else 15444 typedef struct IDvdGraphBuilderVtbl { 15445 BEGIN_INTERFACE 15446 HRESULT (WINAPI *QueryInterface)(IDvdGraphBuilder *This,REFIID riid,void **ppvObject); 15447 ULONG (WINAPI *AddRef)(IDvdGraphBuilder *This); 15448 ULONG (WINAPI *Release)(IDvdGraphBuilder *This); 15449 HRESULT (WINAPI *GetFiltergraph)(IDvdGraphBuilder *This,IGraphBuilder **ppGB); 15450 HRESULT (WINAPI *GetDvdInterface)(IDvdGraphBuilder *This,REFIID riid,void **ppvIF); 15451 HRESULT (WINAPI *RenderDvdVideoVolume)(IDvdGraphBuilder *This,LPCWSTR lpcwszPathName,DWORD dwFlags,AM_DVD_RENDERSTATUS *pStatus); 15452 END_INTERFACE 15453 } IDvdGraphBuilderVtbl; 15454 struct IDvdGraphBuilder { 15455 CONST_VTBL struct IDvdGraphBuilderVtbl *lpVtbl; 15456 }; 15457 #ifdef COBJMACROS 15458 #define IDvdGraphBuilder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15459 #define IDvdGraphBuilder_AddRef(This) (This)->lpVtbl->AddRef(This) 15460 #define IDvdGraphBuilder_Release(This) (This)->lpVtbl->Release(This) 15461 #define IDvdGraphBuilder_GetFiltergraph(This,ppGB) (This)->lpVtbl->GetFiltergraph(This,ppGB) 15462 #define IDvdGraphBuilder_GetDvdInterface(This,riid,ppvIF) (This)->lpVtbl->GetDvdInterface(This,riid,ppvIF) 15463 #define IDvdGraphBuilder_RenderDvdVideoVolume(This,lpcwszPathName,dwFlags,pStatus) (This)->lpVtbl->RenderDvdVideoVolume(This,lpcwszPathName,dwFlags,pStatus) 15464 #endif 15465 #endif 15466 HRESULT WINAPI IDvdGraphBuilder_GetFiltergraph_Proxy(IDvdGraphBuilder *This,IGraphBuilder **ppGB); 15467 void __RPC_STUB IDvdGraphBuilder_GetFiltergraph_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15468 HRESULT WINAPI IDvdGraphBuilder_GetDvdInterface_Proxy(IDvdGraphBuilder *This,REFIID riid,void **ppvIF); 15469 void __RPC_STUB IDvdGraphBuilder_GetDvdInterface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15470 HRESULT WINAPI IDvdGraphBuilder_RenderDvdVideoVolume_Proxy(IDvdGraphBuilder *This,LPCWSTR lpcwszPathName,DWORD dwFlags,AM_DVD_RENDERSTATUS *pStatus); 15471 void __RPC_STUB IDvdGraphBuilder_RenderDvdVideoVolume_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15472 #endif 15473 15474 #ifndef __IDDrawExclModeVideo_INTERFACE_DEFINED__ 15475 #define __IDDrawExclModeVideo_INTERFACE_DEFINED__ 15476 EXTERN_C const IID IID_IDDrawExclModeVideo; 15477 #if defined(__cplusplus) && !defined(CINTERFACE) 15478 struct IDDrawExclModeVideo : public IUnknown { 15479 public: 15480 virtual HRESULT WINAPI SetDDrawObject(IDirectDraw *pDDrawObject) = 0; 15481 virtual HRESULT WINAPI GetDDrawObject(IDirectDraw **ppDDrawObject,WINBOOL *pbUsingExternal) = 0; 15482 virtual HRESULT WINAPI SetDDrawSurface(IDirectDrawSurface *pDDrawSurface) = 0; 15483 virtual HRESULT WINAPI GetDDrawSurface(IDirectDrawSurface **ppDDrawSurface,WINBOOL *pbUsingExternal) = 0; 15484 virtual HRESULT WINAPI SetDrawParameters(const RECT *prcSource,const RECT *prcTarget) = 0; 15485 virtual HRESULT WINAPI GetNativeVideoProps(DWORD *pdwVideoWidth,DWORD *pdwVideoHeight,DWORD *pdwPictAspectRatioX,DWORD *pdwPictAspectRatioY) = 0; 15486 virtual HRESULT WINAPI SetCallbackInterface(IDDrawExclModeVideoCallback *pCallback,DWORD dwFlags) = 0; 15487 }; 15488 #else 15489 typedef struct IDDrawExclModeVideoVtbl { 15490 BEGIN_INTERFACE 15491 HRESULT (WINAPI *QueryInterface)(IDDrawExclModeVideo *This,REFIID riid,void **ppvObject); 15492 ULONG (WINAPI *AddRef)(IDDrawExclModeVideo *This); 15493 ULONG (WINAPI *Release)(IDDrawExclModeVideo *This); 15494 HRESULT (WINAPI *SetDDrawObject)(IDDrawExclModeVideo *This,IDirectDraw *pDDrawObject); 15495 HRESULT (WINAPI *GetDDrawObject)(IDDrawExclModeVideo *This,IDirectDraw **ppDDrawObject,WINBOOL *pbUsingExternal); 15496 HRESULT (WINAPI *SetDDrawSurface)(IDDrawExclModeVideo *This,IDirectDrawSurface *pDDrawSurface); 15497 HRESULT (WINAPI *GetDDrawSurface)(IDDrawExclModeVideo *This,IDirectDrawSurface **ppDDrawSurface,WINBOOL *pbUsingExternal); 15498 HRESULT (WINAPI *SetDrawParameters)(IDDrawExclModeVideo *This,const RECT *prcSource,const RECT *prcTarget); 15499 HRESULT (WINAPI *GetNativeVideoProps)(IDDrawExclModeVideo *This,DWORD *pdwVideoWidth,DWORD *pdwVideoHeight,DWORD *pdwPictAspectRatioX,DWORD *pdwPictAspectRatioY); 15500 HRESULT (WINAPI *SetCallbackInterface)(IDDrawExclModeVideo *This,IDDrawExclModeVideoCallback *pCallback,DWORD dwFlags); 15501 END_INTERFACE 15502 } IDDrawExclModeVideoVtbl; 15503 struct IDDrawExclModeVideo { 15504 CONST_VTBL struct IDDrawExclModeVideoVtbl *lpVtbl; 15505 }; 15506 #ifdef COBJMACROS 15507 #define IDDrawExclModeVideo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15508 #define IDDrawExclModeVideo_AddRef(This) (This)->lpVtbl->AddRef(This) 15509 #define IDDrawExclModeVideo_Release(This) (This)->lpVtbl->Release(This) 15510 #define IDDrawExclModeVideo_SetDDrawObject(This,pDDrawObject) (This)->lpVtbl->SetDDrawObject(This,pDDrawObject) 15511 #define IDDrawExclModeVideo_GetDDrawObject(This,ppDDrawObject,pbUsingExternal) (This)->lpVtbl->GetDDrawObject(This,ppDDrawObject,pbUsingExternal) 15512 #define IDDrawExclModeVideo_SetDDrawSurface(This,pDDrawSurface) (This)->lpVtbl->SetDDrawSurface(This,pDDrawSurface) 15513 #define IDDrawExclModeVideo_GetDDrawSurface(This,ppDDrawSurface,pbUsingExternal) (This)->lpVtbl->GetDDrawSurface(This,ppDDrawSurface,pbUsingExternal) 15514 #define IDDrawExclModeVideo_SetDrawParameters(This,prcSource,prcTarget) (This)->lpVtbl->SetDrawParameters(This,prcSource,prcTarget) 15515 #define IDDrawExclModeVideo_GetNativeVideoProps(This,pdwVideoWidth,pdwVideoHeight,pdwPictAspectRatioX,pdwPictAspectRatioY) (This)->lpVtbl->GetNativeVideoProps(This,pdwVideoWidth,pdwVideoHeight,pdwPictAspectRatioX,pdwPictAspectRatioY) 15516 #define IDDrawExclModeVideo_SetCallbackInterface(This,pCallback,dwFlags) (This)->lpVtbl->SetCallbackInterface(This,pCallback,dwFlags) 15517 #endif 15518 #endif 15519 HRESULT WINAPI IDDrawExclModeVideo_SetDDrawObject_Proxy(IDDrawExclModeVideo *This,IDirectDraw *pDDrawObject); 15520 void __RPC_STUB IDDrawExclModeVideo_SetDDrawObject_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15521 HRESULT WINAPI IDDrawExclModeVideo_GetDDrawObject_Proxy(IDDrawExclModeVideo *This,IDirectDraw **ppDDrawObject,WINBOOL *pbUsingExternal); 15522 void __RPC_STUB IDDrawExclModeVideo_GetDDrawObject_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15523 HRESULT WINAPI IDDrawExclModeVideo_SetDDrawSurface_Proxy(IDDrawExclModeVideo *This,IDirectDrawSurface *pDDrawSurface); 15524 void __RPC_STUB IDDrawExclModeVideo_SetDDrawSurface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15525 HRESULT WINAPI IDDrawExclModeVideo_GetDDrawSurface_Proxy(IDDrawExclModeVideo *This,IDirectDrawSurface **ppDDrawSurface,WINBOOL *pbUsingExternal); 15526 void __RPC_STUB IDDrawExclModeVideo_GetDDrawSurface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15527 HRESULT WINAPI IDDrawExclModeVideo_SetDrawParameters_Proxy(IDDrawExclModeVideo *This,const RECT *prcSource,const RECT *prcTarget); 15528 void __RPC_STUB IDDrawExclModeVideo_SetDrawParameters_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15529 HRESULT WINAPI IDDrawExclModeVideo_GetNativeVideoProps_Proxy(IDDrawExclModeVideo *This,DWORD *pdwVideoWidth,DWORD *pdwVideoHeight,DWORD *pdwPictAspectRatioX,DWORD *pdwPictAspectRatioY); 15530 void __RPC_STUB IDDrawExclModeVideo_GetNativeVideoProps_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15531 HRESULT WINAPI IDDrawExclModeVideo_SetCallbackInterface_Proxy(IDDrawExclModeVideo *This,IDDrawExclModeVideoCallback *pCallback,DWORD dwFlags); 15532 void __RPC_STUB IDDrawExclModeVideo_SetCallbackInterface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15533 #endif 15534 15535 enum _AM_OVERLAY_NOTIFY_FLAGS { 15536 AM_OVERLAY_NOTIFY_VISIBLE_CHANGE = 0x1,AM_OVERLAY_NOTIFY_SOURCE_CHANGE = 0x2,AM_OVERLAY_NOTIFY_DEST_CHANGE = 0x4 15537 }; 15538 15539 extern RPC_IF_HANDLE __MIDL_itf_strmif_0391_v0_0_c_ifspec; 15540 extern RPC_IF_HANDLE __MIDL_itf_strmif_0391_v0_0_s_ifspec; 15541 #ifndef __IDDrawExclModeVideoCallback_INTERFACE_DEFINED__ 15542 #define __IDDrawExclModeVideoCallback_INTERFACE_DEFINED__ 15543 EXTERN_C const IID IID_IDDrawExclModeVideoCallback; 15544 #if defined(__cplusplus) && !defined(CINTERFACE) 15545 struct IDDrawExclModeVideoCallback : public IUnknown { 15546 public: 15547 virtual HRESULT WINAPI OnUpdateOverlay(WINBOOL bBefore,DWORD dwFlags,WINBOOL bOldVisible,const RECT *prcOldSrc,const RECT *prcOldDest,WINBOOL bNewVisible,const RECT *prcNewSrc,const RECT *prcNewDest) = 0; 15548 virtual HRESULT WINAPI OnUpdateColorKey(const COLORKEY *pKey,DWORD dwColor) = 0; 15549 virtual HRESULT WINAPI OnUpdateSize(DWORD dwWidth,DWORD dwHeight,DWORD dwARWidth,DWORD dwARHeight) = 0; 15550 }; 15551 #else 15552 typedef struct IDDrawExclModeVideoCallbackVtbl { 15553 BEGIN_INTERFACE 15554 HRESULT (WINAPI *QueryInterface)(IDDrawExclModeVideoCallback *This,REFIID riid,void **ppvObject); 15555 ULONG (WINAPI *AddRef)(IDDrawExclModeVideoCallback *This); 15556 ULONG (WINAPI *Release)(IDDrawExclModeVideoCallback *This); 15557 HRESULT (WINAPI *OnUpdateOverlay)(IDDrawExclModeVideoCallback *This,WINBOOL bBefore,DWORD dwFlags,WINBOOL bOldVisible,const RECT *prcOldSrc,const RECT *prcOldDest,WINBOOL bNewVisible,const RECT *prcNewSrc,const RECT *prcNewDest); 15558 HRESULT (WINAPI *OnUpdateColorKey)(IDDrawExclModeVideoCallback *This,const COLORKEY *pKey,DWORD dwColor); 15559 HRESULT (WINAPI *OnUpdateSize)(IDDrawExclModeVideoCallback *This,DWORD dwWidth,DWORD dwHeight,DWORD dwARWidth,DWORD dwARHeight); 15560 END_INTERFACE 15561 } IDDrawExclModeVideoCallbackVtbl; 15562 struct IDDrawExclModeVideoCallback { 15563 CONST_VTBL struct IDDrawExclModeVideoCallbackVtbl *lpVtbl; 15564 }; 15565 #ifdef COBJMACROS 15566 #define IDDrawExclModeVideoCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15567 #define IDDrawExclModeVideoCallback_AddRef(This) (This)->lpVtbl->AddRef(This) 15568 #define IDDrawExclModeVideoCallback_Release(This) (This)->lpVtbl->Release(This) 15569 #define IDDrawExclModeVideoCallback_OnUpdateOverlay(This,bBefore,dwFlags,bOldVisible,prcOldSrc,prcOldDest,bNewVisible,prcNewSrc,prcNewDest) (This)->lpVtbl->OnUpdateOverlay(This,bBefore,dwFlags,bOldVisible,prcOldSrc,prcOldDest,bNewVisible,prcNewSrc,prcNewDest) 15570 #define IDDrawExclModeVideoCallback_OnUpdateColorKey(This,pKey,dwColor) (This)->lpVtbl->OnUpdateColorKey(This,pKey,dwColor) 15571 #define IDDrawExclModeVideoCallback_OnUpdateSize(This,dwWidth,dwHeight,dwARWidth,dwARHeight) (This)->lpVtbl->OnUpdateSize(This,dwWidth,dwHeight,dwARWidth,dwARHeight) 15572 #endif 15573 #endif 15574 HRESULT WINAPI IDDrawExclModeVideoCallback_OnUpdateOverlay_Proxy(IDDrawExclModeVideoCallback *This,WINBOOL bBefore,DWORD dwFlags,WINBOOL bOldVisible,const RECT *prcOldSrc,const RECT *prcOldDest,WINBOOL bNewVisible,const RECT *prcNewSrc,const RECT *prcNewDest); 15575 void __RPC_STUB IDDrawExclModeVideoCallback_OnUpdateOverlay_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15576 HRESULT WINAPI IDDrawExclModeVideoCallback_OnUpdateColorKey_Proxy(IDDrawExclModeVideoCallback *This,const COLORKEY *pKey,DWORD dwColor); 15577 void __RPC_STUB IDDrawExclModeVideoCallback_OnUpdateColorKey_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15578 HRESULT WINAPI IDDrawExclModeVideoCallback_OnUpdateSize_Proxy(IDDrawExclModeVideoCallback *This,DWORD dwWidth,DWORD dwHeight,DWORD dwARWidth,DWORD dwARHeight); 15579 void __RPC_STUB IDDrawExclModeVideoCallback_OnUpdateSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15580 #endif 15581 15582 extern RPC_IF_HANDLE __MIDL_itf_strmif_0392_v0_0_c_ifspec; 15583 extern RPC_IF_HANDLE __MIDL_itf_strmif_0392_v0_0_s_ifspec; 15584 #ifndef __IPinConnection_INTERFACE_DEFINED__ 15585 #define __IPinConnection_INTERFACE_DEFINED__ 15586 EXTERN_C const IID IID_IPinConnection; 15587 #if defined(__cplusplus) && !defined(CINTERFACE) 15588 struct IPinConnection : public IUnknown { 15589 public: 15590 virtual HRESULT WINAPI DynamicQueryAccept(const AM_MEDIA_TYPE *pmt) = 0; 15591 virtual HRESULT WINAPI NotifyEndOfStream(HANDLE hNotifyEvent) = 0; 15592 virtual HRESULT WINAPI IsEndPin(void) = 0; 15593 virtual HRESULT WINAPI DynamicDisconnect(void) = 0; 15594 }; 15595 #else 15596 typedef struct IPinConnectionVtbl { 15597 BEGIN_INTERFACE 15598 HRESULT (WINAPI *QueryInterface)(IPinConnection *This,REFIID riid,void **ppvObject); 15599 ULONG (WINAPI *AddRef)(IPinConnection *This); 15600 ULONG (WINAPI *Release)(IPinConnection *This); 15601 HRESULT (WINAPI *DynamicQueryAccept)(IPinConnection *This,const AM_MEDIA_TYPE *pmt); 15602 HRESULT (WINAPI *NotifyEndOfStream)(IPinConnection *This,HANDLE hNotifyEvent); 15603 HRESULT (WINAPI *IsEndPin)(IPinConnection *This); 15604 HRESULT (WINAPI *DynamicDisconnect)(IPinConnection *This); 15605 END_INTERFACE 15606 } IPinConnectionVtbl; 15607 struct IPinConnection { 15608 CONST_VTBL struct IPinConnectionVtbl *lpVtbl; 15609 }; 15610 #ifdef COBJMACROS 15611 #define IPinConnection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15612 #define IPinConnection_AddRef(This) (This)->lpVtbl->AddRef(This) 15613 #define IPinConnection_Release(This) (This)->lpVtbl->Release(This) 15614 #define IPinConnection_DynamicQueryAccept(This,pmt) (This)->lpVtbl->DynamicQueryAccept(This,pmt) 15615 #define IPinConnection_NotifyEndOfStream(This,hNotifyEvent) (This)->lpVtbl->NotifyEndOfStream(This,hNotifyEvent) 15616 #define IPinConnection_IsEndPin(This) (This)->lpVtbl->IsEndPin(This) 15617 #define IPinConnection_DynamicDisconnect(This) (This)->lpVtbl->DynamicDisconnect(This) 15618 #endif 15619 #endif 15620 HRESULT WINAPI IPinConnection_DynamicQueryAccept_Proxy(IPinConnection *This,const AM_MEDIA_TYPE *pmt); 15621 void __RPC_STUB IPinConnection_DynamicQueryAccept_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15622 HRESULT WINAPI IPinConnection_NotifyEndOfStream_Proxy(IPinConnection *This,HANDLE hNotifyEvent); 15623 void __RPC_STUB IPinConnection_NotifyEndOfStream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15624 HRESULT WINAPI IPinConnection_IsEndPin_Proxy(IPinConnection *This); 15625 void __RPC_STUB IPinConnection_IsEndPin_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15626 HRESULT WINAPI IPinConnection_DynamicDisconnect_Proxy(IPinConnection *This); 15627 void __RPC_STUB IPinConnection_DynamicDisconnect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15628 #endif 15629 15630 #ifndef __IPinFlowControl_INTERFACE_DEFINED__ 15631 #define __IPinFlowControl_INTERFACE_DEFINED__ 15632 EXTERN_C const IID IID_IPinFlowControl; 15633 #if defined(__cplusplus) && !defined(CINTERFACE) 15634 struct IPinFlowControl : public IUnknown { 15635 public: 15636 virtual HRESULT WINAPI Block(DWORD dwBlockFlags,HANDLE hEvent) = 0; 15637 }; 15638 #else 15639 typedef struct IPinFlowControlVtbl { 15640 BEGIN_INTERFACE 15641 HRESULT (WINAPI *QueryInterface)(IPinFlowControl *This,REFIID riid,void **ppvObject); 15642 ULONG (WINAPI *AddRef)(IPinFlowControl *This); 15643 ULONG (WINAPI *Release)(IPinFlowControl *This); 15644 HRESULT (WINAPI *Block)(IPinFlowControl *This,DWORD dwBlockFlags,HANDLE hEvent); 15645 END_INTERFACE 15646 } IPinFlowControlVtbl; 15647 struct IPinFlowControl { 15648 CONST_VTBL struct IPinFlowControlVtbl *lpVtbl; 15649 }; 15650 #ifdef COBJMACROS 15651 #define IPinFlowControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15652 #define IPinFlowControl_AddRef(This) (This)->lpVtbl->AddRef(This) 15653 #define IPinFlowControl_Release(This) (This)->lpVtbl->Release(This) 15654 #define IPinFlowControl_Block(This,dwBlockFlags,hEvent) (This)->lpVtbl->Block(This,dwBlockFlags,hEvent) 15655 #endif 15656 #endif 15657 HRESULT WINAPI IPinFlowControl_Block_Proxy(IPinFlowControl *This,DWORD dwBlockFlags,HANDLE hEvent); 15658 void __RPC_STUB IPinFlowControl_Block_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15659 #endif 15660 15661 enum _AM_PIN_FLOW_CONTROL_BLOCK_FLAGS { 15662 AM_PIN_FLOW_CONTROL_BLOCK = 0x1 15663 }; 15664 typedef enum _AM_GRAPH_CONFIG_RECONNECT_FLAGS { 15665 AM_GRAPH_CONFIG_RECONNECT_DIRECTCONNECT = 0x1,AM_GRAPH_CONFIG_RECONNECT_CACHE_REMOVED_FILTERS = 0x2, 15666 AM_GRAPH_CONFIG_RECONNECT_USE_ONLY_CACHED_FILTERS = 0x4 15667 } AM_GRAPH_CONFIG_RECONNECT_FLAGS; 15668 15669 enum _REM_FILTER_FLAGS { 15670 REMFILTERF_LEAVECONNECTED = 0x1 15671 }; 15672 15673 typedef enum _AM_FILTER_FLAGS { 15674 AM_FILTER_FLAGS_REMOVABLE = 0x1 15675 } AM_FILTER_FLAGS; 15676 15677 extern RPC_IF_HANDLE __MIDL_itf_strmif_0394_v0_0_c_ifspec; 15678 extern RPC_IF_HANDLE __MIDL_itf_strmif_0394_v0_0_s_ifspec; 15679 #ifndef __IGraphConfig_INTERFACE_DEFINED__ 15680 #define __IGraphConfig_INTERFACE_DEFINED__ 15681 EXTERN_C const IID IID_IGraphConfig; 15682 #if defined(__cplusplus) && !defined(CINTERFACE) 15683 struct IGraphConfig : public IUnknown { 15684 public: 15685 virtual HRESULT WINAPI Reconnect(IPin *pOutputPin,IPin *pInputPin,const AM_MEDIA_TYPE *pmtFirstConnection,IBaseFilter *pUsingFilter,HANDLE hAbortEvent,DWORD dwFlags) = 0; 15686 virtual HRESULT WINAPI Reconfigure(IGraphConfigCallback *pCallback,PVOID pvContext,DWORD dwFlags,HANDLE hAbortEvent) = 0; 15687 virtual HRESULT WINAPI AddFilterToCache(IBaseFilter *pFilter) = 0; 15688 virtual HRESULT WINAPI EnumCacheFilter(IEnumFilters **pEnum) = 0; 15689 virtual HRESULT WINAPI RemoveFilterFromCache(IBaseFilter *pFilter) = 0; 15690 virtual HRESULT WINAPI GetStartTime(REFERENCE_TIME *prtStart) = 0; 15691 virtual HRESULT WINAPI PushThroughData(IPin *pOutputPin,IPinConnection *pConnection,HANDLE hEventAbort) = 0; 15692 virtual HRESULT WINAPI SetFilterFlags(IBaseFilter *pFilter,DWORD dwFlags) = 0; 15693 virtual HRESULT WINAPI GetFilterFlags(IBaseFilter *pFilter,DWORD *pdwFlags) = 0; 15694 virtual HRESULT WINAPI RemoveFilterEx(IBaseFilter *pFilter,DWORD Flags) = 0; 15695 }; 15696 #else 15697 typedef struct IGraphConfigVtbl { 15698 BEGIN_INTERFACE 15699 HRESULT (WINAPI *QueryInterface)(IGraphConfig *This,REFIID riid,void **ppvObject); 15700 ULONG (WINAPI *AddRef)(IGraphConfig *This); 15701 ULONG (WINAPI *Release)(IGraphConfig *This); 15702 HRESULT (WINAPI *Reconnect)(IGraphConfig *This,IPin *pOutputPin,IPin *pInputPin,const AM_MEDIA_TYPE *pmtFirstConnection,IBaseFilter *pUsingFilter,HANDLE hAbortEvent,DWORD dwFlags); 15703 HRESULT (WINAPI *Reconfigure)(IGraphConfig *This,IGraphConfigCallback *pCallback,PVOID pvContext,DWORD dwFlags,HANDLE hAbortEvent); 15704 HRESULT (WINAPI *AddFilterToCache)(IGraphConfig *This,IBaseFilter *pFilter); 15705 HRESULT (WINAPI *EnumCacheFilter)(IGraphConfig *This,IEnumFilters **pEnum); 15706 HRESULT (WINAPI *RemoveFilterFromCache)(IGraphConfig *This,IBaseFilter *pFilter); 15707 HRESULT (WINAPI *GetStartTime)(IGraphConfig *This,REFERENCE_TIME *prtStart); 15708 HRESULT (WINAPI *PushThroughData)(IGraphConfig *This,IPin *pOutputPin,IPinConnection *pConnection,HANDLE hEventAbort); 15709 HRESULT (WINAPI *SetFilterFlags)(IGraphConfig *This,IBaseFilter *pFilter,DWORD dwFlags); 15710 HRESULT (WINAPI *GetFilterFlags)(IGraphConfig *This,IBaseFilter *pFilter,DWORD *pdwFlags); 15711 HRESULT (WINAPI *RemoveFilterEx)(IGraphConfig *This,IBaseFilter *pFilter,DWORD Flags); 15712 END_INTERFACE 15713 } IGraphConfigVtbl; 15714 struct IGraphConfig { 15715 CONST_VTBL struct IGraphConfigVtbl *lpVtbl; 15716 }; 15717 #ifdef COBJMACROS 15718 #define IGraphConfig_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15719 #define IGraphConfig_AddRef(This) (This)->lpVtbl->AddRef(This) 15720 #define IGraphConfig_Release(This) (This)->lpVtbl->Release(This) 15721 #define IGraphConfig_Reconnect(This,pOutputPin,pInputPin,pmtFirstConnection,pUsingFilter,hAbortEvent,dwFlags) (This)->lpVtbl->Reconnect(This,pOutputPin,pInputPin,pmtFirstConnection,pUsingFilter,hAbortEvent,dwFlags) 15722 #define IGraphConfig_Reconfigure(This,pCallback,pvContext,dwFlags,hAbortEvent) (This)->lpVtbl->Reconfigure(This,pCallback,pvContext,dwFlags,hAbortEvent) 15723 #define IGraphConfig_AddFilterToCache(This,pFilter) (This)->lpVtbl->AddFilterToCache(This,pFilter) 15724 #define IGraphConfig_EnumCacheFilter(This,pEnum) (This)->lpVtbl->EnumCacheFilter(This,pEnum) 15725 #define IGraphConfig_RemoveFilterFromCache(This,pFilter) (This)->lpVtbl->RemoveFilterFromCache(This,pFilter) 15726 #define IGraphConfig_GetStartTime(This,prtStart) (This)->lpVtbl->GetStartTime(This,prtStart) 15727 #define IGraphConfig_PushThroughData(This,pOutputPin,pConnection,hEventAbort) (This)->lpVtbl->PushThroughData(This,pOutputPin,pConnection,hEventAbort) 15728 #define IGraphConfig_SetFilterFlags(This,pFilter,dwFlags) (This)->lpVtbl->SetFilterFlags(This,pFilter,dwFlags) 15729 #define IGraphConfig_GetFilterFlags(This,pFilter,pdwFlags) (This)->lpVtbl->GetFilterFlags(This,pFilter,pdwFlags) 15730 #define IGraphConfig_RemoveFilterEx(This,pFilter,Flags) (This)->lpVtbl->RemoveFilterEx(This,pFilter,Flags) 15731 #endif 15732 #endif 15733 HRESULT WINAPI IGraphConfig_Reconnect_Proxy(IGraphConfig *This,IPin *pOutputPin,IPin *pInputPin,const AM_MEDIA_TYPE *pmtFirstConnection,IBaseFilter *pUsingFilter,HANDLE hAbortEvent,DWORD dwFlags); 15734 void __RPC_STUB IGraphConfig_Reconnect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15735 HRESULT WINAPI IGraphConfig_Reconfigure_Proxy(IGraphConfig *This,IGraphConfigCallback *pCallback,PVOID pvContext,DWORD dwFlags,HANDLE hAbortEvent); 15736 void __RPC_STUB IGraphConfig_Reconfigure_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15737 HRESULT WINAPI IGraphConfig_AddFilterToCache_Proxy(IGraphConfig *This,IBaseFilter *pFilter); 15738 void __RPC_STUB IGraphConfig_AddFilterToCache_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15739 HRESULT WINAPI IGraphConfig_EnumCacheFilter_Proxy(IGraphConfig *This,IEnumFilters **pEnum); 15740 void __RPC_STUB IGraphConfig_EnumCacheFilter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15741 HRESULT WINAPI IGraphConfig_RemoveFilterFromCache_Proxy(IGraphConfig *This,IBaseFilter *pFilter); 15742 void __RPC_STUB IGraphConfig_RemoveFilterFromCache_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15743 HRESULT WINAPI IGraphConfig_GetStartTime_Proxy(IGraphConfig *This,REFERENCE_TIME *prtStart); 15744 void __RPC_STUB IGraphConfig_GetStartTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15745 HRESULT WINAPI IGraphConfig_PushThroughData_Proxy(IGraphConfig *This,IPin *pOutputPin,IPinConnection *pConnection,HANDLE hEventAbort); 15746 void __RPC_STUB IGraphConfig_PushThroughData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15747 HRESULT WINAPI IGraphConfig_SetFilterFlags_Proxy(IGraphConfig *This,IBaseFilter *pFilter,DWORD dwFlags); 15748 void __RPC_STUB IGraphConfig_SetFilterFlags_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15749 HRESULT WINAPI IGraphConfig_GetFilterFlags_Proxy(IGraphConfig *This,IBaseFilter *pFilter,DWORD *pdwFlags); 15750 void __RPC_STUB IGraphConfig_GetFilterFlags_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15751 HRESULT WINAPI IGraphConfig_RemoveFilterEx_Proxy(IGraphConfig *This,IBaseFilter *pFilter,DWORD Flags); 15752 void __RPC_STUB IGraphConfig_RemoveFilterEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15753 #endif 15754 15755 #ifndef __IGraphConfigCallback_INTERFACE_DEFINED__ 15756 #define __IGraphConfigCallback_INTERFACE_DEFINED__ 15757 EXTERN_C const IID IID_IGraphConfigCallback; 15758 #if defined(__cplusplus) && !defined(CINTERFACE) 15759 struct IGraphConfigCallback : public IUnknown { 15760 public: 15761 virtual HRESULT WINAPI Reconfigure(PVOID pvContext,DWORD dwFlags) = 0; 15762 }; 15763 #else 15764 typedef struct IGraphConfigCallbackVtbl { 15765 BEGIN_INTERFACE 15766 HRESULT (WINAPI *QueryInterface)(IGraphConfigCallback *This,REFIID riid,void **ppvObject); 15767 ULONG (WINAPI *AddRef)(IGraphConfigCallback *This); 15768 ULONG (WINAPI *Release)(IGraphConfigCallback *This); 15769 HRESULT (WINAPI *Reconfigure)(IGraphConfigCallback *This,PVOID pvContext,DWORD dwFlags); 15770 END_INTERFACE 15771 } IGraphConfigCallbackVtbl; 15772 struct IGraphConfigCallback { 15773 CONST_VTBL struct IGraphConfigCallbackVtbl *lpVtbl; 15774 }; 15775 #ifdef COBJMACROS 15776 #define IGraphConfigCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15777 #define IGraphConfigCallback_AddRef(This) (This)->lpVtbl->AddRef(This) 15778 #define IGraphConfigCallback_Release(This) (This)->lpVtbl->Release(This) 15779 #define IGraphConfigCallback_Reconfigure(This,pvContext,dwFlags) (This)->lpVtbl->Reconfigure(This,pvContext,dwFlags) 15780 #endif 15781 #endif 15782 HRESULT WINAPI IGraphConfigCallback_Reconfigure_Proxy(IGraphConfigCallback *This,PVOID pvContext,DWORD dwFlags); 15783 void __RPC_STUB IGraphConfigCallback_Reconfigure_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15784 #endif 15785 15786 #ifndef __IFilterChain_INTERFACE_DEFINED__ 15787 #define __IFilterChain_INTERFACE_DEFINED__ 15788 EXTERN_C const IID IID_IFilterChain; 15789 #if defined(__cplusplus) && !defined(CINTERFACE) 15790 struct IFilterChain : public IUnknown { 15791 public: 15792 virtual HRESULT WINAPI StartChain(IBaseFilter *pStartFilter,IBaseFilter *pEndFilter) = 0; 15793 virtual HRESULT WINAPI PauseChain(IBaseFilter *pStartFilter,IBaseFilter *pEndFilter) = 0; 15794 virtual HRESULT WINAPI StopChain(IBaseFilter *pStartFilter,IBaseFilter *pEndFilter) = 0; 15795 virtual HRESULT WINAPI RemoveChain(IBaseFilter *pStartFilter,IBaseFilter *pEndFilter) = 0; 15796 }; 15797 #else 15798 typedef struct IFilterChainVtbl { 15799 BEGIN_INTERFACE 15800 HRESULT (WINAPI *QueryInterface)(IFilterChain *This,REFIID riid,void **ppvObject); 15801 ULONG (WINAPI *AddRef)(IFilterChain *This); 15802 ULONG (WINAPI *Release)(IFilterChain *This); 15803 HRESULT (WINAPI *StartChain)(IFilterChain *This,IBaseFilter *pStartFilter,IBaseFilter *pEndFilter); 15804 HRESULT (WINAPI *PauseChain)(IFilterChain *This,IBaseFilter *pStartFilter,IBaseFilter *pEndFilter); 15805 HRESULT (WINAPI *StopChain)(IFilterChain *This,IBaseFilter *pStartFilter,IBaseFilter *pEndFilter); 15806 HRESULT (WINAPI *RemoveChain)(IFilterChain *This,IBaseFilter *pStartFilter,IBaseFilter *pEndFilter); 15807 END_INTERFACE 15808 } IFilterChainVtbl; 15809 struct IFilterChain { 15810 CONST_VTBL struct IFilterChainVtbl *lpVtbl; 15811 }; 15812 #ifdef COBJMACROS 15813 #define IFilterChain_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15814 #define IFilterChain_AddRef(This) (This)->lpVtbl->AddRef(This) 15815 #define IFilterChain_Release(This) (This)->lpVtbl->Release(This) 15816 #define IFilterChain_StartChain(This,pStartFilter,pEndFilter) (This)->lpVtbl->StartChain(This,pStartFilter,pEndFilter) 15817 #define IFilterChain_PauseChain(This,pStartFilter,pEndFilter) (This)->lpVtbl->PauseChain(This,pStartFilter,pEndFilter) 15818 #define IFilterChain_StopChain(This,pStartFilter,pEndFilter) (This)->lpVtbl->StopChain(This,pStartFilter,pEndFilter) 15819 #define IFilterChain_RemoveChain(This,pStartFilter,pEndFilter) (This)->lpVtbl->RemoveChain(This,pStartFilter,pEndFilter) 15820 #endif 15821 #endif 15822 HRESULT WINAPI IFilterChain_StartChain_Proxy(IFilterChain *This,IBaseFilter *pStartFilter,IBaseFilter *pEndFilter); 15823 void __RPC_STUB IFilterChain_StartChain_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15824 HRESULT WINAPI IFilterChain_PauseChain_Proxy(IFilterChain *This,IBaseFilter *pStartFilter,IBaseFilter *pEndFilter); 15825 void __RPC_STUB IFilterChain_PauseChain_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15826 HRESULT WINAPI IFilterChain_StopChain_Proxy(IFilterChain *This,IBaseFilter *pStartFilter,IBaseFilter *pEndFilter); 15827 void __RPC_STUB IFilterChain_StopChain_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15828 HRESULT WINAPI IFilterChain_RemoveChain_Proxy(IFilterChain *This,IBaseFilter *pStartFilter,IBaseFilter *pEndFilter); 15829 void __RPC_STUB IFilterChain_RemoveChain_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15830 #endif 15831 15832 #ifdef MINGW_HAS_DDRAW_H 15833 #include <ddraw.h> 15834 #endif 15835 15836 typedef enum __MIDL___MIDL_itf_strmif_0397_0002 { 15837 VMRSample_SyncPoint = 0x1,VMRSample_Preroll = 0x2,VMRSample_Discontinuity = 0x4,VMRSample_TimeValid = 0x8,VMRSample_SrcDstRectsValid = 0x10 15838 } VMRPresentationFlags; 15839 15840 typedef struct tagVMRPRESENTATIONINFO { 15841 DWORD dwFlags; 15842 LPDIRECTDRAWSURFACE7 lpSurf; 15843 REFERENCE_TIME rtStart; 15844 REFERENCE_TIME rtEnd; 15845 SIZE szAspectRatio; 15846 RECT rcSrc; 15847 RECT rcDst; 15848 DWORD dwTypeSpecificFlags; 15849 DWORD dwInterlaceFlags; 15850 } VMRPRESENTATIONINFO; 15851 15852 extern RPC_IF_HANDLE __MIDL_itf_strmif_0397_v0_0_c_ifspec; 15853 extern RPC_IF_HANDLE __MIDL_itf_strmif_0397_v0_0_s_ifspec; 15854 #ifndef __IVMRImagePresenter_INTERFACE_DEFINED__ 15855 #define __IVMRImagePresenter_INTERFACE_DEFINED__ 15856 EXTERN_C const IID IID_IVMRImagePresenter; 15857 #if defined(__cplusplus) && !defined(CINTERFACE) 15858 struct IVMRImagePresenter : public IUnknown { 15859 public: 15860 virtual HRESULT WINAPI StartPresenting(DWORD_PTR dwUserID) = 0; 15861 virtual HRESULT WINAPI StopPresenting(DWORD_PTR dwUserID) = 0; 15862 virtual HRESULT WINAPI PresentImage(DWORD_PTR dwUserID,VMRPRESENTATIONINFO *lpPresInfo) = 0; 15863 }; 15864 #else 15865 typedef struct IVMRImagePresenterVtbl { 15866 BEGIN_INTERFACE 15867 HRESULT (WINAPI *QueryInterface)(IVMRImagePresenter *This,REFIID riid,void **ppvObject); 15868 ULONG (WINAPI *AddRef)(IVMRImagePresenter *This); 15869 ULONG (WINAPI *Release)(IVMRImagePresenter *This); 15870 HRESULT (WINAPI *StartPresenting)(IVMRImagePresenter *This,DWORD_PTR dwUserID); 15871 HRESULT (WINAPI *StopPresenting)(IVMRImagePresenter *This,DWORD_PTR dwUserID); 15872 HRESULT (WINAPI *PresentImage)(IVMRImagePresenter *This,DWORD_PTR dwUserID,VMRPRESENTATIONINFO *lpPresInfo); 15873 END_INTERFACE 15874 } IVMRImagePresenterVtbl; 15875 struct IVMRImagePresenter { 15876 CONST_VTBL struct IVMRImagePresenterVtbl *lpVtbl; 15877 }; 15878 #ifdef COBJMACROS 15879 #define IVMRImagePresenter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15880 #define IVMRImagePresenter_AddRef(This) (This)->lpVtbl->AddRef(This) 15881 #define IVMRImagePresenter_Release(This) (This)->lpVtbl->Release(This) 15882 #define IVMRImagePresenter_StartPresenting(This,dwUserID) (This)->lpVtbl->StartPresenting(This,dwUserID) 15883 #define IVMRImagePresenter_StopPresenting(This,dwUserID) (This)->lpVtbl->StopPresenting(This,dwUserID) 15884 #define IVMRImagePresenter_PresentImage(This,dwUserID,lpPresInfo) (This)->lpVtbl->PresentImage(This,dwUserID,lpPresInfo) 15885 #endif 15886 #endif 15887 HRESULT WINAPI IVMRImagePresenter_StartPresenting_Proxy(IVMRImagePresenter *This,DWORD_PTR dwUserID); 15888 void __RPC_STUB IVMRImagePresenter_StartPresenting_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15889 HRESULT WINAPI IVMRImagePresenter_StopPresenting_Proxy(IVMRImagePresenter *This,DWORD_PTR dwUserID); 15890 void __RPC_STUB IVMRImagePresenter_StopPresenting_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15891 HRESULT WINAPI IVMRImagePresenter_PresentImage_Proxy(IVMRImagePresenter *This,DWORD_PTR dwUserID,VMRPRESENTATIONINFO *lpPresInfo); 15892 void __RPC_STUB IVMRImagePresenter_PresentImage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15893 #endif 15894 15895 typedef enum __MIDL___MIDL_itf_strmif_0398_0001 { 15896 AMAP_PIXELFORMAT_VALID = 0x1,AMAP_3D_TARGET = 0x2,AMAP_ALLOW_SYSMEM = 0x4,AMAP_FORCE_SYSMEM = 0x8,AMAP_DIRECTED_FLIP = 0x10,AMAP_DXVA_TARGET = 0x20 15897 } VMRSurfaceAllocationFlags; 15898 15899 typedef struct tagVMRALLOCATIONINFO { 15900 DWORD dwFlags; 15901 LPBITMAPINFOHEADER lpHdr; 15902 LPDDPIXELFORMAT lpPixFmt; 15903 SIZE szAspectRatio; 15904 DWORD dwMinBuffers; 15905 DWORD dwMaxBuffers; 15906 DWORD dwInterlaceFlags; 15907 SIZE szNativeSize; 15908 } VMRALLOCATIONINFO; 15909 15910 extern RPC_IF_HANDLE __MIDL_itf_strmif_0398_v0_0_c_ifspec; 15911 extern RPC_IF_HANDLE __MIDL_itf_strmif_0398_v0_0_s_ifspec; 15912 #ifndef __IVMRSurfaceAllocator_INTERFACE_DEFINED__ 15913 #define __IVMRSurfaceAllocator_INTERFACE_DEFINED__ 15914 EXTERN_C const IID IID_IVMRSurfaceAllocator; 15915 #if defined(__cplusplus) && !defined(CINTERFACE) 15916 struct IVMRSurfaceAllocator : public IUnknown { 15917 public: 15918 virtual HRESULT WINAPI AllocateSurface(DWORD_PTR dwUserID,VMRALLOCATIONINFO *lpAllocInfo,DWORD *lpdwActualBuffers,LPDIRECTDRAWSURFACE7 *lplpSurface) = 0; 15919 virtual HRESULT WINAPI FreeSurface(DWORD_PTR dwID) = 0; 15920 virtual HRESULT WINAPI PrepareSurface(DWORD_PTR dwUserID,LPDIRECTDRAWSURFACE7 lpSurface,DWORD dwSurfaceFlags) = 0; 15921 virtual HRESULT WINAPI AdviseNotify(IVMRSurfaceAllocatorNotify *lpIVMRSurfAllocNotify) = 0; 15922 }; 15923 #else 15924 typedef struct IVMRSurfaceAllocatorVtbl { 15925 BEGIN_INTERFACE 15926 HRESULT (WINAPI *QueryInterface)(IVMRSurfaceAllocator *This,REFIID riid,void **ppvObject); 15927 ULONG (WINAPI *AddRef)(IVMRSurfaceAllocator *This); 15928 ULONG (WINAPI *Release)(IVMRSurfaceAllocator *This); 15929 HRESULT (WINAPI *AllocateSurface)(IVMRSurfaceAllocator *This,DWORD_PTR dwUserID,VMRALLOCATIONINFO *lpAllocInfo,DWORD *lpdwActualBuffers,LPDIRECTDRAWSURFACE7 *lplpSurface); 15930 HRESULT (WINAPI *FreeSurface)(IVMRSurfaceAllocator *This,DWORD_PTR dwID); 15931 HRESULT (WINAPI *PrepareSurface)(IVMRSurfaceAllocator *This,DWORD_PTR dwUserID,LPDIRECTDRAWSURFACE7 lpSurface,DWORD dwSurfaceFlags); 15932 HRESULT (WINAPI *AdviseNotify)(IVMRSurfaceAllocator *This,IVMRSurfaceAllocatorNotify *lpIVMRSurfAllocNotify); 15933 END_INTERFACE 15934 } IVMRSurfaceAllocatorVtbl; 15935 struct IVMRSurfaceAllocator { 15936 CONST_VTBL struct IVMRSurfaceAllocatorVtbl *lpVtbl; 15937 }; 15938 #ifdef COBJMACROS 15939 #define IVMRSurfaceAllocator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15940 #define IVMRSurfaceAllocator_AddRef(This) (This)->lpVtbl->AddRef(This) 15941 #define IVMRSurfaceAllocator_Release(This) (This)->lpVtbl->Release(This) 15942 #define IVMRSurfaceAllocator_AllocateSurface(This,dwUserID,lpAllocInfo,lpdwActualBuffers,lplpSurface) (This)->lpVtbl->AllocateSurface(This,dwUserID,lpAllocInfo,lpdwActualBuffers,lplpSurface) 15943 #define IVMRSurfaceAllocator_FreeSurface(This,dwID) (This)->lpVtbl->FreeSurface(This,dwID) 15944 #define IVMRSurfaceAllocator_PrepareSurface(This,dwUserID,lpSurface,dwSurfaceFlags) (This)->lpVtbl->PrepareSurface(This,dwUserID,lpSurface,dwSurfaceFlags) 15945 #define IVMRSurfaceAllocator_AdviseNotify(This,lpIVMRSurfAllocNotify) (This)->lpVtbl->AdviseNotify(This,lpIVMRSurfAllocNotify) 15946 #endif 15947 #endif 15948 HRESULT WINAPI IVMRSurfaceAllocator_AllocateSurface_Proxy(IVMRSurfaceAllocator *This,DWORD_PTR dwUserID,VMRALLOCATIONINFO *lpAllocInfo,DWORD *lpdwActualBuffers,LPDIRECTDRAWSURFACE7 *lplpSurface); 15949 void __RPC_STUB IVMRSurfaceAllocator_AllocateSurface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15950 HRESULT WINAPI IVMRSurfaceAllocator_FreeSurface_Proxy(IVMRSurfaceAllocator *This,DWORD_PTR dwID); 15951 void __RPC_STUB IVMRSurfaceAllocator_FreeSurface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15952 HRESULT WINAPI IVMRSurfaceAllocator_PrepareSurface_Proxy(IVMRSurfaceAllocator *This,DWORD_PTR dwUserID,LPDIRECTDRAWSURFACE7 lpSurface,DWORD dwSurfaceFlags); 15953 void __RPC_STUB IVMRSurfaceAllocator_PrepareSurface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15954 HRESULT WINAPI IVMRSurfaceAllocator_AdviseNotify_Proxy(IVMRSurfaceAllocator *This,IVMRSurfaceAllocatorNotify *lpIVMRSurfAllocNotify); 15955 void __RPC_STUB IVMRSurfaceAllocator_AdviseNotify_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 15956 #endif 15957 15958 #ifndef __IVMRSurfaceAllocatorNotify_INTERFACE_DEFINED__ 15959 #define __IVMRSurfaceAllocatorNotify_INTERFACE_DEFINED__ 15960 EXTERN_C const IID IID_IVMRSurfaceAllocatorNotify; 15961 #if defined(__cplusplus) && !defined(CINTERFACE) 15962 struct IVMRSurfaceAllocatorNotify : public IUnknown { 15963 public: 15964 virtual HRESULT WINAPI AdviseSurfaceAllocator(DWORD_PTR dwUserID,IVMRSurfaceAllocator *lpIVRMSurfaceAllocator) = 0; 15965 virtual HRESULT WINAPI SetDDrawDevice(LPDIRECTDRAW7 lpDDrawDevice,HMONITOR hMonitor) = 0; 15966 virtual HRESULT WINAPI ChangeDDrawDevice(LPDIRECTDRAW7 lpDDrawDevice,HMONITOR hMonitor) = 0; 15967 virtual HRESULT WINAPI RestoreDDrawSurfaces(void) = 0; 15968 virtual HRESULT WINAPI NotifyEvent(LONG EventCode,LONG_PTR Param1,LONG_PTR Param2) = 0; 15969 virtual HRESULT WINAPI SetBorderColor(COLORREF clrBorder) = 0; 15970 }; 15971 #else 15972 typedef struct IVMRSurfaceAllocatorNotifyVtbl { 15973 BEGIN_INTERFACE 15974 HRESULT (WINAPI *QueryInterface)(IVMRSurfaceAllocatorNotify *This,REFIID riid,void **ppvObject); 15975 ULONG (WINAPI *AddRef)(IVMRSurfaceAllocatorNotify *This); 15976 ULONG (WINAPI *Release)(IVMRSurfaceAllocatorNotify *This); 15977 HRESULT (WINAPI *AdviseSurfaceAllocator)(IVMRSurfaceAllocatorNotify *This,DWORD_PTR dwUserID,IVMRSurfaceAllocator *lpIVRMSurfaceAllocator); 15978 HRESULT (WINAPI *SetDDrawDevice)(IVMRSurfaceAllocatorNotify *This,LPDIRECTDRAW7 lpDDrawDevice,HMONITOR hMonitor); 15979 HRESULT (WINAPI *ChangeDDrawDevice)(IVMRSurfaceAllocatorNotify *This,LPDIRECTDRAW7 lpDDrawDevice,HMONITOR hMonitor); 15980 HRESULT (WINAPI *RestoreDDrawSurfaces)(IVMRSurfaceAllocatorNotify *This); 15981 HRESULT (WINAPI *NotifyEvent)(IVMRSurfaceAllocatorNotify *This,LONG EventCode,LONG_PTR Param1,LONG_PTR Param2); 15982 HRESULT (WINAPI *SetBorderColor)(IVMRSurfaceAllocatorNotify *This,COLORREF clrBorder); 15983 END_INTERFACE 15984 } IVMRSurfaceAllocatorNotifyVtbl; 15985 struct IVMRSurfaceAllocatorNotify { 15986 CONST_VTBL struct IVMRSurfaceAllocatorNotifyVtbl *lpVtbl; 15987 }; 15988 #ifdef COBJMACROS 15989 #define IVMRSurfaceAllocatorNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15990 #define IVMRSurfaceAllocatorNotify_AddRef(This) (This)->lpVtbl->AddRef(This) 15991 #define IVMRSurfaceAllocatorNotify_Release(This) (This)->lpVtbl->Release(This) 15992 #define IVMRSurfaceAllocatorNotify_AdviseSurfaceAllocator(This,dwUserID,lpIVRMSurfaceAllocator) (This)->lpVtbl->AdviseSurfaceAllocator(This,dwUserID,lpIVRMSurfaceAllocator) 15993 #define IVMRSurfaceAllocatorNotify_SetDDrawDevice(This,lpDDrawDevice,hMonitor) (This)->lpVtbl->SetDDrawDevice(This,lpDDrawDevice,hMonitor) 15994 #define IVMRSurfaceAllocatorNotify_ChangeDDrawDevice(This,lpDDrawDevice,hMonitor) (This)->lpVtbl->ChangeDDrawDevice(This,lpDDrawDevice,hMonitor) 15995 #define IVMRSurfaceAllocatorNotify_RestoreDDrawSurfaces(This) (This)->lpVtbl->RestoreDDrawSurfaces(This) 15996 #define IVMRSurfaceAllocatorNotify_NotifyEvent(This,EventCode,Param1,Param2) (This)->lpVtbl->NotifyEvent(This,EventCode,Param1,Param2) 15997 #define IVMRSurfaceAllocatorNotify_SetBorderColor(This,clrBorder) (This)->lpVtbl->SetBorderColor(This,clrBorder) 15998 #endif 15999 #endif 16000 HRESULT WINAPI IVMRSurfaceAllocatorNotify_AdviseSurfaceAllocator_Proxy(IVMRSurfaceAllocatorNotify *This,DWORD_PTR dwUserID,IVMRSurfaceAllocator *lpIVRMSurfaceAllocator); 16001 void __RPC_STUB IVMRSurfaceAllocatorNotify_AdviseSurfaceAllocator_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16002 HRESULT WINAPI IVMRSurfaceAllocatorNotify_SetDDrawDevice_Proxy(IVMRSurfaceAllocatorNotify *This,LPDIRECTDRAW7 lpDDrawDevice,HMONITOR hMonitor); 16003 void __RPC_STUB IVMRSurfaceAllocatorNotify_SetDDrawDevice_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16004 HRESULT WINAPI IVMRSurfaceAllocatorNotify_ChangeDDrawDevice_Proxy(IVMRSurfaceAllocatorNotify *This,LPDIRECTDRAW7 lpDDrawDevice,HMONITOR hMonitor); 16005 void __RPC_STUB IVMRSurfaceAllocatorNotify_ChangeDDrawDevice_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16006 HRESULT WINAPI IVMRSurfaceAllocatorNotify_RestoreDDrawSurfaces_Proxy(IVMRSurfaceAllocatorNotify *This); 16007 void __RPC_STUB IVMRSurfaceAllocatorNotify_RestoreDDrawSurfaces_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16008 HRESULT WINAPI IVMRSurfaceAllocatorNotify_NotifyEvent_Proxy(IVMRSurfaceAllocatorNotify *This,LONG EventCode,LONG_PTR Param1,LONG_PTR Param2); 16009 void __RPC_STUB IVMRSurfaceAllocatorNotify_NotifyEvent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16010 HRESULT WINAPI IVMRSurfaceAllocatorNotify_SetBorderColor_Proxy(IVMRSurfaceAllocatorNotify *This,COLORREF clrBorder); 16011 void __RPC_STUB IVMRSurfaceAllocatorNotify_SetBorderColor_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16012 #endif 16013 16014 typedef enum __MIDL___MIDL_itf_strmif_0400_0001 { 16015 VMR_ARMODE_NONE = 0,VMR_ARMODE_LETTER_BOX = VMR_ARMODE_NONE + 1 16016 } VMR_ASPECT_RATIO_MODE; 16017 16018 extern RPC_IF_HANDLE __MIDL_itf_strmif_0400_v0_0_c_ifspec; 16019 extern RPC_IF_HANDLE __MIDL_itf_strmif_0400_v0_0_s_ifspec; 16020 #ifndef __IVMRWindowlessControl_INTERFACE_DEFINED__ 16021 #define __IVMRWindowlessControl_INTERFACE_DEFINED__ 16022 EXTERN_C const IID IID_IVMRWindowlessControl; 16023 #if defined(__cplusplus) && !defined(CINTERFACE) 16024 struct IVMRWindowlessControl : public IUnknown { 16025 public: 16026 virtual HRESULT WINAPI GetNativeVideoSize(LONG *lpWidth,LONG *lpHeight,LONG *lpARWidth,LONG *lpARHeight) = 0; 16027 virtual HRESULT WINAPI GetMinIdealVideoSize(LONG *lpWidth,LONG *lpHeight) = 0; 16028 virtual HRESULT WINAPI GetMaxIdealVideoSize(LONG *lpWidth,LONG *lpHeight) = 0; 16029 virtual HRESULT WINAPI SetVideoPosition(const LPRECT lpSRCRect,const LPRECT lpDSTRect) = 0; 16030 virtual HRESULT WINAPI GetVideoPosition(LPRECT lpSRCRect,LPRECT lpDSTRect) = 0; 16031 virtual HRESULT WINAPI GetAspectRatioMode(DWORD *lpAspectRatioMode) = 0; 16032 virtual HRESULT WINAPI SetAspectRatioMode(DWORD AspectRatioMode) = 0; 16033 virtual HRESULT WINAPI SetVideoClippingWindow(HWND hwnd) = 0; 16034 virtual HRESULT WINAPI RepaintVideo(HWND hwnd,HDC hdc) = 0; 16035 virtual HRESULT WINAPI DisplayModeChanged(void) = 0; 16036 virtual HRESULT WINAPI GetCurrentImage(BYTE **lpDib) = 0; 16037 virtual HRESULT WINAPI SetBorderColor(COLORREF Clr) = 0; 16038 virtual HRESULT WINAPI GetBorderColor(COLORREF *lpClr) = 0; 16039 virtual HRESULT WINAPI SetColorKey(COLORREF Clr) = 0; 16040 virtual HRESULT WINAPI GetColorKey(COLORREF *lpClr) = 0; 16041 }; 16042 #else 16043 typedef struct IVMRWindowlessControlVtbl { 16044 BEGIN_INTERFACE 16045 HRESULT (WINAPI *QueryInterface)(IVMRWindowlessControl *This,REFIID riid,void **ppvObject); 16046 ULONG (WINAPI *AddRef)(IVMRWindowlessControl *This); 16047 ULONG (WINAPI *Release)(IVMRWindowlessControl *This); 16048 HRESULT (WINAPI *GetNativeVideoSize)(IVMRWindowlessControl *This,LONG *lpWidth,LONG *lpHeight,LONG *lpARWidth,LONG *lpARHeight); 16049 HRESULT (WINAPI *GetMinIdealVideoSize)(IVMRWindowlessControl *This,LONG *lpWidth,LONG *lpHeight); 16050 HRESULT (WINAPI *GetMaxIdealVideoSize)(IVMRWindowlessControl *This,LONG *lpWidth,LONG *lpHeight); 16051 HRESULT (WINAPI *SetVideoPosition)(IVMRWindowlessControl *This,const LPRECT lpSRCRect,const LPRECT lpDSTRect); 16052 HRESULT (WINAPI *GetVideoPosition)(IVMRWindowlessControl *This,LPRECT lpSRCRect,LPRECT lpDSTRect); 16053 HRESULT (WINAPI *GetAspectRatioMode)(IVMRWindowlessControl *This,DWORD *lpAspectRatioMode); 16054 HRESULT (WINAPI *SetAspectRatioMode)(IVMRWindowlessControl *This,DWORD AspectRatioMode); 16055 HRESULT (WINAPI *SetVideoClippingWindow)(IVMRWindowlessControl *This,HWND hwnd); 16056 HRESULT (WINAPI *RepaintVideo)(IVMRWindowlessControl *This,HWND hwnd,HDC hdc); 16057 HRESULT (WINAPI *DisplayModeChanged)(IVMRWindowlessControl *This); 16058 HRESULT (WINAPI *GetCurrentImage)(IVMRWindowlessControl *This,BYTE **lpDib); 16059 HRESULT (WINAPI *SetBorderColor)(IVMRWindowlessControl *This,COLORREF Clr); 16060 HRESULT (WINAPI *GetBorderColor)(IVMRWindowlessControl *This,COLORREF *lpClr); 16061 HRESULT (WINAPI *SetColorKey)(IVMRWindowlessControl *This,COLORREF Clr); 16062 HRESULT (WINAPI *GetColorKey)(IVMRWindowlessControl *This,COLORREF *lpClr); 16063 END_INTERFACE 16064 } IVMRWindowlessControlVtbl; 16065 struct IVMRWindowlessControl { 16066 CONST_VTBL struct IVMRWindowlessControlVtbl *lpVtbl; 16067 }; 16068 #ifdef COBJMACROS 16069 #define IVMRWindowlessControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16070 #define IVMRWindowlessControl_AddRef(This) (This)->lpVtbl->AddRef(This) 16071 #define IVMRWindowlessControl_Release(This) (This)->lpVtbl->Release(This) 16072 #define IVMRWindowlessControl_GetNativeVideoSize(This,lpWidth,lpHeight,lpARWidth,lpARHeight) (This)->lpVtbl->GetNativeVideoSize(This,lpWidth,lpHeight,lpARWidth,lpARHeight) 16073 #define IVMRWindowlessControl_GetMinIdealVideoSize(This,lpWidth,lpHeight) (This)->lpVtbl->GetMinIdealVideoSize(This,lpWidth,lpHeight) 16074 #define IVMRWindowlessControl_GetMaxIdealVideoSize(This,lpWidth,lpHeight) (This)->lpVtbl->GetMaxIdealVideoSize(This,lpWidth,lpHeight) 16075 #define IVMRWindowlessControl_SetVideoPosition(This,lpSRCRect,lpDSTRect) (This)->lpVtbl->SetVideoPosition(This,lpSRCRect,lpDSTRect) 16076 #define IVMRWindowlessControl_GetVideoPosition(This,lpSRCRect,lpDSTRect) (This)->lpVtbl->GetVideoPosition(This,lpSRCRect,lpDSTRect) 16077 #define IVMRWindowlessControl_GetAspectRatioMode(This,lpAspectRatioMode) (This)->lpVtbl->GetAspectRatioMode(This,lpAspectRatioMode) 16078 #define IVMRWindowlessControl_SetAspectRatioMode(This,AspectRatioMode) (This)->lpVtbl->SetAspectRatioMode(This,AspectRatioMode) 16079 #define IVMRWindowlessControl_SetVideoClippingWindow(This,hwnd) (This)->lpVtbl->SetVideoClippingWindow(This,hwnd) 16080 #define IVMRWindowlessControl_RepaintVideo(This,hwnd,hdc) (This)->lpVtbl->RepaintVideo(This,hwnd,hdc) 16081 #define IVMRWindowlessControl_DisplayModeChanged(This) (This)->lpVtbl->DisplayModeChanged(This) 16082 #define IVMRWindowlessControl_GetCurrentImage(This,lpDib) (This)->lpVtbl->GetCurrentImage(This,lpDib) 16083 #define IVMRWindowlessControl_SetBorderColor(This,Clr) (This)->lpVtbl->SetBorderColor(This,Clr) 16084 #define IVMRWindowlessControl_GetBorderColor(This,lpClr) (This)->lpVtbl->GetBorderColor(This,lpClr) 16085 #define IVMRWindowlessControl_SetColorKey(This,Clr) (This)->lpVtbl->SetColorKey(This,Clr) 16086 #define IVMRWindowlessControl_GetColorKey(This,lpClr) (This)->lpVtbl->GetColorKey(This,lpClr) 16087 #endif 16088 #endif 16089 HRESULT WINAPI IVMRWindowlessControl_GetNativeVideoSize_Proxy(IVMRWindowlessControl *This,LONG *lpWidth,LONG *lpHeight,LONG *lpARWidth,LONG *lpARHeight); 16090 void __RPC_STUB IVMRWindowlessControl_GetNativeVideoSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16091 HRESULT WINAPI IVMRWindowlessControl_GetMinIdealVideoSize_Proxy(IVMRWindowlessControl *This,LONG *lpWidth,LONG *lpHeight); 16092 void __RPC_STUB IVMRWindowlessControl_GetMinIdealVideoSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16093 HRESULT WINAPI IVMRWindowlessControl_GetMaxIdealVideoSize_Proxy(IVMRWindowlessControl *This,LONG *lpWidth,LONG *lpHeight); 16094 void __RPC_STUB IVMRWindowlessControl_GetMaxIdealVideoSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16095 HRESULT WINAPI IVMRWindowlessControl_SetVideoPosition_Proxy(IVMRWindowlessControl *This,const LPRECT lpSRCRect,const LPRECT lpDSTRect); 16096 void __RPC_STUB IVMRWindowlessControl_SetVideoPosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16097 HRESULT WINAPI IVMRWindowlessControl_GetVideoPosition_Proxy(IVMRWindowlessControl *This,LPRECT lpSRCRect,LPRECT lpDSTRect); 16098 void __RPC_STUB IVMRWindowlessControl_GetVideoPosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16099 HRESULT WINAPI IVMRWindowlessControl_GetAspectRatioMode_Proxy(IVMRWindowlessControl *This,DWORD *lpAspectRatioMode); 16100 void __RPC_STUB IVMRWindowlessControl_GetAspectRatioMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16101 HRESULT WINAPI IVMRWindowlessControl_SetAspectRatioMode_Proxy(IVMRWindowlessControl *This,DWORD AspectRatioMode); 16102 void __RPC_STUB IVMRWindowlessControl_SetAspectRatioMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16103 HRESULT WINAPI IVMRWindowlessControl_SetVideoClippingWindow_Proxy(IVMRWindowlessControl *This,HWND hwnd); 16104 void __RPC_STUB IVMRWindowlessControl_SetVideoClippingWindow_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16105 HRESULT WINAPI IVMRWindowlessControl_RepaintVideo_Proxy(IVMRWindowlessControl *This,HWND hwnd,HDC hdc); 16106 void __RPC_STUB IVMRWindowlessControl_RepaintVideo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16107 HRESULT WINAPI IVMRWindowlessControl_DisplayModeChanged_Proxy(IVMRWindowlessControl *This); 16108 void __RPC_STUB IVMRWindowlessControl_DisplayModeChanged_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16109 HRESULT WINAPI IVMRWindowlessControl_GetCurrentImage_Proxy(IVMRWindowlessControl *This,BYTE **lpDib); 16110 void __RPC_STUB IVMRWindowlessControl_GetCurrentImage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16111 HRESULT WINAPI IVMRWindowlessControl_SetBorderColor_Proxy(IVMRWindowlessControl *This,COLORREF Clr); 16112 void __RPC_STUB IVMRWindowlessControl_SetBorderColor_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16113 HRESULT WINAPI IVMRWindowlessControl_GetBorderColor_Proxy(IVMRWindowlessControl *This,COLORREF *lpClr); 16114 void __RPC_STUB IVMRWindowlessControl_GetBorderColor_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16115 HRESULT WINAPI IVMRWindowlessControl_SetColorKey_Proxy(IVMRWindowlessControl *This,COLORREF Clr); 16116 void __RPC_STUB IVMRWindowlessControl_SetColorKey_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16117 HRESULT WINAPI IVMRWindowlessControl_GetColorKey_Proxy(IVMRWindowlessControl *This,COLORREF *lpClr); 16118 void __RPC_STUB IVMRWindowlessControl_GetColorKey_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16119 #endif 16120 16121 typedef enum __MIDL___MIDL_itf_strmif_0401_0001 { 16122 MixerPref_NoDecimation = 0x1,MixerPref_DecimateOutput = 0x2,MixerPref_ARAdjustXorY = 0x4,MixerPref_DecimationReserved = 0x8, 16123 MixerPref_DecimateMask = 0xf,MixerPref_BiLinearFiltering = 0x10,MixerPref_PointFiltering = 0x20,MixerPref_FilteringMask = 0xf0, 16124 MixerPref_RenderTargetRGB = 0x100,MixerPref_RenderTargetYUV = 0x1000,MixerPref_RenderTargetYUV420 = 0x200,MixerPref_RenderTargetYUV422 = 0x400, 16125 MixerPref_RenderTargetYUV444 = 0x800,MixerPref_RenderTargetReserved = 0xe000,MixerPref_RenderTargetMask = 0xff00, 16126 MixerPref_DynamicSwitchToBOB = 0x10000,MixerPref_DynamicDecimateBy2 = 0x20000,MixerPref_DynamicReserved = 0xc0000, 16127 MixerPref_DynamicMask = 0xf0000 16128 } VMRMixerPrefs; 16129 16130 typedef struct _NORMALIZEDRECT { 16131 float left; 16132 float top; 16133 float right; 16134 float bottom; 16135 } NORMALIZEDRECT; 16136 16137 typedef struct _NORMALIZEDRECT *PNORMALIZEDRECT; 16138 16139 extern RPC_IF_HANDLE __MIDL_itf_strmif_0401_v0_0_c_ifspec; 16140 extern RPC_IF_HANDLE __MIDL_itf_strmif_0401_v0_0_s_ifspec; 16141 #ifndef __IVMRMixerControl_INTERFACE_DEFINED__ 16142 #define __IVMRMixerControl_INTERFACE_DEFINED__ 16143 EXTERN_C const IID IID_IVMRMixerControl; 16144 #if defined(__cplusplus) && !defined(CINTERFACE) 16145 struct IVMRMixerControl : public IUnknown { 16146 public: 16147 virtual HRESULT WINAPI SetAlpha(DWORD dwStreamID,float Alpha) = 0; 16148 virtual HRESULT WINAPI GetAlpha(DWORD dwStreamID,float *pAlpha) = 0; 16149 virtual HRESULT WINAPI SetZOrder(DWORD dwStreamID,DWORD dwZ) = 0; 16150 virtual HRESULT WINAPI GetZOrder(DWORD dwStreamID,DWORD *pZ) = 0; 16151 virtual HRESULT WINAPI SetOutputRect(DWORD dwStreamID,const NORMALIZEDRECT *pRect) = 0; 16152 virtual HRESULT WINAPI GetOutputRect(DWORD dwStreamID,NORMALIZEDRECT *pRect) = 0; 16153 virtual HRESULT WINAPI SetBackgroundClr(COLORREF ClrBkg) = 0; 16154 virtual HRESULT WINAPI GetBackgroundClr(COLORREF *lpClrBkg) = 0; 16155 virtual HRESULT WINAPI SetMixingPrefs(DWORD dwMixerPrefs) = 0; 16156 virtual HRESULT WINAPI GetMixingPrefs(DWORD *pdwMixerPrefs) = 0; 16157 }; 16158 #else 16159 typedef struct IVMRMixerControlVtbl { 16160 BEGIN_INTERFACE 16161 HRESULT (WINAPI *QueryInterface)(IVMRMixerControl *This,REFIID riid,void **ppvObject); 16162 ULONG (WINAPI *AddRef)(IVMRMixerControl *This); 16163 ULONG (WINAPI *Release)(IVMRMixerControl *This); 16164 HRESULT (WINAPI *SetAlpha)(IVMRMixerControl *This,DWORD dwStreamID,float Alpha); 16165 HRESULT (WINAPI *GetAlpha)(IVMRMixerControl *This,DWORD dwStreamID,float *pAlpha); 16166 HRESULT (WINAPI *SetZOrder)(IVMRMixerControl *This,DWORD dwStreamID,DWORD dwZ); 16167 HRESULT (WINAPI *GetZOrder)(IVMRMixerControl *This,DWORD dwStreamID,DWORD *pZ); 16168 HRESULT (WINAPI *SetOutputRect)(IVMRMixerControl *This,DWORD dwStreamID,const NORMALIZEDRECT *pRect); 16169 HRESULT (WINAPI *GetOutputRect)(IVMRMixerControl *This,DWORD dwStreamID,NORMALIZEDRECT *pRect); 16170 HRESULT (WINAPI *SetBackgroundClr)(IVMRMixerControl *This,COLORREF ClrBkg); 16171 HRESULT (WINAPI *GetBackgroundClr)(IVMRMixerControl *This,COLORREF *lpClrBkg); 16172 HRESULT (WINAPI *SetMixingPrefs)(IVMRMixerControl *This,DWORD dwMixerPrefs); 16173 HRESULT (WINAPI *GetMixingPrefs)(IVMRMixerControl *This,DWORD *pdwMixerPrefs); 16174 END_INTERFACE 16175 } IVMRMixerControlVtbl; 16176 struct IVMRMixerControl { 16177 CONST_VTBL struct IVMRMixerControlVtbl *lpVtbl; 16178 }; 16179 #ifdef COBJMACROS 16180 #define IVMRMixerControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16181 #define IVMRMixerControl_AddRef(This) (This)->lpVtbl->AddRef(This) 16182 #define IVMRMixerControl_Release(This) (This)->lpVtbl->Release(This) 16183 #define IVMRMixerControl_SetAlpha(This,dwStreamID,Alpha) (This)->lpVtbl->SetAlpha(This,dwStreamID,Alpha) 16184 #define IVMRMixerControl_GetAlpha(This,dwStreamID,pAlpha) (This)->lpVtbl->GetAlpha(This,dwStreamID,pAlpha) 16185 #define IVMRMixerControl_SetZOrder(This,dwStreamID,dwZ) (This)->lpVtbl->SetZOrder(This,dwStreamID,dwZ) 16186 #define IVMRMixerControl_GetZOrder(This,dwStreamID,pZ) (This)->lpVtbl->GetZOrder(This,dwStreamID,pZ) 16187 #define IVMRMixerControl_SetOutputRect(This,dwStreamID,pRect) (This)->lpVtbl->SetOutputRect(This,dwStreamID,pRect) 16188 #define IVMRMixerControl_GetOutputRect(This,dwStreamID,pRect) (This)->lpVtbl->GetOutputRect(This,dwStreamID,pRect) 16189 #define IVMRMixerControl_SetBackgroundClr(This,ClrBkg) (This)->lpVtbl->SetBackgroundClr(This,ClrBkg) 16190 #define IVMRMixerControl_GetBackgroundClr(This,lpClrBkg) (This)->lpVtbl->GetBackgroundClr(This,lpClrBkg) 16191 #define IVMRMixerControl_SetMixingPrefs(This,dwMixerPrefs) (This)->lpVtbl->SetMixingPrefs(This,dwMixerPrefs) 16192 #define IVMRMixerControl_GetMixingPrefs(This,pdwMixerPrefs) (This)->lpVtbl->GetMixingPrefs(This,pdwMixerPrefs) 16193 #endif 16194 #endif 16195 HRESULT WINAPI IVMRMixerControl_SetAlpha_Proxy(IVMRMixerControl *This,DWORD dwStreamID,float Alpha); 16196 void __RPC_STUB IVMRMixerControl_SetAlpha_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16197 HRESULT WINAPI IVMRMixerControl_GetAlpha_Proxy(IVMRMixerControl *This,DWORD dwStreamID,float *pAlpha); 16198 void __RPC_STUB IVMRMixerControl_GetAlpha_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16199 HRESULT WINAPI IVMRMixerControl_SetZOrder_Proxy(IVMRMixerControl *This,DWORD dwStreamID,DWORD dwZ); 16200 void __RPC_STUB IVMRMixerControl_SetZOrder_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16201 HRESULT WINAPI IVMRMixerControl_GetZOrder_Proxy(IVMRMixerControl *This,DWORD dwStreamID,DWORD *pZ); 16202 void __RPC_STUB IVMRMixerControl_GetZOrder_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16203 HRESULT WINAPI IVMRMixerControl_SetOutputRect_Proxy(IVMRMixerControl *This,DWORD dwStreamID,const NORMALIZEDRECT *pRect); 16204 void __RPC_STUB IVMRMixerControl_SetOutputRect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16205 HRESULT WINAPI IVMRMixerControl_GetOutputRect_Proxy(IVMRMixerControl *This,DWORD dwStreamID,NORMALIZEDRECT *pRect); 16206 void __RPC_STUB IVMRMixerControl_GetOutputRect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16207 HRESULT WINAPI IVMRMixerControl_SetBackgroundClr_Proxy(IVMRMixerControl *This,COLORREF ClrBkg); 16208 void __RPC_STUB IVMRMixerControl_SetBackgroundClr_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16209 HRESULT WINAPI IVMRMixerControl_GetBackgroundClr_Proxy(IVMRMixerControl *This,COLORREF *lpClrBkg); 16210 void __RPC_STUB IVMRMixerControl_GetBackgroundClr_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16211 HRESULT WINAPI IVMRMixerControl_SetMixingPrefs_Proxy(IVMRMixerControl *This,DWORD dwMixerPrefs); 16212 void __RPC_STUB IVMRMixerControl_SetMixingPrefs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16213 HRESULT WINAPI IVMRMixerControl_GetMixingPrefs_Proxy(IVMRMixerControl *This,DWORD *pdwMixerPrefs); 16214 16215 void __RPC_STUB IVMRMixerControl_GetMixingPrefs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16216 #endif 16217 16218 #ifdef __cplusplus 16219 typedef struct tagVMRGUID { 16220 ::GUID *pGUID; 16221 ::GUID GUID; 16222 } VMRGUID; 16223 #else 16224 typedef struct tagVMRGUID { 16225 GUID *pGUID; 16226 GUID GUID; 16227 } VMRGUID; 16228 #endif 16229 16230 typedef struct tagVMRMONITORINFO { 16231 VMRGUID guid; 16232 RECT rcMonitor; 16233 HMONITOR hMon; 16234 DWORD dwFlags; 16235 wchar_t szDevice[32]; 16236 wchar_t szDescription[256]; 16237 LARGE_INTEGER liDriverVersion; 16238 DWORD dwVendorId; 16239 DWORD dwDeviceId; 16240 DWORD dwSubSysId; 16241 DWORD dwRevision; 16242 } VMRMONITORINFO; 16243 16244 extern RPC_IF_HANDLE __MIDL_itf_strmif_0402_v0_0_c_ifspec; 16245 extern RPC_IF_HANDLE __MIDL_itf_strmif_0402_v0_0_s_ifspec; 16246 #ifndef __IVMRMonitorConfig_INTERFACE_DEFINED__ 16247 #define __IVMRMonitorConfig_INTERFACE_DEFINED__ 16248 EXTERN_C const IID IID_IVMRMonitorConfig; 16249 #if defined(__cplusplus) && !defined(CINTERFACE) 16250 struct IVMRMonitorConfig : public IUnknown { 16251 public: 16252 virtual HRESULT WINAPI SetMonitor(const VMRGUID *pGUID) = 0; 16253 virtual HRESULT WINAPI GetMonitor(VMRGUID *pGUID) = 0; 16254 virtual HRESULT WINAPI SetDefaultMonitor(const VMRGUID *pGUID) = 0; 16255 virtual HRESULT WINAPI GetDefaultMonitor(VMRGUID *pGUID) = 0; 16256 virtual HRESULT WINAPI GetAvailableMonitors(VMRMONITORINFO *pInfo,DWORD dwMaxInfoArraySize,DWORD *pdwNumDevices) = 0; 16257 }; 16258 #else 16259 typedef struct IVMRMonitorConfigVtbl { 16260 BEGIN_INTERFACE 16261 HRESULT (WINAPI *QueryInterface)(IVMRMonitorConfig *This,REFIID riid,void **ppvObject); 16262 ULONG (WINAPI *AddRef)(IVMRMonitorConfig *This); 16263 ULONG (WINAPI *Release)(IVMRMonitorConfig *This); 16264 HRESULT (WINAPI *SetMonitor)(IVMRMonitorConfig *This,const VMRGUID *pGUID); 16265 HRESULT (WINAPI *GetMonitor)(IVMRMonitorConfig *This,VMRGUID *pGUID); 16266 HRESULT (WINAPI *SetDefaultMonitor)(IVMRMonitorConfig *This,const VMRGUID *pGUID); 16267 HRESULT (WINAPI *GetDefaultMonitor)(IVMRMonitorConfig *This,VMRGUID *pGUID); 16268 HRESULT (WINAPI *GetAvailableMonitors)(IVMRMonitorConfig *This,VMRMONITORINFO *pInfo,DWORD dwMaxInfoArraySize,DWORD *pdwNumDevices); 16269 END_INTERFACE 16270 } IVMRMonitorConfigVtbl; 16271 struct IVMRMonitorConfig { 16272 CONST_VTBL struct IVMRMonitorConfigVtbl *lpVtbl; 16273 }; 16274 #ifdef COBJMACROS 16275 #define IVMRMonitorConfig_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16276 #define IVMRMonitorConfig_AddRef(This) (This)->lpVtbl->AddRef(This) 16277 #define IVMRMonitorConfig_Release(This) (This)->lpVtbl->Release(This) 16278 #define IVMRMonitorConfig_SetMonitor(This,pGUID) (This)->lpVtbl->SetMonitor(This,pGUID) 16279 #define IVMRMonitorConfig_GetMonitor(This,pGUID) (This)->lpVtbl->GetMonitor(This,pGUID) 16280 #define IVMRMonitorConfig_SetDefaultMonitor(This,pGUID) (This)->lpVtbl->SetDefaultMonitor(This,pGUID) 16281 #define IVMRMonitorConfig_GetDefaultMonitor(This,pGUID) (This)->lpVtbl->GetDefaultMonitor(This,pGUID) 16282 #define IVMRMonitorConfig_GetAvailableMonitors(This,pInfo,dwMaxInfoArraySize,pdwNumDevices) (This)->lpVtbl->GetAvailableMonitors(This,pInfo,dwMaxInfoArraySize,pdwNumDevices) 16283 #endif 16284 #endif 16285 HRESULT WINAPI IVMRMonitorConfig_SetMonitor_Proxy(IVMRMonitorConfig *This,const VMRGUID *pGUID); 16286 void __RPC_STUB IVMRMonitorConfig_SetMonitor_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16287 HRESULT WINAPI IVMRMonitorConfig_GetMonitor_Proxy(IVMRMonitorConfig *This,VMRGUID *pGUID); 16288 void __RPC_STUB IVMRMonitorConfig_GetMonitor_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16289 HRESULT WINAPI IVMRMonitorConfig_SetDefaultMonitor_Proxy(IVMRMonitorConfig *This,const VMRGUID *pGUID); 16290 void __RPC_STUB IVMRMonitorConfig_SetDefaultMonitor_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16291 HRESULT WINAPI IVMRMonitorConfig_GetDefaultMonitor_Proxy(IVMRMonitorConfig *This,VMRGUID *pGUID); 16292 void __RPC_STUB IVMRMonitorConfig_GetDefaultMonitor_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16293 HRESULT WINAPI IVMRMonitorConfig_GetAvailableMonitors_Proxy(IVMRMonitorConfig *This,VMRMONITORINFO *pInfo,DWORD dwMaxInfoArraySize,DWORD *pdwNumDevices); 16294 void __RPC_STUB IVMRMonitorConfig_GetAvailableMonitors_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16295 #endif 16296 16297 typedef enum __MIDL___MIDL_itf_strmif_0403_0001 { 16298 RenderPrefs_RestrictToInitialMonitor = 0,RenderPrefs_ForceOffscreen = 0x1,RenderPrefs_ForceOverlays = 0x2,RenderPrefs_AllowOverlays = 0, 16299 RenderPrefs_AllowOffscreen = 0,RenderPrefs_DoNotRenderColorKeyAndBorder = 0x8,RenderPrefs_Reserved = 0x10,RenderPrefs_PreferAGPMemWhenMixing = 0x20, 16300 RenderPrefs_Mask = 0x3f 16301 } VMRRenderPrefs; 16302 16303 typedef enum __MIDL___MIDL_itf_strmif_0403_0002 { 16304 VMRMode_Windowed = 0x1,VMRMode_Windowless = 0x2,VMRMode_Renderless = 0x4,VMRMode_Mask = 0x7 16305 } VMRMode; 16306 16307 enum __MIDL___MIDL_itf_strmif_0403_0003 { 16308 MAX_NUMBER_OF_STREAMS = 16 16309 }; 16310 16311 extern RPC_IF_HANDLE __MIDL_itf_strmif_0403_v0_0_c_ifspec; 16312 extern RPC_IF_HANDLE __MIDL_itf_strmif_0403_v0_0_s_ifspec; 16313 #ifndef __IVMRFilterConfig_INTERFACE_DEFINED__ 16314 #define __IVMRFilterConfig_INTERFACE_DEFINED__ 16315 EXTERN_C const IID IID_IVMRFilterConfig; 16316 #if defined(__cplusplus) && !defined(CINTERFACE) 16317 struct IVMRFilterConfig : public IUnknown { 16318 public: 16319 virtual HRESULT WINAPI SetImageCompositor(IVMRImageCompositor *lpVMRImgCompositor) = 0; 16320 virtual HRESULT WINAPI SetNumberOfStreams(DWORD dwMaxStreams) = 0; 16321 virtual HRESULT WINAPI GetNumberOfStreams(DWORD *pdwMaxStreams) = 0; 16322 virtual HRESULT WINAPI SetRenderingPrefs(DWORD dwRenderFlags) = 0; 16323 virtual HRESULT WINAPI GetRenderingPrefs(DWORD *pdwRenderFlags) = 0; 16324 virtual HRESULT WINAPI SetRenderingMode(DWORD Mode) = 0; 16325 virtual HRESULT WINAPI GetRenderingMode(DWORD *pMode) = 0; 16326 }; 16327 #else 16328 typedef struct IVMRFilterConfigVtbl { 16329 BEGIN_INTERFACE 16330 HRESULT (WINAPI *QueryInterface)(IVMRFilterConfig *This,REFIID riid,void **ppvObject); 16331 ULONG (WINAPI *AddRef)(IVMRFilterConfig *This); 16332 ULONG (WINAPI *Release)(IVMRFilterConfig *This); 16333 HRESULT (WINAPI *SetImageCompositor)(IVMRFilterConfig *This,IVMRImageCompositor *lpVMRImgCompositor); 16334 HRESULT (WINAPI *SetNumberOfStreams)(IVMRFilterConfig *This,DWORD dwMaxStreams); 16335 HRESULT (WINAPI *GetNumberOfStreams)(IVMRFilterConfig *This,DWORD *pdwMaxStreams); 16336 HRESULT (WINAPI *SetRenderingPrefs)(IVMRFilterConfig *This,DWORD dwRenderFlags); 16337 HRESULT (WINAPI *GetRenderingPrefs)(IVMRFilterConfig *This,DWORD *pdwRenderFlags); 16338 HRESULT (WINAPI *SetRenderingMode)(IVMRFilterConfig *This,DWORD Mode); 16339 HRESULT (WINAPI *GetRenderingMode)(IVMRFilterConfig *This,DWORD *pMode); 16340 END_INTERFACE 16341 } IVMRFilterConfigVtbl; 16342 struct IVMRFilterConfig { 16343 CONST_VTBL struct IVMRFilterConfigVtbl *lpVtbl; 16344 }; 16345 #ifdef COBJMACROS 16346 #define IVMRFilterConfig_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16347 #define IVMRFilterConfig_AddRef(This) (This)->lpVtbl->AddRef(This) 16348 #define IVMRFilterConfig_Release(This) (This)->lpVtbl->Release(This) 16349 #define IVMRFilterConfig_SetImageCompositor(This,lpVMRImgCompositor) (This)->lpVtbl->SetImageCompositor(This,lpVMRImgCompositor) 16350 #define IVMRFilterConfig_SetNumberOfStreams(This,dwMaxStreams) (This)->lpVtbl->SetNumberOfStreams(This,dwMaxStreams) 16351 #define IVMRFilterConfig_GetNumberOfStreams(This,pdwMaxStreams) (This)->lpVtbl->GetNumberOfStreams(This,pdwMaxStreams) 16352 #define IVMRFilterConfig_SetRenderingPrefs(This,dwRenderFlags) (This)->lpVtbl->SetRenderingPrefs(This,dwRenderFlags) 16353 #define IVMRFilterConfig_GetRenderingPrefs(This,pdwRenderFlags) (This)->lpVtbl->GetRenderingPrefs(This,pdwRenderFlags) 16354 #define IVMRFilterConfig_SetRenderingMode(This,Mode) (This)->lpVtbl->SetRenderingMode(This,Mode) 16355 #define IVMRFilterConfig_GetRenderingMode(This,pMode) (This)->lpVtbl->GetRenderingMode(This,pMode) 16356 #endif 16357 #endif 16358 HRESULT WINAPI IVMRFilterConfig_SetImageCompositor_Proxy(IVMRFilterConfig *This,IVMRImageCompositor *lpVMRImgCompositor); 16359 void __RPC_STUB IVMRFilterConfig_SetImageCompositor_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16360 HRESULT WINAPI IVMRFilterConfig_SetNumberOfStreams_Proxy(IVMRFilterConfig *This,DWORD dwMaxStreams); 16361 void __RPC_STUB IVMRFilterConfig_SetNumberOfStreams_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16362 HRESULT WINAPI IVMRFilterConfig_GetNumberOfStreams_Proxy(IVMRFilterConfig *This,DWORD *pdwMaxStreams); 16363 void __RPC_STUB IVMRFilterConfig_GetNumberOfStreams_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16364 HRESULT WINAPI IVMRFilterConfig_SetRenderingPrefs_Proxy(IVMRFilterConfig *This,DWORD dwRenderFlags); 16365 void __RPC_STUB IVMRFilterConfig_SetRenderingPrefs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16366 HRESULT WINAPI IVMRFilterConfig_GetRenderingPrefs_Proxy(IVMRFilterConfig *This,DWORD *pdwRenderFlags); 16367 void __RPC_STUB IVMRFilterConfig_GetRenderingPrefs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16368 HRESULT WINAPI IVMRFilterConfig_SetRenderingMode_Proxy(IVMRFilterConfig *This,DWORD Mode); 16369 void __RPC_STUB IVMRFilterConfig_SetRenderingMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16370 HRESULT WINAPI IVMRFilterConfig_GetRenderingMode_Proxy(IVMRFilterConfig *This,DWORD *pMode); 16371 void __RPC_STUB IVMRFilterConfig_GetRenderingMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16372 #endif 16373 16374 #ifndef __IVMRAspectRatioControl_INTERFACE_DEFINED__ 16375 #define __IVMRAspectRatioControl_INTERFACE_DEFINED__ 16376 EXTERN_C const IID IID_IVMRAspectRatioControl; 16377 #if defined(__cplusplus) && !defined(CINTERFACE) 16378 struct IVMRAspectRatioControl : public IUnknown { 16379 public: 16380 virtual HRESULT WINAPI GetAspectRatioMode(LPDWORD lpdwARMode) = 0; 16381 virtual HRESULT WINAPI SetAspectRatioMode(DWORD dwARMode) = 0; 16382 }; 16383 #else 16384 typedef struct IVMRAspectRatioControlVtbl { 16385 BEGIN_INTERFACE 16386 HRESULT (WINAPI *QueryInterface)(IVMRAspectRatioControl *This,REFIID riid,void **ppvObject); 16387 ULONG (WINAPI *AddRef)(IVMRAspectRatioControl *This); 16388 ULONG (WINAPI *Release)(IVMRAspectRatioControl *This); 16389 HRESULT (WINAPI *GetAspectRatioMode)(IVMRAspectRatioControl *This,LPDWORD lpdwARMode); 16390 HRESULT (WINAPI *SetAspectRatioMode)(IVMRAspectRatioControl *This,DWORD dwARMode); 16391 END_INTERFACE 16392 } IVMRAspectRatioControlVtbl; 16393 struct IVMRAspectRatioControl { 16394 CONST_VTBL struct IVMRAspectRatioControlVtbl *lpVtbl; 16395 }; 16396 #ifdef COBJMACROS 16397 #define IVMRAspectRatioControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16398 #define IVMRAspectRatioControl_AddRef(This) (This)->lpVtbl->AddRef(This) 16399 #define IVMRAspectRatioControl_Release(This) (This)->lpVtbl->Release(This) 16400 #define IVMRAspectRatioControl_GetAspectRatioMode(This,lpdwARMode) (This)->lpVtbl->GetAspectRatioMode(This,lpdwARMode) 16401 #define IVMRAspectRatioControl_SetAspectRatioMode(This,dwARMode) (This)->lpVtbl->SetAspectRatioMode(This,dwARMode) 16402 #endif 16403 #endif 16404 HRESULT WINAPI IVMRAspectRatioControl_GetAspectRatioMode_Proxy(IVMRAspectRatioControl *This,LPDWORD lpdwARMode); 16405 void __RPC_STUB IVMRAspectRatioControl_GetAspectRatioMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16406 HRESULT WINAPI IVMRAspectRatioControl_SetAspectRatioMode_Proxy(IVMRAspectRatioControl *This,DWORD dwARMode); 16407 void __RPC_STUB IVMRAspectRatioControl_SetAspectRatioMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16408 #endif 16409 16410 typedef enum __MIDL___MIDL_itf_strmif_0405_0001 { 16411 DeinterlacePref_NextBest = 0x1,DeinterlacePref_BOB = 0x2,DeinterlacePref_Weave = 0x4,DeinterlacePref_Mask = 0x7 16412 } VMRDeinterlacePrefs; 16413 16414 typedef enum __MIDL___MIDL_itf_strmif_0405_0002 { 16415 DeinterlaceTech_Unknown = 0,DeinterlaceTech_BOBLineReplicate = 0x1,DeinterlaceTech_BOBVerticalStretch = 0x2,DeinterlaceTech_MedianFiltering = 0x4, 16416 DeinterlaceTech_EdgeFiltering = 0x10,DeinterlaceTech_FieldAdaptive = 0x20,DeinterlaceTech_PixelAdaptive = 0x40, 16417 DeinterlaceTech_MotionVectorSteered = 0x80 16418 } VMRDeinterlaceTech; 16419 16420 typedef struct _VMRFrequency { 16421 DWORD dwNumerator; 16422 DWORD dwDenominator; 16423 } VMRFrequency; 16424 16425 typedef struct _VMRVideoDesc { 16426 DWORD dwSize; 16427 DWORD dwSampleWidth; 16428 DWORD dwSampleHeight; 16429 WINBOOL SingleFieldPerSample; 16430 DWORD dwFourCC; 16431 VMRFrequency InputSampleFreq; 16432 VMRFrequency OutputFrameFreq; 16433 } VMRVideoDesc; 16434 16435 typedef struct _VMRDeinterlaceCaps { 16436 DWORD dwSize; 16437 DWORD dwNumPreviousOutputFrames; 16438 DWORD dwNumForwardRefSamples; 16439 DWORD dwNumBackwardRefSamples; 16440 VMRDeinterlaceTech DeinterlaceTechnology; 16441 } VMRDeinterlaceCaps; 16442 16443 extern RPC_IF_HANDLE __MIDL_itf_strmif_0405_v0_0_c_ifspec; 16444 extern RPC_IF_HANDLE __MIDL_itf_strmif_0405_v0_0_s_ifspec; 16445 #ifndef __IVMRDeinterlaceControl_INTERFACE_DEFINED__ 16446 #define __IVMRDeinterlaceControl_INTERFACE_DEFINED__ 16447 EXTERN_C const IID IID_IVMRDeinterlaceControl; 16448 #if defined(__cplusplus) && !defined(CINTERFACE) 16449 struct IVMRDeinterlaceControl : public IUnknown { 16450 public: 16451 virtual HRESULT WINAPI GetNumberOfDeinterlaceModes(VMRVideoDesc *lpVideoDescription,LPDWORD lpdwNumDeinterlaceModes,LPGUID lpDeinterlaceModes) = 0; 16452 virtual HRESULT WINAPI GetDeinterlaceModeCaps(LPGUID lpDeinterlaceMode,VMRVideoDesc *lpVideoDescription,VMRDeinterlaceCaps *lpDeinterlaceCaps) = 0; 16453 virtual HRESULT WINAPI GetDeinterlaceMode(DWORD dwStreamID,LPGUID lpDeinterlaceMode) = 0; 16454 virtual HRESULT WINAPI SetDeinterlaceMode(DWORD dwStreamID,LPGUID lpDeinterlaceMode) = 0; 16455 virtual HRESULT WINAPI GetDeinterlacePrefs(LPDWORD lpdwDeinterlacePrefs) = 0; 16456 virtual HRESULT WINAPI SetDeinterlacePrefs(DWORD dwDeinterlacePrefs) = 0; 16457 virtual HRESULT WINAPI GetActualDeinterlaceMode(DWORD dwStreamID,LPGUID lpDeinterlaceMode) = 0; 16458 }; 16459 #else 16460 typedef struct IVMRDeinterlaceControlVtbl { 16461 BEGIN_INTERFACE 16462 HRESULT (WINAPI *QueryInterface)(IVMRDeinterlaceControl *This,REFIID riid,void **ppvObject); 16463 ULONG (WINAPI *AddRef)(IVMRDeinterlaceControl *This); 16464 ULONG (WINAPI *Release)(IVMRDeinterlaceControl *This); 16465 HRESULT (WINAPI *GetNumberOfDeinterlaceModes)(IVMRDeinterlaceControl *This,VMRVideoDesc *lpVideoDescription,LPDWORD lpdwNumDeinterlaceModes,LPGUID lpDeinterlaceModes); 16466 HRESULT (WINAPI *GetDeinterlaceModeCaps)(IVMRDeinterlaceControl *This,LPGUID lpDeinterlaceMode,VMRVideoDesc *lpVideoDescription,VMRDeinterlaceCaps *lpDeinterlaceCaps); 16467 HRESULT (WINAPI *GetDeinterlaceMode)(IVMRDeinterlaceControl *This,DWORD dwStreamID,LPGUID lpDeinterlaceMode); 16468 HRESULT (WINAPI *SetDeinterlaceMode)(IVMRDeinterlaceControl *This,DWORD dwStreamID,LPGUID lpDeinterlaceMode); 16469 HRESULT (WINAPI *GetDeinterlacePrefs)(IVMRDeinterlaceControl *This,LPDWORD lpdwDeinterlacePrefs); 16470 HRESULT (WINAPI *SetDeinterlacePrefs)(IVMRDeinterlaceControl *This,DWORD dwDeinterlacePrefs); 16471 HRESULT (WINAPI *GetActualDeinterlaceMode)(IVMRDeinterlaceControl *This,DWORD dwStreamID,LPGUID lpDeinterlaceMode); 16472 END_INTERFACE 16473 } IVMRDeinterlaceControlVtbl; 16474 struct IVMRDeinterlaceControl { 16475 CONST_VTBL struct IVMRDeinterlaceControlVtbl *lpVtbl; 16476 }; 16477 #ifdef COBJMACROS 16478 #define IVMRDeinterlaceControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16479 #define IVMRDeinterlaceControl_AddRef(This) (This)->lpVtbl->AddRef(This) 16480 #define IVMRDeinterlaceControl_Release(This) (This)->lpVtbl->Release(This) 16481 #define IVMRDeinterlaceControl_GetNumberOfDeinterlaceModes(This,lpVideoDescription,lpdwNumDeinterlaceModes,lpDeinterlaceModes) (This)->lpVtbl->GetNumberOfDeinterlaceModes(This,lpVideoDescription,lpdwNumDeinterlaceModes,lpDeinterlaceModes) 16482 #define IVMRDeinterlaceControl_GetDeinterlaceModeCaps(This,lpDeinterlaceMode,lpVideoDescription,lpDeinterlaceCaps) (This)->lpVtbl->GetDeinterlaceModeCaps(This,lpDeinterlaceMode,lpVideoDescription,lpDeinterlaceCaps) 16483 #define IVMRDeinterlaceControl_GetDeinterlaceMode(This,dwStreamID,lpDeinterlaceMode) (This)->lpVtbl->GetDeinterlaceMode(This,dwStreamID,lpDeinterlaceMode) 16484 #define IVMRDeinterlaceControl_SetDeinterlaceMode(This,dwStreamID,lpDeinterlaceMode) (This)->lpVtbl->SetDeinterlaceMode(This,dwStreamID,lpDeinterlaceMode) 16485 #define IVMRDeinterlaceControl_GetDeinterlacePrefs(This,lpdwDeinterlacePrefs) (This)->lpVtbl->GetDeinterlacePrefs(This,lpdwDeinterlacePrefs) 16486 #define IVMRDeinterlaceControl_SetDeinterlacePrefs(This,dwDeinterlacePrefs) (This)->lpVtbl->SetDeinterlacePrefs(This,dwDeinterlacePrefs) 16487 #define IVMRDeinterlaceControl_GetActualDeinterlaceMode(This,dwStreamID,lpDeinterlaceMode) (This)->lpVtbl->GetActualDeinterlaceMode(This,dwStreamID,lpDeinterlaceMode) 16488 #endif 16489 #endif 16490 HRESULT WINAPI IVMRDeinterlaceControl_GetNumberOfDeinterlaceModes_Proxy(IVMRDeinterlaceControl *This,VMRVideoDesc *lpVideoDescription,LPDWORD lpdwNumDeinterlaceModes,LPGUID lpDeinterlaceModes); 16491 void __RPC_STUB IVMRDeinterlaceControl_GetNumberOfDeinterlaceModes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16492 HRESULT WINAPI IVMRDeinterlaceControl_GetDeinterlaceModeCaps_Proxy(IVMRDeinterlaceControl *This,LPGUID lpDeinterlaceMode,VMRVideoDesc *lpVideoDescription,VMRDeinterlaceCaps *lpDeinterlaceCaps); 16493 void __RPC_STUB IVMRDeinterlaceControl_GetDeinterlaceModeCaps_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16494 HRESULT WINAPI IVMRDeinterlaceControl_GetDeinterlaceMode_Proxy(IVMRDeinterlaceControl *This,DWORD dwStreamID,LPGUID lpDeinterlaceMode); 16495 void __RPC_STUB IVMRDeinterlaceControl_GetDeinterlaceMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16496 HRESULT WINAPI IVMRDeinterlaceControl_SetDeinterlaceMode_Proxy(IVMRDeinterlaceControl *This,DWORD dwStreamID,LPGUID lpDeinterlaceMode); 16497 void __RPC_STUB IVMRDeinterlaceControl_SetDeinterlaceMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16498 HRESULT WINAPI IVMRDeinterlaceControl_GetDeinterlacePrefs_Proxy(IVMRDeinterlaceControl *This,LPDWORD lpdwDeinterlacePrefs); 16499 void __RPC_STUB IVMRDeinterlaceControl_GetDeinterlacePrefs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16500 HRESULT WINAPI IVMRDeinterlaceControl_SetDeinterlacePrefs_Proxy(IVMRDeinterlaceControl *This,DWORD dwDeinterlacePrefs); 16501 void __RPC_STUB IVMRDeinterlaceControl_SetDeinterlacePrefs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16502 HRESULT WINAPI IVMRDeinterlaceControl_GetActualDeinterlaceMode_Proxy(IVMRDeinterlaceControl *This,DWORD dwStreamID,LPGUID lpDeinterlaceMode); 16503 void __RPC_STUB IVMRDeinterlaceControl_GetActualDeinterlaceMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16504 #endif 16505 16506 typedef struct _VMRALPHABITMAP { 16507 DWORD dwFlags; 16508 HDC hdc; 16509 LPDIRECTDRAWSURFACE7 pDDS; 16510 RECT rSrc; 16511 NORMALIZEDRECT rDest; 16512 FLOAT fAlpha; 16513 COLORREF clrSrcKey; 16514 } VMRALPHABITMAP; 16515 16516 typedef struct _VMRALPHABITMAP *PVMRALPHABITMAP; 16517 16518 #define VMRBITMAP_DISABLE 0x00000001 16519 #define VMRBITMAP_HDC 0x00000002 16520 #define VMRBITMAP_ENTIREDDS 0x00000004 16521 #define VMRBITMAP_SRCCOLORKEY 0x00000008 16522 #define VMRBITMAP_SRCRECT 0x00000010 16523 16524 extern RPC_IF_HANDLE __MIDL_itf_strmif_0406_v0_0_c_ifspec; 16525 extern RPC_IF_HANDLE __MIDL_itf_strmif_0406_v0_0_s_ifspec; 16526 #ifndef __IVMRMixerBitmap_INTERFACE_DEFINED__ 16527 #define __IVMRMixerBitmap_INTERFACE_DEFINED__ 16528 EXTERN_C const IID IID_IVMRMixerBitmap; 16529 #if defined(__cplusplus) && !defined(CINTERFACE) 16530 struct IVMRMixerBitmap : public IUnknown { 16531 public: 16532 virtual HRESULT WINAPI SetAlphaBitmap(const VMRALPHABITMAP *pBmpParms) = 0; 16533 virtual HRESULT WINAPI UpdateAlphaBitmapParameters(PVMRALPHABITMAP pBmpParms) = 0; 16534 virtual HRESULT WINAPI GetAlphaBitmapParameters(PVMRALPHABITMAP pBmpParms) = 0; 16535 }; 16536 #else 16537 typedef struct IVMRMixerBitmapVtbl { 16538 BEGIN_INTERFACE 16539 HRESULT (WINAPI *QueryInterface)(IVMRMixerBitmap *This,REFIID riid,void **ppvObject); 16540 ULONG (WINAPI *AddRef)(IVMRMixerBitmap *This); 16541 ULONG (WINAPI *Release)(IVMRMixerBitmap *This); 16542 HRESULT (WINAPI *SetAlphaBitmap)(IVMRMixerBitmap *This,const VMRALPHABITMAP *pBmpParms); 16543 HRESULT (WINAPI *UpdateAlphaBitmapParameters)(IVMRMixerBitmap *This,PVMRALPHABITMAP pBmpParms); 16544 HRESULT (WINAPI *GetAlphaBitmapParameters)(IVMRMixerBitmap *This,PVMRALPHABITMAP pBmpParms); 16545 END_INTERFACE 16546 } IVMRMixerBitmapVtbl; 16547 struct IVMRMixerBitmap { 16548 CONST_VTBL struct IVMRMixerBitmapVtbl *lpVtbl; 16549 }; 16550 #ifdef COBJMACROS 16551 #define IVMRMixerBitmap_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16552 #define IVMRMixerBitmap_AddRef(This) (This)->lpVtbl->AddRef(This) 16553 #define IVMRMixerBitmap_Release(This) (This)->lpVtbl->Release(This) 16554 #define IVMRMixerBitmap_SetAlphaBitmap(This,pBmpParms) (This)->lpVtbl->SetAlphaBitmap(This,pBmpParms) 16555 #define IVMRMixerBitmap_UpdateAlphaBitmapParameters(This,pBmpParms) (This)->lpVtbl->UpdateAlphaBitmapParameters(This,pBmpParms) 16556 #define IVMRMixerBitmap_GetAlphaBitmapParameters(This,pBmpParms) (This)->lpVtbl->GetAlphaBitmapParameters(This,pBmpParms) 16557 #endif 16558 #endif 16559 HRESULT WINAPI IVMRMixerBitmap_SetAlphaBitmap_Proxy(IVMRMixerBitmap *This,const VMRALPHABITMAP *pBmpParms); 16560 void __RPC_STUB IVMRMixerBitmap_SetAlphaBitmap_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16561 HRESULT WINAPI IVMRMixerBitmap_UpdateAlphaBitmapParameters_Proxy(IVMRMixerBitmap *This,PVMRALPHABITMAP pBmpParms); 16562 void __RPC_STUB IVMRMixerBitmap_UpdateAlphaBitmapParameters_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16563 HRESULT WINAPI IVMRMixerBitmap_GetAlphaBitmapParameters_Proxy(IVMRMixerBitmap *This,PVMRALPHABITMAP pBmpParms); 16564 void __RPC_STUB IVMRMixerBitmap_GetAlphaBitmapParameters_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16565 #endif 16566 16567 typedef struct _VMRVIDEOSTREAMINFO { 16568 LPDIRECTDRAWSURFACE7 pddsVideoSurface; 16569 DWORD dwWidth; 16570 DWORD dwHeight; 16571 DWORD dwStrmID; 16572 FLOAT fAlpha; 16573 DDCOLORKEY ddClrKey; 16574 NORMALIZEDRECT rNormal; 16575 } VMRVIDEOSTREAMINFO; 16576 16577 extern RPC_IF_HANDLE __MIDL_itf_strmif_0407_v0_0_c_ifspec; 16578 extern RPC_IF_HANDLE __MIDL_itf_strmif_0407_v0_0_s_ifspec; 16579 #ifndef __IVMRImageCompositor_INTERFACE_DEFINED__ 16580 #define __IVMRImageCompositor_INTERFACE_DEFINED__ 16581 EXTERN_C const IID IID_IVMRImageCompositor; 16582 #if defined(__cplusplus) && !defined(CINTERFACE) 16583 struct IVMRImageCompositor : public IUnknown { 16584 public: 16585 virtual HRESULT WINAPI InitCompositionTarget(IUnknown *pD3DDevice,LPDIRECTDRAWSURFACE7 pddsRenderTarget) = 0; 16586 virtual HRESULT WINAPI TermCompositionTarget(IUnknown *pD3DDevice,LPDIRECTDRAWSURFACE7 pddsRenderTarget) = 0; 16587 virtual HRESULT WINAPI SetStreamMediaType(DWORD dwStrmID,AM_MEDIA_TYPE *pmt,WINBOOL fTexture) = 0; 16588 virtual HRESULT WINAPI CompositeImage(IUnknown *pD3DDevice,LPDIRECTDRAWSURFACE7 pddsRenderTarget,AM_MEDIA_TYPE *pmtRenderTarget,REFERENCE_TIME rtStart,REFERENCE_TIME rtEnd,DWORD dwClrBkGnd,VMRVIDEOSTREAMINFO *pVideoStreamInfo,UINT cStreams) = 0; 16589 }; 16590 #else 16591 typedef struct IVMRImageCompositorVtbl { 16592 BEGIN_INTERFACE 16593 HRESULT (WINAPI *QueryInterface)(IVMRImageCompositor *This,REFIID riid,void **ppvObject); 16594 ULONG (WINAPI *AddRef)(IVMRImageCompositor *This); 16595 ULONG (WINAPI *Release)(IVMRImageCompositor *This); 16596 HRESULT (WINAPI *InitCompositionTarget)(IVMRImageCompositor *This,IUnknown *pD3DDevice,LPDIRECTDRAWSURFACE7 pddsRenderTarget); 16597 HRESULT (WINAPI *TermCompositionTarget)(IVMRImageCompositor *This,IUnknown *pD3DDevice,LPDIRECTDRAWSURFACE7 pddsRenderTarget); 16598 HRESULT (WINAPI *SetStreamMediaType)(IVMRImageCompositor *This,DWORD dwStrmID,AM_MEDIA_TYPE *pmt,WINBOOL fTexture); 16599 HRESULT (WINAPI *CompositeImage)(IVMRImageCompositor *This,IUnknown *pD3DDevice,LPDIRECTDRAWSURFACE7 pddsRenderTarget,AM_MEDIA_TYPE *pmtRenderTarget,REFERENCE_TIME rtStart,REFERENCE_TIME rtEnd,DWORD dwClrBkGnd,VMRVIDEOSTREAMINFO *pVideoStreamInfo,UINT cStreams); 16600 END_INTERFACE 16601 } IVMRImageCompositorVtbl; 16602 struct IVMRImageCompositor { 16603 CONST_VTBL struct IVMRImageCompositorVtbl *lpVtbl; 16604 }; 16605 #ifdef COBJMACROS 16606 #define IVMRImageCompositor_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16607 #define IVMRImageCompositor_AddRef(This) (This)->lpVtbl->AddRef(This) 16608 #define IVMRImageCompositor_Release(This) (This)->lpVtbl->Release(This) 16609 #define IVMRImageCompositor_InitCompositionTarget(This,pD3DDevice,pddsRenderTarget) (This)->lpVtbl->InitCompositionTarget(This,pD3DDevice,pddsRenderTarget) 16610 #define IVMRImageCompositor_TermCompositionTarget(This,pD3DDevice,pddsRenderTarget) (This)->lpVtbl->TermCompositionTarget(This,pD3DDevice,pddsRenderTarget) 16611 #define IVMRImageCompositor_SetStreamMediaType(This,dwStrmID,pmt,fTexture) (This)->lpVtbl->SetStreamMediaType(This,dwStrmID,pmt,fTexture) 16612 #define IVMRImageCompositor_CompositeImage(This,pD3DDevice,pddsRenderTarget,pmtRenderTarget,rtStart,rtEnd,dwClrBkGnd,pVideoStreamInfo,cStreams) (This)->lpVtbl->CompositeImage(This,pD3DDevice,pddsRenderTarget,pmtRenderTarget,rtStart,rtEnd,dwClrBkGnd,pVideoStreamInfo,cStreams) 16613 #endif 16614 #endif 16615 HRESULT WINAPI IVMRImageCompositor_InitCompositionTarget_Proxy(IVMRImageCompositor *This,IUnknown *pD3DDevice,LPDIRECTDRAWSURFACE7 pddsRenderTarget); 16616 void __RPC_STUB IVMRImageCompositor_InitCompositionTarget_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16617 HRESULT WINAPI IVMRImageCompositor_TermCompositionTarget_Proxy(IVMRImageCompositor *This,IUnknown *pD3DDevice,LPDIRECTDRAWSURFACE7 pddsRenderTarget); 16618 void __RPC_STUB IVMRImageCompositor_TermCompositionTarget_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16619 HRESULT WINAPI IVMRImageCompositor_SetStreamMediaType_Proxy(IVMRImageCompositor *This,DWORD dwStrmID,AM_MEDIA_TYPE *pmt,WINBOOL fTexture); 16620 void __RPC_STUB IVMRImageCompositor_SetStreamMediaType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16621 HRESULT WINAPI IVMRImageCompositor_CompositeImage_Proxy(IVMRImageCompositor *This,IUnknown *pD3DDevice,LPDIRECTDRAWSURFACE7 pddsRenderTarget,AM_MEDIA_TYPE *pmtRenderTarget,REFERENCE_TIME rtStart,REFERENCE_TIME rtEnd,DWORD dwClrBkGnd,VMRVIDEOSTREAMINFO *pVideoStreamInfo,UINT cStreams); 16622 void __RPC_STUB IVMRImageCompositor_CompositeImage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16623 #endif 16624 16625 #ifndef __IVMRVideoStreamControl_INTERFACE_DEFINED__ 16626 #define __IVMRVideoStreamControl_INTERFACE_DEFINED__ 16627 EXTERN_C const IID IID_IVMRVideoStreamControl; 16628 #if defined(__cplusplus) && !defined(CINTERFACE) 16629 struct IVMRVideoStreamControl : public IUnknown { 16630 public: 16631 virtual HRESULT WINAPI SetColorKey(LPDDCOLORKEY lpClrKey) = 0; 16632 virtual HRESULT WINAPI GetColorKey(LPDDCOLORKEY lpClrKey) = 0; 16633 virtual HRESULT WINAPI SetStreamActiveState(WINBOOL fActive) = 0; 16634 virtual HRESULT WINAPI GetStreamActiveState(WINBOOL *lpfActive) = 0; 16635 }; 16636 #else 16637 typedef struct IVMRVideoStreamControlVtbl { 16638 BEGIN_INTERFACE 16639 HRESULT (WINAPI *QueryInterface)(IVMRVideoStreamControl *This,REFIID riid,void **ppvObject); 16640 ULONG (WINAPI *AddRef)(IVMRVideoStreamControl *This); 16641 ULONG (WINAPI *Release)(IVMRVideoStreamControl *This); 16642 HRESULT (WINAPI *SetColorKey)(IVMRVideoStreamControl *This,LPDDCOLORKEY lpClrKey); 16643 HRESULT (WINAPI *GetColorKey)(IVMRVideoStreamControl *This,LPDDCOLORKEY lpClrKey); 16644 HRESULT (WINAPI *SetStreamActiveState)(IVMRVideoStreamControl *This,WINBOOL fActive); 16645 HRESULT (WINAPI *GetStreamActiveState)(IVMRVideoStreamControl *This,WINBOOL *lpfActive); 16646 END_INTERFACE 16647 } IVMRVideoStreamControlVtbl; 16648 struct IVMRVideoStreamControl { 16649 CONST_VTBL struct IVMRVideoStreamControlVtbl *lpVtbl; 16650 }; 16651 #ifdef COBJMACROS 16652 #define IVMRVideoStreamControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16653 #define IVMRVideoStreamControl_AddRef(This) (This)->lpVtbl->AddRef(This) 16654 #define IVMRVideoStreamControl_Release(This) (This)->lpVtbl->Release(This) 16655 #define IVMRVideoStreamControl_SetColorKey(This,lpClrKey) (This)->lpVtbl->SetColorKey(This,lpClrKey) 16656 #define IVMRVideoStreamControl_GetColorKey(This,lpClrKey) (This)->lpVtbl->GetColorKey(This,lpClrKey) 16657 #define IVMRVideoStreamControl_SetStreamActiveState(This,fActive) (This)->lpVtbl->SetStreamActiveState(This,fActive) 16658 #define IVMRVideoStreamControl_GetStreamActiveState(This,lpfActive) (This)->lpVtbl->GetStreamActiveState(This,lpfActive) 16659 #endif 16660 #endif 16661 HRESULT WINAPI IVMRVideoStreamControl_SetColorKey_Proxy(IVMRVideoStreamControl *This,LPDDCOLORKEY lpClrKey); 16662 void __RPC_STUB IVMRVideoStreamControl_SetColorKey_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16663 HRESULT WINAPI IVMRVideoStreamControl_GetColorKey_Proxy(IVMRVideoStreamControl *This,LPDDCOLORKEY lpClrKey); 16664 void __RPC_STUB IVMRVideoStreamControl_GetColorKey_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16665 HRESULT WINAPI IVMRVideoStreamControl_SetStreamActiveState_Proxy(IVMRVideoStreamControl *This,WINBOOL fActive); 16666 void __RPC_STUB IVMRVideoStreamControl_SetStreamActiveState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16667 HRESULT WINAPI IVMRVideoStreamControl_GetStreamActiveState_Proxy(IVMRVideoStreamControl *This,WINBOOL *lpfActive); 16668 void __RPC_STUB IVMRVideoStreamControl_GetStreamActiveState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16669 #endif 16670 16671 #ifndef __IVMRSurface_INTERFACE_DEFINED__ 16672 #define __IVMRSurface_INTERFACE_DEFINED__ 16673 EXTERN_C const IID IID_IVMRSurface; 16674 #if defined(__cplusplus) && !defined(CINTERFACE) 16675 struct IVMRSurface : public IUnknown { 16676 public: 16677 virtual HRESULT WINAPI IsSurfaceLocked(void) = 0; 16678 virtual HRESULT WINAPI LockSurface(BYTE **lpSurface) = 0; 16679 virtual HRESULT WINAPI UnlockSurface(void) = 0; 16680 virtual HRESULT WINAPI GetSurface(LPDIRECTDRAWSURFACE7 *lplpSurface) = 0; 16681 }; 16682 #else 16683 typedef struct IVMRSurfaceVtbl { 16684 BEGIN_INTERFACE 16685 HRESULT (WINAPI *QueryInterface)(IVMRSurface *This,REFIID riid,void **ppvObject); 16686 ULONG (WINAPI *AddRef)(IVMRSurface *This); 16687 ULONG (WINAPI *Release)(IVMRSurface *This); 16688 HRESULT (WINAPI *IsSurfaceLocked)(IVMRSurface *This); 16689 HRESULT (WINAPI *LockSurface)(IVMRSurface *This,BYTE **lpSurface); 16690 HRESULT (WINAPI *UnlockSurface)(IVMRSurface *This); 16691 HRESULT (WINAPI *GetSurface)(IVMRSurface *This,LPDIRECTDRAWSURFACE7 *lplpSurface); 16692 END_INTERFACE 16693 } IVMRSurfaceVtbl; 16694 struct IVMRSurface { 16695 CONST_VTBL struct IVMRSurfaceVtbl *lpVtbl; 16696 }; 16697 #ifdef COBJMACROS 16698 #define IVMRSurface_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16699 #define IVMRSurface_AddRef(This) (This)->lpVtbl->AddRef(This) 16700 #define IVMRSurface_Release(This) (This)->lpVtbl->Release(This) 16701 #define IVMRSurface_IsSurfaceLocked(This) (This)->lpVtbl->IsSurfaceLocked(This) 16702 #define IVMRSurface_LockSurface(This,lpSurface) (This)->lpVtbl->LockSurface(This,lpSurface) 16703 #define IVMRSurface_UnlockSurface(This) (This)->lpVtbl->UnlockSurface(This) 16704 #define IVMRSurface_GetSurface(This,lplpSurface) (This)->lpVtbl->GetSurface(This,lplpSurface) 16705 #endif 16706 #endif 16707 HRESULT WINAPI IVMRSurface_IsSurfaceLocked_Proxy(IVMRSurface *This); 16708 void __RPC_STUB IVMRSurface_IsSurfaceLocked_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16709 HRESULT WINAPI IVMRSurface_LockSurface_Proxy(IVMRSurface *This,BYTE **lpSurface); 16710 void __RPC_STUB IVMRSurface_LockSurface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16711 HRESULT WINAPI IVMRSurface_UnlockSurface_Proxy(IVMRSurface *This); 16712 void __RPC_STUB IVMRSurface_UnlockSurface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16713 HRESULT WINAPI IVMRSurface_GetSurface_Proxy(IVMRSurface *This,LPDIRECTDRAWSURFACE7 *lplpSurface); 16714 void __RPC_STUB IVMRSurface_GetSurface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16715 #endif 16716 16717 #ifndef __IVMRImagePresenterConfig_INTERFACE_DEFINED__ 16718 #define __IVMRImagePresenterConfig_INTERFACE_DEFINED__ 16719 EXTERN_C const IID IID_IVMRImagePresenterConfig; 16720 16721 #if defined(__cplusplus) && !defined(CINTERFACE) 16722 struct IVMRImagePresenterConfig : public IUnknown { 16723 public: 16724 virtual HRESULT WINAPI SetRenderingPrefs(DWORD dwRenderFlags) = 0; 16725 virtual HRESULT WINAPI GetRenderingPrefs(DWORD *dwRenderFlags) = 0; 16726 }; 16727 #else 16728 typedef struct IVMRImagePresenterConfigVtbl { 16729 BEGIN_INTERFACE 16730 HRESULT (WINAPI *QueryInterface)(IVMRImagePresenterConfig *This,REFIID riid,void **ppvObject); 16731 ULONG (WINAPI *AddRef)(IVMRImagePresenterConfig *This); 16732 ULONG (WINAPI *Release)(IVMRImagePresenterConfig *This); 16733 HRESULT (WINAPI *SetRenderingPrefs)(IVMRImagePresenterConfig *This,DWORD dwRenderFlags); 16734 HRESULT (WINAPI *GetRenderingPrefs)(IVMRImagePresenterConfig *This,DWORD *dwRenderFlags); 16735 END_INTERFACE 16736 } IVMRImagePresenterConfigVtbl; 16737 struct IVMRImagePresenterConfig { 16738 CONST_VTBL struct IVMRImagePresenterConfigVtbl *lpVtbl; 16739 }; 16740 #ifdef COBJMACROS 16741 #define IVMRImagePresenterConfig_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16742 #define IVMRImagePresenterConfig_AddRef(This) (This)->lpVtbl->AddRef(This) 16743 #define IVMRImagePresenterConfig_Release(This) (This)->lpVtbl->Release(This) 16744 #define IVMRImagePresenterConfig_SetRenderingPrefs(This,dwRenderFlags) (This)->lpVtbl->SetRenderingPrefs(This,dwRenderFlags) 16745 #define IVMRImagePresenterConfig_GetRenderingPrefs(This,dwRenderFlags) (This)->lpVtbl->GetRenderingPrefs(This,dwRenderFlags) 16746 #endif 16747 #endif 16748 HRESULT WINAPI IVMRImagePresenterConfig_SetRenderingPrefs_Proxy(IVMRImagePresenterConfig *This,DWORD dwRenderFlags); 16749 void __RPC_STUB IVMRImagePresenterConfig_SetRenderingPrefs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16750 HRESULT WINAPI IVMRImagePresenterConfig_GetRenderingPrefs_Proxy(IVMRImagePresenterConfig *This,DWORD *dwRenderFlags); 16751 void __RPC_STUB IVMRImagePresenterConfig_GetRenderingPrefs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16752 #endif 16753 16754 #ifndef __IVMRImagePresenterExclModeConfig_INTERFACE_DEFINED__ 16755 #define __IVMRImagePresenterExclModeConfig_INTERFACE_DEFINED__ 16756 EXTERN_C const IID IID_IVMRImagePresenterExclModeConfig; 16757 #if defined(__cplusplus) && !defined(CINTERFACE) 16758 struct IVMRImagePresenterExclModeConfig : public IVMRImagePresenterConfig { 16759 public: 16760 virtual HRESULT WINAPI SetXlcModeDDObjAndPrimarySurface(LPDIRECTDRAW7 lpDDObj,LPDIRECTDRAWSURFACE7 lpPrimarySurf) = 0; 16761 virtual HRESULT WINAPI GetXlcModeDDObjAndPrimarySurface(LPDIRECTDRAW7 *lpDDObj,LPDIRECTDRAWSURFACE7 *lpPrimarySurf) = 0; 16762 }; 16763 #else 16764 typedef struct IVMRImagePresenterExclModeConfigVtbl { 16765 BEGIN_INTERFACE 16766 HRESULT (WINAPI *QueryInterface)(IVMRImagePresenterExclModeConfig *This,REFIID riid,void **ppvObject); 16767 ULONG (WINAPI *AddRef)(IVMRImagePresenterExclModeConfig *This); 16768 ULONG (WINAPI *Release)(IVMRImagePresenterExclModeConfig *This); 16769 HRESULT (WINAPI *SetRenderingPrefs)(IVMRImagePresenterExclModeConfig *This,DWORD dwRenderFlags); 16770 HRESULT (WINAPI *GetRenderingPrefs)(IVMRImagePresenterExclModeConfig *This,DWORD *dwRenderFlags); 16771 HRESULT (WINAPI *SetXlcModeDDObjAndPrimarySurface)(IVMRImagePresenterExclModeConfig *This,LPDIRECTDRAW7 lpDDObj,LPDIRECTDRAWSURFACE7 lpPrimarySurf); 16772 HRESULT (WINAPI *GetXlcModeDDObjAndPrimarySurface)(IVMRImagePresenterExclModeConfig *This,LPDIRECTDRAW7 *lpDDObj,LPDIRECTDRAWSURFACE7 *lpPrimarySurf); 16773 END_INTERFACE 16774 } IVMRImagePresenterExclModeConfigVtbl; 16775 struct IVMRImagePresenterExclModeConfig { 16776 CONST_VTBL struct IVMRImagePresenterExclModeConfigVtbl *lpVtbl; 16777 }; 16778 #ifdef COBJMACROS 16779 #define IVMRImagePresenterExclModeConfig_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16780 #define IVMRImagePresenterExclModeConfig_AddRef(This) (This)->lpVtbl->AddRef(This) 16781 #define IVMRImagePresenterExclModeConfig_Release(This) (This)->lpVtbl->Release(This) 16782 #define IVMRImagePresenterExclModeConfig_SetRenderingPrefs(This,dwRenderFlags) (This)->lpVtbl->SetRenderingPrefs(This,dwRenderFlags) 16783 #define IVMRImagePresenterExclModeConfig_GetRenderingPrefs(This,dwRenderFlags) (This)->lpVtbl->GetRenderingPrefs(This,dwRenderFlags) 16784 #define IVMRImagePresenterExclModeConfig_SetXlcModeDDObjAndPrimarySurface(This,lpDDObj,lpPrimarySurf) (This)->lpVtbl->SetXlcModeDDObjAndPrimarySurface(This,lpDDObj,lpPrimarySurf) 16785 #define IVMRImagePresenterExclModeConfig_GetXlcModeDDObjAndPrimarySurface(This,lpDDObj,lpPrimarySurf) (This)->lpVtbl->GetXlcModeDDObjAndPrimarySurface(This,lpDDObj,lpPrimarySurf) 16786 #endif 16787 #endif 16788 HRESULT WINAPI IVMRImagePresenterExclModeConfig_SetXlcModeDDObjAndPrimarySurface_Proxy(IVMRImagePresenterExclModeConfig *This,LPDIRECTDRAW7 lpDDObj,LPDIRECTDRAWSURFACE7 lpPrimarySurf); 16789 void __RPC_STUB IVMRImagePresenterExclModeConfig_SetXlcModeDDObjAndPrimarySurface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16790 HRESULT WINAPI IVMRImagePresenterExclModeConfig_GetXlcModeDDObjAndPrimarySurface_Proxy(IVMRImagePresenterExclModeConfig *This,LPDIRECTDRAW7 *lpDDObj,LPDIRECTDRAWSURFACE7 *lpPrimarySurf); 16791 void __RPC_STUB IVMRImagePresenterExclModeConfig_GetXlcModeDDObjAndPrimarySurface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16792 #endif 16793 16794 #ifndef __IVPManager_INTERFACE_DEFINED__ 16795 #define __IVPManager_INTERFACE_DEFINED__ 16796 EXTERN_C const IID IID_IVPManager; 16797 #if defined(__cplusplus) && !defined(CINTERFACE) 16798 struct IVPManager : public IUnknown { 16799 public: 16800 virtual HRESULT WINAPI SetVideoPortIndex(DWORD dwVideoPortIndex) = 0; 16801 virtual HRESULT WINAPI GetVideoPortIndex(DWORD *pdwVideoPortIndex) = 0; 16802 }; 16803 #else 16804 typedef struct IVPManagerVtbl { 16805 BEGIN_INTERFACE 16806 HRESULT (WINAPI *QueryInterface)(IVPManager *This,REFIID riid,void **ppvObject); 16807 ULONG (WINAPI *AddRef)(IVPManager *This); 16808 ULONG (WINAPI *Release)(IVPManager *This); 16809 HRESULT (WINAPI *SetVideoPortIndex)(IVPManager *This,DWORD dwVideoPortIndex); 16810 HRESULT (WINAPI *GetVideoPortIndex)(IVPManager *This,DWORD *pdwVideoPortIndex); 16811 END_INTERFACE 16812 } IVPManagerVtbl; 16813 struct IVPManager { 16814 CONST_VTBL struct IVPManagerVtbl *lpVtbl; 16815 }; 16816 #ifdef COBJMACROS 16817 #define IVPManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16818 #define IVPManager_AddRef(This) (This)->lpVtbl->AddRef(This) 16819 #define IVPManager_Release(This) (This)->lpVtbl->Release(This) 16820 #define IVPManager_SetVideoPortIndex(This,dwVideoPortIndex) (This)->lpVtbl->SetVideoPortIndex(This,dwVideoPortIndex) 16821 #define IVPManager_GetVideoPortIndex(This,pdwVideoPortIndex) (This)->lpVtbl->GetVideoPortIndex(This,pdwVideoPortIndex) 16822 #endif 16823 #endif 16824 HRESULT WINAPI IVPManager_SetVideoPortIndex_Proxy(IVPManager *This,DWORD dwVideoPortIndex); 16825 void __RPC_STUB IVPManager_SetVideoPortIndex_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16826 HRESULT WINAPI IVPManager_GetVideoPortIndex_Proxy(IVPManager *This,DWORD *pdwVideoPortIndex); 16827 void __RPC_STUB IVPManager_GetVideoPortIndex_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 16828 #endif 16829 16830 extern RPC_IF_HANDLE __MIDL_itf_strmif_0413_v0_0_c_ifspec; 16831 extern RPC_IF_HANDLE __MIDL_itf_strmif_0413_v0_0_s_ifspec; 16832 /* Begin additional prototypes for all interfaces */ 16833 16834 16835 /* End additional prototypes */ 16836 16837 #ifdef __cplusplus 16838 } 16839 #endif 16840 16841 #endif /* __strmif_h__ */ 16842