Home | History | Annotate | Download | only in include
      1 /*** Autogenerated by WIDL 1.6 from direct-x/include/amvideo.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 __amvideo_h__
     16 #define __amvideo_h__
     17 
     18 /* Forward declarations */
     19 
     20 #ifndef __IDirectDrawVideo_FWD_DEFINED__
     21 #define __IDirectDrawVideo_FWD_DEFINED__
     22 typedef interface IDirectDrawVideo IDirectDrawVideo;
     23 #endif
     24 
     25 #ifndef __IQualProp_FWD_DEFINED__
     26 #define __IQualProp_FWD_DEFINED__
     27 typedef interface IQualProp IQualProp;
     28 #endif
     29 
     30 #ifndef __IFullScreenVideo_FWD_DEFINED__
     31 #define __IFullScreenVideo_FWD_DEFINED__
     32 typedef interface IFullScreenVideo IFullScreenVideo;
     33 #endif
     34 
     35 #ifndef __IFullScreenVideoEx_FWD_DEFINED__
     36 #define __IFullScreenVideoEx_FWD_DEFINED__
     37 typedef interface IFullScreenVideoEx IFullScreenVideoEx;
     38 #endif
     39 
     40 #ifndef __IBaseVideoMixer_FWD_DEFINED__
     41 #define __IBaseVideoMixer_FWD_DEFINED__
     42 typedef interface IBaseVideoMixer IBaseVideoMixer;
     43 #endif
     44 
     45 /* Headers for imported files */
     46 
     47 #include <objidl.h>
     48 
     49 #ifdef __cplusplus
     50 extern "C" {
     51 #endif
     52 
     53 #if 0
     54 #ifndef __IDirectDraw_FWD_DEFINED__
     55 #define __IDirectDraw_FWD_DEFINED__
     56 typedef interface IDirectDraw IDirectDraw;
     57 #endif
     58 
     59 typedef void DDSURFACEDESC;
     60 typedef void DDCAPS;
     61 typedef DWORD RGBQUAD;
     62 typedef LONGLONG REFERENCE_TIME;
     63 typedef struct __WIDL_amvideo_generated_name_00000002 {
     64     DWORD biSize;
     65     LONG biWidth;
     66     LONG biHeight;
     67     WORD biPlanes;
     68     WORD biBitCount;
     69     DWORD biCompression;
     70     DWORD biSizeImage;
     71     LONG biXPelsPerMeter;
     72     LONG biYPelsPerMeter;
     73     DWORD biClrUsed;
     74     DWORD biClrImportant;
     75 } BITMAPINFOHEADER;
     76 typedef struct __WIDL_amvideo_generated_name_00000002 *PBITMAPINFOHEADER;
     77 typedef struct __WIDL_amvideo_generated_name_00000002 *LPBITMAPINFOHEADER;
     78 #endif
     79 #include <ddraw.h>
     80 #define AMDDS_NONE 0x00
     81 #define AMDDS_DCIPS 0x01
     82 #define AMDDS_PS 0x02
     83 #define AMDDS_RGBOVR 0x04
     84 #define AMDDS_YUVOVR 0x08
     85 #define AMDDS_RGBOFF 0x10
     86 #define AMDDS_YUVOFF 0x20
     87 #define AMDDS_RGBFLP 0x40
     88 #define AMDDS_YUVFLP 0x80
     89 #define AMDDS_ALL 0xFF
     90 #define AMDDS_DEFAULT AMDDS_ALL
     91 #define AMDDS_YUV (AMDDS_YUVOFF | AMDDS_YUVOVR | AMDDS_YUVFLP)
     92 #define AMDDS_RGB (AMDDS_RGBOFF | AMDDS_RGBOVR | AMDDS_RGBFLP)
     93 #define AMDSS_PRIMARY (AMDDS_DCIPS | AMDDS_PS)
     94 /*****************************************************************************
     95  * IDirectDrawVideo interface
     96  */
     97 #ifndef __IDirectDrawVideo_INTERFACE_DEFINED__
     98 #define __IDirectDrawVideo_INTERFACE_DEFINED__
     99 
    100 #if defined(__cplusplus) && !defined(CINTERFACE)
    101 interface IDirectDrawVideo : public IUnknown
    102 {
    103     virtual HRESULT STDMETHODCALLTYPE GetSwitches(
    104         DWORD *pSwitches) = 0;
    105 
    106     virtual HRESULT STDMETHODCALLTYPE SetSwitches(
    107         DWORD Switches) = 0;
    108 
    109     virtual HRESULT STDMETHODCALLTYPE GetCaps(
    110         DDCAPS *pCaps) = 0;
    111 
    112     virtual HRESULT STDMETHODCALLTYPE GetEmulatedCaps(
    113         DDCAPS *pCaps) = 0;
    114 
    115     virtual HRESULT STDMETHODCALLTYPE GetSurfaceDesc(
    116         DDSURFACEDESC *pSurfaceDesc) = 0;
    117 
    118     virtual HRESULT STDMETHODCALLTYPE GetFourCCCodes(
    119         DWORD *pCount,
    120         DWORD *pCodes) = 0;
    121 
    122     virtual HRESULT STDMETHODCALLTYPE SetDirectDraw(
    123         IDirectDraw *ddraw) = 0;
    124 
    125     virtual HRESULT STDMETHODCALLTYPE GetDirectDraw(
    126         IDirectDraw **ddraw) = 0;
    127 
    128     virtual HRESULT STDMETHODCALLTYPE GetSurfaceType(
    129         DWORD *pSurfaceType) = 0;
    130 
    131     virtual HRESULT STDMETHODCALLTYPE SetDefault(
    132         ) = 0;
    133 
    134     virtual HRESULT STDMETHODCALLTYPE UseScanLine(
    135         LONG UseScanLine) = 0;
    136 
    137     virtual HRESULT STDMETHODCALLTYPE CanUseScanLine(
    138         LONG *UseScanLine) = 0;
    139 
    140     virtual HRESULT STDMETHODCALLTYPE UseOverlayStretch(
    141         LONG UseOverlayStretch) = 0;
    142 
    143     virtual HRESULT STDMETHODCALLTYPE CanUseOverlayStretch(
    144         LONG *UseOverlayStretch) = 0;
    145 
    146     virtual HRESULT STDMETHODCALLTYPE UseWhenFullScreen(
    147         LONG UseWhenFullScreen) = 0;
    148 
    149     virtual HRESULT STDMETHODCALLTYPE WillUseFullScreen(
    150         LONG *UseWhenFullScreen) = 0;
    151 
    152 };
    153 #else
    154 typedef struct IDirectDrawVideoVtbl {
    155     BEGIN_INTERFACE
    156 
    157     /*** IUnknown methods ***/
    158     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    159         IDirectDrawVideo* This,
    160         REFIID riid,
    161         void **ppvObject);
    162 
    163     ULONG (STDMETHODCALLTYPE *AddRef)(
    164         IDirectDrawVideo* This);
    165 
    166     ULONG (STDMETHODCALLTYPE *Release)(
    167         IDirectDrawVideo* This);
    168 
    169     /*** IDirectDrawVideo methods ***/
    170     HRESULT (STDMETHODCALLTYPE *GetSwitches)(
    171         IDirectDrawVideo* This,
    172         DWORD *pSwitches);
    173 
    174     HRESULT (STDMETHODCALLTYPE *SetSwitches)(
    175         IDirectDrawVideo* This,
    176         DWORD Switches);
    177 
    178     HRESULT (STDMETHODCALLTYPE *GetCaps)(
    179         IDirectDrawVideo* This,
    180         DDCAPS *pCaps);
    181 
    182     HRESULT (STDMETHODCALLTYPE *GetEmulatedCaps)(
    183         IDirectDrawVideo* This,
    184         DDCAPS *pCaps);
    185 
    186     HRESULT (STDMETHODCALLTYPE *GetSurfaceDesc)(
    187         IDirectDrawVideo* This,
    188         DDSURFACEDESC *pSurfaceDesc);
    189 
    190     HRESULT (STDMETHODCALLTYPE *GetFourCCCodes)(
    191         IDirectDrawVideo* This,
    192         DWORD *pCount,
    193         DWORD *pCodes);
    194 
    195     HRESULT (STDMETHODCALLTYPE *SetDirectDraw)(
    196         IDirectDrawVideo* This,
    197         IDirectDraw *ddraw);
    198 
    199     HRESULT (STDMETHODCALLTYPE *GetDirectDraw)(
    200         IDirectDrawVideo* This,
    201         IDirectDraw **ddraw);
    202 
    203     HRESULT (STDMETHODCALLTYPE *GetSurfaceType)(
    204         IDirectDrawVideo* This,
    205         DWORD *pSurfaceType);
    206 
    207     HRESULT (STDMETHODCALLTYPE *SetDefault)(
    208         IDirectDrawVideo* This);
    209 
    210     HRESULT (STDMETHODCALLTYPE *UseScanLine)(
    211         IDirectDrawVideo* This,
    212         LONG UseScanLine);
    213 
    214     HRESULT (STDMETHODCALLTYPE *CanUseScanLine)(
    215         IDirectDrawVideo* This,
    216         LONG *UseScanLine);
    217 
    218     HRESULT (STDMETHODCALLTYPE *UseOverlayStretch)(
    219         IDirectDrawVideo* This,
    220         LONG UseOverlayStretch);
    221 
    222     HRESULT (STDMETHODCALLTYPE *CanUseOverlayStretch)(
    223         IDirectDrawVideo* This,
    224         LONG *UseOverlayStretch);
    225 
    226     HRESULT (STDMETHODCALLTYPE *UseWhenFullScreen)(
    227         IDirectDrawVideo* This,
    228         LONG UseWhenFullScreen);
    229 
    230     HRESULT (STDMETHODCALLTYPE *WillUseFullScreen)(
    231         IDirectDrawVideo* This,
    232         LONG *UseWhenFullScreen);
    233 
    234     END_INTERFACE
    235 } IDirectDrawVideoVtbl;
    236 interface IDirectDrawVideo {
    237     CONST_VTBL IDirectDrawVideoVtbl* lpVtbl;
    238 };
    239 
    240 #ifdef COBJMACROS
    241 #ifndef WIDL_C_INLINE_WRAPPERS
    242 /*** IUnknown methods ***/
    243 #define IDirectDrawVideo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    244 #define IDirectDrawVideo_AddRef(This) (This)->lpVtbl->AddRef(This)
    245 #define IDirectDrawVideo_Release(This) (This)->lpVtbl->Release(This)
    246 /*** IDirectDrawVideo methods ***/
    247 #define IDirectDrawVideo_GetSwitches(This,pSwitches) (This)->lpVtbl->GetSwitches(This,pSwitches)
    248 #define IDirectDrawVideo_SetSwitches(This,Switches) (This)->lpVtbl->SetSwitches(This,Switches)
    249 #define IDirectDrawVideo_GetCaps(This,pCaps) (This)->lpVtbl->GetCaps(This,pCaps)
    250 #define IDirectDrawVideo_GetEmulatedCaps(This,pCaps) (This)->lpVtbl->GetEmulatedCaps(This,pCaps)
    251 #define IDirectDrawVideo_GetSurfaceDesc(This,pSurfaceDesc) (This)->lpVtbl->GetSurfaceDesc(This,pSurfaceDesc)
    252 #define IDirectDrawVideo_GetFourCCCodes(This,pCount,pCodes) (This)->lpVtbl->GetFourCCCodes(This,pCount,pCodes)
    253 #define IDirectDrawVideo_SetDirectDraw(This,ddraw) (This)->lpVtbl->SetDirectDraw(This,ddraw)
    254 #define IDirectDrawVideo_GetDirectDraw(This,ddraw) (This)->lpVtbl->GetDirectDraw(This,ddraw)
    255 #define IDirectDrawVideo_GetSurfaceType(This,pSurfaceType) (This)->lpVtbl->GetSurfaceType(This,pSurfaceType)
    256 #define IDirectDrawVideo_SetDefault(This) (This)->lpVtbl->SetDefault(This)
    257 #define IDirectDrawVideo_UseScanLine(This,UseScanLine) (This)->lpVtbl->UseScanLine(This,UseScanLine)
    258 #define IDirectDrawVideo_CanUseScanLine(This,UseScanLine) (This)->lpVtbl->CanUseScanLine(This,UseScanLine)
    259 #define IDirectDrawVideo_UseOverlayStretch(This,UseOverlayStretch) (This)->lpVtbl->UseOverlayStretch(This,UseOverlayStretch)
    260 #define IDirectDrawVideo_CanUseOverlayStretch(This,UseOverlayStretch) (This)->lpVtbl->CanUseOverlayStretch(This,UseOverlayStretch)
    261 #define IDirectDrawVideo_UseWhenFullScreen(This,UseWhenFullScreen) (This)->lpVtbl->UseWhenFullScreen(This,UseWhenFullScreen)
    262 #define IDirectDrawVideo_WillUseFullScreen(This,UseWhenFullScreen) (This)->lpVtbl->WillUseFullScreen(This,UseWhenFullScreen)
    263 #else
    264 /*** IUnknown methods ***/
    265 static FORCEINLINE HRESULT IDirectDrawVideo_QueryInterface(IDirectDrawVideo* This,REFIID riid,void **ppvObject) {
    266     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    267 }
    268 static FORCEINLINE ULONG IDirectDrawVideo_AddRef(IDirectDrawVideo* This) {
    269     return This->lpVtbl->AddRef(This);
    270 }
    271 static FORCEINLINE ULONG IDirectDrawVideo_Release(IDirectDrawVideo* This) {
    272     return This->lpVtbl->Release(This);
    273 }
    274 /*** IDirectDrawVideo methods ***/
    275 static FORCEINLINE HRESULT IDirectDrawVideo_GetSwitches(IDirectDrawVideo* This,DWORD *pSwitches) {
    276     return This->lpVtbl->GetSwitches(This,pSwitches);
    277 }
    278 static FORCEINLINE HRESULT IDirectDrawVideo_SetSwitches(IDirectDrawVideo* This,DWORD Switches) {
    279     return This->lpVtbl->SetSwitches(This,Switches);
    280 }
    281 static FORCEINLINE HRESULT IDirectDrawVideo_GetCaps(IDirectDrawVideo* This,DDCAPS *pCaps) {
    282     return This->lpVtbl->GetCaps(This,pCaps);
    283 }
    284 static FORCEINLINE HRESULT IDirectDrawVideo_GetEmulatedCaps(IDirectDrawVideo* This,DDCAPS *pCaps) {
    285     return This->lpVtbl->GetEmulatedCaps(This,pCaps);
    286 }
    287 static FORCEINLINE HRESULT IDirectDrawVideo_GetSurfaceDesc(IDirectDrawVideo* This,DDSURFACEDESC *pSurfaceDesc) {
    288     return This->lpVtbl->GetSurfaceDesc(This,pSurfaceDesc);
    289 }
    290 static FORCEINLINE HRESULT IDirectDrawVideo_GetFourCCCodes(IDirectDrawVideo* This,DWORD *pCount,DWORD *pCodes) {
    291     return This->lpVtbl->GetFourCCCodes(This,pCount,pCodes);
    292 }
    293 static FORCEINLINE HRESULT IDirectDrawVideo_SetDirectDraw(IDirectDrawVideo* This,IDirectDraw *ddraw) {
    294     return This->lpVtbl->SetDirectDraw(This,ddraw);
    295 }
    296 static FORCEINLINE HRESULT IDirectDrawVideo_GetDirectDraw(IDirectDrawVideo* This,IDirectDraw **ddraw) {
    297     return This->lpVtbl->GetDirectDraw(This,ddraw);
    298 }
    299 static FORCEINLINE HRESULT IDirectDrawVideo_GetSurfaceType(IDirectDrawVideo* This,DWORD *pSurfaceType) {
    300     return This->lpVtbl->GetSurfaceType(This,pSurfaceType);
    301 }
    302 static FORCEINLINE HRESULT IDirectDrawVideo_SetDefault(IDirectDrawVideo* This) {
    303     return This->lpVtbl->SetDefault(This);
    304 }
    305 static FORCEINLINE HRESULT IDirectDrawVideo_UseScanLine(IDirectDrawVideo* This,LONG UseScanLine) {
    306     return This->lpVtbl->UseScanLine(This,UseScanLine);
    307 }
    308 static FORCEINLINE HRESULT IDirectDrawVideo_CanUseScanLine(IDirectDrawVideo* This,LONG *UseScanLine) {
    309     return This->lpVtbl->CanUseScanLine(This,UseScanLine);
    310 }
    311 static FORCEINLINE HRESULT IDirectDrawVideo_UseOverlayStretch(IDirectDrawVideo* This,LONG UseOverlayStretch) {
    312     return This->lpVtbl->UseOverlayStretch(This,UseOverlayStretch);
    313 }
    314 static FORCEINLINE HRESULT IDirectDrawVideo_CanUseOverlayStretch(IDirectDrawVideo* This,LONG *UseOverlayStretch) {
    315     return This->lpVtbl->CanUseOverlayStretch(This,UseOverlayStretch);
    316 }
    317 static FORCEINLINE HRESULT IDirectDrawVideo_UseWhenFullScreen(IDirectDrawVideo* This,LONG UseWhenFullScreen) {
    318     return This->lpVtbl->UseWhenFullScreen(This,UseWhenFullScreen);
    319 }
    320 static FORCEINLINE HRESULT IDirectDrawVideo_WillUseFullScreen(IDirectDrawVideo* This,LONG *UseWhenFullScreen) {
    321     return This->lpVtbl->WillUseFullScreen(This,UseWhenFullScreen);
    322 }
    323 #endif
    324 #endif
    325 
    326 #endif
    327 
    328 HRESULT STDMETHODCALLTYPE IDirectDrawVideo_GetSwitches_Proxy(
    329     IDirectDrawVideo* This,
    330     DWORD *pSwitches);
    331 void __RPC_STUB IDirectDrawVideo_GetSwitches_Stub(
    332     IRpcStubBuffer* This,
    333     IRpcChannelBuffer* pRpcChannelBuffer,
    334     PRPC_MESSAGE pRpcMessage,
    335     DWORD* pdwStubPhase);
    336 HRESULT STDMETHODCALLTYPE IDirectDrawVideo_SetSwitches_Proxy(
    337     IDirectDrawVideo* This,
    338     DWORD Switches);
    339 void __RPC_STUB IDirectDrawVideo_SetSwitches_Stub(
    340     IRpcStubBuffer* This,
    341     IRpcChannelBuffer* pRpcChannelBuffer,
    342     PRPC_MESSAGE pRpcMessage,
    343     DWORD* pdwStubPhase);
    344 HRESULT STDMETHODCALLTYPE IDirectDrawVideo_GetCaps_Proxy(
    345     IDirectDrawVideo* This,
    346     DDCAPS *pCaps);
    347 void __RPC_STUB IDirectDrawVideo_GetCaps_Stub(
    348     IRpcStubBuffer* This,
    349     IRpcChannelBuffer* pRpcChannelBuffer,
    350     PRPC_MESSAGE pRpcMessage,
    351     DWORD* pdwStubPhase);
    352 HRESULT STDMETHODCALLTYPE IDirectDrawVideo_GetEmulatedCaps_Proxy(
    353     IDirectDrawVideo* This,
    354     DDCAPS *pCaps);
    355 void __RPC_STUB IDirectDrawVideo_GetEmulatedCaps_Stub(
    356     IRpcStubBuffer* This,
    357     IRpcChannelBuffer* pRpcChannelBuffer,
    358     PRPC_MESSAGE pRpcMessage,
    359     DWORD* pdwStubPhase);
    360 HRESULT STDMETHODCALLTYPE IDirectDrawVideo_GetSurfaceDesc_Proxy(
    361     IDirectDrawVideo* This,
    362     DDSURFACEDESC *pSurfaceDesc);
    363 void __RPC_STUB IDirectDrawVideo_GetSurfaceDesc_Stub(
    364     IRpcStubBuffer* This,
    365     IRpcChannelBuffer* pRpcChannelBuffer,
    366     PRPC_MESSAGE pRpcMessage,
    367     DWORD* pdwStubPhase);
    368 HRESULT STDMETHODCALLTYPE IDirectDrawVideo_GetFourCCCodes_Proxy(
    369     IDirectDrawVideo* This,
    370     DWORD *pCount,
    371     DWORD *pCodes);
    372 void __RPC_STUB IDirectDrawVideo_GetFourCCCodes_Stub(
    373     IRpcStubBuffer* This,
    374     IRpcChannelBuffer* pRpcChannelBuffer,
    375     PRPC_MESSAGE pRpcMessage,
    376     DWORD* pdwStubPhase);
    377 HRESULT STDMETHODCALLTYPE IDirectDrawVideo_SetDirectDraw_Proxy(
    378     IDirectDrawVideo* This,
    379     IDirectDraw *ddraw);
    380 void __RPC_STUB IDirectDrawVideo_SetDirectDraw_Stub(
    381     IRpcStubBuffer* This,
    382     IRpcChannelBuffer* pRpcChannelBuffer,
    383     PRPC_MESSAGE pRpcMessage,
    384     DWORD* pdwStubPhase);
    385 HRESULT STDMETHODCALLTYPE IDirectDrawVideo_GetDirectDraw_Proxy(
    386     IDirectDrawVideo* This,
    387     IDirectDraw **ddraw);
    388 void __RPC_STUB IDirectDrawVideo_GetDirectDraw_Stub(
    389     IRpcStubBuffer* This,
    390     IRpcChannelBuffer* pRpcChannelBuffer,
    391     PRPC_MESSAGE pRpcMessage,
    392     DWORD* pdwStubPhase);
    393 HRESULT STDMETHODCALLTYPE IDirectDrawVideo_GetSurfaceType_Proxy(
    394     IDirectDrawVideo* This,
    395     DWORD *pSurfaceType);
    396 void __RPC_STUB IDirectDrawVideo_GetSurfaceType_Stub(
    397     IRpcStubBuffer* This,
    398     IRpcChannelBuffer* pRpcChannelBuffer,
    399     PRPC_MESSAGE pRpcMessage,
    400     DWORD* pdwStubPhase);
    401 HRESULT STDMETHODCALLTYPE IDirectDrawVideo_SetDefault_Proxy(
    402     IDirectDrawVideo* This);
    403 void __RPC_STUB IDirectDrawVideo_SetDefault_Stub(
    404     IRpcStubBuffer* This,
    405     IRpcChannelBuffer* pRpcChannelBuffer,
    406     PRPC_MESSAGE pRpcMessage,
    407     DWORD* pdwStubPhase);
    408 HRESULT STDMETHODCALLTYPE IDirectDrawVideo_UseScanLine_Proxy(
    409     IDirectDrawVideo* This,
    410     LONG UseScanLine);
    411 void __RPC_STUB IDirectDrawVideo_UseScanLine_Stub(
    412     IRpcStubBuffer* This,
    413     IRpcChannelBuffer* pRpcChannelBuffer,
    414     PRPC_MESSAGE pRpcMessage,
    415     DWORD* pdwStubPhase);
    416 HRESULT STDMETHODCALLTYPE IDirectDrawVideo_CanUseScanLine_Proxy(
    417     IDirectDrawVideo* This,
    418     LONG *UseScanLine);
    419 void __RPC_STUB IDirectDrawVideo_CanUseScanLine_Stub(
    420     IRpcStubBuffer* This,
    421     IRpcChannelBuffer* pRpcChannelBuffer,
    422     PRPC_MESSAGE pRpcMessage,
    423     DWORD* pdwStubPhase);
    424 HRESULT STDMETHODCALLTYPE IDirectDrawVideo_UseOverlayStretch_Proxy(
    425     IDirectDrawVideo* This,
    426     LONG UseOverlayStretch);
    427 void __RPC_STUB IDirectDrawVideo_UseOverlayStretch_Stub(
    428     IRpcStubBuffer* This,
    429     IRpcChannelBuffer* pRpcChannelBuffer,
    430     PRPC_MESSAGE pRpcMessage,
    431     DWORD* pdwStubPhase);
    432 HRESULT STDMETHODCALLTYPE IDirectDrawVideo_CanUseOverlayStretch_Proxy(
    433     IDirectDrawVideo* This,
    434     LONG *UseOverlayStretch);
    435 void __RPC_STUB IDirectDrawVideo_CanUseOverlayStretch_Stub(
    436     IRpcStubBuffer* This,
    437     IRpcChannelBuffer* pRpcChannelBuffer,
    438     PRPC_MESSAGE pRpcMessage,
    439     DWORD* pdwStubPhase);
    440 HRESULT STDMETHODCALLTYPE IDirectDrawVideo_UseWhenFullScreen_Proxy(
    441     IDirectDrawVideo* This,
    442     LONG UseWhenFullScreen);
    443 void __RPC_STUB IDirectDrawVideo_UseWhenFullScreen_Stub(
    444     IRpcStubBuffer* This,
    445     IRpcChannelBuffer* pRpcChannelBuffer,
    446     PRPC_MESSAGE pRpcMessage,
    447     DWORD* pdwStubPhase);
    448 HRESULT STDMETHODCALLTYPE IDirectDrawVideo_WillUseFullScreen_Proxy(
    449     IDirectDrawVideo* This,
    450     LONG *UseWhenFullScreen);
    451 void __RPC_STUB IDirectDrawVideo_WillUseFullScreen_Stub(
    452     IRpcStubBuffer* This,
    453     IRpcChannelBuffer* pRpcChannelBuffer,
    454     PRPC_MESSAGE pRpcMessage,
    455     DWORD* pdwStubPhase);
    456 
    457 #endif  /* __IDirectDrawVideo_INTERFACE_DEFINED__ */
    458 
    459 /*****************************************************************************
    460  * IQualProp interface
    461  */
    462 #ifndef __IQualProp_INTERFACE_DEFINED__
    463 #define __IQualProp_INTERFACE_DEFINED__
    464 
    465 #if defined(__cplusplus) && !defined(CINTERFACE)
    466 interface IQualProp : public IUnknown
    467 {
    468     virtual HRESULT STDMETHODCALLTYPE get_FramesDroppedInRenderer(
    469         int *pcFrames) = 0;
    470 
    471     virtual HRESULT STDMETHODCALLTYPE get_FramesDrawn(
    472         int *pcFramesDrawn) = 0;
    473 
    474     virtual HRESULT STDMETHODCALLTYPE get_AvgFrameRate(
    475         int *piAvgFrameRate) = 0;
    476 
    477     virtual HRESULT STDMETHODCALLTYPE get_Jitter(
    478         int *iJitter) = 0;
    479 
    480     virtual HRESULT STDMETHODCALLTYPE get_AvgSyncOffset(
    481         int *piAvg) = 0;
    482 
    483     virtual HRESULT STDMETHODCALLTYPE get_DevSyncOffset(
    484         int *piDev) = 0;
    485 
    486 };
    487 #else
    488 typedef struct IQualPropVtbl {
    489     BEGIN_INTERFACE
    490 
    491     /*** IUnknown methods ***/
    492     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    493         IQualProp* This,
    494         REFIID riid,
    495         void **ppvObject);
    496 
    497     ULONG (STDMETHODCALLTYPE *AddRef)(
    498         IQualProp* This);
    499 
    500     ULONG (STDMETHODCALLTYPE *Release)(
    501         IQualProp* This);
    502 
    503     /*** IQualProp methods ***/
    504     HRESULT (STDMETHODCALLTYPE *get_FramesDroppedInRenderer)(
    505         IQualProp* This,
    506         int *pcFrames);
    507 
    508     HRESULT (STDMETHODCALLTYPE *get_FramesDrawn)(
    509         IQualProp* This,
    510         int *pcFramesDrawn);
    511 
    512     HRESULT (STDMETHODCALLTYPE *get_AvgFrameRate)(
    513         IQualProp* This,
    514         int *piAvgFrameRate);
    515 
    516     HRESULT (STDMETHODCALLTYPE *get_Jitter)(
    517         IQualProp* This,
    518         int *iJitter);
    519 
    520     HRESULT (STDMETHODCALLTYPE *get_AvgSyncOffset)(
    521         IQualProp* This,
    522         int *piAvg);
    523 
    524     HRESULT (STDMETHODCALLTYPE *get_DevSyncOffset)(
    525         IQualProp* This,
    526         int *piDev);
    527 
    528     END_INTERFACE
    529 } IQualPropVtbl;
    530 interface IQualProp {
    531     CONST_VTBL IQualPropVtbl* lpVtbl;
    532 };
    533 
    534 #ifdef COBJMACROS
    535 #ifndef WIDL_C_INLINE_WRAPPERS
    536 /*** IUnknown methods ***/
    537 #define IQualProp_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    538 #define IQualProp_AddRef(This) (This)->lpVtbl->AddRef(This)
    539 #define IQualProp_Release(This) (This)->lpVtbl->Release(This)
    540 /*** IQualProp methods ***/
    541 #define IQualProp_get_FramesDroppedInRenderer(This,pcFrames) (This)->lpVtbl->get_FramesDroppedInRenderer(This,pcFrames)
    542 #define IQualProp_get_FramesDrawn(This,pcFramesDrawn) (This)->lpVtbl->get_FramesDrawn(This,pcFramesDrawn)
    543 #define IQualProp_get_AvgFrameRate(This,piAvgFrameRate) (This)->lpVtbl->get_AvgFrameRate(This,piAvgFrameRate)
    544 #define IQualProp_get_Jitter(This,iJitter) (This)->lpVtbl->get_Jitter(This,iJitter)
    545 #define IQualProp_get_AvgSyncOffset(This,piAvg) (This)->lpVtbl->get_AvgSyncOffset(This,piAvg)
    546 #define IQualProp_get_DevSyncOffset(This,piDev) (This)->lpVtbl->get_DevSyncOffset(This,piDev)
    547 #else
    548 /*** IUnknown methods ***/
    549 static FORCEINLINE HRESULT IQualProp_QueryInterface(IQualProp* This,REFIID riid,void **ppvObject) {
    550     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    551 }
    552 static FORCEINLINE ULONG IQualProp_AddRef(IQualProp* This) {
    553     return This->lpVtbl->AddRef(This);
    554 }
    555 static FORCEINLINE ULONG IQualProp_Release(IQualProp* This) {
    556     return This->lpVtbl->Release(This);
    557 }
    558 /*** IQualProp methods ***/
    559 static FORCEINLINE HRESULT IQualProp_get_FramesDroppedInRenderer(IQualProp* This,int *pcFrames) {
    560     return This->lpVtbl->get_FramesDroppedInRenderer(This,pcFrames);
    561 }
    562 static FORCEINLINE HRESULT IQualProp_get_FramesDrawn(IQualProp* This,int *pcFramesDrawn) {
    563     return This->lpVtbl->get_FramesDrawn(This,pcFramesDrawn);
    564 }
    565 static FORCEINLINE HRESULT IQualProp_get_AvgFrameRate(IQualProp* This,int *piAvgFrameRate) {
    566     return This->lpVtbl->get_AvgFrameRate(This,piAvgFrameRate);
    567 }
    568 static FORCEINLINE HRESULT IQualProp_get_Jitter(IQualProp* This,int *iJitter) {
    569     return This->lpVtbl->get_Jitter(This,iJitter);
    570 }
    571 static FORCEINLINE HRESULT IQualProp_get_AvgSyncOffset(IQualProp* This,int *piAvg) {
    572     return This->lpVtbl->get_AvgSyncOffset(This,piAvg);
    573 }
    574 static FORCEINLINE HRESULT IQualProp_get_DevSyncOffset(IQualProp* This,int *piDev) {
    575     return This->lpVtbl->get_DevSyncOffset(This,piDev);
    576 }
    577 #endif
    578 #endif
    579 
    580 #endif
    581 
    582 HRESULT STDMETHODCALLTYPE IQualProp_get_FramesDroppedInRenderer_Proxy(
    583     IQualProp* This,
    584     int *pcFrames);
    585 void __RPC_STUB IQualProp_get_FramesDroppedInRenderer_Stub(
    586     IRpcStubBuffer* This,
    587     IRpcChannelBuffer* pRpcChannelBuffer,
    588     PRPC_MESSAGE pRpcMessage,
    589     DWORD* pdwStubPhase);
    590 HRESULT STDMETHODCALLTYPE IQualProp_get_FramesDrawn_Proxy(
    591     IQualProp* This,
    592     int *pcFramesDrawn);
    593 void __RPC_STUB IQualProp_get_FramesDrawn_Stub(
    594     IRpcStubBuffer* This,
    595     IRpcChannelBuffer* pRpcChannelBuffer,
    596     PRPC_MESSAGE pRpcMessage,
    597     DWORD* pdwStubPhase);
    598 HRESULT STDMETHODCALLTYPE IQualProp_get_AvgFrameRate_Proxy(
    599     IQualProp* This,
    600     int *piAvgFrameRate);
    601 void __RPC_STUB IQualProp_get_AvgFrameRate_Stub(
    602     IRpcStubBuffer* This,
    603     IRpcChannelBuffer* pRpcChannelBuffer,
    604     PRPC_MESSAGE pRpcMessage,
    605     DWORD* pdwStubPhase);
    606 HRESULT STDMETHODCALLTYPE IQualProp_get_Jitter_Proxy(
    607     IQualProp* This,
    608     int *iJitter);
    609 void __RPC_STUB IQualProp_get_Jitter_Stub(
    610     IRpcStubBuffer* This,
    611     IRpcChannelBuffer* pRpcChannelBuffer,
    612     PRPC_MESSAGE pRpcMessage,
    613     DWORD* pdwStubPhase);
    614 HRESULT STDMETHODCALLTYPE IQualProp_get_AvgSyncOffset_Proxy(
    615     IQualProp* This,
    616     int *piAvg);
    617 void __RPC_STUB IQualProp_get_AvgSyncOffset_Stub(
    618     IRpcStubBuffer* This,
    619     IRpcChannelBuffer* pRpcChannelBuffer,
    620     PRPC_MESSAGE pRpcMessage,
    621     DWORD* pdwStubPhase);
    622 HRESULT STDMETHODCALLTYPE IQualProp_get_DevSyncOffset_Proxy(
    623     IQualProp* This,
    624     int *piDev);
    625 void __RPC_STUB IQualProp_get_DevSyncOffset_Stub(
    626     IRpcStubBuffer* This,
    627     IRpcChannelBuffer* pRpcChannelBuffer,
    628     PRPC_MESSAGE pRpcMessage,
    629     DWORD* pdwStubPhase);
    630 
    631 #endif  /* __IQualProp_INTERFACE_DEFINED__ */
    632 
    633 /*****************************************************************************
    634  * IFullScreenVideo interface
    635  */
    636 #ifndef __IFullScreenVideo_INTERFACE_DEFINED__
    637 #define __IFullScreenVideo_INTERFACE_DEFINED__
    638 
    639 #if defined(__cplusplus) && !defined(CINTERFACE)
    640 interface IFullScreenVideo : public IUnknown
    641 {
    642     virtual HRESULT STDMETHODCALLTYPE CountModes(
    643         LONG *pModes) = 0;
    644 
    645     virtual HRESULT STDMETHODCALLTYPE GetModeInfo(
    646         LONG Mode,
    647         LONG *pWidth,
    648         LONG *pHeight,
    649         LONG *pDepth) = 0;
    650 
    651     virtual HRESULT STDMETHODCALLTYPE GetCurrentMode(
    652         LONG *pMode) = 0;
    653 
    654     virtual HRESULT STDMETHODCALLTYPE IsModeAvailable(
    655         LONG Mode) = 0;
    656 
    657     virtual HRESULT STDMETHODCALLTYPE IsModeEnabled(
    658         LONG Mode) = 0;
    659 
    660     virtual HRESULT STDMETHODCALLTYPE SetEnabled(
    661         LONG Mode,
    662         LONG bEnabled) = 0;
    663 
    664     virtual HRESULT STDMETHODCALLTYPE GetClipFactor(
    665         LONG *pClipFactor) = 0;
    666 
    667     virtual HRESULT STDMETHODCALLTYPE SetClipFactor(
    668         LONG ClipFactor) = 0;
    669 
    670     virtual HRESULT STDMETHODCALLTYPE SetMessageDrain(
    671         HWND hwnd) = 0;
    672 
    673     virtual HRESULT STDMETHODCALLTYPE GetMessageDrain(
    674         HWND *hwnd) = 0;
    675 
    676     virtual HRESULT STDMETHODCALLTYPE SetMonitor(
    677         LONG Monitor) = 0;
    678 
    679     virtual HRESULT STDMETHODCALLTYPE GetMonitor(
    680         LONG *Monitor) = 0;
    681 
    682     virtual HRESULT STDMETHODCALLTYPE HideOnDeactivate(
    683         LONG Hide) = 0;
    684 
    685     virtual HRESULT STDMETHODCALLTYPE IsHideOnDeactivate(
    686         ) = 0;
    687 
    688     virtual HRESULT STDMETHODCALLTYPE SetCaption(
    689         BSTR strCaption) = 0;
    690 
    691     virtual HRESULT STDMETHODCALLTYPE GetCaption(
    692         BSTR *pstrCaption) = 0;
    693 
    694     virtual HRESULT STDMETHODCALLTYPE SetDefault(
    695         ) = 0;
    696 
    697 };
    698 #else
    699 typedef struct IFullScreenVideoVtbl {
    700     BEGIN_INTERFACE
    701 
    702     /*** IUnknown methods ***/
    703     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    704         IFullScreenVideo* This,
    705         REFIID riid,
    706         void **ppvObject);
    707 
    708     ULONG (STDMETHODCALLTYPE *AddRef)(
    709         IFullScreenVideo* This);
    710 
    711     ULONG (STDMETHODCALLTYPE *Release)(
    712         IFullScreenVideo* This);
    713 
    714     /*** IFullScreenVideo methods ***/
    715     HRESULT (STDMETHODCALLTYPE *CountModes)(
    716         IFullScreenVideo* This,
    717         LONG *pModes);
    718 
    719     HRESULT (STDMETHODCALLTYPE *GetModeInfo)(
    720         IFullScreenVideo* This,
    721         LONG Mode,
    722         LONG *pWidth,
    723         LONG *pHeight,
    724         LONG *pDepth);
    725 
    726     HRESULT (STDMETHODCALLTYPE *GetCurrentMode)(
    727         IFullScreenVideo* This,
    728         LONG *pMode);
    729 
    730     HRESULT (STDMETHODCALLTYPE *IsModeAvailable)(
    731         IFullScreenVideo* This,
    732         LONG Mode);
    733 
    734     HRESULT (STDMETHODCALLTYPE *IsModeEnabled)(
    735         IFullScreenVideo* This,
    736         LONG Mode);
    737 
    738     HRESULT (STDMETHODCALLTYPE *SetEnabled)(
    739         IFullScreenVideo* This,
    740         LONG Mode,
    741         LONG bEnabled);
    742 
    743     HRESULT (STDMETHODCALLTYPE *GetClipFactor)(
    744         IFullScreenVideo* This,
    745         LONG *pClipFactor);
    746 
    747     HRESULT (STDMETHODCALLTYPE *SetClipFactor)(
    748         IFullScreenVideo* This,
    749         LONG ClipFactor);
    750 
    751     HRESULT (STDMETHODCALLTYPE *SetMessageDrain)(
    752         IFullScreenVideo* This,
    753         HWND hwnd);
    754 
    755     HRESULT (STDMETHODCALLTYPE *GetMessageDrain)(
    756         IFullScreenVideo* This,
    757         HWND *hwnd);
    758 
    759     HRESULT (STDMETHODCALLTYPE *SetMonitor)(
    760         IFullScreenVideo* This,
    761         LONG Monitor);
    762 
    763     HRESULT (STDMETHODCALLTYPE *GetMonitor)(
    764         IFullScreenVideo* This,
    765         LONG *Monitor);
    766 
    767     HRESULT (STDMETHODCALLTYPE *HideOnDeactivate)(
    768         IFullScreenVideo* This,
    769         LONG Hide);
    770 
    771     HRESULT (STDMETHODCALLTYPE *IsHideOnDeactivate)(
    772         IFullScreenVideo* This);
    773 
    774     HRESULT (STDMETHODCALLTYPE *SetCaption)(
    775         IFullScreenVideo* This,
    776         BSTR strCaption);
    777 
    778     HRESULT (STDMETHODCALLTYPE *GetCaption)(
    779         IFullScreenVideo* This,
    780         BSTR *pstrCaption);
    781 
    782     HRESULT (STDMETHODCALLTYPE *SetDefault)(
    783         IFullScreenVideo* This);
    784 
    785     END_INTERFACE
    786 } IFullScreenVideoVtbl;
    787 interface IFullScreenVideo {
    788     CONST_VTBL IFullScreenVideoVtbl* lpVtbl;
    789 };
    790 
    791 #ifdef COBJMACROS
    792 #ifndef WIDL_C_INLINE_WRAPPERS
    793 /*** IUnknown methods ***/
    794 #define IFullScreenVideo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    795 #define IFullScreenVideo_AddRef(This) (This)->lpVtbl->AddRef(This)
    796 #define IFullScreenVideo_Release(This) (This)->lpVtbl->Release(This)
    797 /*** IFullScreenVideo methods ***/
    798 #define IFullScreenVideo_CountModes(This,pModes) (This)->lpVtbl->CountModes(This,pModes)
    799 #define IFullScreenVideo_GetModeInfo(This,Mode,pWidth,pHeight,pDepth) (This)->lpVtbl->GetModeInfo(This,Mode,pWidth,pHeight,pDepth)
    800 #define IFullScreenVideo_GetCurrentMode(This,pMode) (This)->lpVtbl->GetCurrentMode(This,pMode)
    801 #define IFullScreenVideo_IsModeAvailable(This,Mode) (This)->lpVtbl->IsModeAvailable(This,Mode)
    802 #define IFullScreenVideo_IsModeEnabled(This,Mode) (This)->lpVtbl->IsModeEnabled(This,Mode)
    803 #define IFullScreenVideo_SetEnabled(This,Mode,bEnabled) (This)->lpVtbl->SetEnabled(This,Mode,bEnabled)
    804 #define IFullScreenVideo_GetClipFactor(This,pClipFactor) (This)->lpVtbl->GetClipFactor(This,pClipFactor)
    805 #define IFullScreenVideo_SetClipFactor(This,ClipFactor) (This)->lpVtbl->SetClipFactor(This,ClipFactor)
    806 #define IFullScreenVideo_SetMessageDrain(This,hwnd) (This)->lpVtbl->SetMessageDrain(This,hwnd)
    807 #define IFullScreenVideo_GetMessageDrain(This,hwnd) (This)->lpVtbl->GetMessageDrain(This,hwnd)
    808 #define IFullScreenVideo_SetMonitor(This,Monitor) (This)->lpVtbl->SetMonitor(This,Monitor)
    809 #define IFullScreenVideo_GetMonitor(This,Monitor) (This)->lpVtbl->GetMonitor(This,Monitor)
    810 #define IFullScreenVideo_HideOnDeactivate(This,Hide) (This)->lpVtbl->HideOnDeactivate(This,Hide)
    811 #define IFullScreenVideo_IsHideOnDeactivate(This) (This)->lpVtbl->IsHideOnDeactivate(This)
    812 #define IFullScreenVideo_SetCaption(This,strCaption) (This)->lpVtbl->SetCaption(This,strCaption)
    813 #define IFullScreenVideo_GetCaption(This,pstrCaption) (This)->lpVtbl->GetCaption(This,pstrCaption)
    814 #define IFullScreenVideo_SetDefault(This) (This)->lpVtbl->SetDefault(This)
    815 #else
    816 /*** IUnknown methods ***/
    817 static FORCEINLINE HRESULT IFullScreenVideo_QueryInterface(IFullScreenVideo* This,REFIID riid,void **ppvObject) {
    818     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    819 }
    820 static FORCEINLINE ULONG IFullScreenVideo_AddRef(IFullScreenVideo* This) {
    821     return This->lpVtbl->AddRef(This);
    822 }
    823 static FORCEINLINE ULONG IFullScreenVideo_Release(IFullScreenVideo* This) {
    824     return This->lpVtbl->Release(This);
    825 }
    826 /*** IFullScreenVideo methods ***/
    827 static FORCEINLINE HRESULT IFullScreenVideo_CountModes(IFullScreenVideo* This,LONG *pModes) {
    828     return This->lpVtbl->CountModes(This,pModes);
    829 }
    830 static FORCEINLINE HRESULT IFullScreenVideo_GetModeInfo(IFullScreenVideo* This,LONG Mode,LONG *pWidth,LONG *pHeight,LONG *pDepth) {
    831     return This->lpVtbl->GetModeInfo(This,Mode,pWidth,pHeight,pDepth);
    832 }
    833 static FORCEINLINE HRESULT IFullScreenVideo_GetCurrentMode(IFullScreenVideo* This,LONG *pMode) {
    834     return This->lpVtbl->GetCurrentMode(This,pMode);
    835 }
    836 static FORCEINLINE HRESULT IFullScreenVideo_IsModeAvailable(IFullScreenVideo* This,LONG Mode) {
    837     return This->lpVtbl->IsModeAvailable(This,Mode);
    838 }
    839 static FORCEINLINE HRESULT IFullScreenVideo_IsModeEnabled(IFullScreenVideo* This,LONG Mode) {
    840     return This->lpVtbl->IsModeEnabled(This,Mode);
    841 }
    842 static FORCEINLINE HRESULT IFullScreenVideo_SetEnabled(IFullScreenVideo* This,LONG Mode,LONG bEnabled) {
    843     return This->lpVtbl->SetEnabled(This,Mode,bEnabled);
    844 }
    845 static FORCEINLINE HRESULT IFullScreenVideo_GetClipFactor(IFullScreenVideo* This,LONG *pClipFactor) {
    846     return This->lpVtbl->GetClipFactor(This,pClipFactor);
    847 }
    848 static FORCEINLINE HRESULT IFullScreenVideo_SetClipFactor(IFullScreenVideo* This,LONG ClipFactor) {
    849     return This->lpVtbl->SetClipFactor(This,ClipFactor);
    850 }
    851 static FORCEINLINE HRESULT IFullScreenVideo_SetMessageDrain(IFullScreenVideo* This,HWND hwnd) {
    852     return This->lpVtbl->SetMessageDrain(This,hwnd);
    853 }
    854 static FORCEINLINE HRESULT IFullScreenVideo_GetMessageDrain(IFullScreenVideo* This,HWND *hwnd) {
    855     return This->lpVtbl->GetMessageDrain(This,hwnd);
    856 }
    857 static FORCEINLINE HRESULT IFullScreenVideo_SetMonitor(IFullScreenVideo* This,LONG Monitor) {
    858     return This->lpVtbl->SetMonitor(This,Monitor);
    859 }
    860 static FORCEINLINE HRESULT IFullScreenVideo_GetMonitor(IFullScreenVideo* This,LONG *Monitor) {
    861     return This->lpVtbl->GetMonitor(This,Monitor);
    862 }
    863 static FORCEINLINE HRESULT IFullScreenVideo_HideOnDeactivate(IFullScreenVideo* This,LONG Hide) {
    864     return This->lpVtbl->HideOnDeactivate(This,Hide);
    865 }
    866 static FORCEINLINE HRESULT IFullScreenVideo_IsHideOnDeactivate(IFullScreenVideo* This) {
    867     return This->lpVtbl->IsHideOnDeactivate(This);
    868 }
    869 static FORCEINLINE HRESULT IFullScreenVideo_SetCaption(IFullScreenVideo* This,BSTR strCaption) {
    870     return This->lpVtbl->SetCaption(This,strCaption);
    871 }
    872 static FORCEINLINE HRESULT IFullScreenVideo_GetCaption(IFullScreenVideo* This,BSTR *pstrCaption) {
    873     return This->lpVtbl->GetCaption(This,pstrCaption);
    874 }
    875 static FORCEINLINE HRESULT IFullScreenVideo_SetDefault(IFullScreenVideo* This) {
    876     return This->lpVtbl->SetDefault(This);
    877 }
    878 #endif
    879 #endif
    880 
    881 #endif
    882 
    883 HRESULT STDMETHODCALLTYPE IFullScreenVideo_CountModes_Proxy(
    884     IFullScreenVideo* This,
    885     LONG *pModes);
    886 void __RPC_STUB IFullScreenVideo_CountModes_Stub(
    887     IRpcStubBuffer* This,
    888     IRpcChannelBuffer* pRpcChannelBuffer,
    889     PRPC_MESSAGE pRpcMessage,
    890     DWORD* pdwStubPhase);
    891 HRESULT STDMETHODCALLTYPE IFullScreenVideo_GetModeInfo_Proxy(
    892     IFullScreenVideo* This,
    893     LONG Mode,
    894     LONG *pWidth,
    895     LONG *pHeight,
    896     LONG *pDepth);
    897 void __RPC_STUB IFullScreenVideo_GetModeInfo_Stub(
    898     IRpcStubBuffer* This,
    899     IRpcChannelBuffer* pRpcChannelBuffer,
    900     PRPC_MESSAGE pRpcMessage,
    901     DWORD* pdwStubPhase);
    902 HRESULT STDMETHODCALLTYPE IFullScreenVideo_GetCurrentMode_Proxy(
    903     IFullScreenVideo* This,
    904     LONG *pMode);
    905 void __RPC_STUB IFullScreenVideo_GetCurrentMode_Stub(
    906     IRpcStubBuffer* This,
    907     IRpcChannelBuffer* pRpcChannelBuffer,
    908     PRPC_MESSAGE pRpcMessage,
    909     DWORD* pdwStubPhase);
    910 HRESULT STDMETHODCALLTYPE IFullScreenVideo_IsModeAvailable_Proxy(
    911     IFullScreenVideo* This,
    912     LONG Mode);
    913 void __RPC_STUB IFullScreenVideo_IsModeAvailable_Stub(
    914     IRpcStubBuffer* This,
    915     IRpcChannelBuffer* pRpcChannelBuffer,
    916     PRPC_MESSAGE pRpcMessage,
    917     DWORD* pdwStubPhase);
    918 HRESULT STDMETHODCALLTYPE IFullScreenVideo_IsModeEnabled_Proxy(
    919     IFullScreenVideo* This,
    920     LONG Mode);
    921 void __RPC_STUB IFullScreenVideo_IsModeEnabled_Stub(
    922     IRpcStubBuffer* This,
    923     IRpcChannelBuffer* pRpcChannelBuffer,
    924     PRPC_MESSAGE pRpcMessage,
    925     DWORD* pdwStubPhase);
    926 HRESULT STDMETHODCALLTYPE IFullScreenVideo_SetEnabled_Proxy(
    927     IFullScreenVideo* This,
    928     LONG Mode,
    929     LONG bEnabled);
    930 void __RPC_STUB IFullScreenVideo_SetEnabled_Stub(
    931     IRpcStubBuffer* This,
    932     IRpcChannelBuffer* pRpcChannelBuffer,
    933     PRPC_MESSAGE pRpcMessage,
    934     DWORD* pdwStubPhase);
    935 HRESULT STDMETHODCALLTYPE IFullScreenVideo_GetClipFactor_Proxy(
    936     IFullScreenVideo* This,
    937     LONG *pClipFactor);
    938 void __RPC_STUB IFullScreenVideo_GetClipFactor_Stub(
    939     IRpcStubBuffer* This,
    940     IRpcChannelBuffer* pRpcChannelBuffer,
    941     PRPC_MESSAGE pRpcMessage,
    942     DWORD* pdwStubPhase);
    943 HRESULT STDMETHODCALLTYPE IFullScreenVideo_SetClipFactor_Proxy(
    944     IFullScreenVideo* This,
    945     LONG ClipFactor);
    946 void __RPC_STUB IFullScreenVideo_SetClipFactor_Stub(
    947     IRpcStubBuffer* This,
    948     IRpcChannelBuffer* pRpcChannelBuffer,
    949     PRPC_MESSAGE pRpcMessage,
    950     DWORD* pdwStubPhase);
    951 HRESULT STDMETHODCALLTYPE IFullScreenVideo_SetMessageDrain_Proxy(
    952     IFullScreenVideo* This,
    953     HWND hwnd);
    954 void __RPC_STUB IFullScreenVideo_SetMessageDrain_Stub(
    955     IRpcStubBuffer* This,
    956     IRpcChannelBuffer* pRpcChannelBuffer,
    957     PRPC_MESSAGE pRpcMessage,
    958     DWORD* pdwStubPhase);
    959 HRESULT STDMETHODCALLTYPE IFullScreenVideo_GetMessageDrain_Proxy(
    960     IFullScreenVideo* This,
    961     HWND *hwnd);
    962 void __RPC_STUB IFullScreenVideo_GetMessageDrain_Stub(
    963     IRpcStubBuffer* This,
    964     IRpcChannelBuffer* pRpcChannelBuffer,
    965     PRPC_MESSAGE pRpcMessage,
    966     DWORD* pdwStubPhase);
    967 HRESULT STDMETHODCALLTYPE IFullScreenVideo_SetMonitor_Proxy(
    968     IFullScreenVideo* This,
    969     LONG Monitor);
    970 void __RPC_STUB IFullScreenVideo_SetMonitor_Stub(
    971     IRpcStubBuffer* This,
    972     IRpcChannelBuffer* pRpcChannelBuffer,
    973     PRPC_MESSAGE pRpcMessage,
    974     DWORD* pdwStubPhase);
    975 HRESULT STDMETHODCALLTYPE IFullScreenVideo_GetMonitor_Proxy(
    976     IFullScreenVideo* This,
    977     LONG *Monitor);
    978 void __RPC_STUB IFullScreenVideo_GetMonitor_Stub(
    979     IRpcStubBuffer* This,
    980     IRpcChannelBuffer* pRpcChannelBuffer,
    981     PRPC_MESSAGE pRpcMessage,
    982     DWORD* pdwStubPhase);
    983 HRESULT STDMETHODCALLTYPE IFullScreenVideo_HideOnDeactivate_Proxy(
    984     IFullScreenVideo* This,
    985     LONG Hide);
    986 void __RPC_STUB IFullScreenVideo_HideOnDeactivate_Stub(
    987     IRpcStubBuffer* This,
    988     IRpcChannelBuffer* pRpcChannelBuffer,
    989     PRPC_MESSAGE pRpcMessage,
    990     DWORD* pdwStubPhase);
    991 HRESULT STDMETHODCALLTYPE IFullScreenVideo_IsHideOnDeactivate_Proxy(
    992     IFullScreenVideo* This);
    993 void __RPC_STUB IFullScreenVideo_IsHideOnDeactivate_Stub(
    994     IRpcStubBuffer* This,
    995     IRpcChannelBuffer* pRpcChannelBuffer,
    996     PRPC_MESSAGE pRpcMessage,
    997     DWORD* pdwStubPhase);
    998 HRESULT STDMETHODCALLTYPE IFullScreenVideo_SetCaption_Proxy(
    999     IFullScreenVideo* This,
   1000     BSTR strCaption);
   1001 void __RPC_STUB IFullScreenVideo_SetCaption_Stub(
   1002     IRpcStubBuffer* This,
   1003     IRpcChannelBuffer* pRpcChannelBuffer,
   1004     PRPC_MESSAGE pRpcMessage,
   1005     DWORD* pdwStubPhase);
   1006 HRESULT STDMETHODCALLTYPE IFullScreenVideo_GetCaption_Proxy(
   1007     IFullScreenVideo* This,
   1008     BSTR *pstrCaption);
   1009 void __RPC_STUB IFullScreenVideo_GetCaption_Stub(
   1010     IRpcStubBuffer* This,
   1011     IRpcChannelBuffer* pRpcChannelBuffer,
   1012     PRPC_MESSAGE pRpcMessage,
   1013     DWORD* pdwStubPhase);
   1014 HRESULT STDMETHODCALLTYPE IFullScreenVideo_SetDefault_Proxy(
   1015     IFullScreenVideo* This);
   1016 void __RPC_STUB IFullScreenVideo_SetDefault_Stub(
   1017     IRpcStubBuffer* This,
   1018     IRpcChannelBuffer* pRpcChannelBuffer,
   1019     PRPC_MESSAGE pRpcMessage,
   1020     DWORD* pdwStubPhase);
   1021 
   1022 #endif  /* __IFullScreenVideo_INTERFACE_DEFINED__ */
   1023 
   1024 /*****************************************************************************
   1025  * IFullScreenVideoEx interface
   1026  */
   1027 #ifndef __IFullScreenVideoEx_INTERFACE_DEFINED__
   1028 #define __IFullScreenVideoEx_INTERFACE_DEFINED__
   1029 
   1030 #if defined(__cplusplus) && !defined(CINTERFACE)
   1031 interface IFullScreenVideoEx : public IFullScreenVideo
   1032 {
   1033     virtual HRESULT STDMETHODCALLTYPE SetAcceleratorTable(
   1034         HWND hwnd,
   1035         HACCEL hAccel) = 0;
   1036 
   1037     virtual HRESULT STDMETHODCALLTYPE GetAcceleratorTable(
   1038         HWND *phwnd,
   1039         HACCEL *phAccel) = 0;
   1040 
   1041     virtual HRESULT STDMETHODCALLTYPE KeepPixelAspectRatio(
   1042         LONG KeepAspect) = 0;
   1043 
   1044     virtual HRESULT STDMETHODCALLTYPE IsKeepPixelAspectRatio(
   1045         LONG *pKeepAspect) = 0;
   1046 
   1047 };
   1048 #else
   1049 typedef struct IFullScreenVideoExVtbl {
   1050     BEGIN_INTERFACE
   1051 
   1052     /*** IUnknown methods ***/
   1053     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   1054         IFullScreenVideoEx* This,
   1055         REFIID riid,
   1056         void **ppvObject);
   1057 
   1058     ULONG (STDMETHODCALLTYPE *AddRef)(
   1059         IFullScreenVideoEx* This);
   1060 
   1061     ULONG (STDMETHODCALLTYPE *Release)(
   1062         IFullScreenVideoEx* This);
   1063 
   1064     /*** IFullScreenVideo methods ***/
   1065     HRESULT (STDMETHODCALLTYPE *CountModes)(
   1066         IFullScreenVideoEx* This,
   1067         LONG *pModes);
   1068 
   1069     HRESULT (STDMETHODCALLTYPE *GetModeInfo)(
   1070         IFullScreenVideoEx* This,
   1071         LONG Mode,
   1072         LONG *pWidth,
   1073         LONG *pHeight,
   1074         LONG *pDepth);
   1075 
   1076     HRESULT (STDMETHODCALLTYPE *GetCurrentMode)(
   1077         IFullScreenVideoEx* This,
   1078         LONG *pMode);
   1079 
   1080     HRESULT (STDMETHODCALLTYPE *IsModeAvailable)(
   1081         IFullScreenVideoEx* This,
   1082         LONG Mode);
   1083 
   1084     HRESULT (STDMETHODCALLTYPE *IsModeEnabled)(
   1085         IFullScreenVideoEx* This,
   1086         LONG Mode);
   1087 
   1088     HRESULT (STDMETHODCALLTYPE *SetEnabled)(
   1089         IFullScreenVideoEx* This,
   1090         LONG Mode,
   1091         LONG bEnabled);
   1092 
   1093     HRESULT (STDMETHODCALLTYPE *GetClipFactor)(
   1094         IFullScreenVideoEx* This,
   1095         LONG *pClipFactor);
   1096 
   1097     HRESULT (STDMETHODCALLTYPE *SetClipFactor)(
   1098         IFullScreenVideoEx* This,
   1099         LONG ClipFactor);
   1100 
   1101     HRESULT (STDMETHODCALLTYPE *SetMessageDrain)(
   1102         IFullScreenVideoEx* This,
   1103         HWND hwnd);
   1104 
   1105     HRESULT (STDMETHODCALLTYPE *GetMessageDrain)(
   1106         IFullScreenVideoEx* This,
   1107         HWND *hwnd);
   1108 
   1109     HRESULT (STDMETHODCALLTYPE *SetMonitor)(
   1110         IFullScreenVideoEx* This,
   1111         LONG Monitor);
   1112 
   1113     HRESULT (STDMETHODCALLTYPE *GetMonitor)(
   1114         IFullScreenVideoEx* This,
   1115         LONG *Monitor);
   1116 
   1117     HRESULT (STDMETHODCALLTYPE *HideOnDeactivate)(
   1118         IFullScreenVideoEx* This,
   1119         LONG Hide);
   1120 
   1121     HRESULT (STDMETHODCALLTYPE *IsHideOnDeactivate)(
   1122         IFullScreenVideoEx* This);
   1123 
   1124     HRESULT (STDMETHODCALLTYPE *SetCaption)(
   1125         IFullScreenVideoEx* This,
   1126         BSTR strCaption);
   1127 
   1128     HRESULT (STDMETHODCALLTYPE *GetCaption)(
   1129         IFullScreenVideoEx* This,
   1130         BSTR *pstrCaption);
   1131 
   1132     HRESULT (STDMETHODCALLTYPE *SetDefault)(
   1133         IFullScreenVideoEx* This);
   1134 
   1135     /*** IFullScreenVideoEx methods ***/
   1136     HRESULT (STDMETHODCALLTYPE *SetAcceleratorTable)(
   1137         IFullScreenVideoEx* This,
   1138         HWND hwnd,
   1139         HACCEL hAccel);
   1140 
   1141     HRESULT (STDMETHODCALLTYPE *GetAcceleratorTable)(
   1142         IFullScreenVideoEx* This,
   1143         HWND *phwnd,
   1144         HACCEL *phAccel);
   1145 
   1146     HRESULT (STDMETHODCALLTYPE *KeepPixelAspectRatio)(
   1147         IFullScreenVideoEx* This,
   1148         LONG KeepAspect);
   1149 
   1150     HRESULT (STDMETHODCALLTYPE *IsKeepPixelAspectRatio)(
   1151         IFullScreenVideoEx* This,
   1152         LONG *pKeepAspect);
   1153 
   1154     END_INTERFACE
   1155 } IFullScreenVideoExVtbl;
   1156 interface IFullScreenVideoEx {
   1157     CONST_VTBL IFullScreenVideoExVtbl* lpVtbl;
   1158 };
   1159 
   1160 #ifdef COBJMACROS
   1161 #ifndef WIDL_C_INLINE_WRAPPERS
   1162 /*** IUnknown methods ***/
   1163 #define IFullScreenVideoEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   1164 #define IFullScreenVideoEx_AddRef(This) (This)->lpVtbl->AddRef(This)
   1165 #define IFullScreenVideoEx_Release(This) (This)->lpVtbl->Release(This)
   1166 /*** IFullScreenVideo methods ***/
   1167 #define IFullScreenVideoEx_CountModes(This,pModes) (This)->lpVtbl->CountModes(This,pModes)
   1168 #define IFullScreenVideoEx_GetModeInfo(This,Mode,pWidth,pHeight,pDepth) (This)->lpVtbl->GetModeInfo(This,Mode,pWidth,pHeight,pDepth)
   1169 #define IFullScreenVideoEx_GetCurrentMode(This,pMode) (This)->lpVtbl->GetCurrentMode(This,pMode)
   1170 #define IFullScreenVideoEx_IsModeAvailable(This,Mode) (This)->lpVtbl->IsModeAvailable(This,Mode)
   1171 #define IFullScreenVideoEx_IsModeEnabled(This,Mode) (This)->lpVtbl->IsModeEnabled(This,Mode)
   1172 #define IFullScreenVideoEx_SetEnabled(This,Mode,bEnabled) (This)->lpVtbl->SetEnabled(This,Mode,bEnabled)
   1173 #define IFullScreenVideoEx_GetClipFactor(This,pClipFactor) (This)->lpVtbl->GetClipFactor(This,pClipFactor)
   1174 #define IFullScreenVideoEx_SetClipFactor(This,ClipFactor) (This)->lpVtbl->SetClipFactor(This,ClipFactor)
   1175 #define IFullScreenVideoEx_SetMessageDrain(This,hwnd) (This)->lpVtbl->SetMessageDrain(This,hwnd)
   1176 #define IFullScreenVideoEx_GetMessageDrain(This,hwnd) (This)->lpVtbl->GetMessageDrain(This,hwnd)
   1177 #define IFullScreenVideoEx_SetMonitor(This,Monitor) (This)->lpVtbl->SetMonitor(This,Monitor)
   1178 #define IFullScreenVideoEx_GetMonitor(This,Monitor) (This)->lpVtbl->GetMonitor(This,Monitor)
   1179 #define IFullScreenVideoEx_HideOnDeactivate(This,Hide) (This)->lpVtbl->HideOnDeactivate(This,Hide)
   1180 #define IFullScreenVideoEx_IsHideOnDeactivate(This) (This)->lpVtbl->IsHideOnDeactivate(This)
   1181 #define IFullScreenVideoEx_SetCaption(This,strCaption) (This)->lpVtbl->SetCaption(This,strCaption)
   1182 #define IFullScreenVideoEx_GetCaption(This,pstrCaption) (This)->lpVtbl->GetCaption(This,pstrCaption)
   1183 #define IFullScreenVideoEx_SetDefault(This) (This)->lpVtbl->SetDefault(This)
   1184 /*** IFullScreenVideoEx methods ***/
   1185 #define IFullScreenVideoEx_SetAcceleratorTable(This,hwnd,hAccel) (This)->lpVtbl->SetAcceleratorTable(This,hwnd,hAccel)
   1186 #define IFullScreenVideoEx_GetAcceleratorTable(This,phwnd,phAccel) (This)->lpVtbl->GetAcceleratorTable(This,phwnd,phAccel)
   1187 #define IFullScreenVideoEx_KeepPixelAspectRatio(This,KeepAspect) (This)->lpVtbl->KeepPixelAspectRatio(This,KeepAspect)
   1188 #define IFullScreenVideoEx_IsKeepPixelAspectRatio(This,pKeepAspect) (This)->lpVtbl->IsKeepPixelAspectRatio(This,pKeepAspect)
   1189 #else
   1190 /*** IUnknown methods ***/
   1191 static FORCEINLINE HRESULT IFullScreenVideoEx_QueryInterface(IFullScreenVideoEx* This,REFIID riid,void **ppvObject) {
   1192     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   1193 }
   1194 static FORCEINLINE ULONG IFullScreenVideoEx_AddRef(IFullScreenVideoEx* This) {
   1195     return This->lpVtbl->AddRef(This);
   1196 }
   1197 static FORCEINLINE ULONG IFullScreenVideoEx_Release(IFullScreenVideoEx* This) {
   1198     return This->lpVtbl->Release(This);
   1199 }
   1200 /*** IFullScreenVideo methods ***/
   1201 static FORCEINLINE HRESULT IFullScreenVideoEx_CountModes(IFullScreenVideoEx* This,LONG *pModes) {
   1202     return This->lpVtbl->CountModes(This,pModes);
   1203 }
   1204 static FORCEINLINE HRESULT IFullScreenVideoEx_GetModeInfo(IFullScreenVideoEx* This,LONG Mode,LONG *pWidth,LONG *pHeight,LONG *pDepth) {
   1205     return This->lpVtbl->GetModeInfo(This,Mode,pWidth,pHeight,pDepth);
   1206 }
   1207 static FORCEINLINE HRESULT IFullScreenVideoEx_GetCurrentMode(IFullScreenVideoEx* This,LONG *pMode) {
   1208     return This->lpVtbl->GetCurrentMode(This,pMode);
   1209 }
   1210 static FORCEINLINE HRESULT IFullScreenVideoEx_IsModeAvailable(IFullScreenVideoEx* This,LONG Mode) {
   1211     return This->lpVtbl->IsModeAvailable(This,Mode);
   1212 }
   1213 static FORCEINLINE HRESULT IFullScreenVideoEx_IsModeEnabled(IFullScreenVideoEx* This,LONG Mode) {
   1214     return This->lpVtbl->IsModeEnabled(This,Mode);
   1215 }
   1216 static FORCEINLINE HRESULT IFullScreenVideoEx_SetEnabled(IFullScreenVideoEx* This,LONG Mode,LONG bEnabled) {
   1217     return This->lpVtbl->SetEnabled(This,Mode,bEnabled);
   1218 }
   1219 static FORCEINLINE HRESULT IFullScreenVideoEx_GetClipFactor(IFullScreenVideoEx* This,LONG *pClipFactor) {
   1220     return This->lpVtbl->GetClipFactor(This,pClipFactor);
   1221 }
   1222 static FORCEINLINE HRESULT IFullScreenVideoEx_SetClipFactor(IFullScreenVideoEx* This,LONG ClipFactor) {
   1223     return This->lpVtbl->SetClipFactor(This,ClipFactor);
   1224 }
   1225 static FORCEINLINE HRESULT IFullScreenVideoEx_SetMessageDrain(IFullScreenVideoEx* This,HWND hwnd) {
   1226     return This->lpVtbl->SetMessageDrain(This,hwnd);
   1227 }
   1228 static FORCEINLINE HRESULT IFullScreenVideoEx_GetMessageDrain(IFullScreenVideoEx* This,HWND *hwnd) {
   1229     return This->lpVtbl->GetMessageDrain(This,hwnd);
   1230 }
   1231 static FORCEINLINE HRESULT IFullScreenVideoEx_SetMonitor(IFullScreenVideoEx* This,LONG Monitor) {
   1232     return This->lpVtbl->SetMonitor(This,Monitor);
   1233 }
   1234 static FORCEINLINE HRESULT IFullScreenVideoEx_GetMonitor(IFullScreenVideoEx* This,LONG *Monitor) {
   1235     return This->lpVtbl->GetMonitor(This,Monitor);
   1236 }
   1237 static FORCEINLINE HRESULT IFullScreenVideoEx_HideOnDeactivate(IFullScreenVideoEx* This,LONG Hide) {
   1238     return This->lpVtbl->HideOnDeactivate(This,Hide);
   1239 }
   1240 static FORCEINLINE HRESULT IFullScreenVideoEx_IsHideOnDeactivate(IFullScreenVideoEx* This) {
   1241     return This->lpVtbl->IsHideOnDeactivate(This);
   1242 }
   1243 static FORCEINLINE HRESULT IFullScreenVideoEx_SetCaption(IFullScreenVideoEx* This,BSTR strCaption) {
   1244     return This->lpVtbl->SetCaption(This,strCaption);
   1245 }
   1246 static FORCEINLINE HRESULT IFullScreenVideoEx_GetCaption(IFullScreenVideoEx* This,BSTR *pstrCaption) {
   1247     return This->lpVtbl->GetCaption(This,pstrCaption);
   1248 }
   1249 static FORCEINLINE HRESULT IFullScreenVideoEx_SetDefault(IFullScreenVideoEx* This) {
   1250     return This->lpVtbl->SetDefault(This);
   1251 }
   1252 /*** IFullScreenVideoEx methods ***/
   1253 static FORCEINLINE HRESULT IFullScreenVideoEx_SetAcceleratorTable(IFullScreenVideoEx* This,HWND hwnd,HACCEL hAccel) {
   1254     return This->lpVtbl->SetAcceleratorTable(This,hwnd,hAccel);
   1255 }
   1256 static FORCEINLINE HRESULT IFullScreenVideoEx_GetAcceleratorTable(IFullScreenVideoEx* This,HWND *phwnd,HACCEL *phAccel) {
   1257     return This->lpVtbl->GetAcceleratorTable(This,phwnd,phAccel);
   1258 }
   1259 static FORCEINLINE HRESULT IFullScreenVideoEx_KeepPixelAspectRatio(IFullScreenVideoEx* This,LONG KeepAspect) {
   1260     return This->lpVtbl->KeepPixelAspectRatio(This,KeepAspect);
   1261 }
   1262 static FORCEINLINE HRESULT IFullScreenVideoEx_IsKeepPixelAspectRatio(IFullScreenVideoEx* This,LONG *pKeepAspect) {
   1263     return This->lpVtbl->IsKeepPixelAspectRatio(This,pKeepAspect);
   1264 }
   1265 #endif
   1266 #endif
   1267 
   1268 #endif
   1269 
   1270 HRESULT STDMETHODCALLTYPE IFullScreenVideoEx_SetAcceleratorTable_Proxy(
   1271     IFullScreenVideoEx* This,
   1272     HWND hwnd,
   1273     HACCEL hAccel);
   1274 void __RPC_STUB IFullScreenVideoEx_SetAcceleratorTable_Stub(
   1275     IRpcStubBuffer* This,
   1276     IRpcChannelBuffer* pRpcChannelBuffer,
   1277     PRPC_MESSAGE pRpcMessage,
   1278     DWORD* pdwStubPhase);
   1279 HRESULT STDMETHODCALLTYPE IFullScreenVideoEx_GetAcceleratorTable_Proxy(
   1280     IFullScreenVideoEx* This,
   1281     HWND *phwnd,
   1282     HACCEL *phAccel);
   1283 void __RPC_STUB IFullScreenVideoEx_GetAcceleratorTable_Stub(
   1284     IRpcStubBuffer* This,
   1285     IRpcChannelBuffer* pRpcChannelBuffer,
   1286     PRPC_MESSAGE pRpcMessage,
   1287     DWORD* pdwStubPhase);
   1288 HRESULT STDMETHODCALLTYPE IFullScreenVideoEx_KeepPixelAspectRatio_Proxy(
   1289     IFullScreenVideoEx* This,
   1290     LONG KeepAspect);
   1291 void __RPC_STUB IFullScreenVideoEx_KeepPixelAspectRatio_Stub(
   1292     IRpcStubBuffer* This,
   1293     IRpcChannelBuffer* pRpcChannelBuffer,
   1294     PRPC_MESSAGE pRpcMessage,
   1295     DWORD* pdwStubPhase);
   1296 HRESULT STDMETHODCALLTYPE IFullScreenVideoEx_IsKeepPixelAspectRatio_Proxy(
   1297     IFullScreenVideoEx* This,
   1298     LONG *pKeepAspect);
   1299 void __RPC_STUB IFullScreenVideoEx_IsKeepPixelAspectRatio_Stub(
   1300     IRpcStubBuffer* This,
   1301     IRpcChannelBuffer* pRpcChannelBuffer,
   1302     PRPC_MESSAGE pRpcMessage,
   1303     DWORD* pdwStubPhase);
   1304 
   1305 #endif  /* __IFullScreenVideoEx_INTERFACE_DEFINED__ */
   1306 
   1307 /*****************************************************************************
   1308  * IBaseVideoMixer interface
   1309  */
   1310 #ifndef __IBaseVideoMixer_INTERFACE_DEFINED__
   1311 #define __IBaseVideoMixer_INTERFACE_DEFINED__
   1312 
   1313 #if defined(__cplusplus) && !defined(CINTERFACE)
   1314 interface IBaseVideoMixer : public IUnknown
   1315 {
   1316     virtual HRESULT STDMETHODCALLTYPE SetLeadPin(
   1317         int iPin) = 0;
   1318 
   1319     virtual HRESULT STDMETHODCALLTYPE GetLeadPin(
   1320         int *piPin) = 0;
   1321 
   1322     virtual HRESULT STDMETHODCALLTYPE GetInputPinCount(
   1323         int *piPinCount) = 0;
   1324 
   1325     virtual HRESULT STDMETHODCALLTYPE IsUsingClock(
   1326         int *pbValue) = 0;
   1327 
   1328     virtual HRESULT STDMETHODCALLTYPE SetUsingClock(
   1329         int bValue) = 0;
   1330 
   1331     virtual HRESULT STDMETHODCALLTYPE GetClockPeriod(
   1332         int *pbValue) = 0;
   1333 
   1334     virtual HRESULT STDMETHODCALLTYPE SetClockPeriod(
   1335         int bValue) = 0;
   1336 
   1337 };
   1338 #else
   1339 typedef struct IBaseVideoMixerVtbl {
   1340     BEGIN_INTERFACE
   1341 
   1342     /*** IUnknown methods ***/
   1343     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   1344         IBaseVideoMixer* This,
   1345         REFIID riid,
   1346         void **ppvObject);
   1347 
   1348     ULONG (STDMETHODCALLTYPE *AddRef)(
   1349         IBaseVideoMixer* This);
   1350 
   1351     ULONG (STDMETHODCALLTYPE *Release)(
   1352         IBaseVideoMixer* This);
   1353 
   1354     /*** IBaseVideoMixer methods ***/
   1355     HRESULT (STDMETHODCALLTYPE *SetLeadPin)(
   1356         IBaseVideoMixer* This,
   1357         int iPin);
   1358 
   1359     HRESULT (STDMETHODCALLTYPE *GetLeadPin)(
   1360         IBaseVideoMixer* This,
   1361         int *piPin);
   1362 
   1363     HRESULT (STDMETHODCALLTYPE *GetInputPinCount)(
   1364         IBaseVideoMixer* This,
   1365         int *piPinCount);
   1366 
   1367     HRESULT (STDMETHODCALLTYPE *IsUsingClock)(
   1368         IBaseVideoMixer* This,
   1369         int *pbValue);
   1370 
   1371     HRESULT (STDMETHODCALLTYPE *SetUsingClock)(
   1372         IBaseVideoMixer* This,
   1373         int bValue);
   1374 
   1375     HRESULT (STDMETHODCALLTYPE *GetClockPeriod)(
   1376         IBaseVideoMixer* This,
   1377         int *pbValue);
   1378 
   1379     HRESULT (STDMETHODCALLTYPE *SetClockPeriod)(
   1380         IBaseVideoMixer* This,
   1381         int bValue);
   1382 
   1383     END_INTERFACE
   1384 } IBaseVideoMixerVtbl;
   1385 interface IBaseVideoMixer {
   1386     CONST_VTBL IBaseVideoMixerVtbl* lpVtbl;
   1387 };
   1388 
   1389 #ifdef COBJMACROS
   1390 #ifndef WIDL_C_INLINE_WRAPPERS
   1391 /*** IUnknown methods ***/
   1392 #define IBaseVideoMixer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   1393 #define IBaseVideoMixer_AddRef(This) (This)->lpVtbl->AddRef(This)
   1394 #define IBaseVideoMixer_Release(This) (This)->lpVtbl->Release(This)
   1395 /*** IBaseVideoMixer methods ***/
   1396 #define IBaseVideoMixer_SetLeadPin(This,iPin) (This)->lpVtbl->SetLeadPin(This,iPin)
   1397 #define IBaseVideoMixer_GetLeadPin(This,piPin) (This)->lpVtbl->GetLeadPin(This,piPin)
   1398 #define IBaseVideoMixer_GetInputPinCount(This,piPinCount) (This)->lpVtbl->GetInputPinCount(This,piPinCount)
   1399 #define IBaseVideoMixer_IsUsingClock(This,pbValue) (This)->lpVtbl->IsUsingClock(This,pbValue)
   1400 #define IBaseVideoMixer_SetUsingClock(This,bValue) (This)->lpVtbl->SetUsingClock(This,bValue)
   1401 #define IBaseVideoMixer_GetClockPeriod(This,pbValue) (This)->lpVtbl->GetClockPeriod(This,pbValue)
   1402 #define IBaseVideoMixer_SetClockPeriod(This,bValue) (This)->lpVtbl->SetClockPeriod(This,bValue)
   1403 #else
   1404 /*** IUnknown methods ***/
   1405 static FORCEINLINE HRESULT IBaseVideoMixer_QueryInterface(IBaseVideoMixer* This,REFIID riid,void **ppvObject) {
   1406     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   1407 }
   1408 static FORCEINLINE ULONG IBaseVideoMixer_AddRef(IBaseVideoMixer* This) {
   1409     return This->lpVtbl->AddRef(This);
   1410 }
   1411 static FORCEINLINE ULONG IBaseVideoMixer_Release(IBaseVideoMixer* This) {
   1412     return This->lpVtbl->Release(This);
   1413 }
   1414 /*** IBaseVideoMixer methods ***/
   1415 static FORCEINLINE HRESULT IBaseVideoMixer_SetLeadPin(IBaseVideoMixer* This,int iPin) {
   1416     return This->lpVtbl->SetLeadPin(This,iPin);
   1417 }
   1418 static FORCEINLINE HRESULT IBaseVideoMixer_GetLeadPin(IBaseVideoMixer* This,int *piPin) {
   1419     return This->lpVtbl->GetLeadPin(This,piPin);
   1420 }
   1421 static FORCEINLINE HRESULT IBaseVideoMixer_GetInputPinCount(IBaseVideoMixer* This,int *piPinCount) {
   1422     return This->lpVtbl->GetInputPinCount(This,piPinCount);
   1423 }
   1424 static FORCEINLINE HRESULT IBaseVideoMixer_IsUsingClock(IBaseVideoMixer* This,int *pbValue) {
   1425     return This->lpVtbl->IsUsingClock(This,pbValue);
   1426 }
   1427 static FORCEINLINE HRESULT IBaseVideoMixer_SetUsingClock(IBaseVideoMixer* This,int bValue) {
   1428     return This->lpVtbl->SetUsingClock(This,bValue);
   1429 }
   1430 static FORCEINLINE HRESULT IBaseVideoMixer_GetClockPeriod(IBaseVideoMixer* This,int *pbValue) {
   1431     return This->lpVtbl->GetClockPeriod(This,pbValue);
   1432 }
   1433 static FORCEINLINE HRESULT IBaseVideoMixer_SetClockPeriod(IBaseVideoMixer* This,int bValue) {
   1434     return This->lpVtbl->SetClockPeriod(This,bValue);
   1435 }
   1436 #endif
   1437 #endif
   1438 
   1439 #endif
   1440 
   1441 HRESULT STDMETHODCALLTYPE IBaseVideoMixer_SetLeadPin_Proxy(
   1442     IBaseVideoMixer* This,
   1443     int iPin);
   1444 void __RPC_STUB IBaseVideoMixer_SetLeadPin_Stub(
   1445     IRpcStubBuffer* This,
   1446     IRpcChannelBuffer* pRpcChannelBuffer,
   1447     PRPC_MESSAGE pRpcMessage,
   1448     DWORD* pdwStubPhase);
   1449 HRESULT STDMETHODCALLTYPE IBaseVideoMixer_GetLeadPin_Proxy(
   1450     IBaseVideoMixer* This,
   1451     int *piPin);
   1452 void __RPC_STUB IBaseVideoMixer_GetLeadPin_Stub(
   1453     IRpcStubBuffer* This,
   1454     IRpcChannelBuffer* pRpcChannelBuffer,
   1455     PRPC_MESSAGE pRpcMessage,
   1456     DWORD* pdwStubPhase);
   1457 HRESULT STDMETHODCALLTYPE IBaseVideoMixer_GetInputPinCount_Proxy(
   1458     IBaseVideoMixer* This,
   1459     int *piPinCount);
   1460 void __RPC_STUB IBaseVideoMixer_GetInputPinCount_Stub(
   1461     IRpcStubBuffer* This,
   1462     IRpcChannelBuffer* pRpcChannelBuffer,
   1463     PRPC_MESSAGE pRpcMessage,
   1464     DWORD* pdwStubPhase);
   1465 HRESULT STDMETHODCALLTYPE IBaseVideoMixer_IsUsingClock_Proxy(
   1466     IBaseVideoMixer* This,
   1467     int *pbValue);
   1468 void __RPC_STUB IBaseVideoMixer_IsUsingClock_Stub(
   1469     IRpcStubBuffer* This,
   1470     IRpcChannelBuffer* pRpcChannelBuffer,
   1471     PRPC_MESSAGE pRpcMessage,
   1472     DWORD* pdwStubPhase);
   1473 HRESULT STDMETHODCALLTYPE IBaseVideoMixer_SetUsingClock_Proxy(
   1474     IBaseVideoMixer* This,
   1475     int bValue);
   1476 void __RPC_STUB IBaseVideoMixer_SetUsingClock_Stub(
   1477     IRpcStubBuffer* This,
   1478     IRpcChannelBuffer* pRpcChannelBuffer,
   1479     PRPC_MESSAGE pRpcMessage,
   1480     DWORD* pdwStubPhase);
   1481 HRESULT STDMETHODCALLTYPE IBaseVideoMixer_GetClockPeriod_Proxy(
   1482     IBaseVideoMixer* This,
   1483     int *pbValue);
   1484 void __RPC_STUB IBaseVideoMixer_GetClockPeriod_Stub(
   1485     IRpcStubBuffer* This,
   1486     IRpcChannelBuffer* pRpcChannelBuffer,
   1487     PRPC_MESSAGE pRpcMessage,
   1488     DWORD* pdwStubPhase);
   1489 HRESULT STDMETHODCALLTYPE IBaseVideoMixer_SetClockPeriod_Proxy(
   1490     IBaseVideoMixer* This,
   1491     int bValue);
   1492 void __RPC_STUB IBaseVideoMixer_SetClockPeriod_Stub(
   1493     IRpcStubBuffer* This,
   1494     IRpcChannelBuffer* pRpcChannelBuffer,
   1495     PRPC_MESSAGE pRpcMessage,
   1496     DWORD* pdwStubPhase);
   1497 
   1498 #endif  /* __IBaseVideoMixer_INTERFACE_DEFINED__ */
   1499 
   1500 #define iPALETTE_COLORS 256
   1501 #define iEGA_COLORS 16
   1502 #define iMASK_COLORS 3
   1503 #define iTRUECOLOR 16
   1504 #define iRED 0
   1505 #define iGREEN 1
   1506 #define iBLUE 2
   1507 #define iPALETTE 8
   1508 #define iMAXBITS 8
   1509 typedef struct tag_TRUECOLORINFO {
   1510     DWORD dwBitMasks[3];
   1511     RGBQUAD bmiColors[256];
   1512 } TRUECOLORINFO;
   1513 typedef struct tagVIDEOINFOHEADER {
   1514     RECT rcSource;
   1515     RECT rcTarget;
   1516     DWORD dwBitRate;
   1517     DWORD dwBitErrorRate;
   1518     REFERENCE_TIME AvgTimePerFrame;
   1519     BITMAPINFOHEADER bmiHeader;
   1520 } VIDEOINFOHEADER;
   1521 typedef struct tagVIDEOINFO {
   1522     RECT rcSource;
   1523     RECT rcTarget;
   1524     DWORD dwBitRate;
   1525     DWORD dwBitErrorRate;
   1526     REFERENCE_TIME AvgTimePerFrame;
   1527     BITMAPINFOHEADER bmiHeader;
   1528     __C89_NAMELESS union {
   1529         RGBQUAD bmiColors[256];
   1530         DWORD dwBitMasks[3];
   1531         TRUECOLORINFO TrueColorInfo;
   1532     } __C89_NAMELESSUNIONNAME;
   1533 } VIDEOINFO;
   1534 typedef struct tagMPEG1VIDEOINFO {
   1535     VIDEOINFOHEADER hdr;
   1536     DWORD dwStartTimeCode;
   1537     DWORD cbSequenceHeader;
   1538     BYTE bSequenceHeader[1];
   1539 } MPEG1VIDEOINFO;
   1540 #define MAX_SIZE_MPEG1_SEQUENCE_INFO 140
   1541 #define MPEG1_SEQUENCE_INFO(pv) ((const BYTE *)(pv)->bSequenceHeader)
   1542 typedef struct tagAnalogVideoInfo {
   1543     RECT rcSource;
   1544     RECT rcTarget;
   1545     DWORD dwActiveWidth;
   1546     DWORD dwActiveHeight;
   1547     REFERENCE_TIME AvgTimePerFrame;
   1548 } ANALOGVIDEOINFO;
   1549 typedef enum __WIDL_amvideo_generated_name_00000003 {
   1550     AM_PROPERTY_FRAMESTEP_STEP = 0x1,
   1551     AM_PROPERTY_FRAMESTEP_CANCEL = 0x2,
   1552     AM_PROPERTY_FRAMESTEP_CANSTEP = 0x3,
   1553     AM_PROPERTY_FRAMESTEP_CANSTEPMULTIPLE = 0x4
   1554 } AM_PROPERTY_FRAMESTEP;
   1555 typedef struct _AM_FRAMESTEP_STEP {
   1556     DWORD dwFramesToStep;
   1557 } AM_FRAMESTEP_STEP;
   1558 /* Begin additional prototypes for all interfaces */
   1559 
   1560 ULONG           __RPC_USER HWND_UserSize     (ULONG *, ULONG, HWND *);
   1561 unsigned char * __RPC_USER HWND_UserMarshal  (ULONG *, unsigned char *, HWND *);
   1562 unsigned char * __RPC_USER HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *);
   1563 void            __RPC_USER HWND_UserFree     (ULONG *, HWND *);
   1564 ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
   1565 unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
   1566 unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
   1567 void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
   1568 
   1569 /* End additional prototypes */
   1570 
   1571 #ifdef __cplusplus
   1572 }
   1573 #endif
   1574 
   1575 #endif /* __amvideo_h__ */
   1576