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 212 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().

213  def alcaHarvesting(self, globalTag, datasetName, **args):
214  """
215  _alcaHarvesting_
216 
217  Proton collisions data taking AlCa Harvesting
218 
219  """
220  skims = []
221  if 'skims' in args:
222  print 'here'
223  skims = args['skims']
224 
225 
226  if 'alcapromptdataset' in args:
227  skims.append('@'+args['alcapromptdataset'])
228 
229  if len(skims) == 0: return None
230  options = defaultOptions
231  options.scenario = self.cbSc if hasattr(self,'cbSc') else self.__class__.__name__
232  options.step = "ALCAHARVEST:"+('+'.join(skims))
233  options.name = "ALCAHARVEST"
234  options.conditions = gtNameAndConnect(globalTag, args)
235 
236  process = cms.Process("ALCAHARVEST")
237  process.source = cms.Source("PoolSource")
238  configBuilder = ConfigBuilder(options, process = process)
239  configBuilder.prepare()
240 
241  #
242  # customise process for particular job
243  #
244  process.source.processingMode = cms.untracked.string('RunsAndLumis')
245  process.source.fileNames = cms.untracked(cms.vstring())
246  process.maxEvents.input = -1
247  process.dqmSaver.workflow = datasetName
248 
249  return process
def alcaHarvesting
Definition: Reco.py:212
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 140 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().

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

Proton collisions data taking DQM Harvesting

Definition at line 190 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().

191  def dqmHarvesting(self, datasetName, runNumber, globalTag, **args):
192  """
193  _dqmHarvesting_
194 
195  Proton collisions data taking DQM Harvesting
196 
197  """
198  options = defaultOptions
199  options.scenario = self.cbSc
200  options.step = "HARVESTING"+dqmSeq(args,':dqmHarvesting')
201  options.name = "EDMtoMEConvert"
202  options.conditions = gtNameAndConnect(globalTag, args)
203 
204  process = cms.Process("HARVESTING")
205  process.source = dqmIOSource(args)
206  configBuilder = ConfigBuilder(options, process = process)
207  configBuilder.prepare()
208 
209  harvestingMode(process,datasetName,args,rANDl=False)
210  return process
211 
def dqmSeq
Definition: Utils.py:116
def dqmHarvesting
Definition: Reco.py:190
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 59 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().

59 
60  def expressProcessing(self, globalTag, **args):
61  """
62  _expressProcessing_
63 
64  Proton collision data taking express processing
65 
66  """
67  skims = args['skims']
68  # 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
69  pclWkflws = [x for x in skims if "PromptCalibProd" in x]
70  for wfl in pclWkflws:
71  skims.remove(wfl)
72 
73  step = stepALCAPRODUCER(skims)
74  dqmStep= dqmSeq(args,'')
75  options = Options()
76  options.__dict__.update(defaultOptions.__dict__)
77  options.scenario = self.cbSc
78  options.step = 'RAW2DIGI,L1Reco,RECO'+step+',DQM'+dqmStep+',ENDJOB'
79  dictIO(options,args)
80  options.conditions = gtNameAndConnect(globalTag, args)
81  options.filein = 'tobeoverwritten.xyz'
82  if 'inputSource' in args:
83  options.filetype = args['inputSource']
84  process = cms.Process('RECO')
85  cb = ConfigBuilder(options, process = process, with_output = True, with_input = True)
86 
87  cb.prepare()
88 
89  addMonitoring(process)
90 
91  return process
92 
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:59
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  options.step = 'RAW2DIGI,L1Reco,RECO'+self.recoSeq+step+',DQM'+dqmStep+',ENDJOB'
43  dictIO(options,args)
44  options.conditions = gtNameAndConnect(globalTag, args)
45 
46  process = cms.Process('RECO')
47  cb = ConfigBuilder(options, process = process, with_output = True)
48 
49  # Input source
50  process.source = cms.Source("PoolSource",
51  fileNames = cms.untracked.vstring()
52  )
53  cb.prepare()
54 
55  addMonitoring(process)
56 
57  return process
58 
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 250 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().

251  def skimming(self, skims, globalTag,**options):
252  """
253  _skimming_
254 
255  skimming method overload for the prompt skiming
256 
257  """
258  options = defaultOptions
259  options.scenario = self.cbSc if hasattr(self,'cbSc') else self.__class__.__name__
260  options.step = "SKIM:"+('+'.join(skims))
261  options.name = "SKIM"
262  options.conditions = gtNameAndConnect(globalTag, args)
263  process = cms.Process("SKIM")
264  process.source = cms.Source("PoolSource")
265  configBuilder = ConfigBuilder(options, process = process)
266  configBuilder.prepare()
267 
268  return process
def skimming
Definition: Reco.py:250
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 93 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().

93 
94  def visualizationProcessing(self, globalTag, **args):
95  """
96  _visualizationProcessing_
97 
98  """
99 
100  options = Options()
101  options.__dict__.update(defaultOptions.__dict__)
102  options.scenario = self.cbSc
103  # FIXME: do we need L1Reco here?
104  options.step =''
105  if 'preFilter' in args:
106  options.step +='FILTER:'+args['preFilter']+','
107 
108  options.step += 'RAW2DIGI,L1Reco,RECO,ENDJOB'
109 
110 
111  dictIO(options,args)
112  options.conditions = gtNameAndConnect(globalTag, args)
113  options.timeoutOutput = True
114  # FIXME: maybe can go...maybe not
115  options.filein = 'tobeoverwritten.xyz'
116 
117  if 'inputSource' in args:
118  options.filetype = args['inputSource']
119  else:
120  # this is the default as this is what is needed on the OnlineCluster
121  options.filetype = 'DQMDAQ'
122 
123  print "Using %s source"%options.filetype
124 
125  process = cms.Process('RECO')
126  cb = ConfigBuilder(options, process = process, with_output = True, with_input = True)
127 
128  cb.prepare()
129 
130 
131 
132 
133  # FIXME: not sure abou this one...drop for the moment
134  # addMonitoring(process)
135 
136  return process
137 
138 
139 
def gtNameAndConnect
Definition: Utils.py:122
def visualizationProcessing
Definition: Reco.py:93
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().