1 /*** Autogenerated by WIDL 3.19 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 #ifdef __cplusplus
24 interface IDirectDrawVideo;
25 #endif /* __cplusplus */
26 #endif
27
28 #ifndef __IQualProp_FWD_DEFINED__
29 #define __IQualProp_FWD_DEFINED__
30 typedef interface IQualProp IQualProp;
31 #ifdef __cplusplus
32 interface IQualProp;
33 #endif /* __cplusplus */
34 #endif
35
36 #ifndef __IFullScreenVideo_FWD_DEFINED__
37 #define __IFullScreenVideo_FWD_DEFINED__
38 typedef interface IFullScreenVideo IFullScreenVideo;
39 #ifdef __cplusplus
40 interface IFullScreenVideo;
41 #endif /* __cplusplus */
42 #endif
43
44 #ifndef __IFullScreenVideoEx_FWD_DEFINED__
45 #define __IFullScreenVideoEx_FWD_DEFINED__
46 typedef interface IFullScreenVideoEx IFullScreenVideoEx;
47 #ifdef __cplusplus
48 interface IFullScreenVideoEx;
49 #endif /* __cplusplus */
50 #endif
51
52 #ifndef __IBaseVideoMixer_FWD_DEFINED__
53 #define __IBaseVideoMixer_FWD_DEFINED__
54 typedef interface IBaseVideoMixer IBaseVideoMixer;
55 #ifdef __cplusplus
56 interface IBaseVideoMixer;
57 #endif /* __cplusplus */
58 #endif
59
60 /* Headers for imported files */
61
62 #include <objidl.h>
63
64 #ifdef __cplusplus
65 extern "C" {
66 #endif
67
68 #if 0
69 #ifndef __IDirectDraw_FWD_DEFINED__
70 #define __IDirectDraw_FWD_DEFINED__
71 typedef interface IDirectDraw IDirectDraw;
72 #ifdef __cplusplus
73 interface IDirectDraw;
74 #endif /* __cplusplus */
75 #endif
76
77 typedef void DDSURFACEDESC;
78 typedef void DDCAPS;
79 typedef DWORD RGBQUAD;
80 typedef LONGLONG REFERENCE_TIME;
81 typedef struct __WIDL_amvideo_generated_name_00000002 {
82 DWORD biSize;
83 LONG biWidth;
84 LONG biHeight;
85 WORD biPlanes;
86 WORD biBitCount;
87 DWORD biCompression;
88 DWORD biSizeImage;
89 LONG biXPelsPerMeter;
90 LONG biYPelsPerMeter;
91 DWORD biClrUsed;
92 DWORD biClrImportant;
93 } BITMAPINFOHEADER;
94 typedef struct __WIDL_amvideo_generated_name_00000002 *PBITMAPINFOHEADER;
95 typedef struct __WIDL_amvideo_generated_name_00000002 *LPBITMAPINFOHEADER;
96 #endif
97 #include <ddraw.h>
98 #define AMDDS_NONE 0x00
99 #define AMDDS_DCIPS 0x01
100 #define AMDDS_PS 0x02
101 #define AMDDS_RGBOVR 0x04
102 #define AMDDS_YUVOVR 0x08
103 #define AMDDS_RGBOFF 0x10
104 #define AMDDS_YUVOFF 0x20
105 #define AMDDS_RGBFLP 0x40
106 #define AMDDS_YUVFLP 0x80
107 #define AMDDS_ALL 0xFF
108 #define AMDDS_DEFAULT AMDDS_ALL
109 #define AMDDS_YUV (AMDDS_YUVOFF | AMDDS_YUVOVR | AMDDS_YUVFLP)
110 #define AMDDS_RGB (AMDDS_RGBOFF | AMDDS_RGBOVR | AMDDS_RGBFLP)
111 #define AMDSS_PRIMARY (AMDDS_DCIPS | AMDDS_PS)
112 /*****************************************************************************
113 * IDirectDrawVideo interface
114 */
115 #ifndef __IDirectDrawVideo_INTERFACE_DEFINED__
116 #define __IDirectDrawVideo_INTERFACE_DEFINED__
117
118 #if defined(__cplusplus) && !defined(CINTERFACE)
119 interface IDirectDrawVideo : public IUnknown
120 {
121 virtual HRESULT STDMETHODCALLTYPE GetSwitches(
122 DWORD *pSwitches) = 0;
123
124 virtual HRESULT STDMETHODCALLTYPE SetSwitches(
125 DWORD Switches) = 0;
126
127 virtual HRESULT STDMETHODCALLTYPE GetCaps(
128 DDCAPS *pCaps) = 0;
129
130 virtual HRESULT STDMETHODCALLTYPE GetEmulatedCaps(
131 DDCAPS *pCaps) = 0;
132
133 virtual HRESULT STDMETHODCALLTYPE GetSurfaceDesc(
134 DDSURFACEDESC *pSurfaceDesc) = 0;
135
136 virtual HRESULT STDMETHODCALLTYPE GetFourCCCodes(
137 DWORD *pCount,
138 DWORD *pCodes) = 0;
139
140 virtual HRESULT STDMETHODCALLTYPE SetDirectDraw(
141 IDirectDraw *ddraw) = 0;
142
143 virtual HRESULT STDMETHODCALLTYPE GetDirectDraw(
144 IDirectDraw **ddraw) = 0;
145
146 virtual HRESULT STDMETHODCALLTYPE GetSurfaceType(
147 DWORD *pSurfaceType) = 0;
148
149 virtual HRESULT STDMETHODCALLTYPE SetDefault(
150 ) = 0;
151
152 virtual HRESULT STDMETHODCALLTYPE UseScanLine(
153 LONG UseScanLine) = 0;
154
155 virtual HRESULT STDMETHODCALLTYPE CanUseScanLine(
156 LONG *UseScanLine) = 0;
157
158 virtual HRESULT STDMETHODCALLTYPE UseOverlayStretch(
159 LONG UseOverlayStretch) = 0;
160
161 virtual HRESULT STDMETHODCALLTYPE CanUseOverlayStretch(
162 LONG *UseOverlayStretch) = 0;
163
164 virtual HRESULT STDMETHODCALLTYPE UseWhenFullScreen(
165 LONG UseWhenFullScreen) = 0;
166
167 virtual HRESULT STDMETHODCALLTYPE WillUseFullScreen(
168 LONG *UseWhenFullScreen) = 0;
169
170 };
171 #else
172 typedef struct IDirectDrawVideoVtbl {
173 BEGIN_INTERFACE
174
175 /*** IUnknown methods ***/
176 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
177 IDirectDrawVideo *This,
178 REFIID riid,
179 void **ppvObject);
180
181 ULONG (STDMETHODCALLTYPE *AddRef)(
182 IDirectDrawVideo *This);
183
184 ULONG (STDMETHODCALLTYPE *Release)(
185 IDirectDrawVideo *This);
186
187 /*** IDirectDrawVideo methods ***/
188 HRESULT (STDMETHODCALLTYPE *GetSwitches)(
189 IDirectDrawVideo *This,
190 DWORD *pSwitches);
191
192 HRESULT (STDMETHODCALLTYPE *SetSwitches)(
193 IDirectDrawVideo *This,
194 DWORD Switches);
195
196 HRESULT (STDMETHODCALLTYPE *GetCaps)(
197 IDirectDrawVideo *This,
198 DDCAPS *pCaps);
199
200 HRESULT (STDMETHODCALLTYPE *GetEmulatedCaps)(
201 IDirectDrawVideo *This,
202 DDCAPS *pCaps);
203
204 HRESULT (STDMETHODCALLTYPE *GetSurfaceDesc)(
205 IDirectDrawVideo *This,
206 DDSURFACEDESC *pSurfaceDesc);
207
208 HRESULT (STDMETHODCALLTYPE *GetFourCCCodes)(
209 IDirectDrawVideo *This,
210 DWORD *pCount,
211 DWORD *pCodes);
212
213 HRESULT (STDMETHODCALLTYPE *SetDirectDraw)(
214 IDirectDrawVideo *This,
215 IDirectDraw *ddraw);
216
217 HRESULT (STDMETHODCALLTYPE *GetDirectDraw)(
218 IDirectDrawVideo *This,
219 IDirectDraw **ddraw);
220
221 HRESULT (STDMETHODCALLTYPE *GetSurfaceType)(
222 IDirectDrawVideo *This,
223 DWORD *pSurfaceType);
224
225 HRESULT (STDMETHODCALLTYPE *SetDefault)(
226 IDirectDrawVideo *This);
227
228 HRESULT (STDMETHODCALLTYPE *UseScanLine)(
229 IDirectDrawVideo *This,
230 LONG UseScanLine);
231
232 HRESULT (STDMETHODCALLTYPE *CanUseScanLine)(
233 IDirectDrawVideo *This,
234 LONG *UseScanLine);
235
236 HRESULT (STDMETHODCALLTYPE *UseOverlayStretch)(
237 IDirectDrawVideo *This,
238 LONG UseOverlayStretch);
239
240 HRESULT (STDMETHODCALLTYPE *CanUseOverlayStretch)(
241 IDirectDrawVideo *This,
242 LONG *UseOverlayStretch);
243
244 HRESULT (STDMETHODCALLTYPE *UseWhenFullScreen)(
245 IDirectDrawVideo *This,
246 LONG UseWhenFullScreen);
247
248 HRESULT (STDMETHODCALLTYPE *WillUseFullScreen)(
249 IDirectDrawVideo *This,
250 LONG *UseWhenFullScreen);
251
252 END_INTERFACE
253 } IDirectDrawVideoVtbl;
254
255 interface IDirectDrawVideo {
256 CONST_VTBL IDirectDrawVideoVtbl* lpVtbl;
257 };
258
259 #ifdef COBJMACROS
260 #ifndef WIDL_C_INLINE_WRAPPERS
261 /*** IUnknown methods ***/
262 #define IDirectDrawVideo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
263 #define IDirectDrawVideo_AddRef(This) (This)->lpVtbl->AddRef(This)
264 #define IDirectDrawVideo_Release(This) (This)->lpVtbl->Release(This)
265 /*** IDirectDrawVideo methods ***/
266 #define IDirectDrawVideo_GetSwitches(This,pSwitches) (This)->lpVtbl->GetSwitches(This,pSwitches)
267 #define IDirectDrawVideo_SetSwitches(This,Switches) (This)->lpVtbl->SetSwitches(This,Switches)
268 #define IDirectDrawVideo_GetCaps(This,pCaps) (This)->lpVtbl->GetCaps(This,pCaps)
269 #define IDirectDrawVideo_GetEmulatedCaps(This,pCaps) (This)->lpVtbl->GetEmulatedCaps(This,pCaps)
270 #define IDirectDrawVideo_GetSurfaceDesc(This,pSurfaceDesc) (This)->lpVtbl->GetSurfaceDesc(This,pSurfaceDesc)
271 #define IDirectDrawVideo_GetFourCCCodes(This,pCount,pCodes) (This)->lpVtbl->GetFourCCCodes(This,pCount,pCodes)
272 #define IDirectDrawVideo_SetDirectDraw(This,ddraw) (This)->lpVtbl->SetDirectDraw(This,ddraw)
273 #define IDirectDrawVideo_GetDirectDraw(This,ddraw) (This)->lpVtbl->GetDirectDraw(This,ddraw)
274 #define IDirectDrawVideo_GetSurfaceType(This,pSurfaceType) (This)->lpVtbl->GetSurfaceType(This,pSurfaceType)
275 #define IDirectDrawVideo_SetDefault(This) (This)->lpVtbl->SetDefault(This)
276 #define IDirectDrawVideo_UseScanLine(This,UseScanLine) (This)->lpVtbl->UseScanLine(This,UseScanLine)
277 #define IDirectDrawVideo_CanUseScanLine(This,UseScanLine) (This)->lpVtbl->CanUseScanLine(This,UseScanLine)
278 #define IDirectDrawVideo_UseOverlayStretch(This,UseOverlayStretch) (This)->lpVtbl->UseOverlayStretch(This,UseOverlayStretch)
279 #define IDirectDrawVideo_CanUseOverlayStretch(This,UseOverlayStretch) (This)->lpVtbl->CanUseOverlayStretch(This,UseOverlayStretch)
280 #define IDirectDrawVideo_UseWhenFullScreen(This,UseWhenFullScreen) (This)->lpVtbl->UseWhenFullScreen(This,UseWhenFullScreen)
281 #define IDirectDrawVideo_WillUseFullScreen(This,UseWhenFullScreen) (This)->lpVtbl->WillUseFullScreen(This,UseWhenFullScreen)
282 #else
283 /*** IUnknown methods ***/
284 static FORCEINLINE HRESULT IDirectDrawVideo_QueryInterface(IDirectDrawVideo* This,REFIID riid,void **ppvObject) {
285 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
286 }
287 static FORCEINLINE ULONG IDirectDrawVideo_AddRef(IDirectDrawVideo* This) {
288 return This->lpVtbl->AddRef(This);
289 }
290 static FORCEINLINE ULONG IDirectDrawVideo_Release(IDirectDrawVideo* This) {
291 return This->lpVtbl->Release(This);
292 }
293 /*** IDirectDrawVideo methods ***/
294 static FORCEINLINE HRESULT IDirectDrawVideo_GetSwitches(IDirectDrawVideo* This,DWORD *pSwitches) {
295 return This->lpVtbl->GetSwitches(This,pSwitches);
296 }
297 static FORCEINLINE HRESULT IDirectDrawVideo_SetSwitches(IDirectDrawVideo* This,DWORD Switches) {
298 return This->lpVtbl->SetSwitches(This,Switches);
299 }
300 static FORCEINLINE HRESULT IDirectDrawVideo_GetCaps(IDirectDrawVideo* This,DDCAPS *pCaps) {
301 return This->lpVtbl->GetCaps(This,pCaps);
302 }
303 static FORCEINLINE HRESULT IDirectDrawVideo_GetEmulatedCaps(IDirectDrawVideo* This,DDCAPS *pCaps) {
304 return This->lpVtbl->GetEmulatedCaps(This,pCaps);
305 }
306 static FORCEINLINE HRESULT IDirectDrawVideo_GetSurfaceDesc(IDirectDrawVideo* This,DDSURFACEDESC *pSurfaceDesc) {
307 return This->lpVtbl->GetSurfaceDesc(This,pSurfaceDesc);
308 }
309 static FORCEINLINE HRESULT IDirectDrawVideo_GetFourCCCodes(IDirectDrawVideo* This,DWORD *pCount,DWORD *pCodes) {
310 return This->lpVtbl->GetFourCCCodes(This,pCount,pCodes);
311 }
312 static FORCEINLINE HRESULT IDirectDrawVideo_SetDirectDraw(IDirectDrawVideo* This,IDirectDraw *ddraw) {
313 return This->lpVtbl->SetDirectDraw(This,ddraw);
314 }
315 static FORCEINLINE HRESULT IDirectDrawVideo_GetDirectDraw(IDirectDrawVideo* This,IDirectDraw **ddraw) {
316 return This->lpVtbl->GetDirectDraw(This,ddraw);
317 }
318 static FORCEINLINE HRESULT IDirectDrawVideo_GetSurfaceType(IDirectDrawVideo* This,DWORD *pSurfaceType) {
319 return This->lpVtbl->GetSurfaceType(This,pSurfaceType);
320 }
321 static FORCEINLINE HRESULT IDirectDrawVideo_SetDefault(IDirectDrawVideo* This) {
322 return This->lpVtbl->SetDefault(This);
323 }
324 static FORCEINLINE HRESULT IDirectDrawVideo_UseScanLine(IDirectDrawVideo* This,LONG UseScanLine) {
325 return This->lpVtbl->UseScanLine(This,UseScanLine);
326 }
327 static FORCEINLINE HRESULT IDirectDrawVideo_CanUseScanLine(IDirectDrawVideo* This,LONG *UseScanLine) {
328 return This->lpVtbl->CanUseScanLine(This,UseScanLine);
329 }
330 static FORCEINLINE HRESULT IDirectDrawVideo_UseOverlayStretch(IDirectDrawVideo* This,LONG UseOverlayStretch) {
331 return This->lpVtbl->UseOverlayStretch(This,UseOverlayStretch);
332 }
333 static FORCEINLINE HRESULT IDirectDrawVideo_CanUseOverlayStretch(IDirectDrawVideo* This,LONG *UseOverlayStretch) {
334 return This->lpVtbl->CanUseOverlayStretch(This,UseOverlayStretch);
335 }
336 static FORCEINLINE HRESULT IDirectDrawVideo_UseWhenFullScreen(IDirectDrawVideo* This,LONG UseWhenFullScreen) {
337 return This->lpVtbl->UseWhenFullScreen(This,UseWhenFullScreen);
338 }
339 static FORCEINLINE HRESULT IDirectDrawVideo_WillUseFullScreen(IDirectDrawVideo* This,LONG *UseWhenFullScreen) {
340 return This->lpVtbl->WillUseFullScreen(This,UseWhenFullScreen);
341 }
342 #endif
343 #endif
344
345 #endif
346
347
348 #endif /* __IDirectDrawVideo_INTERFACE_DEFINED__ */
349
350 /*****************************************************************************
351 * IQualProp interface
352 */
353 #ifndef __IQualProp_INTERFACE_DEFINED__
354 #define __IQualProp_INTERFACE_DEFINED__
355
356 #if defined(__cplusplus) && !defined(CINTERFACE)
357 interface IQualProp : public IUnknown
358 {
359 virtual HRESULT STDMETHODCALLTYPE get_FramesDroppedInRenderer(
360 int *pcFrames) = 0;
361
362 virtual HRESULT STDMETHODCALLTYPE get_FramesDrawn(
363 int *pcFramesDrawn) = 0;
364
365 virtual HRESULT STDMETHODCALLTYPE get_AvgFrameRate(
366 int *piAvgFrameRate) = 0;
367
368 virtual HRESULT STDMETHODCALLTYPE get_Jitter(
369 int *iJitter) = 0;
370
371 virtual HRESULT STDMETHODCALLTYPE get_AvgSyncOffset(
372 int *piAvg) = 0;
373
374 virtual HRESULT STDMETHODCALLTYPE get_DevSyncOffset(
375 int *piDev) = 0;
376
377 };
378 #else
379 typedef struct IQualPropVtbl {
380 BEGIN_INTERFACE
381
382 /*** IUnknown methods ***/
383 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
384 IQualProp *This,
385 REFIID riid,
386 void **ppvObject);
387
388 ULONG (STDMETHODCALLTYPE *AddRef)(
389 IQualProp *This);
390
391 ULONG (STDMETHODCALLTYPE *Release)(
392 IQualProp *This);
393
394 /*** IQualProp methods ***/
395 HRESULT (STDMETHODCALLTYPE *get_FramesDroppedInRenderer)(
396 IQualProp *This,
397 int *pcFrames);
398
399 HRESULT (STDMETHODCALLTYPE *get_FramesDrawn)(
400 IQualProp *This,
401 int *pcFramesDrawn);
402
403 HRESULT (STDMETHODCALLTYPE *get_AvgFrameRate)(
404 IQualProp *This,
405 int *piAvgFrameRate);
406
407 HRESULT (STDMETHODCALLTYPE *get_Jitter)(
408 IQualProp *This,
409 int *iJitter);
410
411 HRESULT (STDMETHODCALLTYPE *get_AvgSyncOffset)(
412 IQualProp *This,
413 int *piAvg);
414
415 HRESULT (STDMETHODCALLTYPE *get_DevSyncOffset)(
416 IQualProp *This,
417 int *piDev);
418
419 END_INTERFACE
420 } IQualPropVtbl;
421
422 interface IQualProp {
423 CONST_VTBL IQualPropVtbl* lpVtbl;
424 };
425
426 #ifdef COBJMACROS
427 #ifndef WIDL_C_INLINE_WRAPPERS
428 /*** IUnknown methods ***/
429 #define IQualProp_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
430 #define IQualProp_AddRef(This) (This)->lpVtbl->AddRef(This)
431 #define IQualProp_Release(This) (This)->lpVtbl->Release(This)
432 /*** IQualProp methods ***/
433 #define IQualProp_get_FramesDroppedInRenderer(This,pcFrames) (This)->lpVtbl->get_FramesDroppedInRenderer(This,pcFrames)
434 #define IQualProp_get_FramesDrawn(This,pcFramesDrawn) (This)->lpVtbl->get_FramesDrawn(This,pcFramesDrawn)
435 #define IQualProp_get_AvgFrameRate(This,piAvgFrameRate) (This)->lpVtbl->get_AvgFrameRate(This,piAvgFrameRate)
436 #define IQualProp_get_Jitter(This,iJitter) (This)->lpVtbl->get_Jitter(This,iJitter)
437 #define IQualProp_get_AvgSyncOffset(This,piAvg) (This)->lpVtbl->get_AvgSyncOffset(This,piAvg)
438 #define IQualProp_get_DevSyncOffset(This,piDev) (This)->lpVtbl->get_DevSyncOffset(This,piDev)
439 #else
440 /*** IUnknown methods ***/
IQualProp_QueryInterface(IQualProp * This,REFIID riid,void ** ppvObject)441 static FORCEINLINE HRESULT IQualProp_QueryInterface(IQualProp* This,REFIID riid,void **ppvObject) {
442 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
443 }
IQualProp_AddRef(IQualProp * This)444 static FORCEINLINE ULONG IQualProp_AddRef(IQualProp* This) {
445 return This->lpVtbl->AddRef(This);
446 }
IQualProp_Release(IQualProp * This)447 static FORCEINLINE ULONG IQualProp_Release(IQualProp* This) {
448 return This->lpVtbl->Release(This);
449 }
450 /*** IQualProp methods ***/
IQualProp_get_FramesDroppedInRenderer(IQualProp * This,int * pcFrames)451 static FORCEINLINE HRESULT IQualProp_get_FramesDroppedInRenderer(IQualProp* This,int *pcFrames) {
452 return This->lpVtbl->get_FramesDroppedInRenderer(This,pcFrames);
453 }
IQualProp_get_FramesDrawn(IQualProp * This,int * pcFramesDrawn)454 static FORCEINLINE HRESULT IQualProp_get_FramesDrawn(IQualProp* This,int *pcFramesDrawn) {
455 return This->lpVtbl->get_FramesDrawn(This,pcFramesDrawn);
456 }
IQualProp_get_AvgFrameRate(IQualProp * This,int * piAvgFrameRate)457 static FORCEINLINE HRESULT IQualProp_get_AvgFrameRate(IQualProp* This,int *piAvgFrameRate) {
458 return This->lpVtbl->get_AvgFrameRate(This,piAvgFrameRate);
459 }
IQualProp_get_Jitter(IQualProp * This,int * iJitter)460 static FORCEINLINE HRESULT IQualProp_get_Jitter(IQualProp* This,int *iJitter) {
461 return This->lpVtbl->get_Jitter(This,iJitter);
462 }
IQualProp_get_AvgSyncOffset(IQualProp * This,int * piAvg)463 static FORCEINLINE HRESULT IQualProp_get_AvgSyncOffset(IQualProp* This,int *piAvg) {
464 return This->lpVtbl->get_AvgSyncOffset(This,piAvg);
465 }
IQualProp_get_DevSyncOffset(IQualProp * This,int * piDev)466 static FORCEINLINE HRESULT IQualProp_get_DevSyncOffset(IQualProp* This,int *piDev) {
467 return This->lpVtbl->get_DevSyncOffset(This,piDev);
468 }
469 #endif
470 #endif
471
472 #endif
473
474
475 #endif /* __IQualProp_INTERFACE_DEFINED__ */
476
477 /*****************************************************************************
478 * IFullScreenVideo interface
479 */
480 #ifndef __IFullScreenVideo_INTERFACE_DEFINED__
481 #define __IFullScreenVideo_INTERFACE_DEFINED__
482
483 #if defined(__cplusplus) && !defined(CINTERFACE)
484 interface IFullScreenVideo : public IUnknown
485 {
486 virtual HRESULT STDMETHODCALLTYPE CountModes(
487 LONG *pModes) = 0;
488
489 virtual HRESULT STDMETHODCALLTYPE GetModeInfo(
490 LONG Mode,
491 LONG *pWidth,
492 LONG *pHeight,
493 LONG *pDepth) = 0;
494
495 virtual HRESULT STDMETHODCALLTYPE GetCurrentMode(
496 LONG *pMode) = 0;
497
498 virtual HRESULT STDMETHODCALLTYPE IsModeAvailable(
499 LONG Mode) = 0;
500
501 virtual HRESULT STDMETHODCALLTYPE IsModeEnabled(
502 LONG Mode) = 0;
503
504 virtual HRESULT STDMETHODCALLTYPE SetEnabled(
505 LONG Mode,
506 LONG bEnabled) = 0;
507
508 virtual HRESULT STDMETHODCALLTYPE GetClipFactor(
509 LONG *pClipFactor) = 0;
510
511 virtual HRESULT STDMETHODCALLTYPE SetClipFactor(
512 LONG ClipFactor) = 0;
513
514 virtual HRESULT STDMETHODCALLTYPE SetMessageDrain(
515 HWND hwnd) = 0;
516
517 virtual HRESULT STDMETHODCALLTYPE GetMessageDrain(
518 HWND *hwnd) = 0;
519
520 virtual HRESULT STDMETHODCALLTYPE SetMonitor(
521 LONG Monitor) = 0;
522
523 virtual HRESULT STDMETHODCALLTYPE GetMonitor(
524 LONG *Monitor) = 0;
525
526 virtual HRESULT STDMETHODCALLTYPE HideOnDeactivate(
527 LONG Hide) = 0;
528
529 virtual HRESULT STDMETHODCALLTYPE IsHideOnDeactivate(
530 ) = 0;
531
532 virtual HRESULT STDMETHODCALLTYPE SetCaption(
533 BSTR strCaption) = 0;
534
535 virtual HRESULT STDMETHODCALLTYPE GetCaption(
536 BSTR *pstrCaption) = 0;
537
538 virtual HRESULT STDMETHODCALLTYPE SetDefault(
539 ) = 0;
540
541 };
542 #else
543 typedef struct IFullScreenVideoVtbl {
544 BEGIN_INTERFACE
545
546 /*** IUnknown methods ***/
547 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
548 IFullScreenVideo *This,
549 REFIID riid,
550 void **ppvObject);
551
552 ULONG (STDMETHODCALLTYPE *AddRef)(
553 IFullScreenVideo *This);
554
555 ULONG (STDMETHODCALLTYPE *Release)(
556 IFullScreenVideo *This);
557
558 /*** IFullScreenVideo methods ***/
559 HRESULT (STDMETHODCALLTYPE *CountModes)(
560 IFullScreenVideo *This,
561 LONG *pModes);
562
563 HRESULT (STDMETHODCALLTYPE *GetModeInfo)(
564 IFullScreenVideo *This,
565 LONG Mode,
566 LONG *pWidth,
567 LONG *pHeight,
568 LONG *pDepth);
569
570 HRESULT (STDMETHODCALLTYPE *GetCurrentMode)(
571 IFullScreenVideo *This,
572 LONG *pMode);
573
574 HRESULT (STDMETHODCALLTYPE *IsModeAvailable)(
575 IFullScreenVideo *This,
576 LONG Mode);
577
578 HRESULT (STDMETHODCALLTYPE *IsModeEnabled)(
579 IFullScreenVideo *This,
580 LONG Mode);
581
582 HRESULT (STDMETHODCALLTYPE *SetEnabled)(
583 IFullScreenVideo *This,
584 LONG Mode,
585 LONG bEnabled);
586
587 HRESULT (STDMETHODCALLTYPE *GetClipFactor)(
588 IFullScreenVideo *This,
589 LONG *pClipFactor);
590
591 HRESULT (STDMETHODCALLTYPE *SetClipFactor)(
592 IFullScreenVideo *This,
593 LONG ClipFactor);
594
595 HRESULT (STDMETHODCALLTYPE *SetMessageDrain)(
596 IFullScreenVideo *This,
597 HWND hwnd);
598
599 HRESULT (STDMETHODCALLTYPE *GetMessageDrain)(
600 IFullScreenVideo *This,
601 HWND *hwnd);
602
603 HRESULT (STDMETHODCALLTYPE *SetMonitor)(
604 IFullScreenVideo *This,
605 LONG Monitor);
606
607 HRESULT (STDMETHODCALLTYPE *GetMonitor)(
608 IFullScreenVideo *This,
609 LONG *Monitor);
610
611 HRESULT (STDMETHODCALLTYPE *HideOnDeactivate)(
612 IFullScreenVideo *This,
613 LONG Hide);
614
615 HRESULT (STDMETHODCALLTYPE *IsHideOnDeactivate)(
616 IFullScreenVideo *This);
617
618 HRESULT (STDMETHODCALLTYPE *SetCaption)(
619 IFullScreenVideo *This,
620 BSTR strCaption);
621
622 HRESULT (STDMETHODCALLTYPE *GetCaption)(
623 IFullScreenVideo *This,
624 BSTR *pstrCaption);
625
626 HRESULT (STDMETHODCALLTYPE *SetDefault)(
627 IFullScreenVideo *This);
628
629 END_INTERFACE
630 } IFullScreenVideoVtbl;
631
632 interface IFullScreenVideo {
633 CONST_VTBL IFullScreenVideoVtbl* lpVtbl;
634 };
635
636 #ifdef COBJMACROS
637 #ifndef WIDL_C_INLINE_WRAPPERS
638 /*** IUnknown methods ***/
639 #define IFullScreenVideo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
640 #define IFullScreenVideo_AddRef(This) (This)->lpVtbl->AddRef(This)
641 #define IFullScreenVideo_Release(This) (This)->lpVtbl->Release(This)
642 /*** IFullScreenVideo methods ***/
643 #define IFullScreenVideo_CountModes(This,pModes) (This)->lpVtbl->CountModes(This,pModes)
644 #define IFullScreenVideo_GetModeInfo(This,Mode,pWidth,pHeight,pDepth) (This)->lpVtbl->GetModeInfo(This,Mode,pWidth,pHeight,pDepth)
645 #define IFullScreenVideo_GetCurrentMode(This,pMode) (This)->lpVtbl->GetCurrentMode(This,pMode)
646 #define IFullScreenVideo_IsModeAvailable(This,Mode) (This)->lpVtbl->IsModeAvailable(This,Mode)
647 #define IFullScreenVideo_IsModeEnabled(This,Mode) (This)->lpVtbl->IsModeEnabled(This,Mode)
648 #define IFullScreenVideo_SetEnabled(This,Mode,bEnabled) (This)->lpVtbl->SetEnabled(This,Mode,bEnabled)
649 #define IFullScreenVideo_GetClipFactor(This,pClipFactor) (This)->lpVtbl->GetClipFactor(This,pClipFactor)
650 #define IFullScreenVideo_SetClipFactor(This,ClipFactor) (This)->lpVtbl->SetClipFactor(This,ClipFactor)
651 #define IFullScreenVideo_SetMessageDrain(This,hwnd) (This)->lpVtbl->SetMessageDrain(This,hwnd)
652 #define IFullScreenVideo_GetMessageDrain(This,hwnd) (This)->lpVtbl->GetMessageDrain(This,hwnd)
653 #define IFullScreenVideo_SetMonitor(This,Monitor) (This)->lpVtbl->SetMonitor(This,Monitor)
654 #define IFullScreenVideo_GetMonitor(This,Monitor) (This)->lpVtbl->GetMonitor(This,Monitor)
655 #define IFullScreenVideo_HideOnDeactivate(This,Hide) (This)->lpVtbl->HideOnDeactivate(This,Hide)
656 #define IFullScreenVideo_IsHideOnDeactivate(This) (This)->lpVtbl->IsHideOnDeactivate(This)
657 #define IFullScreenVideo_SetCaption(This,strCaption) (This)->lpVtbl->SetCaption(This,strCaption)
658 #define IFullScreenVideo_GetCaption(This,pstrCaption) (This)->lpVtbl->GetCaption(This,pstrCaption)
659 #define IFullScreenVideo_SetDefault(This) (This)->lpVtbl->SetDefault(This)
660 #else
661 /*** IUnknown methods ***/
IFullScreenVideo_QueryInterface(IFullScreenVideo * This,REFIID riid,void ** ppvObject)662 static FORCEINLINE HRESULT IFullScreenVideo_QueryInterface(IFullScreenVideo* This,REFIID riid,void **ppvObject) {
663 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
664 }
IFullScreenVideo_AddRef(IFullScreenVideo * This)665 static FORCEINLINE ULONG IFullScreenVideo_AddRef(IFullScreenVideo* This) {
666 return This->lpVtbl->AddRef(This);
667 }
IFullScreenVideo_Release(IFullScreenVideo * This)668 static FORCEINLINE ULONG IFullScreenVideo_Release(IFullScreenVideo* This) {
669 return This->lpVtbl->Release(This);
670 }
671 /*** IFullScreenVideo methods ***/
IFullScreenVideo_CountModes(IFullScreenVideo * This,LONG * pModes)672 static FORCEINLINE HRESULT IFullScreenVideo_CountModes(IFullScreenVideo* This,LONG *pModes) {
673 return This->lpVtbl->CountModes(This,pModes);
674 }
IFullScreenVideo_GetModeInfo(IFullScreenVideo * This,LONG Mode,LONG * pWidth,LONG * pHeight,LONG * pDepth)675 static FORCEINLINE HRESULT IFullScreenVideo_GetModeInfo(IFullScreenVideo* This,LONG Mode,LONG *pWidth,LONG *pHeight,LONG *pDepth) {
676 return This->lpVtbl->GetModeInfo(This,Mode,pWidth,pHeight,pDepth);
677 }
IFullScreenVideo_GetCurrentMode(IFullScreenVideo * This,LONG * pMode)678 static FORCEINLINE HRESULT IFullScreenVideo_GetCurrentMode(IFullScreenVideo* This,LONG *pMode) {
679 return This->lpVtbl->GetCurrentMode(This,pMode);
680 }
IFullScreenVideo_IsModeAvailable(IFullScreenVideo * This,LONG Mode)681 static FORCEINLINE HRESULT IFullScreenVideo_IsModeAvailable(IFullScreenVideo* This,LONG Mode) {
682 return This->lpVtbl->IsModeAvailable(This,Mode);
683 }
IFullScreenVideo_IsModeEnabled(IFullScreenVideo * This,LONG Mode)684 static FORCEINLINE HRESULT IFullScreenVideo_IsModeEnabled(IFullScreenVideo* This,LONG Mode) {
685 return This->lpVtbl->IsModeEnabled(This,Mode);
686 }
IFullScreenVideo_SetEnabled(IFullScreenVideo * This,LONG Mode,LONG bEnabled)687 static FORCEINLINE HRESULT IFullScreenVideo_SetEnabled(IFullScreenVideo* This,LONG Mode,LONG bEnabled) {
688 return This->lpVtbl->SetEnabled(This,Mode,bEnabled);
689 }
IFullScreenVideo_GetClipFactor(IFullScreenVideo * This,LONG * pClipFactor)690 static FORCEINLINE HRESULT IFullScreenVideo_GetClipFactor(IFullScreenVideo* This,LONG *pClipFactor) {
691 return This->lpVtbl->GetClipFactor(This,pClipFactor);
692 }
IFullScreenVideo_SetClipFactor(IFullScreenVideo * This,LONG ClipFactor)693 static FORCEINLINE HRESULT IFullScreenVideo_SetClipFactor(IFullScreenVideo* This,LONG ClipFactor) {
694 return This->lpVtbl->SetClipFactor(This,ClipFactor);
695 }
IFullScreenVideo_SetMessageDrain(IFullScreenVideo * This,HWND hwnd)696 static FORCEINLINE HRESULT IFullScreenVideo_SetMessageDrain(IFullScreenVideo* This,HWND hwnd) {
697 return This->lpVtbl->SetMessageDrain(This,hwnd);
698 }
IFullScreenVideo_GetMessageDrain(IFullScreenVideo * This,HWND * hwnd)699 static FORCEINLINE HRESULT IFullScreenVideo_GetMessageDrain(IFullScreenVideo* This,HWND *hwnd) {
700 return This->lpVtbl->GetMessageDrain(This,hwnd);
701 }
IFullScreenVideo_SetMonitor(IFullScreenVideo * This,LONG Monitor)702 static FORCEINLINE HRESULT IFullScreenVideo_SetMonitor(IFullScreenVideo* This,LONG Monitor) {
703 return This->lpVtbl->SetMonitor(This,Monitor);
704 }
IFullScreenVideo_GetMonitor(IFullScreenVideo * This,LONG * Monitor)705 static FORCEINLINE HRESULT IFullScreenVideo_GetMonitor(IFullScreenVideo* This,LONG *Monitor) {
706 return This->lpVtbl->GetMonitor(This,Monitor);
707 }
IFullScreenVideo_HideOnDeactivate(IFullScreenVideo * This,LONG Hide)708 static FORCEINLINE HRESULT IFullScreenVideo_HideOnDeactivate(IFullScreenVideo* This,LONG Hide) {
709 return This->lpVtbl->HideOnDeactivate(This,Hide);
710 }
IFullScreenVideo_IsHideOnDeactivate(IFullScreenVideo * This)711 static FORCEINLINE HRESULT IFullScreenVideo_IsHideOnDeactivate(IFullScreenVideo* This) {
712 return This->lpVtbl->IsHideOnDeactivate(This);
713 }
IFullScreenVideo_SetCaption(IFullScreenVideo * This,BSTR strCaption)714 static FORCEINLINE HRESULT IFullScreenVideo_SetCaption(IFullScreenVideo* This,BSTR strCaption) {
715 return This->lpVtbl->SetCaption(This,strCaption);
716 }
IFullScreenVideo_GetCaption(IFullScreenVideo * This,BSTR * pstrCaption)717 static FORCEINLINE HRESULT IFullScreenVideo_GetCaption(IFullScreenVideo* This,BSTR *pstrCaption) {
718 return This->lpVtbl->GetCaption(This,pstrCaption);
719 }
IFullScreenVideo_SetDefault(IFullScreenVideo * This)720 static FORCEINLINE HRESULT IFullScreenVideo_SetDefault(IFullScreenVideo* This) {
721 return This->lpVtbl->SetDefault(This);
722 }
723 #endif
724 #endif
725
726 #endif
727
728
729 #endif /* __IFullScreenVideo_INTERFACE_DEFINED__ */
730
731 /*****************************************************************************
732 * IFullScreenVideoEx interface
733 */
734 #ifndef __IFullScreenVideoEx_INTERFACE_DEFINED__
735 #define __IFullScreenVideoEx_INTERFACE_DEFINED__
736
737 #if defined(__cplusplus) && !defined(CINTERFACE)
738 interface IFullScreenVideoEx : public IFullScreenVideo
739 {
740 virtual HRESULT STDMETHODCALLTYPE SetAcceleratorTable(
741 HWND hwnd,
742 HACCEL hAccel) = 0;
743
744 virtual HRESULT STDMETHODCALLTYPE GetAcceleratorTable(
745 HWND *phwnd,
746 HACCEL *phAccel) = 0;
747
748 virtual HRESULT STDMETHODCALLTYPE KeepPixelAspectRatio(
749 LONG KeepAspect) = 0;
750
751 virtual HRESULT STDMETHODCALLTYPE IsKeepPixelAspectRatio(
752 LONG *pKeepAspect) = 0;
753
754 };
755 #else
756 typedef struct IFullScreenVideoExVtbl {
757 BEGIN_INTERFACE
758
759 /*** IUnknown methods ***/
760 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
761 IFullScreenVideoEx *This,
762 REFIID riid,
763 void **ppvObject);
764
765 ULONG (STDMETHODCALLTYPE *AddRef)(
766 IFullScreenVideoEx *This);
767
768 ULONG (STDMETHODCALLTYPE *Release)(
769 IFullScreenVideoEx *This);
770
771 /*** IFullScreenVideo methods ***/
772 HRESULT (STDMETHODCALLTYPE *CountModes)(
773 IFullScreenVideoEx *This,
774 LONG *pModes);
775
776 HRESULT (STDMETHODCALLTYPE *GetModeInfo)(
777 IFullScreenVideoEx *This,
778 LONG Mode,
779 LONG *pWidth,
780 LONG *pHeight,
781 LONG *pDepth);
782
783 HRESULT (STDMETHODCALLTYPE *GetCurrentMode)(
784 IFullScreenVideoEx *This,
785 LONG *pMode);
786
787 HRESULT (STDMETHODCALLTYPE *IsModeAvailable)(
788 IFullScreenVideoEx *This,
789 LONG Mode);
790
791 HRESULT (STDMETHODCALLTYPE *IsModeEnabled)(
792 IFullScreenVideoEx *This,
793 LONG Mode);
794
795 HRESULT (STDMETHODCALLTYPE *SetEnabled)(
796 IFullScreenVideoEx *This,
797 LONG Mode,
798 LONG bEnabled);
799
800 HRESULT (STDMETHODCALLTYPE *GetClipFactor)(
801 IFullScreenVideoEx *This,
802 LONG *pClipFactor);
803
804 HRESULT (STDMETHODCALLTYPE *SetClipFactor)(
805 IFullScreenVideoEx *This,
806 LONG ClipFactor);
807
808 HRESULT (STDMETHODCALLTYPE *SetMessageDrain)(
809 IFullScreenVideoEx *This,
810 HWND hwnd);
811
812 HRESULT (STDMETHODCALLTYPE *GetMessageDrain)(
813 IFullScreenVideoEx *This,
814 HWND *hwnd);
815
816 HRESULT (STDMETHODCALLTYPE *SetMonitor)(
817 IFullScreenVideoEx *This,
818 LONG Monitor);
819
820 HRESULT (STDMETHODCALLTYPE *GetMonitor)(
821 IFullScreenVideoEx *This,
822 LONG *Monitor);
823
824 HRESULT (STDMETHODCALLTYPE *HideOnDeactivate)(
825 IFullScreenVideoEx *This,
826 LONG Hide);
827
828 HRESULT (STDMETHODCALLTYPE *IsHideOnDeactivate)(
829 IFullScreenVideoEx *This);
830
831 HRESULT (STDMETHODCALLTYPE *SetCaption)(
832 IFullScreenVideoEx *This,
833 BSTR strCaption);
834
835 HRESULT (STDMETHODCALLTYPE *GetCaption)(
836 IFullScreenVideoEx *This,
837 BSTR *pstrCaption);
838
839 HRESULT (STDMETHODCALLTYPE *SetDefault)(
840 IFullScreenVideoEx *This);
841
842 /*** IFullScreenVideoEx methods ***/
843 HRESULT (STDMETHODCALLTYPE *SetAcceleratorTable)(
844 IFullScreenVideoEx *This,
845 HWND hwnd,
846 HACCEL hAccel);
847
848 HRESULT (STDMETHODCALLTYPE *GetAcceleratorTable)(
849 IFullScreenVideoEx *This,
850 HWND *phwnd,
851 HACCEL *phAccel);
852
853 HRESULT (STDMETHODCALLTYPE *KeepPixelAspectRatio)(
854 IFullScreenVideoEx *This,
855 LONG KeepAspect);
856
857 HRESULT (STDMETHODCALLTYPE *IsKeepPixelAspectRatio)(
858 IFullScreenVideoEx *This,
859 LONG *pKeepAspect);
860
861 END_INTERFACE
862 } IFullScreenVideoExVtbl;
863
864 interface IFullScreenVideoEx {
865 CONST_VTBL IFullScreenVideoExVtbl* lpVtbl;
866 };
867
868 #ifdef COBJMACROS
869 #ifndef WIDL_C_INLINE_WRAPPERS
870 /*** IUnknown methods ***/
871 #define IFullScreenVideoEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
872 #define IFullScreenVideoEx_AddRef(This) (This)->lpVtbl->AddRef(This)
873 #define IFullScreenVideoEx_Release(This) (This)->lpVtbl->Release(This)
874 /*** IFullScreenVideo methods ***/
875 #define IFullScreenVideoEx_CountModes(This,pModes) (This)->lpVtbl->CountModes(This,pModes)
876 #define IFullScreenVideoEx_GetModeInfo(This,Mode,pWidth,pHeight,pDepth) (This)->lpVtbl->GetModeInfo(This,Mode,pWidth,pHeight,pDepth)
877 #define IFullScreenVideoEx_GetCurrentMode(This,pMode) (This)->lpVtbl->GetCurrentMode(This,pMode)
878 #define IFullScreenVideoEx_IsModeAvailable(This,Mode) (This)->lpVtbl->IsModeAvailable(This,Mode)
879 #define IFullScreenVideoEx_IsModeEnabled(This,Mode) (This)->lpVtbl->IsModeEnabled(This,Mode)
880 #define IFullScreenVideoEx_SetEnabled(This,Mode,bEnabled) (This)->lpVtbl->SetEnabled(This,Mode,bEnabled)
881 #define IFullScreenVideoEx_GetClipFactor(This,pClipFactor) (This)->lpVtbl->GetClipFactor(This,pClipFactor)
882 #define IFullScreenVideoEx_SetClipFactor(This,ClipFactor) (This)->lpVtbl->SetClipFactor(This,ClipFactor)
883 #define IFullScreenVideoEx_SetMessageDrain(This,hwnd) (This)->lpVtbl->SetMessageDrain(This,hwnd)
884 #define IFullScreenVideoEx_GetMessageDrain(This,hwnd) (This)->lpVtbl->GetMessageDrain(This,hwnd)
885 #define IFullScreenVideoEx_SetMonitor(This,Monitor) (This)->lpVtbl->SetMonitor(This,Monitor)
886 #define IFullScreenVideoEx_GetMonitor(This,Monitor) (This)->lpVtbl->GetMonitor(This,Monitor)
887 #define IFullScreenVideoEx_HideOnDeactivate(This,Hide) (This)->lpVtbl->HideOnDeactivate(This,Hide)
888 #define IFullScreenVideoEx_IsHideOnDeactivate(This) (This)->lpVtbl->IsHideOnDeactivate(This)
889 #define IFullScreenVideoEx_SetCaption(This,strCaption) (This)->lpVtbl->SetCaption(This,strCaption)
890 #define IFullScreenVideoEx_GetCaption(This,pstrCaption) (This)->lpVtbl->GetCaption(This,pstrCaption)
891 #define IFullScreenVideoEx_SetDefault(This) (This)->lpVtbl->SetDefault(This)
892 /*** IFullScreenVideoEx methods ***/
893 #define IFullScreenVideoEx_SetAcceleratorTable(This,hwnd,hAccel) (This)->lpVtbl->SetAcceleratorTable(This,hwnd,hAccel)
894 #define IFullScreenVideoEx_GetAcceleratorTable(This,phwnd,phAccel) (This)->lpVtbl->GetAcceleratorTable(This,phwnd,phAccel)
895 #define IFullScreenVideoEx_KeepPixelAspectRatio(This,KeepAspect) (This)->lpVtbl->KeepPixelAspectRatio(This,KeepAspect)
896 #define IFullScreenVideoEx_IsKeepPixelAspectRatio(This,pKeepAspect) (This)->lpVtbl->IsKeepPixelAspectRatio(This,pKeepAspect)
897 #else
898 /*** IUnknown methods ***/
IFullScreenVideoEx_QueryInterface(IFullScreenVideoEx * This,REFIID riid,void ** ppvObject)899 static FORCEINLINE HRESULT IFullScreenVideoEx_QueryInterface(IFullScreenVideoEx* This,REFIID riid,void **ppvObject) {
900 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
901 }
IFullScreenVideoEx_AddRef(IFullScreenVideoEx * This)902 static FORCEINLINE ULONG IFullScreenVideoEx_AddRef(IFullScreenVideoEx* This) {
903 return This->lpVtbl->AddRef(This);
904 }
IFullScreenVideoEx_Release(IFullScreenVideoEx * This)905 static FORCEINLINE ULONG IFullScreenVideoEx_Release(IFullScreenVideoEx* This) {
906 return This->lpVtbl->Release(This);
907 }
908 /*** IFullScreenVideo methods ***/
IFullScreenVideoEx_CountModes(IFullScreenVideoEx * This,LONG * pModes)909 static FORCEINLINE HRESULT IFullScreenVideoEx_CountModes(IFullScreenVideoEx* This,LONG *pModes) {
910 return This->lpVtbl->CountModes(This,pModes);
911 }
IFullScreenVideoEx_GetModeInfo(IFullScreenVideoEx * This,LONG Mode,LONG * pWidth,LONG * pHeight,LONG * pDepth)912 static FORCEINLINE HRESULT IFullScreenVideoEx_GetModeInfo(IFullScreenVideoEx* This,LONG Mode,LONG *pWidth,LONG *pHeight,LONG *pDepth) {
913 return This->lpVtbl->GetModeInfo(This,Mode,pWidth,pHeight,pDepth);
914 }
IFullScreenVideoEx_GetCurrentMode(IFullScreenVideoEx * This,LONG * pMode)915 static FORCEINLINE HRESULT IFullScreenVideoEx_GetCurrentMode(IFullScreenVideoEx* This,LONG *pMode) {
916 return This->lpVtbl->GetCurrentMode(This,pMode);
917 }
IFullScreenVideoEx_IsModeAvailable(IFullScreenVideoEx * This,LONG Mode)918 static FORCEINLINE HRESULT IFullScreenVideoEx_IsModeAvailable(IFullScreenVideoEx* This,LONG Mode) {
919 return This->lpVtbl->IsModeAvailable(This,Mode);
920 }
IFullScreenVideoEx_IsModeEnabled(IFullScreenVideoEx * This,LONG Mode)921 static FORCEINLINE HRESULT IFullScreenVideoEx_IsModeEnabled(IFullScreenVideoEx* This,LONG Mode) {
922 return This->lpVtbl->IsModeEnabled(This,Mode);
923 }
IFullScreenVideoEx_SetEnabled(IFullScreenVideoEx * This,LONG Mode,LONG bEnabled)924 static FORCEINLINE HRESULT IFullScreenVideoEx_SetEnabled(IFullScreenVideoEx* This,LONG Mode,LONG bEnabled) {
925 return This->lpVtbl->SetEnabled(This,Mode,bEnabled);
926 }
IFullScreenVideoEx_GetClipFactor(IFullScreenVideoEx * This,LONG * pClipFactor)927 static FORCEINLINE HRESULT IFullScreenVideoEx_GetClipFactor(IFullScreenVideoEx* This,LONG *pClipFactor) {
928 return This->lpVtbl->GetClipFactor(This,pClipFactor);
929 }
IFullScreenVideoEx_SetClipFactor(IFullScreenVideoEx * This,LONG ClipFactor)930 static FORCEINLINE HRESULT IFullScreenVideoEx_SetClipFactor(IFullScreenVideoEx* This,LONG ClipFactor) {
931 return This->lpVtbl->SetClipFactor(This,ClipFactor);
932 }
IFullScreenVideoEx_SetMessageDrain(IFullScreenVideoEx * This,HWND hwnd)933 static FORCEINLINE HRESULT IFullScreenVideoEx_SetMessageDrain(IFullScreenVideoEx* This,HWND hwnd) {
934 return This->lpVtbl->SetMessageDrain(This,hwnd);
935 }
IFullScreenVideoEx_GetMessageDrain(IFullScreenVideoEx * This,HWND * hwnd)936 static FORCEINLINE HRESULT IFullScreenVideoEx_GetMessageDrain(IFullScreenVideoEx* This,HWND *hwnd) {
937 return This->lpVtbl->GetMessageDrain(This,hwnd);
938 }
IFullScreenVideoEx_SetMonitor(IFullScreenVideoEx * This,LONG Monitor)939 static FORCEINLINE HRESULT IFullScreenVideoEx_SetMonitor(IFullScreenVideoEx* This,LONG Monitor) {
940 return This->lpVtbl->SetMonitor(This,Monitor);
941 }
IFullScreenVideoEx_GetMonitor(IFullScreenVideoEx * This,LONG * Monitor)942 static FORCEINLINE HRESULT IFullScreenVideoEx_GetMonitor(IFullScreenVideoEx* This,LONG *Monitor) {
943 return This->lpVtbl->GetMonitor(This,Monitor);
944 }
IFullScreenVideoEx_HideOnDeactivate(IFullScreenVideoEx * This,LONG Hide)945 static FORCEINLINE HRESULT IFullScreenVideoEx_HideOnDeactivate(IFullScreenVideoEx* This,LONG Hide) {
946 return This->lpVtbl->HideOnDeactivate(This,Hide);
947 }
IFullScreenVideoEx_IsHideOnDeactivate(IFullScreenVideoEx * This)948 static FORCEINLINE HRESULT IFullScreenVideoEx_IsHideOnDeactivate(IFullScreenVideoEx* This) {
949 return This->lpVtbl->IsHideOnDeactivate(This);
950 }
IFullScreenVideoEx_SetCaption(IFullScreenVideoEx * This,BSTR strCaption)951 static FORCEINLINE HRESULT IFullScreenVideoEx_SetCaption(IFullScreenVideoEx* This,BSTR strCaption) {
952 return This->lpVtbl->SetCaption(This,strCaption);
953 }
IFullScreenVideoEx_GetCaption(IFullScreenVideoEx * This,BSTR * pstrCaption)954 static FORCEINLINE HRESULT IFullScreenVideoEx_GetCaption(IFullScreenVideoEx* This,BSTR *pstrCaption) {
955 return This->lpVtbl->GetCaption(This,pstrCaption);
956 }
IFullScreenVideoEx_SetDefault(IFullScreenVideoEx * This)957 static FORCEINLINE HRESULT IFullScreenVideoEx_SetDefault(IFullScreenVideoEx* This) {
958 return This->lpVtbl->SetDefault(This);
959 }
960 /*** IFullScreenVideoEx methods ***/
IFullScreenVideoEx_SetAcceleratorTable(IFullScreenVideoEx * This,HWND hwnd,HACCEL hAccel)961 static FORCEINLINE HRESULT IFullScreenVideoEx_SetAcceleratorTable(IFullScreenVideoEx* This,HWND hwnd,HACCEL hAccel) {
962 return This->lpVtbl->SetAcceleratorTable(This,hwnd,hAccel);
963 }
IFullScreenVideoEx_GetAcceleratorTable(IFullScreenVideoEx * This,HWND * phwnd,HACCEL * phAccel)964 static FORCEINLINE HRESULT IFullScreenVideoEx_GetAcceleratorTable(IFullScreenVideoEx* This,HWND *phwnd,HACCEL *phAccel) {
965 return This->lpVtbl->GetAcceleratorTable(This,phwnd,phAccel);
966 }
IFullScreenVideoEx_KeepPixelAspectRatio(IFullScreenVideoEx * This,LONG KeepAspect)967 static FORCEINLINE HRESULT IFullScreenVideoEx_KeepPixelAspectRatio(IFullScreenVideoEx* This,LONG KeepAspect) {
968 return This->lpVtbl->KeepPixelAspectRatio(This,KeepAspect);
969 }
IFullScreenVideoEx_IsKeepPixelAspectRatio(IFullScreenVideoEx * This,LONG * pKeepAspect)970 static FORCEINLINE HRESULT IFullScreenVideoEx_IsKeepPixelAspectRatio(IFullScreenVideoEx* This,LONG *pKeepAspect) {
971 return This->lpVtbl->IsKeepPixelAspectRatio(This,pKeepAspect);
972 }
973 #endif
974 #endif
975
976 #endif
977
978
979 #endif /* __IFullScreenVideoEx_INTERFACE_DEFINED__ */
980
981 /*****************************************************************************
982 * IBaseVideoMixer interface
983 */
984 #ifndef __IBaseVideoMixer_INTERFACE_DEFINED__
985 #define __IBaseVideoMixer_INTERFACE_DEFINED__
986
987 #if defined(__cplusplus) && !defined(CINTERFACE)
988 interface IBaseVideoMixer : public IUnknown
989 {
990 virtual HRESULT STDMETHODCALLTYPE SetLeadPin(
991 int iPin) = 0;
992
993 virtual HRESULT STDMETHODCALLTYPE GetLeadPin(
994 int *piPin) = 0;
995
996 virtual HRESULT STDMETHODCALLTYPE GetInputPinCount(
997 int *piPinCount) = 0;
998
999 virtual HRESULT STDMETHODCALLTYPE IsUsingClock(
1000 int *pbValue) = 0;
1001
1002 virtual HRESULT STDMETHODCALLTYPE SetUsingClock(
1003 int bValue) = 0;
1004
1005 virtual HRESULT STDMETHODCALLTYPE GetClockPeriod(
1006 int *pbValue) = 0;
1007
1008 virtual HRESULT STDMETHODCALLTYPE SetClockPeriod(
1009 int bValue) = 0;
1010
1011 };
1012 #else
1013 typedef struct IBaseVideoMixerVtbl {
1014 BEGIN_INTERFACE
1015
1016 /*** IUnknown methods ***/
1017 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1018 IBaseVideoMixer *This,
1019 REFIID riid,
1020 void **ppvObject);
1021
1022 ULONG (STDMETHODCALLTYPE *AddRef)(
1023 IBaseVideoMixer *This);
1024
1025 ULONG (STDMETHODCALLTYPE *Release)(
1026 IBaseVideoMixer *This);
1027
1028 /*** IBaseVideoMixer methods ***/
1029 HRESULT (STDMETHODCALLTYPE *SetLeadPin)(
1030 IBaseVideoMixer *This,
1031 int iPin);
1032
1033 HRESULT (STDMETHODCALLTYPE *GetLeadPin)(
1034 IBaseVideoMixer *This,
1035 int *piPin);
1036
1037 HRESULT (STDMETHODCALLTYPE *GetInputPinCount)(
1038 IBaseVideoMixer *This,
1039 int *piPinCount);
1040
1041 HRESULT (STDMETHODCALLTYPE *IsUsingClock)(
1042 IBaseVideoMixer *This,
1043 int *pbValue);
1044
1045 HRESULT (STDMETHODCALLTYPE *SetUsingClock)(
1046 IBaseVideoMixer *This,
1047 int bValue);
1048
1049 HRESULT (STDMETHODCALLTYPE *GetClockPeriod)(
1050 IBaseVideoMixer *This,
1051 int *pbValue);
1052
1053 HRESULT (STDMETHODCALLTYPE *SetClockPeriod)(
1054 IBaseVideoMixer *This,
1055 int bValue);
1056
1057 END_INTERFACE
1058 } IBaseVideoMixerVtbl;
1059
1060 interface IBaseVideoMixer {
1061 CONST_VTBL IBaseVideoMixerVtbl* lpVtbl;
1062 };
1063
1064 #ifdef COBJMACROS
1065 #ifndef WIDL_C_INLINE_WRAPPERS
1066 /*** IUnknown methods ***/
1067 #define IBaseVideoMixer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1068 #define IBaseVideoMixer_AddRef(This) (This)->lpVtbl->AddRef(This)
1069 #define IBaseVideoMixer_Release(This) (This)->lpVtbl->Release(This)
1070 /*** IBaseVideoMixer methods ***/
1071 #define IBaseVideoMixer_SetLeadPin(This,iPin) (This)->lpVtbl->SetLeadPin(This,iPin)
1072 #define IBaseVideoMixer_GetLeadPin(This,piPin) (This)->lpVtbl->GetLeadPin(This,piPin)
1073 #define IBaseVideoMixer_GetInputPinCount(This,piPinCount) (This)->lpVtbl->GetInputPinCount(This,piPinCount)
1074 #define IBaseVideoMixer_IsUsingClock(This,pbValue) (This)->lpVtbl->IsUsingClock(This,pbValue)
1075 #define IBaseVideoMixer_SetUsingClock(This,bValue) (This)->lpVtbl->SetUsingClock(This,bValue)
1076 #define IBaseVideoMixer_GetClockPeriod(This,pbValue) (This)->lpVtbl->GetClockPeriod(This,pbValue)
1077 #define IBaseVideoMixer_SetClockPeriod(This,bValue) (This)->lpVtbl->SetClockPeriod(This,bValue)
1078 #else
1079 /*** IUnknown methods ***/
IBaseVideoMixer_QueryInterface(IBaseVideoMixer * This,REFIID riid,void ** ppvObject)1080 static FORCEINLINE HRESULT IBaseVideoMixer_QueryInterface(IBaseVideoMixer* This,REFIID riid,void **ppvObject) {
1081 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1082 }
IBaseVideoMixer_AddRef(IBaseVideoMixer * This)1083 static FORCEINLINE ULONG IBaseVideoMixer_AddRef(IBaseVideoMixer* This) {
1084 return This->lpVtbl->AddRef(This);
1085 }
IBaseVideoMixer_Release(IBaseVideoMixer * This)1086 static FORCEINLINE ULONG IBaseVideoMixer_Release(IBaseVideoMixer* This) {
1087 return This->lpVtbl->Release(This);
1088 }
1089 /*** IBaseVideoMixer methods ***/
IBaseVideoMixer_SetLeadPin(IBaseVideoMixer * This,int iPin)1090 static FORCEINLINE HRESULT IBaseVideoMixer_SetLeadPin(IBaseVideoMixer* This,int iPin) {
1091 return This->lpVtbl->SetLeadPin(This,iPin);
1092 }
IBaseVideoMixer_GetLeadPin(IBaseVideoMixer * This,int * piPin)1093 static FORCEINLINE HRESULT IBaseVideoMixer_GetLeadPin(IBaseVideoMixer* This,int *piPin) {
1094 return This->lpVtbl->GetLeadPin(This,piPin);
1095 }
IBaseVideoMixer_GetInputPinCount(IBaseVideoMixer * This,int * piPinCount)1096 static FORCEINLINE HRESULT IBaseVideoMixer_GetInputPinCount(IBaseVideoMixer* This,int *piPinCount) {
1097 return This->lpVtbl->GetInputPinCount(This,piPinCount);
1098 }
IBaseVideoMixer_IsUsingClock(IBaseVideoMixer * This,int * pbValue)1099 static FORCEINLINE HRESULT IBaseVideoMixer_IsUsingClock(IBaseVideoMixer* This,int *pbValue) {
1100 return This->lpVtbl->IsUsingClock(This,pbValue);
1101 }
IBaseVideoMixer_SetUsingClock(IBaseVideoMixer * This,int bValue)1102 static FORCEINLINE HRESULT IBaseVideoMixer_SetUsingClock(IBaseVideoMixer* This,int bValue) {
1103 return This->lpVtbl->SetUsingClock(This,bValue);
1104 }
IBaseVideoMixer_GetClockPeriod(IBaseVideoMixer * This,int * pbValue)1105 static FORCEINLINE HRESULT IBaseVideoMixer_GetClockPeriod(IBaseVideoMixer* This,int *pbValue) {
1106 return This->lpVtbl->GetClockPeriod(This,pbValue);
1107 }
IBaseVideoMixer_SetClockPeriod(IBaseVideoMixer * This,int bValue)1108 static FORCEINLINE HRESULT IBaseVideoMixer_SetClockPeriod(IBaseVideoMixer* This,int bValue) {
1109 return This->lpVtbl->SetClockPeriod(This,bValue);
1110 }
1111 #endif
1112 #endif
1113
1114 #endif
1115
1116
1117 #endif /* __IBaseVideoMixer_INTERFACE_DEFINED__ */
1118
1119 #define iPALETTE_COLORS 256
1120 #define iEGA_COLORS 16
1121 #define iMASK_COLORS 3
1122 #define iTRUECOLOR 16
1123 #define iRED 0
1124 #define iGREEN 1
1125 #define iBLUE 2
1126 #define iPALETTE 8
1127 #define iMAXBITS 8
1128 typedef struct tag_TRUECOLORINFO {
1129 DWORD dwBitMasks[3];
1130 RGBQUAD bmiColors[256];
1131 } TRUECOLORINFO;
1132 typedef struct tagVIDEOINFOHEADER {
1133 RECT rcSource;
1134 RECT rcTarget;
1135 DWORD dwBitRate;
1136 DWORD dwBitErrorRate;
1137 REFERENCE_TIME AvgTimePerFrame;
1138 BITMAPINFOHEADER bmiHeader;
1139 } VIDEOINFOHEADER;
1140 typedef struct tagVIDEOINFO {
1141 RECT rcSource;
1142 RECT rcTarget;
1143 DWORD dwBitRate;
1144 DWORD dwBitErrorRate;
1145 REFERENCE_TIME AvgTimePerFrame;
1146 BITMAPINFOHEADER bmiHeader;
1147 __C89_NAMELESS union {
1148 RGBQUAD bmiColors[256];
1149 DWORD dwBitMasks[3];
1150 TRUECOLORINFO TrueColorInfo;
1151 } __C89_NAMELESSUNIONNAME;
1152 } VIDEOINFO;
1153 typedef struct tagMPEG1VIDEOINFO {
1154 VIDEOINFOHEADER hdr;
1155 DWORD dwStartTimeCode;
1156 DWORD cbSequenceHeader;
1157 BYTE bSequenceHeader[1];
1158 } MPEG1VIDEOINFO;
1159 #define MAX_SIZE_MPEG1_SEQUENCE_INFO 140
1160 #define MPEG1_SEQUENCE_INFO(pv) ((const BYTE *)(pv)->bSequenceHeader)
1161 typedef struct tagAnalogVideoInfo {
1162 RECT rcSource;
1163 RECT rcTarget;
1164 DWORD dwActiveWidth;
1165 DWORD dwActiveHeight;
1166 REFERENCE_TIME AvgTimePerFrame;
1167 } ANALOGVIDEOINFO;
1168 typedef enum __WIDL_amvideo_generated_name_00000003 {
1169 AM_PROPERTY_FRAMESTEP_STEP = 0x1,
1170 AM_PROPERTY_FRAMESTEP_CANCEL = 0x2,
1171 AM_PROPERTY_FRAMESTEP_CANSTEP = 0x3,
1172 AM_PROPERTY_FRAMESTEP_CANSTEPMULTIPLE = 0x4
1173 } AM_PROPERTY_FRAMESTEP;
1174 typedef struct _AM_FRAMESTEP_STEP {
1175 DWORD dwFramesToStep;
1176 } AM_FRAMESTEP_STEP;
1177 /* Begin additional prototypes for all interfaces */
1178
1179 ULONG __RPC_USER HWND_UserSize (ULONG *, ULONG, HWND *);
1180 unsigned char * __RPC_USER HWND_UserMarshal (ULONG *, unsigned char *, HWND *);
1181 unsigned char * __RPC_USER HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *);
1182 void __RPC_USER HWND_UserFree (ULONG *, HWND *);
1183 ULONG __RPC_USER BSTR_UserSize (ULONG *, ULONG, BSTR *);
1184 unsigned char * __RPC_USER BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *);
1185 unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
1186 void __RPC_USER BSTR_UserFree (ULONG *, BSTR *);
1187
1188 /* End additional prototypes */
1189
1190 #ifdef __cplusplus
1191 }
1192 #endif
1193
1194 #endif /* __amvideo_h__ */
1195