xref: /reactos/sdk/include/dxsdk/mpconfig.h (revision c2c66aff)
1 #ifndef __IMPConfig__
2 #define __IMPConfig__
3 
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7 
8 typedef enum _AM_ASPECT_RATIO_MODE
9 {
10   AM_ARMODE_STRETCHED,
11   AM_ARMODE_LETTER_BOX,
12   AM_ARMODE_CROP,
13   AM_ARMODE_STRETCHED_AS_PRIMARY
14 } AM_ASPECT_RATIO_MODE;
15 
DECLARE_INTERFACE_(IMixerPinConfig,IUnknown)16 DECLARE_INTERFACE_(IMixerPinConfig, IUnknown)
17 {
18   STDMETHOD (SetRelativePosition)(THIS_ IN DWORD dwLeft, IN DWORD dwTop,
19                                         IN DWORD dwRight, IN DWORD dwBottom) PURE;
20   STDMETHOD (GetRelativePosition)(THIS_ OUT DWORD *pdwLeft,OUT DWORD *pdwTop,
21                                         OUT DWORD *pdwRight, OUT DWORD *pdwBottom) PURE;
22 
23   STDMETHOD (SetZOrder)(THIS_ IN DWORD dwZOrder) PURE;
24   STDMETHOD (GetZOrder)(THIS_ OUT DWORD *pdwZOrder) PURE;
25   STDMETHOD (SetColorKey)(THIS_ IN COLORKEY *pColorKey) PURE;
26   STDMETHOD (GetColorKey)(THIS_ OUT COLORKEY *pColorKey, OUT DWORD *pColor) PURE;
27   STDMETHOD (SetBlendingParameter)(THIS_ IN DWORD dwBlendingParameter) PURE;
28   STDMETHOD (GetBlendingParameter)(THIS_ OUT DWORD *pdwBlendingParameter) PURE;
29   STDMETHOD (SetAspectRatioMode)(THIS_ IN AM_ASPECT_RATIO_MODE amAspectRatioMode) PURE;
30   STDMETHOD (GetAspectRatioMode)(THIS_ OUT AM_ASPECT_RATIO_MODE* pamAspectRatioMode) PURE;
31   STDMETHOD (SetStreamTransparent)(THIS_ IN BOOL bStreamTransparent) PURE;
32   STDMETHOD (GetStreamTransparent)(THIS_ OUT BOOL *pbStreamTransparent) PURE;
33 };
34 
DECLARE_INTERFACE_(IMixerPinConfig2,IMixerPinConfig)35 DECLARE_INTERFACE_(IMixerPinConfig2, IMixerPinConfig)
36 {
37   STDMETHOD (SetOverlaySurfaceColorControls)(THIS_ IN LPDDCOLORCONTROL pColorControl) PURE;
38   STDMETHOD (GetOverlaySurfaceColorControls)(THIS_ OUT LPDDCOLORCONTROL pColorControl) PURE;
39 };
40 
41 
42 
43 #ifdef __cplusplus
44 }
45 #endif
46 
47 #endif
48