]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/C/VfrCompile/VfrUtilityLib.h
Sync BaseTools Branch (version r2271) to EDKII main trunk.
[mirror_edk2.git] / BaseTools / Source / C / VfrCompile / VfrUtilityLib.h
index b921115b0a5aeccdc2aca21f2a79152bd05876b1..9facce81499a91c7d9c761ab465d95578c051089 100644 (file)
@@ -175,7 +175,7 @@ private:
   VOID RegisterNewType (IN SVfrDataType *);\r
 \r
   EFI_VFR_RETURN_CODE ExtractStructTypeName (IN CHAR8 *&, OUT CHAR8 *);\r
-  EFI_VFR_RETURN_CODE GetTypeField (IN CHAR8 *, IN SVfrDataType *, IN SVfrDataField *&);\r
+  EFI_VFR_RETURN_CODE GetTypeField (IN CONST CHAR8 *, IN SVfrDataType *, IN SVfrDataField *&);\r
   EFI_VFR_RETURN_CODE GetFieldOffset (IN SVfrDataField *, IN UINT32, OUT UINT32 &);\r
   UINT8               GetFieldWidth (IN SVfrDataField *);\r
   UINT32              GetFieldSize (IN SVfrDataField *, IN UINT32);\r
@@ -359,6 +359,7 @@ public:
   VOID                RegisterNewDateQuestion (IN CHAR8 *, IN CHAR8 *, IN OUT EFI_QUESTION_ID &);\r
   VOID                RegisterOldTimeQuestion (IN CHAR8 *, IN CHAR8 *, IN CHAR8 *, IN OUT EFI_QUESTION_ID &);\r
   VOID                RegisterNewTimeQuestion (IN CHAR8 *, IN CHAR8 *, IN OUT EFI_QUESTION_ID &);\r
+  VOID                RegisterRefQuestion (IN CHAR8 *, IN CHAR8 *, IN OUT EFI_QUESTION_ID &);  \r
   EFI_VFR_RETURN_CODE UpdateQuestionId (IN EFI_QUESTION_ID, IN EFI_QUESTION_ID);\r
   VOID                GetQuestionId (IN CHAR8 *, IN CHAR8 *, OUT EFI_QUESTION_ID &, OUT UINT32 &, OUT EFI_QUESION_TYPE *QType = NULL);\r
   EFI_VFR_RETURN_CODE FindQuestion (IN EFI_QUESTION_ID);\r
@@ -423,4 +424,33 @@ public:
   UINT8 GetRuleId (IN CHAR8 *);\r
 };\r
 \r
+class CVfrStringDB {\r
+private:\r
+  CHAR8   *mStringFileName;\r
+\r
+  EFI_STATUS FindStringBlock (\r
+    IN  UINT8            *StringData,\r
+    IN  EFI_STRING_ID    StringId,\r
+    OUT UINT32           *StringTextOffset,\r
+    OUT UINT8            *BlockType\r
+    );\r
+\r
+  UINT32 GetUnicodeStringTextSize (\r
+    IN  UINT8            *StringSrc\r
+    );\r
+\r
+public:\r
+  CVfrStringDB ();\r
+  ~CVfrStringDB ();\r
+\r
+  VOID SetStringFileName (\r
+    IN CHAR8 *StringFileName\r
+    );\r
+\r
+  CHAR8 * GetVarStoreNameFormStringId (\r
+    IN EFI_STRING_ID StringId\r
+    );\r
+\r
+};\r
+\r
 #endif\r