]> git.proxmox.com Git - mirror_edk2.git/blame - BaseTools/Source/Python/CommonDataClass/FdfClass.py
Fix build break caused by adding DebugAgentLib to the DXE Core.
[mirror_edk2.git] / BaseTools / Source / Python / CommonDataClass / FdfClass.py
CommitLineData
30fdf114
LG
1## @file\r
2# classes represent data in FDF\r
3#\r
4# Copyright (c) 2007, Intel Corporation\r
5#\r
6# All rights reserved. This program and the accompanying materials\r
7# are licensed and made available under the terms and conditions of the BSD License\r
8# which accompanies this distribution. The full text of the license may be found at\r
9# http://opensource.org/licenses/bsd-license.php\r
10#\r
11# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
12# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
13#\r
14\r
15## FD data in FDF\r
16#\r
17#\r
18class FDClassObject:\r
19 ## The constructor\r
20 #\r
21 # @param self The object pointer\r
22 #\r
23 def __init__(self):\r
24 self.FdUiName = ''\r
25 self.CreateFileName = None\r
26 self.BaseAddress = None\r
27 self.BaseAddressPcd = None\r
28 self.Size = None\r
29 self.SizePcd = None\r
30 self.ErasePolarity = '1'\r
31 # 3-tuple list (blockSize, numBlocks, pcd)\r
32 self.BlockSizeList = []\r
33 # DefineVarDict[var] = value\r
34 self.DefineVarDict = {}\r
35 # SetVarDict[var] = value\r
36 self.SetVarDict = {}\r
37 self.RegionList = []\r
38 self.vtfRawDict = {}\r
39\r
40## FV data in FDF\r
41#\r
42#\r
43class FvClassObject:\r
44 ## The constructor\r
45 #\r
46 # @param self The object pointer\r
47 #\r
48 def __init__(self):\r
49 self.UiFvName = None\r
50 self.CreateFileName = None\r
51 # 3-tuple list (blockSize, numBlocks, pcd)\r
52 self.BlockSizeList = []\r
53 # DefineVarDict[var] = value\r
54 self.DefineVarDict = {}\r
55 # SetVarDict[var] = value\r
56 self.SetVarDict = {}\r
57 self.FvAlignment = None\r
58 # FvAttributeDict[attribute] = TRUE/FALSE (1/0)\r
59 self.FvAttributeDict = {}\r
60 self.FvNameGuid = None\r
61 self.AprioriSectionList = []\r
62 self.FfsList = []\r
63 self.BsBaseAddress = None\r
64 self.RtBaseAddress = None\r
65\r
66## Region data in FDF\r
67#\r
68#\r
69class RegionClassObject:\r
70 ## The constructor\r
71 #\r
72 # @param self The object pointer\r
73 #\r
74 def __init__(self):\r
75 self.Offset = None # The begin position of the Region\r
76 self.Size = None # The Size of the Region\r
77 self.PcdOffset = None\r
78 self.PcdSize = None\r
79 self.SetVarDict = {}\r
80 self.RegionType = None\r
81 self.RegionDataList = []\r
82\r
83## FFS data in FDF\r
84#\r
85# \r
86class FfsClassObject:\r
87 ## The constructor\r
88 #\r
89 # @param self The object pointer\r
90 #\r
91 def __init__(self):\r
92 self.NameGuid = None\r
93 self.Fixed = False\r
94 self.CheckSum = False\r
95 self.Alignment = None\r
96 self.SectionList = []\r
97\r
98## FILE statement data in FDF\r
99#\r
100# \r
101class FileStatementClassObject (FfsClassObject) :\r
102 ## The constructor\r
103 #\r
104 # @param self The object pointer\r
105 #\r
106 def __init__(self):\r
107 FfsClassObject.__init__(self)\r
108 self.FvFileType = None\r
109 self.FileName = None\r
110 self.KeyStringList = []\r
111 self.FvName = None\r
112 self.FdName = None\r
113 self.DefineVarDict = {}\r
114 self.AprioriSection = None\r
115 self.KeepReloc = None\r
116\r
117## INF statement data in FDF\r
118#\r
119#\r
120class FfsInfStatementClassObject(FfsClassObject):\r
121 ## The constructor\r
122 #\r
123 # @param self The object pointer\r
124 #\r
125 def __init__(self):\r
126 FfsClassObject.__init__(self)\r
127 self.Rule = None\r
128 self.Version = None\r
129 self.Ui = None\r
130 self.InfFileName = None\r
131 self.BuildNum = ''\r
132 self.KeyStringList = []\r
133 self.KeepReloc = None\r
134 self.UseArch = None\r
135\r
136## APRIORI section data in FDF\r
137#\r
138#\r
139class AprioriSectionClassObject:\r
140 ## The constructor\r
141 #\r
142 # @param self The object pointer\r
143 #\r
144 def __init__(self):\r
145 # DefineVarDict[var] = value\r
146 self.DefineVarDict = {}\r
147 self.FfsList = []\r
148\r
149## section data in FDF\r
150#\r
151# \r
152class SectionClassObject:\r
153 ## The constructor\r
154 #\r
155 # @param self The object pointer\r
156 #\r
157 def __init__(self):\r
158 self.Alignment = None\r
159 \r
160## Depex expression section in FDF\r
161#\r
162# \r
163class DepexSectionClassObject (SectionClassObject):\r
164 ## The constructor\r
165 #\r
166 # @param self The object pointer\r
167 #\r
168 def __init__(self):\r
169 self.DepexType = None\r
170 self.Expression = None\r
171\r
172## Compress section data in FDF\r
173#\r
174#\r
175class CompressSectionClassObject (SectionClassObject) :\r
176 ## The constructor\r
177 #\r
178 # @param self The object pointer\r
179 #\r
180 def __init__(self):\r
181 SectionClassObject.__init__(self)\r
182 self.CompType = None\r
183 self.SectionList = []\r
184\r
185## Data section data in FDF\r
186#\r
187# \r
188class DataSectionClassObject (SectionClassObject):\r
189 ## The constructor\r
190 #\r
191 # @param self The object pointer\r
192 #\r
193 def __init__(self):\r
194 SectionClassObject.__init__(self)\r
195 self.SecType = None\r
196 self.SectFileName = None\r
197 self.SectionList = []\r
198 self.KeepReloc = True\r
199\r
200## Rule section data in FDF\r
201#\r
202#\r
203class EfiSectionClassObject (SectionClassObject):\r
204 ## The constructor\r
205 #\r
206 # @param self The object pointer\r
207 #\r
208 def __init__(self):\r
209 SectionClassObject.__init__(self)\r
210 self.SectionType = None\r
211 self.Optional = False\r
212 self.FileType = None\r
213 self.StringData = None\r
214 self.FileName = None\r
215 self.FileExtension = None\r
216 self.BuildNum = None\r
217 self.KeepReloc = None\r
218\r
219## FV image section data in FDF\r
220#\r
221# \r
222class FvImageSectionClassObject (SectionClassObject):\r
223 ## The constructor\r
224 #\r
225 # @param self The object pointer\r
226 #\r
227 def __init__(self):\r
228 SectionClassObject.__init__(self)\r
229 self.Fv = None\r
230 self.FvName = None\r
231 self.FvFileType = None\r
232 self.FvFileName = None\r
233 self.FvFileExtension = None\r
234\r
235## GUIDed section data in FDF\r
236#\r
237# \r
238class GuidSectionClassObject (SectionClassObject) :\r
239 ## The constructor\r
240 #\r
241 # @param self The object pointer\r
242 #\r
243 def __init__(self):\r
244 SectionClassObject.__init__(self)\r
245 self.NameGuid = None\r
246 self.SectionList = []\r
247 self.SectionType = None\r
248 self.ProcessRequired = False\r
249 self.AuthStatusValid = False\r
250\r
251## UI section data in FDF\r
252#\r
253#\r
254class UiSectionClassObject (SectionClassObject):\r
255 ## The constructor\r
256 #\r
257 # @param self The object pointer\r
258 #\r
259 def __init__(self):\r
260 SectionClassObject.__init__(self)\r
261 self.StringData = None\r
262 self.FileName = None\r
263\r
264## Version section data in FDF\r
265#\r
266# \r
267class VerSectionClassObject (SectionClassObject):\r
268 ## The constructor\r
269 #\r
270 # @param self The object pointer\r
271 #\r
272 def __init__(self):\r
273 SectionClassObject.__init__(self)\r
274 self.BuildNum = None\r
275 self.StringData = None\r
276 self.FileName = None\r
277\r
278## Rule data in FDF\r
279#\r
280#\r
281class RuleClassObject :\r
282 ## The constructor\r
283 #\r
284 # @param self The object pointer\r
285 #\r
286 def __init__(self):\r
287 self.Arch = None\r
288 self.ModuleType = None # For Module Type\r
289 self.TemplateName = None\r
290 self.NameGuid = None\r
291 self.Fixed = False\r
292 self.Alignment = None\r
293 self.CheckSum = False\r
294 self.FvFileType = None # for Ffs File Type\r
295 self.KeyStringList = []\r
296 self.KeepReloc = None\r
297\r
298## Complex rule data in FDF\r
299#\r
300# \r
301class RuleComplexFileClassObject(RuleClassObject) :\r
302 ## The constructor\r
303 #\r
304 # @param self The object pointer\r
305 #\r
306 def __init__(self):\r
307 RuleClassObject.__init__(self)\r
308 self.SectionList = []\r
309\r
310## Simple rule data in FDF\r
311#\r
312#\r
313class RuleSimpleFileClassObject(RuleClassObject) :\r
314 ## The constructor\r
315 #\r
316 # @param self The object pointer\r
317 #\r
318 def __init__(self):\r
319 RuleClassObject.__init__(self)\r
320 self.FileName = None\r
321 self.SectionType = ''\r
322 self.FileExtension = None\r
323\r
324## File extension rule data in FDF\r
325#\r
326#\r
327class RuleFileExtensionClassObject(RuleClassObject):\r
328 ## The constructor\r
329 #\r
330 # @param self The object pointer\r
331 #\r
332 def __init__(self):\r
333 RuleClassObject.__init__(self)\r
334 self.FileExtension = None\r
335\r
336## Capsule data in FDF\r
337#\r
338# \r
339class CapsuleClassObject :\r
340 ## The constructor\r
341 #\r
342 # @param self The object pointer\r
343 #\r
344 def __init__(self):\r
345 self.SpecName = None\r
346 self.UiCapsuleName = None\r
347 self.CreateFile = None\r
348 self.GroupIdNumber = None\r
349 # DefineVarDict[var] = value\r
350 self.DefineVarDict = {}\r
351 # SetVarDict[var] = value\r
352 self.SetVarDict = {}\r
353 # TokensDict[var] = value\r
354 self.TokensDict = {}\r
355 self.CapsuleDataList = []\r
356\r
357## VTF data in FDF\r
358#\r
359#\r
360class VtfClassObject :\r
361 ## The constructor\r
362 #\r
363 # @param self The object pointer\r
364 #\r
365 def __init__(self):\r
366 self.KeyArch = None\r
367 self.ArchList = None\r
368 self.UiName = None\r
369 self.ResetBin = None\r
370 self.ComponentStatementList = []\r
371\r
372## VTF component data in FDF\r
373#\r
374# \r
375class ComponentStatementClassObject :\r
376 ## The constructor\r
377 #\r
378 # @param self The object pointer\r
379 #\r
380 def __init__(self):\r
381 self.CompName = None\r
382 self.CompLoc = None\r
383 self.CompType = None\r
384 self.CompVer = None\r
385 self.CompCs = None\r
386 self.CompBin = None\r
387 self.CompSym = None\r
388 self.CompSize = None\r
389 self.FilePos = None\r
390 \r
391## OptionROM data in FDF\r
392#\r
393#\r
394class OptionRomClassObject:\r
395 ## The constructor\r
396 #\r
397 # @param self The object pointer\r
398 #\r
399 def __init__(self):\r
400 self.DriverName = None\r
401 self.FfsList = []\r
402