2 SimpleFileSystem protocol as defined in the UEFI 2.0 specification.
4 The SimpleFileSystem protocol is the programmatic access to the FAT (12,16,32)
5 file system specified in UEFI 2.0. It can also be used to abstract a file
8 UEFI 2.0 can boot from any valid EFI image contained in a SimpleFileSystem.
10 Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
11 Portions copyright (c) 2011, Apple Inc. All rights reserved.
12 SPDX-License-Identifier: BSD-2-Clause-Patent
16 #ifndef _EMU_UGA_IO_H_
17 #define _EMU_UGA_IO_H_
19 #include <Protocol/SimplePointer.h>
20 #include <Protocol/SimpleTextIn.h>
21 #include <Protocol/SimpleTextInEx.h>
22 #include <Protocol/UgaDraw.h>
24 #define EMU_GRAPHICS_WINDOW_PROTOCOL_GUID \
25 { 0x30FD316A, 0x6728, 0x2E41, { 0xA6, 0x90, 0x0D, 0x13, 0x33, 0xD8, 0xCA, 0xC1 } }
27 typedef struct _EMU_GRAPHICS_WINDOW_PROTOCOL EMU_GRAPHICS_WINDOW_PROTOCOL
;
31 (EFIAPI
*EMU_GRAPHICS_WINDOWS_CLOSE
)(
32 EMU_GRAPHICS_WINDOW_PROTOCOL
*Uga
37 (EFIAPI
*EMU_GRAPHICS_WINDOWS_SIZE
)(
38 EMU_GRAPHICS_WINDOW_PROTOCOL
*Uga
,
45 (EFIAPI
*EMU_GRAPHICS_WINDOWS_CHECK_KEY
)(
46 EMU_GRAPHICS_WINDOW_PROTOCOL
*Uga
51 (EFIAPI
*EMU_GRAPHICS_WINDOWS_GET_KEY
)(
52 EMU_GRAPHICS_WINDOW_PROTOCOL
*Uga
,
58 (EFIAPI
*EMU_GRAPHICS_WINDOWS_KEY_SET_STATE
)(
59 IN EMU_GRAPHICS_WINDOW_PROTOCOL
*GraphicsWindows
,
60 IN EFI_KEY_TOGGLE_STATE
*KeyToggleState
65 (EFIAPI
*EMU_GRAPHICS_WINDOW_REGISTER_KEY_NOTIFY_CALLBACK
)(
67 IN EFI_KEY_DATA
*KeyData
72 (EFIAPI
*EMU_GRAPHICS_WINDOWS_REGISTER_KEY_NOTIFY
)(
73 IN EMU_GRAPHICS_WINDOW_PROTOCOL
*GraphicsWindows
,
74 IN EMU_GRAPHICS_WINDOW_REGISTER_KEY_NOTIFY_CALLBACK CallBack
,
86 } EMU_GRAPHICS_WINDOWS__BLT_ARGS
;
90 (EFIAPI
*EMU_GRAPHICS_WINDOWS_BLT
)(
91 IN EMU_GRAPHICS_WINDOW_PROTOCOL
*GraphicsWindows
,
92 IN EFI_UGA_PIXEL
*BltBuffer OPTIONAL
,
93 IN EFI_UGA_BLT_OPERATION BltOperation
,
94 IN EMU_GRAPHICS_WINDOWS__BLT_ARGS
*Args
99 (EFIAPI
*EMU_GRAPHICS_WINDOWS_IS_KEY_PRESSED
)(
100 IN EMU_GRAPHICS_WINDOW_PROTOCOL
*GraphicsWindows
,
101 IN EFI_KEY_DATA
*KeyData
106 (EFIAPI
*EMU_GRAPHICS_WINDOWS_CHECK_POINTER
)(
107 EMU_GRAPHICS_WINDOW_PROTOCOL
*GraphicsWindows
112 (EFIAPI
*EMU_GRAPHICS_WINDOWS_GET_POINTER_STATE
)(
113 EMU_GRAPHICS_WINDOW_PROTOCOL
*GraphicsWindows
,
114 EFI_SIMPLE_POINTER_STATE
*state
117 struct _EMU_GRAPHICS_WINDOW_PROTOCOL
{
118 EMU_GRAPHICS_WINDOWS_SIZE Size
;
119 EMU_GRAPHICS_WINDOWS_CHECK_KEY CheckKey
;
120 EMU_GRAPHICS_WINDOWS_KEY_SET_STATE KeySetState
;
121 EMU_GRAPHICS_WINDOWS_GET_KEY GetKey
;
122 EMU_GRAPHICS_WINDOWS_REGISTER_KEY_NOTIFY RegisterKeyNotify
;
123 EMU_GRAPHICS_WINDOWS_BLT Blt
;
124 EMU_GRAPHICS_WINDOWS_IS_KEY_PRESSED IsKeyPressed
;
125 EMU_GRAPHICS_WINDOWS_CHECK_POINTER CheckPointer
;
126 EMU_GRAPHICS_WINDOWS_GET_POINTER_STATE GetPointerState
;
129 extern EFI_GUID gEmuGraphicsWindowProtocolGuid
;