Kill NTOS headers. So long, and thanks for all the fish
[reactos.git] / reactos / include / ddk / ntddblue.h
1 #ifndef _NTDDBLUE_H_INCLUDED_
2 #define _NTDDBLUE_H_INCLUDED_
3
4 #define IOCTL_CONSOLE_GET_SCREEN_BUFFER_INFO CTL_CODE(FILE_DEVICE_SCREEN, 0x801, METHOD_BUFFERED, FILE_READ_ACCESS)
5 #define IOCTL_CONSOLE_SET_SCREEN_BUFFER_INFO CTL_CODE(FILE_DEVICE_SCREEN, 0x802, METHOD_BUFFERED, FILE_WRITE_ACCESS)
6 #define IOCTL_CONSOLE_GET_CURSOR_INFO CTL_CODE(FILE_DEVICE_SCREEN, 0x803, METHOD_BUFFERED, FILE_READ_ACCESS)
7 #define IOCTL_CONSOLE_SET_CURSOR_INFO CTL_CODE(FILE_DEVICE_SCREEN, 0x804, METHOD_BUFFERED, FILE_WRITE_ACCESS)
8 #define IOCTL_CONSOLE_GET_MODE CTL_CODE(FILE_DEVICE_SCREEN, 0x805, METHOD_BUFFERED, FILE_READ_ACCESS)
9 #define IOCTL_CONSOLE_SET_MODE CTL_CODE(FILE_DEVICE_SCREEN, 0x806, METHOD_BUFFERED, FILE_WRITE_ACCESS)
10
11
12 #define IOCTL_CONSOLE_FILL_OUTPUT_ATTRIBUTE CTL_CODE(FILE_DEVICE_SCREEN, 0x810, METHOD_BUFFERED, FILE_WRITE_ACCESS)
13 #define IOCTL_CONSOLE_READ_OUTPUT_ATTRIBUTE CTL_CODE(FILE_DEVICE_SCREEN, 0x811, METHOD_OUT_DIRECT, FILE_ANY_ACCESS)
14 #define IOCTL_CONSOLE_WRITE_OUTPUT_ATTRIBUTE CTL_CODE(FILE_DEVICE_SCREEN, 0x812, METHOD_IN_DIRECT, FILE_ANY_ACCESS)
15 #define IOCTL_CONSOLE_SET_TEXT_ATTRIBUTE CTL_CODE(FILE_DEVICE_SCREEN, 0x813, METHOD_BUFFERED, FILE_WRITE_ACCESS)
16
17
18 #define IOCTL_CONSOLE_FILL_OUTPUT_CHARACTER CTL_CODE(FILE_DEVICE_SCREEN, 0x820, METHOD_BUFFERED, FILE_WRITE_ACCESS)
19 #define IOCTL_CONSOLE_READ_OUTPUT_CHARACTER CTL_CODE(FILE_DEVICE_SCREEN, 0x821, METHOD_OUT_DIRECT, FILE_ANY_ACCESS)
20 #define IOCTL_CONSOLE_WRITE_OUTPUT_CHARACTER CTL_CODE(FILE_DEVICE_SCREEN, 0x822, METHOD_IN_DIRECT, FILE_ANY_ACCESS)
21
22 #define IOCTL_CONSOLE_DRAW CTL_CODE(FILE_DEVICE_SCREEN, 0x830, METHOD_IN_DIRECT, FILE_WRITE_ACCESS)
23
24
25 /* TYPEDEFS **************************************************************/
26
27
28 typedef struct tagCONSOLE_MODE
29 {
30 DWORD dwMode;
31 } CONSOLE_MODE, *PCONSOLE_MODE;
32
33
34 typedef struct tagOUTPUT_ATTRIBUTE
35 {
36 WORD wAttribute;
37 DWORD nLength;
38 COORD dwCoord;
39 DWORD dwTransfered;
40 } OUTPUT_ATTRIBUTE, *POUTPUT_ATTRIBUTE;
41
42
43 typedef struct tagOUTPUT_CHARACTER
44 {
45 CHAR cCharacter;
46 DWORD nLength;
47 COORD dwCoord;
48 DWORD dwTransfered;
49 } OUTPUT_CHARACTER, *POUTPUT_CHARACTER;
50
51
52 typedef struct tagCONSOLE_DRAW
53 {
54 UINT X; /* Origin */
55 UINT Y;
56 UINT SizeX; /* Size of the screen buffer (chars) */
57 UINT SizeY;
58 UINT CursorX; /* New cursor position (screen-relative) */
59 UINT CursorY;
60 /* Followed by screen buffer in char/attrib format */
61 } CONSOLE_DRAW, *PCONSOLE_DRAW;
62
63
64 #endif /* _NTDDBLUE_H_INCLUDED_ */