CMS 3D CMS Logo

List of all members | Public Member Functions
Eras.Eras Class Reference
Inheritance diagram for Eras.Eras:

Public Member Functions

def __init__ (self)
 
def addEra (self, name, obj)
 
def inspect (self, name=None, onlyChosen=False, details=True)
 
def inspectEra (self, e, details)
 
def inspectModifier (self, m, details)
 

Detailed Description

Dummy container for all the cms.Modifier instances that config fragments
can use to selectively configure depending on what scenario is active.

Definition at line 4 of file Eras.py.

Constructor & Destructor Documentation

def Eras.Eras.__init__ (   self)

Definition at line 9 of file Eras.py.

References Eras.Eras.addEra().

9  def __init__(self):
10  allEras=['Run1_pA',
11  'Run1_peripheralPbPb',
12  'Run2_50ns',
13  'Run2_50ns_HIPM',
14  'Run2_25ns',
15  'Run2_25ns_HIPM',
16  'Run2_25ns_peripheralPbPb',
17  'Run2_HI',
18  'Run2_2016',
19  'Run2_2016_HIPM',
20  'Run2_2016_trackingLowPU',
21  'Run2_2016_pA',
22  'Run2_2017',
23  'Run2_2017_FastSim', #new modifier for Phase1 FastSim, skips the muon GEM sequence
24  'Run2_2017_trackingRun2',
25  'Run2_2017_trackingLowPU',
26  'Run2_2017_pp_on_XeXe',
27  'Run2_2017_ppRef',
28  'Run2_2018',
29  'Run2_2018_FastSim', #new modifier for Phase1 FastSim, skips the muon GEM sequence
30  'Run2_2018_pp_on_AA',
31  'Run2_2018_highBetaStar',
32  'Run3',
33  'Phase2',
34  'Phase2_timing',
35  'Phase2_timing_layer',
36  'Phase2_timing_layer_new',
37  'Phase2C4',
38  'Phase2C4_timing',
39  ]
40 
41  internalUseMods = ['run2_common', 'run2_25ns_specific',
42  'run2_50ns_specific', 'run2_HI_specific',
43  'stage1L1Trigger', 'fastSim',
44  'peripheralPbPb', 'pA_2016',
45  'run2_HE_2017', 'stage2L1Trigger', 'stage2L1Trigger_2017',
46  'run2_HF_2017', 'run2_HCAL_2017', 'run2_HEPlan1_2017', 'run2_HB_2018','run2_HE_2018',
47  'run3_HB', 'run3_common',
48  'phase1Pixel', 'run3_GEM', 'run2_GEM_2017',
49  'run2_CSC_2018',
50  'phase2_common', 'phase2_tracker',
51  'phase2_hgcal', 'phase2_muon', 'phase2_timing', 'phase2_hgcalV9',
52  'phase2_timing_layer','phase2_timing_layer_new','phase2_hcal',
53  'trackingLowPU', 'trackingPhase1', 'ctpps_2016', 'trackingPhase2PU140','highBetaStar_2018',
54  'tracker_apv_vfp30_2016', 'pf_badHcalMitigation', 'run2_miniAOD_80XLegacy','run2_miniAOD_94XFall17', 'run2_nanoAOD_92X',
55  'run2_nanoAOD_94XMiniAODv1', 'run2_nanoAOD_94XMiniAODv2', 'run2_nanoAOD_94X2016',
56  'run2_miniAOD_devel', 'run2_nanoAOD_102Xv1',
57  'hcalHardcodeConditions', 'hcalSkipPacker',
58  'bParking']
59  internalUseModChains = ['run2_2017_noTrackingModifier']
60 
61 
62  for e in allEras:
63  eObj=getattr(__import__('Configuration.Eras.Era_'+e+'_cff',globals(),locals(),[e],0),e)
64  self.addEra(e,eObj)
65 
66  for e in internalUseMods:
67  eObj=getattr(__import__('Configuration.Eras.Modifier_'+e+'_cff',globals(),locals(),[e],0),e)
68  self.addEra(e,eObj)
69 
70  for e in internalUseModChains:
71  eObj=getattr(__import__('Configuration.Eras.ModifierChain_'+e+'_cff',globals(),locals(),[e],0),e)
72  self.addEra(e,eObj)
73 
74 
def __init__(self)
Definition: Eras.py:9
def addEra(self, name, obj)
Definition: Eras.py:75

Member Function Documentation

def Eras.Eras.addEra (   self,
  name,
  obj 
)

Definition at line 75 of file Eras.py.

Referenced by Eras.Eras.__init__().

75  def addEra(self,name,obj):
76  setattr(self,name,obj)
77 
def addEra(self, name, obj)
Definition: Eras.py:75
def Eras.Eras.inspect (   self,
  name = None,
  onlyChosen = False,
  details = True 
)

Definition at line 92 of file Eras.py.

References Eras.Eras.inspectEra().

92  def inspect(self,name=None,onlyChosen=False,details=True):
93  if name==None:
94  print 'Inspecting the known eras',
95  if onlyChosen: print ' (all active)'
96  else: print '(all eras defined)'
97  else:
98  print 'Inspecting the '+name+' era',
99 
100  allEras=[]
101  for key, value in self.__dict__.items():
102  if isinstance(value, ModifierChain): allEras.append(key)
103 
104  for e in allEras:
105  if name is not None and name==e:
106  self.inspectEra(e,details)
107  if name is None:
108  if not onlyChosen or getattr(self,e).isChosen():
109  self.inspectEra(e,details)
110 
111 eras=Eras()
112 
113 
114 #eras.inspect()
115 
def inspectEra(self, e, details)
Definition: Eras.py:81
def inspect(self, name=None, onlyChosen=False, details=True)
Definition: Eras.py:92
Definition: Eras.py:4
def Eras.Eras.inspectEra (   self,
  e,
  details 
)

Definition at line 81 of file Eras.py.

References Eras.Eras.inspectModifier().

Referenced by Eras.Eras.inspect().

81  def inspectEra(self,e,details):
82  print '\nEra:',e
83  print ' isChosen:',getattr(self,e).isChosen()
84  if details: print ' Modifiers:'
85  nmod=0
86  for value in getattr(self,e).__dict__['_ModifierChain__chain']:
87  if isinstance(value, Modifier):
88  nmod=nmod+1
89  if details: self.inspectModifier(value,details)
90  print ' ',nmod,'modifiers defined'
91 
def inspectEra(self, e, details)
Definition: Eras.py:81
def inspectModifier(self, m, details)
Definition: Eras.py:78
def Eras.Eras.inspectModifier (   self,
  m,
  details 
)

Definition at line 78 of file Eras.py.

Referenced by Eras.Eras.inspectEra().

78  def inspectModifier(self,m,details):
79  print ' ',m.__dict__ ['_Modifier__processModifiers']
80 
def inspectModifier(self, m, details)
Definition: Eras.py:78