/** @file\r
Header file for Terminal driver.\r
\r
-Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
Copyright (C) 2016 Silicon Graphics, Inc. All rights reserved.<BR>\r
-This program and the accompanying materials\r
-are licensed and made available under the terms and conditions of the BSD License\r
-which accompanies this distribution. The full text of the license may be found at\r
-http://opensource.org/licenses/bsd-license.php\r
-\r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
**/\r
\r
@param This Protocol instance pointer.\r
@param KeyData A pointer to a buffer that is filled in with the\r
keystroke information data for the key that was\r
- pressed.\r
+ pressed. If KeyData.Key, KeyData.KeyState.KeyToggleState\r
+ and KeyData.KeyState.KeyShiftState are 0, then any incomplete\r
+ keystroke will trigger a notification of the KeyNotificationFunction.\r
@param KeyNotificationFunction Points to the function to be called when the key\r
- sequence is typed specified by KeyData.\r
+ sequence is typed specified by KeyData. This notification function\r
+ should be called at <=TPL_CALLBACK.\r
@param NotifyHandle Points to the unique handle assigned to the\r
registered notification.\r
\r
\r
/**\r
Remove one pre-fetched key out of the Unicode FIFO buffer.\r
- The caller should guarantee that Unicode FIFO buffer is not empty \r
+ The caller should guarantee that Unicode FIFO buffer is not empty\r
by IsUnicodeFiFoEmpty ().\r
\r
@param TerminalDevice Terminal driver private structure.\r
TERMINAL_DEV *TerminalDevice\r
);\r
\r
-/**\r
- Count Unicode FIFO buffer.\r
-\r
- @param TerminalDevice Terminal driver private structure\r
-\r
- @return The count in bytes of Unicode FIFO.\r
-\r
-**/\r
-UINT8\r
-UnicodeFiFoGetKeyCount (\r
- TERMINAL_DEV *TerminalDevice\r
- );\r
\r
/**\r
Translate raw data into Unicode (according to different encode), and\r
Translate one Unicode character into VT-UTF8 characters.\r
\r
UTF8 Encoding Table\r
- Bits per Character | Unicode Character Range | Unicode Binary Encoding | UTF8 Binary Encoding\r
- 0-7 | 0x0000 - 0x007F | 00000000 0xxxxxxx | 0xxxxxxx\r
- 8-11 | 0x0080 - 0x07FF | 00000xxx xxxxxxxx | 110xxxxx 10xxxxxx\r
- 12-16 | 0x0800 - 0xFFFF | xxxxxxxx xxxxxxxx | 1110xxxx 10xxxxxx 10xxxxxx\r
+ Bits per Character | Unicode Character Range | Unicode Binary Encoding | UTF8 Binary Encoding\r
+ 0-7 | 0x0000 - 0x007F | 00000000 0xxxxxxx | 0xxxxxxx\r
+ 8-11 | 0x0080 - 0x07FF | 00000xxx xxxxxxxx | 110xxxxx 10xxxxxx\r
+ 12-16 | 0x0800 - 0xFFFF | xxxxxxxx xxxxxxxx | 1110xxxx 10xxxxxx 10xxxxxx\r
\r
\r
@param Unicode Unicode character need translating.\r
Translate VT-UTF8 characters into one Unicode character.\r
\r
UTF8 Encoding Table\r
- Bits per Character | Unicode Character Range | Unicode Binary Encoding | UTF8 Binary Encoding\r
- 0-7 | 0x0000 - 0x007F | 00000000 0xxxxxxx | 0xxxxxxx\r
- 8-11 | 0x0080 - 0x07FF | 00000xxx xxxxxxxx | 110xxxxx 10xxxxxx\r
- 12-16 | 0x0800 - 0xFFFF | xxxxxxxx xxxxxxxx | 1110xxxx 10xxxxxx 10xxxxxx\r
+ Bits per Character | Unicode Character Range | Unicode Binary Encoding | UTF8 Binary Encoding\r
+ 0-7 | 0x0000 - 0x007F | 00000000 0xxxxxxx | 0xxxxxxx\r
+ 8-11 | 0x0080 - 0x07FF | 00000xxx xxxxxxxx | 110xxxxx 10xxxxxx\r
+ 12-16 | 0x0800 - 0xFFFF | xxxxxxxx xxxxxxxx | 1110xxxx 10xxxxxx 10xxxxxx\r
\r
\r
@param Utf8Char VT-UTF8 character set needs translating.\r