7 from pipe
import pipe
as _pipe
8 from options
import globalTag
9 from itertools
import islice
12 i = iterator.__iter__()
14 l =
list(islice(i, n))
23 fastsimUnsupportedPaths = (
29 "AlCa_EcalPi0EBonly_v*",
30 "AlCa_EcalPi0EEonly_v*",
31 "AlCa_EcalEtaEBonly_v*",
32 "AlCa_EcalEtaEEonly_v*",
33 "AlCa_RPCMuonNoHits_v*",
34 "AlCa_RPCMuonNoTriggers_v*",
35 "AlCa_RPCMuonNormalisation_v*",
37 "AlCa_LumiPixels_Random_v*",
38 "AlCa_LumiPixels_ZeroBias_v*",
39 "DQM_FEDIntegrity_v*",
40 "DQM_HcalEmptyEvents_v*",
42 "HLT_EcalCalibration_v*",
43 "HLT_HcalCalibration_v*",
44 "HLT_TrackerCalibration_v*",
46 "HLT_DTCalibration_v*",
52 "HLT_L1SingleMuOpen_AntiBPTX_v*",
53 "HLT_JetE30_NoBPTX*_v*",
54 "HLT_JetE50_NoBPTX*_v*",
55 "HLT_JetE50_NoBPTX3BX_NoHalo_v*",
56 "HLT_JetE70_NoBPTX3BX_NoHalo_v*",
57 "HLT_L2Mu10_NoVertex_NoBPTX3BX_NoHalo_v*",
58 "HLT_L2Mu20_NoVertex_NoBPTX3BX_NoHalo_v*",
59 "HLT_L2Mu30_NoVertex_NoBPTX3BX_NoHalo_v*",
60 "HLT_JetE30_NoBPTX3BX_v*",
61 "HLT_JetE50_NoBPTX3BX_v*",
62 "HLT_JetE70_NoBPTX3BX_v*",
63 "HLT_L2Mu10_NoVertex_NoBPTX3BX_v*",
64 "HLT_L2Mu10_NoVertex_NoBPTX3BX_v*",
65 "HLT_L2Mu10_NoVertex_NoBPTX3BX_v*",
66 "HLT_L2Mu20_NoVertex_NoBPTX3BX_v*",
67 "HLT_L2Mu30_NoVertex_NoBPTX3BX_v*",
68 "HLT_L2Mu20_NoVertex_2Cha_NoBPTX3BX_NoHalo_v*",
69 "HLT_L2Mu30_NoVertex_2Cha_NoBPTX3BX_NoHalo_v*",
70 "HLT_PixelTracks_Multiplicity70_v*",
71 "HLT_PixelTracks_Multiplicity80_v*",
72 "HLT_PixelTracks_Multiplicity90_v*",
73 "HLT_BeamGas_HF_Beam1_v*",
74 "HLT_BeamGas_HF_Beam2_v*",
76 "HLT_L1Tech_CASTOR_HaloMuon_v*",
77 "HLT_L1Tech_DT_GlobalOR_v*",
78 "HLT_GlobalRunHPDNoise_v*",
79 "HLT_L1Tech_HBHEHO_totalOR_v*",
80 "HLT_L1Tech_HCAL_HF_single_channel_v*",
81 "HLT_L1TrackerCosmics_v*",
86 "HLT_DoubleMediumIsoPFTau30_Trk1_eta2p1_Reg_Jet30_v*",
87 "HLT_DoubleMediumIsoPFTau30_Trk1_eta2p1_Reg_v*",
88 "HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Prong1_Reg_v*",
89 "HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Reg_v*",
90 "HLT_IsoMu18_eta2p1_MediumIsoPFTau25_Trk1_eta2p1_Reg_v*",
114 if self.config.fragment:
115 self.
labels[
'process'] =
''
116 self.
labels[
'dict'] =
'locals()'
118 self.
labels[
'process'] =
'process.'
119 self.
labels[
'dict'] =
'process.__dict__'
121 if self.config.online:
122 self.
labels[
'connect'] =
'frontier://(proxyurl=http://localhost:3128)(serverurl=http://localhost:8000/FrontierOnProd)(serverurl=http://localhost:8000/FrontierOnProd)(retrieve-ziplevel=0)'
124 self.
labels[
'connect'] =
'frontier://FrontierProd'
134 url =
'http://cms-project-confdb-hltdev.web.cern.ch/cms-project-confdb-hltdev/get.jsp'
135 postdata =
dict([ (key,
','.
join(vals))
for key, vals
in self.options.iteritems()
if vals ])
136 postdata[
'noedsources'] =
''
137 if self.config.fragment:
139 if self.config.menu.run:
140 postdata[
'runNumber'] = self.config.menu.run
142 postdata[
'dbName'] = self.config.menu.db
143 postdata[
'configName']= self.config.menu.name
145 data = urllib2.urlopen(url, urllib.urlencode(postdata)).
read()
146 if 'Exhausted Resultset' in data
or 'CONFIG_NOT_FOUND' in data:
147 raise ImportError(
'%s is not a valid HLT menu' % self.config.menuConfig.value)
152 url =
'http://cms-project-confdb-hltdev.web.cern.ch/cms-project-confdb-hltdev/get.jsp'
161 if self.config.menu.run:
162 postdata[
'runNumber'] = self.config.menu.run
164 postdata[
'dbName'] = self.config.menu.db
165 postdata[
'configName']= self.config.menu.name
167 data = urllib2.urlopen(url, urllib.urlencode(postdata)).
read()
168 if 'Exhausted Resultset' in data
or 'CONFIG_NOT_FOUND' in data:
169 raise ImportError(
'%s is not a valid HLT menu' % self.config.menuConfig.value)
170 filter = re.compile(
r' *= *cms.(End)?Path.*')
171 paths = [ filter.sub(
'', line)
for line
in data.splitlines()
if filter.search(line) ]
186 filter = re.compile(
r'^' + glob.replace(
'?',
'.').
replace(
'*',
'.*').
replace(
'[!',
'[^') +
r'$')
187 matches.extend( negate + element
for element
in collection
if filter.match(element) )
196 for element
in elements:
197 if element[0] ==
'-':
198 result.add( element )
200 result.discard(
'-' + element )
201 return sorted( element
for element
in result )
208 for element
in elements:
209 if element[0] ==
'-':
210 result.discard( element[1:] )
212 result.add( element )
213 return sorted( element
for element
in result )
225 # CMSSW version specific customizations
227 cmsswVersion = os.environ['CMSSW_VERSION']
229 # customization for CMSSW_5_2_X
230 if cmsswVersion.startswith('CMSSW_5_2_'):
232 # force the use of the correct calo jet energy corrections
233 if 'hltESPL1FastJetCorrectionESProducer' in %(dict)s:
234 %(process)shltESPL1FastJetCorrectionESProducer.algorithm = "AK5CaloHLT"
236 if 'hltESPL2RelativeCorrectionESProducer' in %(dict)s:
237 %(process)shltESPL2RelativeCorrectionESProducer.algorithm = "AK5CaloHLT"
239 if 'hltESPL3AbsoluteCorrectionESProducer' in %(dict)s:
240 %(process)shltESPL3AbsoluteCorrectionESProducer.algorithm = "AK5CaloHLT"
243 # customization for CMSSW_5_3_X
244 if cmsswVersion.startswith('CMSSW_5_3_'):
246 # do not override the calo jet energy corrections in 5.3.x for consistency with the current MC samples
250 # customization for CMSSW_6_1_X and 6_2_X
251 if cmsswVersion.startswith('CMSSW_6_1_') or cmsswVersion.startswith('CMSSW_6_2_'):
253 # force the use of the correct calo jet energy corrections
254 if 'hltESPL1FastJetCorrectionESProducer' in %(dict)s:
255 %(process)shltESPL1FastJetCorrectionESProducer.algorithm = "AK5CaloHLT"
257 if 'hltESPL2RelativeCorrectionESProducer' in %(dict)s:
258 %(process)shltESPL2RelativeCorrectionESProducer.algorithm = "AK5CaloHLT"
260 if 'hltESPL3AbsoluteCorrectionESProducer' in %(dict)s:
261 %(process)shltESPL3AbsoluteCorrectionESProducer.algorithm = "AK5CaloHLT"
263 # adapt the HLT menu to the "prototype for Event Interpretation" development
264 if 'hltPFPileUp' in %(dict)s:
265 # define new PFCandidateFwdPtrProducer module
266 %(process)shltParticleFlowPtrs = cms.EDProducer("PFCandidateFwdPtrProducer",
267 src = cms.InputTag('hltParticleFlow')
269 # add the new module before the hltPFPileUp module
271 for _sequence in [ _sequence for _sequence in %(dict)s.itervalues() if isinstance(_sequence, cms._ModuleSequenceType)]:
273 _sequence.insert( _sequence.index(%(process)shltPFPileUp), %(process)shltParticleFlowPtrs )
276 # reconfigure hltPFPileUp and hltPFNoPileUp to use the new module
277 %(process)shltPFPileUp.PFCandidates = cms.InputTag( "hltParticleFlowPtrs" )
278 %(process)shltPFNoPileUp.bottomCollection = cms.InputTag( "hltParticleFlowPtrs" )
280 # postLS1 muon extension
281 # /CalibMuon/CSCCalibration/python/CSCIndexer_cfi.py
282 %(process)sCSCIndexerESSource = cms.ESSource("EmptyESSource",
283 recordName = cms.string("CSCIndexerRecord"),
284 firstValid = cms.vuint32(1),
285 iovIsRunNotTime = cms.bool(True)
287 %(process)sCSCIndexerESProducer = cms.ESProducer("CSCIndexerESProducer",
288 AlgoName = cms.string("CSCIndexerStartup")
290 # /CalibMuon/CSCCalibration/python/CSCChannelMapper_cfi.py
291 %(process)sCSCChannelMapperESSource = cms.ESSource("EmptyESSource",
292 recordName = cms.string("CSCChannelMapperRecord"),
293 firstValid = cms.vuint32(1),
294 iovIsRunNotTime = cms.bool(True)
296 %(process)sCSCChannelMapperESProducer = cms.ESProducer("CSCChannelMapperESProducer",
297 AlgoName = cms.string("CSCChannelMapperStartup")
300 # customization for CMSSW_6_2_X only
301 if cmsswVersion.startswith('CMSSW_6_2_'):
302 # /Geometry/TrackerNumberingBuilder/trackerTopologyConstants_cfi.py
303 %(process)strackerTopologyConstants = cms.ESProducer('TrackerTopologyEP',
304 pxb_layerStartBit = cms.uint32(16),
305 pxb_ladderStartBit = cms.uint32(8),
306 pxb_moduleStartBit = cms.uint32(2),
307 pxb_layerMask = cms.uint32(15),
308 pxb_ladderMask = cms.uint32(255),
309 pxb_moduleMask = cms.uint32(63),
310 pxf_sideStartBit = cms.uint32(23),
311 pxf_diskStartBit = cms.uint32(16),
312 pxf_bladeStartBit = cms.uint32(10),
313 pxf_panelStartBit = cms.uint32(8),
314 pxf_moduleStartBit = cms.uint32(2),
315 pxf_sideMask = cms.uint32(3),
316 pxf_diskMask = cms.uint32(15),
317 pxf_bladeMask = cms.uint32(63),
318 pxf_panelMask = cms.uint32(3),
319 pxf_moduleMask = cms.uint32(63),
320 tec_sideStartBit = cms.uint32(18),
321 tec_wheelStartBit = cms.uint32(14),
322 tec_petal_fw_bwStartBit = cms.uint32(12),
323 tec_petalStartBit = cms.uint32(8),
324 tec_ringStartBit = cms.uint32(5),
325 tec_moduleStartBit = cms.uint32(2),
326 tec_sterStartBit = cms.uint32(0),
327 tec_sideMask = cms.uint32(3),
328 tec_wheelMask = cms.uint32(15),
329 tec_petal_fw_bwMask = cms.uint32(3),
330 tec_petalMask = cms.uint32(15),
331 tec_ringMask = cms.uint32(7),
332 tec_moduleMask = cms.uint32(7),
333 tec_sterMask = cms.uint32(3),
334 tib_layerStartBit = cms.uint32(14),
335 tib_str_fw_bwStartBit = cms.uint32(12),
336 tib_str_int_extStartBit = cms.uint32(10),
337 tib_strStartBit = cms.uint32(4),
338 tib_moduleStartBit = cms.uint32(2),
339 tib_sterStartBit = cms.uint32(0),
340 tib_layerMask = cms.uint32(7),
341 tib_str_fw_bwMask = cms.uint32(3),
342 tib_str_int_extMask = cms.uint32(3),
343 tib_strMask = cms.uint32(63),
344 tib_moduleMask = cms.uint32(3),
345 tib_sterMask = cms.uint32(3),
346 tid_sideStartBit = cms.uint32(13),
347 tid_wheelStartBit = cms.uint32(11),
348 tid_ringStartBit = cms.uint32(9),
349 tid_module_fw_bwStartBit = cms.uint32(7),
350 tid_moduleStartBit = cms.uint32(2),
351 tid_sterStartBit = cms.uint32(0),
352 tid_sideMask = cms.uint32(3),
353 tid_wheelMask = cms.uint32(3),
354 tid_ringMask = cms.uint32(3),
355 tid_module_fw_bwMask = cms.uint32(3),
356 tid_moduleMask = cms.uint32(31),
357 tid_sterMask = cms.uint32(3),
358 tob_layerStartBit = cms.uint32(14),
359 tob_rod_fw_bwStartBit = cms.uint32(12),
360 tob_rodStartBit = cms.uint32(5),
361 tob_moduleStartBit = cms.uint32(2),
362 tob_sterStartBit = cms.uint32(0),
363 tob_layerMask = cms.uint32(7),
364 tob_rod_fw_bwMask = cms.uint32(3),
365 tob_rodMask = cms.uint32(127),
366 tob_moduleMask = cms.uint32(7),
367 tob_sterMask = cms.uint32(3),
368 appendToDataLabel = cms.string('')
377 if not self.config.fragment:
381 if self.config.type
in (
'GRun', ):
383 # Enable HF Noise filters in GRun menu
384 if 'hltHfreco' in %(dict)s:
385 %(process)shltHfreco.setNoiseFlags = cms.bool( True )
387 if self.config.type
in (
'HIon', ):
389 # Disable HF Noise filters in HIon menu
390 if 'hltHfreco' in %(dict)s:
391 %(process)shltHfreco.setNoiseFlags = cms.bool( False )
403 self.overrideL1MenuXml()
412 self.instrumentOpenMode()
415 self.instrumentErrorEventType()
418 self.instrumentTiming()
423 if self.config.fragment:
440 self.overrideProcessName()
443 self.overrideOutput()
446 self.addGlobalOptions()
449 self.overrideGlobalTag()
455 self.updateMessageLogger()
481 # limit the number of events to be processed
482 %%(process)smaxEvents = cms.untracked.PSet(
483 input = cms.untracked.int32( %d )
485 """ % self.config.events
487 if not self.config.profiling:
489 # enable the TrigReport and TimeReport
490 %(process)soptions = cms.untracked.PSet(
491 wantSummary = cms.untracked.bool( True )
498 name: parameter name (optional)
499 type: parameter type (look for tracked and untracked variants)
500 value: original value
501 replace: replacement value
505 r'%(name)s = cms(?P<tracked>(?:\.untracked)?)\.%(type)s\( (?P<quote>["\']?)%(value)s(?P=quote)' % args,
506 r'%(name)s = cms\g<tracked>.%(type)s( \g<quote>%(replace)s\g<quote>' % args,
510 r'cms(?P<tracked>(?:\.untracked)?)\.%(type)s\( (?P<quote>["\']?)%(value)s(?P=quote)' % args,
511 r'cms\g<tracked>.%(type)s( \g<quote>%(replace)s\g<quote>' % args,
516 if not self.config.data:
518 if not self.config.fragment:
520 # customise the HLT menu for running on MC
521 from HLTrigger.Configuration.customizeHLTforMC import customizeHLTforMC
522 process = customizeHLTforMC(process)
527 if self.config.fastsim:
529 self.data = re.sub(
r'import FWCore.ParameterSet.Config as cms',
r'\g<0>\nfrom FastSimulation.HighLevelTrigger.HLTSetup_cff import *', self.data)
532 self.data = re.compile(
r'^streams.*\n(.*\n)*?^\)\s*\n', re.MULTILINE ).sub(
'', self.data )
533 self.data = re.compile(
r'^datasets.*\n(.*\n)*?^\)\s*\n', re.MULTILINE ).sub(
'', self.data )
537 self._fix_parameter( type =
'InputTag', value =
'hltL1extraParticles', replace =
'l1extraParticles')
538 self._fix_parameter(name =
'GMTReadoutCollection', type =
'InputTag', value =
'hltGtDigis', replace =
'gmtDigis')
539 self._fix_parameter( type =
'InputTag', value =
'hltGtDigis', replace =
'gtDigis')
540 self._fix_parameter( type =
'InputTag', value =
'hltL1GtObjectMap', replace =
'gtDigis')
541 self._fix_parameter(name =
'initialSeeds', type =
'InputTag', value =
'noSeedsHere', replace =
'globalPixelSeeds:GlobalPixel')
542 self._fix_parameter(name =
'preFilteredSeeds', type =
'bool', value =
'True', replace =
'False')
543 self._fix_parameter( type =
'InputTag', value =
'hltOfflineBeamSpot', replace =
'offlineBeamSpot')
544 self._fix_parameter( type =
'InputTag', value =
'hltOnlineBeamSpot', replace =
'offlineBeamSpot')
545 self._fix_parameter( type =
'InputTag', value =
'hltMuonCSCDigis', replace =
'simMuonCSCDigis')
546 self._fix_parameter( type =
'InputTag', value =
'hltMuonDTDigis', replace =
'simMuonDTDigis')
547 self._fix_parameter( type =
'InputTag', value =
'hltMuonRPCDigis', replace =
'simMuonRPCDigis')
548 self._fix_parameter( type =
'InputTag', value =
'hltRegionalTracksForL3MuonIsolation', replace =
'hltPixelTracks')
549 self._fix_parameter(name =
'src', type =
'InputTag', value =
'hltHcalTowerNoiseCleaner', replace =
'hltTowerMakerForAll')
550 self._fix_parameter(name =
'src', type =
'InputTag', value =
'hltIter4Tau3MuMerged', replace =
'hltIter4Merged')
553 self.data = re.sub(
r'hltMuonCSCDigis',
r'cms.SequencePlaceholder( "simMuonCSCDigis" )', self.data )
554 self.data = re.sub(
r'hltMuonDTDigis',
r'cms.SequencePlaceholder( "simMuonDTDigis" )', self.data )
555 self.data = re.sub(
r'hltMuonRPCDigis',
r'cms.SequencePlaceholder( "simMuonRPCDigis" )', self.data )
556 self.data = re.sub(
r'HLTEndSequence',
r'cms.SequencePlaceholder( "HLTEndSequence" )', self.data )
557 self.data = re.sub(
r'hltGtDigis',
r'HLTBeginSequence', self.data )
562 if self.options[
'paths']:
563 if self.options[
'paths'][0][0] ==
'-':
565 for minuspath
in self.options[
'paths']:
567 self.data = re.sub(
r' cms.PSet\( pathName = cms.string\( "%s" \),\n prescales = cms.vuint32\( .* \)\n \),?\n' % path,
'', self.data)
570 for path
in self.all_paths:
571 if path
not in self.options[
'paths']:
572 self.data = re.sub(
r' cms.PSet\( pathName = cms.string\( "%s" \),\n prescales = cms.vuint32\( .* \)\n \),?\n' % path,
'', self.data)
574 if self.config.unprescale:
576 # remove the HLT prescales
577 if 'PrescaleService' in %(dict)s:
578 %(process)sPrescaleService.lvl1DefaultLabel = cms.string( '0' )
579 %(process)sPrescaleService.lvl1Labels = cms.vstring( '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' )
580 %(process)sPrescaleService.prescaleTable = cms.VPSet( )
587 filters = [ match[1]
for match
in re.findall(
r'(process\.)?\b(\w+) = cms.EDFilter', self.data) ]
588 re_sequence = re.compile(
r'cms\.(Path|Sequence)\((.*)\)' )
590 self.data = re_sequence.sub(
lambda line: re.sub(
r'cms\.ignore *\( *((process\.)?\b(\w+)) *\)',
r'\1', line.group(0) ), self.data )
591 self.data = re_sequence.sub(
lambda line: re.sub(
r'~',
'', line.group(0) ), self.data )
593 for some
in splitter(filters, 1000):
594 re_filters = re.compile(
r'\b((process\.)?(' +
r'|'.
join(some) +
r'))\b' )
595 self.data = re_sequence.sub(
lambda line: re_filters.sub(
r'cms.ignore( \1 )', line.group(0) ), self.data )
599 if self.config.errortype:
601 self._fix_parameter(name =
'SelectedTriggerType', type =
'int32', value =
'1', replace =
'0')
602 self._fix_parameter(name =
'SelectedTriggerType', type =
'int32', value =
'2', replace =
'0')
603 self._fix_parameter(name =
'SelectedTriggerType', type =
'int32', value =
'3', replace =
'0')
619 # override the GlobalTag, connection string and pfnPrefix
620 if 'GlobalTag' in %(dict)s:
624 if not self.config.data
and not self.config.globaltag:
625 if self.config.type
in globalTag:
626 self.config.globaltag = globalTag[self.config.type]
628 self.config.globaltag = globalTag[
'GRun']
631 if self.config.l1.override:
632 self.config.l1.record =
'L1GtTriggerMenuRcd'
633 self.config.l1.label =
''
634 self.config.l1.tag = self.config.l1.override
635 if not self.config.l1.connect:
636 self.config.l1.connect =
'%(connect)s/CMS_COND_31X_L1T'
637 self.config.l1cond =
'%(tag)s,%(record)s,%(connect)s' % self.config.l1.__dict__
639 self.config.l1cond =
None
641 if self.config.globaltag
or self.config.l1cond:
642 text +=
" from Configuration.AlCa.GlobalTag import GlobalTag as customiseGlobalTag\n"
643 text +=
" %(process)sGlobalTag = customiseGlobalTag(%(process)sGlobalTag"
644 if self.config.globaltag:
645 text +=
", globaltag = %s" % repr(self.config.globaltag)
646 if self.config.l1cond:
647 text +=
", conditions = %s" % repr(self.config.l1cond)
650 text +=
""" %(process)sGlobalTag.connect = '%(connect)s/CMS_COND_31X_GLOBALTAG'
651 %(process)sGlobalTag.pfnPrefix = cms.untracked.string('%(connect)s/')
652 for pset in process.GlobalTag.toGet.value():
653 pset.connect = pset.connect.value().replace('frontier://FrontierProd/', '%(connect)s/')
659 if self.config.l1Xml.XmlFile:
661 # override the L1 menu from an Xml file
662 %%(process)sl1GtTriggerMenuXml = cms.ESProducer("L1GtTriggerMenuXmlProducer",
663 TriggerMenuLuminosity = cms.string('%(LumiDir)s'),
664 DefXmlFile = cms.string('%(XmlFile)s'),
665 VmeXmlFile = cms.string('')
667 %%(process)sL1GtTriggerMenuRcdSource = cms.ESSource("EmptyESSource",
668 recordName = cms.string('L1GtTriggerMenuRcd'),
669 iovIsRunNotTime = cms.bool(True),
670 firstValid = cms.vuint32(1)
672 %%(process)ses_prefer_l1GtParameters = cms.ESPrefer('L1GtTriggerMenuXmlProducer','l1GtTriggerMenuXml')
674 self.data += text % self.config.l1Xml.__dict__
678 if not self.config.emulator:
681 if self.config.emulator !=
'gt':
687 # run the L1 GT emulator, then repack the data into a new RAW collection, to be used by the HLT
689 if self.config.fragment:
691 text +=
"import Configuration.StandardSequences.SimL1EmulatorRepack_GT_cff\n"
693 text +=
"process.load( 'Configuration.StandardSequences.SimL1EmulatorRepack_GT_cff' )\n"
695 if not 'hltBoolFalse' in self.data:
698 %(process)shltBoolFalse = cms.EDFilter( "HLTBool",
699 result = cms.bool( False )
702 text +=
"process.L1Emulator = cms.Path( process.SimL1Emulator + process.hltBoolFalse )\n\n"
704 self.data = re.sub(
r'.*cms\.(End)?Path.*', text +
r'\g<0>', self.data, 1)
709 if self.config.emulator:
718 emulator[
'RawToDigi'] =
'RawToDigi_Data_cff'
720 emulator[
'RawToDigi'] =
'RawToDigi_cff'
722 if self.config.emulator ==
'gt':
723 emulator[
'CustomL1T'] =
'customiseL1GtEmulatorFromRaw'
724 emulator[
'CustomHLT'] =
'switchToSimGtDigis'
725 elif self.config.emulator ==
'gct,gt':
726 emulator[
'CustomL1T'] =
'customiseL1CaloAndGtEmulatorsFromRaw'
727 emulator[
'CustomHLT'] =
'switchToSimGctGtDigis'
728 elif self.config.emulator ==
'gmt,gt':
730 emulator[
'CustomL1T'] =
'customiseL1MuonAndGtEmulatorsFromRaw'
731 emulator[
'CustomHLT'] =
'switchToSimGmtGtDigis'
732 elif self.config.emulator
in (
'gmt,gct,gt',
'gct,gmt,gt',
'all'):
733 emulator[
'CustomL1T'] =
'customiseL1EmulatorFromRaw'
734 emulator[
'CustomHLT'] =
'switchToSimGmtGctGtDigis'
737 emulator[
'CustomL1T'] =
'customiseL1EmulatorFromRaw'
738 emulator[
'CustomHLT'] =
'switchToSimGmtGctGtDigis'
741 # customize the L1 emulator to run %(CustomL1T)s with HLT to %(CustomHLT)s
742 process.load( 'Configuration.StandardSequences.%(RawToDigi)s' )
743 process.load( 'Configuration.StandardSequences.SimL1Emulator_cff' )
744 import L1Trigger.Configuration.L1Trigger_custom
745 process = L1Trigger.Configuration.L1Trigger_custom.%(CustomL1T)s( process )
746 process = L1Trigger.Configuration.L1Trigger_custom.customiseResetPrescalesAndMasks( process )
748 # customize the HLT to use the emulated results
749 import HLTrigger.Configuration.customizeHLTforL1Emulator
750 process = HLTrigger.Configuration.customizeHLTforL1Emulator.switchToL1Emulator( process )
751 process = HLTrigger.Configuration.customizeHLTforL1Emulator.%(CustomHLT)s( process )
758 r'\b(process\.)?hltOutput(\w+) *= *cms\.OutputModule\( *"ShmStreamConsumer" *,',
759 r'%(process)shltOutput\2 = cms.OutputModule( "PoolOutputModule",\n fileName = cms.untracked.string( "output\2.root" ),\n fastCloning = cms.untracked.bool( False ),\n dataset = cms.untracked.PSet(\n filterName = cms.untracked.string( "" ),\n dataTier = cms.untracked.string( "RAW" )\n ),',
763 if not self.config.fragment
and self.config.output ==
'full':
766 # add a single "keep *" output
767 %(process)shltOutputFULL = cms.OutputModule( "PoolOutputModule",
768 fileName = cms.untracked.string( "outputFULL.root" ),
769 fastCloning = cms.untracked.bool( False ),
770 dataset = cms.untracked.PSet(
771 dataTier = cms.untracked.string( 'RECO' ),
772 filterName = cms.untracked.string( '' )
774 outputCommands = cms.untracked.vstring( 'keep *' )
776 %(process)sFULLOutput = cms.EndPath( %(process)shltOutputFULL )
782 if self.config.name
is None:
787 self.data = re.compile(
r'^(process\s*=\s*cms\.Process\(\s*' + quote +
r')\w+(' + quote +
r'\s*\).*)$', re.MULTILINE).sub(
r'\1%s\2' % self.config.name, self.data, 1)
791 # adapt HLT modules to the correct process name
792 if 'hltTrigReport' in %%(dict)s:
793 %%(process)shltTrigReport.HLTriggerResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
795 if 'hltPreExpressCosmicsOutputSmart' in %%(dict)s:
796 %%(process)shltPreExpressCosmicsOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' )
798 if 'hltPreExpressOutputSmart' in %%(dict)s:
799 %%(process)shltPreExpressOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' )
801 if 'hltPreDQMForHIOutputSmart' in %%(dict)s:
802 %%(process)shltPreDQMForHIOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' )
804 if 'hltPreDQMForPPOutputSmart' in %%(dict)s:
805 %%(process)shltPreDQMForPPOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' )
807 if 'hltPreHLTDQMResultsOutputSmart' in %%(dict)s:
808 %%(process)shltPreHLTDQMResultsOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' )
810 if 'hltPreHLTDQMOutputSmart' in %%(dict)s:
811 %%(process)shltPreHLTDQMOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' )
813 if 'hltPreHLTMONOutputSmart' in %%(dict)s:
814 %%(process)shltPreHLTMONOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' )
816 if 'hltDQMHLTScalers' in %%(dict)s:
817 %%(process)shltDQMHLTScalers.triggerResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
818 %%(process)shltDQMHLTScalers.processname = '%(name)s'
820 if 'hltDQML1SeedLogicScalers' in %%(dict)s:
821 %%(process)shltDQML1SeedLogicScalers.processname = '%(name)s'
822 """ % self.config.__dict__
828 if 'MessageLogger' in %(dict)s:
829 %(process)sMessageLogger.categories.append('TriggerSummaryProducerAOD')
830 %(process)sMessageLogger.categories.append('L1GtTrigReport')
831 %(process)sMessageLogger.categories.append('HLTrigReport')
832 %(process)sMessageLogger.categories.append('FastReport')
840 if 'GlobalTag' in %%(dict)s:
842 for condition
in conditions:
843 self.data +=
""" %%(process)sGlobalTag.toGet.append(
845 record = cms.string( '%(record)s' ),
846 tag = cms.string( '%(tag)s' ),
847 label = cms.untracked.string( '%(label)s' ),
848 connect = cms.untracked.string( '%(connect)s' )
856 if self.config.fragment:
857 self.data +=
'from %s import *\n' % module
859 self.data +=
'process.load( "%s" )\n' % module
864 self.data +=
"if '%s' in %%(dict)s:\n" % module
865 for (parameter, value)
in parameters:
866 self.data +=
" %%(process)s%s.%s = %s\n" % (module, parameter, value)
871 if self.config.profiling:
875 if not 'hltGetRaw' in self.data:
878 %(process)shltGetRaw = cms.EDAnalyzer( "HLTGetRaw",
879 RawDataCollection = cms.InputTag( "rawDataCollector" )
883 if not 'hltGetConditions' in self.data:
886 %(process)shltGetConditions = cms.EDAnalyzer( 'EventSetupRecordDataGetter',
887 verbose = cms.untracked.bool( False ),
892 if not 'hltBoolFalse' in self.data:
895 %(process)shltBoolFalse = cms.EDFilter( "HLTBool",
896 result = cms.bool( False )
903 %(process)sHLTriggerFirstPath = cms.Path( %(process)shltGetRaw + %(process)shltGetConditions + %(process)shltBoolFalse )
905 self.data = re.sub(
r'.*cms\.(End)?Path.*', text +
r'\g<0>', self.data, 1)
910 if self.config.timing:
912 # instrument the menu with the modules and EndPath needed for timing studies
916 if 'FastTimerService' in self.data:
919 self.data +=
'\n# configure the FastTimerService\n'
921 self.loadCff(
'HLTrigger.Timer.FastTimerService_cfi')
922 self.data +=
"""%(process)sFastTimerService.useRealTimeClock = False
923 %(process)sFastTimerService.enableTimingPaths = True
924 %(process)sFastTimerService.enableTimingModules = True
925 %(process)sFastTimerService.enableTimingExclusive = True
926 %(process)sFastTimerService.enableTimingSummary = True
927 %(process)sFastTimerService.skipFirstPath = True
928 %(process)sFastTimerService.enableDQM = True
929 %(process)sFastTimerService.enableDQMbyPathActive = True
930 %(process)sFastTimerService.enableDQMbyPathTotal = True
931 %(process)sFastTimerService.enableDQMbyPathOverhead = True
932 %(process)sFastTimerService.enableDQMbyPathDetails = True
933 %(process)sFastTimerService.enableDQMbyPathCounters = True
934 %(process)sFastTimerService.enableDQMbyPathExclusive = True
935 %(process)sFastTimerService.enableDQMbyModule = True
936 %(process)sFastTimerService.enableDQMSummary = True
937 %(process)sFastTimerService.enableDQMbyLuminosity = True
938 %(process)sFastTimerService.enableDQMbyLumiSection = True
939 %(process)sFastTimerService.enableDQMbyProcesses = False
940 %(process)sFastTimerService.dqmTimeRange = 1000.
941 %(process)sFastTimerService.dqmTimeResolution = 5.
942 %(process)sFastTimerService.dqmPathTimeRange = 100.
943 %(process)sFastTimerService.dqmPathTimeResolution = 0.5
944 %(process)sFastTimerService.dqmModuleTimeRange = 40.
945 %(process)sFastTimerService.dqmModuleTimeResolution = 0.2
946 %(process)sFastTimerService.dqmLuminosityRange = 1e+34
947 %(process)sFastTimerService.dqmLuminosityResolution = 1e+31
948 %(process)sFastTimerService.dqmLumiSectionsRange = 2500
949 %(process)sFastTimerService.dqmPath = 'HLT/TimerService'
950 %(process)sFastTimerService.luminosityProduct = cms.untracked.InputTag( 'hltScalersRawToDigi' )
951 %(process)sFastTimerService.supportedProcesses = cms.untracked.vuint32( )
955 # FastTimerServiceClient
956 %(process)sfastTimerServiceClient = cms.EDAnalyzer( "FastTimerServiceClient",
957 dqmPath = cms.untracked.string( "HLT/TimerService" )
961 %(process)sdqmFileSaver = cms.EDAnalyzer( "DQMFileSaver",
962 convention = cms.untracked.string( "Offline" ),
963 workflow = cms.untracked.string( "/HLT/FastTimerService/All" ),
964 dirName = cms.untracked.string( "." ),
965 saveByRun = cms.untracked.int32(1),
966 saveByLumiSection = cms.untracked.int32(-1),
967 saveByEvent = cms.untracked.int32(-1),
968 saveByTime = cms.untracked.int32(-1),
969 saveByMinute = cms.untracked.int32(-1),
970 saveAtJobEnd = cms.untracked.bool(False),
971 forceRunNumber = cms.untracked.int32(-1),
974 %(process)sTimingOutput = cms.EndPath( %(process)sfastTimerServiceClient + %(process)sdqmFileSaver )
979 sys.stderr.write(
'Path selection:\n')
981 sys.stderr.write(
'\t%s\n' % path)
982 sys.stderr.write(
'\n\n')
985 self.all_paths = self.getPathList()
987 if self.config.paths:
989 paths = self.config.paths.split(
',')
994 if self.config.fragment
or self.config.output
in (
'none',
'full'):
996 if self.config.paths:
1001 paths.append(
"-*Output" )
1002 elif self.config.output ==
'minimal':
1004 if self.config.paths:
1005 paths.append(
"HLTDQMResultsOutput" )
1007 paths.append(
"-*Output" )
1008 paths.append(
"HLTDQMResultsOutput" )
1011 if self.config.paths:
1012 paths.append(
"*Output" )
1017 if self.config.fastsim:
1018 paths.extend(
"-%s" % path
for path
in self.fastsimUnsupportedPaths )
1021 if self.config.profiling:
1022 paths.append(
"-HLTriggerFirstPath" )
1023 paths.append(
"-HLTAnalyzerEndpath" )
1026 paths.append(
"-OfflineOutput" )
1029 paths = self.expandWildcards(paths, self.all_paths)
1031 if self.config.paths:
1033 self.options[
'paths'] = self.consolidatePositiveList(paths)
1034 if not self.options[
'paths']:
1035 raise RuntimeError(
'Error: option "--paths %s" does not select any valid paths' % self.config.paths)
1038 self.options[
'paths'] = self.consolidateNegativeList(paths)
1043 self.options[
'services'].
append(
"-FUShmDQMOutputService" )
1045 if self.config.fragment:
1047 self.options[
'essources'].
append(
"-GlobalTag" )
1048 self.options[
'essources'].
append(
"-HepPDTESSource" )
1049 self.options[
'essources'].
append(
"-XMLIdealGeometryESSource" )
1050 self.options[
'essources'].
append(
"-eegeom" )
1051 self.options[
'essources'].
append(
"-es_hardcode" )
1052 self.options[
'essources'].
append(
"-magfield" )
1054 self.options[
'esmodules'].
append(
"-AutoMagneticFieldESProducer" )
1055 self.options[
'esmodules'].
append(
"-SlaveField0" )
1056 self.options[
'esmodules'].
append(
"-SlaveField20" )
1057 self.options[
'esmodules'].
append(
"-SlaveField30" )
1058 self.options[
'esmodules'].
append(
"-SlaveField35" )
1059 self.options[
'esmodules'].
append(
"-SlaveField38" )
1060 self.options[
'esmodules'].
append(
"-SlaveField40" )
1061 self.options[
'esmodules'].
append(
"-VBF0" )
1062 self.options[
'esmodules'].
append(
"-VBF20" )
1063 self.options[
'esmodules'].
append(
"-VBF30" )
1064 self.options[
'esmodules'].
append(
"-VBF35" )
1065 self.options[
'esmodules'].
append(
"-VBF38" )
1066 self.options[
'esmodules'].
append(
"-VBF40" )
1067 self.options[
'esmodules'].
append(
"-CSCGeometryESModule" )
1068 self.options[
'esmodules'].
append(
"-CaloGeometryBuilder" )
1069 self.options[
'esmodules'].
append(
"-CaloTowerHardcodeGeometryEP" )
1070 self.options[
'esmodules'].
append(
"-CastorHardcodeGeometryEP" )
1071 self.options[
'esmodules'].
append(
"-DTGeometryESModule" )
1072 self.options[
'esmodules'].
append(
"-EcalBarrelGeometryEP" )
1073 self.options[
'esmodules'].
append(
"-EcalElectronicsMappingBuilder" )
1074 self.options[
'esmodules'].
append(
"-EcalEndcapGeometryEP" )
1075 self.options[
'esmodules'].
append(
"-EcalLaserCorrectionService" )
1076 self.options[
'esmodules'].
append(
"-EcalPreshowerGeometryEP" )
1077 self.options[
'esmodules'].
append(
"-HcalHardcodeGeometryEP" )
1078 self.options[
'esmodules'].
append(
"-HcalTopologyIdealEP" )
1079 self.options[
'esmodules'].
append(
"-MuonNumberingInitialization" )
1080 self.options[
'esmodules'].
append(
"-ParametrizedMagneticFieldProducer" )
1081 self.options[
'esmodules'].
append(
"-RPCGeometryESModule" )
1082 self.options[
'esmodules'].
append(
"-SiStripGainESProducer" )
1083 self.options[
'esmodules'].
append(
"-SiStripRecHitMatcherESProducer" )
1084 self.options[
'esmodules'].
append(
"-SiStripQualityESProducer" )
1085 self.options[
'esmodules'].
append(
"-StripCPEfromTrackAngleESProducer" )
1086 self.options[
'esmodules'].
append(
"-TrackerDigiGeometryESModule" )
1087 self.options[
'esmodules'].
append(
"-TrackerGeometricDetESModule" )
1088 self.options[
'esmodules'].
append(
"-VolumeBasedMagneticFieldESProducer" )
1089 self.options[
'esmodules'].
append(
"-ZdcHardcodeGeometryEP" )
1090 self.options[
'esmodules'].
append(
"-hcal_db_producer" )
1091 self.options[
'esmodules'].
append(
"-L1GtTriggerMaskAlgoTrigTrivialProducer" )
1092 self.options[
'esmodules'].
append(
"-L1GtTriggerMaskTechTrigTrivialProducer" )
1093 self.options[
'esmodules'].
append(
"-hltESPEcalTrigTowerConstituentsMapBuilder" )
1094 self.options[
'esmodules'].
append(
"-hltESPGlobalTrackingGeometryESProducer" )
1095 self.options[
'esmodules'].
append(
"-hltESPMuonDetLayerGeometryESProducer" )
1096 self.options[
'esmodules'].
append(
"-hltESPTrackerRecoGeometryESProducer" )
1097 if not self.config.fastsim:
1098 self.options[
'esmodules'].
append(
"-CaloTowerGeometryFromDBEP" )
1099 self.options[
'esmodules'].
append(
"-CastorGeometryFromDBEP" )
1100 self.options[
'esmodules'].
append(
"-EcalBarrelGeometryFromDBEP" )
1101 self.options[
'esmodules'].
append(
"-EcalEndcapGeometryFromDBEP" )
1102 self.options[
'esmodules'].
append(
"-EcalPreshowerGeometryFromDBEP" )
1103 self.options[
'esmodules'].
append(
"-HcalGeometryFromDBEP" )
1104 self.options[
'esmodules'].
append(
"-ZdcGeometryFromDBEP" )
1105 self.options[
'esmodules'].
append(
"-XMLFromDBSource" )
1106 self.options[
'esmodules'].
append(
"-sistripconn" )
1108 self.options[
'services'].
append(
"-PrescaleService" )
1109 self.options[
'services'].
append(
"-MessageLogger" )
1110 self.options[
'services'].
append(
"-DQM" )
1111 self.options[
'services'].
append(
"-DQMStore" )
1112 self.options[
'services'].
append(
"-MicroStateService" )
1113 self.options[
'services'].
append(
"-ModuleWebRegistry" )
1114 self.options[
'services'].
append(
"-TimeProfilerService" )
1115 self.options[
'services'].
append(
"-FastTimerService" )
1117 self.options[
'psets'].
append(
"-maxEvents" )
1118 self.options[
'psets'].
append(
"-options" )
1120 if self.config.fastsim:
1122 self.options[
'esmodules'].
append(
"-navigationSchoolESProducer" )
1123 self.options[
'esmodules'].
append(
"-TransientTrackBuilderESProducer" )
1124 self.options[
'esmodules'].
append(
"-SteppingHelixPropagatorAny" )
1125 self.options[
'esmodules'].
append(
"-OppositeMaterialPropagator" )
1126 self.options[
'esmodules'].
append(
"-MaterialPropagator" )
1127 self.options[
'esmodules'].
append(
"-CaloTowerConstituentsMapBuilder" )
1128 self.options[
'esmodules'].
append(
"-CaloTopologyBuilder" )
1130 self.options[
'services'].
append(
"-UpdaterService" )
1132 self.options[
'modules'].
append(
"hltL3MuonIsolations" )
1133 self.options[
'modules'].
append(
"hltPixelVertices" )
1135 self.options[
'modules'].
append(
"-hltCkfL1IsoTrackCandidates" )
1136 self.options[
'modules'].
append(
"-hltCtfL1IsoWithMaterialTracks" )
1137 self.options[
'modules'].
append(
"-hltCkfL1NonIsoTrackCandidates" )
1138 self.options[
'modules'].
append(
"-hltCtfL1NonIsoWithMaterialTracks" )
1139 self.options[
'modules'].
append(
"-hltCkf3HitL1IsoTrackCandidates" )
1140 self.options[
'modules'].
append(
"-hltCtf3HitL1IsoWithMaterialTracks" )
1141 self.options[
'modules'].
append(
"-hltCkf3HitL1NonIsoTrackCandidates" )
1142 self.options[
'modules'].
append(
"-hltCtf3HitL1NonIsoWithMaterialTracks" )
1144 self.options[
'modules'].
append(
"-hltCkfL1SeededTrackCandidates" )
1145 self.options[
'modules'].
append(
"-hltCtfL1SeededithMaterialTracks" )
1146 self.options[
'modules'].
append(
"-hltCkf3HitL1SeededTrackCandidates" )
1147 self.options[
'modules'].
append(
"-hltCtf3HitL1SeededWithMaterialTracks" )
1148 self.options[
'modules'].
append(
"-hltCkf3HitActivityTrackCandidates" )
1149 self.options[
'modules'].
append(
"-hltCtf3HitActivityWithMaterialTracks" )
1150 self.options[
'modules'].
append(
"-hltActivityCkfTrackCandidatesForGSF" )
1151 self.options[
'modules'].
append(
"-hltL1SeededCkfTrackCandidatesForGSF" )
1152 self.options[
'modules'].
append(
"-hltMuCkfTrackCandidates" )
1153 self.options[
'modules'].
append(
"-hltMuCtfTracks" )
1154 self.options[
'modules'].
append(
"-hltTau3MuCkfTrackCandidates" )
1155 self.options[
'modules'].
append(
"-hltTau3MuCtfWithMaterialTracks" )
1156 self.options[
'modules'].
append(
"-hltMuTrackJpsiCkfTrackCandidates" )
1157 self.options[
'modules'].
append(
"-hltMuTrackJpsiCtfTracks" )
1158 self.options[
'modules'].
append(
"-hltMuTrackJpsiEffCkfTrackCandidates" )
1159 self.options[
'modules'].
append(
"-hltMuTrackJpsiEffCtfTracks" )
1160 self.options[
'modules'].
append(
"-hltJpsiTkPixelSeedFromL3Candidate" )
1161 self.options[
'modules'].
append(
"-hltCkfTrackCandidatesJpsiTk" )
1162 self.options[
'modules'].
append(
"-hltCtfWithMaterialTracksJpsiTk" )
1163 self.options[
'modules'].
append(
"-hltMuTrackCkfTrackCandidatesOnia" )
1164 self.options[
'modules'].
append(
"-hltMuTrackCtfTracksOnia" )
1166 self.options[
'modules'].
append(
"-hltESRegionalEgammaRecHit" )
1167 self.options[
'modules'].
append(
"-hltEcalRegionalJetsFEDs" )
1168 self.options[
'modules'].
append(
"-hltEcalRegionalMuonsFEDs" )
1169 self.options[
'modules'].
append(
"-hltEcalRegionalEgammaFEDs" )
1170 self.options[
'modules'].
append(
"-hltFEDSelector" )
1171 self.options[
'modules'].
append(
"-hltL3TrajSeedOIHit" )
1172 self.options[
'modules'].
append(
"-hltL3TrajSeedIOHit" )
1173 self.options[
'modules'].
append(
"-hltL3TrackCandidateFromL2OIState" )
1174 self.options[
'modules'].
append(
"-hltL3TrackCandidateFromL2OIHit" )
1175 self.options[
'modules'].
append(
"-hltL3TrackCandidateFromL2IOHit" )
1176 self.options[
'modules'].
append(
"-hltL3TrackCandidateFromL2NoVtx" )
1177 self.options[
'modules'].
append(
"-hltHcalDigis" )
1178 self.options[
'modules'].
append(
"-hltHoreco" )
1179 self.options[
'modules'].
append(
"-hltHfreco" )
1180 self.options[
'modules'].
append(
"-hltHbhereco" )
1181 self.options[
'modules'].
append(
"-hltEcalRegionalRestFEDs" )
1182 self.options[
'modules'].
append(
"-hltEcalRegionalESRestFEDs" )
1183 self.options[
'modules'].
append(
"-hltEcalRawToRecHitFacility" )
1184 self.options[
'modules'].
append(
"-hltESRawToRecHitFacility" )
1185 self.options[
'modules'].
append(
"-hltEcalRegionalJetsRecHit" )
1186 self.options[
'modules'].
append(
"-hltEcalRegionalMuonsRecHit" )
1187 self.options[
'modules'].
append(
"-hltEcalRegionalEgammaRecHit" )
1188 self.options[
'modules'].
append(
"-hltEcalRecHitAll" )
1189 self.options[
'modules'].
append(
"-hltESRecHitAll" )
1191 self.options[
'modules'].
append(
"-hltPFJetCkfTrackCandidates" )
1192 self.options[
'modules'].
append(
"-hltPFJetCtfWithMaterialTracks" )
1193 self.options[
'modules'].
append(
"-hltPFlowTrackSelectionHighPurity" )
1195 self.options[
'modules'].
append(
"-hltDisplacedHT250L1FastJetRegionalPixelSeedGenerator" )
1196 self.options[
'modules'].
append(
"-hltDisplacedHT250L1FastJetRegionalCkfTrackCandidates" )
1197 self.options[
'modules'].
append(
"-hltDisplacedHT250L1FastJetRegionalCtfWithMaterialTracks" )
1198 self.options[
'modules'].
append(
"-hltDisplacedHT300L1FastJetRegionalPixelSeedGenerator" )
1199 self.options[
'modules'].
append(
"-hltDisplacedHT300L1FastJetRegionalCkfTrackCandidates" )
1200 self.options[
'modules'].
append(
"-hltDisplacedHT300L1FastJetRegionalCtfWithMaterialTracks" )
1201 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorbbPhiL1FastJet" )
1202 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesbbPhiL1FastJet" )
1203 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksbbPhiL1FastJet" )
1204 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorHbbVBF" )
1205 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesHbbVBF" )
1206 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksHbbVBF" )
1207 self.options[
'modules'].
append(
"-hltBLifetimeBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20HbbL1FastJet" )
1208 self.options[
'modules'].
append(
"-hltBLifetimeBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20HbbL1FastJet" )
1209 self.options[
'modules'].
append(
"-hltBLifetimeBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20HbbL1FastJet" )
1210 self.options[
'modules'].
append(
"-hltBLifetimeDiBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20HbbL1FastJet" )
1211 self.options[
'modules'].
append(
"-hltBLifetimeDiBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20HbbL1FastJet" )
1212 self.options[
'modules'].
append(
"-hltBLifetimeDiBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20HbbL1FastJet" )
1217 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorSingleTop" )
1218 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksSingleTop" )
1219 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesSingleTop" )
1220 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorEleJetSingleTop" )
1221 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesEleJetSingleTop" )
1222 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksEleJetSingleTop" )
1223 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorIsoEleJetSingleTop" )
1224 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesIsoEleJetSingleTop" )
1225 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksIsoEleJetSingleTop" )
1226 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorRA2b" )
1227 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesRA2b" )
1228 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksRA2b" )
1229 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorRAzr" )
1230 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesRAzr" )
1231 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksRAzr" )
1232 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixel3DSeedGeneratorJet30Hbb" )
1233 self.options[
'modules'].
append(
"-hltBLifetimeRegional3DCkfTrackCandidatesJet30Hbb" )
1234 self.options[
'modules'].
append(
"-hltBLifetimeRegional3DCtfWithMaterialTracksJet30Hbb" )
1235 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorGammaB" )
1236 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesGammaB" )
1237 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksGammaB" )
1240 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorHbb" )
1241 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesHbb" )
1242 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksHbb" )
1243 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorbbPhi" )
1244 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesbbPhi" )
1245 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksbbPhi" )
1246 self.options[
'modules'].
append(
"-hltBLifetimeBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20Hbb" )
1247 self.options[
'modules'].
append(
"-hltBLifetimeBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20Hbb" )
1248 self.options[
'modules'].
append(
"-hltBLifetimeBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20Hbb" )
1249 self.options[
'modules'].
append(
"-hltBLifetimeDiBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20Hbb" )
1250 self.options[
'modules'].
append(
"-hltBLifetimeDiBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20Hbb" )
1251 self.options[
'modules'].
append(
"-hltBLifetimeDiBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20Hbb" )
1252 self.options[
'modules'].
append(
"-hltBLifetimeFastRegionalPixelSeedGeneratorHbbVBF" )
1253 self.options[
'modules'].
append(
"-hltBLifetimeFastRegionalCkfTrackCandidatesHbbVBF" )
1254 self.options[
'modules'].
append(
"-hltBLifetimeFastRegionalCtfWithMaterialTracksHbbVBF" )
1255 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorbbPhiL1FastJetFastPV" )
1256 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesbbPhiL1FastJetFastPV" )
1257 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksbbPhiL1FastJetFastPV" )
1258 self.options[
'modules'].
append(
"-hltFastPixelBLifetimeRegionalPixelSeedGeneratorHbb" )
1259 self.options[
'modules'].
append(
"-hltFastPixelBLifetimeRegionalCkfTrackCandidatesHbb" )
1260 self.options[
'modules'].
append(
"-hltFastPixelBLifetimeRegionalCtfWithMaterialTracksHbb" )
1262 self.options[
'modules'].
append(
"-hltPixelTracksForMinBias" )
1263 self.options[
'modules'].
append(
"-hltPixelTracksForHighMult" )
1264 self.options[
'modules'].
append(
"-hltRegionalPixelTracks" )
1265 self.options[
'modules'].
append(
"-hltPixelTracksReg" )
1266 self.options[
'modules'].
append(
"-hltIter4Merged" )
1267 self.options[
'modules'].
append(
"-hltFastPixelHitsVertex" )
1268 self.options[
'modules'].
append(
"-hltFastPixelTracks")
1269 self.options[
'modules'].
append(
"-hltFastPixelTracksRecover")
1271 self.options[
'modules'].
append(
"-hltFastPrimaryVertexbbPhi")
1272 self.options[
'modules'].
append(
"-hltPixelTracksFastPVbbPhi")
1273 self.options[
'modules'].
append(
"-hltPixelTracksRecoverbbPhi" )
1274 self.options[
'modules'].
append(
"-hltFastPixelHitsVertexVHbb" )
1275 self.options[
'modules'].
append(
"-hltFastPixelTracksVHbb" )
1276 self.options[
'modules'].
append(
"-hltFastPixelTracksRecoverVHbb" )
1278 self.options[
'modules'].
append(
"-hltFastPrimaryVertex")
1279 self.options[
'modules'].
append(
"-hltFastPVPixelTracks")
1280 self.options[
'modules'].
append(
"-hltFastPVPixelTracksRecover" )
1282 self.options[
'modules'].
append(
"-hltIter4Tau3MuMerged" )
1283 self.options[
'modules'].
append(
"hltPixelMatchElectronsActivity" )
1285 self.options[
'modules'].
append(
"-hltMuonCSCDigis" )
1286 self.options[
'modules'].
append(
"-hltMuonDTDigis" )
1287 self.options[
'modules'].
append(
"-hltMuonRPCDigis" )
1288 self.options[
'modules'].
append(
"-hltGtDigis" )
1289 self.options[
'modules'].
append(
"-hltL1GtTrigReport" )
1290 self.options[
'modules'].
append(
"hltCsc2DRecHits" )
1291 self.options[
'modules'].
append(
"hltDt1DRecHits" )
1292 self.options[
'modules'].
append(
"hltRpcRecHits" )
1293 self.options[
'modules'].
append(
"-hltScalersRawToDigi" )
1296 self.options[
'sequences'].
append(
"-HLTL1IsoEgammaRegionalRecoTrackerSequence" )
1297 self.options[
'sequences'].
append(
"-HLTL1NonIsoEgammaRegionalRecoTrackerSequence" )
1299 self.options[
'sequences'].
append(
"-HLTL1SeededEgammaRegionalRecoTrackerSequence" )
1300 self.options[
'sequences'].
append(
"-HLTEcalActivityEgammaRegionalRecoTrackerSequence" )
1301 self.options[
'sequences'].
append(
"-HLTPixelMatchElectronActivityTrackingSequence" )
1302 self.options[
'sequences'].
append(
"-HLTDoLocalStripSequence" )
1303 self.options[
'sequences'].
append(
"-HLTDoLocalPixelSequence" )
1304 self.options[
'sequences'].
append(
"-HLTDoLocalPixelSequenceRegL2Tau" )
1305 self.options[
'sequences'].
append(
"-hltSiPixelDigis" )
1306 self.options[
'sequences'].
append(
"-hltSiPixelClusters" )
1307 self.options[
'sequences'].
append(
"-hltSiPixelRecHits" )
1308 self.options[
'sequences'].
append(
"-HLTRecopixelvertexingSequence" )
1309 self.options[
'sequences'].
append(
"-HLTEndSequence" )
1310 self.options[
'sequences'].
append(
"-HLTBeginSequence" )
1311 self.options[
'sequences'].
append(
"-HLTBeginSequenceNZS" )
1312 self.options[
'sequences'].
append(
"-HLTBeginSequenceBPTX" )
1313 self.options[
'sequences'].
append(
"-HLTBeginSequenceAntiBPTX" )
1314 self.options[
'sequences'].
append(
"-HLTHBHENoiseSequence" )
1315 self.options[
'sequences'].
append(
"-HLTIterativeTracking" )
1316 self.options[
'sequences'].
append(
"-HLTIterativeTrackingTau3Mu" )
1317 self.options[
'sequences'].
append(
"-HLTRegionalCKFTracksForL3Isolation" )
1318 self.options[
'sequences'].
append(
"-HLTHBHENoiseCleanerSequence" )
1321 if self.config.fragment:
1322 self.options[
'paths'].
append(
"-HLTAnalyzerEndpath" )
1326 if self.config.input:
1328 if self.config.input[0:8] ==
'dataset:':
1329 from dbsFileQuery
import dbsFileQuery
1331 dataset = self.config.input[8:]
1332 query =
'find file where dataset=' + dataset
1337 self.source = self.config.input.split(
',')
1338 elif self.config.online:
1340 self.source = [
"file:/tmp/InputCollection.root" ]
1341 elif self.config.data:
1343 self.source = [
"file:RelVal_Raw_%s_DATA.root" % self.config.type ]
1346 self.source = [
"file:RelVal_Raw_%s_STARTUP.root" % self.config.type ]
1349 %(process)ssource = cms.Source( "PoolSource",
1350 fileNames = cms.untracked.vstring(
1353 for line
in self.source:
1354 self.data +=
" '%s',\n" % line
1356 secondaryFileNames = cms.untracked.vstring(
1359 for line
in self.parent:
1360 self.data +=
" '%s',\n" % line
1362 inputCommands = cms.untracked.vstring(
def loadAdditionalConditions
def instrumentErrorEventType
def releaseSpecificCustomize
def consolidateNegativeList
def consolidatePositiveList
static std::string join(char **cmd)
def getRawConfigurationFromDB
def addGlobalOptions
untracked parameters with NO default in the code if 'hltHcalDataIntegrityMonitor' in %(dict)s: %(proc...
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision and the trigger will pass if any such matching triggers are FAIL or EXCEPTION A wildcarded negative criterion that matches more than one trigger in the trigger list("!*","!HLTx*"if it matches 2 triggers or more) will accept the event if all the matching triggers are FAIL.It will reject the event if any of the triggers are PASS or EXCEPTION(this matches the behavior of"!*"before the partial wildcard feature was incorporated).Triggers which are in the READY state are completely ignored.(READY should never be returned since the trigger paths have been run
void set(const std::string &name, int value)
set the flag, with a run-time name