CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
customizeHLTforMC.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 def customizeHLTforFastSim(process,_fastSim=True):
4  process=customizeHLTforMC(process,_fastSim)
5  return process
6 
7 def customizeHLTforFullSim(process,_fastSim=False):
8  process=customizeHLTforMC(process,_fastSim)
9  return process
10 
11 def customizeHLTforMC(process,_fastSim=False):
12  """adapt the HLT to run on MC, instead of data
13  see Configuration/StandardSequences/Reconstruction_Data_cff.py
14  which does the opposite, for RECO"""
15 
16  # PFRecHitProducerHCAL
17  if 'hltParticleFlowRecHitHCAL' in process.__dict__:
18  process.hltParticleFlowRecHitHCAL.ApplyPulseDPG = cms.bool(False)
19  process.hltParticleFlowRecHitHCAL.LongShortFibre_Cut = cms.double(1000000000.0)
20 
21  # customise hltHbhereco to use the Method 3 time slew parametrization and response correction for Monte Carlo (PR #11091)
22  if 'hltHbhereco' in process.__dict__:
23  process.hltHbhereco.pedestalSubtractionType = cms.int32( 1 )
24  process.hltHbhereco.pedestalUpperLimit = cms.double( 2.7 )
25  process.hltHbhereco.timeSlewParsType = cms.int32( 3 )
26  # new time slew parametrisation
27  process.hltHbhereco.timeSlewPars = cms.vdouble( 12.2999, -2.19142, 0, 12.2999, -2.19142, 0, 12.2999, -2.19142, 0 )
28  # old response correction, matching the 2015D 25ns data
29  process.hltHbhereco.respCorrM3 = cms.double( 1.0 )
30 
31 
32  if _fastSim:
33 
34  fastsim = cms.ProcessFragment( process.name_() )
35  fastsim.load( "FastSimulation.HighLevelTrigger.HLTSetup_cff" )
36 
37  fastSimUnsupportedPaths = (
38 
39  # paths for which a recovery is not foreseen/possible
40  "AlCa_*_v*",
41  "DQM_*_v*",
42  "HLT_*Calibration_v*",
43  "HLT_DTErrors_v*",
44  "HLT_Random_v*",
45  "HLT_HcalNZS_v*",
46  "HLT_HcalPhiSym_v*",
47  "HLT_Activity_Ecal*_v*",
48  "HLT_IsoTrackHB_v*",
49  "HLT_IsoTrackHE_v*",
50  "HLT_L1SingleMuOpen_AntiBPTX_v*",
51  "HLT_JetE*_NoBPTX*_v*",
52  "HLT_L2Mu*_NoBPTX*_v*",
53  "HLT_Beam*_v*",
54  #"HLT_L1Tech_*_v*",
55  "HLT_HI*",
56  "HLT_GlobalRunHPDNoise_v*",
57  "HLT_L1TrackerCosmics_v*",
58  "HLT_HcalUTCA_v*",
59  "HLT_L1FatEvents_v*",
60 
61  # TODO: paths not supported by FastSim, but for which a recovery should be attempted
62  "HLT_DoubleMu33NoFiltersNoVtx_v*",
63  "HLT_DoubleMu38NoFiltersNoVtx_v*",
64  "HLT_Mu38NoFiltersNoVtx_Photon38_CaloIdL_v*",
65  "HLT_Mu42NoFiltersNoVtx_Photon42_CaloIdL_v*",
66  "HLT_DoubleMu23NoFiltersNoVtxDisplaced_v*",
67  "HLT_DoubleMu28NoFiltersNoVtxDisplaced_v*",
68  "HLT_Mu28NoFiltersNoVtxDisplaced_Photon28_CaloIdL_v*",
69  "HLT_Mu33NoFiltersNoVtxDisplaced_Photon33_CaloIdL_v*",
70  "HLT_HT350_DisplacedDijet80_Tight_DisplacedTrack_v*",
71  "HLT_HT350_DisplacedDijet80_DisplacedTrack_v*",
72  "HLT_HT500_DisplacedDijet40_Inclusive_v*",
73  "HLT_HT350_DisplacedDijet40_DisplacedTrack_v*",
74  "HLT_HT550_DisplacedDijet40_Inclusive_v*",
75  "HLT_HT350_DisplacedDijet80_DisplacedTrack_v*",
76  "HLT_HT400_DisplacedDijet40_Inclusive_v*",
77  "HLT_HT250_DisplacedDijet40_DisplacedTrack_v*",
78  "HLT_HT200_DisplacedDijet40_DisplacedTrack_v*",
79  "HLT_HT350_DisplacedDijet40_Inclusive_v*",
80  "HLT_TrkMu15_DoubleTrkMu5NoFiltersNoVtx_v*",
81  "HLT_TrkMu17_DoubleTrkMu8NoFiltersNoVtx_v*",
82  "HLT_MET60_IsoTrk*",
83  "HLT_MET75_IsoTrk50_v*",
84  "HLT_MET90_IsoTrk50_v*",
85  "HLT_VBF_DisplacedJet40_DisplacedTrack_v*",
86  "HLT_VBF_DisplacedJet40_TightID_DisplacedTrack_v*",
87  "HLT_VBF_DisplacedJet40_VTightID_DisplacedTrack_v*",
88  "HLT_VBF_DisplacedJet40_VVTightID_DisplacedTrack_v*",
89  "HLT_VBF_DisplacedJet40_Hadronic_2PromptTrack_v*",
90  "HLT_VBF_DisplacedJet40_DisplacedTrack_2TrackIP2DSig5_v*",
91  "HLT_Mu33NoFiltersNoVtxDisplaced_DisplacedJet50_Tight_v*",
92  "HLT_Mu33NoFiltersNoVtxDisplaced_DisplacedJet50_Loose_v*",
93  "HLT_Mu38NoFiltersNoVtxDisplaced_DisplacedJet60_Tight_v*",
94  "HLT_Mu38NoFiltersNoVtxDisplaced_DisplacedJet60_Loose_v*",
95  "HLT_Mu38NoFiltersNoVtx_DisplacedJet60_Loose_v*",
96  "HLT_Mu28NoFiltersNoVtx_DisplacedJet40_Loose_v*",
97  "HLT_Mu28NoFiltersNoVtx_CentralCaloJet40_v*",
98  "HLT_Mu23NoFiltersNoVtx_Photon23_CaloIdL_v*",
99  "HLT_DoubleMu18NoFiltersNoVtx_v*",
100  "HLT_DoubleMuNoFiltersNoVtx_SaveObjects_v*",
101  "MC_DoubleMuNoFiltersNoVtx_v*",
102  "HLT_L1MuOpenNotHF2Pixel_SingleTrack*",
103  "HLT_L1TOTEM0_RomanPotsAND_PixelClusters*",
104  )
105 
106  ESModulesToRemove = (
107 # "CaloTowerGeometryFromDBEP",
108 # "CastorGeometryFromDBEP",
109 # "EcalBarrelGeometryFromDBEP",
110 # "EcalEndcapGeometryFromDBEP",
111 # "EcalPreshowerGeometryFromDBEP",
112 # "HcalGeometryFromDBEP",
113 # "ZdcGeometryFromDBEP",
114 # "XMLFromDBSource",
115 # "sistripconn",
116 
117 # "navigationSchoolESProducer",
118 # "TransientTrackBuilderESProducer",
119 # "SteppingHelixPropagatorAny",
120 # "OppositeMaterialPropagator",
121 # "MaterialPropagator",
122 # "CaloTowerConstituentsMapBuilder",
123 # "CaloTopologyBuilder",
124  )
125 
126  ModulesToRemove = (
127  # "hltL3MuonIsolations",
128  "hltCkfL1SeededTrackCandidates",
129  "hltCtfL1SeededithMaterialTracks",
130  "hltCkf3HitL1SeededTrackCandidates",
131  "hltCtf3HitL1SeededWithMaterialTracks",
132  "hltCkf3HitActivityTrackCandidates",
133  "hltCtf3HitActivityWithMaterialTracks",
134  "hltActivityCkfTrackCandidatesForGSF",
135  "hltL1SeededCkfTrackCandidatesForGSF",
136  "hltMuCkfTrackCandidates",
137  "hltMuCtfTracks",
138  "hltTau3MuCkfTrackCandidates",
139  "hltTau3MuCtfWithMaterialTracks",
140  "hltMuTrackJpsiCkfTrackCandidates",
141  "hltMuTrackJpsiCtfTracks",
142  "hltMuTrackJpsiEffCkfTrackCandidates",
143  "hltMuTrackJpsiEffCtfTracks",
144  "hltJpsiTkPixelSeedFromL3Candidate",
145  "hltCkfTrackCandidatesJpsiTk",
146  "hltCtfWithMaterialTracksJpsiTk",
147  "hltMuTrackCkfTrackCandidatesOnia",
148  "hltMuTrackCtfTracksOnia",
149 
150  "hltFEDSelector",
151  "hltL3TrajSeedOIHit",
152  "hltL3TrajSeedIOHit",
153  "hltL3NoFiltersTrajSeedOIHit",
154  "hltL3NoFiltersTrajSeedIOHit",
155  "hltL3TrackCandidateFromL2OIState",
156  "hltL3TrackCandidateFromL2OIHit",
157  "hltL3TrackCandidateFromL2IOHit",
158  "hltL3TrackCandidateFromL2NoVtx",
159  "hltHcalDigis",
160  "hltHoreco",
161  "hltHfreco",
162  "hltHbhereco",
163  "hltESRawToRecHitFacility",
164  "hltEcalRecHitAll",
165  "hltESRecHitAll",
166  # === eGamma
167  "hltEgammaCkfTrackCandidatesForGSF",
168  "hltEgammaGsfTracks",
169  "hltEgammaCkfTrackCandidatesForGSFUnseeded",
170  "hltEgammaGsfTracksUnseeded",
171  # === hltPF
172  "hltPFJetCkfTrackCandidates",
173  "hltPFJetCtfWithMaterialTracks",
174  "hltPFlowTrackSelectionHighPurity",
175  # === hltFastJet
176  "hltDisplacedHT250L1FastJetRegionalPixelSeedGenerator",
177  "hltDisplacedHT250L1FastJetRegionalCkfTrackCandidates",
178  "hltDisplacedHT250L1FastJetRegionalCtfWithMaterialTracks",
179  "hltDisplacedHT300L1FastJetRegionalPixelSeedGenerator",
180  "hltDisplacedHT300L1FastJetRegionalCkfTrackCandidates",
181  "hltDisplacedHT300L1FastJetRegionalCtfWithMaterialTracks",
182  "hltBLifetimeRegionalPixelSeedGeneratorbbPhiL1FastJet",
183  "hltBLifetimeRegionalCkfTrackCandidatesbbPhiL1FastJet",
184  "hltBLifetimeRegionalCtfWithMaterialTracksbbPhiL1FastJet",
185  "hltBLifetimeRegionalPixelSeedGeneratorHbbVBF",
186  "hltBLifetimeRegionalCkfTrackCandidatesHbbVBF",
187  "hltBLifetimeRegionalCtfWithMaterialTracksHbbVBF",
188  "hltBLifetimeBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20HbbL1FastJet",
189  "hltBLifetimeBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20HbbL1FastJet",
190  "hltBLifetimeBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20HbbL1FastJet",
191  "hltBLifetimeDiBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20HbbL1FastJet",
192  "hltBLifetimeDiBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20HbbL1FastJet",
193  "hltBLifetimeDiBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20HbbL1FastJet",
194  # === hltBLifetimeRegional
195  "hltBLifetimeRegionalPixelSeedGeneratorHbb",
196  "hltBLifetimeRegionalCkfTrackCandidatesHbb",
197  "hltBLifetimeRegionalCtfWithMaterialTracksHbb",
198  "hltBLifetimeRegionalPixelSeedGeneratorbbPhi",
199  "hltBLifetimeRegionalCkfTrackCandidatesbbPhi",
200  "hltBLifetimeRegionalCtfWithMaterialTracksbbPhi",
201  "hltBLifetimeBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20Hbb",
202  "hltBLifetimeBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20Hbb",
203  "hltBLifetimeBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20Hbb",
204  "hltBLifetimeDiBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20Hbb",
205  "hltBLifetimeDiBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20Hbb",
206  "hltBLifetimeDiBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20Hbb",
207  "hltBLifetimeFastRegionalPixelSeedGeneratorHbbVBF",
208  "hltBLifetimeFastRegionalCkfTrackCandidatesHbbVBF",
209  "hltBLifetimeFastRegionalCtfWithMaterialTracksHbbVBF",
210  "hltBLifetimeRegionalPixelSeedGeneratorbbPhiL1FastJetFastPV",
211  "hltBLifetimeRegionalCkfTrackCandidatesbbPhiL1FastJetFastPV",
212  "hltBLifetimeRegionalCtfWithMaterialTracksbbPhiL1FastJetFastPV",
213  "hltFastPixelBLifetimeRegionalPixelSeedGeneratorHbb",
214  "hltFastPixelBLifetimeRegionalCkfTrackCandidatesHbb",
215  "hltFastPixelBLifetimeRegionalCtfWithMaterialTracksHbb",
216 
217  "hltPixelTracksForMinBias",
218  "hltPixelTracksForMinBias01",
219  "hltPixelTracksForHighMult",
220  "hltRegionalPixelTracks",
221  "hltPixelTracksReg",
222  "hltPixelTracksL3Muon",
223  "hltPixelTracksGlbTrkMuon",
224  "hltPixelTracksHighPtTkMuIso",
225  "hltPixelTracksHybrid",
226  "hltPixelTracksForPhotons",
227  "hltPixelTracksForEgamma",
228  "hltPixelTracksElectrons",
229  "hltPixelTracksForHighPt",
230  "hltHighPtPixelTracks",
231  "hltPixelTracksForNoPU",
232 
233  "hltFastPixelHitsVertex",
234  "hltFastPixelTracks",
235  "hltFastPixelTracksRecover",
236 
237  "hltPixelLayerPairs",
238  "hltPixelLayerTriplets",
239  "hltPixelLayerTripletsReg",
240  "hltPixelLayerTripletsHITHB",
241  "hltPixelLayerTripletsHITHE",
242  "hltMixedLayerPairs",
243 
244  "hltFastPrimaryVertexbbPhi",
245  "hltPixelTracksFastPVbbPhi",
246  "hltPixelTracksRecoverbbPhi",
247  "hltFastPixelHitsVertexVHbb",
248  "hltFastPixelTracksVHbb",
249  "hltFastPixelTracksRecoverVHbb",
250 
251  "hltFastPrimaryVertex",
252  "hltFastPVPixelVertexFilter",
253  "hltFastPVPixelTracks",
254  "hltFastPVPixelTracksRecover",
255 
256  # "hltPixelMatchElectronsActivity",
257 
258  "hltMuonCSCDigis",
259  "hltMuonDTDigis",
260  "hltMuonRPCDigis",
261 # "hltGtDigis",
262 # "hltL1GtTrigReport",
263  # "hltCsc2DRecHits",
264  # "hltDt1DRecHits",
265  # "hltRpcRecHits",
266  "hltScalersRawToDigi",
267  "hltEcalPreshowerDigis",
268  "hltEcalDigis",
269  "hltEcalDetIdToBeRecovered",
270 
271  )
272 
273  SequencesToRemove = (
274  "HLTL1SeededEgammaRegionalRecoTrackerSequence",
275  "HLTEcalActivityEgammaRegionalRecoTrackerSequence",
276  "HLTPixelMatchElectronActivityTrackingSequence",
277  "HLTDoLocalStripSequence",
278  "HLTDoLocalPixelSequence",
279  "HLTDoLocalPixelSequenceRegL2Tau",
280  "HLTDoLocalStripSequenceReg",
281  "HLTDoLocalPixelSequenceReg",
282  "HLTDoLocalStripSequenceRegForBTag",
283  "HLTDoLocalPixelSequenceRegForBTag",
284  "HLTDoLocalPixelSequenceRegForNoPU",
285  "HLTBeginSequence",
286  "HLTBeginSequenceL1Fat",
287  "HLTBeginSequenceNZS",
288  "HLTBeginSequenceBPTX",
289  "HLTBeginSequenceAntiBPTX",
290  "HLTHBHENoiseSequence",
291  "HLTIterativeTrackingIter04",
292  "HLTIterativeTrackingIter02",
293  "HLTIterativeTracking",
294  "HLTIterativeTrackingForHighPt",
295  "HLTIterativeTrackingTau3Mu",
296  "HLTIterativeTrackingReg",
297  "HLTIterativeTrackingForPA",
298  "HLTPAIterativeTracking",
299  "HLTIterativeTrackingForElectronIter02",
300  "HLTIterativeTrackingForPhotonsIter02",
301  "HLTIterativeTrackingL3MuonIter02",
302  "HLTIterativeTrackingGlbTrkMuonIter02",
303  "HLTIterativeTrackingL3MuonRegIter02",
304  "HLTIterativeTrackingHighPtTkMu",
305  "HLTIterativeTrackingHighPtTkMuIsoIter02",
306  "HLTIterativeTrackingForBTagIter02",
307  "HLTIterativeTrackingForBTagIter12",
308  "HLTIterativeTrackingForTauIter04",
309  "HLTIterativeTrackingForTauIter02",
310  "HLTIterativeTrackingDisplacedJpsiIter02",
311  "HLTIterativeTrackingDisplacedPsiPrimeIter02",
312  "HLTIterativeTrackingDisplacedNRMuMuIter02",
313  "HLTIterativeTrackingForBTagIteration0",
314  "HLTIterativeTrackingIteration4DisplacedJets",
315  "HLTRegionalCKFTracksForL3Isolation",
316  "HLTHBHENoiseCleanerSequence",
317  )
318 
319 # Removing ESmodules
320  for label in ESModulesToRemove:
321  if (hasattr(process,label)):
322  delattr(process,label)
323 
324 # Removing paths
325  import fnmatch,re
326  ExplicitList = []
327  HLTSchedule = tuple( path.label_() for path in process.HLTSchedule)
328  for path in HLTSchedule:
329  getattr(process,path).insert(1,process.HLTL1UnpackerSequence)
330  for black in fastSimUnsupportedPaths:
331  compiled = re.compile(fnmatch.translate(black))
332  for path in HLTSchedule:
333  if compiled.search(path) is not None:
334  ExplicitList += [path]
335  UniqueList = []
336  for path in ExplicitList:
337  if path not in UniqueList:
338  UniqueList += [path]
339  for path in UniqueList:
340  process.schedule.remove(getattr(process,path))
341  process.setSchedule_(process.schedule)
342  process.prune()
343 
344 # Removing streams and datasets PSets
345  if hasattr(process,'streams'):
346  delattr(process,'streams')
347  if hasattr(process,'datasets'):
348  delattr(process,'datasets')
349 
350 # Removing sequences, possibly to be taken from fastsim import
351  for label in SequencesToRemove:
352  if hasattr(process,label):
353  if hasattr(fastsim,label):
354  setattr(process,label,getattr(fastsim,label))
355  else:
356  object = getattr(process,label)
357  list = tuple(process.sequences_().keys())
358  for name in list:
359  sequence = getattr(process,name)
360  more=True
361  while more:
362  more = sequence.remove(object)
363  list = tuple(process.paths_().keys())
364  for name in list:
365  path = getattr(process,name)
366  more=True
367  while more:
368  more = path.remove(object)
369  delattr(process,label)
370 
371 # Removing modules, possibly to be taken from fastsim import
372  for label in ModulesToRemove:
373  if hasattr(process,label):
374  if hasattr(fastsim,label):
375  setattr(process,label,getattr(fastsim,label))
376  else:
377  object = getattr(process,label)
378  # remove from sequences
379  list = tuple(process.sequences_().keys())
380  for name in list:
381  sequence = getattr(process,name)
382  more=True
383  while more:
384  more = sequence.remove(object)
385  # remove from paths
386  list = tuple(process.paths_().keys())
387  for name in list:
388  path = getattr(process,name)
389  more=True
390  while more:
391  more = path.remove(object)
392  # remove from end paths
393  list = tuple(process.endpaths_().keys())
394  for name in list:
395  path = getattr(process,name)
396  more=True
397  while more:
398  more = path.remove(object)
399  delattr(process,label)
400 
401 # Special transformations:
402  if hasattr(process,'hltGetConditions') and hasattr(process,'HLTriggerFirstPath'):
403  process.hltDummyConditions = cms.EDFilter( "HLTBool", result = cms.bool( True ) )
404  process.HLTriggerFirstPath.replace(process.hltGetConditions,process.hltDummyConditions)
405  if hasattr(process,'hltPixelVertices'):
406  process.hltPixelVertices.beamSpot = cms.InputTag('offlineBeamSpot')
407  specialModules = ( 'hltEcalRecHit', 'hltEcalPreshowerRecHit', )
408  for label in specialModules:
409  if hasattr(process,label):
410  setattr(fastsim,label,getattr(process,label))
411 
412 # Use fastsim imports
413  for label in fastsim.producers_().keys():
414  if hasattr(process,label):
415  setattr(process,label,getattr(fastsim,label))
416  for label in fastsim.filters_().keys():
417  if hasattr(process,label):
418  setattr(process,label,getattr(fastsim,label))
419  for label in fastsim.analyzers_().keys():
420  if hasattr(process,label):
421  setattr(process,label,getattr(fastsim,label))
422  for label in fastsim.sequences_().keys():
423  if hasattr(process,label):
424  setattr(process,label,getattr(fastsim,label))
425 
426 # Update InputTags
427 
428  InputTags = (
429 # ('hltGtDigis','gtDigis'),
430 # ('hltL1GtObjectMap','gtDigis'),
431  ('hltEcalDigis:ebDigis','ecalDigis:ebDigis'),
432  ('hltEcalDigis:eeDigis','ecalDigis:eeDigis'),
433  ('hltMuonCSCDigis','muonCSCDigis'),
434  ('hltMuonCSCDigis:MuonCSCStripDigi','muonCSCDigis:MuonCSCStripDigi'),
435  ('hltMuonCSCDigis:MuonCSCWireDigi','muonCSCDigis:MuonCSCWireDigi'),
436  ('hltMuonDTDigis','muonDTDigis'),
437  ('hltMuonRPCDigis','muonRPCDigis'),
438  ('hltEcalPreshowerDigis','ecalPreshowerDigis'),
439  ('hltHbhereco', 'hbhereco'),
440  ('hltHoreco', 'horeco'),
441  ('hltHfreco', 'hfreco'),
442 
443  ('hltIter2Merged', 'generalTracks'),
444  ('hltIter2HighPtMerged', 'generalTracks'),
445  ('hltIter2MergedForElectrons', 'generalTracks'),
446  ('hltIter2MergedForPhotons', 'generalTracks'),
447  ('hltIter2L3MuonMerged', 'generalTracks'),
448  ('hltIter2MergedForBTag', 'generalTracks'),
449  ('hltIter2MergedForTau', 'generalTracks'),
450  ('hltIter2GlbTrkMuonMerged', 'generalTracks'),
451  ('hltIter2HighPtTkMuMerged', 'generalTracks'),
452  ('hltIter2HighPtTkMuIsoMerged', 'generalTracks'),
453  ('hltIter2DisplacedJpsiMerged', 'generalTracks'),
454  ('hltIter2DisplacedPsiPrimeMerged', 'generalTracks'),
455  ('hltIter2DisplacedNRMuMuMerged', 'generalTracks'),
456  ('hltIter0PFlowTrackSelectionHighPurityForBTag', 'generalTracks'),
457  ('hltIter4HighPtMerged', 'generalTracks'),
458  ('hltIterativeTrackingForPAMerged', 'generalTracks'),
459  ('hltPAIterativeTrackingMerged', 'generalTracks'),
460 
461  ('hltFastPVPixelTracks','hltPixelTracks'),
462  ('hltFastPVPixelTracksRecover','hltPixelTracks'),
463  ('hltPixelTracksL3Muon','hltPixelTracks'),
464  ('hltPixelTracksGlbTrkMuon','hltPixelTracks'),
465  ('hltPixelTracksHighPtTkMuIso','hltPixelTracks'),
466  ('hltPixelTracksHybrid','hltPixelTracks'),
467  ('hltPixelTracksForPhotons','hltPixelTracks'),
468  ('hltPixelTracksForEgamma','hltPixelTracks'),
469  ('hltPixelTracksElectrons','hltPixelTracks'),
470  ('hltPixelTracksForHighPt','hltPixelTracks'),
471  ('hltHighPtPixelTracks','hltPixelTracks'),
472  ('hltPixelTracksForNoPU','hltPixelTracks'),
473 
474  ('hltL1extraParticles','l1extraParticles'),
475  ('hltL1extraParticles:Central','l1extraParticles:Central'),
476  ('hltL1extraParticles:Forward','l1extraParticles:Forward'),
477  ('hltL1extraParticles:Isolated','l1extraParticles:Isolated'),
478  ('hltL1extraParticles:NonIsolated','l1extraParticles:NonIsolated'),
479  ('hltL1extraParticles:Tau','l1extraParticles:Tau'),
480  ('hltL1extraParticles:IsoTau','l1extraParticles:IsoTau'),
481  ('hltOfflineBeamSpot','offlineBeamSpot'),
482  ('hltOnlineBeamSpot','offlineBeamSpot'),
483  ('hltSiStripClusters','MeasurementTrackerEvent'),
484 
485  )
486  from HLTrigger.Configuration.CustomConfigs import MassReplaceInputTag
487  for pair in InputTags:
488  process = MassReplaceInputTag(process,pair[0],pair[1])
489 
490 # Update top-level named parameters
491  NamedParameters = (
492 # ('GMTReadoutCollection',cms.InputTag('gtDigis'),cms.InputTag('gmtDigis')),
493  ('killDeadChannels',cms.bool(True),cms.bool(False)),
494  ('recoverEBFE',cms.bool(True),cms.bool(False)),
495  ('recoverEEFE',cms.bool(True),cms.bool(False)),
496  ('src',cms.InputTag('hltHcalTowerNoiseCleaner'),cms.InputTag('hltTowerMakerForAll')),
497  ('src',cms.InputTag('hltHcalTowerNoiseCleanerWithrechit'),cms.InputTag('hltTowerMakerForAll')),
498  ('initialSeeds',cms.InputTag('noSeedsHere'),cms.InputTag('hltPixelPairSeeds')),
499  ('preFilteredSeeds',cms.bool(True),cms.bool(False)),
500  )
501  from HLTrigger.Configuration.CustomConfigs import MassReplaceParameter
502  for thrice in NamedParameters:
503  process = MassReplaceParameter(process,thrice[0],thrice[1],thrice[2])
504 
505 # Update nested named parameters
506  for label in ('hltEgammaElectronPixelSeeds','hltEgammaElectronPixelSeedsUnseeded',):
507  if hasattr(process,label):
508  getattr(process,label).SeedConfiguration.initialSeeds = cms.InputTag('hltPixelPairSeeds')
509  getattr(process,label).SeedConfiguration.preFilteredSeeds = cms.bool(False)
510 
511 # Extending fastsim import
512  fastsim.extend(process)
513  fastsim.setSchedule_(fastsim.schedule)
514  fastsim.prune()
515 
516  return fastsim
517 
518  else:
519 
520  return process
bool insert(Storage &iStorage, ItemType *iItem, const IdTag &iIdTag)
Definition: HCMethods.h:49
def MassReplaceParameter