]>
git.proxmox.com Git - mirror_edk2.git/blob - BaseTools/Source/Python/CommonDataClass/FdfClass.py
2 # classes represent data in FDF
4 # Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>
6 # This program and the accompanying materials
7 # are licensed and made available under the terms and conditions of the BSD License
8 # which accompanies this distribution. The full text of the license may be found at
9 # http://opensource.org/licenses/bsd-license.php
11 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
21 # @param self The object pointer
25 self
.CreateFileName
= None
26 self
.BaseAddress
= None
27 self
.BaseAddressPcd
= None
30 self
.ErasePolarity
= None
31 # 3-tuple list (blockSize, numBlocks, pcd)
32 self
.BlockSizeList
= []
33 # DefineVarDict[var] = value
34 self
.DefineVarDict
= {}
35 # SetVarDict[var] = value
45 # @param self The object pointer
54 ## FILE statement data in FDF
57 class FileStatementClassObject (FfsClassObject
) :
60 # @param self The object pointer
63 FfsClassObject
.__init
__(self
)
64 self
.FvFileType
= None
66 self
.KeyStringList
= []
69 self
.DefineVarDict
= {}
72 ## INF statement data in FDF
75 class FfsInfStatementClassObject(FfsClassObject
):
78 # @param self The object pointer
81 FfsClassObject
.__init
__(self
)
85 self
.InfFileName
= None
87 self
.KeyStringList
= []
91 ## section data in FDF
94 class SectionClassObject
:
97 # @param self The object pointer
100 self
.Alignment
= None
102 ## Depex expression section in FDF
105 class DepexSectionClassObject (SectionClassObject
):
108 # @param self The object pointer
111 self
.DepexType
= None
112 self
.Expression
= None
113 self
.ExpressionProcessed
= False
115 ## Compress section data in FDF
118 class CompressSectionClassObject (SectionClassObject
) :
121 # @param self The object pointer
124 SectionClassObject
.__init
__(self
)
126 self
.SectionList
= []
128 ## Data section data in FDF
131 class DataSectionClassObject (SectionClassObject
):
134 # @param self The object pointer
137 SectionClassObject
.__init
__(self
)
139 self
.SectFileName
= None
140 self
.SectionList
= []
141 self
.KeepReloc
= True
143 ## Rule section data in FDF
146 class EfiSectionClassObject (SectionClassObject
):
149 # @param self The object pointer
152 SectionClassObject
.__init
__(self
)
153 self
.SectionType
= None
154 self
.Optional
= False
156 self
.StringData
= None
158 self
.FileExtension
= None
160 self
.KeepReloc
= None
162 ## FV image section data in FDF
165 class FvImageSectionClassObject (SectionClassObject
):
168 # @param self The object pointer
171 SectionClassObject
.__init
__(self
)
174 self
.FvFileType
= None
175 self
.FvFileName
= None
176 self
.FvFileExtension
= None
179 ## GUIDed section data in FDF
182 class GuidSectionClassObject (SectionClassObject
) :
185 # @param self The object pointer
188 SectionClassObject
.__init
__(self
)
190 self
.SectionList
= []
191 self
.SectionType
= None
192 self
.ProcessRequired
= False
193 self
.AuthStatusValid
= False
194 self
.ExtraHeaderSize
= -1
196 self
.FvParentAddr
= None
197 self
.IncludeFvSection
= False
199 ## UI section data in FDF
202 class UiSectionClassObject (SectionClassObject
):
205 # @param self The object pointer
208 SectionClassObject
.__init
__(self
)
209 self
.StringData
= None
212 ## Version section data in FDF
215 class VerSectionClassObject (SectionClassObject
):
218 # @param self The object pointer
221 SectionClassObject
.__init
__(self
)
223 self
.StringData
= None
229 class RuleClassObject
:
232 # @param self The object pointer
236 self
.ModuleType
= None # For Module Type
237 self
.TemplateName
= None
240 self
.Alignment
= None
241 self
.SectAlignment
= None
242 self
.CheckSum
= False
243 self
.FvFileType
= None # for Ffs File Type
244 self
.KeyStringList
= []
245 self
.KeepReloc
= None
247 ## Complex rule data in FDF
250 class RuleComplexFileClassObject(RuleClassObject
) :
253 # @param self The object pointer
256 RuleClassObject
.__init
__(self
)
257 self
.SectionList
= []
259 ## Simple rule data in FDF
262 class RuleSimpleFileClassObject(RuleClassObject
) :
265 # @param self The object pointer
268 RuleClassObject
.__init
__(self
)
270 self
.SectionType
= ''
271 self
.FileExtension
= None
273 ## File extension rule data in FDF
276 class RuleFileExtensionClassObject(RuleClassObject
):
279 # @param self The object pointer
282 RuleClassObject
.__init
__(self
)
283 self
.FileExtension
= None
285 ## Capsule data in FDF
288 class CapsuleClassObject
:
291 # @param self The object pointer
295 self
.UiCapsuleName
= None
296 self
.CreateFile
= None
297 self
.GroupIdNumber
= None
298 # DefineVarDict[var] = value
299 self
.DefineVarDict
= {}
300 # SetVarDict[var] = value
302 # TokensDict[var] = value
304 self
.CapsuleDataList
= []
305 self
.FmpPayloadList
= []
307 ## OptionROM data in FDF
310 class OptionRomClassObject
:
313 # @param self The object pointer
316 self
.DriverName
= None