File indexing completed on 2024-04-06 12:03:31
0001
0002 """
0003 _pp_
0004
0005 Scenario supporting proton collisions
0006
0007 """
0008
0009 import os
0010 import sys
0011
0012 from Configuration.DataProcessing.Reco import Reco
0013 import FWCore.ParameterSet.Config as cms
0014 from Configuration.DataProcessing.Modifiers import modifyExpress
0015
0016 class pp(Reco):
0017 def __init__(self):
0018 Reco.__init__(self)
0019 self.recoSeq=''
0020 self.cbSc='pp'
0021 self.isRepacked=False
0022 self.promptCustoms= [ 'Configuration/DataProcessing/RecoTLR.customisePrompt' ]
0023 self.expressCustoms=[ ]
0024 self.alcaHarvCustoms=[]
0025 self.expressModifiers = modifyExpress
0026 self.visCustoms=[ ]
0027 self.visModifiers = modifyExpress
0028 """
0029 _pp_
0030
0031 Implement configuration building for data processing for proton
0032 collision data taking
0033
0034 """
0035
0036 def _setRepackedFlag(self,args):
0037 if not 'repacked' in args:
0038 args['repacked']= True
0039
0040 def promptReco(self, globalTag, **args):
0041 """
0042 _promptReco_
0043
0044 Proton collision data taking prompt reco
0045
0046 """
0047 if not 'skims' in args:
0048 args['skims']=['@allForPrompt']
0049
0050 if not 'customs' in args:
0051 args['customs']= [ ]
0052
0053 for c in self.promptCustoms:
0054 args['customs'].append(c)
0055
0056 if self.isRepacked:
0057 self._setRepackedFlag(args)
0058
0059 process = Reco.promptReco(self,globalTag, **args)
0060
0061 return process
0062
0063 def expressProcessing(self, globalTag, **args):
0064 """
0065 _expressProcessing_
0066
0067 Proton collision data taking express processing
0068
0069 """
0070 if not 'skims' in args:
0071 args['skims']=['@allForExpress']
0072
0073 if not 'customs' in args:
0074 args['customs']=[ ]
0075
0076 for c in self.expressCustoms:
0077 args['customs'].append(c)
0078
0079 if self.isRepacked:
0080 self._setRepackedFlag(args)
0081
0082 process = Reco.expressProcessing(self,globalTag, **args)
0083
0084 return process
0085
0086 def visualizationProcessing(self, globalTag, **args):
0087 """
0088 _visualizationProcessing_
0089
0090 Proton collision data taking visualization processing
0091
0092 """
0093 if not 'customs' in args:
0094 args['customs']=[ ]
0095
0096 for c in self.visCustoms:
0097 args['customs'].append(c)
0098
0099 if self.isRepacked:
0100 self._setRepackedFlag(args)
0101
0102 process = Reco.visualizationProcessing(self,globalTag, **args)
0103
0104 return process
0105
0106 def alcaHarvesting(self, globalTag, datasetName, **args):
0107 """
0108 _alcaHarvesting_
0109
0110 Proton collisions data taking AlCa Harvesting
0111
0112 """
0113
0114 if not 'customs' in args:
0115 args['customs']=[ ]
0116
0117 for c in self.alcaHarvCustoms:
0118 args['customs'].append(c)
0119
0120
0121 if not 'skims' in args and not 'alcapromptdataset' in args:
0122 args['skims']=['BeamSpotByRun',
0123 'BeamSpotByLumi',
0124 'SiStripQuality']
0125
0126 return Reco.alcaHarvesting(self, globalTag, datasetName, **args)