CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes
Impl.hltScouting.hltScouting Class Reference
Inheritance diagram for Impl.hltScouting.hltScouting:

Public Member Functions

def __init__ (self)
 
def promptReco (self, globalTag, args)
 

Public Attributes

 cbSc
 
 isRepacked
 
 promptCustoms
 
 promptModifiers
 
 recoSeq
 

Detailed Description

Definition at line 20 of file hltScouting.py.

Constructor & Destructor Documentation

◆ __init__()

def Impl.hltScouting.hltScouting.__init__ (   self)

Definition at line 21 of file hltScouting.py.

21  def __init__(self):
22  Scenario.__init__(self)
23  self.recoSeq = ''
24  self.cbSc = 'pp'
25  self.isRepacked = False
26  self.promptCustoms = ['Configuration/DataProcessing/RecoTLR.customisePrompt']
27  self.promptModifiers = cms.ModifierChain()
def __init__(self, dataset, job_number, job_id, job_name, isDA, isMC, applyBOWS, applyEXTRACOND, extraconditions, runboundary, lumilist, intlumi, maxevents, gt, allFromGT, alignmentDB, alignmentTAG, apeDB, apeTAG, bowDB, bowTAG, vertextype, tracktype, refittertype, ttrhtype, applyruncontrol, ptcut, CMSSW_dir, the_dir)

Member Function Documentation

◆ promptReco()

def Impl.hltScouting.hltScouting.promptReco (   self,
  globalTag,
  args 
)
_promptReco_

Proton collision data taking prompt reco with input HLT scouting data

Definition at line 35 of file hltScouting.py.

References Utils.addMonitoring(), mps_setup.append, Impl.hcalnzs.hcalnzs.cbSc, Impl.cosmics.cosmics.cbSc, Impl.hcalnzsEra_Run3.hcalnzsEra_Run3.cbSc, Impl.hcalnzsEra_Run2_2017.hcalnzsEra_Run2_2017.cbSc, Impl.hcalnzsEra_Run2_2018.hcalnzsEra_Run2_2018.cbSc, Impl.hcalnzsEra_Run2_2016.hcalnzsEra_Run2_2016.cbSc, Impl.hcalnzsEra_Run2_2018_highBetaStar.hcalnzsEra_Run2_2018_highBetaStar.cbSc, Impl.hcalnzsEra_Run2_25ns.hcalnzsEra_Run2_25ns.cbSc, Impl.HeavyIons.HeavyIons.cbSc, Impl.hltScouting.hltScouting.cbSc, Utils.dictIO(), Impl.AlCaLumiPixels.AlCaLumiPixels.eras, Impl.AlCaLumiPixels_Run3.AlCaLumiPixels_Run3.eras, Impl.AlCaPhiSymEcal_Nano.AlCaPhiSymEcal_Nano.eras, Impl.cosmicsEra_Run2_2016.cosmicsEra_Run2_2016.eras, Impl.cosmicsEra_Run2_2017.cosmicsEra_Run2_2017.eras, Impl.cosmicsEra_Run2_2018.cosmicsEra_Run2_2018.eras, Impl.cosmicsEra_Run2_25ns.cosmicsEra_Run2_25ns.eras, Impl.cosmicsEra_Run2_50ns.cosmicsEra_Run2_50ns.eras, Impl.cosmicsEra_Run3.cosmicsEra_Run3.eras, Impl.cosmicsHybridEra_Run2_2018.cosmicsHybridEra_Run2_2018.eras, Impl.hcalnzsEra_Run2_2018_pp_on_AA.hcalnzsEra_Run2_2018_pp_on_AA.eras, Impl.hcalnzsEra_Run3_pp_on_PbPb.hcalnzsEra_Run3_pp_on_PbPb.eras, Impl.hcalnzsEra_Run2_2016.hcalnzsEra_Run2_2016.eras, Impl.hcalnzsEra_Run2_2018.hcalnzsEra_Run2_2018.eras, Impl.hcalnzsEra_Run2_2017.hcalnzsEra_Run2_2017.eras, Impl.hcalnzsEra_Run2_2018_highBetaStar.hcalnzsEra_Run2_2018_highBetaStar.eras, Impl.hcalnzsEra_Run3.hcalnzsEra_Run3.eras, Impl.hcalnzsEra_Run2_25ns.hcalnzsEra_Run2_25ns.eras, Impl.hltScoutingEra_Run3_2024.hltScoutingEra_Run3_2024.eras, Impl.ppEra_Run3_2024.ppEra_Run3_2024.eras, Impl.HeavyIonsEra_Run2_2018.HeavyIonsEra_Run2_2018.eras, Impl.HeavyIonsEra_Run2_HI.HeavyIonsEra_Run2_HI.eras, Impl.AlCaPPS_Run3.AlCaPPS_Run3.eras, Impl.ppEra_Run2_2017_trackingLowPU.ppEra_Run2_2017_trackingLowPU.eras, Impl.ppEra_Run2_2018.ppEra_Run2_2018.eras, Impl.ppEra_Run2_2018_highBetaStar.ppEra_Run2_2018_highBetaStar.eras, Impl.ppEra_Run2_25ns.ppEra_Run2_25ns.eras, Impl.ppEra_Run2_50ns.ppEra_Run2_50ns.eras, Impl.ppEra_Run3_2023.ppEra_Run3_2023.eras, Impl.ppEra_Run3.ppEra_Run3.eras, Impl.ppEra_Run2_2016.ppEra_Run2_2016.eras, Impl.ppEra_Run2_2016_pA.ppEra_Run2_2016_pA.eras, Impl.ppEra_Run2_2016_trackingLowPU.ppEra_Run2_2016_trackingLowPU.eras, Impl.ppEra_Run2_2017.ppEra_Run2_2017.eras, Impl.ppEra_Run2_2017_ppRef.ppEra_Run2_2017_ppRef.eras, Impl.ppEra_Run2_2018_pp_on_AA.ppEra_Run2_2018_pp_on_AA.eras, Impl.ppEra_Run3_pp_on_PbPb_approxSiStripClusters.ppEra_Run3_pp_on_PbPb_approxSiStripClusters.eras, Impl.ppEra_Run3_pp_on_PbPb.ppEra_Run3_pp_on_PbPb.eras, Impl.ppEra_Run3_pp_on_PbPb_2023.ppEra_Run3_pp_on_PbPb_2023.eras, Impl.ppEra_Run3_pp_on_PbPb_approxSiStripClusters_2023.ppEra_Run3_pp_on_PbPb_approxSiStripClusters_2023.eras, Impl.ppEra_Run3_2023_repacked.ppEra_Run3_2023_repacked.eras, Impl.trackingOnlyEra_Run2_2018_pp_on_AA.trackingOnlyEra_Run2_2018_pp_on_AA.eras, Impl.trackingOnlyEra_Run3_pp_on_PbPb.trackingOnlyEra_Run3_pp_on_PbPb.eras, Impl.ppEra_Run2_2017_pp_on_XeXe.ppEra_Run2_2017_pp_on_XeXe.eras, Impl.ppEra_Run2_2017_trackingOnly.ppEra_Run2_2017_trackingOnly.eras, Impl.trackingOnlyEra_Run2_2018.trackingOnlyEra_Run2_2018.eras, Impl.trackingOnlyEra_Run2_2017.trackingOnlyEra_Run2_2017.eras, Impl.trackingOnlyEra_Run3.trackingOnlyEra_Run3.eras, Impl.trackingOnlyEra_Run2_2018_highBetaStar.trackingOnlyEra_Run2_2018_highBetaStar.eras, Scenario.Scenario.eras, options.HLTProcessOptions.eras, Utils.gtNameAndConnect(), Impl.hcalnzsEra_Run3_pp_on_PbPb.hcalnzsEra_Run3_pp_on_PbPb.isRepacked, Impl.hcalnzsEra_Run2_2018_pp_on_AA.hcalnzsEra_Run2_2018_pp_on_AA.isRepacked, Impl.hltScouting.hltScouting.isRepacked, Utils.nanoFlavours(), Impl.AlCaPhiSymEcal_Nano.AlCaPhiSymEcal_Nano.promptCustoms, Impl.HeavyIons.HeavyIons.promptCustoms, Impl.AlCaNano.AlCaNano.promptCustoms, Impl.hltScouting.hltScouting.promptCustoms, Impl.AlCaNano.AlCaNano.promptModifiers, Impl.hltScouting.hltScouting.promptModifiers, Impl.hcalnzs.hcalnzs.recoSeq, Impl.cosmics.cosmics.recoSeq, Impl.AlCaPhiSymEcal_Nano.AlCaPhiSymEcal_Nano.recoSeq, Impl.hcalnzsEra_Run2_2018.hcalnzsEra_Run2_2018.recoSeq, Impl.hcalnzsEra_Run2_2016.hcalnzsEra_Run2_2016.recoSeq, Impl.hcalnzsEra_Run3.hcalnzsEra_Run3.recoSeq, Impl.hcalnzsEra_Run2_25ns.hcalnzsEra_Run2_25ns.recoSeq, Impl.hcalnzsEra_Run2_2018_highBetaStar.hcalnzsEra_Run2_2018_highBetaStar.recoSeq, Impl.hcalnzsEra_Run2_2017.hcalnzsEra_Run2_2017.recoSeq, Impl.HeavyIons.HeavyIons.recoSeq, Impl.AlCaNano.AlCaNano.recoSeq, Impl.hltScouting.hltScouting.recoSeq, Utils.stepSKIMPRODUCER(), and str.

35  def promptReco(self, globalTag, **args):
36  """
37  _promptReco_
38 
39  Proton collision data taking prompt reco with input HLT scouting data
40 
41  """
42 
43  options = Options()
44  options.__dict__.update(defaultOptions.__dict__)
45  options.scenario = self.cbSc
46 
47  if 'nThreads' in args:
48  options.nThreads = args['nThreads']
49 
50  PhysicsSkimStep = ''
51  if 'PhysicsSkims' in args:
52  PhysicsSkimStep = stepSKIMPRODUCER(args['PhysicsSkims'])
53 
54  miniAODStep = ''
55  nanoAODStep = ''
56 
57  if 'outputs' in args:
58  outputs = []
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'])
67  else:
68  nanoAODStep = ',NANO:@Scout' # default to Scouting NANO
69  outputs.append(a)
70  else:
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
75 
76  if not 'customs' in args:
77  args['customs'] = []
78 
79  for c in self.promptCustoms:
80  args['customs'].append(c)
81  options.customisation_file = args['customs']
82 
83  options.isRepacked = args.get('repacked', self.isRepacked)
84 
85  options.step = ''
86  options.step += self.recoSeq + PhysicsSkimStep
87  options.step += miniAODStep + nanoAODStep
88 
89  dictIO(options, args)
90  options.conditions = gtNameAndConnect(globalTag, args)
91 
92  process = cms.Process('HLTSCOUT', cms.ModifierChain(self.eras, self.promptModifiers))
93  cb = ConfigBuilder(options, process = process, with_output = True)
94 
95  # Input source
96  process.source = cms.Source("PoolSource",
97  fileNames = cms.untracked.vstring()
98  )
99 
100  cb.prepare()
101 
102  addMonitoring(process)
103 
104  return process
105 
def stepSKIMPRODUCER(PhysicsSkims)
Definition: Utils.py:24
def gtNameAndConnect(globalTag, args)
Definition: Utils.py:149
def nanoFlavours(flavours)
Definition: Utils.py:135
def dictIO(options, args)
Definition: Utils.py:121
def addMonitoring(process)
Definition: Utils.py:38
#define str(s)

Member Data Documentation

◆ cbSc

◆ isRepacked

◆ promptCustoms

Impl.hltScouting.hltScouting.promptCustoms

◆ promptModifiers

Impl.hltScouting.hltScouting.promptModifiers

Definition at line 27 of file hltScouting.py.

Referenced by Impl.hltScouting.hltScouting.promptReco(), and Reco.Reco.promptReco().

◆ recoSeq

Impl.hltScouting.hltScouting.recoSeq