diff options
author | qwang12 <qwang12@6f19259b-4bc3-4df7-8a09-765794883524> | 2008-06-23 09:38:38 +0000 |
---|---|---|
committer | qwang12 <qwang12@6f19259b-4bc3-4df7-8a09-765794883524> | 2008-06-23 09:38:38 +0000 |
commit | 54cf87805f9ad61a316ce9e4eb9c67154c87cf0b (patch) | |
tree | 9a1aabb960f1530e0371bd18ef4391cfdffb0a55 /MdePkg/Include/Library | |
parent | 9a2d4fe9a7650097e5ef27366efbf3a14326f5b5 (diff) | |
download | edk2-platforms-54cf87805f9ad61a316ce9e4eb9c67154c87cf0b.tar.xz |
Merged in the following trackers from EDK:
EDK1145 Cursor mising in shell in some case
EDK1099: Dell - [HII] HiiGetFontInfo() not retrieve the system font by FoFontInfoMask
EDK1127: [UEFI 2.10] Keyboard layout support
EDK1129: [UEFI HII] GUID is represented wrongly in Config String
And some other fixes such as
*[UEFI HII] HiiGetAltCfg is generating "Name=" sub string in the wrong format
*UEFI HII: GetUnicodeStringTextOrSize() doesn't handle NULL StringDest properly
*GetFontInfo() need be updated to avoid iteration
*HIIStringProtocolTest failed on multiple platform
*[Uefi 2.1] Comply with latest Hii ECR
* GetFontInfo() need be updated to avoid iteration
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5360 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'MdePkg/Include/Library')
-rw-r--r-- | MdePkg/Include/Library/IfrSupportLib.h | 64 |
1 files changed, 63 insertions, 1 deletions
diff --git a/MdePkg/Include/Library/IfrSupportLib.h b/MdePkg/Include/Library/IfrSupportLib.h index b8d3183e87..fbfb676f89 100644 --- a/MdePkg/Include/Library/IfrSupportLib.h +++ b/MdePkg/Include/Library/IfrSupportLib.h @@ -2,7 +2,7 @@ The file contain all library functions and definitions for IFR opcode creation and related Form Browser utility Operations. - Copyright (c) 2007, Intel Corporation + Copyright (c) 2007 - 2008, Intel Corporation All rights reserved. This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at @@ -423,6 +423,20 @@ CreateStringOpCode ( ; /** + Converts the unicode character of the string from uppercase to lowercase. + + @param Str String to be converted + + @retval VOID + +**/ +VOID +ToLower ( + IN OUT CHAR16 *Str + ) +; + +/** Converts binary buffer to Unicode string in reversed byte order to BufToHexString(). @param Str String for output @@ -465,6 +479,54 @@ HexStringToBuffer ( ; /** + Convert binary representation Config string (e.g. "0041004200430044") to the + original string (e.g. "ABCD"). Config string appears in <ConfigHdr> (i.e. + "&NAME=<string>"), or Name/Value pair in <ConfigBody> (i.e. "label=<string>"). + + @param UnicodeString Original Unicode string. + @param StrBufferLen On input: Length in bytes of buffer to hold the Unicode string. + Includes tailing '\0' character. + On output: + If return EFI_SUCCESS, containing length of Unicode string buffer. + If return EFI_BUFFER_TOO_SMALL, containg length of string buffer desired. + @param ConfigString Binary representation of Unicode String, <string> := (<HexCh>4)+ + + @retval EFI_SUCCESS Routine success. + @retval EFI_BUFFER_TOO_SMALL The string buffer is too small. + +**/EFI_STATUS +ConfigStringToUnicode ( + IN OUT CHAR16 *UnicodeString, + IN OUT UINTN *StrBufferLen, + IN CHAR16 *ConfigString + ) +; + +/** + Convert Unicode string to binary representation Config string, e.g. + "ABCD" => "0041004200430044". Config string appears in <ConfigHdr> (i.e. + "&NAME=<string>"), or Name/Value pair in <ConfigBody> (i.e. "label=<string>"). + + @param ConfigString Binary representation of Unicode String, <string> := (<HexCh>4)+ + @param StrBufferLen On input: Length in bytes of buffer to hold the Unicode string. + Includes tailing '\0' character. + On output: + If return EFI_SUCCESS, containing length of Unicode string buffer. + If return EFI_BUFFER_TOO_SMALL, containg length of string buffer desired. + @param UnicodeString Original Unicode string. + + @retval EFI_SUCCESS Routine success. + @retval EFI_BUFFER_TOO_SMALL The string buffer is too small. + +**/EFI_STATUS +UnicodeToConfigString ( + IN OUT CHAR16 *ConfigString, + IN OUT UINTN *StrBufferLen, + IN CHAR16 *UnicodeString + ) +; + +/** Construct <ConfigHdr> using routing information GUID/NAME/PATH. @param ConfigHdr Pointer to the ConfigHdr string. |