]> git.proxmox.com Git - mirror_edk2.git/blame - EdkModulePkg/Universal/Console/GraphicsConsole/Dxe/GraphicsConsole.h
Make EdkModulePkg pass Intel IPF compiler with /W4 /WX switches, solving warning...
[mirror_edk2.git] / EdkModulePkg / Universal / Console / GraphicsConsole / Dxe / GraphicsConsole.h
CommitLineData
878ddf1f 1/*++\r
2\r
3Copyright (c) 2006, Intel Corporation \r
4All rights reserved. This program and the accompanying materials \r
5are licensed and made available under the terms and conditions of the BSD License \r
6which accompanies this distribution. The full text of the license may be found at \r
7http://opensource.org/licenses/bsd-license.php \r
8 \r
9THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
10WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
11\r
12Module Name:\r
13\r
14 GraphicsConsole.h\r
15\r
16Abstract:\r
17\r
18 \r
19Revision History\r
20\r
21--*/\r
22\r
23#ifndef _GRAPHICS_CONSOLE_H\r
24#define _GRAPHICS_CONSOLE_H\r
25\r
26\r
27#include "ComponentName.h"\r
28\r
29//\r
30// Glyph database\r
31//\r
32#define GLYPH_WIDTH 8\r
33#define GLYPH_HEIGHT 19\r
34\r
35typedef union {\r
36 EFI_NARROW_GLYPH NarrowGlyph;\r
37 EFI_WIDE_GLYPH WideGlyph;\r
38} GLYPH_UNION;\r
39\r
40extern EFI_NARROW_GLYPH UsStdNarrowGlyphData[];\r
41extern EFI_WIDE_GLYPH UsStdWideGlyphData[];\r
42\r
43//\r
44// Device Structure\r
45//\r
46#define GRAPHICS_CONSOLE_DEV_SIGNATURE EFI_SIGNATURE_32 ('g', 's', 't', 'o')\r
47\r
48typedef struct {\r
49 UINTN Columns;\r
50 UINTN Rows;\r
51 INTN DeltaX;\r
52 INTN DeltaY;\r
406adcd1 53 UINT32 GopWidth;\r
54 UINT32 GopHeight;\r
55 UINT32 GopModeNumber;\r
878ddf1f 56} GRAPHICS_CONSOLE_MODE_DATA;\r
57\r
58#define GRAPHICS_MAX_MODE 3\r
59\r
60typedef struct {\r
61 UINTN Signature;\r
406adcd1 62 EFI_GRAPHICS_OUTPUT_PROTOCOL *GraphicsOutput;\r
878ddf1f 63 EFI_UGA_DRAW_PROTOCOL *UgaDraw;\r
64 EFI_SIMPLE_TEXT_OUT_PROTOCOL SimpleTextOutput;\r
65 EFI_SIMPLE_TEXT_OUTPUT_MODE SimpleTextOutputMode;\r
66 GRAPHICS_CONSOLE_MODE_DATA ModeData[GRAPHICS_MAX_MODE];\r
406adcd1 67 EFI_GRAPHICS_OUTPUT_BLT_PIXEL *LineBuffer;\r
878ddf1f 68 EFI_HII_HANDLE HiiHandle;\r
69} GRAPHICS_CONSOLE_DEV;\r
70\r
71#define GRAPHICS_CONSOLE_CON_OUT_DEV_FROM_THIS(a) \\r
72 CR (a, GRAPHICS_CONSOLE_DEV, SimpleTextOutput, GRAPHICS_CONSOLE_DEV_SIGNATURE)\r
73\r
74//\r
75// Global Variables\r
76//\r
77extern EFI_DRIVER_BINDING_PROTOCOL gGraphicsConsoleDriverBinding;\r
78\r
79//\r
80// Prototypes\r
81//\r
82UINTN\r
83ReturnNarrowFontSize (\r
84 VOID\r
85 );\r
86\r
87UINTN\r
88ReturnWideFontSize (\r
89 VOID\r
90 );\r
91\r
92EFI_STATUS\r
93EFIAPI\r
94GraphicsConsoleConOutReset (\r
95 IN EFI_SIMPLE_TEXT_OUT_PROTOCOL *This,\r
96 IN BOOLEAN ExtendedVerification\r
97 );\r
98\r
99EFI_STATUS\r
100EFIAPI\r
101GraphicsConsoleConOutOutputString (\r
102 IN EFI_SIMPLE_TEXT_OUT_PROTOCOL *This,\r
103 IN CHAR16 *WString\r
104 );\r
105\r
106EFI_STATUS\r
107EFIAPI\r
108GraphicsConsoleConOutTestString (\r
109 IN EFI_SIMPLE_TEXT_OUT_PROTOCOL *This,\r
110 IN CHAR16 *WString\r
111 );\r
112\r
113EFI_STATUS\r
114EFIAPI\r
115GraphicsConsoleConOutQueryMode (\r
116 IN EFI_SIMPLE_TEXT_OUT_PROTOCOL *This,\r
117 IN UINTN ModeNumber,\r
118 OUT UINTN *Columns,\r
119 OUT UINTN *Rows\r
120 );\r
121\r
122EFI_STATUS\r
123EFIAPI\r
124GraphicsConsoleConOutSetMode (\r
125 IN EFI_SIMPLE_TEXT_OUT_PROTOCOL *This,\r
126 IN UINTN ModeNumber\r
127 );\r
128\r
129EFI_STATUS\r
130EFIAPI\r
131GraphicsConsoleConOutSetAttribute (\r
132 IN EFI_SIMPLE_TEXT_OUT_PROTOCOL *This,\r
133 IN UINTN Attribute\r
134 );\r
135\r
136EFI_STATUS\r
137EFIAPI\r
138GraphicsConsoleConOutClearScreen (\r
139 IN EFI_SIMPLE_TEXT_OUT_PROTOCOL *This\r
140 );\r
141\r
142EFI_STATUS\r
143EFIAPI\r
144GraphicsConsoleConOutSetCursorPosition (\r
145 IN EFI_SIMPLE_TEXT_OUT_PROTOCOL *This,\r
146 IN UINTN Column,\r
147 IN UINTN Row\r
148 );\r
149\r
150EFI_STATUS\r
151EFIAPI\r
152GraphicsConsoleConOutEnableCursor (\r
153 IN EFI_SIMPLE_TEXT_OUT_PROTOCOL *This,\r
154 IN BOOLEAN Visible\r
155 );\r
156\r
157EFI_STATUS\r
158EfiLocateHiiProtocol (\r
159 VOID\r
160 );\r
161\r
92dda53e 162EFI_STATUS\r
163EFIAPI\r
164GraphicsConsoleControllerDriverSupported (\r
165 IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
166 IN EFI_HANDLE Controller,\r
167 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath\r
168 );\r
169\r
170EFI_STATUS\r
171EFIAPI\r
172GraphicsConsoleControllerDriverStart (\r
173 IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
174 IN EFI_HANDLE Controller,\r
175 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath\r
176 );\r
177\r
178EFI_STATUS\r
179EFIAPI\r
180GraphicsConsoleControllerDriverStop (\r
181 IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
182 IN EFI_HANDLE Controller,\r
183 IN UINTN NumberOfChildren,\r
184 IN EFI_HANDLE *ChildHandleBuffer\r
185 );\r
186\r
878ddf1f 187#endif\r