X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=EdkCompatibilityPkg%2FSample%2FTools%2FSource%2FHiiPack%2FIfrParse.h;fp=EdkCompatibilityPkg%2FSample%2FTools%2FSource%2FHiiPack%2FIfrParse.h;h=6a2a597b33ced340000f4bd743686963edf6d867;hp=0000000000000000000000000000000000000000;hb=3e99020dbf0a159e34b84e7ae9125f2e368d5390;hpb=68bb5ce77e51cf35791e46f2202e36da97e5e6be diff --git a/EdkCompatibilityPkg/Sample/Tools/Source/HiiPack/IfrParse.h b/EdkCompatibilityPkg/Sample/Tools/Source/HiiPack/IfrParse.h new file mode 100644 index 0000000000..6a2a597b33 --- /dev/null +++ b/EdkCompatibilityPkg/Sample/Tools/Source/HiiPack/IfrParse.h @@ -0,0 +1,267 @@ +/*++ + +Copyright (c) 2004 - 2010, Intel Corporation. All rights reserved.
+This program and the accompanying materials +are licensed and made available under the terms and conditions of the BSD License +which accompanies this distribution. The full text of the license may be found at +http://opensource.org/licenses/bsd-license.php + +THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + +Module Name: + + IfrParse.h + +Abstract: + + Prototypes and defines for the IFR parsing services. + +--*/ + +#ifndef _IFR_PARSE_H_ +#define _IFR_PARSE_H_ + +#define DEFAULT_HII_PACK_FILENAME_EXTENSION ".hpk" +// +// When we parse IFR, we'll keep the IFR in a linked list of +// these. +// +typedef struct _IFR_PARSE_ENTRY { + struct _IFR_PARSE_ENTRY *Next; + int Tag; // for debugging + EFI_IFR_OP_HEADER *RawIfrHeader; + // + // GUIDs for variable storage + // + EFI_GUID *VarStoreGuid1; + char *VarStoreName1; + EFI_GUID *VarStoreGuid2; + char *VarStoreName2; +} IFR_PARSE_ENTRY; + +typedef struct _IFR_PARSE_CONTEXT { + struct _IFR_PARSE_CONTEXT *Next; + EFI_HII_IFR_PACK *PackHeader; + char *IfrBufferStart; + char *CurrentPos; + long IfrBufferLen; + int Handle; + IFR_PARSE_ENTRY *Ifr; + IFR_PARSE_ENTRY *LastIfr; + IFR_PARSE_ENTRY *CurrentIfr; + FILE *OutFptr; + CHAR16 *Language; + EFI_GUID *FormsetGuid; + EFI_GUID NullGuid; // for use until we set the Guid field correctly + EFI_GUID PackageGuid; // from the PackageGuid in the HII data table +} IFR_PARSE_CONTEXT; + +STATUS +IfrGetVarPack ( + int VarIndex, + EFI_HII_VARIABLE_PACK **VarPack + ) +/*++ + +Routine Description: + + GC_TODO: Add function description + +Arguments: + + VarIndex - GC_TODO: add argument description + VarPack - GC_TODO: add argument description + +Returns: + + GC_TODO: add return values + +--*/ +; + +STATUS +IfrParsePack ( + int Handle, + EFI_HII_IFR_PACK *PackHeader, + EFI_GUID *PackageGuid + ) +/*++ + +Routine Description: + + GC_TODO: Add function description + +Arguments: + + Handle - GC_TODO: add argument description + PackHeader - GC_TODO: add argument description + PackageGuid - GC_TODO: add argument description + +Returns: + + GC_TODO: add return values + +--*/ +; + +STATUS +IfrParseCheck ( + char *Buffer, + long BufferSize + ) +/*++ + +Routine Description: + + GC_TODO: Add function description + +Arguments: + + Buffer - GC_TODO: add argument description + BufferSize - GC_TODO: add argument description + +Returns: + + GC_TODO: add return values + +--*/ +; + +STATUS +IfrParseInit ( + VOID + ) +/*++ + +Routine Description: + + GC_TODO: Add function description + +Arguments: + + None + +Returns: + + GC_TODO: add return values + +--*/ +; + +STATUS +IfrParseEnd ( + VOID + ) +/*++ + +Routine Description: + + GC_TODO: Add function description + +Arguments: + + None + +Returns: + + GC_TODO: add return values + +--*/ +; + +STATUS +IfrParseDump ( + int Handle, + CHAR16 *Language, + FILE *OutFptr + ) +/*++ + +Routine Description: + + GC_TODO: Add function description + +Arguments: + + Handle - GC_TODO: add argument description + Language - GC_TODO: add argument description + OutFptr - GC_TODO: add argument description + +Returns: + + GC_TODO: add return values + +--*/ +; + +STATUS +IfrSetDefaults ( + int MfgDefaults + ) +/*++ + +Routine Description: + + GC_TODO: Add function description + +Arguments: + + MfgDefaults - GC_TODO: add argument description + +Returns: + + GC_TODO: add return values + +--*/ +; + +STATUS +IfrGetIfrPack ( + int Handle, + EFI_HII_IFR_PACK **PackHeader, + EFI_GUID *FormsetGuid + ) +/*++ + +Routine Description: + + GC_TODO: Add function description + +Arguments: + + Handle - GC_TODO: add argument description + PackHeader - GC_TODO: add argument description + FormsetGuid - GC_TODO: add argument description + +Returns: + + GC_TODO: add return values + +--*/ +; + +STATUS +IfrReferencesVarPack ( + int IfrHandle, + EFI_HII_VARIABLE_PACK *VarPack + ) +/*++ + +Routine Description: + + GC_TODO: Add function description + +Arguments: + + IfrHandle - GC_TODO: add argument description + VarPack - GC_TODO: add argument description + +Returns: + + GC_TODO: add return values + +--*/ +; + +#endif // #ifndef _IFR_PARSE_H_