Visual C++ backend for rbuild (for now just a hacked mingw backend) and related compi...
[reactos.git] / include / dxsdk / mpconfig.h
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
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
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