Update installation instructions
[reactos.git] / reactos / w32api / include / ddk / tvout.h
1 /*
2 * tvout.h
3 *
4 * Definitions for TV-out support
5 *
6 * This file is part of the w32api package.
7 *
8 * Contributors:
9 * Created by Casper S. Hornstrup <chorns@users.sourceforge.net>
10 *
11 * THIS SOFTWARE IS NOT COPYRIGHTED
12 *
13 * This source code is offered for use in the public domain. You may
14 * use, modify or distribute it freely.
15 *
16 * This code is distributed in the hope that it will be useful but
17 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
18 * DISCLAIMED. This includes but is not limited to warranties of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
20 *
21 */
22
23 #ifndef __TVOUT_H
24 #define __TVOUT_H
25
26 #if __GNUC__ >=3
27 #pragma GCC system_header
28 #endif
29
30 #ifdef __cplusplus
31 extern "C" {
32 #endif
33
34 #include "ntddk.h"
35
36 /* VIDEOPARAMETERS.dwCommand constants */
37 #define VP_COMMAND_GET 0x00000001
38 #define VP_COMMAND_SET 0x00000002
39
40 /* VIDEOPARAMETERS.dwFlags constants */
41 #define VP_FLAGS_TV_MODE 0x00000001
42 #define VP_FLAGS_TV_STANDARD 0x00000002
43 #define VP_FLAGS_FLICKER 0x00000004
44 #define VP_FLAGS_OVERSCAN 0x00000008
45 #define VP_FLAGS_MAX_UNSCALED 0x00000010
46 #define VP_FLAGS_POSITION 0x00000020
47 #define VP_FLAGS_BRIGHTNESS 0x00000040
48 #define VP_FLAGS_CONTRAST 0x00000080
49 #define VP_FLAGS_COPYPROTECT 0x00000100
50
51 /* VIDEOPARAMETERS.dwMode constants */
52 #define VP_MODE_WIN_GRAPHICS 0x00000001
53 #define VP_MODE_TV_PLAYBACK 0x00000002
54
55 /* VIDEOPARAMETERS.dwTVStandard/dwAvailableTVStandard constants */
56 #define VP_TV_STANDARD_NTSC_M 0x00000001
57 #define VP_TV_STANDARD_NTSC_M_J 0x00000002
58 #define VP_TV_STANDARD_PAL_B 0x00000004
59 #define VP_TV_STANDARD_PAL_D 0x00000008
60 #define VP_TV_STANDARD_PAL_H 0x00000010
61 #define VP_TV_STANDARD_PAL_I 0x00000020
62 #define VP_TV_STANDARD_PAL_M 0x00000040
63 #define VP_TV_STANDARD_PAL_N 0x00000080
64 #define VP_TV_STANDARD_SECAM_B 0x00000100
65 #define VP_TV_STANDARD_SECAM_D 0x00000200
66 #define VP_TV_STANDARD_SECAM_G 0x00000400
67 #define VP_TV_STANDARD_SECAM_H 0x00000800
68 #define VP_TV_STANDARD_SECAM_K 0x00001000
69 #define VP_TV_STANDARD_SECAM_K1 0x00002000
70 #define VP_TV_STANDARD_SECAM_L 0x00004000
71 #define VP_TV_STANDARD_WIN_VGA 0x00008000
72 #define VP_TV_STANDARD_NTSC_433 0x00010000
73 #define VP_TV_STANDARD_PAL_G 0x00020000
74 #define VP_TV_STANDARD_PAL_60 0x00040000
75 #define VP_TV_STANDARD_SECAM_L1 0x00080000
76
77 /* VIDEOPARAMETERS.dwMode constants */
78 #define VP_CP_TYPE_APS_TRIGGER 0x00000001
79 #define VP_CP_TYPE_MACROVISION 0x00000002
80
81 /* VIDEOPARAMETERS.dwCPCommand constants */
82 #define VP_CP_CMD_ACTIVATE 0x00000001
83 #define VP_CP_CMD_DEACTIVATE 0x00000002
84 #define VP_CP_CMD_CHANGE 0x00000004
85
86 typedef struct _VIDEOPARAMETERS {
87 GUID Guid;
88 DWORD dwOffset;
89 DWORD dwCommand;
90 DWORD dwFlags;
91 DWORD dwMode;
92 DWORD dwTVStandard;
93 DWORD dwAvailableModes;
94 DWORD dwAvailableTVStandard;
95 DWORD dwFlickerFilter;
96 DWORD dwOverScanX;
97 DWORD dwOverScanY;
98 DWORD dwMaxUnscaledX;
99 DWORD dwMaxUnscaledY;
100 DWORD dwPositionX;
101 DWORD dwPositionY;
102 DWORD dwBrightness;
103 DWORD dwContrast;
104 DWORD dwCPType;
105 DWORD dwCPCommand;
106 DWORD dwCPStandard;
107 DWORD dwCPKey;
108 BYTE bCP_APSTriggerBits;
109 BYTE bOEMCopyProtection[256];
110 } VIDEOPARAMETERS, *PVIDEOPARAMETERS, FAR *LPVIDEOPARAMETERS;
111
112 #ifdef __cplusplus
113 }
114 #endif
115
116 #endif /* __TVOUT_H */