From: klu2 Date: Tue, 15 Aug 2006 18:33:53 +0000 (+0000) Subject: Refine the code for PCD tools. X-Git-Tag: edk2-stable201903~24591 X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=commitdiff_plain;h=11eb278ae57cfc9ba415fcf91e61dea56d6082c0 Refine the code for PCD tools. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1282 6f19259b-4bc3-4df7-8a09-765794883524 --- diff --git a/Tools/Source/GenBuild/org/tianocore/build/autogen/AutoGen.java b/Tools/Source/GenBuild/org/tianocore/build/autogen/AutoGen.java index ad4a5c7482..f3b107712e 100644 --- a/Tools/Source/GenBuild/org/tianocore/build/autogen/AutoGen.java +++ b/Tools/Source/GenBuild/org/tianocore/build/autogen/AutoGen.java @@ -362,7 +362,7 @@ public class AutoGen { // if (this.myPcdAutogen != null) { fileBuffer.append("\r\n"); - fileBuffer.append(this.myPcdAutogen.OutputH()); + fileBuffer.append(this.myPcdAutogen.getHAutoGenString()); } // @@ -496,7 +496,7 @@ public class AutoGen { if (this.myPcdAutogen != null) { fileBuffer.append("\r\n"); - fileBuffer.append(this.myPcdAutogen.OutputC()); + fileBuffer.append(this.myPcdAutogen.getCAutoGenString()); } if (!saveFile(outputPath + File.separatorChar + "AutoGen.c", fileBuffer)) { @@ -599,7 +599,7 @@ public class AutoGen { // if (this.myPcdAutogen != null) { fileBuffer.append("\r\n"); - fileBuffer.append(this.myPcdAutogen.OutputH()); + fileBuffer.append(this.myPcdAutogen.getHAutoGenString()); } // @@ -650,7 +650,7 @@ public class AutoGen { if (this.myPcdAutogen != null) { fileBuffer.append("\r\n"); - fileBuffer.append(this.myPcdAutogen.OutputC()); + fileBuffer.append(this.myPcdAutogen.getCAutoGenString()); } if (!saveFile(outputPath + File.separatorChar + "AutoGen.c", fileBuffer)) { diff --git a/Tools/Source/GenBuild/org/tianocore/build/pcd/action/PCDAutoGenAction.java b/Tools/Source/GenBuild/org/tianocore/build/pcd/action/PCDAutoGenAction.java index 6d71629b61..28bb81853e 100644 --- a/Tools/Source/GenBuild/org/tianocore/build/pcd/action/PCDAutoGenAction.java +++ b/Tools/Source/GenBuild/org/tianocore/build/pcd/action/PCDAutoGenAction.java @@ -34,8 +34,9 @@ import org.tianocore.pcd.entity.UsageIdentification; import org.tianocore.pcd.entity.UsageInstance; import org.tianocore.pcd.exception.BuildActionException; -/** This class is to manage how to generate the PCD information into Autogen.c and - Autogen.h. +/** + This class is to manage how to generate the PCD information into Autogen.c + and Autogen.h. **/ public class PCDAutoGenAction extends BuildAction { /// @@ -113,7 +114,7 @@ public class PCDAutoGenAction extends BuildAction { @return the string of header file for PCD **/ - public String OutputH() { + public String getHAutoGenString() { return hAutoGenString; } @@ -122,7 +123,7 @@ public class PCDAutoGenAction extends BuildAction { @return the string of C code file for PCD **/ - public String OutputC() { + public String getCAutoGenString() { return cAutoGenString; } @@ -317,10 +318,6 @@ public class PCDAutoGenAction extends BuildAction { cAutoGenString += usageInstance.getCAutogenStr(); } - // - // Work around code, In furture following code should be modified that get - // these information from Uplevel Autogen tools. - // if (pcdDriverType == CommonDefinition.PCD_DRIVER_TYPE.PEI_PCD_DRIVER) { hAutoGenString += MemoryDatabaseManager.PcdPeimHString; cAutoGenString += MemoryDatabaseManager.PcdPeimCString; @@ -329,29 +326,4 @@ public class PCDAutoGenAction extends BuildAction { cAutoGenString += MemoryDatabaseManager.PcdDxeCString; } } - - /** - Test case function - - @param argv paramter from command line - **/ - public static void main(String argv[]) { - - String WorkSpace = "X:/edk2"; - String logFilePath = WorkSpace + "/EdkNt32Pkg/Nt32.fpd"; - - // - // At first, CollectPCDAction should be invoked to collect - // all PCD information from SPD, MSA, FPD. - // - PlatformPcdPreprocessActionForBuilding collectionAction = new PlatformPcdPreprocessActionForBuilding(); - GlobalData.initInfo("Tools" + File.separator + "Conf" + File.separator + "FrameworkDatabase.db", - WorkSpace,null); - - try { - collectionAction.perform(logFilePath, ActionMessage.MAX_MESSAGE_LEVEL); - } catch(Exception e) { - e.printStackTrace(); - } - } } diff --git a/Tools/Source/GenBuild/org/tianocore/build/pcd/action/PlatformPcdPreprocessActionForBuilding.java b/Tools/Source/GenBuild/org/tianocore/build/pcd/action/PlatformPcdPreprocessActionForBuilding.java index a0a40eb4d1..4d2335dfd2 100644 --- a/Tools/Source/GenBuild/org/tianocore/build/pcd/action/PlatformPcdPreprocessActionForBuilding.java +++ b/Tools/Source/GenBuild/org/tianocore/build/pcd/action/PlatformPcdPreprocessActionForBuilding.java @@ -19,7 +19,6 @@ package org.tianocore.build.pcd.action; import java.io.File; import java.io.IOException; -import java.math.BigInteger; import java.util.ArrayList; import java.util.Iterator; import java.util.List; @@ -50,7 +49,7 @@ import org.tianocore.pcd.exception.PlatformPcdPreprocessException; **/ public class PlatformPcdPreprocessActionForBuilding extends PlatformPcdPreprocessAction { /// - /// FPD file is the root file. + /// FPD file path. /// private String fpdFilePath; @@ -88,7 +87,7 @@ public class PlatformPcdPreprocessActionForBuilding extends PlatformPcdPreproces /** Common function interface for outer. - @param fpdFilePath The fpd file path of current build or analysis. + @param fpdFilePath The fpd file path of current build or processing. @param messageLevel The message level for this Action. @throws PlatformPreprocessBuildException @@ -98,7 +97,7 @@ public class PlatformPcdPreprocessActionForBuilding extends PlatformPcdPreproces **/ public void perform(String fpdFilePath, int messageLevel) throws PlatformPcdPreprocessBuildException { - setFPDFilePath(fpdFilePath); + this.fpdFilePath = fpdFilePath; setActionMessageLevel(messageLevel); checkParameter(); execute(); @@ -152,7 +151,7 @@ public class PlatformPcdPreprocessActionForBuilding extends PlatformPcdPreproces try { genPcdDatabaseSourceCode (); } catch (EntityException exp) { - throw new PlatformPcdPreprocessBuildException(errorMessageHeader + exp.getMessage()); + throw new PlatformPcdPreprocessBuildException(errorMessageHeader + "\r\n" + exp.getMessage()); } } @@ -323,7 +322,7 @@ public class PlatformPcdPreprocessActionForBuilding extends PlatformPcdPreproces dynamicPrimaryKey = Token.getPrimaryKeyString(dynamicPcdBuildDataArray.get(index).getCName(), tokenSpaceStrRet); - if (dynamicPrimaryKey.equalsIgnoreCase(token.getPrimaryKeyString())) { + if (dynamicPrimaryKey.equals(token.getPrimaryKeyString())) { return dynamicPcdBuildDataArray.get(index); } } @@ -374,11 +373,11 @@ public class PlatformPcdPreprocessActionForBuilding extends PlatformPcdPreproces File file = null; if (fpdFilePath == null) { - throw new PlatformPcdPreprocessBuildException("WorkspacePath and FPDFileName should be empty for CollectPCDAtion!"); + throw new PlatformPcdPreprocessBuildException("FPDFileName should be empty for CollectPCDAtion!"); } if (fpdFilePath.length() == 0) { - throw new PlatformPcdPreprocessBuildException("WorkspacePath and FPDFileName should be empty for CollectPCDAtion!"); + throw new PlatformPcdPreprocessBuildException("FPDFileName should be empty for CollectPCDAtion!"); } file = new File(fpdFilePath); @@ -387,23 +386,4 @@ public class PlatformPcdPreprocessActionForBuilding extends PlatformPcdPreproces throw new PlatformPcdPreprocessBuildException("FPD File " + fpdFilePath + " does not exist!"); } } - - /** - Test case function - - @param argv parameter from command line - **/ - public static void main(String argv[]) throws PlatformPcdPreprocessBuildException { - PlatformPcdPreprocessActionForBuilding ca = new PlatformPcdPreprocessActionForBuilding(); - String projectDir = "x:/edk2"; - ca.setFPDFilePath(projectDir + "/EdkNt32Pkg/Nt32.fpd"); - ca.setActionMessageLevel(ActionMessage.MAX_MESSAGE_LEVEL); - GlobalData.initInfo("Tools" + File.separator + "Conf" + File.separator + "FrameworkDatabase.db", - projectDir, - "tools_def.txt"); - System.out.println("After initInfo!"); - FpdParserTask fpt = new FpdParserTask(); - fpt.parseFpdFile(new File(projectDir + "/EdkNt32Pkg/Nt32.fpd")); - ca.execute(); - } } diff --git a/Tools/Source/PcdTools/org/tianocore/pcd/action/BuildAction.java b/Tools/Source/PcdTools/org/tianocore/pcd/action/BuildAction.java index 98068d97b9..e5288f364b 100644 --- a/Tools/Source/PcdTools/org/tianocore/pcd/action/BuildAction.java +++ b/Tools/Source/PcdTools/org/tianocore/pcd/action/BuildAction.java @@ -66,7 +66,10 @@ public abstract class BuildAction extends Task { @param logStr The string contains log information. **/ public static void logMsg(Object action, String logStr) { - ((Task) action).log(logStr, Project.MSG_INFO); + try { + ((Task) action).log(logStr, Project.MSG_INFO); + } catch (Exception exp) { + } } /** diff --git a/Tools/Source/PcdTools/org/tianocore/pcd/action/PlatformPcdPreprocessAction.java b/Tools/Source/PcdTools/org/tianocore/pcd/action/PlatformPcdPreprocessAction.java index 9343c1689d..ee91f2a8e8 100644 --- a/Tools/Source/PcdTools/org/tianocore/pcd/action/PlatformPcdPreprocessAction.java +++ b/Tools/Source/PcdTools/org/tianocore/pcd/action/PlatformPcdPreprocessAction.java @@ -58,6 +58,7 @@ public abstract class PlatformPcdPreprocessAction { public PlatformPcdPreprocessAction() { pcdDbManager = null; errorString = null; + errorCount = 0; } /** @@ -77,12 +78,13 @@ public abstract class PlatformPcdPreprocessAction { public MemoryDatabaseManager getPcdDbManager() { return pcdDbManager; } + /** Abstract function: retrieve module information from FPD file. In building environement, this function will be implementated by FpdParserTask. - @return List the component array. + @return List the component array. @throws PlatformPcdPreprocessException get all modules in in FPD file. **/ @@ -100,8 +102,7 @@ public abstract class PlatformPcdPreprocessAction { @throws PlatformPcdPreprocessException Fail to get Guid information from SPD file. **/ - public abstract String getGuidInfoFromSpd(String guidCName) - throws PlatformPcdPreprocessException; + public abstract String getGuidInfoFromSpd(String guidCName) throws PlatformPcdPreprocessException; /** Abstract function: Verification the PCD data. @@ -118,11 +119,8 @@ public abstract class PlatformPcdPreprocessAction { @return String exception strings. **/ - public abstract String verifyDatum(String cName, - String moduleName, - String datum, - Token.DATUM_TYPE datumType, - int maxDatumSize); + public abstract String verifyDatum(String cName, String moduleName, String datum, + Token.DATUM_TYPE datumType, int maxDatumSize); /** Abstract function: Get dynamic information for a token @@ -173,22 +171,23 @@ public abstract class PlatformPcdPreprocessAction { **/ public void initPcdMemoryDbWithPlatformInfo() throws PlatformPcdPreprocessException { - int index = 0; - int pcdIndex = 0; + int index; + int pcdIndex; List pcdBuildDataArray = new ArrayList(); - PcdBuildDefinition.PcdData pcdBuildData = null; + PcdBuildDefinition.PcdData pcdBuildData; Token token = null; - List modules = null; - String primaryKey = null; - String exceptionString = null; - UsageInstance usageInstance = null; + List modules; + String primaryKey; + String exceptionString; + UsageInstance usageInstance; Token.PCD_TYPE pcdType = Token.PCD_TYPE.UNKNOWN; Token.DATUM_TYPE datumType = Token.DATUM_TYPE.UNKNOWN; - long tokenNumber = 0; - String moduleName = null; - String datum = null; - int maxDatumSize = 0; - String tokenSpaceStrRet = null; + long tokenNumber; + String moduleName; + String datum; + int maxDatumSize; + String tokenSpaceStrRet; + ModulePcdInfoFromFpd curModule; // // ---------------------------------------------- @@ -208,16 +207,17 @@ public abstract class PlatformPcdPreprocessAction { // ------------------------------------------------------------------- // for (index = 0; index < modules.size(); index++) { - // + curModule = modules.get(index); + + // // It is legal for a module does not contains ANY pcd build definitions. // - if (modules.get(index).pcdBuildDefinition == null) { + if (curModule.pcdBuildDefinition == null) { continue; } - pcdBuildDataArray = modules.get(index).pcdBuildDefinition.getPcdDataList(); - - moduleName = modules.get(index).usageId.moduleName; + pcdBuildDataArray = curModule.pcdBuildDefinition.getPcdDataList(); + moduleName = curModule.usageId.moduleName; // // ---------------------------------------------------------------------- @@ -433,7 +433,7 @@ public abstract class PlatformPcdPreprocessAction { // ------------------------------------------------ // usageInstance = new UsageInstance(token, - modules.get(index).usageId, + curModule.usageId, pcdType, datum, maxDatumSize); @@ -441,7 +441,7 @@ public abstract class PlatformPcdPreprocessAction { putError(String.format("PCD %s for module %s(%s) already exists in the database.\nPlease check all PCD build entries "+ "in the %s module's section to make sure there are no duplicated definitions in the FPD file!", token.cName, - modules.get(index).usageId.moduleGuid, + curModule.usageId.moduleGuid, moduleName, moduleName)); continue; diff --git a/Tools/Source/PcdTools/org/tianocore/pcd/entity/UsageInstance.java b/Tools/Source/PcdTools/org/tianocore/pcd/entity/UsageInstance.java index 47638bcea6..e38bc91aed 100644 --- a/Tools/Source/PcdTools/org/tianocore/pcd/entity/UsageInstance.java +++ b/Tools/Source/PcdTools/org/tianocore/pcd/entity/UsageInstance.java @@ -193,20 +193,40 @@ public class UsageInstance { switch (modulePcdType) { case FEATURE_FLAG: + // + // Example autogen string for following generation: + // "extern const BOOLEAN _gPcd_FixedAtBuild_PcdSampleToken"; + // hAutogenStr += String.format("extern const BOOLEAN _gPcd_FixedAtBuild_%s;\r\n", parentToken.cName); + // + // Example autogen string for following generation: + // "#define _PCD_GET_MODE_8_PcdSampleToken _gPcd_FixedAtBuild_PcdSampleToken"; + // hAutogenStr += String.format("#define _PCD_GET_MODE_%s_%s _gPcd_FixedAtBuild_%s\r\n", Token.GetAutogenDefinedatumTypeString(parentToken.datumType), parentToken.cName, parentToken.cName); + // + // Example autogen string for following generation: + // "//#define _PCD_SET_MODE_8_PcdSampleToken ASSERT(FALSE) If is not allowed to set value..."; + // hAutogenStr += String.format("//#define _PCD_SET_MODE_%s_%s ASSERT(FALSE) If is not allowed to set value for a FEATURE_FLAG PCD\r\n", Token.GetAutogenDefinedatumTypeString(parentToken.datumType), parentToken.cName); if (!isBuildUsedLibrary) { + // + // Example autogen string for following generation: + // "#define _PCD_VALUE_PcdSampleToken 0x1000" + // hAutogenStr += String.format("#define _PCD_VALUE_%s %s\r\n", parentToken.cName, printDatum); + // + // Example autogen string for following generation: + // "GLOBAL_REMOVE_IF_UNREFERENCED const BOOLEAN _gPcd_FixedAtBuild_PcdSampleToken = _PCD_VALUE_PcdSampleToken;" + // cAutogenStr += String.format("GLOBAL_REMOVE_IF_UNREFERENCED const BOOLEAN _gPcd_FixedAtBuild_%s = _PCD_VALUE_%s;\r\n", parentToken.cName, parentToken.cName); @@ -214,47 +234,91 @@ public class UsageInstance { break; case FIXED_AT_BUILD: if (isByteArray) { + // + // Example autogen string for following generation: + // "extern const BOOLEAN _gPcd_FixedAtBuild_PcdSampleToken"; + // hAutogenStr += String.format("extern const UINT8 _gPcd_FixedAtBuild_%s[];\r\n", parentToken.cName); + // + // Example autogen string for following generation: + // "#define _PCD_GET_MODE_8_PcdSampleToken (VOID*)_gPcd_FixedAtBuild_PcdSampleToken"; + // hAutogenStr += String.format("#define _PCD_GET_MODE_%s_%s (VOID*)_gPcd_FixedAtBuild_%s\r\n", Token.GetAutogenDefinedatumTypeString(parentToken.datumType), parentToken.cName, parentToken.cName); } else { + // + // Example autogen string for following generation: + // "extern const UINT8 _gPcd_FixedAtBuild_PcdSampleToken"; + // hAutogenStr += String.format("extern const %s _gPcd_FixedAtBuild_%s;\r\n", Token.getAutogendatumTypeString(parentToken.datumType), parentToken.cName); + // + // Example autogen string for following generation: + // "#define _PCD_GET_MODE_8_PcdSampleToken _gPcd_FixedAtBuild_PcdSampleToken"; + // hAutogenStr += String.format("#define _PCD_GET_MODE_%s_%s _gPcd_FixedAtBuild_%s\r\n", Token.GetAutogenDefinedatumTypeString(parentToken.datumType), parentToken.cName, parentToken.cName); } + // + // Example autogen string for following generation: + // "//#define _PCD_SET_MODE_8_PcdSampleToken ASSERT(FALSE) If is not allowed to set value..."; + // hAutogenStr += String.format("//#define _PCD_SET_MODE_%s_%s ASSERT(FALSE) // It is not allowed to set value for a FIXED_AT_BUILD PCD\r\n", Token.GetAutogenDefinedatumTypeString(parentToken.datumType), parentToken.cName); if (!isBuildUsedLibrary) { if (parentToken.datumType == Token.DATUM_TYPE.POINTER) { if (isByteArray) { + // + // Example autogen string for following generation: + // "#define _PCD_VALUE_PcdSampleToken (VOID*)_gPcd_FixedAtBuild_PcdSampleToken" + // hAutogenStr += String.format("#define _PCD_VALUE_%s (VOID*)_gPcd_FixedAtBuild_%s\r\n", parentToken.cName, parentToken.cName); + // + // Example autogen string for following generation: + // "GLOBAL_REMOVE_IF_UNREFERENCED const UINT8 _gPcd_FixedAtBuild_PcdSampleToken[] = 'dfdf';" + // cAutogenStr += String.format("GLOBAL_REMOVE_IF_UNREFERENCED const UINT8 _gPcd_FixedAtBuild_%s[] = %s;\r\n", parentToken.cName, printDatum); } else { + // + // Example autogen string for following generation: + // "#define _PCD_VALUE_PcdSampleToken 0x222" + // hAutogenStr += String.format("#define _PCD_VALUE_%s %s\r\n", parentToken.cName, printDatum); + // + // Example autogen string for following generation: + // "GLOBAL_REMOVE_IF_UNREFERENCED const UINT8 _gPcd_FixedAtBuild_PcdSampleToken[] = _PCD_VALUE_PcdSampleToken;" + // cAutogenStr += String.format("GLOBAL_REMOVE_IF_UNREFERENCED const %s _gPcd_FixedAtBuild_%s = _PCD_VALUE_%s;\r\n", Token.getAutogendatumTypeString(parentToken.datumType), parentToken.cName, parentToken.cName); } } else { + // + // Example autogen string for following generation: + // "#define _PCD_VALUE_PcdSampleToken 0x222" + // hAutogenStr += String.format("#define _PCD_VALUE_%s %s\r\n", parentToken.cName, printDatum); + // + // Example autogen string for following generation: + // "GLOBAL_REMOVE_IF_UNREFERENCED const UINT8 _gPcd_FixedAtBuild_PcdSampleToken[] = _PCD_VALUE_PcdSampleToken;" + // cAutogenStr += String.format("GLOBAL_REMOVE_IF_UNREFERENCED const %s _gPcd_FixedAtBuild_%s = _PCD_VALUE_%s;\r\n", Token.getAutogendatumTypeString(parentToken.datumType), parentToken.cName, @@ -264,16 +328,32 @@ public class UsageInstance { break; case PATCHABLE_IN_MODULE: if (isByteArray) { + // + // Example autogen string for following generation: + // "extern UINT8 _gPcd_BinaryPatch_PcdSampleToken[];" + // hAutogenStr += String.format("extern UINT8 _gPcd_BinaryPatch_%s[];\r\n", parentToken.cName); + // + // Example autogen string for following generation: + // "#define _PCD_GET_MODE_8_PcdSampleToken (VOID*)_gPcd_BinaryPatch_PcdSampleToken" + // hAutogenStr += String.format("#define _PCD_GET_MODE_%s_%s (VOID*)_gPcd_BinaryPatch_%s\r\n", Token.GetAutogenDefinedatumTypeString(parentToken.datumType), parentToken.cName, parentToken.cName); } else { + // + // Example autogen string for following generation: + // "extern UINT8 _gPcd_BinaryPatch_PcdSampleToken;" + // hAutogenStr += String.format("extern %s _gPcd_BinaryPatch_%s;\r\n", Token.getAutogendatumTypeString(parentToken.datumType), parentToken.cName); + // + // Example autogen string for following generation: + // "#define _PCD_GET_MODE_8_PcdSampleToken _gPcd_BinaryPatch_PcdSampleToken" + // hAutogenStr += String.format("#define _PCD_GET_MODE_%s_%s _gPcd_BinaryPatch_%s\r\n", Token.GetAutogenDefinedatumTypeString(parentToken.datumType), parentToken.cName, @@ -284,11 +364,19 @@ public class UsageInstance { // Generate _PCD_SET_MODE_xx macro for using set BinaryPatch value via PcdSet macro // if (parentToken.datumType == Token.DATUM_TYPE.POINTER) { + // + // Example autogen string for following generation: + // "#define _PCD_SET_MODE_8_PcdSampleToken(SizeOfBuffer, Buffer) CopyMem (_gPcd_BinaryPatch_PcdSampleToken, (Buffer), (SizeOfBuffer))" + // hAutogenStr += String.format("#define _PCD_SET_MODE_%s_%s(SizeOfBuffer, Buffer) CopyMem (_gPcd_BinaryPatch_%s, (Buffer), (SizeOfBuffer))\r\n", Token.GetAutogenDefinedatumTypeString(parentToken.datumType), parentToken.cName, parentToken.cName); } else { + // + // Example autogen string for following generation: + // "#define _PCD_SET_MODE_8_PcdSampleToken(Value) (_gPcd_BinaryPatch_PcdSampleToken = (Value))" + // hAutogenStr += String.format("#define _PCD_SET_MODE_%s_%s(Value) (_gPcd_BinaryPatch_%s = (Value))\r\n", Token.GetAutogenDefinedatumTypeString(parentToken.datumType), parentToken.cName, @@ -296,14 +384,26 @@ public class UsageInstance { } if (!isBuildUsedLibrary) { + // + // Example autogen string for following generation: + // "#define _PCD_VALUE_PcdSampleToken 0x111" + // hAutogenStr += String.format("#define _PCD_VALUE_%s %s\r\n", parentToken.cName, printDatum); if (isByteArray) { + // + // Example autogen string for following generation: + // "GLOBAL_REMOVE_IF_UNREFERENCED UINT8 _gPcd_BinaryPatch_PcdSampleToken[] = _PCD_VALUE_PcdSampleToken;" + // cAutogenStr += String.format("GLOBAL_REMOVE_IF_UNREFERENCED UINT8 _gPcd_BinaryPatch_%s[] = _PCD_VALUE_%s;\r\n", parentToken.cName, parentToken.cName); } else { + // + // Example autogen string for following generation: + // "GLOBAL_REMOVE_IF_UNREFERENCED UINT8 _gPcd_BinaryPatch_PcdSampleToken[] = _PCD_VALUE_PcdSampleToken;" + // cAutogenStr += String.format("GLOBAL_REMOVE_IF_UNREFERENCED %s _gPcd_BinaryPatch_%s = _PCD_VALUE_%s;\r\n", Token.getAutogendatumTypeString(parentToken.datumType), parentToken.cName, @@ -313,18 +413,30 @@ public class UsageInstance { break; case DYNAMIC: + // + // Example autogen string for following generation: + // "#define _PCD_GET_MODE_8_PcdSampleToken LibPcdGet%s(_PCD_TOKEN_PcdSampleToken)" + // hAutogenStr += String.format("#define _PCD_GET_MODE_%s_%s LibPcdGet%s(_PCD_TOKEN_%s)\r\n", Token.GetAutogenDefinedatumTypeString(parentToken.datumType), parentToken.cName, Token.getAutogenLibrarydatumTypeString(parentToken.datumType), parentToken.cName); if (parentToken.datumType == Token.DATUM_TYPE.POINTER) { + // + // Example autogen string for following generation: + // "#define _PCD_SET_MODE_8_PcdSampleToken(SizeOfBuffer, Buffer) LibPcdSet%s(_PCD_TOKEN_PcdSampleToken, (SizeOfBuffer), (Buffer))" + // hAutogenStr += String.format("#define _PCD_SET_MODE_%s_%s(SizeOfBuffer, Buffer) LibPcdSet%s(_PCD_TOKEN_%s, (SizeOfBuffer), (Buffer))\r\n", Token.GetAutogenDefinedatumTypeString(parentToken.datumType), parentToken.cName, Token.getAutogenLibrarydatumTypeString(parentToken.datumType), parentToken.cName); } else { + // + // Example autogen string for following generation: + // "#define _PCD_SET_MODE_8_PcdSampleToken(Value) LibPcdSet%s(_PCD_TOKEN_PcdSampleToken, (Value))" + // hAutogenStr += String.format("#define _PCD_SET_MODE_%s_%s(Value) LibPcdSet%s(_PCD_TOKEN_%s, (Value))\r\n", Token.GetAutogenDefinedatumTypeString(parentToken.datumType), parentToken.cName, @@ -336,6 +448,10 @@ public class UsageInstance { guidStringCName = "_gPcd_TokenSpaceGuid_" + parentToken.tokenSpaceName.toString().replaceAll("-", "_"); + // + // Example autogen string for following generation: + // "#define _PCD_GET_MODE_8_PcdSampleToken LibPcdGetEx%s(&_gPcd_TokenSpaceGuid_00_00_00, _PCD_TOKEN_PcdSampleToken)" + // hAutogenStr += String.format("#define _PCD_GET_MODE_%s_%s LibPcdGetEx%s(&%s, _PCD_TOKEN_%s)\r\n", Token.GetAutogenDefinedatumTypeString(parentToken.datumType), parentToken.cName, @@ -344,6 +460,10 @@ public class UsageInstance { parentToken.cName); if (parentToken.datumType == Token.DATUM_TYPE.POINTER) { + // + // Example autogen string for following generation: + // "#define _PCD_SET_MODE_8_PcdSampleToken(SizeOfBuffer, Buffer) LibPcdSetEx%s(&_gPcd_TokenSpaceGuid_00_00_00, _PCD_TOKEN_PcdSampleToken, (SizeOfBuffer), (Buffer))" + // hAutogenStr += String.format("#define _PCD_SET_MODE_%s_%s(SizeOfBuffer, Buffer) LibPcdSetEx%s(&%s, _PCD_TOKEN_%s, (SizeOfBuffer), (Buffer))\r\n", Token.GetAutogenDefinedatumTypeString(parentToken.datumType), parentToken.cName, @@ -351,6 +471,10 @@ public class UsageInstance { guidStringCName, parentToken.cName); } else { + // + // Example autogen string for following generation: + // "#define _PCD_SET_MODE_8_PcdSampleToken(Value) LibPcdSetEx%s(&_gPcd_TokenSpaceGuid_00_00_00, _PCD_TOKEN_PcdSampleToken, (Value))" + // hAutogenStr += String.format("#define _PCD_SET_MODE_%s_%s(Value) LibPcdSetEx%s(&%s, _PCD_TOKEN_%s, (Value))\r\n", Token.GetAutogenDefinedatumTypeString(parentToken.datumType), parentToken.cName,