TianoCore EDK2 master
Loading...
Searching...
No Matches
SimpleTextInEx.h
Go to the documentation of this file.
1
13#ifndef __SIMPLE_TEXT_IN_EX_H__
14#define __SIMPLE_TEXT_IN_EX_H__
15
17
18#define EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL_GUID \
19 {0xdd9e7534, 0x7762, 0x4698, { 0x8c, 0x14, 0xf5, 0x85, 0x17, 0xa6, 0x25, 0xaa } }
20
22
48typedef
50(EFIAPI *EFI_INPUT_RESET_EX)(
52 IN BOOLEAN ExtendedVerification
53 );
54
61
62typedef struct _EFI_KEY_STATE {
78
79typedef struct {
89
90//
91// Any Shift or Toggle State that is valid should have
92// high order bit set.
93//
94// Shift state
95//
96#define EFI_SHIFT_STATE_VALID 0x80000000
97#define EFI_RIGHT_SHIFT_PRESSED 0x00000001
98#define EFI_LEFT_SHIFT_PRESSED 0x00000002
99#define EFI_RIGHT_CONTROL_PRESSED 0x00000004
100#define EFI_LEFT_CONTROL_PRESSED 0x00000008
101#define EFI_RIGHT_ALT_PRESSED 0x00000010
102#define EFI_LEFT_ALT_PRESSED 0x00000020
103#define EFI_RIGHT_LOGO_PRESSED 0x00000040
104#define EFI_LEFT_LOGO_PRESSED 0x00000080
105#define EFI_MENU_KEY_PRESSED 0x00000100
106#define EFI_SYS_REQ_PRESSED 0x00000200
107
108//
109// Toggle state
110//
111#define EFI_TOGGLE_STATE_VALID 0x80
112#define EFI_KEY_STATE_EXPOSED 0x40
113#define EFI_SCROLL_LOCK_ACTIVE 0x01
114#define EFI_NUM_LOCK_ACTIVE 0x02
115#define EFI_CAPS_LOCK_ACTIVE 0x04
116
117//
118// EFI Scan codes
119//
120#define SCAN_F11 0x0015
121#define SCAN_F12 0x0016
122#define SCAN_PAUSE 0x0048
123#define SCAN_F13 0x0068
124#define SCAN_F14 0x0069
125#define SCAN_F15 0x006A
126#define SCAN_F16 0x006B
127#define SCAN_F17 0x006C
128#define SCAN_F18 0x006D
129#define SCAN_F19 0x006E
130#define SCAN_F20 0x006F
131#define SCAN_F21 0x0070
132#define SCAN_F22 0x0071
133#define SCAN_F23 0x0072
134#define SCAN_F24 0x0073
135#define SCAN_MUTE 0x007F
136#define SCAN_VOLUME_UP 0x0080
137#define SCAN_VOLUME_DOWN 0x0081
138#define SCAN_BRIGHTNESS_UP 0x0100
139#define SCAN_BRIGHTNESS_DOWN 0x0101
140#define SCAN_SUSPEND 0x0102
141#define SCAN_HIBERNATE 0x0103
142#define SCAN_TOGGLE_DISPLAY 0x0104
143#define SCAN_RECOVERY 0x0105
144#define SCAN_EJECT 0x0106
145
193typedef
195(EFIAPI *EFI_INPUT_READ_KEY_EX)(
197 OUT EFI_KEY_DATA *KeyData
198 );
199
220typedef
222(EFIAPI *EFI_SET_STATE)(
224 IN EFI_KEY_TOGGLE_STATE *KeyToggleState
225 );
226
230typedef
233 IN EFI_KEY_DATA *KeyData
234 );
235
262typedef
266 IN EFI_KEY_DATA *KeyData,
267 IN EFI_KEY_NOTIFY_FUNCTION KeyNotificationFunction,
268 OUT VOID **NotifyHandle
269 );
270
286typedef
290 IN VOID *NotificationHandle
291 );
292
300 EFI_INPUT_RESET_EX Reset;
301 EFI_INPUT_READ_KEY_EX ReadKeyStrokeEx;
306 EFI_SET_STATE SetState;
307 EFI_REGISTER_KEYSTROKE_NOTIFY RegisterKeyNotify;
308 EFI_UNREGISTER_KEYSTROKE_NOTIFY UnregisterKeyNotify;
309};
310
311extern EFI_GUID gEfiSimpleTextInputExProtocolGuid;
312
313#endif
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284
UINT8 EFI_KEY_TOGGLE_STATE
EFI_STATUS(EFIAPI * EFI_INPUT_RESET_EX)(IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This, IN BOOLEAN ExtendedVerification)
EFI_STATUS(EFIAPI * EFI_KEY_NOTIFY_FUNCTION)(IN EFI_KEY_DATA *KeyData)
EFI_STATUS(EFIAPI * EFI_INPUT_READ_KEY_EX)(IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This, OUT EFI_KEY_DATA *KeyData)
EFI_STATUS(EFIAPI * EFI_SET_STATE)(IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This, IN EFI_KEY_TOGGLE_STATE *KeyToggleState)
EFI_STATUS(EFIAPI * EFI_REGISTER_KEYSTROKE_NOTIFY)(IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This, IN EFI_KEY_DATA *KeyData, IN EFI_KEY_NOTIFY_FUNCTION KeyNotificationFunction, OUT VOID **NotifyHandle)
EFI_STATUS(EFIAPI * EFI_UNREGISTER_KEYSTROKE_NOTIFY)(IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This, IN VOID *NotificationHandle)
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:29
VOID * EFI_EVENT
Definition: UefiBaseType.h:37
EFI_KEY_TOGGLE_STATE KeyToggleState
UINT32 KeyShiftState
EFI_INPUT_KEY Key
EFI_KEY_STATE KeyState
Definition: Base.h:213