From 8a27ce09cebb47679d0567a91df1871f1de804a7 Mon Sep 17 00:00:00 2001
From: Eduardo Rodrigues <eduardo.rodrigues@cern.ch>
Date: Wed, 19 Jul 2017 15:37:57 +0000
Subject: [PATCH] Merge branch 'apearce-tesla-recsummary' into 'master'

Place Moore RecSummary in a stream-dependent location

See merge request !79
---
 Phys/Tesla/python/Tesla/Configuration.py | 37 +++++++++++++-----------
 1 file changed, 20 insertions(+), 17 deletions(-)

diff --git a/Phys/Tesla/python/Tesla/Configuration.py b/Phys/Tesla/python/Tesla/Configuration.py
index 70fed3599..4e75c123b 100644
--- a/Phys/Tesla/python/Tesla/Configuration.py
+++ b/Phys/Tesla/python/Tesla/Configuration.py
@@ -734,7 +734,8 @@ class Tesla(LHCbConfigurableUser):
         return trig1
 
     def _selReportsCheck(self, loc='Hlt2/SelReports'):
-        return TESCheck('Hlt2SelReportsCheck', Inputs=[loc], Stop=False)
+        name = '{0}Check'.format(loc.replace('/', ''))
+        return TESCheck(name, Inputs=[loc], Stop=False)
 
     def _configureOutputTurboSP(self):
         trigger_lines = self.getProp('TriggerLines')
@@ -778,16 +779,6 @@ class Tesla(LHCbConfigurableUser):
         packed_data_decoder = HltPackedDataDecoder('Hlt2PackedDataDecoder')
         decoders_seq.Members.append(packed_data_decoder)
 
-        # Decode the RecSummary from the SelReports to /Event/Rec/Summary
-        recsummary_decoder = RecSummaryFromSelReports()
-        recsummary_decoder.InputHltSelReportsLocation = 'Hlt2/SelReports'
-        decoders_seq.Members.append(GaudiSequencer(
-            'RecSummarySeq', Members=[
-                self._selReportsCheck(),
-                recsummary_decoder,
-            ]
-        ))
-
         prpacking = PersistRecoConf.PersistRecoPacking(datatype)
         prunpackers = prpacking.unpackers()
 
@@ -887,6 +878,23 @@ class Tesla(LHCbConfigurableUser):
         if output_prefix or self.getProp('HDRFilter'):
             stream_seq.Members.append(filter)
 
+        tes_root = '/Event'
+        # /Event/<stream name>
+        stream_base = os.path.join(tes_root, output_prefix).rstrip('/')
+        # /Event/<stream name>/Turbo
+        turbo_base = os.path.join(stream_base, 'Turbo')
+
+        # Decode the RecSummary from the SelReports
+        recsummary_decoder = RecSummaryFromSelReports(namer('RecSummaryFromSelReports'))
+        recsummary_decoder.InputHltSelReportsLocation = 'Hlt2/SelReports'
+        recsummary_decoder.OutputRecSummaryLocation = os.path.join(turbo_base, 'Rec/Summary')
+        stream_seq.Members.append(GaudiSequencer(
+            namer('RecSummarySeq'), Members=[
+                self._selReportsCheck(),
+                recsummary_decoder
+            ]
+        ))
+
         # No need to clone if the output prefix is empty (everything stays
         # under /Event/Turbo)
         if output_prefix:
@@ -918,13 +926,8 @@ class Tesla(LHCbConfigurableUser):
             )
             stream_seq.Members.append(copy_line_outputs_seq)
 
-        tes_root = '/Event'
-        # /Event/<stream name>
-        stream_base = os.path.join(tes_root, output_prefix).rstrip('/')
-        # /Event/<stream name>/Turbo
-        turbo_base = os.path.join(stream_base, 'Turbo')
         required_output_locations = [
-            os.path.join(tes_root, 'Rec/Summary#1')
+            str(recsummary_decoder.OutputRecSummaryLocation) + '#1'
         ]
         optional_output_locations = []
         if pack:
-- 
GitLab