https://bugzilla.tianocore.org/show_bug.cgi?id=1373 Replace BSD 2-Clause License with BSD+Patent License. This change is based on the following emails: https://lists.01.org/pipermail/edk2-devel/2019-February/036260.html https://lists.01.org/pipermail/edk2-devel/2018-October/030385.html RFCs with detailed process for the license change: V3: https://lists.01.org/pipermail/edk2-devel/2019-March/038116.html V2: https://lists.01.org/pipermail/edk2-devel/2019-March/037669.html V1: https://lists.01.org/pipermail/edk2-devel/2019-March/037500.html Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Bob Feng <bob.c.feng@intel.com>
		
			
				
	
	
		
			954 lines
		
	
	
		
			25 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			954 lines
		
	
	
		
			25 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
## @file
 | 
						|
# This file is used to define common items of class object
 | 
						|
#
 | 
						|
# Copyright (c) 2011 - 2018, Intel Corporation. All rights reserved.<BR>
 | 
						|
#
 | 
						|
# SPDX-License-Identifier: BSD-2-Clause-Patent
 | 
						|
 | 
						|
'''
 | 
						|
Common Object
 | 
						|
'''
 | 
						|
from Library.DataType import TAB_LANGUAGE_EN_US
 | 
						|
 | 
						|
## HelpTextObject
 | 
						|
#
 | 
						|
# @param object:       Inherited from object class
 | 
						|
#
 | 
						|
class HelpTextObject(object):
 | 
						|
    def __init__(self):
 | 
						|
        self.HelpText = TextObject()
 | 
						|
 | 
						|
    def SetHelpText(self, HelpText):
 | 
						|
        self.HelpText = HelpText
 | 
						|
 | 
						|
    def GetHelpText(self):
 | 
						|
        return self.HelpText
 | 
						|
 | 
						|
## HelpTextListObject
 | 
						|
#
 | 
						|
# @param object:       Inherited from object class
 | 
						|
#
 | 
						|
class HelpTextListObject(object):
 | 
						|
    def __init__(self):
 | 
						|
        self.HelpTextList = []
 | 
						|
 | 
						|
    def SetHelpTextList(self, HelpTextList):
 | 
						|
        self.HelpTextList = HelpTextList
 | 
						|
 | 
						|
    def GetHelpTextList(self):
 | 
						|
        return self.HelpTextList
 | 
						|
 | 
						|
## PromptListObject
 | 
						|
#
 | 
						|
# @param object:       Inherited from object class
 | 
						|
#
 | 
						|
class PromptListObject(object):
 | 
						|
    def __init__(self):
 | 
						|
        self.PromptList = []
 | 
						|
 | 
						|
    def SetPromptList(self, PromptList):
 | 
						|
        self.PromptList = PromptList
 | 
						|
 | 
						|
    def GetPromptList(self):
 | 
						|
        return self.PromptList
 | 
						|
 | 
						|
## CommonPropertiesObject
 | 
						|
#
 | 
						|
# This class defined common attribution 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 ''
 | 
						|
# @param HelpTextList: Input value for HelpTextList, default is []
 | 
						|
#
 | 
						|
class CommonPropertiesObject(HelpTextObject, HelpTextListObject):
 | 
						|
    def __init__(self):
 | 
						|
        self.Usage = []
 | 
						|
        self.FeatureFlag = ''
 | 
						|
        self.SupArchList = []
 | 
						|
        self.GuidValue = ''
 | 
						|
        HelpTextObject.__init__(self)
 | 
						|
        HelpTextListObject.__init__(self)
 | 
						|
 | 
						|
    def SetUsage(self, Usage):
 | 
						|
        self.Usage = Usage
 | 
						|
 | 
						|
    def GetUsage(self):
 | 
						|
        return self.Usage
 | 
						|
 | 
						|
    def SetFeatureFlag(self, FeatureFlag):
 | 
						|
        self.FeatureFlag = FeatureFlag
 | 
						|
 | 
						|
    def GetFeatureFlag(self):
 | 
						|
        return self.FeatureFlag
 | 
						|
 | 
						|
    def SetSupArchList(self, SupArchList):
 | 
						|
        self.SupArchList = SupArchList
 | 
						|
 | 
						|
    def GetSupArchList(self):
 | 
						|
        return self.SupArchList
 | 
						|
 | 
						|
    def SetGuidValue(self, GuidValue):
 | 
						|
        self.GuidValue = GuidValue
 | 
						|
 | 
						|
    def GetGuidValue(self):
 | 
						|
        return self.GuidValue
 | 
						|
 | 
						|
## CommonHeaderObject
 | 
						|
#
 | 
						|
# This class defined common header items used in Module/Platform/Package files
 | 
						|
#
 | 
						|
# @param object:          Inherited from object class
 | 
						|
#
 | 
						|
class CommonHeaderObject(object):
 | 
						|
    def __init__(self):
 | 
						|
        self.AbstractList = []
 | 
						|
        self.DescriptionList = []
 | 
						|
        self.CopyrightList = []
 | 
						|
        self.LicenseList = []
 | 
						|
 | 
						|
    def SetAbstract(self, Abstract):
 | 
						|
        if isinstance(Abstract, list):
 | 
						|
            self.AbstractList = Abstract
 | 
						|
        else:
 | 
						|
            self.AbstractList.append(Abstract)
 | 
						|
 | 
						|
    def GetAbstract(self):
 | 
						|
        return self.AbstractList
 | 
						|
 | 
						|
    def SetDescription(self, Description):
 | 
						|
        if isinstance(Description, list):
 | 
						|
            self.DescriptionList = Description
 | 
						|
        else:
 | 
						|
            self.DescriptionList.append(Description)
 | 
						|
 | 
						|
    def GetDescription(self):
 | 
						|
        return self.DescriptionList
 | 
						|
 | 
						|
    def SetCopyright(self, Copyright):
 | 
						|
        if isinstance(Copyright, list):
 | 
						|
            self.CopyrightList = Copyright
 | 
						|
        else:
 | 
						|
            self.CopyrightList.append(Copyright)
 | 
						|
 | 
						|
    def GetCopyright(self):
 | 
						|
        return self.CopyrightList
 | 
						|
 | 
						|
    def SetLicense(self, License):
 | 
						|
        if isinstance(License, list):
 | 
						|
            self.LicenseList = License
 | 
						|
        else:
 | 
						|
            self.LicenseList.append(License)
 | 
						|
 | 
						|
    def GetLicense(self):
 | 
						|
        return self.LicenseList
 | 
						|
 | 
						|
## BinaryHeaderObject
 | 
						|
#
 | 
						|
# This class defined Binary header items used in Module/Platform/Package files
 | 
						|
#
 | 
						|
# @param object:          Inherited from object class
 | 
						|
#
 | 
						|
class BinaryHeaderObject(object):
 | 
						|
    def __init__(self):
 | 
						|
        self.BinaryHeaderAbstractList = []
 | 
						|
        self.BinaryHeaderDescriptionList = []
 | 
						|
        self.BinaryHeaderCopyrightList = []
 | 
						|
        self.BinaryHeaderLicenseList = []
 | 
						|
 | 
						|
    def SetBinaryHeaderAbstract(self, Abstract):
 | 
						|
        if isinstance(Abstract, list) and Abstract:
 | 
						|
            self.BinaryHeaderAbstractList = Abstract
 | 
						|
        elif isinstance(Abstract, tuple) and Abstract[1]:
 | 
						|
            self.BinaryHeaderAbstractList.append(Abstract)
 | 
						|
 | 
						|
    def GetBinaryHeaderAbstract(self):
 | 
						|
        return self.BinaryHeaderAbstractList
 | 
						|
 | 
						|
    def SetBinaryHeaderDescription(self, Description):
 | 
						|
        if isinstance(Description, list) and Description:
 | 
						|
            self.BinaryHeaderDescriptionList = Description
 | 
						|
        elif isinstance(Description, tuple) and Description[1]:
 | 
						|
            self.BinaryHeaderDescriptionList.append(Description)
 | 
						|
 | 
						|
    def GetBinaryHeaderDescription(self):
 | 
						|
        return self.BinaryHeaderDescriptionList
 | 
						|
 | 
						|
    def SetBinaryHeaderCopyright(self, Copyright):
 | 
						|
        if isinstance(Copyright, list) and Copyright:
 | 
						|
            self.BinaryHeaderCopyrightList = Copyright
 | 
						|
        elif isinstance(Copyright, tuple) and Copyright[1]:
 | 
						|
            self.BinaryHeaderCopyrightList.append(Copyright)
 | 
						|
 | 
						|
    def GetBinaryHeaderCopyright(self):
 | 
						|
        return self.BinaryHeaderCopyrightList
 | 
						|
 | 
						|
    def SetBinaryHeaderLicense(self, License):
 | 
						|
        if isinstance(License, list) and License:
 | 
						|
            self.BinaryHeaderLicenseList = License
 | 
						|
        elif isinstance(License, tuple) and License[1]:
 | 
						|
            self.BinaryHeaderLicenseList.append(License)
 | 
						|
 | 
						|
    def GetBinaryHeaderLicense(self):
 | 
						|
        return self.BinaryHeaderLicenseList
 | 
						|
 | 
						|
## ClonedRecordObject
 | 
						|
#
 | 
						|
# This class defined ClonedRecord items used in Module/Platform/Package files
 | 
						|
#
 | 
						|
# @param object:        Inherited from object class
 | 
						|
#
 | 
						|
class ClonedRecordObject(object):
 | 
						|
    def __init__(self):
 | 
						|
        self.IdNum = 0
 | 
						|
        self.FarGuid = ''
 | 
						|
        self.PackageGuid = ''
 | 
						|
        self.PackageVersion = ''
 | 
						|
        self.ModuleGuid = ''
 | 
						|
        self.ModuleVersion = ''
 | 
						|
 | 
						|
    def SetId(self, IdNo):
 | 
						|
        self.IdNum = IdNo
 | 
						|
 | 
						|
    def GetId(self):
 | 
						|
        return self.IdNum
 | 
						|
 | 
						|
    def SetFarGuid(self, FarGuid):
 | 
						|
        self.FarGuid = FarGuid
 | 
						|
 | 
						|
    def GetFarGuid(self):
 | 
						|
        return self.FarGuid
 | 
						|
 | 
						|
    def SetPackageGuid(self, PackageGuid):
 | 
						|
        self.PackageGuid = PackageGuid
 | 
						|
 | 
						|
    def GetPackageGuid(self):
 | 
						|
        return self.PackageGuid
 | 
						|
 | 
						|
    def SetPackageVersion(self, PackageVersion):
 | 
						|
        self.PackageVersion = PackageVersion
 | 
						|
 | 
						|
    def GetPackageVersion(self):
 | 
						|
        return self.PackageVersion
 | 
						|
 | 
						|
    def SetModuleGuid(self, ModuleGuid):
 | 
						|
        self.ModuleGuid = ModuleGuid
 | 
						|
 | 
						|
    def GetModuleGuid(self):
 | 
						|
        return self.ModuleGuid
 | 
						|
 | 
						|
    def SetModuleVersion(self, ModuleVersion):
 | 
						|
        self.ModuleVersion = ModuleVersion
 | 
						|
 | 
						|
    def GetModuleVersion(self):
 | 
						|
        return self.ModuleVersion
 | 
						|
 | 
						|
## TextObject
 | 
						|
#
 | 
						|
# This class defined Text item used in PKG file
 | 
						|
#
 | 
						|
# @param object:     Inherited from object class
 | 
						|
#
 | 
						|
class TextObject(object):
 | 
						|
    def __init__(self):
 | 
						|
        self.Lang = TAB_LANGUAGE_EN_US
 | 
						|
        self.String = ''
 | 
						|
 | 
						|
    def SetLang(self, Lang):
 | 
						|
        self.Lang = Lang
 | 
						|
 | 
						|
    def GetLang(self):
 | 
						|
        return self.Lang
 | 
						|
 | 
						|
    def SetString(self, String):
 | 
						|
        self.String = String
 | 
						|
 | 
						|
    def GetString(self):
 | 
						|
        return self.String
 | 
						|
 | 
						|
## FileNameObject
 | 
						|
#
 | 
						|
# This class defined File item used in module, for binary files
 | 
						|
#
 | 
						|
# @param CommonPropertiesObject:   Inherited from CommonPropertiesObject class
 | 
						|
#
 | 
						|
class FileNameObject(CommonPropertiesObject):
 | 
						|
    def __init__(self):
 | 
						|
        self.FileType = ''
 | 
						|
        self.Filename = ''
 | 
						|
        CommonPropertiesObject.__init__(self)
 | 
						|
 | 
						|
    def SetFileType(self, FileType):
 | 
						|
        self.FileType = FileType
 | 
						|
 | 
						|
    def GetFileType(self):
 | 
						|
        return self.FileType
 | 
						|
 | 
						|
    def SetFilename(self, Filename):
 | 
						|
        self.Filename = Filename
 | 
						|
 | 
						|
    def GetFilename(self):
 | 
						|
        return self.Filename
 | 
						|
 | 
						|
## FileObject
 | 
						|
#
 | 
						|
# This class defined File item used in PKG file
 | 
						|
#
 | 
						|
# @param object:   Inherited from object class
 | 
						|
#
 | 
						|
class FileObject(object):
 | 
						|
    def __init__(self):
 | 
						|
        self.Executable = ''
 | 
						|
        self.Uri = ''
 | 
						|
        self.OsType = ''
 | 
						|
 | 
						|
    def SetExecutable(self, Executable):
 | 
						|
        self.Executable = Executable
 | 
						|
 | 
						|
    def GetExecutable(self):
 | 
						|
        return self.Executable
 | 
						|
 | 
						|
    def SetURI(self, URI):
 | 
						|
        self.Uri = URI
 | 
						|
 | 
						|
    def GetURI(self):
 | 
						|
        return self.Uri
 | 
						|
 | 
						|
    def SetOS(self, OsType):
 | 
						|
        self.OsType = OsType
 | 
						|
 | 
						|
    def GetOS(self):
 | 
						|
        return self.OsType
 | 
						|
 | 
						|
##
 | 
						|
# MiscFileObject is used for xml
 | 
						|
#
 | 
						|
# @param CommonHeaderObject:   Inherited from CommonHeaderObject class
 | 
						|
#
 | 
						|
class MiscFileObject(CommonHeaderObject):
 | 
						|
    def __init__(self):
 | 
						|
        self.Name = ''
 | 
						|
        self.FileList = []
 | 
						|
        CommonHeaderObject.__init__(self)
 | 
						|
 | 
						|
    def SetName(self, Name):
 | 
						|
        self.Name = Name
 | 
						|
 | 
						|
    def GetName(self):
 | 
						|
        return self.Name
 | 
						|
 | 
						|
    def SetFileList(self, FileList):
 | 
						|
        self.FileList = FileList
 | 
						|
 | 
						|
    def GetFileList(self):
 | 
						|
        return self.FileList
 | 
						|
 | 
						|
##
 | 
						|
# ToolsObject
 | 
						|
#
 | 
						|
class ToolsObject(MiscFileObject):
 | 
						|
    pass
 | 
						|
 | 
						|
## GuidVersionObject
 | 
						|
#
 | 
						|
# This class defined GUID/Version items used in PKG file
 | 
						|
#
 | 
						|
# @param object:     Inherited from object class
 | 
						|
#
 | 
						|
class GuidVersionObject(object):
 | 
						|
    def __init__(self):
 | 
						|
        self.Guid = ''
 | 
						|
        self.Version = ''
 | 
						|
 | 
						|
    def SetGuid(self, Guid):
 | 
						|
        self.Guid = Guid
 | 
						|
 | 
						|
    def GetGuid(self):
 | 
						|
        return self.Guid
 | 
						|
 | 
						|
    def SetVersion(self, Version):
 | 
						|
        self.Version = Version
 | 
						|
 | 
						|
    def GetVersion(self):
 | 
						|
        return self.Version
 | 
						|
 | 
						|
## IdentificationObject
 | 
						|
#
 | 
						|
# This class defined Identification items used in Module/Platform/Package files
 | 
						|
#
 | 
						|
# @param object:    Inherited from object class
 | 
						|
#
 | 
						|
class IdentificationObject(GuidVersionObject):
 | 
						|
    def __init__(self):
 | 
						|
        self.Name = ''
 | 
						|
        self.BaseName = ''
 | 
						|
        self.FileName = ''
 | 
						|
        self.FullPath = ''
 | 
						|
        self.RelaPath = ''
 | 
						|
        self.PackagePath = ''
 | 
						|
        self.ModulePath = ''
 | 
						|
        self.CombinePath = ''
 | 
						|
        GuidVersionObject.__init__(self)
 | 
						|
 | 
						|
    def SetName(self, Name):
 | 
						|
        self.Name = Name
 | 
						|
 | 
						|
    def GetName(self):
 | 
						|
        return self.Name
 | 
						|
 | 
						|
    def SetBaseName(self, BaseName):
 | 
						|
        self.BaseName = BaseName
 | 
						|
 | 
						|
    def GetBaseName(self):
 | 
						|
        return self.BaseName
 | 
						|
 | 
						|
    def SetFileName(self, FileName):
 | 
						|
        self.FileName = FileName
 | 
						|
 | 
						|
    def GetFileName(self):
 | 
						|
        return self.FileName
 | 
						|
 | 
						|
    def SetFullPath(self, FullPath):
 | 
						|
        self.FullPath = FullPath
 | 
						|
 | 
						|
    def GetFullPath(self):
 | 
						|
        return self.FullPath
 | 
						|
 | 
						|
    def SetRelaPath(self, RelaPath):
 | 
						|
        self.RelaPath = RelaPath
 | 
						|
 | 
						|
    def GetRelaPath(self):
 | 
						|
        return self.RelaPath
 | 
						|
 | 
						|
    def SetPackagePath(self, PackagePath):
 | 
						|
        self.PackagePath = PackagePath
 | 
						|
 | 
						|
    def GetPackagePath(self):
 | 
						|
        return self.PackagePath
 | 
						|
 | 
						|
    def SetModulePath(self, ModulePath):
 | 
						|
        self.ModulePath = ModulePath
 | 
						|
 | 
						|
    def GetModulePath(self):
 | 
						|
        return self.ModulePath
 | 
						|
 | 
						|
    def SetCombinePath(self, CombinePath):
 | 
						|
        self.CombinePath = CombinePath
 | 
						|
 | 
						|
    def GetCombinePath(self):
 | 
						|
        return self.CombinePath
 | 
						|
 | 
						|
## GuidProtocolPpiCommonObject
 | 
						|
#
 | 
						|
# This class defined Guid, Protocol and Ppi like items used in
 | 
						|
# Module/Platform/Package files
 | 
						|
#
 | 
						|
# @param CommonPropertiesObject:    Inherited from CommonPropertiesObject class
 | 
						|
#
 | 
						|
class GuidProtocolPpiCommonObject(CommonPropertiesObject):
 | 
						|
    def __init__(self):
 | 
						|
        self.Name = ''
 | 
						|
        self.CName = ''
 | 
						|
        self.Guid = ''
 | 
						|
        self.SupModuleList = []
 | 
						|
        CommonPropertiesObject.__init__(self)
 | 
						|
 | 
						|
    def SetName(self, Name):
 | 
						|
        self.Name = Name
 | 
						|
 | 
						|
    def GetName(self):
 | 
						|
        return self.Name
 | 
						|
 | 
						|
    def SetCName(self, CName):
 | 
						|
        self.CName = CName
 | 
						|
 | 
						|
    def GetCName(self):
 | 
						|
        return self.CName
 | 
						|
 | 
						|
    def SetGuid(self, Guid):
 | 
						|
        self.Guid = Guid
 | 
						|
 | 
						|
    def GetGuid(self):
 | 
						|
        return self.Guid
 | 
						|
 | 
						|
    def SetSupModuleList(self, SupModuleList):
 | 
						|
        self.SupModuleList = SupModuleList
 | 
						|
 | 
						|
    def GetSupModuleList(self):
 | 
						|
        return self.SupModuleList
 | 
						|
 | 
						|
## GuidObject
 | 
						|
#
 | 
						|
# This class defined Guid item used in Module/Platform/Package files
 | 
						|
#
 | 
						|
# @param GuidProtocolPpiCommonObject:  GuidProtocolPpiCommonObject
 | 
						|
#
 | 
						|
class GuidObject(GuidProtocolPpiCommonObject):
 | 
						|
    def __init__(self):
 | 
						|
        self.VariableName = ''
 | 
						|
        self.GuidTypeList = []
 | 
						|
        GuidProtocolPpiCommonObject.__init__(self)
 | 
						|
    def SetVariableName(self, VariableName):
 | 
						|
        self.VariableName = VariableName
 | 
						|
 | 
						|
    def GetVariableName(self):
 | 
						|
        return self.VariableName
 | 
						|
 | 
						|
    def SetGuidTypeList(self, GuidTypeList):
 | 
						|
        self.GuidTypeList = GuidTypeList
 | 
						|
 | 
						|
    def GetGuidTypeList(self):
 | 
						|
        return self.GuidTypeList
 | 
						|
 | 
						|
## ProtocolObject
 | 
						|
#
 | 
						|
# This class defined Protocol item used in Module/Platform/Package files
 | 
						|
#
 | 
						|
# @param GuidProtocolPpiCommonObject:  Inherited from
 | 
						|
#                                      GuidProtocolPpiCommonObject
 | 
						|
#
 | 
						|
class ProtocolObject(GuidProtocolPpiCommonObject):
 | 
						|
    def __init__(self):
 | 
						|
        self.Notify = False
 | 
						|
        GuidProtocolPpiCommonObject.__init__(self)
 | 
						|
    def SetNotify(self, Notify):
 | 
						|
        self.Notify = Notify
 | 
						|
 | 
						|
    def GetNotify(self):
 | 
						|
        return self.Notify
 | 
						|
 | 
						|
## PpiObject
 | 
						|
#
 | 
						|
# This class defined Ppi item used in Module/Platform/Package files
 | 
						|
#
 | 
						|
# @param GuidProtocolPpiCommonObject:  Inherited from
 | 
						|
#                                      GuidProtocolPpiCommonObject
 | 
						|
#
 | 
						|
class PpiObject(GuidProtocolPpiCommonObject):
 | 
						|
    def __init__(self):
 | 
						|
        self.Notify = False
 | 
						|
        GuidProtocolPpiCommonObject.__init__(self)
 | 
						|
    def SetNotify(self, Notify):
 | 
						|
        self.Notify = Notify
 | 
						|
 | 
						|
    def GetNotify(self):
 | 
						|
        return self.Notify
 | 
						|
 | 
						|
## DefineObject
 | 
						|
#
 | 
						|
# This class defined item DEFINE used in Module/Platform/Package files
 | 
						|
#
 | 
						|
# @param object:  Inherited from object class
 | 
						|
#
 | 
						|
class DefineClass(object):
 | 
						|
    def __init__(self):
 | 
						|
        self.Define = {}
 | 
						|
 | 
						|
## UserExtensionObject
 | 
						|
#
 | 
						|
# @param object:  Inherited from object class
 | 
						|
#
 | 
						|
class UserExtensionObject(object):
 | 
						|
    def __init__(self):
 | 
						|
        self.UserID = ''
 | 
						|
        self.Identifier = ''
 | 
						|
        self.BinaryAbstractList = []
 | 
						|
        self.BinaryDescriptionList = []
 | 
						|
        self.BinaryCopyrightList = []
 | 
						|
        self.BinaryLicenseList = []
 | 
						|
        self.UniLangDefsList = []
 | 
						|
        #
 | 
						|
        # { Statement : Arch , ... }
 | 
						|
        #
 | 
						|
        self.DefinesDict = {}
 | 
						|
        #
 | 
						|
        # { Arch : Statement , ... }
 | 
						|
        #
 | 
						|
        self.BuildOptionDict = {}
 | 
						|
        self.IncludesDict = {}
 | 
						|
        self.SourcesDict = {}
 | 
						|
        self.BinariesDict = {}
 | 
						|
        #
 | 
						|
        # UserExtension statement from meta-data file [UserExtension] section
 | 
						|
        #
 | 
						|
        self.Statement = ''
 | 
						|
        self.SupArchList = []
 | 
						|
 | 
						|
    def SetStatement(self, Statement):
 | 
						|
        self.Statement = Statement
 | 
						|
 | 
						|
    def GetStatement(self):
 | 
						|
        return self.Statement
 | 
						|
 | 
						|
    def SetSupArchList(self, ArchList):
 | 
						|
        self.SupArchList = ArchList
 | 
						|
 | 
						|
    def GetSupArchList(self):
 | 
						|
        return self.SupArchList
 | 
						|
 | 
						|
    def SetUserID(self, UserID):
 | 
						|
        self.UserID = UserID
 | 
						|
 | 
						|
    def GetUserID(self):
 | 
						|
        return self.UserID
 | 
						|
 | 
						|
    def SetIdentifier(self, Identifier):
 | 
						|
        self.Identifier = Identifier
 | 
						|
 | 
						|
    def GetIdentifier(self):
 | 
						|
        return self.Identifier
 | 
						|
 | 
						|
    def SetUniLangDefsList(self, UniLangDefsList):
 | 
						|
        self.UniLangDefsList = UniLangDefsList
 | 
						|
 | 
						|
    def GetUniLangDefsList(self):
 | 
						|
        return self.UniLangDefsList
 | 
						|
 | 
						|
    def SetBinaryAbstract(self, BinaryAbstractList):
 | 
						|
        self.BinaryAbstractList = BinaryAbstractList
 | 
						|
 | 
						|
    def GetBinaryAbstract(self, Lang=None):
 | 
						|
        if Lang:
 | 
						|
            for (Key, Value) in self.BinaryAbstractList:
 | 
						|
                if Key == Lang:
 | 
						|
                    return Value
 | 
						|
            return None
 | 
						|
        else:
 | 
						|
            return self.BinaryAbstractList
 | 
						|
 | 
						|
    def SetBinaryDescription(self, BinaryDescriptionList):
 | 
						|
        self.BinaryDescriptionList = BinaryDescriptionList
 | 
						|
 | 
						|
    def GetBinaryDescription(self, Lang=None):
 | 
						|
        if Lang:
 | 
						|
            for (Key, Value) in self.BinaryDescriptionList:
 | 
						|
                if Key == Lang:
 | 
						|
                    return Value
 | 
						|
            return None
 | 
						|
        else:
 | 
						|
            return self.BinaryDescriptionList
 | 
						|
 | 
						|
    def SetBinaryCopyright(self, BinaryCopyrightList):
 | 
						|
        self.BinaryCopyrightList = BinaryCopyrightList
 | 
						|
 | 
						|
    def GetBinaryCopyright(self, Lang=None):
 | 
						|
        if Lang:
 | 
						|
            for (Key, Value) in self.BinaryCopyrightList:
 | 
						|
                if Key == Lang:
 | 
						|
                    return Value
 | 
						|
            return None
 | 
						|
        else:
 | 
						|
            return self.BinaryCopyrightList
 | 
						|
 | 
						|
    def SetBinaryLicense(self, BinaryLicenseList):
 | 
						|
        self.BinaryLicenseList = BinaryLicenseList
 | 
						|
 | 
						|
    def GetBinaryLicense(self, Lang=None):
 | 
						|
        if Lang:
 | 
						|
            for (Key, Value) in self.BinaryLicenseList:
 | 
						|
                if Key == Lang:
 | 
						|
                    return Value
 | 
						|
            return None
 | 
						|
        else:
 | 
						|
            return self.BinaryLicenseList
 | 
						|
 | 
						|
    def SetDefinesDict(self, DefinesDict):
 | 
						|
        self.DefinesDict = DefinesDict
 | 
						|
 | 
						|
    def GetDefinesDict(self):
 | 
						|
        return self.DefinesDict
 | 
						|
 | 
						|
    def SetBuildOptionDict(self, BuildOptionDict):
 | 
						|
        self.BuildOptionDict = BuildOptionDict
 | 
						|
 | 
						|
    def GetBuildOptionDict(self):
 | 
						|
        return self.BuildOptionDict
 | 
						|
 | 
						|
    def SetIncludesDict(self, IncludesDict):
 | 
						|
        self.IncludesDict = IncludesDict
 | 
						|
 | 
						|
    def GetIncludesDict(self):
 | 
						|
        return self.IncludesDict
 | 
						|
 | 
						|
    def SetSourcesDict(self, SourcesDict):
 | 
						|
        self.SourcesDict = SourcesDict
 | 
						|
 | 
						|
    def GetSourcesDict(self):
 | 
						|
        return self.SourcesDict
 | 
						|
 | 
						|
    def SetBinariesDict(self, BinariesDict):
 | 
						|
        self.BinariesDict = BinariesDict
 | 
						|
 | 
						|
    def GetBinariesDict(self):
 | 
						|
        return self.BinariesDict
 | 
						|
 | 
						|
## LibraryClassObject
 | 
						|
#
 | 
						|
# This class defined Library item used in Module/Platform/Package files
 | 
						|
#
 | 
						|
# @param CommonPropertiesObject:  Inherited from CommonPropertiesObject class
 | 
						|
#
 | 
						|
class LibraryClassObject(CommonPropertiesObject):
 | 
						|
    def __init__(self):
 | 
						|
        self.LibraryClass = ''
 | 
						|
        self.IncludeHeader = ''
 | 
						|
        self.SupModuleList = []
 | 
						|
        self.RecommendedInstance = GuidVersionObject()
 | 
						|
        CommonPropertiesObject.__init__(self)
 | 
						|
 | 
						|
    def SetLibraryClass(self, LibraryClass):
 | 
						|
        self.LibraryClass = LibraryClass
 | 
						|
 | 
						|
    def GetLibraryClass(self):
 | 
						|
        return self.LibraryClass
 | 
						|
 | 
						|
    def SetSupModuleList(self, SupModuleList):
 | 
						|
        self.SupModuleList = SupModuleList
 | 
						|
 | 
						|
    def GetSupModuleList(self):
 | 
						|
        return self.SupModuleList
 | 
						|
 | 
						|
    def SetIncludeHeader(self, IncludeHeader):
 | 
						|
        self.IncludeHeader = IncludeHeader
 | 
						|
 | 
						|
    def GetIncludeHeader(self):
 | 
						|
        return self.IncludeHeader
 | 
						|
 | 
						|
    def SetRecommendedInstance(self, RecommendedInstance):
 | 
						|
        self.RecommendedInstance = RecommendedInstance
 | 
						|
 | 
						|
    def GetRecommendedInstance(self):
 | 
						|
        return self.RecommendedInstance
 | 
						|
 | 
						|
 | 
						|
## PcdErrorObject
 | 
						|
#
 | 
						|
# @param object:  Inherited from object class
 | 
						|
#
 | 
						|
class PcdErrorObject(object):
 | 
						|
    def __init__(self):
 | 
						|
        self.ValidValue = ''
 | 
						|
        self.ValidValueLang = ''
 | 
						|
        self.ValidValueRange = ''
 | 
						|
        self.Expression = ''
 | 
						|
        self.ErrorNumber = ''
 | 
						|
        self.ErrorMessageList = []
 | 
						|
        self.TokenSpaceGuidCName = ''
 | 
						|
        self.CName = ''
 | 
						|
        self.FileLine = ''
 | 
						|
        self.LineNum = 0
 | 
						|
 | 
						|
    def SetValidValue(self, ValidValue):
 | 
						|
        self.ValidValue = ValidValue
 | 
						|
 | 
						|
    def GetValidValue(self):
 | 
						|
        return self.ValidValue
 | 
						|
 | 
						|
    def SetValidValueLang(self, ValidValueLang):
 | 
						|
        self.ValidValueLang = ValidValueLang
 | 
						|
 | 
						|
    def GetValidValueLang(self):
 | 
						|
        return self.ValidValueLang
 | 
						|
 | 
						|
    def SetValidValueRange(self, ValidValueRange):
 | 
						|
        self.ValidValueRange = ValidValueRange
 | 
						|
 | 
						|
    def GetValidValueRange(self):
 | 
						|
        return self.ValidValueRange
 | 
						|
 | 
						|
    def SetExpression(self, Expression):
 | 
						|
        self.Expression = Expression
 | 
						|
 | 
						|
    def GetExpression(self):
 | 
						|
        return self.Expression
 | 
						|
 | 
						|
    def SetErrorNumber(self, ErrorNumber):
 | 
						|
        self.ErrorNumber = ErrorNumber
 | 
						|
 | 
						|
    def GetErrorNumber(self):
 | 
						|
        return self.ErrorNumber
 | 
						|
 | 
						|
    def SetErrorMessageList(self, ErrorMessageList):
 | 
						|
        self.ErrorMessageList = ErrorMessageList
 | 
						|
 | 
						|
    def GetErrorMessageList(self):
 | 
						|
        return self.ErrorMessageList
 | 
						|
 | 
						|
    def SetTokenSpaceGuidCName(self, TokenSpaceGuidCName):
 | 
						|
        self.TokenSpaceGuidCName = TokenSpaceGuidCName
 | 
						|
 | 
						|
    def GetTokenSpaceGuidCName(self):
 | 
						|
        return self.TokenSpaceGuidCName
 | 
						|
 | 
						|
    def SetCName(self, CName):
 | 
						|
        self.CName = CName
 | 
						|
 | 
						|
    def GetCName(self):
 | 
						|
        return self.CName
 | 
						|
 | 
						|
    def SetFileLine(self, FileLine):
 | 
						|
        self.FileLine = FileLine
 | 
						|
 | 
						|
    def GetFileLine(self):
 | 
						|
        return self.FileLine
 | 
						|
 | 
						|
    def SetLineNum(self, LineNum):
 | 
						|
        self.LineNum = LineNum
 | 
						|
 | 
						|
    def GetLineNum(self):
 | 
						|
        return self.LineNum
 | 
						|
 | 
						|
 | 
						|
## IncludeObject
 | 
						|
#
 | 
						|
# This class defined Include item used in Module/Platform/Package files
 | 
						|
#
 | 
						|
# @param CommonPropertiesObject:  Inherited from CommonPropertiesObject class
 | 
						|
#
 | 
						|
class IncludeObject(CommonPropertiesObject):
 | 
						|
    def __init__(self):
 | 
						|
        self.FilePath = ''
 | 
						|
        self.ModuleType = ''
 | 
						|
        self.SupModuleList = []
 | 
						|
        self.Comment = ''
 | 
						|
        CommonPropertiesObject.__init__(self)
 | 
						|
 | 
						|
    def SetFilePath(self, FilePath):
 | 
						|
        self.FilePath = FilePath
 | 
						|
 | 
						|
    def GetFilePath(self):
 | 
						|
        return self.FilePath
 | 
						|
 | 
						|
    def SetModuleType(self, ModuleType):
 | 
						|
        self.ModuleType = ModuleType
 | 
						|
 | 
						|
    def GetModuleType(self):
 | 
						|
        return self.ModuleType
 | 
						|
 | 
						|
    def SetSupModuleList(self, SupModuleList):
 | 
						|
        self.SupModuleList = SupModuleList
 | 
						|
 | 
						|
    def GetSupModuleList(self):
 | 
						|
        return self.SupModuleList
 | 
						|
 | 
						|
    def SetComment(self, Comment):
 | 
						|
        self.Comment = Comment
 | 
						|
 | 
						|
    def GetComment(self):
 | 
						|
        return self.Comment
 | 
						|
 | 
						|
## PcdObject
 | 
						|
#
 | 
						|
# This class defined Pcd item used in Module/Platform/Package files
 | 
						|
#
 | 
						|
# @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 []
 | 
						|
#
 | 
						|
class PcdObject(CommonPropertiesObject, HelpTextListObject, PromptListObject):
 | 
						|
    def __init__(self):
 | 
						|
        self.PcdCName = ''
 | 
						|
        self.CName = ''
 | 
						|
        self.Token = ''
 | 
						|
        self.TokenSpaceGuidCName = ''
 | 
						|
        self.TokenSpaceGuidValue = ''
 | 
						|
        self.DatumType = ''
 | 
						|
        self.MaxDatumSize = ''
 | 
						|
        self.DefaultValue = ''
 | 
						|
        self.Offset = ''
 | 
						|
        self.ValidUsage = ''
 | 
						|
        self.ItemType = ''
 | 
						|
        self.PcdErrorsList = []
 | 
						|
        self.SupModuleList = []
 | 
						|
        CommonPropertiesObject.__init__(self)
 | 
						|
        HelpTextListObject.__init__(self)
 | 
						|
        PromptListObject.__init__(self)
 | 
						|
 | 
						|
    def SetPcdCName(self, PcdCName):
 | 
						|
        self.PcdCName = PcdCName
 | 
						|
 | 
						|
    def GetPcdCName(self):
 | 
						|
        return self.PcdCName
 | 
						|
 | 
						|
    def SetCName(self, CName):
 | 
						|
        self.CName = CName
 | 
						|
 | 
						|
    def GetCName(self):
 | 
						|
        return self.CName
 | 
						|
 | 
						|
    def SetToken(self, Token):
 | 
						|
        self.Token = Token
 | 
						|
 | 
						|
    def GetOffset(self):
 | 
						|
        return self.Offset
 | 
						|
 | 
						|
    def SetOffset(self, Offset):
 | 
						|
        self.Offset = Offset
 | 
						|
 | 
						|
    def GetToken(self):
 | 
						|
        return self.Token
 | 
						|
 | 
						|
    def SetTokenSpaceGuidCName(self, TokenSpaceGuidCName):
 | 
						|
        self.TokenSpaceGuidCName = TokenSpaceGuidCName
 | 
						|
 | 
						|
    def GetTokenSpaceGuidCName(self):
 | 
						|
        return self.TokenSpaceGuidCName
 | 
						|
 | 
						|
    def SetTokenSpaceGuidValue(self, TokenSpaceGuidValue):
 | 
						|
        self.TokenSpaceGuidValue = TokenSpaceGuidValue
 | 
						|
 | 
						|
    def GetTokenSpaceGuidValue(self):
 | 
						|
        return self.TokenSpaceGuidValue
 | 
						|
 | 
						|
    def SetDatumType(self, DatumType):
 | 
						|
        self.DatumType = DatumType
 | 
						|
 | 
						|
    def GetDatumType(self):
 | 
						|
        return self.DatumType
 | 
						|
 | 
						|
    def SetMaxDatumSize(self, MaxDatumSize):
 | 
						|
        self.MaxDatumSize = MaxDatumSize
 | 
						|
 | 
						|
    def GetMaxDatumSize(self):
 | 
						|
        return self.MaxDatumSize
 | 
						|
 | 
						|
    def SetDefaultValue(self, DefaultValue):
 | 
						|
        self.DefaultValue = DefaultValue
 | 
						|
 | 
						|
    def GetDefaultValue(self):
 | 
						|
        return self.DefaultValue
 | 
						|
 | 
						|
    def SetValidUsage(self, ValidUsage):
 | 
						|
        self.ValidUsage = ValidUsage
 | 
						|
 | 
						|
    def GetValidUsage(self):
 | 
						|
        return self.ValidUsage
 | 
						|
 | 
						|
    def SetPcdErrorsList(self, PcdErrorsList):
 | 
						|
        self.PcdErrorsList = PcdErrorsList
 | 
						|
 | 
						|
    def GetPcdErrorsList(self):
 | 
						|
        return self.PcdErrorsList
 | 
						|
 | 
						|
    def SetItemType(self, ItemType):
 | 
						|
        self.ItemType = ItemType
 | 
						|
 | 
						|
    def GetItemType(self):
 | 
						|
        return self.ItemType
 | 
						|
 | 
						|
    def SetSupModuleList(self, SupModuleList):
 | 
						|
        self.SupModuleList = SupModuleList
 | 
						|
 | 
						|
    def GetSupModuleList(self):
 | 
						|
        return self.SupModuleList
 |