X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=BaseTools%2FSource%2FPython%2FCommonDataClass%2FCommonClass.py;h=e29f5211d5c769eb0673725ed2536fc615dcaf1e;hp=6a8262e5e964962e97a60caa75c77cea2c60af4c;hb=92beb1e4c73a40a708c7c0cade5c7cee314b3887;hpb=4231a8193ec0d52df7e0a101d96c51b1a2b7a996 diff --git a/BaseTools/Source/Python/CommonDataClass/CommonClass.py b/BaseTools/Source/Python/CommonDataClass/CommonClass.py index 6a8262e5e9..e29f5211d5 100644 --- a/BaseTools/Source/Python/CommonDataClass/CommonClass.py +++ b/BaseTools/Source/Python/CommonDataClass/CommonClass.py @@ -1,7 +1,7 @@ ## @file # This file is used to define common items of class object # -# Copyright (c) 2007 - 2015, Intel Corporation. All rights reserved.
+# Copyright (c) 2007 - 2018, 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 @@ -11,240 +11,6 @@ # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -# -# Generate help text -# -def GenerateHelpText(Text, Lang): - if Text: - Ht = HelpTextClass() - Ht.Lang = Lang - Ht.String = Text - - return Ht - - return None - -## CommonClass -# -# This class defined common items used in Module/Platform/Package files -# -# @param object: Inherited from object class -# @param Usage: Input value for Usage, default is [] -# @param FeatureFlag: Input value for FeatureFalg, default is '' -# @param SupArchList: Input value for SupArchList, default is [] -# @param HelpText: Input value for HelpText, default is '' -# -# @var Usage: To store value for Usage, selection scope is in below list -# ALWAYS_CONSUMED | SOMETIMES_CONSUMED | ALWAYS_PRODUCED | SOMETIMES_PRODUCED | TO_START | BY_START | PRIVATE -# @var FeatureFlag: To store value for FeatureFlag -# @var SupArchList: To store value for SupArchList, selection scope is in below list -# EBC | IA32 | X64 | IPF | ARM | PPC | AARCH64 -# @var HelpText: To store value for HelpText -# -class CommonClass(object): - def __init__(self, Usage = None, FeatureFlag = '', SupArchList = None, HelpText = ''): - self.Usage = Usage - if self.Usage is None: - self.Usage = [] - self.FeatureFlag = FeatureFlag - self.SupArchList = SupArchList - if self.SupArchList is None: - self.SupArchList = [] - self.HelpText = HelpText - self.HelpTextList = [] - -## CommonHeaderClass -# -# This class defined common items used in Module/Platform/Package files -# -# @param object: Inherited from object class -# -# @var Abstract: To store value for Abstract -# @var Description: To store value for Description -# @var Copyright: To store value for Copyright -# @var License: To store value for License -# @var Specification: To store value for Specification -# -class CommonHeaderClass(object): - def __init__(self): - self.Abstract = '' - self.Description = '' - self.Copyright = '' - self.License = '' - self.Specification = {} - -## HelpTextClass -# -# This class defined HelpText item used in PKG file -# -# @param object: Inherited from object class -# -# @var Lang: To store value for Lang -# @var String: To store value for String -# -class HelpTextClass(object): - def __init__(self): - self.Lang = '' - self.String = '' - -## DefineClass -# -# This class defined item DEFINE used in Module/Platform/Package files -# -# @param object: Inherited from object class -# -# @var Define: To store value for Define, it is a set structure as -# { (DefineName, Arch) : DefineValue, ... } -# -class DefineClass(object): - def __init__(self): - self.Define = {} - -## ClonedRecordClass -# -# This class defined ClonedRecord items used in Module/Platform/Package files -# -# @param object: Inherited from object class -# -# @var Id: To store value for Id -# @var FarGuid: To store value for FarGuid -# @var PackageGuid: To store value for PackageGuid -# @var PackageVersion: To store value for PackageVersion -# @var ModuleGuid: To store value for ModuleGuid -# @var ModuleVersion: To store value for ModuleVersion -# -class ClonedRecordClass(object): - def __init__(self): - self.Id = 0 - self.FarGuid = '' - self.PackageGuid = '' - self.PackageVersion = '' - self.ModuleGuid = '' - self.ModuleVersion = '' - -## IdentificationClass -# -# This class defined Identification items used in Module/Platform/Package files -# -# @param object: Inherited from object class -# -# @var Name: To store value for Name -# ModuleName(Inf) / PackageName(Dec) / PlatformName(Dsc) -# @var Guid: To store value for Guid -# @var Version: To store value for Version -# @var FileName: To store value for FileName -# @var FullPath: To store value for FullPath -# -class IdentificationClass(object): - def __init__(self): - self.Name = '' - self.BaseName = '' - self.Guid = '' - self.Version = '' - self.FileName = '' - self.FullPath = '' - self.RelaPath = '' - self.PackagePath = '' - self.ModulePath = '' - self.CombinePath = '' - -## IncludeStatementClass -# -# This class defined IncludeFiles item used in Module/Platform/Package files -# -# @param object: Inherited from object class -# -# @var IncludeFiles: To store value for IncludeFiles -# It is a set structure as { IncludeFile : [Arch1, Arch2, ...], ... } -# -class IncludeStatementClass(object): - def __init__(self): - self.IncludeFiles = {} - -## GuidProtocolPpiCommonClass -# -# This class defined Guid, Protocol and Ppi like items used in Module/Platform/Package files -# -# @param CommonClass: Inherited from CommonClass class -# -# @var Name: To store value for Name -# @var CName: To store value for CName -# @var Guid: To store value for Guid -# @var Notify: To store value for Notify -# @var GuidTypeList: To store value for GuidTypeList, selection scope is in below list -# DATA_HUB_RECORD | EFI_EVENT | EFI_SYSTEM_CONFIGURATION_TABLE | EFI_VARIABLE | GUID | HII_PACKAGE_LIST | HOB | TOKEN_SPACE_GUID -# @var SupModuleList: To store value for SupModuleList, selection scope is in below list -# BASE | SEC | PEI_CORE | PEIM | DXE_CORE | DXE_DRIVER | DXE_RUNTIME_DRIVER | DXE_SAL_DRIVER | DXE_SMM_DRIVER | UEFI_DRIVER | UEFI_APPLICATION | USER_DEFINED | SMM_CORE | MM_STANDALONE | MM_CORE_STANDALONE -# -class GuidProtocolPpiCommonClass(CommonClass): - def __init__(self): - self.Name = '' - self.CName = '' - self.Guid = '' - self.VariableName = '' - self.Notify = False - self.GuidTypeList = [] - self.GuidTypeLists = [] - self.SupModuleList = [] - CommonClass.__init__(self) - -## LibraryClassClass -# -# This class defined Library item used in Module/Platform/Package files -# -# @param CommonClass: Inherited from CommonClass class -# @param DefineClass: Inherited from DefineClass class -# -# @var LibraryClass: To store value for LibraryClass -# @var IncludeHeader: To store value for IncludeHeader -# @var RecommendedInstanceVersion: To store value for RecommendedInstanceVersion -# @var RecommendedInstanceGuid: To store value for RecommendedInstanceGuid -# @var RecommendedInstance: To store value for RecommendedInstance, selection scope is in below list -# DATA_HUB_RECORD | EFI_EVENT | EFI_SYSTEM_CONFIGURATION_TABLE | EFI_VARIABLE | GUID | HII_PACKAGE_LIST | HOB | TOKEN_SPACE_GUID -# @var SupModuleList: To store value for SupModuleList, selection scope is in below list -# BASE | SEC | PEI_CORE | PEIM | DXE_CORE | DXE_DRIVER | DXE_RUNTIME_DRIVER | DXE_SAL_DRIVER | DXE_SMM_DRIVER | UEFI_DRIVER | UEFI_APPLICATION | USER_DEFINED | SMM_CORE | MM_STANDALONE | MM_CORE_STANDALONE -# -class LibraryClassClass(CommonClass, DefineClass): - def __init__(self): - self.LibraryClass = '' - self.IncludeHeader = '' - self.RecommendedInstanceVersion = '' - self.RecommendedInstanceGuid = '' - self.RecommendedInstance = '' - self.SupModuleList = [] - CommonClass.__init__(self) - DefineClass.__init__(self) - -## GuidClass -# -# This class defined Guid item used in Module/Platform/Package files -# -# @param GuidProtocolPpiCommonClass: Inherited from GuidProtocolPpiCommonClass class -# -class GuidClass(GuidProtocolPpiCommonClass): - def __init__(self): - GuidProtocolPpiCommonClass.__init__(self) - -## ProtocolClass -# -# This class defined Protocol item used in Module/Platform/Package files -# -# @param GuidProtocolPpiCommonClass: Inherited from GuidProtocolPpiCommonClass class -# -class ProtocolClass(GuidProtocolPpiCommonClass): - def __init__(self): - GuidProtocolPpiCommonClass.__init__(self) - -## PpiClass -# -# This class defined Ppi item used in Module/Platform/Package files -# -# @param GuidProtocolPpiCommonClass: Inherited from GuidProtocolPpiCommonClass class -# -class PpiClass(GuidProtocolPpiCommonClass): - def __init__(self): - GuidProtocolPpiCommonClass.__init__(self) - ## SkuInfoClass # # This class defined SkuInfo item used in Module/Platform/Package files @@ -314,164 +80,3 @@ class SkuInfoClass(object): 'VpdOffset = ' + str(self.VpdOffset) + "," + \ 'DefaultValue = ' + str(self.DefaultValue) + "," return Rtn -## PcdErrorClass -# -# -# -class PcdErrorClass(object): - def __init__(self): - self.ValidValueList = '' - self.ValidValueListLang = '' - self.ValidValueRange = '' - self.Expression = '' - self.ErrorNumber = '' - self.ErrorMessage = [] - -## PcdClass -# -# This class defined Pcd item used in Module/Platform/Package files -# -# @param CommonClass: Inherited from CommonClass class -# @param CName: Input value for CName, default is '' -# @param Token: Input value for Token, default is '' -# @param TokenSpaceGuidCName: Input value for TokenSpaceGuidCName, default is '' -# @param DatumType: Input value for DatumType, default is '' -# @param MaxDatumSize: Input value for MaxDatumSize, default is '' -# @param DefaultValue: Input value for DefaultValue, default is '' -# @param ItemType: Input value for ItemType, default is '' -# @param ValidUsage: Input value for ValidUsage, default is [] -# @param SkuInfoList: Input value for SkuInfoList, default is {} -# @param SupModuleList: Input value for SupModuleList, default is [] -# -# @var CName: To store value for CName -# @var Token: To store value for Token -# @var TokenSpaceGuidCName: To store value for TokenSpaceGuidCName -# @var DatumType: To store value for DatumType, selection scope is in below list -# UINT8 | UINT16 | UINT32 | UINT64 | VOID* | BOOLEAN -# @var MaxDatumSize: To store value for MaxDatumSize -# @var DefaultValue: To store value for DefaultValue -# @var ItemType: To store value for ItemType, selection scope is in below list -# FEATURE_FLAG | FIXED_AT_BUILD | PATCHABLE_IN_MODULE | DYNAMIC | DYNAMIC_EX -# @var ValidUsage: To store value for ValidUsage, selection scope is in below list -# FEATURE_FLAG | FIXED_AT_BUILD | PATCHABLE_IN_MODULE | DYNAMIC | DYNAMIC_EX -# @var SkuInfoList: To store value for SkuInfoList -# It is a set structure as { [SkuIdName] : SkuInfoClass } -# @var SupModuleList: To store value for SupModuleList, selection scope is in below list -# BASE | SEC | PEI_CORE | PEIM | DXE_CORE | DXE_DRIVER | DXE_RUNTIME_DRIVER | DXE_SAL_DRIVER | DXE_SMM_DRIVER | UEFI_DRIVER | UEFI_APPLICATION | USER_DEFINED | SMM_CORE | MM_STANDALONE | MM_CORE_STANDALONE -# -class PcdClass(CommonClass): - def __init__(self, CName = '', Token = '', TokenSpaceGuidCName = '', DatumType = '', MaxDatumSize = '', DefaultValue = '', ItemType = '', ValidUsage = None, SkuInfoList = None, SupModuleList = None): - self.CName = CName - self.Token = Token - self.TokenSpaceGuidCName = TokenSpaceGuidCName - self.DatumType = DatumType - self.MaxDatumSize = MaxDatumSize - self.DefaultValue = DefaultValue - self.ItemType = ItemType - self.ValidUsage = ValidUsage - self.PcdItemType = '' - self.TokenSpaceGuidValue = '' - self.PcdUsage = '' - self.PcdCName = '' - self.Value = '' - self.Offset = '' - if self.ValidUsage is None: - self.ValidUsage = [] - self.SkuInfoList = SkuInfoList - if self.SkuInfoList is None: - self.SkuInfoList = {} - self.SupModuleList = SupModuleList - if self.SupModuleList is None: - self.SupModuleList = [] - CommonClass.__init__(self) - self.PcdErrors = [] - -## BuildOptionClass -# -# This class defined BuildOption item used in Module/Platform/Package files -# -# @param IncludeStatementClass: Inherited from IncludeStatementClass class -# @param ToolChainFamily: Input value for ToolChainFamily, default is '' -# @param ToolChain: Input value for ToolChain, default is '' -# @param Option: Input value for Option, default is '' -# -# @var Statement: To store value for Statement -# It is a string in a special format as "Family:Target_TagName_Tarch_ToolCode_FLAGS = String" -# @var ToolChainFamily: To store value for ToolChainFamily -# @var ToolChain: To store value for ToolChain -# @var Option: To store value for Option -# @var BuildTarget: To store value for BuildTarget -# @var TagName: To store value for TagName -# @var ToolCode: To store value for ToolCode -# @var SupArchList: To store value for SupArchList, selection scope is in below list -# EBC | IA32 | X64 | IPF | ARM | PPC | AARCH64 -# -class BuildOptionClass(IncludeStatementClass): - def __init__(self, ToolChainFamily = '', ToolChain = '', Option = ''): - IncludeStatementClass.__init__(self) - self.Statement = '' - self.ToolChainFamily = ToolChainFamily - self.ToolChain = ToolChain - self.Option = Option - self.BuildTarget = '' - self.TagName = '' - self.ToolCode = '' - self.SupArchList = [] - -## IncludeClass -# -# This class defined Include item used in Module/Platform/Package files -# -# @param CommonClass: Inherited from CommonClass class -# -# @var FilePath: To store value for FilePath -# @var ModuleType: To store value for ModuleType -# @var Comment: To store value for Comment -# -class IncludeClass(CommonClass): - def __init__(self): - self.FilePath = '' - self.ModuleType = '' - self.SupModuleList = [] - self.Comment = '' - CommonClass.__init__(self) - -## FileClass -# -# -class FileClass(CommonClass): - def __init__(self): - self.Filename = '' - self.Executable = '' - self.Family = '' - self.FileType = '' - CommonClass.__init__(self) - - -## MiscFileClass -# -# -class MiscFileClass(CommonHeaderClass): - def __init__(self): - CommonHeaderClass.__init__(self) - self.Name = '' - self.Files = [] - - -## UserExtensionsClass -# -# This class defined UserExtensions item used in Module/Platform/Package files -# -# @param object: Inherited from object class -# -# @var UserID: To store value for UserID -# @var Identifier: To store value for Identifier -# @var Content: To store value for Content -# -class UserExtensionsClass(object): - def __init__(self): - self.UserID = '' - self.Identifier = 0 - self.Content = '' - self.Defines = [] - self.BuildOptions = []