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*_NoVertex_NoBPTX*_v*",
39 "HLT_L2Mu20_NoVertex_2Cha_NoBPTX3BX_NoHalo_v*",
40 "HLT_L2Mu30_NoVertex_2Cha_NoBPTX3BX_NoHalo_v*",
41 "HLT_PixelTracks_Multiplicity70_v*",
42 "HLT_PixelTracks_Multiplicity80_v*",
43 "HLT_PixelTracks_Multiplicity90_v*",
46 "HLT_GlobalRunHPDNoise_v*",
47 "HLT_L1TrackerCosmics_v*",
52 "HLT_DoubleMediumIsoPFTau30_Trk1_eta2p1_Reg_Jet30_v*",
53 "HLT_DoubleMediumIsoPFTau30_Trk1_eta2p1_Reg_v*",
54 "HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Prong1_Reg_v*",
55 "HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Reg_v*",
56 "HLT_IsoMu18_eta2p1_MediumIsoPFTau25_Trk1_eta2p1_Reg_v*",
59 "HLT_DoubleMediumIsoPFTau45_Trk1_eta2p1_Reg_Jet30_v*",
60 "HLT_DoubleMediumIsoPFTau50_Trk1_eta2p1_Prong1_Reg_v*",
61 "HLT_IsoMu26_eta2p1_MediumIsoPFTau30_Trk1_eta2p1_Reg_v*",
83 if self.config.fragment:
84 self.
labels[
'process'] =
''
85 self.
labels[
'dict'] =
'locals()'
87 self.
labels[
'process'] =
'process.'
88 self.
labels[
'dict'] =
'process.__dict__'
90 if self.config.online:
91 self.
labels[
'connect'] =
'frontier://(proxyurl=http://localhost:3128)(serverurl=http://localhost:8000/FrontierOnProd)(serverurl=http://localhost:8000/FrontierOnProd)(retrieve-ziplevel=0)'
93 self.
labels[
'connect'] =
'frontier://FrontierProd'
95 if self.config.prescale
and (self.config.prescale.lower() !=
'none'):
96 self.
labels[
'prescale'] = self.config.prescale
106 url =
'http://j2eeps.cern.ch/cms-project-confdb-hltdev/get.jsp'
107 postdata =
dict([ (key,
','.
join(vals))
for key, vals
in self.options.iteritems()
if vals ])
108 postdata[
'noedsources'] =
''
109 if self.config.fragment:
111 if self.config.menu.run:
112 postdata[
'runNumber'] = self.config.menu.run
114 postdata[
'dbName'] = self.config.menu.db
115 postdata[
'configName']= self.config.menu.name
117 data = urllib2.urlopen(url, urllib.urlencode(postdata)).
read()
118 if 'Exhausted Resultset' in data
or 'CONFIG_NOT_FOUND' in data:
119 raise ImportError(
'%s is not a valid HLT menu' % self.config.menuConfig.value)
124 url =
'http://j2eeps.cern.ch/cms-project-confdb-hltdev/get.jsp'
133 if self.config.menu.run:
134 postdata[
'runNumber'] = self.config.menu.run
136 postdata[
'dbName'] = self.config.menu.db
137 postdata[
'configName']= self.config.menu.name
139 data = urllib2.urlopen(url, urllib.urlencode(postdata)).
read()
140 if 'Exhausted Resultset' in data
or 'CONFIG_NOT_FOUND' in data:
141 raise ImportError(
'%s is not a valid HLT menu' % self.config.menuConfig.value)
142 filter = re.compile(
r' *= *cms.(End)?Path.*')
143 paths = [ filter.sub(
'', line)
for line
in data.splitlines()
if filter.search(line) ]
158 filter = re.compile(
r'^' + glob.replace(
'?',
'.').
replace(
'*',
'.*').
replace(
'[!',
'[^') +
r'$')
159 matches.extend( negate + element
for element
in collection
if filter.match(element) )
168 for element
in elements:
169 if element[0] ==
'-':
170 result.add( element )
172 result.discard(
'-' + element )
173 return sorted( element
for element
in result )
180 for element
in elements:
181 if element[0] ==
'-':
182 result.discard( element[1:] )
184 result.add( element )
185 return sorted( element
for element
in result )
197 # CMSSW version specific customizations
199 cmsswVersion = os.environ['CMSSW_VERSION']
201 # customization for 6_2_X
211 if not self.config.fragment:
215 if self.config.type
in (
'GRun', ):
217 # Enable HF Noise filters in GRun menu
218 if 'hltHfreco' in %(dict)s:
219 %(process)shltHfreco.setNoiseFlags = cms.bool( True )
221 if self.config.type
in (
'HIon', ):
223 # Disable HF Noise filters in HIon menu
224 if 'hltHfreco' in %(dict)s:
225 %(process)shltHfreco.setNoiseFlags = cms.bool( False )
237 self.overrideL1MenuXml()
246 self.instrumentOpenMode()
249 self.instrumentErrorEventType()
252 self.instrumentTiming()
257 if self.config.fragment:
274 self.overrideProcessName()
277 self.overrideOutput()
280 self.addGlobalOptions()
283 self.overrideGlobalTag()
289 self.updateMessageLogger()
315 # limit the number of events to be processed
316 %%(process)smaxEvents = cms.untracked.PSet(
317 input = cms.untracked.int32( %d )
319 """ % self.config.events
321 if not self.config.profiling:
323 # enable the TrigReport and TimeReport
324 %(process)soptions = cms.untracked.PSet(
325 wantSummary = cms.untracked.bool( True )
332 name: parameter name (optional)
333 type: parameter type (look for tracked and untracked variants)
334 value: original value
335 replace: replacement value
339 r'%(name)s = cms(?P<tracked>(?:\.untracked)?)\.%(type)s\( (?P<quote>["\']?)%(value)s(?P=quote)' % args,
340 r'%(name)s = cms\g<tracked>.%(type)s( \g<quote>%(replace)s\g<quote>' % args,
344 r'cms(?P<tracked>(?:\.untracked)?)\.%(type)s\( (?P<quote>["\']?)%(value)s(?P=quote)' % args,
345 r'cms\g<tracked>.%(type)s( \g<quote>%(replace)s\g<quote>' % args,
350 if not self.config.data:
352 if not self.config.fragment:
354 # customise the HLT menu for running on MC
355 from HLTrigger.Configuration.customizeHLTforMC import customizeHLTforMC
356 process = customizeHLTforMC(process)
361 if self.config.fastsim:
363 self.data = re.sub(
r'import FWCore.ParameterSet.Config as cms',
r'\g<0>\nfrom FastSimulation.HighLevelTrigger.HLTSetup_cff import *', self.data)
366 self.data = re.compile(
r'^streams.*\n(.*\n)*?^\)\s*\n', re.MULTILINE ).sub(
'', self.data )
367 self.data = re.compile(
r'^datasets.*\n(.*\n)*?^\)\s*\n', re.MULTILINE ).sub(
'', self.data )
371 self._fix_parameter( type =
'InputTag', value =
'hltL1extraParticles', replace =
'l1extraParticles')
372 self._fix_parameter(name =
'GMTReadoutCollection', type =
'InputTag', value =
'hltGtDigis', replace =
'gmtDigis')
373 self._fix_parameter( type =
'InputTag', value =
'hltGtDigis', replace =
'gtDigis')
374 self._fix_parameter( type =
'InputTag', value =
'hltL1GtObjectMap', replace =
'gtDigis')
375 self._fix_parameter(name =
'initialSeeds', type =
'InputTag', value =
'noSeedsHere', replace =
'globalPixelSeeds:GlobalPixel')
376 self._fix_parameter(name =
'preFilteredSeeds', type =
'bool', value =
'True', replace =
'False')
377 self._fix_parameter( type =
'InputTag', value =
'hltOfflineBeamSpot', replace =
'offlineBeamSpot')
378 self._fix_parameter( type =
'InputTag', value =
'hltOnlineBeamSpot', replace =
'offlineBeamSpot')
379 self._fix_parameter( type =
'InputTag', value =
'hltMuonCSCDigis', replace =
'simMuonCSCDigis')
380 self._fix_parameter( type =
'InputTag', value =
'hltMuonDTDigis', replace =
'simMuonDTDigis')
381 self._fix_parameter( type =
'InputTag', value =
'hltMuonRPCDigis', replace =
'simMuonRPCDigis')
382 self._fix_parameter( type =
'InputTag', value =
'hltRegionalTracksForL3MuonIsolation', replace =
'hltPixelTracks')
383 self._fix_parameter(name =
'src', type =
'InputTag', value =
'hltHcalTowerNoiseCleaner', replace =
'hltTowerMakerForAll')
384 self._fix_parameter(name =
'src', type =
'InputTag', value =
'hltIter4Tau3MuMerged', replace =
'hltIter4Merged')
387 self._fix_parameter( type =
'InputTag', value =
'hltSiStripClusters', replace =
'MeasurementTrackerEvent')
390 self.data = re.sub(
r'hltMuonCSCDigis',
r'cms.SequencePlaceholder( "simMuonCSCDigis" )', self.data )
391 self.data = re.sub(
r'hltMuonDTDigis',
r'cms.SequencePlaceholder( "simMuonDTDigis" )', self.data )
392 self.data = re.sub(
r'hltMuonRPCDigis',
r'cms.SequencePlaceholder( "simMuonRPCDigis" )', self.data )
393 self.data = re.sub(
r'HLTEndSequence',
r'cms.SequencePlaceholder( "HLTEndSequence" )', self.data )
394 self.data = re.sub(
r'hltGtDigis',
r'HLTBeginSequence', self.data )
399 if self.options[
'paths']:
400 if self.options[
'paths'][0][0] ==
'-':
402 for minuspath
in self.options[
'paths']:
404 self.data = re.sub(
r' cms.PSet\( pathName = cms.string\( "%s" \),\n prescales = cms.vuint32\( .* \)\n \),?\n' % path,
'', self.data)
407 for path
in self.all_paths:
408 if path
not in self.options[
'paths']:
409 self.data = re.sub(
r' cms.PSet\( pathName = cms.string\( "%s" \),\n prescales = cms.vuint32\( .* \)\n \),?\n' % path,
'', self.data)
411 if self.config.prescale
and (self.config.prescale.lower() !=
'none'):
414 # force the use of a specific HLT prescale column
415 if 'PrescaleService' in %(dict)s:
416 %(process)sPrescaleService.forceDefault = True
417 %(process)sPrescaleService.lvl1DefaultLabel = '%(prescale)s'
424 filters = [ match[1]
for match
in re.findall(
r'(process\.)?\b(\w+) = cms.EDFilter', self.data) ]
425 re_sequence = re.compile(
r'cms\.(Path|Sequence)\((.*)\)' )
427 self.data = re_sequence.sub(
lambda line: re.sub(
r'cms\.ignore *\( *((process\.)?\b(\w+)) *\)',
r'\1', line.group(0) ), self.data )
428 self.data = re_sequence.sub(
lambda line: re.sub(
r'~',
'', line.group(0) ), self.data )
430 for some
in splitter(filters, 1000):
431 re_filters = re.compile(
r'\b((process\.)?(' +
r'|'.
join(some) +
r'))\b' )
432 self.data = re_sequence.sub(
lambda line: re_filters.sub(
r'cms.ignore( \1 )', line.group(0) ), self.data )
436 if self.config.errortype:
438 self._fix_parameter(name =
'SelectedTriggerType', type =
'int32', value =
'1', replace =
'0')
439 self._fix_parameter(name =
'SelectedTriggerType', type =
'int32', value =
'2', replace =
'0')
440 self._fix_parameter(name =
'SelectedTriggerType', type =
'int32', value =
'3', replace =
'0')
456 # override the GlobalTag, connection string and pfnPrefix
457 if 'GlobalTag' in %(dict)s:
461 if not self.config.data
and not self.config.globaltag:
462 if self.config.type
in globalTag:
463 self.config.globaltag = globalTag[self.config.type]
465 self.config.globaltag = globalTag[
'GRun']
468 if self.config.l1.override:
469 self.config.l1.record =
'L1GtTriggerMenuRcd'
470 self.config.l1.label =
''
471 self.config.l1.tag = self.config.l1.override
472 if not self.config.l1.connect:
473 self.config.l1.connect =
'%(connect)s/CMS_COND_31X_L1T'
474 self.config.l1cond =
'%(tag)s,%(record)s,%(connect)s' % self.config.l1.__dict__
476 self.config.l1cond =
None
478 if self.config.globaltag
or self.config.l1cond:
479 text +=
" from Configuration.AlCa.GlobalTag import GlobalTag as customiseGlobalTag\n"
480 text +=
" %(process)sGlobalTag = customiseGlobalTag(%(process)sGlobalTag"
481 if self.config.globaltag:
482 text +=
", globaltag = %s" % repr(self.config.globaltag)
483 if self.config.l1cond:
484 text +=
", conditions = %s" % repr(self.config.l1cond)
487 text +=
""" %(process)sGlobalTag.connect = '%(connect)s/CMS_COND_31X_GLOBALTAG'
488 %(process)sGlobalTag.pfnPrefix = cms.untracked.string('%(connect)s/')
489 for pset in process.GlobalTag.toGet.value():
490 pset.connect = pset.connect.value().replace('frontier://FrontierProd/', '%(connect)s/')
491 # fix for multi-run processing
492 %(process)sGlobalTag.RefreshEachRun = cms.untracked.bool( False )
493 %(process)sGlobalTag.ReconnectEachRun = cms.untracked.bool( False )
499 if self.config.l1Xml.XmlFile:
501 # override the L1 menu from an Xml file
502 %%(process)sl1GtTriggerMenuXml = cms.ESProducer("L1GtTriggerMenuXmlProducer",
503 TriggerMenuLuminosity = cms.string('%(LumiDir)s'),
504 DefXmlFile = cms.string('%(XmlFile)s'),
505 VmeXmlFile = cms.string('')
507 %%(process)sL1GtTriggerMenuRcdSource = cms.ESSource("EmptyESSource",
508 recordName = cms.string('L1GtTriggerMenuRcd'),
509 iovIsRunNotTime = cms.bool(True),
510 firstValid = cms.vuint32(1)
512 %%(process)ses_prefer_l1GtParameters = cms.ESPrefer('L1GtTriggerMenuXmlProducer','l1GtTriggerMenuXml')
514 self.data += text % self.config.l1Xml.__dict__
518 if not self.config.emulator:
521 if self.config.emulator !=
'gt':
527 # run the L1 GT emulator, then repack the data into a new RAW collection, to be used by the HLT
529 if self.config.fragment:
531 text +=
"import Configuration.StandardSequences.SimL1EmulatorRepack_GT_cff\n"
533 text +=
"process.load( 'Configuration.StandardSequences.SimL1EmulatorRepack_GT_cff' )\n"
535 if not 'hltBoolFalse' in self.data:
538 %(process)shltBoolFalse = cms.EDFilter( "HLTBool",
539 result = cms.bool( False )
542 text +=
"process.L1Emulator = cms.Path( process.SimL1Emulator + process.hltBoolFalse )\n\n"
544 self.data = re.sub(
r'.*cms\.(End)?Path.*', text +
r'\g<0>', self.data, 1)
549 if self.config.emulator:
558 emulator[
'RawToDigi'] =
'RawToDigi_Data_cff'
560 emulator[
'RawToDigi'] =
'RawToDigi_cff'
562 if self.config.emulator ==
'gt':
563 emulator[
'CustomL1T'] =
'customiseL1GtEmulatorFromRaw'
564 emulator[
'CustomHLT'] =
'switchToSimGtDigis'
565 elif self.config.emulator ==
'gct,gt':
566 emulator[
'CustomL1T'] =
'customiseL1CaloAndGtEmulatorsFromRaw'
567 emulator[
'CustomHLT'] =
'switchToSimGctGtDigis'
568 elif self.config.emulator ==
'gmt,gt':
570 emulator[
'CustomL1T'] =
'customiseL1MuonAndGtEmulatorsFromRaw'
571 emulator[
'CustomHLT'] =
'switchToSimGmtGtDigis'
572 elif self.config.emulator
in (
'gmt,gct,gt',
'gct,gmt,gt',
'all'):
573 emulator[
'CustomL1T'] =
'customiseL1EmulatorFromRaw'
574 emulator[
'CustomHLT'] =
'switchToSimGmtGctGtDigis'
577 emulator[
'CustomL1T'] =
'customiseL1EmulatorFromRaw'
578 emulator[
'CustomHLT'] =
'switchToSimGmtGctGtDigis'
581 # customize the L1 emulator to run %(CustomL1T)s with HLT to %(CustomHLT)s
582 process.load( 'Configuration.StandardSequences.%(RawToDigi)s' )
583 process.load( 'Configuration.StandardSequences.SimL1Emulator_cff' )
584 import L1Trigger.Configuration.L1Trigger_custom
585 process = L1Trigger.Configuration.L1Trigger_custom.%(CustomL1T)s( process )
586 process = L1Trigger.Configuration.L1Trigger_custom.customiseResetPrescalesAndMasks( process )
588 # customize the HLT to use the emulated results
589 import HLTrigger.Configuration.customizeHLTforL1Emulator
590 process = HLTrigger.Configuration.customizeHLTforL1Emulator.switchToL1Emulator( process )
591 process = HLTrigger.Configuration.customizeHLTforL1Emulator.%(CustomHLT)s( process )
598 r'\b(process\.)?hltOutput(\w+) *= *cms\.OutputModule\( *"ShmStreamConsumer" *,',
599 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 ),',
603 if not self.config.fragment
and self.config.output ==
'full':
606 # add a single "keep *" output
607 %(process)shltOutputFULL = cms.OutputModule( "PoolOutputModule",
608 fileName = cms.untracked.string( "outputFULL.root" ),
609 fastCloning = cms.untracked.bool( False ),
610 dataset = cms.untracked.PSet(
611 dataTier = cms.untracked.string( 'RECO' ),
612 filterName = cms.untracked.string( '' )
614 outputCommands = cms.untracked.vstring( 'keep *' )
616 %(process)sFULLOutput = cms.EndPath( %(process)shltOutputFULL )
622 if self.config.name
is None:
627 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)
631 # adapt HLT modules to the correct process name
632 if 'hltTrigReport' in %%(dict)s:
633 %%(process)shltTrigReport.HLTriggerResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
635 if 'hltPreExpressCosmicsOutputSmart' in %%(dict)s:
636 %%(process)shltPreExpressCosmicsOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
638 if 'hltPreExpressOutputSmart' in %%(dict)s:
639 %%(process)shltPreExpressOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
641 if 'hltPreDQMForHIOutputSmart' in %%(dict)s:
642 %%(process)shltPreDQMForHIOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
644 if 'hltPreDQMForPPOutputSmart' in %%(dict)s:
645 %%(process)shltPreDQMForPPOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
647 if 'hltPreHLTDQMResultsOutputSmart' in %%(dict)s:
648 %%(process)shltPreHLTDQMResultsOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
650 if 'hltPreHLTDQMOutputSmart' in %%(dict)s:
651 %%(process)shltPreHLTDQMOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
653 if 'hltPreHLTMONOutputSmart' in %%(dict)s:
654 %%(process)shltPreHLTMONOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
656 if 'hltDQMHLTScalers' in %%(dict)s:
657 %%(process)shltDQMHLTScalers.triggerResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
658 %%(process)shltDQMHLTScalers.processname = '%(name)s'
660 if 'hltDQML1SeedLogicScalers' in %%(dict)s:
661 %%(process)shltDQML1SeedLogicScalers.processname = '%(name)s'
662 """ % self.config.__dict__
668 if 'MessageLogger' in %(dict)s:
669 %(process)sMessageLogger.categories.append('TriggerSummaryProducerAOD')
670 %(process)sMessageLogger.categories.append('L1GtTrigReport')
671 %(process)sMessageLogger.categories.append('HLTrigReport')
672 %(process)sMessageLogger.categories.append('FastReport')
680 if 'GlobalTag' in %%(dict)s:
682 for condition
in conditions:
683 self.data +=
""" %%(process)sGlobalTag.toGet.append(
685 record = cms.string( '%(record)s' ),
686 tag = cms.string( '%(tag)s' ),
687 label = cms.untracked.string( '%(label)s' ),
688 connect = cms.untracked.string( '%(connect)s' )
696 if self.config.fragment:
697 self.data +=
'from %s import *\n' % module
699 self.data +=
'process.load( "%s" )\n' % module
704 self.data +=
"if '%s' in %%(dict)s:\n" % module
705 for (parameter, value)
in parameters:
706 self.data +=
" %%(process)s%s.%s = %s\n" % (module, parameter, value)
711 if self.config.profiling:
715 if not 'hltGetRaw' in self.data:
718 %(process)shltGetRaw = cms.EDAnalyzer( "HLTGetRaw",
719 RawDataCollection = cms.InputTag( "rawDataCollector" )
723 if not 'hltGetConditions' in self.data:
726 %(process)shltGetConditions = cms.EDAnalyzer( 'EventSetupRecordDataGetter',
727 verbose = cms.untracked.bool( False ),
732 if not 'hltBoolFalse' in self.data:
735 %(process)shltBoolFalse = cms.EDFilter( "HLTBool",
736 result = cms.bool( False )
743 %(process)sHLTriggerFirstPath = cms.Path( %(process)shltGetRaw + %(process)shltGetConditions + %(process)shltBoolFalse )
745 self.data = re.sub(
r'.*cms\.(End)?Path.*', text +
r'\g<0>', self.data, 1)
750 if self.config.timing:
752 # instrument the menu with the modules and EndPath needed for timing studies
756 if 'FastTimerService' in self.data:
759 self.data +=
'\n# configure the FastTimerService\n'
761 self.loadCff(
'HLTrigger.Timer.FastTimerService_cfi')
762 self.data +=
"""%(process)sFastTimerService.useRealTimeClock = False
763 %(process)sFastTimerService.enableTimingPaths = True
764 %(process)sFastTimerService.enableTimingModules = True
765 %(process)sFastTimerService.enableTimingExclusive = True
766 %(process)sFastTimerService.enableTimingSummary = True
767 %(process)sFastTimerService.skipFirstPath = True
768 %(process)sFastTimerService.enableDQM = True
769 %(process)sFastTimerService.enableDQMbyPathActive = True
770 %(process)sFastTimerService.enableDQMbyPathTotal = True
771 %(process)sFastTimerService.enableDQMbyPathOverhead = True
772 %(process)sFastTimerService.enableDQMbyPathDetails = True
773 %(process)sFastTimerService.enableDQMbyPathCounters = True
774 %(process)sFastTimerService.enableDQMbyPathExclusive = True
775 %(process)sFastTimerService.enableDQMbyModule = True
776 %(process)sFastTimerService.enableDQMbyModuleType = True
777 %(process)sFastTimerService.enableDQMSummary = True
778 %(process)sFastTimerService.enableDQMbyLuminosity = True
779 %(process)sFastTimerService.enableDQMbyLumiSection = True
780 %(process)sFastTimerService.enableDQMbyProcesses = False
781 %(process)sFastTimerService.dqmTimeRange = 1000.
782 %(process)sFastTimerService.dqmTimeResolution = 5.
783 %(process)sFastTimerService.dqmPathTimeRange = 100.
784 %(process)sFastTimerService.dqmPathTimeResolution = 0.5
785 %(process)sFastTimerService.dqmModuleTimeRange = 40.
786 %(process)sFastTimerService.dqmModuleTimeResolution = 0.2
787 %(process)sFastTimerService.dqmLuminosityRange = 1e+34
788 %(process)sFastTimerService.dqmLuminosityResolution = 1e+31
789 %(process)sFastTimerService.dqmLumiSectionsRange = 2500
790 %(process)sFastTimerService.dqmPath = 'HLT/TimerService'
791 %(process)sFastTimerService.luminosityProduct = cms.untracked.InputTag( 'hltScalersRawToDigi' )
792 %(process)sFastTimerService.supportedProcesses = cms.untracked.vuint32( )
796 # FastTimerServiceClient
797 %(process)sfastTimerServiceClient = cms.EDAnalyzer( "FastTimerServiceClient",
798 dqmPath = cms.untracked.string( "HLT/TimerService" )
802 %(process)sdqmFileSaver = cms.EDAnalyzer( "DQMFileSaver",
803 convention = cms.untracked.string( "Offline" ),
804 workflow = cms.untracked.string( "/HLT/FastTimerService/All" ),
805 dirName = cms.untracked.string( "." ),
806 saveByRun = cms.untracked.int32(1),
807 saveByLumiSection = cms.untracked.int32(-1),
808 saveByEvent = cms.untracked.int32(-1),
809 saveByTime = cms.untracked.int32(-1),
810 saveByMinute = cms.untracked.int32(-1),
811 saveAtJobEnd = cms.untracked.bool(False),
812 forceRunNumber = cms.untracked.int32(-1),
815 %(process)sTimingOutput = cms.EndPath( %(process)sfastTimerServiceClient + %(process)sdqmFileSaver )
820 sys.stderr.write(
'Path selection:\n')
822 sys.stderr.write(
'\t%s\n' % path)
823 sys.stderr.write(
'\n\n')
826 self.all_paths = self.getPathList()
828 if self.config.paths:
830 paths = self.config.paths.split(
',')
835 if self.config.fragment
or self.config.output
in (
'none',
'full'):
837 if self.config.paths:
842 paths.append(
"-*Output" )
843 elif self.config.output ==
'minimal':
845 if self.config.paths:
846 paths.append(
"HLTDQMResultsOutput" )
848 paths.append(
"-*Output" )
849 paths.append(
"HLTDQMResultsOutput" )
852 if self.config.paths:
853 paths.append(
"*Output" )
858 if self.config.fastsim:
859 paths.extend(
"-%s" % path
for path
in self.fastsimUnsupportedPaths )
862 if self.config.profiling:
863 paths.append(
"-HLTriggerFirstPath" )
864 paths.append(
"-HLTAnalyzerEndpath" )
867 paths.append(
"-OfflineOutput" )
870 paths = self.expandWildcards(paths, self.all_paths)
872 if self.config.paths:
874 self.options[
'paths'] = self.consolidatePositiveList(paths)
875 if not self.options[
'paths']:
876 raise RuntimeError(
'Error: option "--paths %s" does not select any valid paths' % self.config.paths)
879 self.options[
'paths'] = self.consolidateNegativeList(paths)
884 self.options[
'services'].
append(
"-FUShmDQMOutputService" )
885 self.options[
'services'].
append(
"-DQM" )
887 if self.config.fragment:
889 self.options[
'essources'].
append(
"-GlobalTag" )
890 self.options[
'essources'].
append(
"-HepPDTESSource" )
891 self.options[
'essources'].
append(
"-XMLIdealGeometryESSource" )
892 self.options[
'essources'].
append(
"-eegeom" )
893 self.options[
'essources'].
append(
"-es_hardcode" )
894 self.options[
'essources'].
append(
"-magfield" )
896 self.options[
'esmodules'].
append(
"-AutoMagneticFieldESProducer" )
897 self.options[
'esmodules'].
append(
"-SlaveField0" )
898 self.options[
'esmodules'].
append(
"-SlaveField20" )
899 self.options[
'esmodules'].
append(
"-SlaveField30" )
900 self.options[
'esmodules'].
append(
"-SlaveField35" )
901 self.options[
'esmodules'].
append(
"-SlaveField38" )
902 self.options[
'esmodules'].
append(
"-SlaveField40" )
903 self.options[
'esmodules'].
append(
"-VBF0" )
904 self.options[
'esmodules'].
append(
"-VBF20" )
905 self.options[
'esmodules'].
append(
"-VBF30" )
906 self.options[
'esmodules'].
append(
"-VBF35" )
907 self.options[
'esmodules'].
append(
"-VBF38" )
908 self.options[
'esmodules'].
append(
"-VBF40" )
909 self.options[
'esmodules'].
append(
"-CSCGeometryESModule" )
910 self.options[
'esmodules'].
append(
"-CaloGeometryBuilder" )
911 self.options[
'esmodules'].
append(
"-CaloTowerHardcodeGeometryEP" )
912 self.options[
'esmodules'].
append(
"-CastorHardcodeGeometryEP" )
913 self.options[
'esmodules'].
append(
"-DTGeometryESModule" )
914 self.options[
'esmodules'].
append(
"-EcalBarrelGeometryEP" )
915 self.options[
'esmodules'].
append(
"-EcalElectronicsMappingBuilder" )
916 self.options[
'esmodules'].
append(
"-EcalEndcapGeometryEP" )
917 self.options[
'esmodules'].
append(
"-EcalLaserCorrectionService" )
918 self.options[
'esmodules'].
append(
"-EcalPreshowerGeometryEP" )
919 self.options[
'esmodules'].
append(
"-HcalHardcodeGeometryEP" )
920 self.options[
'esmodules'].
append(
"-HcalTopologyIdealEP" )
921 self.options[
'esmodules'].
append(
"-MuonNumberingInitialization" )
922 self.options[
'esmodules'].
append(
"-ParametrizedMagneticFieldProducer" )
923 self.options[
'esmodules'].
append(
"-RPCGeometryESModule" )
924 self.options[
'esmodules'].
append(
"-SiStripGainESProducer" )
925 self.options[
'esmodules'].
append(
"-SiStripRecHitMatcherESProducer" )
926 self.options[
'esmodules'].
append(
"-SiStripQualityESProducer" )
927 self.options[
'esmodules'].
append(
"-StripCPEfromTrackAngleESProducer" )
928 self.options[
'esmodules'].
append(
"-TrackerDigiGeometryESModule" )
929 self.options[
'esmodules'].
append(
"-TrackerGeometricDetESModule" )
930 self.options[
'esmodules'].
append(
"-VolumeBasedMagneticFieldESProducer" )
931 self.options[
'esmodules'].
append(
"-ZdcHardcodeGeometryEP" )
932 self.options[
'esmodules'].
append(
"-hcal_db_producer" )
933 self.options[
'esmodules'].
append(
"-L1GtTriggerMaskAlgoTrigTrivialProducer" )
934 self.options[
'esmodules'].
append(
"-L1GtTriggerMaskTechTrigTrivialProducer" )
935 self.options[
'esmodules'].
append(
"-hltESPEcalTrigTowerConstituentsMapBuilder" )
936 self.options[
'esmodules'].
append(
"-hltESPGlobalTrackingGeometryESProducer" )
937 self.options[
'esmodules'].
append(
"-hltESPMuonDetLayerGeometryESProducer" )
938 self.options[
'esmodules'].
append(
"-hltESPTrackerRecoGeometryESProducer" )
939 if not self.config.fastsim:
940 self.options[
'esmodules'].
append(
"-CaloTowerGeometryFromDBEP" )
941 self.options[
'esmodules'].
append(
"-CastorGeometryFromDBEP" )
942 self.options[
'esmodules'].
append(
"-EcalBarrelGeometryFromDBEP" )
943 self.options[
'esmodules'].
append(
"-EcalEndcapGeometryFromDBEP" )
944 self.options[
'esmodules'].
append(
"-EcalPreshowerGeometryFromDBEP" )
945 self.options[
'esmodules'].
append(
"-HcalGeometryFromDBEP" )
946 self.options[
'esmodules'].
append(
"-ZdcGeometryFromDBEP" )
947 self.options[
'esmodules'].
append(
"-XMLFromDBSource" )
948 self.options[
'esmodules'].
append(
"-sistripconn" )
950 self.options[
'services'].
append(
"-MessageLogger" )
951 self.options[
'services'].
append(
"-DQMStore" )
952 self.options[
'services'].
append(
"-MicroStateService" )
953 self.options[
'services'].
append(
"-ModuleWebRegistry" )
954 self.options[
'services'].
append(
"-TimeProfilerService" )
956 self.options[
'psets'].
append(
"-maxEvents" )
957 self.options[
'psets'].
append(
"-options" )
959 if self.config.fragment
or (self.config.prescale
and (self.config.prescale.lower() ==
'none')):
960 self.options[
'services'].
append(
"-PrescaleService" )
962 if self.config.fragment
or self.config.timing:
963 self.options[
'services'].
append(
"-FastTimerService" )
965 if self.config.fastsim:
967 self.options[
'esmodules'].
append(
"-navigationSchoolESProducer" )
968 self.options[
'esmodules'].
append(
"-TransientTrackBuilderESProducer" )
969 self.options[
'esmodules'].
append(
"-SteppingHelixPropagatorAny" )
970 self.options[
'esmodules'].
append(
"-OppositeMaterialPropagator" )
971 self.options[
'esmodules'].
append(
"-MaterialPropagator" )
972 self.options[
'esmodules'].
append(
"-CaloTowerConstituentsMapBuilder" )
973 self.options[
'esmodules'].
append(
"-CaloTopologyBuilder" )
975 self.options[
'modules'].
append(
"hltL3MuonIsolations" )
976 self.options[
'modules'].
append(
"hltPixelVertices" )
977 self.options[
'modules'].
append(
"-hltCkfL1SeededTrackCandidates" )
978 self.options[
'modules'].
append(
"-hltCtfL1SeededithMaterialTracks" )
979 self.options[
'modules'].
append(
"-hltCkf3HitL1SeededTrackCandidates" )
980 self.options[
'modules'].
append(
"-hltCtf3HitL1SeededWithMaterialTracks" )
981 self.options[
'modules'].
append(
"-hltCkf3HitActivityTrackCandidates" )
982 self.options[
'modules'].
append(
"-hltCtf3HitActivityWithMaterialTracks" )
983 self.options[
'modules'].
append(
"-hltActivityCkfTrackCandidatesForGSF" )
984 self.options[
'modules'].
append(
"-hltL1SeededCkfTrackCandidatesForGSF" )
985 self.options[
'modules'].
append(
"-hltMuCkfTrackCandidates" )
986 self.options[
'modules'].
append(
"-hltMuCtfTracks" )
987 self.options[
'modules'].
append(
"-hltTau3MuCkfTrackCandidates" )
988 self.options[
'modules'].
append(
"-hltTau3MuCtfWithMaterialTracks" )
989 self.options[
'modules'].
append(
"-hltMuTrackJpsiCkfTrackCandidates" )
990 self.options[
'modules'].
append(
"-hltMuTrackJpsiCtfTracks" )
991 self.options[
'modules'].
append(
"-hltMuTrackJpsiEffCkfTrackCandidates" )
992 self.options[
'modules'].
append(
"-hltMuTrackJpsiEffCtfTracks" )
993 self.options[
'modules'].
append(
"-hltJpsiTkPixelSeedFromL3Candidate" )
994 self.options[
'modules'].
append(
"-hltCkfTrackCandidatesJpsiTk" )
995 self.options[
'modules'].
append(
"-hltCtfWithMaterialTracksJpsiTk" )
996 self.options[
'modules'].
append(
"-hltMuTrackCkfTrackCandidatesOnia" )
997 self.options[
'modules'].
append(
"-hltMuTrackCtfTracksOnia" )
999 self.options[
'modules'].
append(
"-hltESRegionalEgammaRecHit" )
1000 self.options[
'modules'].
append(
"-hltEcalRegionalJetsFEDs" )
1001 self.options[
'modules'].
append(
"-hltEcalRegionalMuonsFEDs" )
1002 self.options[
'modules'].
append(
"-hltEcalRegionalEgammaFEDs" )
1003 self.options[
'modules'].
append(
"-hltFEDSelector" )
1004 self.options[
'modules'].
append(
"-hltL3TrajSeedOIHit" )
1005 self.options[
'modules'].
append(
"-hltL3TrajSeedIOHit" )
1006 self.options[
'modules'].
append(
"-hltL3TrackCandidateFromL2OIState" )
1007 self.options[
'modules'].
append(
"-hltL3TrackCandidateFromL2OIHit" )
1008 self.options[
'modules'].
append(
"-hltL3TrackCandidateFromL2IOHit" )
1009 self.options[
'modules'].
append(
"-hltL3TrackCandidateFromL2NoVtx" )
1010 self.options[
'modules'].
append(
"-hltHcalDigis" )
1011 self.options[
'modules'].
append(
"-hltHoreco" )
1012 self.options[
'modules'].
append(
"-hltHfreco" )
1013 self.options[
'modules'].
append(
"-hltHbhereco" )
1014 self.options[
'modules'].
append(
"-hltEcalRegionalRestFEDs" )
1015 self.options[
'modules'].
append(
"-hltEcalRegionalESRestFEDs" )
1016 self.options[
'modules'].
append(
"-hltEcalRawToRecHitFacility" )
1017 self.options[
'modules'].
append(
"-hltESRawToRecHitFacility" )
1018 self.options[
'modules'].
append(
"-hltEcalRegionalJetsRecHit" )
1019 self.options[
'modules'].
append(
"-hltEcalRegionalMuonsRecHit" )
1020 self.options[
'modules'].
append(
"-hltEcalRegionalEgammaRecHit" )
1021 self.options[
'modules'].
append(
"-hltEcalRecHitAll" )
1022 self.options[
'modules'].
append(
"-hltESRecHitAll" )
1024 self.options[
'modules'].
append(
"-hltPFJetCkfTrackCandidates" )
1025 self.options[
'modules'].
append(
"-hltPFJetCtfWithMaterialTracks" )
1026 self.options[
'modules'].
append(
"-hltPFlowTrackSelectionHighPurity" )
1028 self.options[
'modules'].
append(
"-hltDisplacedHT250L1FastJetRegionalPixelSeedGenerator" )
1029 self.options[
'modules'].
append(
"-hltDisplacedHT250L1FastJetRegionalCkfTrackCandidates" )
1030 self.options[
'modules'].
append(
"-hltDisplacedHT250L1FastJetRegionalCtfWithMaterialTracks" )
1031 self.options[
'modules'].
append(
"-hltDisplacedHT300L1FastJetRegionalPixelSeedGenerator" )
1032 self.options[
'modules'].
append(
"-hltDisplacedHT300L1FastJetRegionalCkfTrackCandidates" )
1033 self.options[
'modules'].
append(
"-hltDisplacedHT300L1FastJetRegionalCtfWithMaterialTracks" )
1034 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorbbPhiL1FastJet" )
1035 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesbbPhiL1FastJet" )
1036 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksbbPhiL1FastJet" )
1037 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorHbbVBF" )
1038 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesHbbVBF" )
1039 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksHbbVBF" )
1040 self.options[
'modules'].
append(
"-hltBLifetimeBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20HbbL1FastJet" )
1041 self.options[
'modules'].
append(
"-hltBLifetimeBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20HbbL1FastJet" )
1042 self.options[
'modules'].
append(
"-hltBLifetimeBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20HbbL1FastJet" )
1043 self.options[
'modules'].
append(
"-hltBLifetimeDiBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20HbbL1FastJet" )
1044 self.options[
'modules'].
append(
"-hltBLifetimeDiBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20HbbL1FastJet" )
1045 self.options[
'modules'].
append(
"-hltBLifetimeDiBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20HbbL1FastJet" )
1047 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorHbb" )
1048 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesHbb" )
1049 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksHbb" )
1050 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorbbPhi" )
1051 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesbbPhi" )
1052 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksbbPhi" )
1053 self.options[
'modules'].
append(
"-hltBLifetimeBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20Hbb" )
1054 self.options[
'modules'].
append(
"-hltBLifetimeBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20Hbb" )
1055 self.options[
'modules'].
append(
"-hltBLifetimeBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20Hbb" )
1056 self.options[
'modules'].
append(
"-hltBLifetimeDiBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20Hbb" )
1057 self.options[
'modules'].
append(
"-hltBLifetimeDiBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20Hbb" )
1058 self.options[
'modules'].
append(
"-hltBLifetimeDiBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20Hbb" )
1059 self.options[
'modules'].
append(
"-hltBLifetimeFastRegionalPixelSeedGeneratorHbbVBF" )
1060 self.options[
'modules'].
append(
"-hltBLifetimeFastRegionalCkfTrackCandidatesHbbVBF" )
1061 self.options[
'modules'].
append(
"-hltBLifetimeFastRegionalCtfWithMaterialTracksHbbVBF" )
1062 self.options[
'modules'].
append(
"-hltBLifetimeRegionalPixelSeedGeneratorbbPhiL1FastJetFastPV" )
1063 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCkfTrackCandidatesbbPhiL1FastJetFastPV" )
1064 self.options[
'modules'].
append(
"-hltBLifetimeRegionalCtfWithMaterialTracksbbPhiL1FastJetFastPV" )
1065 self.options[
'modules'].
append(
"-hltFastPixelBLifetimeRegionalPixelSeedGeneratorHbb" )
1066 self.options[
'modules'].
append(
"-hltFastPixelBLifetimeRegionalCkfTrackCandidatesHbb" )
1067 self.options[
'modules'].
append(
"-hltFastPixelBLifetimeRegionalCtfWithMaterialTracksHbb" )
1069 self.options[
'modules'].
append(
"-hltPixelTracksForMinBias" )
1070 self.options[
'modules'].
append(
"-hltPixelTracksForHighMult" )
1071 self.options[
'modules'].
append(
"-hltRegionalPixelTracks" )
1072 self.options[
'modules'].
append(
"-hltPixelTracksReg" )
1073 self.options[
'modules'].
append(
"-hltIter4Merged" )
1074 self.options[
'modules'].
append(
"-hltFastPixelHitsVertex" )
1075 self.options[
'modules'].
append(
"-hltFastPixelTracks")
1076 self.options[
'modules'].
append(
"-hltFastPixelTracksRecover")
1078 self.options[
'modules'].
append(
"-hltPixelLayerPairs" )
1079 self.options[
'modules'].
append(
"-hltPixelLayerTriplets" )
1080 self.options[
'modules'].
append(
"-hltPixelLayerTripletsReg" )
1081 self.options[
'modules'].
append(
"-hltPixelLayerTripletsHITHB" )
1082 self.options[
'modules'].
append(
"-hltPixelLayerTripletsHITHE" )
1083 self.options[
'modules'].
append(
"-hltMixedLayerPairs" )
1085 self.options[
'modules'].
append(
"-hltFastPrimaryVertexbbPhi")
1086 self.options[
'modules'].
append(
"-hltPixelTracksFastPVbbPhi")
1087 self.options[
'modules'].
append(
"-hltPixelTracksRecoverbbPhi" )
1088 self.options[
'modules'].
append(
"-hltFastPixelHitsVertexVHbb" )
1089 self.options[
'modules'].
append(
"-hltFastPixelTracksVHbb" )
1090 self.options[
'modules'].
append(
"-hltFastPixelTracksRecoverVHbb" )
1092 self.options[
'modules'].
append(
"-hltFastPrimaryVertex")
1093 self.options[
'modules'].
append(
"-hltFastPVPixelTracks")
1094 self.options[
'modules'].
append(
"-hltFastPVPixelTracksRecover" )
1096 self.options[
'modules'].
append(
"-hltIter4Tau3MuMerged" )
1097 self.options[
'modules'].
append(
"hltPixelMatchElectronsActivity" )
1099 self.options[
'modules'].
append(
"-hltMuonCSCDigis" )
1100 self.options[
'modules'].
append(
"-hltMuonDTDigis" )
1101 self.options[
'modules'].
append(
"-hltMuonRPCDigis" )
1102 self.options[
'modules'].
append(
"-hltGtDigis" )
1103 self.options[
'modules'].
append(
"-hltL1GtTrigReport" )
1104 self.options[
'modules'].
append(
"hltCsc2DRecHits" )
1105 self.options[
'modules'].
append(
"hltDt1DRecHits" )
1106 self.options[
'modules'].
append(
"hltRpcRecHits" )
1107 self.options[
'modules'].
append(
"-hltScalersRawToDigi" )
1109 self.options[
'sequences'].
append(
"-HLTL1SeededEgammaRegionalRecoTrackerSequence" )
1110 self.options[
'sequences'].
append(
"-HLTEcalActivityEgammaRegionalRecoTrackerSequence" )
1111 self.options[
'sequences'].
append(
"-HLTPixelMatchElectronActivityTrackingSequence" )
1112 self.options[
'sequences'].
append(
"-HLTDoLocalStripSequence" )
1113 self.options[
'sequences'].
append(
"-HLTDoLocalPixelSequence" )
1114 self.options[
'sequences'].
append(
"-HLTDoLocalPixelSequenceRegL2Tau" )
1115 self.options[
'sequences'].
append(
"-hltSiPixelDigis" )
1116 self.options[
'sequences'].
append(
"-hltSiPixelClusters" )
1117 self.options[
'sequences'].
append(
"-hltSiPixelRecHits" )
1118 self.options[
'sequences'].
append(
"-HLTRecopixelvertexingSequence" )
1119 self.options[
'sequences'].
append(
"-HLTEndSequence" )
1120 self.options[
'sequences'].
append(
"-HLTBeginSequence" )
1121 self.options[
'sequences'].
append(
"-HLTBeginSequenceNZS" )
1122 self.options[
'sequences'].
append(
"-HLTBeginSequenceBPTX" )
1123 self.options[
'sequences'].
append(
"-HLTBeginSequenceAntiBPTX" )
1124 self.options[
'sequences'].
append(
"-HLTHBHENoiseSequence" )
1125 self.options[
'sequences'].
append(
"-HLTIterativeTracking" )
1126 self.options[
'sequences'].
append(
"-HLTIterativeTrackingTau3Mu" )
1127 self.options[
'sequences'].
append(
"-HLTRegionalCKFTracksForL3Isolation" )
1128 self.options[
'sequences'].
append(
"-HLTHBHENoiseCleanerSequence" )
1131 if self.config.fragment:
1132 self.options[
'paths'].
append(
"-HLTAnalyzerEndpath" )
1136 if self.config.input:
1138 if self.config.input[0:8] ==
'dataset:':
1139 from dbsFileQuery
import dbsFileQuery
1141 dataset = self.config.input[8:]
1142 query =
'find file where dataset=' + dataset
1147 self.source = self.config.input.split(
',')
1148 elif self.config.online:
1150 self.source = [
"file:/tmp/InputCollection.root" ]
1151 elif self.config.data:
1153 self.source = [
"file:RelVal_Raw_%s_DATA.root" % self.config.type ]
1156 self.source = [
"file:RelVal_Raw_%s_STARTUP.root" % self.config.type ]
1159 %(process)ssource = cms.Source( "PoolSource",
1160 fileNames = cms.untracked.vstring(
1163 for line
in self.source:
1164 self.data +=
" '%s',\n" % line
1166 secondaryFileNames = cms.untracked.vstring(
1169 for line
in self.parent:
1170 self.data +=
" '%s',\n" % line
1172 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