mirror of
				https://github.com/acidanthera/audk.git
				synced 2025-10-31 11:13:53 +01:00 
			
		
		
		
	BaseTool Branch: https://edk2-buildtools.svn.sourceforge.net/svnroot/edk2-buildtools/branches/Releases/BaseTools_r2100 Signed-off-by: lgao4 Reviewed-by: hchen30 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12214 6f19259b-4bc3-4df7-8a09-765794883524
		
			
				
	
	
		
			148 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			148 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| ## @file
 | |
| # This file is used to define class objects of INF file miscellaneous. 
 | |
| # Include BootMode/HOB/Event and others. It will consumed by InfParser. 
 | |
| #
 | |
| # Copyright (c) 2011, Intel Corporation. All rights reserved.<BR>
 | |
| #
 | |
| # 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 
 | |
| # http://opensource.org/licenses/bsd-license.php
 | |
| #
 | |
| # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
 | |
| # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 | |
| 
 | |
| '''
 | |
| InfMisc
 | |
| '''
 | |
| 
 | |
| import Logger.Log as Logger
 | |
| from Logger import ToolError
 | |
| 
 | |
| from Library import DataType as DT
 | |
| from Object.Parser.InfCommonObject import InfSectionCommonDef
 | |
| from Library.Misc import Sdict
 | |
| 
 | |
| ## 
 | |
| # BootModeObject
 | |
| #
 | |
| class InfBootModeObject():
 | |
|     def __init__(self):
 | |
|         self.SupportedBootModes = ''
 | |
|         self.HelpString = ''
 | |
|         self.Usage = ''
 | |
|             
 | |
|     def SetSupportedBootModes(self, SupportedBootModes):
 | |
|         self.SupportedBootModes = SupportedBootModes   
 | |
|     def GetSupportedBootModes(self):
 | |
|         return self.SupportedBootModes
 | |
| 
 | |
|     def SetHelpString(self, HelpString):
 | |
|         self.HelpString = HelpString
 | |
|     def GetHelpString(self):
 | |
|         return self.HelpString    
 | |
| 
 | |
|     def SetUsage(self, Usage):
 | |
|         self.Usage = Usage
 | |
|     def GetUsage(self):
 | |
|         return self.Usage
 | |
| ##
 | |
| # EventObject
 | |
| #
 | |
| class InfEventObject():
 | |
|     def __init__(self):
 | |
|         self.EventType = ''
 | |
|         self.HelpString = ''
 | |
|         self.Usage = ''
 | |
|             
 | |
|     def SetEventType(self, EventType):
 | |
|         self.EventType = EventType
 | |
|     
 | |
|     def GetEventType(self):
 | |
|         return self.EventType
 | |
|     
 | |
|     def SetHelpString(self, HelpString):
 | |
|         self.HelpString = HelpString
 | |
|     def GetHelpString(self):
 | |
|         return self.HelpString    
 | |
|     
 | |
|     def SetUsage(self, Usage):
 | |
|         self.Usage = Usage
 | |
|     def GetUsage(self):
 | |
|         return self.Usage
 | |
| ##
 | |
| # HobObject
 | |
| #
 | |
| class InfHobObject():
 | |
|     def __init__(self):
 | |
|         self.HobType = ''
 | |
|         self.Usage = ''
 | |
|         self.SupArchList = []
 | |
|         self.HelpString = ''
 | |
|         
 | |
|     def SetHobType(self, HobType):
 | |
|         self.HobType = HobType
 | |
|     
 | |
|     def GetHobType(self):
 | |
|         return self.HobType
 | |
|     
 | |
|     def SetUsage(self, Usage):
 | |
|         self.Usage = Usage
 | |
|     def GetUsage(self):
 | |
|         return self.Usage
 | |
|     
 | |
|     def SetSupArchList(self, ArchList):
 | |
|         self.SupArchList = ArchList
 | |
|     def GetSupArchList(self):
 | |
|         return self.SupArchList
 | |
|     
 | |
|     def SetHelpString(self, HelpString):
 | |
|         self.HelpString = HelpString
 | |
|     def GetHelpString(self):
 | |
|         return self.HelpString
 | |
|     
 | |
| ##
 | |
| # InfSpecialCommentObject
 | |
| #    
 | |
| class InfSpecialCommentObject(InfSectionCommonDef):
 | |
|     def __init__(self):
 | |
|         self.SpecialComments = Sdict()
 | |
|         InfSectionCommonDef.__init__(self)
 | |
|         
 | |
|     def SetSpecialComments(self, SepcialSectionList = None, Type = ''):
 | |
|         if Type == DT.TYPE_HOB_SECTION or \
 | |
|            Type == DT.TYPE_EVENT_SECTION or \
 | |
|            Type == DT.TYPE_BOOTMODE_SECTION:
 | |
|             for Item in SepcialSectionList:
 | |
|                 if self.SpecialComments.has_key(Type):           
 | |
|                     ObjList = self.SpecialComments[Type]
 | |
|                     ObjList.append(Item)
 | |
|                     self.SpecialComments[Type] = ObjList
 | |
|                 else:
 | |
|                     ObjList = []
 | |
|                     ObjList.append(Item)
 | |
|                     self.SpecialComments[Type] = ObjList
 | |
|            
 | |
|         return True
 | |
|     
 | |
|     def GetSpecialComments(self):
 | |
|         return self.SpecialComments
 | |
| 
 | |
| 
 | |
| 
 | |
| ## ErrorInInf
 | |
| # 
 | |
| # An encapsulate of Error for INF parser.
 | |
| # 
 | |
| def ErrorInInf(Message=None, ErrorCode=None, LineInfo=None, RaiseError=True):
 | |
|     if ErrorCode == None:
 | |
|         ErrorCode = ToolError.FORMAT_INVALID
 | |
|     if LineInfo == None:
 | |
|         LineInfo = ['', -1, '']
 | |
|     Logger.Error("InfParser", 
 | |
|                  ErrorCode, 
 | |
|                  Message=Message, 
 | |
|                  File=LineInfo[0], 
 | |
|                  Line=LineInfo[1],
 | |
|                  ExtraData=LineInfo[2], 
 | |
|                  RaiseError=RaiseError) |