CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Public Attributes
Reco.Reco Class Reference
Inheritance diagram for Reco.Reco:

Public Member Functions

def __init__
 
def alcaHarvesting
 
def alcaSkim
 
def dqmHarvesting
 
def expressProcessing
 
def promptReco
 
def skimming
 
def visualizationProcessing
 

Public Attributes

 cbSc
 
 recoSeq
 

Detailed Description

Definition at line 17 of file Reco.py.

Constructor & Destructor Documentation

def Reco.Reco.__init__ (   self)

Definition at line 18 of file Reco.py.

18 
19  def __init__(self):
20  self.recoSeq=''
self.cbSc=self.__class__.__name__
def __init__
Definition: Reco.py:18
recoSeq
Definition: Reco.py:19
cbSc
Definition: Reco.py:20

Member Function Documentation

def Reco.Reco.alcaHarvesting (   self,
  globalTag,
  datasetName,
  args 
)
_alcaHarvesting_

Proton collisions data taking AlCa Harvesting

Definition at line 225 of file Reco.py.

References Impl.cosmicsRun2.cosmicsRun2.cbSc, Impl.hcalnzs.hcalnzs.cbSc, Impl.hcalnzsRun2.hcalnzsRun2.cbSc, Impl.ppRun2.ppRun2.cbSc, Reco.Reco.cbSc, Utils.gtNameAndConnect(), and join().

226  def alcaHarvesting(self, globalTag, datasetName, **args):
227  """
228  _alcaHarvesting_
229 
230  Proton collisions data taking AlCa Harvesting
231 
232  """
233  skims = []
234  if 'skims' in args:
235  print 'here'
236  skims = args['skims']
237 
238 
239  if 'alcapromptdataset' in args:
240  skims.append('@'+args['alcapromptdataset'])
241 
242  if len(skims) == 0: return None
243  options = defaultOptions
244  options.scenario = self.cbSc if hasattr(self,'cbSc') else self.__class__.__name__
245  options.step = "ALCAHARVEST:"+('+'.join(skims))
246  options.name = "ALCAHARVEST"
247  options.conditions = gtNameAndConnect(globalTag, args)
248 
249  process = cms.Process("ALCAHARVEST")
250  process.source = cms.Source("PoolSource")
251  configBuilder = ConfigBuilder(options, process = process)
252  configBuilder.prepare()
253 
254  #
255  # customise process for particular job
256  #
257  process.source.processingMode = cms.untracked.string('RunsAndLumis')
258  process.source.fileNames = cms.untracked(cms.vstring())
259  process.maxEvents.input = -1
260  process.dqmSaver.workflow = datasetName
261 
262  return process
def alcaHarvesting
Definition: Reco.py:225
def gtNameAndConnect
Definition: Utils.py:122
static std::string join(char **cmd)
Definition: RemoteFile.cc:18
cbSc
Definition: Reco.py:20
def Reco.Reco.alcaSkim (   self,
  skims,
  args 
)
_alcaSkim_

AlcaReco processing & skims for proton collisions

Definition at line 153 of file Reco.py.

References Impl.cosmicsRun2.cosmicsRun2.cbSc, Impl.hcalnzs.hcalnzs.cbSc, Impl.hcalnzsRun2.hcalnzsRun2.cbSc, Impl.ppRun2.ppRun2.cbSc, Reco.Reco.cbSc, alcazmumu_cfi.filter, and join().

154  def alcaSkim(self, skims, **args):
155  """
156  _alcaSkim_
157 
158  AlcaReco processing & skims for proton collisions
159 
160  """
161 
162  step = ""
163  pclWflws = [x for x in skims if "PromptCalibProd" in x]
164  skims = filter(lambda x: x not in pclWflws, skims)
165 
166  if len(pclWflws):
167  step += 'ALCA:'+('+'.join(pclWflws))
168 
169  if len( skims ) > 0:
170  if step != "":
171  step += ","
172  step += "ALCAOUTPUT:"+('+'.join(skims))
173 
174  options = Options()
175  options.__dict__.update(defaultOptions.__dict__)
176  options.scenario = self.cbSc
177  options.step = step
178  options.conditions = args['globaltag'] if 'globaltag' in args else 'None'
179  if args.has_key('globalTagConnect') and args['globalTagConnect'] != '':
180  options.conditions += ','+args['globalTagConnect']
181 
182  options.triggerResultsProcess = 'RECO'
183 
184  process = cms.Process('ALCA')
185  cb = ConfigBuilder(options, process = process)
186 
187  # Input source
188  process.source = cms.Source(
189  "PoolSource",
190  fileNames = cms.untracked.vstring()
191  )
192 
193  cb.prepare()
194 
195  # FIXME: dirty hack..any way around this?
196  # Tier0 needs the dataset used for ALCAHARVEST step to be a different data-tier
197  for wfl in pclWflws:
198  methodToCall = getattr(process, 'ALCARECOStream'+wfl)
199  methodToCall.dataset.dataTier = cms.untracked.string('ALCAPROMPT')
200 
201  return process
202 
static std::string join(char **cmd)
Definition: RemoteFile.cc:18
def alcaSkim
Definition: Reco.py:153
cbSc
Definition: Reco.py:20
def Reco.Reco.dqmHarvesting (   self,
  datasetName,
  runNumber,
  globalTag,
  args 
)
_dqmHarvesting_

Proton collisions data taking DQM Harvesting

Definition at line 203 of file Reco.py.

References Impl.cosmicsRun2.cosmicsRun2.cbSc, Impl.hcalnzs.hcalnzs.cbSc, Impl.hcalnzsRun2.hcalnzsRun2.cbSc, Impl.ppRun2.ppRun2.cbSc, Reco.Reco.cbSc, Utils.dqmIOSource(), Utils.dqmSeq(), Utils.gtNameAndConnect(), and Utils.harvestingMode().

204  def dqmHarvesting(self, datasetName, runNumber, globalTag, **args):
205  """
206  _dqmHarvesting_
207 
208  Proton collisions data taking DQM Harvesting
209 
210  """
211  options = defaultOptions
212  options.scenario = self.cbSc
213  options.step = "HARVESTING"+dqmSeq(args,':dqmHarvesting')
214  options.name = "EDMtoMEConvert"
215  options.conditions = gtNameAndConnect(globalTag, args)
216 
217  process = cms.Process("HARVESTING")
218  process.source = dqmIOSource(args)
219  configBuilder = ConfigBuilder(options, process = process)
220  configBuilder.prepare()
221 
222  harvestingMode(process,datasetName,args,rANDl=False)
223  return process
224 
def dqmSeq
Definition: Utils.py:116
def dqmHarvesting
Definition: Reco.py:203
def gtNameAndConnect
Definition: Utils.py:122
def dqmIOSource
Definition: Utils.py:88
def harvestingMode
Definition: Utils.py:99
cbSc
Definition: Reco.py:20
def Reco.Reco.expressProcessing (   self,
  globalTag,
  args 
)
_expressProcessing_

Proton collision data taking express processing

Definition at line 72 of file Reco.py.

References Utils.addMonitoring(), Impl.hcalnzsRun2.hcalnzsRun2.cbSc, Impl.cosmicsRun2.cosmicsRun2.cbSc, Impl.hcalnzs.hcalnzs.cbSc, Impl.ppRun2.ppRun2.cbSc, Reco.Reco.cbSc, Utils.dictIO(), Utils.dqmSeq(), Utils.gtNameAndConnect(), and Utils.stepALCAPRODUCER().

72 
73  def expressProcessing(self, globalTag, **args):
74  """
75  _expressProcessing_
76 
77  Proton collision data taking express processing
78 
79  """
80  skims = args['skims']
81  # the AlCaReco skims for PCL should only run during AlCaSkimming step which uses the same configuration on the Tier0 side, for this reason we drop them here
82  pclWkflws = [x for x in skims if "PromptCalibProd" in x]
83  for wfl in pclWkflws:
84  skims.remove(wfl)
85 
86  step = stepALCAPRODUCER(skims)
87  dqmStep= dqmSeq(args,'')
88  options = Options()
89  options.__dict__.update(defaultOptions.__dict__)
90  options.scenario = self.cbSc
91  options.step = 'RAW2DIGI,L1Reco,RECO'+step+',DQM'+dqmStep+',ENDJOB'
92  dictIO(options,args)
93  options.conditions = gtNameAndConnect(globalTag, args)
94  options.filein = 'tobeoverwritten.xyz'
95  if 'inputSource' in args:
96  options.filetype = args['inputSource']
97  process = cms.Process('RECO')
98  cb = ConfigBuilder(options, process = process, with_output = True, with_input = True)
99 
100  cb.prepare()
101 
102  addMonitoring(process)
103 
104  return process
105 
def dqmSeq
Definition: Utils.py:116
def stepALCAPRODUCER
Definition: Utils.py:9
def addMonitoring
Definition: Utils.py:23
def gtNameAndConnect
Definition: Utils.py:122
def dictIO
Definition: Utils.py:108
cbSc
Definition: Reco.py:20
def expressProcessing
Definition: Reco.py:72
def Reco.Reco.promptReco (   self,
  globalTag,
  args 
)
_promptReco_

Proton collision data taking prompt reco

Definition at line 29 of file Reco.py.

References Utils.addMonitoring(), Impl.hcalnzs.hcalnzs.cbSc, Impl.hcalnzsRun2.hcalnzsRun2.cbSc, Impl.cosmicsRun2.cosmicsRun2.cbSc, Impl.ppRun2.ppRun2.cbSc, Reco.Reco.cbSc, Utils.dictIO(), Utils.dqmSeq(), Utils.gtNameAndConnect(), Impl.cosmicsRun2.cosmicsRun2.recoSeq, Impl.hcalnzsRun2.hcalnzsRun2.recoSeq, Impl.hcalnzs.hcalnzs.recoSeq, Impl.ppRun2.ppRun2.recoSeq, Reco.Reco.recoSeq, and Utils.stepALCAPRODUCER().

29 
30  def promptReco(self, globalTag, **args):
31  """
32  _promptReco_
33 
34  Proton collision data taking prompt reco
35 
36  """
37  step = stepALCAPRODUCER(args['skims'])
38  dqmStep= dqmSeq(args,'')
39  options = Options()
40  options.__dict__.update(defaultOptions.__dict__)
41  options.scenario = self.cbSc
42 
43  miniAODStep=''
44 
45 # if miniAOD is asked for - then retrieve the miniaod config
46  if 'outputs' in args:
47  for a in args['outputs']:
48  if a['dataTier'] == 'MINIAOD':
49  miniAODStep=',PAT'
50  options.runUnscheduled=True
51 
52 
53  options.step = 'RAW2DIGI,L1Reco,RECO'+self.recoSeq+step+miniAODStep+',DQM'+dqmStep+',ENDJOB'
54 
55 
56  dictIO(options,args)
57  options.conditions = gtNameAndConnect(globalTag, args)
58 
59  process = cms.Process('RECO')
60  cb = ConfigBuilder(options, process = process, with_output = True)
61 
62  # Input source
63  process.source = cms.Source("PoolSource",
64  fileNames = cms.untracked.vstring()
65  )
66  cb.prepare()
67 
68  addMonitoring(process)
69 
70  return process
71 
def dqmSeq
Definition: Utils.py:116
def stepALCAPRODUCER
Definition: Utils.py:9
def addMonitoring
Definition: Utils.py:23
def promptReco
Definition: Reco.py:29
def gtNameAndConnect
Definition: Utils.py:122
def dictIO
Definition: Utils.py:108
recoSeq
Definition: Reco.py:19
cbSc
Definition: Reco.py:20
def Reco.Reco.skimming (   self,
  skims,
  globalTag,
  options 
)
_skimming_

skimming method overload for the prompt skiming

Definition at line 263 of file Reco.py.

References Impl.cosmicsRun2.cosmicsRun2.cbSc, Impl.hcalnzs.hcalnzs.cbSc, Impl.hcalnzsRun2.hcalnzsRun2.cbSc, Impl.ppRun2.ppRun2.cbSc, Reco.Reco.cbSc, Utils.gtNameAndConnect(), and join().

264  def skimming(self, skims, globalTag,**options):
265  """
266  _skimming_
267 
268  skimming method overload for the prompt skiming
269 
270  """
271  options = defaultOptions
272  options.scenario = self.cbSc if hasattr(self,'cbSc') else self.__class__.__name__
273  options.step = "SKIM:"+('+'.join(skims))
274  options.name = "SKIM"
275  options.conditions = gtNameAndConnect(globalTag, args)
276  process = cms.Process("SKIM")
277  process.source = cms.Source("PoolSource")
278  configBuilder = ConfigBuilder(options, process = process)
279  configBuilder.prepare()
280 
281  return process
def skimming
Definition: Reco.py:263
def gtNameAndConnect
Definition: Utils.py:122
static std::string join(char **cmd)
Definition: RemoteFile.cc:18
cbSc
Definition: Reco.py:20
def Reco.Reco.visualizationProcessing (   self,
  globalTag,
  args 
)
_visualizationProcessing_

Definition at line 106 of file Reco.py.

References Impl.cosmicsRun2.cosmicsRun2.cbSc, Impl.hcalnzs.hcalnzs.cbSc, Impl.hcalnzsRun2.hcalnzsRun2.cbSc, Impl.ppRun2.ppRun2.cbSc, Reco.Reco.cbSc, Utils.dictIO(), and Utils.gtNameAndConnect().

107  def visualizationProcessing(self, globalTag, **args):
108  """
109  _visualizationProcessing_
110 
111  """
112 
113  options = Options()
114  options.__dict__.update(defaultOptions.__dict__)
115  options.scenario = self.cbSc
116  # FIXME: do we need L1Reco here?
117  options.step =''
118  if 'preFilter' in args:
119  options.step +='FILTER:'+args['preFilter']+','
120 
121  options.step += 'RAW2DIGI,L1Reco,RECO,ENDJOB'
122 
123 
124  dictIO(options,args)
125  options.conditions = gtNameAndConnect(globalTag, args)
126  options.timeoutOutput = True
127  # FIXME: maybe can go...maybe not
128  options.filein = 'tobeoverwritten.xyz'
129 
130  if 'inputSource' in args:
131  options.filetype = args['inputSource']
132  else:
133  # this is the default as this is what is needed on the OnlineCluster
134  options.filetype = 'DQMDAQ'
135 
136  print "Using %s source"%options.filetype
137 
138  process = cms.Process('RECO')
139  cb = ConfigBuilder(options, process = process, with_output = True, with_input = True)
140 
141  cb.prepare()
142 
143 
144 
145 
146  # FIXME: not sure abou this one...drop for the moment
147  # addMonitoring(process)
148 
149  return process
150 
151 
152 
def gtNameAndConnect
Definition: Utils.py:122
def visualizationProcessing
Definition: Reco.py:106
def dictIO
Definition: Utils.py:108
cbSc
Definition: Reco.py:20

Member Data Documentation

Reco.Reco.cbSc

Definition at line 20 of file Reco.py.

Referenced by Reco.Reco.alcaHarvesting(), Reco.Reco.alcaSkim(), Reco.Reco.dqmHarvesting(), Reco.Reco.expressProcessing(), Reco.Reco.promptReco(), Reco.Reco.skimming(), and Reco.Reco.visualizationProcessing().

Reco.Reco.recoSeq

Definition at line 19 of file Reco.py.

Referenced by Reco.Reco.promptReco().