1## @file
2# This file is used to define common items of class object
3#
4# Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>
5#
6# This program and the accompanying materials are licensed and made available
7# under the terms and conditions of the BSD License which accompanies this
8# distribution. The full text of the license may be found at
9# http://opensource.org/licenses/bsd-license.php
10#
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.
13
14'''
15Common Object
16'''
17from Library.DataType import TAB_LANGUAGE_EN_US
18
19## HelpTextObject
20#
21# @param object:       Inherited from object class
22#
23class HelpTextObject(object):
24    def __init__(self):
25        self.HelpText = TextObject()
26
27    def SetHelpText(self, HelpText):
28        self.HelpText = HelpText
29
30    def GetHelpText(self):
31        return self.HelpText
32
33## HelpTextListObject
34#
35# @param object:       Inherited from object class
36#
37class HelpTextListObject(object):
38    def __init__(self):
39        self.HelpTextList = []
40
41    def SetHelpTextList(self, HelpTextList):
42        self.HelpTextList = HelpTextList
43
44    def GetHelpTextList(self):
45        return self.HelpTextList
46
47## PromptListObject
48#
49# @param object:       Inherited from object class
50#
51class PromptListObject(object):
52    def __init__(self):
53        self.PromptList = []
54
55    def SetPromptList(self, PromptList):
56        self.PromptList = PromptList
57
58    def GetPromptList(self):
59        return self.PromptList
60
61## CommonPropertiesObject
62#
63# This class defined common attribution used in Module/Platform/Package files
64#
65# @param object:       Inherited from object class
66# @param Usage:        Input value for Usage, default is []
67# @param FeatureFlag:  Input value for FeatureFalg, default is ''
68# @param SupArchList:  Input value for SupArchList, default is []
69# @param HelpText:     Input value for HelpText, default is ''
70# @param HelpTextList: Input value for HelpTextList, default is []
71#
72class CommonPropertiesObject(HelpTextObject, HelpTextListObject):
73    def __init__(self):
74        self.Usage = []
75        self.FeatureFlag = ''
76        self.SupArchList = []
77        self.GuidValue = ''
78        HelpTextObject.__init__(self)
79        HelpTextListObject.__init__(self)
80
81    def SetUsage(self, Usage):
82        self.Usage = Usage
83
84    def GetUsage(self):
85        return self.Usage
86
87    def SetFeatureFlag(self, FeatureFlag):
88        self.FeatureFlag = FeatureFlag
89
90    def GetFeatureFlag(self):
91        return self.FeatureFlag
92
93    def SetSupArchList(self, SupArchList):
94        self.SupArchList = SupArchList
95
96    def GetSupArchList(self):
97        return self.SupArchList
98
99    def SetGuidValue(self, GuidValue):
100        self.GuidValue = GuidValue
101
102    def GetGuidValue(self):
103        return self.GuidValue
104
105## CommonHeaderObject
106#
107# This class defined common header items used in Module/Platform/Package files
108#
109# @param object:          Inherited from object class
110#
111class CommonHeaderObject(object):
112    def __init__(self):
113        self.AbstractList = []
114        self.DescriptionList = []
115        self.CopyrightList = []
116        self.LicenseList = []
117
118    def SetAbstract(self, Abstract):
119        if isinstance(Abstract, list):
120            self.AbstractList = Abstract
121        else:
122            self.AbstractList.append(Abstract)
123
124    def GetAbstract(self):
125        return self.AbstractList
126
127    def SetDescription(self, Description):
128        if isinstance(Description, list):
129            self.DescriptionList = Description
130        else:
131            self.DescriptionList.append(Description)
132
133    def GetDescription(self):
134        return self.DescriptionList
135
136    def SetCopyright(self, Copyright):
137        if isinstance(Copyright, list):
138            self.CopyrightList = Copyright
139        else:
140            self.CopyrightList.append(Copyright)
141
142    def GetCopyright(self):
143        return self.CopyrightList
144
145    def SetLicense(self, License):
146        if isinstance(License, list):
147            self.LicenseList = License
148        else:
149            self.LicenseList.append(License)
150
151    def GetLicense(self):
152        return self.LicenseList
153
154## BinaryHeaderObject
155#
156# This class defined Binary header items used in Module/Platform/Package files
157#
158# @param object:          Inherited from object class
159#
160class BinaryHeaderObject(object):
161    def __init__(self):
162        self.BinaryHeaderAbstractList = []
163        self.BinaryHeaderDescriptionList = []
164        self.BinaryHeaderCopyrightList = []
165        self.BinaryHeaderLicenseList = []
166
167    def SetBinaryHeaderAbstract(self, Abstract):
168        if isinstance(Abstract, list) and Abstract:
169            self.BinaryHeaderAbstractList = Abstract
170        elif isinstance(Abstract, tuple) and Abstract[1]:
171            self.BinaryHeaderAbstractList.append(Abstract)
172
173    def GetBinaryHeaderAbstract(self):
174        return self.BinaryHeaderAbstractList
175
176    def SetBinaryHeaderDescription(self, Description):
177        if isinstance(Description, list) and Description:
178            self.BinaryHeaderDescriptionList = Description
179        elif isinstance(Description, tuple) and Description[1]:
180            self.BinaryHeaderDescriptionList.append(Description)
181
182    def GetBinaryHeaderDescription(self):
183        return self.BinaryHeaderDescriptionList
184
185    def SetBinaryHeaderCopyright(self, Copyright):
186        if isinstance(Copyright, list) and Copyright:
187            self.BinaryHeaderCopyrightList = Copyright
188        elif isinstance(Copyright, tuple) and Copyright[1]:
189            self.BinaryHeaderCopyrightList.append(Copyright)
190
191    def GetBinaryHeaderCopyright(self):
192        return self.BinaryHeaderCopyrightList
193
194    def SetBinaryHeaderLicense(self, License):
195        if isinstance(License, list) and License:
196            self.BinaryHeaderLicenseList = License
197        elif isinstance(License, tuple) and License[1]:
198            self.BinaryHeaderLicenseList.append(License)
199
200    def GetBinaryHeaderLicense(self):
201        return self.BinaryHeaderLicenseList
202
203## ClonedRecordObject
204#
205# This class defined ClonedRecord items used in Module/Platform/Package files
206#
207# @param object:        Inherited from object class
208#
209class ClonedRecordObject(object):
210    def __init__(self):
211        self.IdNum = 0
212        self.FarGuid = ''
213        self.PackageGuid = ''
214        self.PackageVersion = ''
215        self.ModuleGuid = ''
216        self.ModuleVersion = ''
217
218    def SetId(self, IdNo):
219        self.IdNum = IdNo
220
221    def GetId(self):
222        return self.IdNum
223
224    def SetFarGuid(self, FarGuid):
225        self.FarGuid = FarGuid
226
227    def GetFarGuid(self):
228        return self.FarGuid
229
230    def SetPackageGuid(self, PackageGuid):
231        self.PackageGuid = PackageGuid
232
233    def GetPackageGuid(self):
234        return self.PackageGuid
235
236    def SetPackageVersion(self, PackageVersion):
237        self.PackageVersion = PackageVersion
238
239    def GetPackageVersion(self):
240        return self.PackageVersion
241
242    def SetModuleGuid(self, ModuleGuid):
243        self.ModuleGuid = ModuleGuid
244
245    def GetModuleGuid(self):
246        return self.ModuleGuid
247
248    def SetModuleVersion(self, ModuleVersion):
249        self.ModuleVersion = ModuleVersion
250
251    def GetModuleVersion(self):
252        return self.ModuleVersion
253
254## TextObject
255#
256# This class defined Text item used in PKG file
257#
258# @param object:     Inherited from object class
259#
260class TextObject(object):
261    def __init__(self):
262        self.Lang = TAB_LANGUAGE_EN_US
263        self.String = ''
264
265    def SetLang(self, Lang):
266        self.Lang = Lang
267
268    def GetLang(self):
269        return self.Lang
270
271    def SetString(self, String):
272        self.String = String
273
274    def GetString(self):
275        return self.String
276
277## FileNameObject
278#
279# This class defined File item used in module, for binary files
280#
281# @param CommonPropertiesObject:   Inherited from CommonPropertiesObject class
282#
283class FileNameObject(CommonPropertiesObject):
284    def __init__(self):
285        self.FileType = ''
286        self.Filename = ''
287        CommonPropertiesObject.__init__(self)
288
289    def SetFileType(self, FileType):
290        self.FileType = FileType
291
292    def GetFileType(self):
293        return self.FileType
294
295    def SetFilename(self, Filename):
296        self.Filename = Filename
297
298    def GetFilename(self):
299        return self.Filename
300
301## FileObject
302#
303# This class defined File item used in PKG file
304#
305# @param object:   Inherited from object class
306#
307class FileObject(object):
308    def __init__(self):
309        self.Executable = ''
310        self.Uri = ''
311        self.OsType = ''
312
313    def SetExecutable(self, Executable):
314        self.Executable = Executable
315
316    def GetExecutable(self):
317        return self.Executable
318
319    def SetURI(self, URI):
320        self.Uri = URI
321
322    def GetURI(self):
323        return self.Uri
324
325    def SetOS(self, OsType):
326        self.OsType = OsType
327
328    def GetOS(self):
329        return self.OsType
330
331##
332# MiscFileObject is used for xml
333#
334# @param CommonHeaderObject:   Inherited from CommonHeaderObject class
335#
336class MiscFileObject(CommonHeaderObject):
337    def __init__(self):
338        self.Name = ''
339        self.FileList = []
340        CommonHeaderObject.__init__(self)
341
342    def SetName(self, Name):
343        self.Name = Name
344
345    def GetName(self):
346        return self.Name
347
348    def SetFileList(self, FileList):
349        self.FileList = FileList
350
351    def GetFileList(self):
352        return self.FileList
353
354##
355# ToolsObject
356#
357class ToolsObject(MiscFileObject):
358    pass
359
360## GuidVersionObject
361#
362# This class defined GUID/Version items used in PKG file
363#
364# @param object:     Inherited from object class
365#
366class GuidVersionObject(object):
367    def __init__(self):
368        self.Guid = ''
369        self.Version = ''
370
371    def SetGuid(self, Guid):
372        self.Guid = Guid
373
374    def GetGuid(self):
375        return self.Guid
376
377    def SetVersion(self, Version):
378        self.Version = Version
379
380    def GetVersion(self):
381        return self.Version
382
383## IdentificationObject
384#
385# This class defined Identification items used in Module/Platform/Package files
386#
387# @param object:    Inherited from object class
388#
389class IdentificationObject(GuidVersionObject):
390    def __init__(self):
391        self.Name = ''
392        self.BaseName = ''
393        self.FileName = ''
394        self.FullPath = ''
395        self.RelaPath = ''
396        self.PackagePath = ''
397        self.ModulePath = ''
398        self.CombinePath = ''
399        GuidVersionObject.__init__(self)
400
401    def SetName(self, Name):
402        self.Name = Name
403
404    def GetName(self):
405        return self.Name
406
407    def SetBaseName(self, BaseName):
408        self.BaseName = BaseName
409
410    def GetBaseName(self):
411        return self.BaseName
412
413    def SetFileName(self, FileName):
414        self.FileName = FileName
415
416    def GetFileName(self):
417        return self.FileName
418
419    def SetFullPath(self, FullPath):
420        self.FullPath = FullPath
421
422    def GetFullPath(self):
423        return self.FullPath
424
425    def SetRelaPath(self, RelaPath):
426        self.RelaPath = RelaPath
427
428    def GetRelaPath(self):
429        return self.RelaPath
430
431    def SetPackagePath(self, PackagePath):
432        self.PackagePath = PackagePath
433
434    def GetPackagePath(self):
435        return self.PackagePath
436
437    def SetModulePath(self, ModulePath):
438        self.ModulePath = ModulePath
439
440    def GetModulePath(self):
441        return self.ModulePath
442
443    def SetCombinePath(self, CombinePath):
444        self.CombinePath = CombinePath
445
446    def GetCombinePath(self):
447        return self.CombinePath
448
449## GuidProtocolPpiCommonObject
450#
451# This class defined Guid, Protocol and Ppi like items used in
452# Module/Platform/Package files
453#
454# @param CommonPropertiesObject:    Inherited from CommonPropertiesObject class
455#
456class GuidProtocolPpiCommonObject(CommonPropertiesObject):
457    def __init__(self):
458        self.Name = ''
459        self.CName = ''
460        self.Guid = ''
461        self.SupModuleList = []
462        CommonPropertiesObject.__init__(self)
463
464    def SetName(self, Name):
465        self.Name = Name
466
467    def GetName(self):
468        return self.Name
469
470    def SetCName(self, CName):
471        self.CName = CName
472
473    def GetCName(self):
474        return self.CName
475
476    def SetGuid(self, Guid):
477        self.Guid = Guid
478
479    def GetGuid(self):
480        return self.Guid
481
482    def SetSupModuleList(self, SupModuleList):
483        self.SupModuleList = SupModuleList
484
485    def GetSupModuleList(self):
486        return self.SupModuleList
487
488## GuidObject
489#
490# This class defined Guid item used in Module/Platform/Package files
491#
492# @param GuidProtocolPpiCommonObject:  GuidProtocolPpiCommonObject
493#
494class GuidObject(GuidProtocolPpiCommonObject):
495    def __init__(self):
496        self.VariableName = ''
497        self.GuidTypeList = []
498        GuidProtocolPpiCommonObject.__init__(self)
499    def SetVariableName(self, VariableName):
500        self.VariableName = VariableName
501
502    def GetVariableName(self):
503        return self.VariableName
504
505    def SetGuidTypeList(self, GuidTypeList):
506        self.GuidTypeList = GuidTypeList
507
508    def GetGuidTypeList(self):
509        return self.GuidTypeList
510
511## ProtocolObject
512#
513# This class defined Protocol item used in Module/Platform/Package files
514#
515# @param GuidProtocolPpiCommonObject:  Inherited from
516#                                      GuidProtocolPpiCommonObject
517#
518class ProtocolObject(GuidProtocolPpiCommonObject):
519    def __init__(self):
520        self.Notify = False
521        GuidProtocolPpiCommonObject.__init__(self)
522    def SetNotify(self, Notify):
523        self.Notify = Notify
524
525    def GetNotify(self):
526        return self.Notify
527
528## PpiObject
529#
530# This class defined Ppi item used in Module/Platform/Package files
531#
532# @param GuidProtocolPpiCommonObject:  Inherited from
533#                                      GuidProtocolPpiCommonObject
534#
535class PpiObject(GuidProtocolPpiCommonObject):
536    def __init__(self):
537        self.Notify = False
538        GuidProtocolPpiCommonObject.__init__(self)
539    def SetNotify(self, Notify):
540        self.Notify = Notify
541
542    def GetNotify(self):
543        return self.Notify
544
545## DefineObject
546#
547# This class defined item DEFINE used in Module/Platform/Package files
548#
549# @param object:  Inherited from object class
550#
551class DefineClass(object):
552    def __init__(self):
553        self.Define = {}
554
555## UserExtensionObject
556#
557# @param object:  Inherited from object class
558#
559class UserExtensionObject(object):
560    def __init__(self):
561        self.UserID = ''
562        self.Identifier = ''
563        self.BinaryAbstractList = []
564        self.BinaryDescriptionList = []
565        self.BinaryCopyrightList = []
566        self.BinaryLicenseList = []
567        self.UniLangDefsList = []
568        #
569        # { Statement : Arch , ... }
570        #
571        self.DefinesDict = {}
572        #
573        # { Arch : Statement , ... }
574        #
575        self.BuildOptionDict = {}
576        self.IncludesDict = {}
577        self.SourcesDict = {}
578        self.BinariesDict = {}
579        #
580        # UserExtension statement from meta-data file [UserExtension] section
581        #
582        self.Statement = ''
583        self.SupArchList = []
584
585    def SetStatement(self, Statement):
586        self.Statement = Statement
587
588    def GetStatement(self):
589        return self.Statement
590
591    def SetSupArchList(self, ArchList):
592        self.SupArchList = ArchList
593
594    def GetSupArchList(self):
595        return self.SupArchList
596
597    def SetUserID(self, UserID):
598        self.UserID = UserID
599
600    def GetUserID(self):
601        return self.UserID
602
603    def SetIdentifier(self, Identifier):
604        self.Identifier = Identifier
605
606    def GetIdentifier(self):
607        return self.Identifier
608
609    def SetUniLangDefsList(self, UniLangDefsList):
610        self.UniLangDefsList = UniLangDefsList
611
612    def GetUniLangDefsList(self):
613        return self.UniLangDefsList
614
615    def SetBinaryAbstract(self, BinaryAbstractList):
616        self.BinaryAbstractList = BinaryAbstractList
617
618    def GetBinaryAbstract(self, Lang=None):
619        if Lang:
620            for (Key, Value) in self.BinaryAbstractList:
621                if Key == Lang:
622                    return Value
623            return None
624        else:
625            return self.BinaryAbstractList
626
627    def SetBinaryDescription(self, BinaryDescriptionList):
628        self.BinaryDescriptionList = BinaryDescriptionList
629
630    def GetBinaryDescription(self, Lang=None):
631        if Lang:
632            for (Key, Value) in self.BinaryDescriptionList:
633                if Key == Lang:
634                    return Value
635            return None
636        else:
637            return self.BinaryDescriptionList
638
639    def SetBinaryCopyright(self, BinaryCopyrightList):
640        self.BinaryCopyrightList = BinaryCopyrightList
641
642    def GetBinaryCopyright(self, Lang=None):
643        if Lang:
644            for (Key, Value) in self.BinaryCopyrightList:
645                if Key == Lang:
646                    return Value
647            return None
648        else:
649            return self.BinaryCopyrightList
650
651    def SetBinaryLicense(self, BinaryLicenseList):
652        self.BinaryLicenseList = BinaryLicenseList
653
654    def GetBinaryLicense(self, Lang=None):
655        if Lang:
656            for (Key, Value) in self.BinaryLicenseList:
657                if Key == Lang:
658                    return Value
659            return None
660        else:
661            return self.BinaryLicenseList
662
663    def SetDefinesDict(self, DefinesDict):
664        self.DefinesDict = DefinesDict
665
666    def GetDefinesDict(self):
667        return self.DefinesDict
668
669    def SetBuildOptionDict(self, BuildOptionDict):
670        self.BuildOptionDict = BuildOptionDict
671
672    def GetBuildOptionDict(self):
673        return self.BuildOptionDict
674
675    def SetIncludesDict(self, IncludesDict):
676        self.IncludesDict = IncludesDict
677
678    def GetIncludesDict(self):
679        return self.IncludesDict
680
681    def SetSourcesDict(self, SourcesDict):
682        self.SourcesDict = SourcesDict
683
684    def GetSourcesDict(self):
685        return self.SourcesDict
686
687    def SetBinariesDict(self, BinariesDict):
688        self.BinariesDict = BinariesDict
689
690    def GetBinariesDict(self):
691        return self.BinariesDict
692
693## LibraryClassObject
694#
695# This class defined Library item used in Module/Platform/Package files
696#
697# @param CommonPropertiesObject:  Inherited from CommonPropertiesObject class
698#
699class LibraryClassObject(CommonPropertiesObject):
700    def __init__(self):
701        self.LibraryClass = ''
702        self.IncludeHeader = ''
703        self.SupModuleList = []
704        self.RecommendedInstance = GuidVersionObject()
705        CommonPropertiesObject.__init__(self)
706
707    def SetLibraryClass(self, LibraryClass):
708        self.LibraryClass = LibraryClass
709
710    def GetLibraryClass(self):
711        return self.LibraryClass
712
713    def SetSupModuleList(self, SupModuleList):
714        self.SupModuleList = SupModuleList
715
716    def GetSupModuleList(self):
717        return self.SupModuleList
718
719    def SetIncludeHeader(self, IncludeHeader):
720        self.IncludeHeader = IncludeHeader
721
722    def GetIncludeHeader(self):
723        return self.IncludeHeader
724
725    def SetRecommendedInstance(self, RecommendedInstance):
726        self.RecommendedInstance = RecommendedInstance
727
728    def GetRecommendedInstance(self):
729        return self.RecommendedInstance
730
731
732## PcdErrorObject
733#
734# @param object:  Inherited from object class
735#
736class PcdErrorObject(object):
737    def __init__(self):
738        self.ValidValue = ''
739        self.ValidValueLang = ''
740        self.ValidValueRange = ''
741        self.Expression = ''
742        self.ErrorNumber = ''
743        self.ErrorMessageList = []
744        self.TokenSpaceGuidCName = ''
745        self.CName = ''
746        self.FileLine = ''
747        self.LineNum = 0
748
749    def SetValidValue(self, ValidValue):
750        self.ValidValue = ValidValue
751
752    def GetValidValue(self):
753        return self.ValidValue
754
755    def SetValidValueLang(self, ValidValueLang):
756        self.ValidValueLang = ValidValueLang
757
758    def GetValidValueLang(self):
759        return self.ValidValueLang
760
761    def SetValidValueRange(self, ValidValueRange):
762        self.ValidValueRange = ValidValueRange
763
764    def GetValidValueRange(self):
765        return self.ValidValueRange
766
767    def SetExpression(self, Expression):
768        self.Expression = Expression
769
770    def GetExpression(self):
771        return self.Expression
772
773    def SetErrorNumber(self, ErrorNumber):
774        self.ErrorNumber = ErrorNumber
775
776    def GetErrorNumber(self):
777        return self.ErrorNumber
778
779    def SetErrorMessageList(self, ErrorMessageList):
780        self.ErrorMessageList = ErrorMessageList
781
782    def GetErrorMessageList(self):
783        return self.ErrorMessageList
784
785    def SetTokenSpaceGuidCName(self, TokenSpaceGuidCName):
786        self.TokenSpaceGuidCName = TokenSpaceGuidCName
787
788    def GetTokenSpaceGuidCName(self):
789        return self.TokenSpaceGuidCName
790
791    def SetCName(self, CName):
792        self.CName = CName
793
794    def GetCName(self):
795        return self.CName
796
797    def SetFileLine(self, FileLine):
798        self.FileLine = FileLine
799
800    def GetFileLine(self):
801        return self.FileLine
802
803    def SetLineNum(self, LineNum):
804        self.LineNum = LineNum
805
806    def GetLineNum(self):
807        return self.LineNum
808
809
810## IncludeObject
811#
812# This class defined Include item used in Module/Platform/Package files
813#
814# @param CommonPropertiesObject:  Inherited from CommonPropertiesObject class
815#
816class IncludeObject(CommonPropertiesObject):
817    def __init__(self):
818        self.FilePath = ''
819        self.ModuleType = ''
820        self.SupModuleList = []
821        self.Comment = ''
822        CommonPropertiesObject.__init__(self)
823
824    def SetFilePath(self, FilePath):
825        self.FilePath = FilePath
826
827    def GetFilePath(self):
828        return self.FilePath
829
830    def SetModuleType(self, ModuleType):
831        self.ModuleType = ModuleType
832
833    def GetModuleType(self):
834        return self.ModuleType
835
836    def SetSupModuleList(self, SupModuleList):
837        self.SupModuleList = SupModuleList
838
839    def GetSupModuleList(self):
840        return self.SupModuleList
841
842    def SetComment(self, Comment):
843        self.Comment = Comment
844
845    def GetComment(self):
846        return self.Comment
847
848## PcdObject
849#
850# This class defined Pcd item used in Module/Platform/Package files
851#
852# @param CName:                Input value for CName, default is ''
853# @param Token:                Input value for Token, default is ''
854# @param TokenSpaceGuidCName:  Input value for TokenSpaceGuidCName, default is
855#                              ''
856# @param DatumType:            Input value for DatumType, default is ''
857# @param MaxDatumSize:         Input value for MaxDatumSize, default is ''
858# @param DefaultValue:         Input value for DefaultValue, default is ''
859# @param ItemType:             Input value for ItemType, default is ''
860# @param ValidUsage:           Input value for ValidUsage, default is []
861# @param SkuInfoList:          Input value for SkuInfoList, default is {}
862# @param SupModuleList:        Input value for SupModuleList, default is []
863#
864class PcdObject(CommonPropertiesObject, HelpTextListObject, PromptListObject):
865    def __init__(self):
866        self.PcdCName = ''
867        self.CName = ''
868        self.Token = ''
869        self.TokenSpaceGuidCName = ''
870        self.TokenSpaceGuidValue = ''
871        self.DatumType = ''
872        self.MaxDatumSize = ''
873        self.DefaultValue = ''
874        self.Offset = ''
875        self.ValidUsage = ''
876        self.ItemType = ''
877        self.PcdErrorsList = []
878        self.SupModuleList = []
879        CommonPropertiesObject.__init__(self)
880        HelpTextListObject.__init__(self)
881        PromptListObject.__init__(self)
882
883    def SetPcdCName(self, PcdCName):
884        self.PcdCName = PcdCName
885
886    def GetPcdCName(self):
887        return self.PcdCName
888
889    def SetCName(self, CName):
890        self.CName = CName
891
892    def GetCName(self):
893        return self.CName
894
895    def SetToken(self, Token):
896        self.Token = Token
897
898    def GetOffset(self):
899        return self.Offset
900
901    def SetOffset(self, Offset):
902        self.Offset = Offset
903
904    def GetToken(self):
905        return self.Token
906
907    def SetTokenSpaceGuidCName(self, TokenSpaceGuidCName):
908        self.TokenSpaceGuidCName = TokenSpaceGuidCName
909
910    def GetTokenSpaceGuidCName(self):
911        return self.TokenSpaceGuidCName
912
913    def SetTokenSpaceGuidValue(self, TokenSpaceGuidValue):
914        self.TokenSpaceGuidValue = TokenSpaceGuidValue
915
916    def GetTokenSpaceGuidValue(self):
917        return self.TokenSpaceGuidValue
918
919    def SetDatumType(self, DatumType):
920        self.DatumType = DatumType
921
922    def GetDatumType(self):
923        return self.DatumType
924
925    def SetMaxDatumSize(self, MaxDatumSize):
926        self.MaxDatumSize = MaxDatumSize
927
928    def GetMaxDatumSize(self):
929        return self.MaxDatumSize
930
931    def SetDefaultValue(self, DefaultValue):
932        self.DefaultValue = DefaultValue
933
934    def GetDefaultValue(self):
935        return self.DefaultValue
936
937    def SetValidUsage(self, ValidUsage):
938        self.ValidUsage = ValidUsage
939
940    def GetValidUsage(self):
941        return self.ValidUsage
942
943    def SetPcdErrorsList(self, PcdErrorsList):
944        self.PcdErrorsList = PcdErrorsList
945
946    def GetPcdErrorsList(self):
947        return self.PcdErrorsList
948
949    def SetItemType(self, ItemType):
950        self.ItemType = ItemType
951
952    def GetItemType(self):
953        return self.ItemType
954
955    def SetSupModuleList(self, SupModuleList):
956        self.SupModuleList = SupModuleList
957
958    def GetSupModuleList(self):
959        return self.SupModuleList
960