]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Library/HiiLib.h
edk2/MdePkg/Include/Ia32/ProcessorBind.h:
[mirror_edk2.git] / MdePkg / Include / Library / HiiLib.h
index ba22b01db7521f568896c17f3677a86f3dec3763..9bad5b47761a24b932d7c1e29aa0f9e0536830fa 100644 (file)
 #ifndef __HII_LIB_H__\r
 #define __HII_LIB_H__\r
 \r
-//\r
-// Limited buffer size recommended by RFC4646 (4.3.  Length Considerations)\r
-// (42 characters plus a NULL terminator)\r
-//\r
+///\r
+/// Limited buffer size recommended by RFC4646 (4.3.  Length Considerations)\r
+/// (42 characters plus a NULL terminator)\r
+///\r
 #define RFC_3066_ENTRY_SIZE             (42 + 1)\r
 \r
 #define ISO_639_2_ENTRY_SIZE            3\r
@@ -90,8 +90,6 @@ HiiLibAddPackages (
   @param  HiiHandle                The handle that was previously registered to the data base that is requested for removal.\r
                                              List later.\r
 \r
-  @return  VOID\r
-\r
 **/\r
 VOID\r
 EFIAPI\r
@@ -157,8 +155,8 @@ HiiLibSetString (
   This function try to retrieve string from String package of current language.\r
   If fails, it try to retrieve string from String package of first language it support.\r
 \r
-  If String is NULL, then ASSERT.\r
   If StringSize is NULL, then ASSERT.\r
+  If String is NULL and *StringSize is not 0, then ASSERT.\r
   If PackageList could not be found in the default HII database, then ASSERT.\r
   If StringId is not found in PackageList, then ASSERT.\r
 \r
@@ -175,7 +173,6 @@ HiiLibSetString (
   @retval EFI_NOT_FOUND          The string specified by StringId is not available.\r
   @retval EFI_BUFFER_TOO_SMALL   The buffer specified by StringLength is too small\r
                                  to hold the string.\r
-  @retval EFI_INVALID_PARAMETER  The String or StringSize was NULL.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -405,6 +402,43 @@ HiiLibGetSupportedLanguageNumber (
   )\r
 ;\r
 \r
+/**\r
+  Exports the contents of one or all package lists in the HII database into a buffer.\r
+\r
+  If Handle is not NULL and not a valid EFI_HII_HANDLE registered in the database, \r
+  then ASSERT.\r
+  If PackageListHeader is NULL, then ASSERT.\r
+  If PackageListSize is NULL, then ASSERT.\r
+\r
+  @param  Handle                 The HII Handle.\r
+  @param  PackageListHeader      A pointer to a buffer that will contain the results of \r
+                                 the export function.\r
+  @param  PackageListSize        On output, the length of the buffer that is required for the exported data.\r
+\r
+  @retval EFI_SUCCESS            Package exported.\r
+\r
+  @retval EFI_OUT_OF_RESOURCES   Not enought memory to complete the operations.\r
+\r
+**/\r
+EFI_STATUS \r
+EFIAPI\r
+HiiLibExportPackageLists (\r
+  IN EFI_HII_HANDLE                    Handle,\r
+  OUT EFI_HII_PACKAGE_LIST_HEADER      **PackageListHeader,\r
+  OUT UINTN                            *PackageListSize\r
+  )\r
+;\r
+\r
+EFI_STATUS\r
+EFIAPI\r
+HiiLibListPackageLists (\r
+  IN        UINT8                     PackageType,\r
+  IN CONST  EFI_GUID                  *PackageGuid,\r
+  IN OUT    UINTN                     *HandleBufferLength,\r
+  OUT       EFI_HII_HANDLE            **Handle\r
+  )\r
+;\r
+\r
 /**\r
   Convert language code from RFC3066 to ISO639-2.\r
 \r