5 Scenario supporting proton collisions with input HLT scouting data 9 from __future__
import print_function
15 from Configuration.DataProcessing.Utils
import stepSKIMPRODUCER, addMonitoring, dictIO, nanoFlavours, gtNameAndConnect
16 import FWCore.ParameterSet.Config
as cms
22 Scenario.__init__(self)
26 self.
promptCustoms = [
'Configuration/DataProcessing/RecoTLR.customisePrompt']
31 Implement configuration building for data processing for proton 32 collision data taking with input HLT scouting data 39 Proton collision data taking prompt reco with input HLT scouting data 44 options.__dict__.update(defaultOptions.__dict__)
45 options.scenario = self.
cbSc 47 if 'nThreads' in args:
48 options.nThreads = args[
'nThreads']
51 if 'PhysicsSkims' in args:
59 for a
in args[
'outputs']:
60 if a[
'dataTier']
in [
'NANOAOD',
'NANOEDMAOD']:
61 if 'nanoFlavours' in args:
62 for nanoFlavour
in args[
'nanoFlavours']:
63 if nanoFlavour !=
'@Scout':
64 warnings.warn(
'nanoFlavour: ' + nanoFlavour +
'is currently not supported and will be removed from outputs. Only supported nanoFlavour is @Scout')
65 args[
'nanoFlavours'] = [
'@Scout']
66 nanoAODStep =
',NANO' +
nanoFlavours(args[
'nanoFlavours'])
68 nanoAODStep =
',NANO:@Scout' 71 warnings.warn(
'dataTier:' +
str(a[
'dataTier']) +
' is currently not supported and will be removed from outputs')
72 if {output[
'dataTier']
for output
in outputs} != {a[
'dataTier']
for a
in args[
'outputs']}:
73 warnings.warn(
'The outputs will be changed from ' +
str(args[
'outputs']) +
' to' +
str(outputs))
74 args[
'outputs'] = outputs
76 if not 'customs' in args:
81 options.customisation_file = args[
'customs']
83 options.isRepacked = args.get(
'repacked', self.
isRepacked)
86 options.step += self.
recoSeq + PhysicsSkimStep
87 options.step += miniAODStep + nanoAODStep
92 process = cms.Process(
'HLTSCOUT', cms.ModifierChain(self.eras, self.
promptModifiers))
93 cb =
ConfigBuilder(options, process = process, with_output =
True)
96 process.source = cms.Source(
"PoolSource",
97 fileNames = cms.untracked.vstring()
def stepSKIMPRODUCER(PhysicsSkims)
def gtNameAndConnect(globalTag, args)
def nanoFlavours(flavours)
def dictIO(options, args)
def addMonitoring(process)
def promptReco(self, globalTag, args)