From 746d609ca0b41d58f7f80f456afc82b0f1e6a94a Mon Sep 17 00:00:00 2001
From: Tadej Novak <tadej.novak@cern.ch>
Date: Tue, 14 Sep 2021 18:16:54 +0200
Subject: [PATCH] Move RDO merge skeleton under Simulation domain

---
 .../SimuJobTransforms}/scripts/RDOMerge_tf.py               | 6 ++----
 .../SimuJobTransforms/share/skeleton.RDOMerge.py            | 0
 Tools/PyJobTransforms/python/trfArgClasses.py               | 2 +-
 Tools/PyJobTransforms/scripts/Merge_tf.py                   | 5 ++++-
 4 files changed, 7 insertions(+), 6 deletions(-)
 rename {Reconstruction/RecJobTransforms => Simulation/SimuJobTransforms}/scripts/RDOMerge_tf.py (77%)
 rename Reconstruction/RecJobTransforms/share/skeleton.MergeRDO_tf.py => Simulation/SimuJobTransforms/share/skeleton.RDOMerge.py (100%)

diff --git a/Reconstruction/RecJobTransforms/scripts/RDOMerge_tf.py b/Simulation/SimuJobTransforms/scripts/RDOMerge_tf.py
similarity index 77%
rename from Reconstruction/RecJobTransforms/scripts/RDOMerge_tf.py
rename to Simulation/SimuJobTransforms/scripts/RDOMerge_tf.py
index a41d18a34a26..ff8e0ddf1095 100755
--- a/Reconstruction/RecJobTransforms/scripts/RDOMerge_tf.py
+++ b/Simulation/SimuJobTransforms/scripts/RDOMerge_tf.py
@@ -13,12 +13,11 @@ from PyJobTransforms.transform import transform
 from PyJobTransforms.trfExe import athenaExecutor
 from PyJobTransforms.trfArgs import addAthenaArguments, addDetectorArguments
 from PyJobTransforms.trfDecorators import stdTrfExceptionHandler, sigUsrStackTrace
-from RecJobTransforms.recTransformUtils import addCommonRecTrfArgs
 from SimuJobTransforms.simTrfArgs import addForwardDetTrfArgs
 
 import PyJobTransforms.trfArgClasses as trfArgClasses
 
-ListOfDefaultPositionalKeys=['--AFPOn', '--ALFAOn', '--DBRelease', '--FwdRegionOn', '--LucidOn', '--ZDCOn', '--amiConfig', '--amiMetadataTag', '--asetup', '--athena', '--athenaopts', '--autoConfiguration', '--beamType', '--checkEventCount', '--command', '--conditionsTag', '--env', '--eventAcceptanceEfficiency', '--execOnly', '--geometryVersion', '--ignoreErrors', '--ignoreFilters', '--ignorePatterns', '--inputRDOFile', '--maxEvents', '--noimf', '--notcmalloc', '--outputRDO_MRGFile', '--postExec', '--postInclude', '--preExec', '--preInclude', '--reportName', '--runNumber', '--showGraph', '--showPath', '--showSteps', '--skipEvents', '--skipFileValidation', '--skipInputFileValidation', '--skipOutputFileValidation']
+ListOfDefaultPositionalKeys=['--AFPOn', '--ALFAOn', '--DBRelease', '--FwdRegionOn', '--LucidOn', '--ZDCOn', '--amiConfig', '--amiMetadataTag', '--asetup', '--athena', '--athenaopts', '--beamType', '--checkEventCount', '--command', '--conditionsTag', '--env', '--eventAcceptanceEfficiency', '--execOnly', '--geometryVersion', '--ignoreErrors', '--ignoreFilters', '--ignorePatterns', '--inputRDOFile', '--maxEvents', '--noimf', '--notcmalloc', '--outputRDO_MRGFile', '--postExec', '--postInclude', '--preExec', '--preInclude', '--reportName', '--runNumber', '--showGraph', '--showPath', '--showSteps', '--skipEvents', '--skipFileValidation', '--skipInputFileValidation', '--skipOutputFileValidation']
 
 @stdTrfExceptionHandler
 @sigUsrStackTrace
@@ -36,7 +35,7 @@ def main():
 
 def getTransform():
     executorSet = set()
-    executorSet.add(athenaExecutor(name = 'RDOMerge', skeletonFile = 'RecJobTransforms/skeleton.MergeRDO_tf.py',
+    executorSet.add(athenaExecutor(name = 'RDOMerge', skeletonFile = 'SimuJobTransforms/skeleton.RDOMerge.py',
                                    inData = ['RDO'], outData = ['RDO_MRG']))
 
     trf = transform(executor = executorSet)
@@ -44,7 +43,6 @@ def getTransform():
     addAthenaArguments(trf.parser)
     addDetectorArguments(trf.parser)
     addForwardDetTrfArgs(trf.parser)
-    addCommonRecTrfArgs(trf.parser)
     addMyArgs(trf.parser)
     return trf
 
diff --git a/Reconstruction/RecJobTransforms/share/skeleton.MergeRDO_tf.py b/Simulation/SimuJobTransforms/share/skeleton.RDOMerge.py
similarity index 100%
rename from Reconstruction/RecJobTransforms/share/skeleton.MergeRDO_tf.py
rename to Simulation/SimuJobTransforms/share/skeleton.RDOMerge.py
diff --git a/Tools/PyJobTransforms/python/trfArgClasses.py b/Tools/PyJobTransforms/python/trfArgClasses.py
index 5b6c6f97b3a8..47bbcd90e8a6 100644
--- a/Tools/PyJobTransforms/python/trfArgClasses.py
+++ b/Tools/PyJobTransforms/python/trfArgClasses.py
@@ -1469,7 +1469,7 @@ class argRDOFile(argPOOLFile):
         myDataDictionary = {'RDO' : argHITSFile(inputs, type=self.type, io='input'),
                             'RDO_MRG' : argHITSFile(output, type=self.type, io='output')}
         myMergeConf = executorConfig(myargdict, myDataDictionary)
-        myMerger = athenaExecutor(name = 'RDOMergeAthenaMP{0}'.format(counter), skeletonFile = 'RecJobTransforms/skeleton.MergeRDO_tf.py',
+        myMerger = athenaExecutor(name = 'RDOMergeAthenaMP{0}'.format(counter), skeletonFile = 'SimuJobTransforms/skeleton.RDOMerge.py',
                                   conf=myMergeConf, 
                                   inData=set(['RDO']), outData=set(['RDO_MRG']), disableMP=True)
         myMerger.doAll(input=set(['RDO']), output=set(['RDO_MRG']))
diff --git a/Tools/PyJobTransforms/scripts/Merge_tf.py b/Tools/PyJobTransforms/scripts/Merge_tf.py
index 38e180005331..1971051cd331 100755
--- a/Tools/PyJobTransforms/scripts/Merge_tf.py
+++ b/Tools/PyJobTransforms/scripts/Merge_tf.py
@@ -49,7 +49,7 @@ def getTransform():
                                    inData = ['AOD_MRG'], outData = ['TAG'],))
     executorSet.add(tagMergeExecutor(name = 'TAGFileMerge', exe = 'CollAppend', inData = set(['TAG']), outData = set(['TAG_MRG'])))
     executorSet.add(DQMergeExecutor(name = 'DQHistogramMerge', inData = [('HIST_ESD', 'HIST_AOD'), 'HIST'], outData = ['HIST_MRG']))
-    executorSet.add(athenaExecutor(name = 'RDOMerge', skeletonFile = 'RecJobTransforms/skeleton.MergeRDO_tf.py',
+    executorSet.add(athenaExecutor(name = 'RDOMerge', skeletonFile = 'SimuJobTransforms/skeleton.RDOMerge.py',
                                    inData = ['RDO'], outData = ['RDO_MRG']))
     executorSet.add(bsMergeExecutor(name = 'RAWFileMerge', exe = 'file_merging', inData = set(['BS']), outData = set(['BS_MRG'])))
     executorSet.add(athenaExecutor(name = 'EVNTMerge', skeletonFile = 'PyJobTransforms/skeleton.EVNTMerge.py',inData = ['EVNT'], outData = ['EVNT_MRG']))
@@ -139,6 +139,9 @@ def addMyArgs(parser):
     parser.add_argument('--outputRDO_MRGFile', '--outputRDOFile', 
                         type=trfArgClasses.argFactory(trfArgClasses.argRDOFile, io='output'),
                         help='Output merged RDO file', group='RDOMerge_tf')
+    parser.add_argument('--PileUpPresampling',
+                        type=trfArgClasses.argFactory(trfArgClasses.argBool),
+                        help='Run digitization with pile-up presampling configuration.', group='RDOMerge_tf')
 
     parser.defineArgGroup('RAWMerge_tf', 'RAWMerge specific options')
     parser.add_argument('--inputBSFile', nargs='+', 
-- 
GitLab