1 /*** Autogenerated by WIDL 0.1 from amvideo.idl - Do not edit ***/
5 #ifndef __WIDL_AMVIDEO_H
6 #define __WIDL_AMVIDEO_H
12 typedef void *LPDIRECTDRAW
;
14 typedef void DDSURFACEDESC
, DDCAPS
;
16 typedef DWORD RGBQUAD
;
18 typedef LONGLONG REFERENCE_TIME
;
32 } BITMAPINFOHEADER
, *PBITMAPINFOHEADER
, *LPBITMAPINFOHEADER
;
36 #define AMDDS_NONE 0x00
37 #define AMDDS_DCIPS 0x01
39 #define AMDDS_RGBOVR 0x04
40 #define AMDDS_YUVOVR 0x08
41 #define AMDDS_RGBOFF 0x10
42 #define AMDDS_YUVOFF 0x20
43 #define AMDDS_RGBFLP 0x40
44 #define AMDDS_YUVFLP 0x80
45 #define AMDDS_ALL 0xFF
46 #define AMDDS_DEFAULT AMDDS_ALL
47 #define AMDDS_YUV (AMDDS_YUVOFF | AMDDS_YUVOVR | AMDDS_YUVFLP)
48 #define AMDDS_RGB (AMDDS_RGBOFF | AMDDS_RGBOVR | AMDDS_RGBFLP)
49 #define AMDSS_PRIMARY (AMDDS_DCIPS | AMDDS_PS)
50 #ifndef __IDirectDrawVideo_FWD_DEFINED__
51 #define __IDirectDrawVideo_FWD_DEFINED__
52 typedef struct IDirectDrawVideo IDirectDrawVideo
;
55 /*****************************************************************************
56 * IDirectDrawVideo interface
58 #ifndef __IDirectDrawVideo_INTERFACE_DEFINED__
59 #define __IDirectDrawVideo_INTERFACE_DEFINED__
61 #if defined(__cplusplus) && !defined(CINTERFACE)
62 struct IDirectDrawVideo
: public IUnknown
64 virtual HRESULT STDMETHODCALLTYPE
GetSwitches(
65 DWORD
* pSwitches
) = 0;
67 virtual HRESULT STDMETHODCALLTYPE
SetSwitches(
70 virtual HRESULT STDMETHODCALLTYPE
GetCaps(
73 virtual HRESULT STDMETHODCALLTYPE
GetEmulatedCaps(
76 virtual HRESULT STDMETHODCALLTYPE
GetSurfaceDesc(
77 DDSURFACEDESC
* pSurfaceDesc
) = 0;
79 virtual HRESULT STDMETHODCALLTYPE
GetFourCCCodes(
83 virtual HRESULT STDMETHODCALLTYPE
SetDirectDraw(
84 LPDIRECTDRAW pDirectDraw
) = 0;
86 virtual HRESULT STDMETHODCALLTYPE
GetDirectDraw(
87 LPDIRECTDRAW
* ppDirectDraw
) = 0;
89 virtual HRESULT STDMETHODCALLTYPE
GetSurfaceType(
90 DWORD
* pSurfaceType
) = 0;
92 virtual HRESULT STDMETHODCALLTYPE
SetDefault(
95 virtual HRESULT STDMETHODCALLTYPE
UseScanLine(
96 long UseScanLine
) = 0;
98 virtual HRESULT STDMETHODCALLTYPE
CanUseScanLine(
99 long* UseScanLine
) = 0;
101 virtual HRESULT STDMETHODCALLTYPE
UseOverlayStretch(
102 long UseOverlayStretch
) = 0;
104 virtual HRESULT STDMETHODCALLTYPE
CanUseOverlayStretch(
105 long* UseOverlayStretch
) = 0;
107 virtual HRESULT STDMETHODCALLTYPE
UseWhenFullScreen(
108 long UseWhenFullScreen
) = 0;
110 virtual HRESULT STDMETHODCALLTYPE
WillUseFullScreen(
111 long* UseWhenFullScreen
) = 0;
115 typedef struct IDirectDrawVideoVtbl IDirectDrawVideoVtbl
;
116 struct IDirectDrawVideo
{
117 const IDirectDrawVideoVtbl
* lpVtbl
;
119 struct IDirectDrawVideoVtbl
{
122 /*** IUnknown methods ***/
123 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
124 IDirectDrawVideo
* This
,
128 ULONG (STDMETHODCALLTYPE
*AddRef
)(
129 IDirectDrawVideo
* This
);
131 ULONG (STDMETHODCALLTYPE
*Release
)(
132 IDirectDrawVideo
* This
);
134 /*** IDirectDrawVideo methods ***/
135 HRESULT (STDMETHODCALLTYPE
*GetSwitches
)(
136 IDirectDrawVideo
* This
,
139 HRESULT (STDMETHODCALLTYPE
*SetSwitches
)(
140 IDirectDrawVideo
* This
,
143 HRESULT (STDMETHODCALLTYPE
*GetCaps
)(
144 IDirectDrawVideo
* This
,
147 HRESULT (STDMETHODCALLTYPE
*GetEmulatedCaps
)(
148 IDirectDrawVideo
* This
,
151 HRESULT (STDMETHODCALLTYPE
*GetSurfaceDesc
)(
152 IDirectDrawVideo
* This
,
153 DDSURFACEDESC
* pSurfaceDesc
);
155 HRESULT (STDMETHODCALLTYPE
*GetFourCCCodes
)(
156 IDirectDrawVideo
* This
,
160 HRESULT (STDMETHODCALLTYPE
*SetDirectDraw
)(
161 IDirectDrawVideo
* This
,
162 LPDIRECTDRAW pDirectDraw
);
164 HRESULT (STDMETHODCALLTYPE
*GetDirectDraw
)(
165 IDirectDrawVideo
* This
,
166 LPDIRECTDRAW
* ppDirectDraw
);
168 HRESULT (STDMETHODCALLTYPE
*GetSurfaceType
)(
169 IDirectDrawVideo
* This
,
170 DWORD
* pSurfaceType
);
172 HRESULT (STDMETHODCALLTYPE
*SetDefault
)(
173 IDirectDrawVideo
* This
);
175 HRESULT (STDMETHODCALLTYPE
*UseScanLine
)(
176 IDirectDrawVideo
* This
,
179 HRESULT (STDMETHODCALLTYPE
*CanUseScanLine
)(
180 IDirectDrawVideo
* This
,
183 HRESULT (STDMETHODCALLTYPE
*UseOverlayStretch
)(
184 IDirectDrawVideo
* This
,
185 long UseOverlayStretch
);
187 HRESULT (STDMETHODCALLTYPE
*CanUseOverlayStretch
)(
188 IDirectDrawVideo
* This
,
189 long* UseOverlayStretch
);
191 HRESULT (STDMETHODCALLTYPE
*UseWhenFullScreen
)(
192 IDirectDrawVideo
* This
,
193 long UseWhenFullScreen
);
195 HRESULT (STDMETHODCALLTYPE
*WillUseFullScreen
)(
196 IDirectDrawVideo
* This
,
197 long* UseWhenFullScreen
);
203 /*** IUnknown methods ***/
204 #define IDirectDrawVideo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
205 #define IDirectDrawVideo_AddRef(p) (p)->lpVtbl->AddRef(p)
206 #define IDirectDrawVideo_Release(p) (p)->lpVtbl->Release(p)
207 /*** IDirectDrawVideo methods ***/
208 #define IDirectDrawVideo_GetSwitches(p,a) (p)->lpVtbl->GetSwitches(p,a)
209 #define IDirectDrawVideo_SetSwitches(p,a) (p)->lpVtbl->SetSwitches(p,a)
210 #define IDirectDrawVideo_GetCaps(p,a) (p)->lpVtbl->GetCaps(p,a)
211 #define IDirectDrawVideo_GetEmulatedCaps(p,a) (p)->lpVtbl->GetEmulatedCaps(p,a)
212 #define IDirectDrawVideo_GetSurfaceDesc(p,a) (p)->lpVtbl->GetSurfaceDesc(p,a)
213 #define IDirectDrawVideo_GetFourCCCodes(p,a,b) (p)->lpVtbl->GetFourCCCodes(p,a,b)
214 #define IDirectDrawVideo_SetDirectDraw(p,a) (p)->lpVtbl->SetDirectDraw(p,a)
215 #define IDirectDrawVideo_GetDirectDraw(p,a) (p)->lpVtbl->GetDirectDraw(p,a)
216 #define IDirectDrawVideo_GetSurfaceType(p,a) (p)->lpVtbl->GetSurfaceType(p,a)
217 #define IDirectDrawVideo_SetDefault(p) (p)->lpVtbl->SetDefault(p)
218 #define IDirectDrawVideo_UseScanLine(p,a) (p)->lpVtbl->UseScanLine(p,a)
219 #define IDirectDrawVideo_CanUseScanLine(p,a) (p)->lpVtbl->CanUseScanLine(p,a)
220 #define IDirectDrawVideo_UseOverlayStretch(p,a) (p)->lpVtbl->UseOverlayStretch(p,a)
221 #define IDirectDrawVideo_CanUseOverlayStretch(p,a) (p)->lpVtbl->CanUseOverlayStretch(p,a)
222 #define IDirectDrawVideo_UseWhenFullScreen(p,a) (p)->lpVtbl->UseWhenFullScreen(p,a)
223 #define IDirectDrawVideo_WillUseFullScreen(p,a) (p)->lpVtbl->WillUseFullScreen(p,a)
228 #define IDirectDrawVideo_METHODS \
229 /*** IUnknown methods ***/ \
230 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
231 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
232 STDMETHOD_(ULONG,Release)(THIS) PURE; \
233 /*** IDirectDrawVideo methods ***/ \
234 STDMETHOD_(HRESULT,GetSwitches)(THIS_ DWORD* pSwitches) PURE; \
235 STDMETHOD_(HRESULT,SetSwitches)(THIS_ DWORD Switches) PURE; \
236 STDMETHOD_(HRESULT,GetCaps)(THIS_ DDCAPS* pCaps) PURE; \
237 STDMETHOD_(HRESULT,GetEmulatedCaps)(THIS_ DDCAPS* pCaps) PURE; \
238 STDMETHOD_(HRESULT,GetSurfaceDesc)(THIS_ DDSURFACEDESC* pSurfaceDesc) PURE; \
239 STDMETHOD_(HRESULT,GetFourCCCodes)(THIS_ DWORD* pCount, DWORD* pCodes) PURE; \
240 STDMETHOD_(HRESULT,SetDirectDraw)(THIS_ LPDIRECTDRAW pDirectDraw) PURE; \
241 STDMETHOD_(HRESULT,GetDirectDraw)(THIS_ LPDIRECTDRAW* ppDirectDraw) PURE; \
242 STDMETHOD_(HRESULT,GetSurfaceType)(THIS_ DWORD* pSurfaceType) PURE; \
243 STDMETHOD_(HRESULT,SetDefault)(THIS) PURE; \
244 STDMETHOD_(HRESULT,UseScanLine)(THIS_ long UseScanLine) PURE; \
245 STDMETHOD_(HRESULT,CanUseScanLine)(THIS_ long* UseScanLine) PURE; \
246 STDMETHOD_(HRESULT,UseOverlayStretch)(THIS_ long UseOverlayStretch) PURE; \
247 STDMETHOD_(HRESULT,CanUseOverlayStretch)(THIS_ long* UseOverlayStretch) PURE; \
248 STDMETHOD_(HRESULT,UseWhenFullScreen)(THIS_ long UseWhenFullScreen) PURE; \
249 STDMETHOD_(HRESULT,WillUseFullScreen)(THIS_ long* UseWhenFullScreen) PURE;
251 HRESULT CALLBACK
IDirectDrawVideo_GetSwitches_Proxy(
252 IDirectDrawVideo
* This
,
254 void __RPC_STUB
IDirectDrawVideo_GetSwitches_Stub(
255 struct IRpcStubBuffer
* This
,
256 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
257 PRPC_MESSAGE pRpcMessage
,
258 DWORD
* pdwStubPhase
);
259 HRESULT CALLBACK
IDirectDrawVideo_SetSwitches_Proxy(
260 IDirectDrawVideo
* This
,
262 void __RPC_STUB
IDirectDrawVideo_SetSwitches_Stub(
263 struct IRpcStubBuffer
* This
,
264 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
265 PRPC_MESSAGE pRpcMessage
,
266 DWORD
* pdwStubPhase
);
267 HRESULT CALLBACK
IDirectDrawVideo_GetCaps_Proxy(
268 IDirectDrawVideo
* This
,
270 void __RPC_STUB
IDirectDrawVideo_GetCaps_Stub(
271 struct IRpcStubBuffer
* This
,
272 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
273 PRPC_MESSAGE pRpcMessage
,
274 DWORD
* pdwStubPhase
);
275 HRESULT CALLBACK
IDirectDrawVideo_GetEmulatedCaps_Proxy(
276 IDirectDrawVideo
* This
,
278 void __RPC_STUB
IDirectDrawVideo_GetEmulatedCaps_Stub(
279 struct IRpcStubBuffer
* This
,
280 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
281 PRPC_MESSAGE pRpcMessage
,
282 DWORD
* pdwStubPhase
);
283 HRESULT CALLBACK
IDirectDrawVideo_GetSurfaceDesc_Proxy(
284 IDirectDrawVideo
* This
,
285 DDSURFACEDESC
* pSurfaceDesc
);
286 void __RPC_STUB
IDirectDrawVideo_GetSurfaceDesc_Stub(
287 struct IRpcStubBuffer
* This
,
288 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
289 PRPC_MESSAGE pRpcMessage
,
290 DWORD
* pdwStubPhase
);
291 HRESULT CALLBACK
IDirectDrawVideo_GetFourCCCodes_Proxy(
292 IDirectDrawVideo
* This
,
295 void __RPC_STUB
IDirectDrawVideo_GetFourCCCodes_Stub(
296 struct IRpcStubBuffer
* This
,
297 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
298 PRPC_MESSAGE pRpcMessage
,
299 DWORD
* pdwStubPhase
);
300 HRESULT CALLBACK
IDirectDrawVideo_SetDirectDraw_Proxy(
301 IDirectDrawVideo
* This
,
302 LPDIRECTDRAW pDirectDraw
);
303 void __RPC_STUB
IDirectDrawVideo_SetDirectDraw_Stub(
304 struct IRpcStubBuffer
* This
,
305 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
306 PRPC_MESSAGE pRpcMessage
,
307 DWORD
* pdwStubPhase
);
308 HRESULT CALLBACK
IDirectDrawVideo_GetDirectDraw_Proxy(
309 IDirectDrawVideo
* This
,
310 LPDIRECTDRAW
* ppDirectDraw
);
311 void __RPC_STUB
IDirectDrawVideo_GetDirectDraw_Stub(
312 struct IRpcStubBuffer
* This
,
313 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
314 PRPC_MESSAGE pRpcMessage
,
315 DWORD
* pdwStubPhase
);
316 HRESULT CALLBACK
IDirectDrawVideo_GetSurfaceType_Proxy(
317 IDirectDrawVideo
* This
,
318 DWORD
* pSurfaceType
);
319 void __RPC_STUB
IDirectDrawVideo_GetSurfaceType_Stub(
320 struct IRpcStubBuffer
* This
,
321 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
322 PRPC_MESSAGE pRpcMessage
,
323 DWORD
* pdwStubPhase
);
324 HRESULT CALLBACK
IDirectDrawVideo_SetDefault_Proxy(
325 IDirectDrawVideo
* This
);
326 void __RPC_STUB
IDirectDrawVideo_SetDefault_Stub(
327 struct IRpcStubBuffer
* This
,
328 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
329 PRPC_MESSAGE pRpcMessage
,
330 DWORD
* pdwStubPhase
);
331 HRESULT CALLBACK
IDirectDrawVideo_UseScanLine_Proxy(
332 IDirectDrawVideo
* This
,
334 void __RPC_STUB
IDirectDrawVideo_UseScanLine_Stub(
335 struct IRpcStubBuffer
* This
,
336 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
337 PRPC_MESSAGE pRpcMessage
,
338 DWORD
* pdwStubPhase
);
339 HRESULT CALLBACK
IDirectDrawVideo_CanUseScanLine_Proxy(
340 IDirectDrawVideo
* This
,
342 void __RPC_STUB
IDirectDrawVideo_CanUseScanLine_Stub(
343 struct IRpcStubBuffer
* This
,
344 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
345 PRPC_MESSAGE pRpcMessage
,
346 DWORD
* pdwStubPhase
);
347 HRESULT CALLBACK
IDirectDrawVideo_UseOverlayStretch_Proxy(
348 IDirectDrawVideo
* This
,
349 long UseOverlayStretch
);
350 void __RPC_STUB
IDirectDrawVideo_UseOverlayStretch_Stub(
351 struct IRpcStubBuffer
* This
,
352 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
353 PRPC_MESSAGE pRpcMessage
,
354 DWORD
* pdwStubPhase
);
355 HRESULT CALLBACK
IDirectDrawVideo_CanUseOverlayStretch_Proxy(
356 IDirectDrawVideo
* This
,
357 long* UseOverlayStretch
);
358 void __RPC_STUB
IDirectDrawVideo_CanUseOverlayStretch_Stub(
359 struct IRpcStubBuffer
* This
,
360 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
361 PRPC_MESSAGE pRpcMessage
,
362 DWORD
* pdwStubPhase
);
363 HRESULT CALLBACK
IDirectDrawVideo_UseWhenFullScreen_Proxy(
364 IDirectDrawVideo
* This
,
365 long UseWhenFullScreen
);
366 void __RPC_STUB
IDirectDrawVideo_UseWhenFullScreen_Stub(
367 struct IRpcStubBuffer
* This
,
368 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
369 PRPC_MESSAGE pRpcMessage
,
370 DWORD
* pdwStubPhase
);
371 HRESULT CALLBACK
IDirectDrawVideo_WillUseFullScreen_Proxy(
372 IDirectDrawVideo
* This
,
373 long* UseWhenFullScreen
);
374 void __RPC_STUB
IDirectDrawVideo_WillUseFullScreen_Stub(
375 struct IRpcStubBuffer
* This
,
376 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
377 PRPC_MESSAGE pRpcMessage
,
378 DWORD
* pdwStubPhase
);
380 #endif /* __IDirectDrawVideo_INTERFACE_DEFINED__ */
382 #ifndef __IQualProp_FWD_DEFINED__
383 #define __IQualProp_FWD_DEFINED__
384 typedef struct IQualProp IQualProp
;
387 /*****************************************************************************
388 * IQualProp interface
390 #ifndef __IQualProp_INTERFACE_DEFINED__
391 #define __IQualProp_INTERFACE_DEFINED__
393 #if defined(__cplusplus) && !defined(CINTERFACE)
394 struct IQualProp
: public IUnknown
396 virtual HRESULT STDMETHODCALLTYPE
get_FramesDroppedInRenderer(
399 virtual HRESULT STDMETHODCALLTYPE
get_FramesDrawn(
400 int* pcFramesDrawn
) = 0;
402 virtual HRESULT STDMETHODCALLTYPE
get_AvgFrameRate(
403 int* piAvgFrameRate
) = 0;
405 virtual HRESULT STDMETHODCALLTYPE
get_Jitter(
408 virtual HRESULT STDMETHODCALLTYPE
get_AvgSyncOffset(
411 virtual HRESULT STDMETHODCALLTYPE
get_DevSyncOffset(
416 typedef struct IQualPropVtbl IQualPropVtbl
;
418 const IQualPropVtbl
* lpVtbl
;
420 struct IQualPropVtbl
{
423 /*** IUnknown methods ***/
424 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
429 ULONG (STDMETHODCALLTYPE
*AddRef
)(
432 ULONG (STDMETHODCALLTYPE
*Release
)(
435 /*** IQualProp methods ***/
436 HRESULT (STDMETHODCALLTYPE
*get_FramesDroppedInRenderer
)(
440 HRESULT (STDMETHODCALLTYPE
*get_FramesDrawn
)(
444 HRESULT (STDMETHODCALLTYPE
*get_AvgFrameRate
)(
446 int* piAvgFrameRate
);
448 HRESULT (STDMETHODCALLTYPE
*get_Jitter
)(
452 HRESULT (STDMETHODCALLTYPE
*get_AvgSyncOffset
)(
456 HRESULT (STDMETHODCALLTYPE
*get_DevSyncOffset
)(
464 /*** IUnknown methods ***/
465 #define IQualProp_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
466 #define IQualProp_AddRef(p) (p)->lpVtbl->AddRef(p)
467 #define IQualProp_Release(p) (p)->lpVtbl->Release(p)
468 /*** IQualProp methods ***/
469 #define IQualProp_get_FramesDroppedInRenderer(p,a) (p)->lpVtbl->get_FramesDroppedInRenderer(p,a)
470 #define IQualProp_get_FramesDrawn(p,a) (p)->lpVtbl->get_FramesDrawn(p,a)
471 #define IQualProp_get_AvgFrameRate(p,a) (p)->lpVtbl->get_AvgFrameRate(p,a)
472 #define IQualProp_get_Jitter(p,a) (p)->lpVtbl->get_Jitter(p,a)
473 #define IQualProp_get_AvgSyncOffset(p,a) (p)->lpVtbl->get_AvgSyncOffset(p,a)
474 #define IQualProp_get_DevSyncOffset(p,a) (p)->lpVtbl->get_DevSyncOffset(p,a)
479 #define IQualProp_METHODS \
480 /*** IUnknown methods ***/ \
481 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
482 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
483 STDMETHOD_(ULONG,Release)(THIS) PURE; \
484 /*** IQualProp methods ***/ \
485 STDMETHOD_(HRESULT,get_FramesDroppedInRenderer)(THIS_ int* pcFrames) PURE; \
486 STDMETHOD_(HRESULT,get_FramesDrawn)(THIS_ int* pcFramesDrawn) PURE; \
487 STDMETHOD_(HRESULT,get_AvgFrameRate)(THIS_ int* piAvgFrameRate) PURE; \
488 STDMETHOD_(HRESULT,get_Jitter)(THIS_ int* iJitter) PURE; \
489 STDMETHOD_(HRESULT,get_AvgSyncOffset)(THIS_ int* piAvg) PURE; \
490 STDMETHOD_(HRESULT,get_DevSyncOffset)(THIS_ int* piDev) PURE;
492 HRESULT CALLBACK
IQualProp_get_FramesDroppedInRenderer_Proxy(
495 void __RPC_STUB
IQualProp_get_FramesDroppedInRenderer_Stub(
496 struct IRpcStubBuffer
* This
,
497 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
498 PRPC_MESSAGE pRpcMessage
,
499 DWORD
* pdwStubPhase
);
500 HRESULT CALLBACK
IQualProp_get_FramesDrawn_Proxy(
503 void __RPC_STUB
IQualProp_get_FramesDrawn_Stub(
504 struct IRpcStubBuffer
* This
,
505 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
506 PRPC_MESSAGE pRpcMessage
,
507 DWORD
* pdwStubPhase
);
508 HRESULT CALLBACK
IQualProp_get_AvgFrameRate_Proxy(
510 int* piAvgFrameRate
);
511 void __RPC_STUB
IQualProp_get_AvgFrameRate_Stub(
512 struct IRpcStubBuffer
* This
,
513 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
514 PRPC_MESSAGE pRpcMessage
,
515 DWORD
* pdwStubPhase
);
516 HRESULT CALLBACK
IQualProp_get_Jitter_Proxy(
519 void __RPC_STUB
IQualProp_get_Jitter_Stub(
520 struct IRpcStubBuffer
* This
,
521 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
522 PRPC_MESSAGE pRpcMessage
,
523 DWORD
* pdwStubPhase
);
524 HRESULT CALLBACK
IQualProp_get_AvgSyncOffset_Proxy(
527 void __RPC_STUB
IQualProp_get_AvgSyncOffset_Stub(
528 struct IRpcStubBuffer
* This
,
529 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
530 PRPC_MESSAGE pRpcMessage
,
531 DWORD
* pdwStubPhase
);
532 HRESULT CALLBACK
IQualProp_get_DevSyncOffset_Proxy(
535 void __RPC_STUB
IQualProp_get_DevSyncOffset_Stub(
536 struct IRpcStubBuffer
* This
,
537 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
538 PRPC_MESSAGE pRpcMessage
,
539 DWORD
* pdwStubPhase
);
541 #endif /* __IQualProp_INTERFACE_DEFINED__ */
543 #ifndef __IFullScreenVideo_FWD_DEFINED__
544 #define __IFullScreenVideo_FWD_DEFINED__
545 typedef struct IFullScreenVideo IFullScreenVideo
;
548 /*****************************************************************************
549 * IFullScreenVideo interface
551 #ifndef __IFullScreenVideo_INTERFACE_DEFINED__
552 #define __IFullScreenVideo_INTERFACE_DEFINED__
554 #if defined(__cplusplus) && !defined(CINTERFACE)
555 struct IFullScreenVideo
: public IUnknown
557 virtual HRESULT STDMETHODCALLTYPE
CountModes(
560 virtual HRESULT STDMETHODCALLTYPE
GetModeInfo(
566 virtual HRESULT STDMETHODCALLTYPE
GetCurrentMode(
569 virtual HRESULT STDMETHODCALLTYPE
IsModeAvailable(
572 virtual HRESULT STDMETHODCALLTYPE
IsModeEnabled(
575 virtual HRESULT STDMETHODCALLTYPE
SetEnabled(
579 virtual HRESULT STDMETHODCALLTYPE
GetClipFactor(
580 long* pClipFactor
) = 0;
582 virtual HRESULT STDMETHODCALLTYPE
SetClipFactor(
583 long ClipFactor
) = 0;
585 virtual HRESULT STDMETHODCALLTYPE
SetMessageDrain(
588 virtual HRESULT STDMETHODCALLTYPE
GetMessageDrain(
591 virtual HRESULT STDMETHODCALLTYPE
SetMonitor(
594 virtual HRESULT STDMETHODCALLTYPE
GetMonitor(
597 virtual HRESULT STDMETHODCALLTYPE
HideOnDeactivate(
600 virtual HRESULT STDMETHODCALLTYPE
IsHideOnDeactivate(
603 virtual HRESULT STDMETHODCALLTYPE
SetCaption(
604 BSTR strCaption
) = 0;
606 virtual HRESULT STDMETHODCALLTYPE
GetCaption(
607 BSTR
* pstrCaption
) = 0;
609 virtual HRESULT STDMETHODCALLTYPE
SetDefault(
614 typedef struct IFullScreenVideoVtbl IFullScreenVideoVtbl
;
615 struct IFullScreenVideo
{
616 const IFullScreenVideoVtbl
* lpVtbl
;
618 struct IFullScreenVideoVtbl
{
621 /*** IUnknown methods ***/
622 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
623 IFullScreenVideo
* This
,
627 ULONG (STDMETHODCALLTYPE
*AddRef
)(
628 IFullScreenVideo
* This
);
630 ULONG (STDMETHODCALLTYPE
*Release
)(
631 IFullScreenVideo
* This
);
633 /*** IFullScreenVideo methods ***/
634 HRESULT (STDMETHODCALLTYPE
*CountModes
)(
635 IFullScreenVideo
* This
,
638 HRESULT (STDMETHODCALLTYPE
*GetModeInfo
)(
639 IFullScreenVideo
* This
,
645 HRESULT (STDMETHODCALLTYPE
*GetCurrentMode
)(
646 IFullScreenVideo
* This
,
649 HRESULT (STDMETHODCALLTYPE
*IsModeAvailable
)(
650 IFullScreenVideo
* This
,
653 HRESULT (STDMETHODCALLTYPE
*IsModeEnabled
)(
654 IFullScreenVideo
* This
,
657 HRESULT (STDMETHODCALLTYPE
*SetEnabled
)(
658 IFullScreenVideo
* This
,
662 HRESULT (STDMETHODCALLTYPE
*GetClipFactor
)(
663 IFullScreenVideo
* This
,
666 HRESULT (STDMETHODCALLTYPE
*SetClipFactor
)(
667 IFullScreenVideo
* This
,
670 HRESULT (STDMETHODCALLTYPE
*SetMessageDrain
)(
671 IFullScreenVideo
* This
,
674 HRESULT (STDMETHODCALLTYPE
*GetMessageDrain
)(
675 IFullScreenVideo
* This
,
678 HRESULT (STDMETHODCALLTYPE
*SetMonitor
)(
679 IFullScreenVideo
* This
,
682 HRESULT (STDMETHODCALLTYPE
*GetMonitor
)(
683 IFullScreenVideo
* This
,
686 HRESULT (STDMETHODCALLTYPE
*HideOnDeactivate
)(
687 IFullScreenVideo
* This
,
690 HRESULT (STDMETHODCALLTYPE
*IsHideOnDeactivate
)(
691 IFullScreenVideo
* This
);
693 HRESULT (STDMETHODCALLTYPE
*SetCaption
)(
694 IFullScreenVideo
* This
,
697 HRESULT (STDMETHODCALLTYPE
*GetCaption
)(
698 IFullScreenVideo
* This
,
701 HRESULT (STDMETHODCALLTYPE
*SetDefault
)(
702 IFullScreenVideo
* This
);
708 /*** IUnknown methods ***/
709 #define IFullScreenVideo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
710 #define IFullScreenVideo_AddRef(p) (p)->lpVtbl->AddRef(p)
711 #define IFullScreenVideo_Release(p) (p)->lpVtbl->Release(p)
712 /*** IFullScreenVideo methods ***/
713 #define IFullScreenVideo_CountModes(p,a) (p)->lpVtbl->CountModes(p,a)
714 #define IFullScreenVideo_GetModeInfo(p,a,b,c,d) (p)->lpVtbl->GetModeInfo(p,a,b,c,d)
715 #define IFullScreenVideo_GetCurrentMode(p,a) (p)->lpVtbl->GetCurrentMode(p,a)
716 #define IFullScreenVideo_IsModeAvailable(p,a) (p)->lpVtbl->IsModeAvailable(p,a)
717 #define IFullScreenVideo_IsModeEnabled(p,a) (p)->lpVtbl->IsModeEnabled(p,a)
718 #define IFullScreenVideo_SetEnabled(p,a,b) (p)->lpVtbl->SetEnabled(p,a,b)
719 #define IFullScreenVideo_GetClipFactor(p,a) (p)->lpVtbl->GetClipFactor(p,a)
720 #define IFullScreenVideo_SetClipFactor(p,a) (p)->lpVtbl->SetClipFactor(p,a)
721 #define IFullScreenVideo_SetMessageDrain(p,a) (p)->lpVtbl->SetMessageDrain(p,a)
722 #define IFullScreenVideo_GetMessageDrain(p,a) (p)->lpVtbl->GetMessageDrain(p,a)
723 #define IFullScreenVideo_SetMonitor(p,a) (p)->lpVtbl->SetMonitor(p,a)
724 #define IFullScreenVideo_GetMonitor(p,a) (p)->lpVtbl->GetMonitor(p,a)
725 #define IFullScreenVideo_HideOnDeactivate(p,a) (p)->lpVtbl->HideOnDeactivate(p,a)
726 #define IFullScreenVideo_IsHideOnDeactivate(p) (p)->lpVtbl->IsHideOnDeactivate(p)
727 #define IFullScreenVideo_SetCaption(p,a) (p)->lpVtbl->SetCaption(p,a)
728 #define IFullScreenVideo_GetCaption(p,a) (p)->lpVtbl->GetCaption(p,a)
729 #define IFullScreenVideo_SetDefault(p) (p)->lpVtbl->SetDefault(p)
734 #define IFullScreenVideo_METHODS \
735 /*** IUnknown methods ***/ \
736 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
737 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
738 STDMETHOD_(ULONG,Release)(THIS) PURE; \
739 /*** IFullScreenVideo methods ***/ \
740 STDMETHOD_(HRESULT,CountModes)(THIS_ long* pModes) PURE; \
741 STDMETHOD_(HRESULT,GetModeInfo)(THIS_ long Mode, long* pWidth, long* pHeight, long* pDepth) PURE; \
742 STDMETHOD_(HRESULT,GetCurrentMode)(THIS_ long* pMode) PURE; \
743 STDMETHOD_(HRESULT,IsModeAvailable)(THIS_ long Mode) PURE; \
744 STDMETHOD_(HRESULT,IsModeEnabled)(THIS_ long Mode) PURE; \
745 STDMETHOD_(HRESULT,SetEnabled)(THIS_ long Mode, long bEnabled) PURE; \
746 STDMETHOD_(HRESULT,GetClipFactor)(THIS_ long* pClipFactor) PURE; \
747 STDMETHOD_(HRESULT,SetClipFactor)(THIS_ long ClipFactor) PURE; \
748 STDMETHOD_(HRESULT,SetMessageDrain)(THIS_ HWND hwnd) PURE; \
749 STDMETHOD_(HRESULT,GetMessageDrain)(THIS_ HWND* hwnd) PURE; \
750 STDMETHOD_(HRESULT,SetMonitor)(THIS_ long Monitor) PURE; \
751 STDMETHOD_(HRESULT,GetMonitor)(THIS_ long* Monitor) PURE; \
752 STDMETHOD_(HRESULT,HideOnDeactivate)(THIS_ long Hide) PURE; \
753 STDMETHOD_(HRESULT,IsHideOnDeactivate)(THIS) PURE; \
754 STDMETHOD_(HRESULT,SetCaption)(THIS_ BSTR strCaption) PURE; \
755 STDMETHOD_(HRESULT,GetCaption)(THIS_ BSTR* pstrCaption) PURE; \
756 STDMETHOD_(HRESULT,SetDefault)(THIS) PURE;
758 HRESULT CALLBACK
IFullScreenVideo_CountModes_Proxy(
759 IFullScreenVideo
* This
,
761 void __RPC_STUB
IFullScreenVideo_CountModes_Stub(
762 struct IRpcStubBuffer
* This
,
763 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
764 PRPC_MESSAGE pRpcMessage
,
765 DWORD
* pdwStubPhase
);
766 HRESULT CALLBACK
IFullScreenVideo_GetModeInfo_Proxy(
767 IFullScreenVideo
* This
,
772 void __RPC_STUB
IFullScreenVideo_GetModeInfo_Stub(
773 struct IRpcStubBuffer
* This
,
774 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
775 PRPC_MESSAGE pRpcMessage
,
776 DWORD
* pdwStubPhase
);
777 HRESULT CALLBACK
IFullScreenVideo_GetCurrentMode_Proxy(
778 IFullScreenVideo
* This
,
780 void __RPC_STUB
IFullScreenVideo_GetCurrentMode_Stub(
781 struct IRpcStubBuffer
* This
,
782 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
783 PRPC_MESSAGE pRpcMessage
,
784 DWORD
* pdwStubPhase
);
785 HRESULT CALLBACK
IFullScreenVideo_IsModeAvailable_Proxy(
786 IFullScreenVideo
* This
,
788 void __RPC_STUB
IFullScreenVideo_IsModeAvailable_Stub(
789 struct IRpcStubBuffer
* This
,
790 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
791 PRPC_MESSAGE pRpcMessage
,
792 DWORD
* pdwStubPhase
);
793 HRESULT CALLBACK
IFullScreenVideo_IsModeEnabled_Proxy(
794 IFullScreenVideo
* This
,
796 void __RPC_STUB
IFullScreenVideo_IsModeEnabled_Stub(
797 struct IRpcStubBuffer
* This
,
798 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
799 PRPC_MESSAGE pRpcMessage
,
800 DWORD
* pdwStubPhase
);
801 HRESULT CALLBACK
IFullScreenVideo_SetEnabled_Proxy(
802 IFullScreenVideo
* This
,
805 void __RPC_STUB
IFullScreenVideo_SetEnabled_Stub(
806 struct IRpcStubBuffer
* This
,
807 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
808 PRPC_MESSAGE pRpcMessage
,
809 DWORD
* pdwStubPhase
);
810 HRESULT CALLBACK
IFullScreenVideo_GetClipFactor_Proxy(
811 IFullScreenVideo
* This
,
813 void __RPC_STUB
IFullScreenVideo_GetClipFactor_Stub(
814 struct IRpcStubBuffer
* This
,
815 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
816 PRPC_MESSAGE pRpcMessage
,
817 DWORD
* pdwStubPhase
);
818 HRESULT CALLBACK
IFullScreenVideo_SetClipFactor_Proxy(
819 IFullScreenVideo
* This
,
821 void __RPC_STUB
IFullScreenVideo_SetClipFactor_Stub(
822 struct IRpcStubBuffer
* This
,
823 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
824 PRPC_MESSAGE pRpcMessage
,
825 DWORD
* pdwStubPhase
);
826 HRESULT CALLBACK
IFullScreenVideo_SetMessageDrain_Proxy(
827 IFullScreenVideo
* This
,
829 void __RPC_STUB
IFullScreenVideo_SetMessageDrain_Stub(
830 struct IRpcStubBuffer
* This
,
831 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
832 PRPC_MESSAGE pRpcMessage
,
833 DWORD
* pdwStubPhase
);
834 HRESULT CALLBACK
IFullScreenVideo_GetMessageDrain_Proxy(
835 IFullScreenVideo
* This
,
837 void __RPC_STUB
IFullScreenVideo_GetMessageDrain_Stub(
838 struct IRpcStubBuffer
* This
,
839 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
840 PRPC_MESSAGE pRpcMessage
,
841 DWORD
* pdwStubPhase
);
842 HRESULT CALLBACK
IFullScreenVideo_SetMonitor_Proxy(
843 IFullScreenVideo
* This
,
845 void __RPC_STUB
IFullScreenVideo_SetMonitor_Stub(
846 struct IRpcStubBuffer
* This
,
847 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
848 PRPC_MESSAGE pRpcMessage
,
849 DWORD
* pdwStubPhase
);
850 HRESULT CALLBACK
IFullScreenVideo_GetMonitor_Proxy(
851 IFullScreenVideo
* This
,
853 void __RPC_STUB
IFullScreenVideo_GetMonitor_Stub(
854 struct IRpcStubBuffer
* This
,
855 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
856 PRPC_MESSAGE pRpcMessage
,
857 DWORD
* pdwStubPhase
);
858 HRESULT CALLBACK
IFullScreenVideo_HideOnDeactivate_Proxy(
859 IFullScreenVideo
* This
,
861 void __RPC_STUB
IFullScreenVideo_HideOnDeactivate_Stub(
862 struct IRpcStubBuffer
* This
,
863 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
864 PRPC_MESSAGE pRpcMessage
,
865 DWORD
* pdwStubPhase
);
866 HRESULT CALLBACK
IFullScreenVideo_IsHideOnDeactivate_Proxy(
867 IFullScreenVideo
* This
);
868 void __RPC_STUB
IFullScreenVideo_IsHideOnDeactivate_Stub(
869 struct IRpcStubBuffer
* This
,
870 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
871 PRPC_MESSAGE pRpcMessage
,
872 DWORD
* pdwStubPhase
);
873 HRESULT CALLBACK
IFullScreenVideo_SetCaption_Proxy(
874 IFullScreenVideo
* This
,
876 void __RPC_STUB
IFullScreenVideo_SetCaption_Stub(
877 struct IRpcStubBuffer
* This
,
878 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
879 PRPC_MESSAGE pRpcMessage
,
880 DWORD
* pdwStubPhase
);
881 HRESULT CALLBACK
IFullScreenVideo_GetCaption_Proxy(
882 IFullScreenVideo
* This
,
884 void __RPC_STUB
IFullScreenVideo_GetCaption_Stub(
885 struct IRpcStubBuffer
* This
,
886 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
887 PRPC_MESSAGE pRpcMessage
,
888 DWORD
* pdwStubPhase
);
889 HRESULT CALLBACK
IFullScreenVideo_SetDefault_Proxy(
890 IFullScreenVideo
* This
);
891 void __RPC_STUB
IFullScreenVideo_SetDefault_Stub(
892 struct IRpcStubBuffer
* This
,
893 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
894 PRPC_MESSAGE pRpcMessage
,
895 DWORD
* pdwStubPhase
);
897 #endif /* __IFullScreenVideo_INTERFACE_DEFINED__ */
899 #ifndef __IFullScreenVideoEx_FWD_DEFINED__
900 #define __IFullScreenVideoEx_FWD_DEFINED__
901 typedef struct IFullScreenVideoEx IFullScreenVideoEx
;
904 /*****************************************************************************
905 * IFullScreenVideoEx interface
907 #ifndef __IFullScreenVideoEx_INTERFACE_DEFINED__
908 #define __IFullScreenVideoEx_INTERFACE_DEFINED__
910 #if defined(__cplusplus) && !defined(CINTERFACE)
911 struct IFullScreenVideoEx
: public IFullScreenVideo
913 virtual HRESULT STDMETHODCALLTYPE
SetAcceleratorTable(
917 virtual HRESULT STDMETHODCALLTYPE
GetAcceleratorTable(
919 HACCEL
* phAccel
) = 0;
921 virtual HRESULT STDMETHODCALLTYPE
KeepPixelAspectRatio(
922 long KeepAspect
) = 0;
924 virtual HRESULT STDMETHODCALLTYPE
IsKeepPixelAspectRatio(
925 long* pKeepAspect
) = 0;
929 typedef struct IFullScreenVideoExVtbl IFullScreenVideoExVtbl
;
930 struct IFullScreenVideoEx
{
931 const IFullScreenVideoExVtbl
* lpVtbl
;
933 struct IFullScreenVideoExVtbl
{
936 /*** IUnknown methods ***/
937 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
938 IFullScreenVideoEx
* This
,
942 ULONG (STDMETHODCALLTYPE
*AddRef
)(
943 IFullScreenVideoEx
* This
);
945 ULONG (STDMETHODCALLTYPE
*Release
)(
946 IFullScreenVideoEx
* This
);
948 /*** IFullScreenVideo methods ***/
949 HRESULT (STDMETHODCALLTYPE
*CountModes
)(
950 IFullScreenVideoEx
* This
,
953 HRESULT (STDMETHODCALLTYPE
*GetModeInfo
)(
954 IFullScreenVideoEx
* This
,
960 HRESULT (STDMETHODCALLTYPE
*GetCurrentMode
)(
961 IFullScreenVideoEx
* This
,
964 HRESULT (STDMETHODCALLTYPE
*IsModeAvailable
)(
965 IFullScreenVideoEx
* This
,
968 HRESULT (STDMETHODCALLTYPE
*IsModeEnabled
)(
969 IFullScreenVideoEx
* This
,
972 HRESULT (STDMETHODCALLTYPE
*SetEnabled
)(
973 IFullScreenVideoEx
* This
,
977 HRESULT (STDMETHODCALLTYPE
*GetClipFactor
)(
978 IFullScreenVideoEx
* This
,
981 HRESULT (STDMETHODCALLTYPE
*SetClipFactor
)(
982 IFullScreenVideoEx
* This
,
985 HRESULT (STDMETHODCALLTYPE
*SetMessageDrain
)(
986 IFullScreenVideoEx
* This
,
989 HRESULT (STDMETHODCALLTYPE
*GetMessageDrain
)(
990 IFullScreenVideoEx
* This
,
993 HRESULT (STDMETHODCALLTYPE
*SetMonitor
)(
994 IFullScreenVideoEx
* This
,
997 HRESULT (STDMETHODCALLTYPE
*GetMonitor
)(
998 IFullScreenVideoEx
* This
,
1001 HRESULT (STDMETHODCALLTYPE
*HideOnDeactivate
)(
1002 IFullScreenVideoEx
* This
,
1005 HRESULT (STDMETHODCALLTYPE
*IsHideOnDeactivate
)(
1006 IFullScreenVideoEx
* This
);
1008 HRESULT (STDMETHODCALLTYPE
*SetCaption
)(
1009 IFullScreenVideoEx
* This
,
1012 HRESULT (STDMETHODCALLTYPE
*GetCaption
)(
1013 IFullScreenVideoEx
* This
,
1016 HRESULT (STDMETHODCALLTYPE
*SetDefault
)(
1017 IFullScreenVideoEx
* This
);
1019 /*** IFullScreenVideoEx methods ***/
1020 HRESULT (STDMETHODCALLTYPE
*SetAcceleratorTable
)(
1021 IFullScreenVideoEx
* This
,
1025 HRESULT (STDMETHODCALLTYPE
*GetAcceleratorTable
)(
1026 IFullScreenVideoEx
* This
,
1030 HRESULT (STDMETHODCALLTYPE
*KeepPixelAspectRatio
)(
1031 IFullScreenVideoEx
* This
,
1034 HRESULT (STDMETHODCALLTYPE
*IsKeepPixelAspectRatio
)(
1035 IFullScreenVideoEx
* This
,
1042 /*** IUnknown methods ***/
1043 #define IFullScreenVideoEx_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1044 #define IFullScreenVideoEx_AddRef(p) (p)->lpVtbl->AddRef(p)
1045 #define IFullScreenVideoEx_Release(p) (p)->lpVtbl->Release(p)
1046 /*** IFullScreenVideo methods ***/
1047 #define IFullScreenVideoEx_CountModes(p,a) (p)->lpVtbl->CountModes(p,a)
1048 #define IFullScreenVideoEx_GetModeInfo(p,a,b,c,d) (p)->lpVtbl->GetModeInfo(p,a,b,c,d)
1049 #define IFullScreenVideoEx_GetCurrentMode(p,a) (p)->lpVtbl->GetCurrentMode(p,a)
1050 #define IFullScreenVideoEx_IsModeAvailable(p,a) (p)->lpVtbl->IsModeAvailable(p,a)
1051 #define IFullScreenVideoEx_IsModeEnabled(p,a) (p)->lpVtbl->IsModeEnabled(p,a)
1052 #define IFullScreenVideoEx_SetEnabled(p,a,b) (p)->lpVtbl->SetEnabled(p,a,b)
1053 #define IFullScreenVideoEx_GetClipFactor(p,a) (p)->lpVtbl->GetClipFactor(p,a)
1054 #define IFullScreenVideoEx_SetClipFactor(p,a) (p)->lpVtbl->SetClipFactor(p,a)
1055 #define IFullScreenVideoEx_SetMessageDrain(p,a) (p)->lpVtbl->SetMessageDrain(p,a)
1056 #define IFullScreenVideoEx_GetMessageDrain(p,a) (p)->lpVtbl->GetMessageDrain(p,a)
1057 #define IFullScreenVideoEx_SetMonitor(p,a) (p)->lpVtbl->SetMonitor(p,a)
1058 #define IFullScreenVideoEx_GetMonitor(p,a) (p)->lpVtbl->GetMonitor(p,a)
1059 #define IFullScreenVideoEx_HideOnDeactivate(p,a) (p)->lpVtbl->HideOnDeactivate(p,a)
1060 #define IFullScreenVideoEx_IsHideOnDeactivate(p) (p)->lpVtbl->IsHideOnDeactivate(p)
1061 #define IFullScreenVideoEx_SetCaption(p,a) (p)->lpVtbl->SetCaption(p,a)
1062 #define IFullScreenVideoEx_GetCaption(p,a) (p)->lpVtbl->GetCaption(p,a)
1063 #define IFullScreenVideoEx_SetDefault(p) (p)->lpVtbl->SetDefault(p)
1064 /*** IFullScreenVideoEx methods ***/
1065 #define IFullScreenVideoEx_SetAcceleratorTable(p,a,b) (p)->lpVtbl->SetAcceleratorTable(p,a,b)
1066 #define IFullScreenVideoEx_GetAcceleratorTable(p,a,b) (p)->lpVtbl->GetAcceleratorTable(p,a,b)
1067 #define IFullScreenVideoEx_KeepPixelAspectRatio(p,a) (p)->lpVtbl->KeepPixelAspectRatio(p,a)
1068 #define IFullScreenVideoEx_IsKeepPixelAspectRatio(p,a) (p)->lpVtbl->IsKeepPixelAspectRatio(p,a)
1073 #define IFullScreenVideoEx_METHODS \
1074 /*** IUnknown methods ***/ \
1075 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1076 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1077 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1078 /*** IFullScreenVideo methods ***/ \
1079 STDMETHOD_(HRESULT,CountModes)(THIS_ long* pModes) PURE; \
1080 STDMETHOD_(HRESULT,GetModeInfo)(THIS_ long Mode, long* pWidth, long* pHeight, long* pDepth) PURE; \
1081 STDMETHOD_(HRESULT,GetCurrentMode)(THIS_ long* pMode) PURE; \
1082 STDMETHOD_(HRESULT,IsModeAvailable)(THIS_ long Mode) PURE; \
1083 STDMETHOD_(HRESULT,IsModeEnabled)(THIS_ long Mode) PURE; \
1084 STDMETHOD_(HRESULT,SetEnabled)(THIS_ long Mode, long bEnabled) PURE; \
1085 STDMETHOD_(HRESULT,GetClipFactor)(THIS_ long* pClipFactor) PURE; \
1086 STDMETHOD_(HRESULT,SetClipFactor)(THIS_ long ClipFactor) PURE; \
1087 STDMETHOD_(HRESULT,SetMessageDrain)(THIS_ HWND hwnd) PURE; \
1088 STDMETHOD_(HRESULT,GetMessageDrain)(THIS_ HWND* hwnd) PURE; \
1089 STDMETHOD_(HRESULT,SetMonitor)(THIS_ long Monitor) PURE; \
1090 STDMETHOD_(HRESULT,GetMonitor)(THIS_ long* Monitor) PURE; \
1091 STDMETHOD_(HRESULT,HideOnDeactivate)(THIS_ long Hide) PURE; \
1092 STDMETHOD_(HRESULT,IsHideOnDeactivate)(THIS) PURE; \
1093 STDMETHOD_(HRESULT,SetCaption)(THIS_ BSTR strCaption) PURE; \
1094 STDMETHOD_(HRESULT,GetCaption)(THIS_ BSTR* pstrCaption) PURE; \
1095 STDMETHOD_(HRESULT,SetDefault)(THIS) PURE; \
1096 /*** IFullScreenVideoEx methods ***/ \
1097 STDMETHOD_(HRESULT,SetAcceleratorTable)(THIS_ HWND hwnd, HACCEL hAccel) PURE; \
1098 STDMETHOD_(HRESULT,GetAcceleratorTable)(THIS_ HWND* phwnd, HACCEL* phAccel) PURE; \
1099 STDMETHOD_(HRESULT,KeepPixelAspectRatio)(THIS_ long KeepAspect) PURE; \
1100 STDMETHOD_(HRESULT,IsKeepPixelAspectRatio)(THIS_ long* pKeepAspect) PURE;
1102 HRESULT CALLBACK
IFullScreenVideoEx_SetAcceleratorTable_Proxy(
1103 IFullScreenVideoEx
* This
,
1106 void __RPC_STUB
IFullScreenVideoEx_SetAcceleratorTable_Stub(
1107 struct IRpcStubBuffer
* This
,
1108 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1109 PRPC_MESSAGE pRpcMessage
,
1110 DWORD
* pdwStubPhase
);
1111 HRESULT CALLBACK
IFullScreenVideoEx_GetAcceleratorTable_Proxy(
1112 IFullScreenVideoEx
* This
,
1115 void __RPC_STUB
IFullScreenVideoEx_GetAcceleratorTable_Stub(
1116 struct IRpcStubBuffer
* This
,
1117 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1118 PRPC_MESSAGE pRpcMessage
,
1119 DWORD
* pdwStubPhase
);
1120 HRESULT CALLBACK
IFullScreenVideoEx_KeepPixelAspectRatio_Proxy(
1121 IFullScreenVideoEx
* This
,
1123 void __RPC_STUB
IFullScreenVideoEx_KeepPixelAspectRatio_Stub(
1124 struct IRpcStubBuffer
* This
,
1125 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1126 PRPC_MESSAGE pRpcMessage
,
1127 DWORD
* pdwStubPhase
);
1128 HRESULT CALLBACK
IFullScreenVideoEx_IsKeepPixelAspectRatio_Proxy(
1129 IFullScreenVideoEx
* This
,
1131 void __RPC_STUB
IFullScreenVideoEx_IsKeepPixelAspectRatio_Stub(
1132 struct IRpcStubBuffer
* This
,
1133 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1134 PRPC_MESSAGE pRpcMessage
,
1135 DWORD
* pdwStubPhase
);
1137 #endif /* __IFullScreenVideoEx_INTERFACE_DEFINED__ */
1139 #ifndef __IBaseVideoMixer_FWD_DEFINED__
1140 #define __IBaseVideoMixer_FWD_DEFINED__
1141 typedef struct IBaseVideoMixer IBaseVideoMixer
;
1144 /*****************************************************************************
1145 * IBaseVideoMixer interface
1147 #ifndef __IBaseVideoMixer_INTERFACE_DEFINED__
1148 #define __IBaseVideoMixer_INTERFACE_DEFINED__
1150 #if defined(__cplusplus) && !defined(CINTERFACE)
1151 struct IBaseVideoMixer
: public IUnknown
1153 virtual HRESULT STDMETHODCALLTYPE
SetLeadPin(
1156 virtual HRESULT STDMETHODCALLTYPE
GetLeadPin(
1159 virtual HRESULT STDMETHODCALLTYPE
GetInputPinCount(
1160 int* piPinCount
) = 0;
1162 virtual HRESULT STDMETHODCALLTYPE
IsUsingClock(
1165 virtual HRESULT STDMETHODCALLTYPE
SetUsingClock(
1168 virtual HRESULT STDMETHODCALLTYPE
GetClockPeriod(
1171 virtual HRESULT STDMETHODCALLTYPE
SetClockPeriod(
1176 typedef struct IBaseVideoMixerVtbl IBaseVideoMixerVtbl
;
1177 struct IBaseVideoMixer
{
1178 const IBaseVideoMixerVtbl
* lpVtbl
;
1180 struct IBaseVideoMixerVtbl
{
1183 /*** IUnknown methods ***/
1184 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1185 IBaseVideoMixer
* This
,
1189 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1190 IBaseVideoMixer
* This
);
1192 ULONG (STDMETHODCALLTYPE
*Release
)(
1193 IBaseVideoMixer
* This
);
1195 /*** IBaseVideoMixer methods ***/
1196 HRESULT (STDMETHODCALLTYPE
*SetLeadPin
)(
1197 IBaseVideoMixer
* This
,
1200 HRESULT (STDMETHODCALLTYPE
*GetLeadPin
)(
1201 IBaseVideoMixer
* This
,
1204 HRESULT (STDMETHODCALLTYPE
*GetInputPinCount
)(
1205 IBaseVideoMixer
* This
,
1208 HRESULT (STDMETHODCALLTYPE
*IsUsingClock
)(
1209 IBaseVideoMixer
* This
,
1212 HRESULT (STDMETHODCALLTYPE
*SetUsingClock
)(
1213 IBaseVideoMixer
* This
,
1216 HRESULT (STDMETHODCALLTYPE
*GetClockPeriod
)(
1217 IBaseVideoMixer
* This
,
1220 HRESULT (STDMETHODCALLTYPE
*SetClockPeriod
)(
1221 IBaseVideoMixer
* This
,
1228 /*** IUnknown methods ***/
1229 #define IBaseVideoMixer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1230 #define IBaseVideoMixer_AddRef(p) (p)->lpVtbl->AddRef(p)
1231 #define IBaseVideoMixer_Release(p) (p)->lpVtbl->Release(p)
1232 /*** IBaseVideoMixer methods ***/
1233 #define IBaseVideoMixer_SetLeadPin(p,a) (p)->lpVtbl->SetLeadPin(p,a)
1234 #define IBaseVideoMixer_GetLeadPin(p,a) (p)->lpVtbl->GetLeadPin(p,a)
1235 #define IBaseVideoMixer_GetInputPinCount(p,a) (p)->lpVtbl->GetInputPinCount(p,a)
1236 #define IBaseVideoMixer_IsUsingClock(p,a) (p)->lpVtbl->IsUsingClock(p,a)
1237 #define IBaseVideoMixer_SetUsingClock(p,a) (p)->lpVtbl->SetUsingClock(p,a)
1238 #define IBaseVideoMixer_GetClockPeriod(p,a) (p)->lpVtbl->GetClockPeriod(p,a)
1239 #define IBaseVideoMixer_SetClockPeriod(p,a) (p)->lpVtbl->SetClockPeriod(p,a)
1244 #define IBaseVideoMixer_METHODS \
1245 /*** IUnknown methods ***/ \
1246 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1247 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1248 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1249 /*** IBaseVideoMixer methods ***/ \
1250 STDMETHOD_(HRESULT,SetLeadPin)(THIS_ int iPin) PURE; \
1251 STDMETHOD_(HRESULT,GetLeadPin)(THIS_ int* piPin) PURE; \
1252 STDMETHOD_(HRESULT,GetInputPinCount)(THIS_ int* piPinCount) PURE; \
1253 STDMETHOD_(HRESULT,IsUsingClock)(THIS_ int* pbValue) PURE; \
1254 STDMETHOD_(HRESULT,SetUsingClock)(THIS_ int bValue) PURE; \
1255 STDMETHOD_(HRESULT,GetClockPeriod)(THIS_ int* pbValue) PURE; \
1256 STDMETHOD_(HRESULT,SetClockPeriod)(THIS_ int bValue) PURE;
1258 HRESULT CALLBACK
IBaseVideoMixer_SetLeadPin_Proxy(
1259 IBaseVideoMixer
* This
,
1261 void __RPC_STUB
IBaseVideoMixer_SetLeadPin_Stub(
1262 struct IRpcStubBuffer
* This
,
1263 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1264 PRPC_MESSAGE pRpcMessage
,
1265 DWORD
* pdwStubPhase
);
1266 HRESULT CALLBACK
IBaseVideoMixer_GetLeadPin_Proxy(
1267 IBaseVideoMixer
* This
,
1269 void __RPC_STUB
IBaseVideoMixer_GetLeadPin_Stub(
1270 struct IRpcStubBuffer
* This
,
1271 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1272 PRPC_MESSAGE pRpcMessage
,
1273 DWORD
* pdwStubPhase
);
1274 HRESULT CALLBACK
IBaseVideoMixer_GetInputPinCount_Proxy(
1275 IBaseVideoMixer
* This
,
1277 void __RPC_STUB
IBaseVideoMixer_GetInputPinCount_Stub(
1278 struct IRpcStubBuffer
* This
,
1279 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1280 PRPC_MESSAGE pRpcMessage
,
1281 DWORD
* pdwStubPhase
);
1282 HRESULT CALLBACK
IBaseVideoMixer_IsUsingClock_Proxy(
1283 IBaseVideoMixer
* This
,
1285 void __RPC_STUB
IBaseVideoMixer_IsUsingClock_Stub(
1286 struct IRpcStubBuffer
* This
,
1287 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1288 PRPC_MESSAGE pRpcMessage
,
1289 DWORD
* pdwStubPhase
);
1290 HRESULT CALLBACK
IBaseVideoMixer_SetUsingClock_Proxy(
1291 IBaseVideoMixer
* This
,
1293 void __RPC_STUB
IBaseVideoMixer_SetUsingClock_Stub(
1294 struct IRpcStubBuffer
* This
,
1295 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1296 PRPC_MESSAGE pRpcMessage
,
1297 DWORD
* pdwStubPhase
);
1298 HRESULT CALLBACK
IBaseVideoMixer_GetClockPeriod_Proxy(
1299 IBaseVideoMixer
* This
,
1301 void __RPC_STUB
IBaseVideoMixer_GetClockPeriod_Stub(
1302 struct IRpcStubBuffer
* This
,
1303 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1304 PRPC_MESSAGE pRpcMessage
,
1305 DWORD
* pdwStubPhase
);
1306 HRESULT CALLBACK
IBaseVideoMixer_SetClockPeriod_Proxy(
1307 IBaseVideoMixer
* This
,
1309 void __RPC_STUB
IBaseVideoMixer_SetClockPeriod_Stub(
1310 struct IRpcStubBuffer
* This
,
1311 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1312 PRPC_MESSAGE pRpcMessage
,
1313 DWORD
* pdwStubPhase
);
1315 #endif /* __IBaseVideoMixer_INTERFACE_DEFINED__ */
1317 #define iPALETTE_COLORS 256
1318 #define iEGA_COLORS 16
1319 #define iMASK_COLORS 3
1320 #define iTRUECOLOR 16
1326 typedef struct tag_TRUECOLORINFO
{
1327 DWORD dwBitMasks
[3];
1328 RGBQUAD bmiColors
[256];
1331 typedef struct tagVIDEOINFOHEADER
{
1335 DWORD dwBitErrorRate
;
1336 REFERENCE_TIME AvgTimePerFrame
;
1337 BITMAPINFOHEADER bmiHeader
;
1340 typedef struct tagVIDEOINFO
{
1344 DWORD dwBitErrorRate
;
1345 REFERENCE_TIME AvgTimePerFrame
;
1346 BITMAPINFOHEADER bmiHeader
;
1348 RGBQUAD bmiColors
[256];
1349 DWORD dwBitMasks
[3];
1350 TRUECOLORINFO TrueColorInfo
;
1354 typedef struct tagMPEG1VIDEOINFO
{
1355 VIDEOINFOHEADER hdr
;
1356 DWORD dwStartTimeCode
;
1357 DWORD cbSequenceHeader
;
1358 BYTE bSequenceHeader
[1];
1361 #define MAX_SIZE_MPEG1_SEQUENCE_INFO 140
1362 #define MPEG1_SEQUENCE_INFO(pv) ((const BYTE *)(pv)->bSequenceHeader)
1363 typedef struct tagAnalogVideoInfo
{
1366 DWORD dwActiveWidth
;
1367 DWORD dwActiveHeight
;
1368 REFERENCE_TIME AvgTimePerFrame
;
1372 AM_PROPERTY_FRAMESTEP_STEP
= 0x1,
1373 AM_PROPERTY_FRAMESTEP_CANCEL
= 0x2,
1374 AM_PROPERTY_FRAMESTEP_CANSTEP
= 0x3,
1375 AM_PROPERTY_FRAMESTEP_CANSTEPMULTIPLE
= 0x4
1376 } AM_PROPERTY_FRAMESTEP
;
1378 typedef struct _AM_FRAMESTEP_STEP
{
1379 DWORD dwFramesToStep
;
1380 } AM_FRAMESTEP_STEP
;
1385 #endif /* __WIDL_AMVIDEO_H */