3 This file contains utility functions by HII Thunk Modules.
5 Copyright (c) 2006 - 2008, Intel Corporation
6 All rights reserved. This program and the accompanying materials
7 are licensed and made available under the terms and conditions of the BSD License
8 which accompanies this distribution. The full text of the license may be found at
9 http://opensource.org/licenses/bsd-license.php
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
16 #ifndef _HII_THUNK_UTILITY_H
17 #define _HII_THUNK_UTILITY_H
20 Find the UefiHiiHandle based on a Framework HII Handle returned by
21 the HII Thunk to Framework HII code.
23 @param Private The pointer to the private data of Hii Thunk.
24 @param FwHiiHandle Framework HII Handle returned by the HII Thunk to Framework HII code.
26 @retval NULL If Framework HII Handle passed in does not have matching UEFI HII handle.
27 @retval !NULL If the match is found.
31 FwHiiHandleToUefiHiiHandle (
32 IN CONST HII_THUNK_PRIVATE_DATA
*Private
,
33 IN FRAMEWORK_EFI_HII_HANDLE FwHiiHandle
37 FwHiiHandleToThunkContext (
38 IN CONST HII_THUNK_PRIVATE_DATA
*Private
,
39 IN FRAMEWORK_EFI_HII_HANDLE FwHiiHandle
43 UefiHiiHandleToThunkContext (
44 IN CONST HII_THUNK_PRIVATE_DATA
*Private
,
45 IN EFI_HII_HANDLE UefiHiiHandle
49 TagGuidToIfrPackThunkContext (
50 IN CONST HII_THUNK_PRIVATE_DATA
*Private
,
51 IN CONST EFI_GUID
*Guid
55 CreateThunkContextForUefiHiiHandle (
56 IN EFI_HII_HANDLE UefiHiiHandle
60 DestroyThunkContextForUefiHiiHandle (
61 IN HII_THUNK_PRIVATE_DATA
*Private
,
62 IN EFI_HII_HANDLE UefiHiiHandle
66 GetPackageCountByType (
67 IN CONST EFI_HII_PACKAGE_LIST_HEADER
*PackageListHeader
,
73 IN OUT HII_THUNK_CONTEXT
*ThunkContext
77 GetAttributesOfFirstFormSet (
78 IN OUT HII_THUNK_CONTEXT
*ThunkContext
83 IN CONST HII_THUNK_CONTEXT
*ThunkContext
,
89 IN HII_THUNK_PRIVATE_DATA
*Private
,
90 IN UINTN StringPackageCount
,
91 IN UINTN IfrPackageCount
96 IN HII_THUNK_CONTEXT
*ThunkContext
100 DestoryOneOfOptionMap (
101 IN LIST_ENTRY
*OneOfOptionMapListHead
106 IN EFI_HII_PACKAGE_HEADER
*Package
,
107 OUT EFI_GUID
*FormSetGuid
111 EFI_HII_PACKAGE_HEADER
*
113 IN CONST EFI_HII_PACKAGES
*Packages
117 FORM_BROWSER_FORMSET
*
119 IN EFI_HII_HANDLE UefiHiiHandle