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 48