| /*++ | |
| Copyright (c) 2004 - 2010, Intel Corporation. All rights reserved.<BR> | |
| 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_ |