]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkCompatibilityPkg/Foundation/Efi/Protocol/HiiString/HiiString.h
Sync all bug fixes between EDK1.04 and EDK1.06 into EdkCompatibilityPkg.
[mirror_edk2.git] / EdkCompatibilityPkg / Foundation / Efi / Protocol / HiiString / HiiString.h
index c243d9e6802fc93d052f7f8988a9e350dc0dcc76..0c27218b38db14481eba65ad5486678eb71eadcb 100644 (file)
@@ -1,6 +1,6 @@
 /*++\r
 \r
-Copyright (c) 2007, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2007 - 2010, Intel Corporation. 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
@@ -54,6 +54,8 @@ EFI_STATUS
   Routine Description:\r
     This function adds the string String to the group of strings owned by PackageList, with the\r
     specified font information StringFontInfo and returns a new string id.                         \r
+    The new string identifier is guaranteed to be unique within the package list. \r
+    That new string identifier is reserved for all languages in the package list. \r
     \r
   Arguments:          \r
     This              - A pointer to the EFI_HII_STRING_PROTOCOL instance.\r
@@ -104,13 +106,19 @@ EFI_STATUS
     String            - Points to the new null-terminated string.            \r
     StringSize        - On entry, points to the size of the buffer pointed to by \r
                         String, in bytes. On return,\r
-                        points to the length of the string, in bytes.                                                                                             \r
-    StringFontInfo    - If not NULL, points to the string's font information. \r
-                        It's caller's responsibility to free this buffer.\r
+                        points to the length of the string, in bytes.\r
+    StringFontInfo    - Points to a buffer that will be callee allocated and will \r
+                        have the string's font information into this buffer.  \r
+                        The caller is responsible for freeing this buffer.  \r
+                        If the parameter is NULL a buffer will not be allocated \r
+                        and the string font information will not be returned.\r
 \r
   Returns:\r
     EFI_SUCCESS            - The string was returned successfully.\r
     EFI_NOT_FOUND          - The string specified by StringId is not available.\r
+                             The specified PackageList is not in the database.\r
+    EFI_INVALID_LANGUAGE   - The string specified by StringId is available but\r
+                             not in the specified language.                             \r
     EFI_BUFFER_TOO_SMALL   - The buffer specified by StringSize is too small to \r
                              hold the string.                                                      \r
     EFI_INVALID_PARAMETER  - The String or Language or StringSize was NULL.\r
@@ -147,7 +155,8 @@ EFI_STATUS
 \r
   Returns:\r
     EFI_SUCCESS            - The string was updated successfully.\r
-    EFI_NOT_FOUND          - The string specified by StringId is not in the database.    \r
+    EFI_NOT_FOUND          - The string specified by StringId is not in the database.\r
+                             The specified PackageList is not in the database.\r
     EFI_INVALID_PARAMETER  - The String or Language was NULL.\r
     EFI_OUT_OF_RESOURCES   - The system is out of resources to accomplish the task.\r
     \r
@@ -182,6 +191,7 @@ EFI_STATUS
     EFI_BUFFER_TOO_SMALL   - The LanguagesSize is too small to hold the list of \r
                              supported languages. LanguageSize is updated to\r
                              contain the required size.\r
+    EFI_NOT_FOUND          - The specified PackageList is not in the database.\r
     \r
 --*/\r
 ;\r
@@ -220,9 +230,12 @@ EFI_STATUS
     EFI_BUFFER_TOO_SMALL   - The buffer specified by SecondLanguagesSize is   \r
                              too small to hold the returned information.      \r
                              SecondLanguageSize is updated to hold the size of\r
-                             the buffer required.                             \r
-                             \r
---*/                         \r
+                             the buffer required.\r
+    EFI_INVALID_LANGUAGE   - The language specified by FirstLanguage is not\r
+                             present in the specified package list.\r
+    EFI_NOT_FOUND          - The specified PackageList is not in the Database.    \r
+    \r
+--*/\r
 ;\r
 //\r
 // Interface structure for the EFI_HII_STRING_PROTOCOL\r