- Fix incompatible IO_STACK_LOCATION definition in W32api ddk/winddk.k
[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 /* VIDEOPARAMETERS.dwCommand constants */
35 #define VP_COMMAND_GET 0x00000001
36 #define VP_COMMAND_SET 0x00000002
37
38 /* VIDEOPARAMETERS.dwFlags constants */
39 #define VP_FLAGS_TV_MODE 0x00000001
40 #define VP_FLAGS_TV_STANDARD 0x00000002
41 #define VP_FLAGS_FLICKER 0x00000004
42 #define VP_FLAGS_OVERSCAN 0x00000008
43 #define VP_FLAGS_MAX_UNSCALED 0x00000010
44 #define VP_FLAGS_POSITION 0x00000020
45 #define VP_FLAGS_BRIGHTNESS 0x00000040
46 #define VP_FLAGS_CONTRAST 0x00000080
47 #define VP_FLAGS_COPYPROTECT 0x00000100
48
49 /* VIDEOPARAMETERS.dwMode constants */
50 #define VP_MODE_WIN_GRAPHICS 0x00000001
51 #define VP_MODE_TV_PLAYBACK 0x00000002
52
53 /* VIDEOPARAMETERS.dwTVStandard/dwAvailableTVStandard constants */
54 #define VP_TV_STANDARD_NTSC_M 0x00000001
55 #define VP_TV_STANDARD_NTSC_M_J 0x00000002
56 #define VP_TV_STANDARD_PAL_B 0x00000004
57 #define VP_TV_STANDARD_PAL_D 0x00000008
58 #define VP_TV_STANDARD_PAL_H 0x00000010
59 #define VP_TV_STANDARD_PAL_I 0x00000020
60 #define VP_TV_STANDARD_PAL_M 0x00000040
61 #define VP_TV_STANDARD_PAL_N 0x00000080
62 #define VP_TV_STANDARD_SECAM_B 0x00000100
63 #define VP_TV_STANDARD_SECAM_D 0x00000200
64 #define VP_TV_STANDARD_SECAM_G 0x00000400
65 #define VP_TV_STANDARD_SECAM_H 0x00000800
66 #define VP_TV_STANDARD_SECAM_K 0x00001000
67 #define VP_TV_STANDARD_SECAM_K1 0x00002000
68 #define VP_TV_STANDARD_SECAM_L 0x00004000
69 #define VP_TV_STANDARD_WIN_VGA 0x00008000
70 #define VP_TV_STANDARD_NTSC_433 0x00010000
71 #define VP_TV_STANDARD_PAL_G 0x00020000
72 #define VP_TV_STANDARD_PAL_60 0x00040000
73 #define VP_TV_STANDARD_SECAM_L1 0x00080000
74
75 /* VIDEOPARAMETERS.dwMode constants */
76 #define VP_CP_TYPE_APS_TRIGGER 0x00000001
77 #define VP_CP_TYPE_MACROVISION 0x00000002
78
79 /* VIDEOPARAMETERS.dwCPCommand constants */
80 #define VP_CP_CMD_ACTIVATE 0x00000001
81 #define VP_CP_CMD_DEACTIVATE 0x00000002
82 #define VP_CP_CMD_CHANGE 0x00000004
83
84 typedef struct _VIDEOPARAMETERS {
85 GUID Guid;
86 DWORD dwOffset;
87 DWORD dwCommand;
88 DWORD dwFlags;
89 DWORD dwMode;
90 DWORD dwTVStandard;
91 DWORD dwAvailableModes;
92 DWORD dwAvailableTVStandard;
93 DWORD dwFlickerFilter;
94 DWORD dwOverScanX;
95 DWORD dwOverScanY;
96 DWORD dwMaxUnscaledX;
97 DWORD dwMaxUnscaledY;
98 DWORD dwPositionX;
99 DWORD dwPositionY;
100 DWORD dwBrightness;
101 DWORD dwContrast;
102 DWORD dwCPType;
103 DWORD dwCPCommand;
104 DWORD dwCPStandard;
105 DWORD dwCPKey;
106 BYTE bCP_APSTriggerBits;
107 BYTE bOEMCopyProtection[256];
108 } VIDEOPARAMETERS, *PVIDEOPARAMETERS, FAR *LPVIDEOPARAMETERS;
109
110 #ifdef __cplusplus
111 }
112 #endif
113
114 #endif /* __TVOUT_H */