]> git.proxmox.com Git - mirror_edk2.git/blob - EdkCompatibilityPkg/Compatibility/FrameworkHiiToUefiHiiThunk/Utility.h
d6b758d140c850b520328c3ba1dd7b27b5760cff
[mirror_edk2.git] / EdkCompatibilityPkg / Compatibility / FrameworkHiiToUefiHiiThunk / Utility.h
1 /**@file
2
3 This file contains utility functions by HII Thunk Modules.
4
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
10
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.
13
14 **/
15
16 #ifndef _HII_THUNK_UTILITY_H
17 #define _HII_THUNK_UTILITY_H
18
19 EFI_GUID *
20 GetGuidOfFirstFormset (
21 CONST EFI_HII_FORM_PACKAGE * FormPackage
22 );
23
24 /**
25 Find the UefiHiiHandle based on a Framework HII Handle returned by
26 the HII Thunk to Framework HII code.
27
28 @param Private The pointer to the private data of Hii Thunk.
29 @param FwHiiHandle Framework HII Handle returned by the HII Thunk to Framework HII code.
30
31 @retval NULL If Framework HII Handle passed in does not have matching UEFI HII handle.
32 @retval !NULL If the match is found.
33
34 **/
35 EFI_HII_HANDLE
36 FwHiiHandleToUefiHiiHandle (
37 IN CONST HII_THUNK_PRIVATE_DATA *Private,
38 IN FRAMEWORK_EFI_HII_HANDLE FwHiiHandle
39 )
40 ;
41
42 HII_THUNK_CONTEXT *
43 FwHiiHandleToThunkContext (
44 IN CONST HII_THUNK_PRIVATE_DATA *Private,
45 IN FRAMEWORK_EFI_HII_HANDLE FwHiiHandle
46 )
47 ;
48
49 HII_THUNK_CONTEXT *
50 UefiHiiHandleToThunkContext (
51 IN CONST HII_THUNK_PRIVATE_DATA *Private,
52 IN EFI_HII_HANDLE UefiHiiHandle
53 )
54 ;
55
56 EFI_HII_HANDLE *
57 TagGuidToUefiHiiHandle (
58 IN CONST HII_THUNK_PRIVATE_DATA *Private,
59 IN CONST EFI_GUID *Guid
60 )
61 ;
62
63 EFI_STATUS
64 AssignFrameworkHiiHandle (
65 IN OUT HII_THUNK_PRIVATE_DATA *Private,
66 IN BOOLEAN FromFwHiiNewPack,
67 OUT FRAMEWORK_EFI_HII_HANDLE *Handle
68 )
69 ;
70
71 HII_THUNK_CONTEXT *
72 CreateThunkContextForUefiHiiHandle (
73 IN EFI_HII_HANDLE UefiHiiHandle
74 )
75 ;
76
77 VOID
78 DestroyThunkContextForUefiHiiHandle (
79 IN HII_THUNK_PRIVATE_DATA *Private,
80 IN EFI_HII_HANDLE UefiHiiHandle
81 )
82 ;
83
84 UINTN
85 GetPackageCountByType (
86 IN CONST EFI_HII_PACKAGE_LIST_HEADER *PackageListHeader,
87 IN UINT8 PackageType
88 )
89 ;
90
91 EFI_STATUS
92 CreateQuestionIdMap (
93 IN OUT HII_THUNK_CONTEXT *ThunkContext
94 )
95 ;
96
97 LIST_ENTRY *
98 GetMapEntryListHead (
99 IN CONST HII_THUNK_CONTEXT *ThunkContext,
100 IN UINT16 VarStoreId
101 )
102 ;
103
104 HII_THUNK_CONTEXT *
105 CreateThunkContext (
106 IN HII_THUNK_PRIVATE_DATA *Private,
107 IN UINTN StringPackageCount,
108 IN UINTN IfrPackageCount
109 )
110 ;
111
112 VOID
113 DestroyThunkContext (
114 IN HII_THUNK_CONTEXT *ThunkContext
115 )
116 ;
117
118 VOID
119 DestroyQuestionIdMap (
120 IN LIST_ENTRY *QuestionIdMapListHead
121 )
122 ;
123
124
125 VOID
126 DestoryOneOfOptionMap (
127 IN LIST_ENTRY *OneOfOptionMapListHead
128 )
129 ;
130
131 #endif