diff --git a/Phys/Tesla/python/Tesla/Configuration.py b/Phys/Tesla/python/Tesla/Configuration.py index aab72c52516424522018004cde10f95f2b0cf2be..59c8257823fcfaca0707e0ff90a0334b272c5beb 100644 --- a/Phys/Tesla/python/Tesla/Configuration.py +++ b/Phys/Tesla/python/Tesla/Configuration.py @@ -900,6 +900,15 @@ class Tesla(LHCbConfigurableUser): if not streams: streams = {'': {'lines': trigger_lines}} + from DAQSys.Decoders import DecoderDB + hlt2dr_decoder = DecoderDB['HltDecReportsDecoder/Hlt2DecReportsDecoder'].setup() + # Cannot do anything if no Turbo(Calib) line fired (as then the DstData + # bank will be empty), so don't run subsequent algorithms + turbo_filter = HltDecReportsFilter('Hlt2_TeslaTurboFilter', + Code="HLT_TURBOPASS_RE('.*')") + turbo_filter_seq = GaudiSequencer('TeslaTurboFilter') + turbo_filter_seq.Members = [hlt2dr_decoder, turbo_filter] + decoders_seq = GaudiSequencer('TeslaDecoders') if online: decoder_names = [ @@ -911,7 +920,6 @@ class Tesla(LHCbConfigurableUser): if vertex_report_location == 'Hlt1': decoder_names.insert(0, 'HltVertexReportsDecoder/Hlt1VertexReportsDecoder') for name in decoder_names: - from DAQSys.Decoders import DecoderDB decoder = DecoderDB[name].setup() decoders_seq.Members.append(decoder) @@ -984,8 +992,9 @@ class Tesla(LHCbConfigurableUser): ), IgnoreFilterPassed=True ) + turbo_filter_seq.Members.append(streaming_seq) - return streaming_seq + return turbo_filter_seq def _configureOutputTurboSPStream(self, name, lines, packing, online, raw_format_output):