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 = (
28 "HLT_*Calibration_v*",
33 "HLT_Activity_Ecal*_v*",
36 "HLT_L1SingleMuOpen_AntiBPTX_v*",
37 "HLT_JetE*_NoBPTX*_v*",
38 "HLT_L2Mu*_NoBPTX*_v*",
39 "HLT_PixelTracks_Multiplicity70_v*",
40 "HLT_PixelTracks_Multiplicity80_v*",
41 "HLT_PixelTracks_Multiplicity90_v*",
44 "HLT_GlobalRunHPDNoise_v*",
45 "HLT_L1TrackerCosmics_v*",
49 "HLT_DoubleMu33NoFiltersNoVtx_v*",
50 "HLT_DoubleMu38NoFiltersNoVtx_v*",
51 "HLT_Mu38NoFiltersNoVtx_Photon38_CaloIdL_v*",
52 "HLT_Mu42NoFiltersNoVtx_Photon42_CaloIdL_v*",
53 "HLT_DoubleMu23NoFiltersNoVtxDisplaced_v*",
54 "HLT_DoubleMu28NoFiltersNoVtxDisplaced_v*",
55 "HLT_Mu28NoFiltersNoVtxDisplaced_Photon28_CaloIdL_v*",
56 "HLT_Mu33NoFiltersNoVtxDisplaced_Photon33_CaloIdL_v*",
57 "HLT_HT350_DisplacedDijet80_Tight_DisplacedTrack_v*",
58 "HLT_HT350_DisplacedDijet80_DisplacedTrack_v*",
59 "HLT_HT500_DisplacedDijet40_Inclusive_v*",
60 "HLT_HT350_DisplacedDijet40_DisplacedTrack_v*",
61 "HLT_HT550_DisplacedDijet40_Inclusive_v*",
62 "HLT_HT350_DisplacedDijet80_DisplacedTrack_v*",
63 "HLT_TrkMu15_DoubleTrkMu5NoFiltersNoVtx_v*",
64 "HLT_TrkMu17_DoubleTrkMu8NoFiltersNoVtx_v*",
65 "HLT_MET75_IsoTrk50_v*",
66 "HLT_MET90_IsoTrk50_v*",
67 "HLT_VBF_DisplacedJet40_DisplacedTrack_v*",
68 "HLT_VBF_DisplacedJet40_TightID_DisplacedTrack_v*",
69 "HLT_VBF_DisplacedJet40_VTightID_DisplacedTrack_v*",
70 "HLT_VBF_DisplacedJet40_VVTightID_DisplacedTrack_v*",
71 "HLT_Mu33NoFiltersNoVtxDisplaced_DisplacedJet50_Tight_v*",
72 "HLT_Mu33NoFiltersNoVtxDisplaced_DisplacedJet50_Loose_v*",
73 "HLT_Mu38NoFiltersNoVtxDisplaced_DisplacedJet60_Tight_v*",
74 "HLT_Mu38NoFiltersNoVtxDisplaced_DisplacedJet60_Loose_v*",
75 "HLT_Mu38NoFiltersNoVtx_DisplacedJet60_Loose_v*",
76 "HLT_Mu28NoFiltersNoVtx_DisplacedJet40_Loose_v*",
77 "HLT_Mu28NoFiltersNoVtx_CentralCaloJet40_v*",
78 "HLT_Mu23NoFiltersNoVtx_Photon23_CaloIdL_v*",
79 "HLT_DoubleMu18NoFiltersNoVtx_v*",
80 "HLT_DoubleMuNoFiltersNoVtx_SaveObjects_v*",
101 if self.config.fragment:
102 self.
labels[
'process'] =
'fragment.'
103 self.
labels[
'dict'] =
'fragment.__dict__'
105 self.
labels[
'process'] =
'process.'
106 self.
labels[
'dict'] =
'process.__dict__'
108 if self.config.online:
109 self.
labels[
'connect'] =
'frontier://(proxyurl=http://localhost:3128)(serverurl=http://localhost:8000/FrontierOnProd)(serverurl=http://localhost:8000/FrontierOnProd)(retrieve-ziplevel=0)'
111 self.
labels[
'connect'] =
'frontier://FrontierProd'
113 if self.config.prescale
and (self.config.prescale.lower() !=
'none'):
114 self.
labels[
'prescale'] = self.config.prescale
117 from confdbOfflineConverter
import OfflineConverter
118 self.
converter = OfflineConverter(database = self.config.menu.db)
126 if self.config.menu.run:
127 args = [
'--runNumber', self.config.menu.run]
129 args = [
'--configName', self.config.menu.name ]
130 args.append(
'--noedsources')
131 for key, vals
in self.options.iteritems():
133 args.extend((
'--'+key,
','.
join(vals)))
135 data, err = self.converter.query( *args )
136 if 'ERROR' in err
or 'Exhausted Resultset' in err
or 'CONFIG_NOT_FOUND' in err:
137 print "%s: error while retriving the HLT menu" % os.path.basename(sys.argv[0])
146 if self.config.menu.run:
147 args = [
'--runNumber', self.config.menu.run]
149 args = [
'--configName', self.config.menu.name]
159 data, err = self.converter.query( *args )
160 if 'ERROR' in err
or 'Exhausted Resultset' in err
or 'CONFIG_NOT_FOUND' in err:
161 print "%s: error while retriving the list of paths from the HLT menu" % os.path.basename(sys.argv[0])
166 filter = re.compile(
r' *= *cms.(End)?Path.*')
167 paths = [ filter.sub(
'', line)
for line
in data.splitlines()
if filter.search(line) ]
182 filter = re.compile(
r'^' + glob.replace(
'?',
'.').
replace(
'*',
'.*').
replace(
'[!',
'[^') +
r'$')
183 matches.extend( negate + element
for element
in collection
if filter.match(element) )
192 for element
in elements:
193 if element[0] ==
'-':
194 result.add( element )
196 result.discard(
'-' + element )
197 return sorted( element
for element
in result )
204 for element
in elements:
205 if element[0] ==
'-':
206 result.discard( element[1:] )
208 result.add( element )
209 return sorted( element
for element
in result )
215 if self.config.fragment:
216 self.
data = re.sub(
r'\bprocess\b',
'fragment', self.
data )
217 self.
data = re.sub(
r'\bProcess\b',
'ProcessFragment', self.
data )
224 if self.config.fragment:
226 # add specific customizations
227 from HLTrigger.Configuration.customizeHLTforALL import customizeHLTforAll
228 fragment = customizeHLTforAll(fragment)
231 if self.config.type==
"Fake":
235 _gtData =
"auto:"+prefix+
"_hlt_"+self.config.type
236 _gtMc =
"auto:"+prefix+
"_mc_" +self.config.type
238 # add specific customizations
240 _customInfo['menuType' ]= "%s"
241 _customInfo['globalTags']= {}
242 _customInfo['globalTags'][True ] = "%s"
243 _customInfo['globalTags'][False] = "%s"
244 _customInfo['inputFiles']={}
245 _customInfo['inputFiles'][True] = "file:RelVal_Raw_%s_DATA.root"
246 _customInfo['inputFiles'][False] = "file:RelVal_Raw_%s_MC.root"
247 _customInfo['maxEvents' ]= %s
248 _customInfo['globalTag' ]= "%s"
249 _customInfo['inputFile' ]= %s
250 _customInfo['realData' ]= %s
251 _customInfo['fastSim' ]= %s
252 from HLTrigger.Configuration.customizeHLTforALL import customizeHLTforAll
253 process = customizeHLTforAll(process,_customInfo)
254 """ % (self.config.type,_gtData,_gtMc,self.config.type,self.config.type,self.config.events,self.config.globaltag,self.
source,self.config.data,self.config.fastsim)
261 if not self.config.fragment:
265 if self.config.type
in (
'HIon', ):
267 if not self.config.fragment:
268 self._fix_parameter( type =
'InputTag', value =
'rawDataCollector', replace =
'rawDataRepacker')
295 self.instrumentOpenMode()
298 self.instrumentErrorEventType()
301 self.instrumentTiming()
303 if self.config.fragment:
305 # dummyfy hltGetConditions in cff's
306 if 'hltGetConditions' in %(dict)s and 'HLTriggerFirstPath' in %(dict)s :
307 %(process)shltDummyConditions = cms.EDFilter( "HLTBool",
308 result = cms.bool( True )
310 %(process)sHLTriggerFirstPath.replace(%(process)shltGetConditions,%(process)shltDummyConditions)
318 if self.config.type
not in (
'Fake',) :
319 if '50ns' in self.config.type :
321 # load 2015 Run-2 L1 Menu for 50ns
322 from L1Trigger.Configuration.customise_overwriteL1Menu import L1Menu_Collisions2015_50ns_v1 as loadL1Menu
323 process = loadL1Menu(process)
325 elif 'HIon' in self.config.type :
327 # load 2015 Run-2 L1 Menu for HIon
328 from L1Trigger.Configuration.customise_overwriteL1Menu import L1Menu_CollisionsHeavyIons2015_v0 as loadL1Menu
329 process = loadL1Menu(process)
333 # load 2015 Run-2 L1 Menu for 25ns (default for GRun, PIon)
334 from L1Trigger.Configuration.customise_overwriteL1Menu import L1Menu_Collisions2015_25ns_v2 as loadL1menu
335 process = loadL1menu(process)
339 self.overrideProcessName()
342 self.overrideOutput()
345 self.addGlobalOptions()
348 self.overrideGlobalTag()
351 self.overrideL1MenuXml()
354 self.switchToNewL1Skim()
360 self.updateMessageLogger()
392 # limit the number of events to be processed
393 %%(process)smaxEvents = cms.untracked.PSet(
394 input = cms.untracked.int32( %d )
396 """ % self.config.events
398 if not self.config.profiling:
400 # enable the TrigReport and TimeReport
401 %(process)soptions = cms.untracked.PSet(
402 wantSummary = cms.untracked.bool( True )
409 name: parameter name (optional)
410 type: parameter type (look for tracked and untracked variants)
411 value: original value
412 replace: replacement value
416 r'%(name)s = cms(?P<tracked>(?:\.untracked)?)\.%(type)s\( (?P<quote>["\']?)%(value)s(?P=quote)' % args,
417 r'%(name)s = cms\g<tracked>.%(type)s( \g<quote>%(replace)s\g<quote>' % args,
421 r'cms(?P<tracked>(?:\.untracked)?)\.%(type)s\( (?P<quote>["\']?)%(value)s(?P=quote)' % args,
422 r'cms\g<tracked>.%(type)s( \g<quote>%(replace)s\g<quote>' % args,
427 if self.config.fastsim:
429 self.data = re.compile(
r'process = cms\.Process.*$', re.MULTILINE ).sub(
r'\g<0>\n\nprocess.load( "FastSimulation.HighLevelTrigger.HLTSetup_cff" )', self.data)
432 self.data = re.compile(
r'^process\.streams.*\n(.*\n)*?^\)\s*\n', re.MULTILINE ).sub(
'', self.data )
433 self.data = re.compile(
r'^process\.datasets.*\n(.*\n)*?^\)\s*\n', re.MULTILINE ).sub(
'', self.data )
437 self._fix_parameter( type =
'InputTag', value =
'hltL1extraParticles', replace =
'l1extraParticles')
438 self._fix_parameter(name =
'GMTReadoutCollection', type =
'InputTag', value =
'hltGtDigis', replace =
'simGmtDigis')
439 self._fix_parameter( type =
'InputTag', value =
'hltGtDigis', replace =
'simGtDigis')
440 self._fix_parameter( type =
'InputTag', value =
'hltL1GtObjectMap', replace =
'simGtDigis')
441 self._fix_parameter(name =
'initialSeeds', type =
'InputTag', value =
'noSeedsHere', replace =
'globalPixelSeeds:GlobalPixel')
442 self._fix_parameter(name =
'preFilteredSeeds', type =
'bool', value =
'True', replace =
'False')
443 self._fix_parameter( type =
'InputTag', value =
'hltOfflineBeamSpot', replace =
'offlineBeamSpot')
444 self._fix_parameter( type =
'InputTag', value =
'hltOnlineBeamSpot', replace =
'offlineBeamSpot')
445 self._fix_parameter( type =
'InputTag', value =
'hltMuonCSCDigis', replace =
'simMuonCSCDigis')
446 self._fix_parameter( type =
'InputTag', value =
'hltMuonDTDigis', replace =
'simMuonDTDigis')
447 self._fix_parameter( type =
'InputTag', value =
'hltMuonRPCDigis', replace =
'simMuonRPCDigis')
448 self._fix_parameter( type =
'InputTag', value =
'hltRegionalTracksForL3MuonIsolation', replace =
'hltPixelTracks')
449 self._fix_parameter(name =
'src', type =
'InputTag', value =
'hltHcalTowerNoiseCleaner', replace =
'hltTowerMakerForAll')
450 self._fix_parameter(name =
'src', type =
'InputTag', value =
'hltIter4Tau3MuMerged', replace =
'hltIter4Merged')
453 self._fix_parameter( type =
'InputTag', value =
'hltSiStripClusters', replace =
'MeasurementTrackerEvent')
456 self.data = re.sub(
r'process.hltMuonCSCDigis',
r'cms.SequencePlaceholder( "simMuonCSCDigis" )', self.data )
457 self.data = re.sub(
r'process.hltMuonDTDigis',
r'cms.SequencePlaceholder( "simMuonDTDigis" )', self.data )
458 self.data = re.sub(
r'process.hltMuonRPCDigis',
r'cms.SequencePlaceholder( "simMuonRPCDigis" )', self.data )
459 self.data = re.sub(
r'process.HLTEndSequence',
r'cms.SequencePlaceholder( "HLTEndSequence" )', self.data )
460 self.data = re.sub(
r'hltGtDigis',
r'HLTBeginSequence', self.data )
465 if self.options[
'paths']:
466 if self.options[
'paths'][0][0] ==
'-':
468 for minuspath
in self.options[
'paths']:
470 self.data = re.sub(
r' cms.PSet\( pathName = cms.string\( "%s" \),\n prescales = cms.vuint32\( .* \)\n \),?\n' % path,
'', self.data)
473 for path
in self.all_paths:
474 if path
not in self.options[
'paths']:
475 self.data = re.sub(
r' cms.PSet\( pathName = cms.string\( "%s" \),\n prescales = cms.vuint32\( .* \)\n \),?\n' % path,
'', self.data)
477 if self.config.prescale
and (self.config.prescale.lower() !=
'none'):
480 # force the use of a specific HLT prescale column
481 if 'PrescaleService' in %(dict)s:
482 %(process)sPrescaleService.forceDefault = True
483 %(process)sPrescaleService.lvl1DefaultLabel = '%(prescale)s'
490 filters = [ match[1]
for match
in re.findall(
r'(process\.)?\b(\w+) = cms.EDFilter', self.data) ]
491 re_sequence = re.compile(
r'cms\.(Path|Sequence)\((.*)\)' )
493 self.data = re_sequence.sub(
lambda line: re.sub(
r'cms\.ignore *\( *((process\.)?\b(\w+)) *\)',
r'\1', line.group(0) ), self.data )
494 self.data = re_sequence.sub(
lambda line: re.sub(
r'~',
'', line.group(0) ), self.data )
496 for some
in splitter(filters, 1000):
497 re_filters = re.compile(
r'\b((process\.)?(' +
r'|'.
join(some) +
r'))\b' )
498 self.data = re_sequence.sub(
lambda line: re_filters.sub(
r'cms.ignore( \1 )', line.group(0) ), self.data )
502 if self.config.errortype:
504 self._fix_parameter(name =
'SelectedTriggerType', type =
'int32', value =
'1', replace =
'0')
505 self._fix_parameter(name =
'SelectedTriggerType', type =
'int32', value =
'2', replace =
'0')
506 self._fix_parameter(name =
'SelectedTriggerType', type =
'int32', value =
'3', replace =
'0')
522 # override the GlobalTag, connection string and pfnPrefix
523 if 'GlobalTag' in %(dict)s:
527 if not self.config.data
and not self.config.globaltag:
528 if self.config.type
in globalTag:
529 self.config.globaltag = globalTag[self.config.type]
531 self.config.globaltag = globalTag[
'GRun']
534 if self.config.l1.override:
535 self.config.l1.record =
'L1GtTriggerMenuRcd'
536 self.config.l1.label =
''
537 self.config.l1.tag = self.config.l1.override
538 if not self.config.l1.connect:
539 self.config.l1.connect =
'%(connect)s/CMS_CONDITIONS'
540 self.config.l1cond =
'%(tag)s,%(record)s,%(connect)s' % self.config.l1.__dict__
542 self.config.l1cond =
None
544 if self.config.globaltag
or self.config.l1cond:
545 text +=
" from Configuration.AlCa.GlobalTag_condDBv2 import GlobalTag as customiseGlobalTag\n"
546 text +=
" %(process)sGlobalTag = customiseGlobalTag(%(process)sGlobalTag"
547 if self.config.globaltag:
548 text +=
", globaltag = %s" % repr(self.config.globaltag)
549 if self.config.l1cond:
550 text +=
", conditions = %s" % repr(self.config.l1cond)
553 text +=
""" %(process)sGlobalTag.connect = '%(connect)s/CMS_CONDITIONS'
554 %(process)sGlobalTag.pfnPrefix = cms.untracked.string('%(connect)s/')
555 for pset in process.GlobalTag.toGet.value():
556 pset.connect = pset.connect.value().replace('frontier://FrontierProd/', '%(connect)s/')
557 # fix for multi-run processing
558 %(process)sGlobalTag.RefreshEachRun = cms.untracked.bool( False )
559 %(process)sGlobalTag.ReconnectEachRun = cms.untracked.bool( False )
565 if self.config.l1Xml.XmlFile:
567 # override the L1 menu from an Xml file
568 %%(process)sl1GtTriggerMenuXml = cms.ESProducer("L1GtTriggerMenuXmlProducer",
569 TriggerMenuLuminosity = cms.string('%(LumiDir)s'),
570 DefXmlFile = cms.string('%(XmlFile)s'),
571 VmeXmlFile = cms.string('')
573 %%(process)sL1GtTriggerMenuRcdSource = cms.ESSource("EmptyESSource",
574 recordName = cms.string('L1GtTriggerMenuRcd'),
575 iovIsRunNotTime = cms.bool(True),
576 firstValid = cms.vuint32(1)
578 %%(process)ses_prefer_l1GtParameters = cms.ESPrefer('L1GtTriggerMenuXmlProducer','l1GtTriggerMenuXml')
580 self.data += text % self.config.l1Xml.__dict__
584 if not self.config.emulator:
587 if self.config.emulator !=
'gt':
593 # run the L1 GT emulator, then repack the data into a new RAW collection, to be used by the HLT
595 if self.config.fragment:
597 text +=
"import Configuration.StandardSequences.SimL1EmulatorRepack_GT_cff\n"
599 text +=
"process.load( 'Configuration.StandardSequences.SimL1EmulatorRepack_GT_cff' )\n"
601 if not 'hltBoolFalse' in self.data:
604 %(process)shltBoolFalse = cms.EDFilter( "HLTBool",
605 result = cms.bool( False )
608 text +=
"process.L1Emulator = cms.Path( process.SimL1Emulator + process.hltBoolFalse )\n\n"
610 self.data = re.sub(
r'.*cms\.(End)?Path.*', text +
r'\g<0>', self.data, 1)
615 if self.config.emulator:
624 emulator[
'RawToDigi'] =
'RawToDigi_Data_cff'
626 emulator[
'RawToDigi'] =
'RawToDigi_cff'
628 if self.config.emulator ==
'gt':
629 emulator[
'CustomL1T'] =
'customiseL1GtEmulatorFromRaw'
630 emulator[
'CustomHLT'] =
'switchToSimGtDigis'
631 elif self.config.emulator ==
'gct,gt':
632 emulator[
'CustomL1T'] =
'customiseL1CaloAndGtEmulatorsFromRaw'
633 emulator[
'CustomHLT'] =
'switchToSimGctGtDigis'
634 elif self.config.emulator ==
'gmt,gt':
636 emulator[
'CustomL1T'] =
'customiseL1MuonAndGtEmulatorsFromRaw'
637 emulator[
'CustomHLT'] =
'switchToSimGmtGtDigis'
638 elif self.config.emulator
in (
'gmt,gct,gt',
'gct,gmt,gt',
'all'):
639 emulator[
'CustomL1T'] =
'customiseL1EmulatorFromRaw'
640 emulator[
'CustomHLT'] =
'switchToSimGmtGctGtDigis'
641 elif self.config.emulator
in (
'stage1,gt'):
642 emulator[
'CustomL1T'] =
'customiseL1EmulatorFromRaw'
643 emulator[
'CustomHLT'] =
'switchToSimStage1Digis'
646 emulator[
'CustomL1T'] =
'customiseL1EmulatorFromRaw'
647 emulator[
'CustomHLT'] =
'switchToSimGmtGctGtDigis'
650 # customize the L1 emulator to run %(CustomL1T)s with HLT to %(CustomHLT)s
651 process.load( 'Configuration.StandardSequences.%(RawToDigi)s' )
652 process.load( 'Configuration.StandardSequences.SimL1Emulator_cff' )
653 import L1Trigger.Configuration.L1Trigger_custom
657 if (self.config.emulator).
find(
"stage1")>-1:
660 import L1Trigger.L1TCalorimeter.L1TCaloStage1_customForHLT
661 process = L1Trigger.L1TCalorimeter.L1TCaloStage1_customForHLT.%(CustomL1T)s( process )
666 process = L1Trigger.Configuration.L1Trigger_custom.%(CustomL1T)s( process )
671 process = L1Trigger.Configuration.L1Trigger_custom.customiseResetPrescalesAndMasks( process )
672 # customize the HLT to use the emulated results
673 import HLTrigger.Configuration.customizeHLTforL1Emulator
674 process = HLTrigger.Configuration.customizeHLTforL1Emulator.switchToL1Emulator( process )
675 process = HLTrigger.Configuration.customizeHLTforL1Emulator.%(CustomHLT)s( process )
680 if self.config.l1skim:
682 # Customize the menu to use information from new L1 emulator in the L1 skim files
683 process.hltL2MuonSeeds.GMTReadoutCollection = cms.InputTag("simGmtDigis::L1SKIM" )
684 process.hltL1extraParticles.muonSource = cms.InputTag("simGmtDigis::L1SKIM" )
685 for module in process.__dict__.itervalues():
686 if isinstance(module, cms._Module):
687 for parameter in module.__dict__.itervalues():
688 if isinstance(parameter, cms.InputTag):
689 if parameter.moduleLabel == 'hltGtDigis':
690 parameter.moduleLabel = "gtDigisFromSkim"
691 elif parameter.moduleLabel == 'hltL1GtObjectMap':
692 parameter.moduleLabel = "gtDigisFromSkim"
693 elif parameter.moduleLabel == 'hltGctDigis':
694 parameter.moduleLabel ="simCaloStage1LegacyFormatDigis"
700 r'\b(process\.)?hltOutput(\w+) *= *cms\.OutputModule\( *"ShmStreamConsumer" *,',
701 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 ),',
705 if not self.config.fragment
and self.config.output ==
'full':
708 # add a single "keep *" output
709 %(process)shltOutputFULL = cms.OutputModule( "PoolOutputModule",
710 fileName = cms.untracked.string( "outputFULL.root" ),
711 fastCloning = cms.untracked.bool( False ),
712 dataset = cms.untracked.PSet(
713 dataTier = cms.untracked.string( 'RECO' ),
714 filterName = cms.untracked.string( '' )
716 outputCommands = cms.untracked.vstring( 'keep *' )
718 %(process)sFULLOutput = cms.EndPath( %(process)shltOutputFULL )
724 if self.config.name
is None:
728 self.config.name = self.config.name.replace(
"_",
"")
731 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)
735 # adapt HLT modules to the correct process name
736 if 'hltTrigReport' in %%(dict)s:
737 %%(process)shltTrigReport.HLTriggerResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
739 if 'hltPreExpressCosmicsOutputSmart' in %%(dict)s:
740 %%(process)shltPreExpressCosmicsOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
742 if 'hltPreExpressOutputSmart' in %%(dict)s:
743 %%(process)shltPreExpressOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
745 if 'hltPreDQMForHIOutputSmart' in %%(dict)s:
746 %%(process)shltPreDQMForHIOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
748 if 'hltPreDQMForPPOutputSmart' in %%(dict)s:
749 %%(process)shltPreDQMForPPOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
751 if 'hltPreHLTDQMResultsOutputSmart' in %%(dict)s:
752 %%(process)shltPreHLTDQMResultsOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
754 if 'hltPreHLTDQMOutputSmart' in %%(dict)s:
755 %%(process)shltPreHLTDQMOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
757 if 'hltPreHLTMONOutputSmart' in %%(dict)s:
758 %%(process)shltPreHLTMONOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
760 if 'hltDQMHLTScalers' in %%(dict)s:
761 %%(process)shltDQMHLTScalers.triggerResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
762 %%(process)shltDQMHLTScalers.processname = '%(name)s'
764 if 'hltDQML1SeedLogicScalers' in %%(dict)s:
765 %%(process)shltDQML1SeedLogicScalers.processname = '%(name)s'
766 """ % self.config.__dict__
772 if 'MessageLogger' in %(dict)s:
773 %(process)sMessageLogger.categories.append('TriggerSummaryProducerAOD')
774 %(process)sMessageLogger.categories.append('L1GtTrigReport')
775 %(process)sMessageLogger.categories.append('HLTrigReport')
776 %(process)sMessageLogger.categories.append('FastReport')
784 if 'GlobalTag' in %%(dict)s:
786 for condition
in conditions:
787 self.data +=
""" %%(process)sGlobalTag.toGet.append(
789 record = cms.string( '%(record)s' ),
790 tag = cms.string( '%(tag)s' ),
791 label = cms.untracked.string( '%(label)s' ),
792 connect = cms.untracked.string( '%(connect)s' )
800 if self.config.fragment:
801 return 'from %s import *\n' % module
803 return 'process.load( "%s" )\n' % module
806 self.data += self.loadCffCommand(module)
811 self.data +=
"if '%s' in %%(dict)s:\n" % module
812 for (parameter, value)
in parameters:
813 self.data +=
" %%(process)s%s.%s = %s\n" % (module, parameter, value)
818 if self.config.profiling:
822 if not 'hltGetRaw' in self.data:
825 %(process)shltGetRaw = cms.EDAnalyzer( "HLTGetRaw",
826 RawDataCollection = cms.InputTag( "rawDataCollector" )
830 if not 'hltGetConditions' in self.data:
833 %(process)shltGetConditions = cms.EDAnalyzer( 'EventSetupRecordDataGetter',
834 verbose = cms.untracked.bool( False ),
839 if not 'hltBoolFalse' in self.data:
842 %(process)shltBoolFalse = cms.EDFilter( "HLTBool",
843 result = cms.bool( False )
850 %(process)sHLTriggerFirstPath = cms.Path( %(process)shltGetRaw + %(process)shltGetConditions + %(process)shltBoolFalse )
852 self.data = re.sub(
r'.*cms\.(End)?Path.*', text +
r'\g<0>', self.data, 1)
857 if self.config.timing:
859 # instrument the menu with the modules and EndPath needed for timing studies
862 if not 'FastTimerService' in self.data:
863 self.data +=
'\n# configure the FastTimerService\n'
864 self.loadCff(
'HLTrigger.Timer.FastTimerService_cfi')
866 self.data +=
'\n# configure the FastTimerService\n'
868 self.data +=
"""# this is currently ignored in CMSSW 7.x, always using the real time clock
869 %(process)sFastTimerService.useRealTimeClock = True
870 # enable specific features
871 %(process)sFastTimerService.enableTimingPaths = True
872 %(process)sFastTimerService.enableTimingModules = True
873 %(process)sFastTimerService.enableTimingExclusive = True
874 # print a text summary at the end of the job
875 %(process)sFastTimerService.enableTimingSummary = True
876 # skip the first path (disregard the time spent loading event and conditions data)
877 %(process)sFastTimerService.skipFirstPath = True
879 %(process)sFastTimerService.enableDQM = True
880 # enable most per-path DQM plots
881 %(process)sFastTimerService.enableDQMbyPathActive = True
882 %(process)sFastTimerService.enableDQMbyPathTotal = True
883 %(process)sFastTimerService.enableDQMbyPathOverhead = False
884 %(process)sFastTimerService.enableDQMbyPathDetails = True
885 %(process)sFastTimerService.enableDQMbyPathCounters = True
886 %(process)sFastTimerService.enableDQMbyPathExclusive = True
887 # disable per-module DQM plots
888 %(process)sFastTimerService.enableDQMbyModule = False
889 %(process)sFastTimerService.enableDQMbyModuleType = False
890 # enable per-event DQM sumary plots
891 %(process)sFastTimerService.enableDQMSummary = True
892 # enable per-event DQM plots by lumisection
893 %(process)sFastTimerService.enableDQMbyLumiSection = True
894 %(process)sFastTimerService.dqmLumiSectionsRange = 2500
895 # set the time resolution of the DQM plots
896 %(process)sFastTimerService.dqmTimeRange = 1000.
897 %(process)sFastTimerService.dqmTimeResolution = 5.
898 %(process)sFastTimerService.dqmPathTimeRange = 100.
899 %(process)sFastTimerService.dqmPathTimeResolution = 0.5
900 %(process)sFastTimerService.dqmModuleTimeRange = 40.
901 %(process)sFastTimerService.dqmModuleTimeResolution = 0.2
902 # set the base DQM folder for the plots
903 %(process)sFastTimerService.dqmPath = 'HLT/TimerService'
904 %(process)sFastTimerService.enableDQMbyProcesses = True
909 if not self.config.hilton:
911 if 'hltDQMFileSaver' in self.data:
912 self.data = re.sub(
r'\b(process\.)?hltDQMFileSaver \+ ',
'', self.data)
913 self.data = re.sub(
r' \+ \b(process\.)?hltDQMFileSaver',
'', self.data)
914 self.data = re.sub(
r'\b(process\.)?hltDQMFileSaver',
'', self.data)
917 dqmstore =
"\n# load the DQMStore and DQMRootOutputModule\n"
918 dqmstore += self.loadCffCommand(
'DQMServices.Core.DQMStore_cfi')
919 dqmstore +=
"%(process)sDQMStore.enableMultiThread = True\n"
921 %(process)sdqmOutput = cms.OutputModule("DQMRootOutputModule",
922 fileName = cms.untracked.string("DQMIO.root")
926 empty_path = re.compile(
r'.*\b(process\.)?DQMOutput = cms\.EndPath\( *\).*')
927 other_path = re.compile(
r'(.*\b(process\.)?DQMOutput = cms\.EndPath\()(.*)')
928 if empty_path.search(self.data):
930 self.data = empty_path.sub(dqmstore +
'\n%(process)sDQMOutput = cms.EndPath( %(process)sdqmOutput )\n', self.data)
931 elif other_path.search(self.data):
933 self.data = other_path.sub(dqmstore +
r'\g<1> %(process)sdqmOutput +\g<3>', self.data)
936 self.data += dqmstore
937 self.data +=
'\n%(process)sDQMOutput = cms.EndPath( %(process)sdqmOutput )\n'
942 sys.stderr.write(
'Path selection:\n')
944 sys.stderr.write(
'\t%s\n' % path)
945 sys.stderr.write(
'\n\n')
948 self.all_paths = self.getPathList()
950 if self.config.paths:
952 paths = self.config.paths.split(
',')
957 if self.config.fragment
or self.config.output
in (
'none',
'full'):
959 if self.config.paths:
964 paths.append(
"-*Output" )
965 elif self.config.output ==
'minimal':
967 if self.config.paths:
968 paths.append(
"HLTDQMResultsOutput" )
970 paths.append(
"-*Output" )
971 paths.append(
"HLTDQMResultsOutput" )
974 if self.config.paths:
975 paths.append(
"*Output" )
980 if self.config.fastsim:
981 paths.extend(
"-%s" % path
for path
in self.fastsimUnsupportedPaths )
984 if self.config.profiling:
985 paths.append(
"-HLTriggerFirstPath" )
986 paths.append(
"-HLTAnalyzerEndpath" )
989 paths.append(
"-OfflineOutput" )
992 paths = self.expandWildcards(paths, self.all_paths)
994 if self.config.paths:
996 self.options[
'paths'] = self.consolidatePositiveList(paths)
997 if not self.options[
'paths']:
998 raise RuntimeError(
'Error: option "--paths %s" does not select any valid paths' % self.config.paths)
1001 self.options[
'paths'] = self.consolidateNegativeList(paths)
1006 self.options[
'services'].
append(
"-DQM" )
1007 self.options[
'services'].
append(
"-FUShmDQMOutputService" )
1008 self.options[
'services'].
append(
"-MicroStateService" )
1009 self.options[
'services'].
append(
"-ModuleWebRegistry" )
1010 self.options[
'services'].
append(
"-TimeProfilerService" )
1014 if not self.config.hilton:
1015 self.options[
'services'].
append(
"-EvFDaqDirector" )
1016 self.options[
'services'].
append(
"-FastMonitoringService" )
1017 self.options[
'services'].
append(
"-DQMStore" )
1018 self.options[
'modules'].
append(
"-hltDQMFileSaver" )
1020 if self.config.fragment:
1022 self.options[
'essources'].
append(
"-GlobalTag" )
1023 self.options[
'essources'].
append(
"-HepPDTESSource" )
1024 self.options[
'essources'].
append(
"-XMLIdealGeometryESSource" )
1025 self.options[
'essources'].
append(
"-eegeom" )
1026 self.options[
'essources'].
append(
"-es_hardcode" )
1027 self.options[
'essources'].
append(
"-magfield" )
1029 self.options[
'esmodules'].
append(
"-AutoMagneticFieldESProducer" )
1030 self.options[
'esmodules'].
append(
"-SlaveField0" )
1031 self.options[
'esmodules'].
append(
"-SlaveField20" )
1032 self.options[
'esmodules'].
append(
"-SlaveField30" )
1033 self.options[
'esmodules'].
append(
"-SlaveField35" )
1034 self.options[
'esmodules'].
append(
"-SlaveField38" )
1035 self.options[
'esmodules'].
append(
"-SlaveField40" )
1036 self.options[
'esmodules'].
append(
"-VBF0" )
1037 self.options[
'esmodules'].
append(
"-VBF20" )
1038 self.options[
'esmodules'].
append(
"-VBF30" )
1039 self.options[
'esmodules'].
append(
"-VBF35" )
1040 self.options[
'esmodules'].
append(
"-VBF38" )
1041 self.options[
'esmodules'].
append(
"-VBF40" )
1042 self.options[
'esmodules'].
append(
"-CSCGeometryESModule" )
1043 self.options[
'esmodules'].
append(
"-CaloGeometryBuilder" )
1044 self.options[
'esmodules'].
append(
"-CaloTowerHardcodeGeometryEP" )
1045 self.options[
'esmodules'].
append(
"-CastorHardcodeGeometryEP" )
1046 self.options[
'esmodules'].
append(
"-DTGeometryESModule" )
1047 self.options[
'esmodules'].
append(
"-EcalBarrelGeometryEP" )
1048 self.options[
'esmodules'].
append(
"-EcalElectronicsMappingBuilder" )
1049 self.options[
'esmodules'].
append(
"-EcalEndcapGeometryEP" )
1050 self.options[
'esmodules'].
append(
"-EcalLaserCorrectionService" )
1051 self.options[
'esmodules'].
append(
"-EcalPreshowerGeometryEP" )
1052 self.options[
'esmodules'].
append(
"-HcalHardcodeGeometryEP" )
1053 self.options[
'esmodules'].
append(
"-HcalTopologyIdealEP" )
1054 self.options[
'esmodules'].
append(
"-MuonNumberingInitialization" )
1055 self.options[
'esmodules'].
append(
"-ParametrizedMagneticFieldProducer" )
1056 self.options[
'esmodules'].
append(
"-RPCGeometryESModule" )
1057 self.options[
'esmodules'].
append(
"-SiStripGainESProducer" )
1058 self.options[
'esmodules'].
append(
"-SiStripRecHitMatcherESProducer" )
1059 self.options[
'esmodules'].
append(
"-SiStripQualityESProducer" )
1060 self.options[
'esmodules'].
append(
"-StripCPEfromTrackAngleESProducer" )
1061 self.options[
'esmodules'].
append(
"-TrackerDigiGeometryESModule" )
1062 self.options[
'esmodules'].
append(
"-TrackerGeometricDetESModule" )
1063 self.options[
'esmodules'].
append(
"-VolumeBasedMagneticFieldESProducer" )
1064 self.options[
'esmodules'].
append(
"-ZdcHardcodeGeometryEP" )
1065 self.options[
'esmodules'].
append(
"-hcal_db_producer" )
1066 self.options[
'esmodules'].
append(
"-L1GtTriggerMaskAlgoTrigTrivialProducer" )
1067 self.options[
'esmodules'].
append(
"-L1GtTriggerMaskTechTrigTrivialProducer" )
1068 self.options[
'esmodules'].
append(
"-hltESPEcalTrigTowerConstituentsMapBuilder" )
1069 self.options[
'esmodules'].
append(
"-hltESPGlobalTrackingGeometryESProducer" )
1070 self.options[
'esmodules'].
append(
"-hltESPMuonDetLayerGeometryESProducer" )
1071 self.options[
'esmodules'].
append(
"-hltESPTrackerRecoGeometryESProducer" )
1072 self.options[
'esmodules'].
append(
"-trackerTopology" )
1074 if not self.config.fastsim:
1075 self.options[
'esmodules'].
append(
"-CaloTowerGeometryFromDBEP" )
1076 self.options[
'esmodules'].
append(
"-CastorGeometryFromDBEP" )
1077 self.options[
'esmodules'].
append(
"-EcalBarrelGeometryFromDBEP" )
1078 self.options[
'esmodules'].
append(
"-EcalEndcapGeometryFromDBEP" )
1079 self.options[
'esmodules'].
append(
"-EcalPreshowerGeometryFromDBEP" )
1080 self.options[
'esmodules'].
append(
"-HcalGeometryFromDBEP" )
1081 self.options[
'esmodules'].
append(
"-ZdcGeometryFromDBEP" )
1082 self.options[
'esmodules'].
append(
"-XMLFromDBSource" )
1083 self.options[
'esmodules'].
append(
"-sistripconn" )
1085 self.options[
'services'].
append(
"-MessageLogger" )
1087 self.options[
'psets'].
append(
"-maxEvents" )
1088 self.options[
'psets'].
append(
"-options" )
1090 if self.config.fragment
or (self.config.prescale
and (self.config.prescale.lower() ==
'none')):
1091 self.options[
'services'].
append(
"-PrescaleService" )
1093 if self.config.fragment
or self.config.timing:
1094 self.options[
'services'].
append(
"-FastTimerService" )
1096 if self.config.fastsim:
1098 self.options[
'esmodules'].
append(
"-navigationSchoolESProducer" )
1099 self.options[
'esmodules'].
append(
"-TransientTrackBuilderESProducer" )
1100 self.options[
'esmodules'].
append(
"-SteppingHelixPropagatorAny" )
1101 self.options[
'esmodules'].
append(
"-OppositeMaterialPropagator" )
1102 self.options[
'esmodules'].
append(
"-MaterialPropagator" )
1103 self.options[
'esmodules'].
append(
"-CaloTowerConstituentsMapBuilder" )
1104 self.options[
'esmodules'].
append(
"-CaloTopologyBuilder" )
1106 self.options[
'modules'].
append(
"hltL3MuonIsolations" )
1107 self.options[
'modules'].
append(
"hltPixelVertices" )
1108 self.options[
'modules'].
append(
"-hltCkfL1SeededTrackCandidates" )
1109 self.options[
'modules'].
append(
"-hltCtfL1SeededithMaterialTracks" )
1110 self.options[
'modules'].
append(
"-hltCkf3HitL1SeededTrackCandidates" )
1111 self.options[
'modules'].
append(
"-hltCtf3HitL1SeededWithMaterialTracks" )
1112 self.options[
'modules'].
append(
"-hltCkf3HitActivityTrackCandidates" )
1113 self.options[
'modules'].
append(
"-hltCtf3HitActivityWithMaterialTracks" )
1114 self.options[
'modules'].
append(
"-hltActivityCkfTrackCandidatesForGSF" )
1115 self.options[
'modules'].
append(
"-hltL1SeededCkfTrackCandidatesForGSF" )
1116 self.options[
'modules'].
append(
"-hltMuCkfTrackCandidates" )
1117 self.options[
'modules'].
append(
"-hltMuCtfTracks" )
1118 self.options[
'modules'].
append(
"-hltTau3MuCkfTrackCandidates" )
1119 self.options[
'modules'].
append(
"-hltTau3MuCtfWithMaterialTracks" )
1120 self.options[
'modules'].
append(
"-hltMuTrackJpsiCkfTrackCandidates" )
1121 self.options[
'modules'].
append(
"-hltMuTrackJpsiCtfTracks" )
1122 self.options[
'modules'].
append(
"-hltMuTrackJpsiEffCkfTrackCandidates" )
1123 self.options[
'modules'].
append(
"-hltMuTrackJpsiEffCtfTracks" )
1124 self.options[
'modules'].
append(
"-hltJpsiTkPixelSeedFromL3Candidate" )
1125 self.options[
'modules'].
append(
"-hltCkfTrackCandidatesJpsiTk" )
1126 self.options[
'modules'].
append(
"-hltCtfWithMaterialTracksJpsiTk" )
1127 self.options[
'modules'].
append(
"-hltMuTrackCkfTrackCandidatesOnia" )
1128 self.options[
'modules'].
append(
"-hltMuTrackCtfTracksOnia" )
1130 self.options[
'modules'].
append(
"-hltFEDSelector" )
1131 self.options[
'modules'].
append(
"-hltL3TrajSeedOIHit" )
1132 self.options[
'modules'].
append(
"-hltL3TrajSeedIOHit" )
1133 self.options[
'modules'].
append(
"-hltL3NoFiltersTrajSeedOIHit" )
1134 self.options[
'modules'].
append(
"-hltL3NoFiltersTrajSeedIOHit" )
1135 self.options[
'modules'].
append(
"-hltL3TrackCandidateFromL2OIState" )
1136 self.options[
'modules'].
append(
"-hltL3TrackCandidateFromL2OIHit" )
1137 self.options[
'modules'].
append(
"-hltL3TrackCandidateFromL2IOHit" )
1138 self.options[
'modules'].
append(
"-hltL3TrackCandidateFromL2NoVtx" )
1139 self.options[
'modules'].
append(
"-hltHcalDigis" )
1140 self.options[
'modules'].
append(
"-hltHoreco" )
1141 self.options[
'modules'].
append(
"-hltHfreco" )
1142 self.options[
'modules'].
append(
"-hltHbhereco" )
1143 self.options[
'modules'].
append(
"-hltESRawToRecHitFacility" )
1144 self.options[
'modules'].
append(
"-hltEcalRecHitAll" )
1145 self.options[
'modules'].
append(
"-hltESRecHitAll" )
1147 self.options[
'modules'].
append(
"-hltEgammaCkfTrackCandidatesForGSF" )
1148 self.options[
'modules'].
append(
"-hltEgammaGsfTracks" )
1149 self.options[
'modules'].
append(
"-hltEgammaCkfTrackCandidatesForGSFUnseeded" )
1150 self.options[
'modules'].
append(
"-hltEgammaGsfTracksUnseeded" )
1152 self.options[
'modules'].
append(
"-hltPFJetCkfTrackCandidates" )
1153 self.options[
'modules'].
append(
"-hltPFJetCtfWithMaterialTracks" )
1154 self.options[
'modules'].
append(
"-hltPFlowTrackSelectionHighPurity" )
1156 self.options[
'modules'].
append(
"-hltDisplacedHT250L1FastJetRegionalPixelSeedGenerator" )
1157 self.options[
'modules'].
append(
"-hltDisplacedHT250L1FastJetRegionalCkfTrackCandidates" )
1158 self.options[
'modules'].
append(
"-hltDisplacedHT250L1FastJetRegionalCtfWithMaterialTracks" )
1159 self.options[
'modules'].
append(
"-hltDisplacedHT300L1FastJetRegionalPixelSeedGenerator" )
1160 self.options[
'modules'].
append(
"-hltDisplacedHT300L1FastJetRegionalCkfTrackCandidates" )
1161 self.options[
'modules'].
append(
"-hltDisplacedHT300L1FastJetRegionalCtfWithMaterialTracks" )
1162 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorbbPhiL1FastJet" )
1163 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesbbPhiL1FastJet" )
1164 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksbbPhiL1FastJet" )
1165 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorHbbVBF" )
1166 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesHbbVBF" )
1167 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksHbbVBF" )
1168 self.options[
'modules'].
append(
"-hltBLifetimeBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20HbbL1FastJet" )
1169 self.options[
'modules'].
append(
"-hltBLifetimeBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20HbbL1FastJet" )
1170 self.options[
'modules'].
append(
"-hltBLifetimeBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20HbbL1FastJet" )
1171 self.options[
'modules'].
append(
"-hltBLifetimeDiBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20HbbL1FastJet" )
1172 self.options[
'modules'].
append(
"-hltBLifetimeDiBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20HbbL1FastJet" )
1173 self.options[
'modules'].
append(
"-hltBLifetimeDiBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20HbbL1FastJet" )
1175 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorHbb" )
1176 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesHbb" )
1177 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksHbb" )
1178 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorbbPhi" )
1179 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesbbPhi" )
1180 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksbbPhi" )
1181 self.options[
'modules'].
append(
"-hltBLifetimeBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20Hbb" )
1182 self.options[
'modules'].
append(
"-hltBLifetimeBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20Hbb" )
1183 self.options[
'modules'].
append(
"-hltBLifetimeBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20Hbb" )
1184 self.options[
'modules'].
append(
"-hltBLifetimeDiBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20Hbb" )
1185 self.options[
'modules'].
append(
"-hltBLifetimeDiBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20Hbb" )
1186 self.options[
'modules'].
append(
"-hltBLifetimeDiBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20Hbb" )
1187 self.options[
'modules'].
append(
"-hltBLifetimeFastRegionalPixelSeedGeneratorHbbVBF" )
1188 self.options[
'modules'].
append(
"-hltBLifetimeFastRegionalCkfTrackCandidatesHbbVBF" )
1189 self.options[
'modules'].
append(
"-hltBLifetimeFastRegionalCtfWithMaterialTracksHbbVBF" )
1190 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorbbPhiL1FastJetFastPV" )
1191 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesbbPhiL1FastJetFastPV" )
1192 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksbbPhiL1FastJetFastPV" )
1193 self.options[
'modules'].
append(
"-hltFastPixelBLifetimeRegionalPixelSeedGeneratorHbb" )
1194 self.options[
'modules'].
append(
"-hltFastPixelBLifetimeRegionalCkfTrackCandidatesHbb" )
1195 self.options[
'modules'].
append(
"-hltFastPixelBLifetimeRegionalCtfWithMaterialTracksHbb" )
1197 self.options[
'modules'].
append(
"-hltPixelTracksForMinBias" )
1198 self.options[
'modules'].
append(
"-hltPixelTracksForHighMult" )
1199 self.options[
'modules'].
append(
"-hltRegionalPixelTracks" )
1200 self.options[
'modules'].
append(
"-hltPixelTracksReg" )
1201 self.options[
'modules'].
append(
"-hltPixelTracksL3Muon" )
1202 self.options[
'modules'].
append(
"-hltPixelTracksGlbTrkMuon" )
1203 self.options[
'modules'].
append(
"-hltPixelTracksHighPtTkMuIso" )
1204 self.options[
'modules'].
append(
"-hltPixelTracksHybrid" )
1205 self.options[
'modules'].
append(
"-hltPixelTracksForPhotons" )
1206 self.options[
'modules'].
append(
"-hltPixelTracksForEgamma" )
1207 self.options[
'modules'].
append(
"-hltPixelTracksElectrons" )
1208 self.options[
'modules'].
append(
"-hltPixelTracksForHighPt" )
1209 self.options[
'modules'].
append(
"-hltHighPtPixelTracks" )
1210 self.options[
'modules'].
append(
"-hltPixelTracksForNoPU" )
1212 self.options[
'modules'].
append(
"-hltFastPixelHitsVertex" )
1213 self.options[
'modules'].
append(
"-hltFastPixelTracks")
1214 self.options[
'modules'].
append(
"-hltFastPixelTracksRecover")
1216 self.options[
'modules'].
append(
"-hltPixelLayerPairs" )
1217 self.options[
'modules'].
append(
"-hltPixelLayerTriplets" )
1218 self.options[
'modules'].
append(
"-hltPixelLayerTripletsReg" )
1219 self.options[
'modules'].
append(
"-hltPixelLayerTripletsHITHB" )
1220 self.options[
'modules'].
append(
"-hltPixelLayerTripletsHITHE" )
1221 self.options[
'modules'].
append(
"-hltMixedLayerPairs" )
1223 self.options[
'modules'].
append(
"-hltFastPrimaryVertexbbPhi")
1224 self.options[
'modules'].
append(
"-hltPixelTracksFastPVbbPhi")
1225 self.options[
'modules'].
append(
"-hltPixelTracksRecoverbbPhi" )
1226 self.options[
'modules'].
append(
"-hltFastPixelHitsVertexVHbb" )
1227 self.options[
'modules'].
append(
"-hltFastPixelTracksVHbb" )
1228 self.options[
'modules'].
append(
"-hltFastPixelTracksRecoverVHbb" )
1230 self.options[
'modules'].
append(
"-hltFastPrimaryVertex")
1231 self.options[
'modules'].
append(
"-hltFastPVPixelVertexFilter")
1232 self.options[
'modules'].
append(
"-hltFastPVPixelTracks")
1233 self.options[
'modules'].
append(
"-hltFastPVPixelTracksRecover" )
1235 self.options[
'modules'].
append(
"hltPixelMatchElectronsActivity" )
1237 self.options[
'modules'].
append(
"-hltMuonCSCDigis" )
1238 self.options[
'modules'].
append(
"-hltMuonDTDigis" )
1239 self.options[
'modules'].
append(
"-hltMuonRPCDigis" )
1240 self.options[
'modules'].
append(
"-hltGtDigis" )
1241 self.options[
'modules'].
append(
"-hltL1GtTrigReport" )
1242 self.options[
'modules'].
append(
"hltCsc2DRecHits" )
1243 self.options[
'modules'].
append(
"hltDt1DRecHits" )
1244 self.options[
'modules'].
append(
"hltRpcRecHits" )
1245 self.options[
'modules'].
append(
"-hltScalersRawToDigi" )
1247 self.options[
'sequences'].
append(
"-HLTL1SeededEgammaRegionalRecoTrackerSequence" )
1248 self.options[
'sequences'].
append(
"-HLTEcalActivityEgammaRegionalRecoTrackerSequence" )
1249 self.options[
'sequences'].
append(
"-HLTPixelMatchElectronActivityTrackingSequence" )
1250 self.options[
'sequences'].
append(
"-HLTDoLocalStripSequence" )
1251 self.options[
'sequences'].
append(
"-HLTDoLocalPixelSequence" )
1252 self.options[
'sequences'].
append(
"-HLTDoLocalPixelSequenceRegL2Tau" )
1253 self.options[
'sequences'].
append(
"-HLTDoLocalStripSequenceReg" )
1254 self.options[
'sequences'].
append(
"-HLTDoLocalPixelSequenceReg" )
1255 self.options[
'sequences'].
append(
"-HLTDoLocalStripSequenceRegForBTag" )
1256 self.options[
'sequences'].
append(
"-HLTDoLocalPixelSequenceRegForBTag" )
1257 self.options[
'sequences'].
append(
"-HLTDoLocalPixelSequenceRegForNoPU" )
1258 self.options[
'sequences'].
append(
"-hltSiPixelDigis" )
1259 self.options[
'sequences'].
append(
"-hltSiPixelClusters" )
1260 self.options[
'sequences'].
append(
"-hltSiPixelRecHits" )
1261 self.options[
'sequences'].
append(
"-HLTRecopixelvertexingSequence" )
1262 self.options[
'sequences'].
append(
"-HLTEndSequence" )
1263 self.options[
'sequences'].
append(
"-HLTBeginSequence" )
1264 self.options[
'sequences'].
append(
"-HLTBeginSequenceNZS" )
1265 self.options[
'sequences'].
append(
"-HLTBeginSequenceBPTX" )
1266 self.options[
'sequences'].
append(
"-HLTBeginSequenceAntiBPTX" )
1267 self.options[
'sequences'].
append(
"-HLTHBHENoiseSequence" )
1268 self.options[
'sequences'].
append(
"-HLTIterativeTrackingIter04" )
1269 self.options[
'sequences'].
append(
"-HLTIterativeTrackingIter02" )
1270 self.options[
'sequences'].
append(
"-HLTIterativeTracking" )
1271 self.options[
'sequences'].
append(
"-HLTIterativeTrackingForHighPt" )
1272 self.options[
'sequences'].
append(
"-HLTIterativeTrackingTau3Mu" )
1273 self.options[
'sequences'].
append(
"-HLTIterativeTrackingReg" )
1274 self.options[
'sequences'].
append(
"-HLTIterativeTrackingForElectronIter02" )
1275 self.options[
'sequences'].
append(
"-HLTIterativeTrackingForPhotonsIter02" )
1276 self.options[
'sequences'].
append(
"-HLTIterativeTrackingL3MuonIter02" )
1277 self.options[
'sequences'].
append(
"-HLTIterativeTrackingGlbTrkMuonIter02" )
1278 self.options[
'sequences'].
append(
"-HLTIterativeTrackingL3MuonRegIter02" )
1279 self.options[
'sequences'].
append(
"-HLTIterativeTrackingHighPtTkMu" )
1280 self.options[
'sequences'].
append(
"-HLTIterativeTrackingHighPtTkMuIsoIter02" )
1281 self.options[
'sequences'].
append(
"-HLTIterativeTrackingForBTagIter02" )
1282 self.options[
'sequences'].
append(
"-HLTIterativeTrackingForBTagIter12" )
1283 self.options[
'sequences'].
append(
"-HLTIterativeTrackingForTauIter04" )
1284 self.options[
'sequences'].
append(
"-HLTIterativeTrackingForTauIter02" )
1285 self.options[
'sequences'].
append(
"-HLTIterativeTrackingDisplacedJpsiIter02" )
1286 self.options[
'sequences'].
append(
"-HLTIterativeTrackingDisplacedPsiPrimeIter02" )
1287 self.options[
'sequences'].
append(
"-HLTIterativeTrackingDisplacedNRMuMuIter02" )
1288 self.options[
'sequences'].
append(
"-HLTIterativeTrackingForBTagIteration0" )
1289 self.options[
'sequences'].
append(
"-HLTIterativeTrackingIteration4DisplacedJets" )
1290 self.options[
'sequences'].
append(
"-HLTRegionalCKFTracksForL3Isolation" )
1291 self.options[
'sequences'].
append(
"-HLTHBHENoiseCleanerSequence" )
1294 if self.config.fragment:
1295 self.options[
'paths'].
append(
"-HLTAnalyzerEndpath" )
1299 if len(filenames) > 255:
1306 self.data +=
" %s = cms.untracked.vstring%s\n" % (name, token_open)
1307 for line
in filenames:
1308 self.data +=
" '%s',\n" % line
1309 self.data +=
" %s,\n" % (token_close)
1314 if input[0:8] ==
'dataset:':
1315 from dasFileQuery
import dasFileQuery
1321 files = self.config.input.split(
',')
1325 if self.config.input:
1327 self.source = self.expand_filenames(self.config.input)
1328 elif self.config.online:
1330 self.source = [
"file:/tmp/InputCollection.root" ]
1331 elif self.config.data:
1333 self.source = [
"file:RelVal_Raw_%s_DATA.root" % self.config.type ]
1336 self.source = [
"file:RelVal_Raw_%s_MC.root" % self.config.type ]
1338 if self.config.parent:
1340 self.parent = self.expand_filenames(self.config.parent)
1343 %(process)ssource = cms.Source( "PoolSource",
1345 self.append_filenames(
"fileNames", self.source)
1347 self.append_filenames(
"secondaryFileNames", self.parent)
1349 inputCommands = cms.untracked.vstring(
def loadAdditionalConditions
def instrumentErrorEventType
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
def consolidateNegativeList
def consolidatePositiveList
static std::string join(char **cmd)
def getRawConfigurationFromDB
def addGlobalOptions
Disable HF Noise filters in HIon menu if 'hltHfreco' in %(dict)s: %(process)shltHfreco.setNoiseFlags = cms.bool( False ) """ else: self.data += """ Enable HF Noise filters in non-HIon menu if 'hltHfreco' in %(dict)s: %(process)shltHfreco.setNoiseFlags = cms.bool( True ) """.
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