xref: /reactos/sdk/include/dxsdk/vpconfig.h (revision c2c66aff)
1 
2 #ifndef __IVPConfig__
3 #define __IVPConfig__
4 
5 #ifdef __cplusplus
6 extern "C" {
7 #endif
8 
9 
DECLARE_INTERFACE_(IVPBaseConfig,IUnknown)10 DECLARE_INTERFACE_(IVPBaseConfig, IUnknown)
11 {
12   public:
13   STDMETHOD (GetConnectInfo)(THIS_ IN OUT LPDWORD pdwNumConnectInfo,
14                                    IN OUT LPDDVIDEOPORTCONNECT pddVPConnectInfo) PURE;
15 
16   STDMETHOD (SetConnectInfo)(THIS_ IN DWORD dwChosenEntry) PURE;
17   STDMETHOD (GetVPDataInfo)(THIS_ IN OUT LPAMVPDATAINFO pamvpDataInfo) PURE;
18   STDMETHOD (GetMaxPixelRate)(THIS_ IN OUT LPAMVPSIZE pamvpSize,
19                                     OUT LPDWORD pdwMaxPixelsPerSecond) PURE;
20 
21   STDMETHOD (InformVPInputFormats)(THIS_ IN DWORD dwNumFormats,
22                                          IN LPDDPIXELFORMAT pDDPixelFormats) PURE;
23 
24   STDMETHOD (GetVideoFormats)(THIS_ IN OUT LPDWORD pdwNumFormats,
25                                     IN OUT LPDDPIXELFORMAT pddPixelFormats) PURE;
26 
27   STDMETHOD (SetVideoFormat)(THIS_ IN DWORD dwChosenEntry) PURE;
28   STDMETHOD (SetInvertPolarity)(THIS_ ) PURE;
29   STDMETHOD (GetOverlaySurface)(THIS_ OUT LPDIRECTDRAWSURFACE* ppddOverlaySurface) PURE;
30   STDMETHOD (SetDirectDrawKernelHandle)(THIS_ IN ULONG_PTR dwDDKernelHandle) PURE;
31   STDMETHOD (SetVideoPortID)(THIS_ IN DWORD dwVideoPortID) PURE;
32 
33   STDMETHOD (SetDDSurfaceKernelHandles)(THIS_ IN DWORD cHandles,
34                                               IN ULONG_PTR *rgDDKernelHandles) PURE;
35 
36   STDMETHOD (SetSurfaceParameters)(THIS_ IN DWORD dwPitch, IN DWORD dwXOrigin,
37                                          IN DWORD dwYOrigin) PURE;
38 };
39 
DECLARE_INTERFACE_(IVPConfig,IVPBaseConfig)40 DECLARE_INTERFACE_(IVPConfig, IVPBaseConfig)
41 {
42   public:
43     STDMETHOD (IsVPDecimationAllowed)(THIS_ OUT LPBOOL pbIsDecimationAllowed) PURE;
44     STDMETHOD (SetScalingFactors)(THIS_ IN LPAMVPSIZE pamvpSize) PURE;
45 };
46 
DECLARE_INTERFACE_(IVPVBIConfig,IVPBaseConfig)47 DECLARE_INTERFACE_(IVPVBIConfig, IVPBaseConfig)
48 {
49   public:
50 };
51 
52 #ifdef __cplusplus
53 }
54 #endif
55 
56 
57 #endif
58 
59