]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabase.h
1. Update the implementation of HII ConfigRouting Protocol in HiiDataBase module...
[mirror_edk2.git] / MdeModulePkg / Universal / HiiDatabaseDxe / HiiDatabase.h
index 62c5b2d7afcd87561dd6c126c7059336042e882c..5d10d46a8c2cb34130c794e7ee2c78dfa6f9ee8a 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
 Private structures definitions in HiiDatabase.\r
 \r
-Copyright (c) 2007 - 2008, Intel Corporation\r
+Copyright (c) 2007 - 2009, Intel Corporation\r
 All rights reserved. This program and the accompanying materials\r
 are licensed and made available under the terms and conditions of the BSD License\r
 which accompanies this distribution.  The full text of the license may be found at\r
@@ -17,7 +17,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 \r
 #include <Uefi.h>\r
 \r
-#include <Protocol/ConsoleControl.h>\r
 #include <Protocol/DevicePath.h>\r
 #include <Protocol/HiiFont.h>\r
 #include <Protocol/HiiImage.h>\r
@@ -28,6 +27,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #include <Protocol/SimpleTextOut.h>\r
 \r
 #include <Guid/HiiKeyBoardLayout.h>\r
+#include <Guid/GlobalVariable.h>\r
 \r
 \r
 #include <Library/DebugLib.h>\r
@@ -37,10 +37,10 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #include <Library/BaseLib.h>\r
 #include <Library/DevicePathLib.h>\r
 #include <Library/MemoryAllocationLib.h>\r
-#include <Library/IfrSupportLib.h>\r
 #include <Library/UefiLib.h>\r
 #include <Library/PcdLib.h>\r
 #include <Library/UefiRuntimeServicesTableLib.h>\r
+#include <Library/PrintLib.h>\r
 \r
 \r
 #define HII_DATABASE_NOTIFY_GUID \\r
@@ -62,6 +62,37 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #define BITMAP_LEN_8_BIT(Width, Height)  ((Width) * (Height))\r
 #define BITMAP_LEN_24_BIT(Width, Height) ((Width) * (Height) * 3)\r
 \r
+//\r
+// IFR data structure\r
+//\r
+// BASE_CR (a, IFR_DEFAULT_VALUE_DATA, Entry) to get the whole structure.\r
+\r
+typedef struct {\r
+  LIST_ENTRY          Entry;             // Link to VarStorage\r
+  EFI_GUID            Guid;\r
+  CHAR16              *Name;\r
+  EFI_VARSTORE_ID     VarStoreId;\r
+  UINT16              Size;\r
+  LIST_ENTRY          BlockEntry;        // Link to its Block array\r
+} IFR_VARSTORAGE_DATA;\r
+\r
+typedef struct {\r
+  LIST_ENTRY          Entry;             // Link to Block array\r
+  UINT16              Offset;\r
+  UINT16              Width;\r
+  EFI_QUESTION_ID     QuestionId;\r
+  UINT8               OpCode;\r
+  UINT8               Scope;\r
+  LIST_ENTRY          DefaultValueEntry; // Link to its default value array\r
+} IFR_BLOCK_DATA;\r
+\r
+typedef struct {\r
+  LIST_ENTRY          Entry;\r
+  EFI_STRING_ID       DefaultName;\r
+  UINT16              DefaultId;\r
+  UINT64              Value;\r
+} IFR_DEFAULT_DATA;\r
+\r
 //\r
 // Storage types\r
 //\r
@@ -83,8 +114,6 @@ typedef struct {
   UINT16              Size;\r
 } HII_FORMSET_STORAGE;\r
 \r
-#define HII_FORMSET_STORAGE_FROM_LINK(a)  CR (a, HII_FORMSET_STORAGE, Link, HII_FORMSET_STORAGE_SIGNATURE)\r
-\r
 \r
 //\r
 // String Package definitions\r
@@ -1687,12 +1716,8 @@ HiiGetAltCfg (
   OUT EFI_STRING                               *AltCfgResp\r
   );\r
 \r
-\r
 //\r
 // Global variables\r
 //\r
 extern EFI_EVENT gHiiKeyboardLayoutChanged;\r
-\r
-#include "R8Lib.h"\r
-\r
 #endif\r