From d8fd7e3d12e2c0b5029038c9f68cc984c080973b Mon Sep 17 00:00:00 2001
From: Antonio Sbrizzi <Antonio.Sbrizzi@cern.ch>
Date: Fri, 23 May 2014 13:23:22 +0200
Subject: [PATCH] store LUCID digits and rawdata in RDO to ESD step
 (ForwardRec-00-02-00)

---
 ForwardDetectors/ForwardRec/cmt/requirements  | 11 +++++
 .../AFP_Rec_OutputItemList_jobOptions.py      |  9 ++++
 .../share/ALFARec_OuputItemList_jobOptions.py | 19 ++++++++
 .../ForwardRec/share/ForwardRec_jobOptions.py | 43 +++++++++++++++++++
 .../ForwardRec/share/LUCID_Rec_jobOptions.py  | 13 ++++++
 5 files changed, 95 insertions(+)
 create mode 100644 ForwardDetectors/ForwardRec/cmt/requirements
 create mode 100644 ForwardDetectors/ForwardRec/share/AFP_Rec_OutputItemList_jobOptions.py
 create mode 100644 ForwardDetectors/ForwardRec/share/ALFARec_OuputItemList_jobOptions.py
 create mode 100644 ForwardDetectors/ForwardRec/share/ForwardRec_jobOptions.py
 create mode 100644 ForwardDetectors/ForwardRec/share/LUCID_Rec_jobOptions.py

diff --git a/ForwardDetectors/ForwardRec/cmt/requirements b/ForwardDetectors/ForwardRec/cmt/requirements
new file mode 100644
index 00000000000..0af9ae88e40
--- /dev/null
+++ b/ForwardDetectors/ForwardRec/cmt/requirements
@@ -0,0 +1,11 @@
+author			Peter Steinberg	<peter.steinberg@bnl.gov>
+private
+package ForwardRec
+
+use AtlasReconstructionRunTime  AtlasReconstructionRunTime-* -no_auto_imports
+use AtlasPolicy                 AtlasPolicy-*
+
+
+branches run 
+apply_pattern declare_joboptions files="*.py"
+
diff --git a/ForwardDetectors/ForwardRec/share/AFP_Rec_OutputItemList_jobOptions.py b/ForwardDetectors/ForwardRec/share/AFP_Rec_OutputItemList_jobOptions.py
new file mode 100644
index 00000000000..05334ad060e
--- /dev/null
+++ b/ForwardDetectors/ForwardRec/share/AFP_Rec_OutputItemList_jobOptions.py
@@ -0,0 +1,9 @@
+AFP_ItemList=[]
+
+AFP_ItemList.append("AFP_TDSimHitCollection#AFP_TDSimHitCollection")
+AFP_ItemList.append("AFP_SIDSimHitCollection#AFP_SIDSimHitCollection")
+#AFP_ItemList.append("AFP_RawDataContainer#AFP_RawData")
+AFP_ItemList.append("AFP_TDDigiCollection#AFP_TDDigiCollection")
+AFP_ItemList.append("AFP_SiDigiCollection#AFP_SiDigiCollection")
+AFP_ItemList.append("AFP_TDLocRecoEvCollection#AFP_TDLocRecoEvCollection")
+AFP_ItemList.append("AFP_SIDLocRecoEvCollection#AFP_SIDLocRecoEvCollection")
diff --git a/ForwardDetectors/ForwardRec/share/ALFARec_OuputItemList_jobOptions.py b/ForwardDetectors/ForwardRec/share/ALFARec_OuputItemList_jobOptions.py
new file mode 100644
index 00000000000..d74a538d3c1
--- /dev/null
+++ b/ForwardDetectors/ForwardRec/share/ALFARec_OuputItemList_jobOptions.py
@@ -0,0 +1,19 @@
+AlfaItemList=[]
+
+#AlfaItemList.ItemList+= ["ALFA_HitCollection#*"]
+#AlfaItemList.ItemList+= ["ALFA_ODHitCollection#*"]
+#AlfaItemList.ItemList+= ["ALFA_DigitCollection#*"]
+#AlfaItemList.ItemList+= ["ALFA_ODDigitCollection#*"]
+#AlfaItemList.ItemList+= ["ALFA_RawDataContainer#*"]
+
+
+
+AlfaItemList.append("ALFA_DigitCollection#ALFA_DigitCollection")
+AlfaItemList.append("ALFA_ODDigitCollection#ALFA_ODDigitCollection")
+#AlfaItemList.append("ALFA_RawDataContainer#ALFA_RawDataContainer")
+AlfaItemList.append("ALFA_RawDataContainer#ALFA_RawData")
+AlfaItemList.append("ALFA_LocRecEvCollection#ALFA_LocRecEvCollection")
+AlfaItemList.append("ALFA_LocRecODEvCollection#ALFA_LocRecODEvCollection")
+AlfaItemList.append("ALFA_LocRecCorrEvCollection#ALFA_LocRecCorrEvCollection")
+AlfaItemList.append("ALFA_LocRecCorrODEvCollection#ALFA_LocRecCorrODEvCollection")
+AlfaItemList.append("ALFA_CLinkEvent#ALFA_CLinkEvent")
diff --git a/ForwardDetectors/ForwardRec/share/ForwardRec_jobOptions.py b/ForwardDetectors/ForwardRec/share/ForwardRec_jobOptions.py
new file mode 100644
index 00000000000..c1e456b3cce
--- /dev/null
+++ b/ForwardDetectors/ForwardRec/share/ForwardRec_jobOptions.py
@@ -0,0 +1,43 @@
+
+include.block ('ForwardRec/ForwardRec_jobOptions.py')
+
+from AthenaCommon.Resilience import treatException   
+from AthenaCommon.GlobalFlags  import globalflags
+from AthenaCommon.DetFlags import DetFlags
+from RecExConfig.RecFlags import rec
+
+if (rec.doLucid):
+  include ( "ForwardRec/LUCID_Rec_jobOptions.py" )
+
+#if (rec.doForwardDet and rec.doZdc):
+#  include ( "ZdcRec/ZdcRec_jobOptions.py" )
+
+if DetFlags.makeRIO.ZDC_on() and not rec.doWriteBS() : 
+    try:
+        from ZdcRec.ZdcRawChannelGetter import ZdcRawChannelGetter
+        ZdcRawChannelGetter()
+    except Exception:
+        treatException("Problem with ZdcRawChannelGetter. Switched off.")
+        DetFlags.makeRIO.ZDC_setOff()
+
+if rec.doAlfa() and rec.doESD():
+    if DetFlags.readRDOBS.ALFA_on():
+        #Needed for real-data reconstruction:
+        from ALFA_RawDataByteStreamCnv.ALFA_RawDataByteStreamCnvConf import ALFA_RawDataProvider
+        topSequence+=ALFA_RawDataProvider()
+
+        from ALFA_Raw2Digit.ALFA_Raw2DigitConf import ALFA_Raw2Digit
+        
+        topSequence+=ALFA_Raw2Digit(MeasuredDataType = "tunnel")
+        pass
+
+    #For both, real and simulated data:
+    #from IOVDbSvc.CondDB import conddb
+    #conddb.addFolder("FWD","/FWD/ALFA/position_calibration<tag>FWDALFAposition_calibration-run373-v2</tag>")
+
+    include("ALFA_LocRec/ALFA_LocRec_joboption.py")
+    include("ALFA_LocRecCorr/ALFA_LocRecCorr_joboption.py")
+    include("ALFA_CLinkAlg/ALFA_CLinkAlg_joboption.py")        
+
+if rec.doAFP() and rec.doESD():
+    include("AFP_LocReco/AFP_LocReco_joboption.py")
diff --git a/ForwardDetectors/ForwardRec/share/LUCID_Rec_jobOptions.py b/ForwardDetectors/ForwardRec/share/LUCID_Rec_jobOptions.py
new file mode 100644
index 00000000000..bc16c161c88
--- /dev/null
+++ b/ForwardDetectors/ForwardRec/share/LUCID_Rec_jobOptions.py
@@ -0,0 +1,13 @@
+from AthenaCommon.Logging import logging
+mlog = logging.getLogger( 'RDOtoESD_Lucid: ' )
+
+from AthenaCommon.GlobalFlags import globalflags
+from RecExConfig.RecFlags import rec
+from RecExConfig.ObjKeyStore import objKeyStore
+
+if rec.doESD: 
+  if DetFlags.readRDOPool.Lucid_on():
+    include("LUCID_RawDataByteStreamCnv/LUCID_DigitRawDataCnv.py")
+  if globalflags.DataSource()=='geant4':
+    objKeyStore.addStreamESD("LUCID_DigitContainer", "Lucid_Digits")
+  objKeyStore.addStreamESD("LUCID_RawDataContainer", "Lucid_RawData")
-- 
GitLab