CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
PCLHPbeamspot_custom.py
Go to the documentation of this file.
1 """
2 _Utils_
3 
4 Tools to customise the PCL workflow which computes beamspot from a dedicated express-like stream
5 
6 """
7 
8 def customise_HPbeamspot(process):
9 
10  # write to sqlite the HP tag and use the HP medatata for uploading it to the dropbox
11  # ByLumi
12  if ( hasattr(process,'PoolDBOutputService') and
13  hasattr(process,'pclMetadataWriter') and
14  hasattr(process,'ALCAHARVESTBeamSpotByLumi') ):
15  for onePset in process.PoolDBOutputService.toPut:
16  if onePset.record == 'BeamSpotObjectsRcdByLumi':
17  onePset.record = 'BeamSpotObjectsRcdHPByLumi'
18  onePset.tag = 'BeamSpotObjectHP_ByLumi'
19  for onePset in process.pclMetadataWriter.recordsToMap:
20  if onePset.record == 'BeamSpotObjectsRcdByLumi':
21  onePset.record = 'BeamSpotObjectsRcdHPByLumi'
22  if process.ALCAHARVESTBeamSpotByLumi.AlcaBeamSpotHarvesterParameters.outputRecordName == 'BeamSpotObjectsRcdByLumi':
23  process.ALCAHARVESTBeamSpotByLumi.AlcaBeamSpotHarvesterParameters.outputRecordName = 'BeamSpotObjectsRcdHPByLumi'
24  process.ALCAHARVESTBeamSpotByLumi.AlcaBeamSpotHarvesterParameters.DumpTxt = True
25  # ByRun
26  if ( hasattr(process,'PoolDBOutputService') and
27  hasattr(process,'pclMetadataWriter') and
28  hasattr(process,'ALCAHARVESTBeamSpotByRun') ):
29  for onePset in process.PoolDBOutputService.toPut:
30  if onePset.record == 'BeamSpotObjectsRcdByRun':
31  onePset.record = 'BeamSpotObjectsRcdHPByRun'
32  onePset.tag = 'BeamSpotObjectHP_ByRun'
33  for onePset in process.pclMetadataWriter.recordsToMap:
34  if onePset.record == 'BeamSpotObjectsRcdByRun':
35  onePset.record = 'BeamSpotObjectsRcdHPByRun'
36  if process.ALCAHARVESTBeamSpotByRun.AlcaBeamSpotHarvesterParameters.outputRecordName == 'BeamSpotObjectsRcdByRun':
37  process.ALCAHARVESTBeamSpotByRun.AlcaBeamSpotHarvesterParameters.outputRecordName = 'BeamSpotObjectsRcdHPByRun'
38 
39  # ALCARECOTkAlMinBiasTkAlDQM is part of the ALCARECO sequence we want and needs caloJets
40  # which are not available when running tracking only reco => remove it from the sequence
41  if hasattr(process,'ALCARECOTkAlMinBiasDQM') and 'ALCARECOTkAlMinBiasTkAlDQM' in process.ALCARECOTkAlMinBiasDQM.moduleNames() :
42  process.ALCARECOTkAlMinBiasDQM.remove(process.ALCARECOTkAlMinBiasTkAlDQM)
43 
44  return process