summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorqwang12 <qwang12@6f19259b-4bc3-4df7-8a09-765794883524>2008-09-24 12:38:21 +0000
committerqwang12 <qwang12@6f19259b-4bc3-4df7-8a09-765794883524>2008-09-24 12:38:21 +0000
commitc4a00638d8d9133dcef7cd6aea7cb6fe52ce8187 (patch)
treef390542d28359719941b9010e50fa79b4e9bf05c
parent28ca72bc97766a314ea94c7749c6e73f067c57d6 (diff)
downloadedk2-platforms-c4a00638d8d9133dcef7cd6aea7cb6fe52ce8187.tar.xz
Update function comments HiiLibListPackageLists
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5961 6f19259b-4bc3-4df7-8a09-765794883524
-rw-r--r--MdePkg/Library/HiiLib/HiiLib.c46
1 files changed, 44 insertions, 2 deletions
diff --git a/MdePkg/Library/HiiLib/HiiLib.c b/MdePkg/Library/HiiLib/HiiLib.c
index cee31b20ae..b98b360450 100644
--- a/MdePkg/Library/HiiLib/HiiLib.c
+++ b/MdePkg/Library/HiiLib/HiiLib.c
@@ -573,13 +573,49 @@ HiiLibExportPackageLists (
return Status;
}
+/**
+
+ This function returns a list of the package handles of the
+ specified type that are currently active in the HII database. The
+ pseudo-type EFI_HII_PACKAGE_TYPE_ALL will cause all package
+ handles to be listed.
+ If HandleBufferLength is NULL, then ASSERT.
+ If HandleBuffer is NULL, the ASSERT.
+ If PackageType is EFI_HII_PACKAGE_TYPE_GUID and PackageGuid is
+ NULL, then ASSERT.
+ If PackageType is not EFI_HII_PACKAGE_TYPE_GUID and PackageGuid is not
+ NULL, then ASSERT.
+
+
+ @param PackageType Specifies the package type of the packages
+ to list or EFI_HII_PACKAGE_TYPE_ALL for
+ all packages to be listed.
+
+ @param PackageGuid If PackageType is
+ EFI_HII_PACKAGE_TYPE_GUID, then this is
+ the pointer to the GUID which must match
+ the Guid field of
+ EFI_HII_PACKAGE_GUID_HEADER. Otherwise, it
+ must be NULL.
+
+ @param HandleBufferLength On output, the length of the handle buffer
+ that is required for the handles found.
+
+ @param HandleBuffer On output, an array of EFI_HII_HANDLE instances returned.
+ The caller is responcible to free this pointer allocated.
+
+ @retval EFI_SUCCESS The matching handles are outputed successfully.
+ HandleBufferLength is updated with the actual length.
+ @retval EFI_OUT_OF_RESOURCES Not enough resource to complete the operation.
+ @retval EFI_NOT_FOUND No matching handle could not be found in database.
+**/
EFI_STATUS
EFIAPI
HiiLibListPackageLists (
IN UINT8 PackageType,
IN CONST EFI_GUID *PackageGuid,
- IN OUT UINTN *HandleBufferLength,
+ OUT UINTN *HandleBufferLength,
OUT EFI_HII_HANDLE **HandleBuffer
)
{
@@ -591,6 +627,12 @@ HiiLibListPackageLists (
*HandleBufferLength = 0;
*HandleBuffer = NULL;
+ if (PackageType == EFI_HII_PACKAGE_TYPE_GUID) {
+ ASSERT (PackageGuid != NULL);
+ } else {
+ ASSERT (PackageGuid == NULL);
+ }
+
Status = mHiiDatabaseProt->ListPackageLists (
mHiiDatabaseProt,
PackageType,
@@ -600,7 +642,7 @@ HiiLibListPackageLists (
);
if (EFI_ERROR (Status) && (Status != EFI_BUFFER_TOO_SMALL)) {
//
- // No packages is registered to UEFI HII Database, just return EFI_SUCCESS.
+ // No packages is registered to UEFI HII Database, just return.
//
//
return Status;