From d3d8040d4e40795d63754985d1e3107401eb7c7d Mon Sep 17 00:00:00 2001
From: Eduardo Rodrigues <eduardo.rodrigues@cern.ch>
Date: Mon, 7 Aug 2023 23:21:38 +0200
Subject: [PATCH] Fix the nightlies - 2 DaVinci tests failing

---
 .../example_data/hlt2_b2ksttaumu_opt.yaml     |  2 +-
 .../tupling/option_davinci_configFuntuple.py  |  2 +-
 .../test_davinci_tupling_from_collections.qmt |  2 +-
 .../test_davinci_tupling_from_spruce.qmt      |  4 +-
 .../refs/test_davinci_configFuntuple.ref      |  7 +-
 .../test_davinci_configFuntuple.ref.detdesc   |  7 +-
 .../refs/test_davinci_tupling_from_spruce.ref | 10 +-
 ...st_davinci_tupling_from_spruce.ref.detdesc | 10 +-
 .../davinci.qms/test_davinci_filters.qmt      |  2 +-
 .../tests/refs/test_davinci_filters.ref       | 10 +-
 .../refs/test_davinci_filters.ref.detdesc     | 10 +-
 Phys/DaVinci/python/DaVinci/LbExec.py         |  2 +-
 Phys/DaVinci/python/DaVinci/algorithms.py     | 99 +++----------------
 Phys/DaVinci/tests/config/test_algorithms.py  | 31 ++----
 doc/configuration/davinci_configuration.rst   | 13 ++-
 15 files changed, 52 insertions(+), 159 deletions(-)

diff --git a/DaVinciExamples/example_data/hlt2_b2ksttaumu_opt.yaml b/DaVinciExamples/example_data/hlt2_b2ksttaumu_opt.yaml
index b9a9a26d3..4745ad9f0 100644
--- a/DaVinciExamples/example_data/hlt2_b2ksttaumu_opt.yaml
+++ b/DaVinciExamples/example_data/hlt2_b2ksttaumu_opt.yaml
@@ -1,6 +1,6 @@
 input_files:
 - root://eoslhcb.cern.ch//eos/lhcb/wg/dpa/wp3/tests/b_to_ksttaumu_test_isolation.dst
-annsvc_config: root://eoslhcb.cern.ch//eos/lhcb/wg/dpa/wp3/tests/b_to_ksttaumu_test_isolation.tck.json
+input_manifest_file: root://eoslhcb.cern.ch//eos/lhcb/wg/dpa/wp3/tests/b_to_ksttaumu_test_isolation.tck.json
 input_type: ROOT
 evt_max: -1
 ntuple_file: b_to_ksttaumu_test_isolation.root
diff --git a/DaVinciExamples/python/DaVinciExamples/tupling/option_davinci_configFuntuple.py b/DaVinciExamples/python/DaVinciExamples/tupling/option_davinci_configFuntuple.py
index 985721f62..6f04a60d8 100644
--- a/DaVinciExamples/python/DaVinciExamples/tupling/option_davinci_configFuntuple.py
+++ b/DaVinciExamples/python/DaVinciExamples/tupling/option_davinci_configFuntuple.py
@@ -52,7 +52,7 @@ def main(options: Options):
     line = "SpruceB2OC_BdToDsmPi_DsmToKpKmPim"
     config = {
         "location": f"/Event/Spruce/{line}/Particles",
-        "filters": [f"HLT_PASS('{line}Decision')"],
+        "filters": [f"{line}Decision"],
         "preamble": ["TRACK_MAX_PT = MAXTREE(ISBASIC & HASTRACK, PT, -1)"],
         "tuple": "DecayTree",
         "fields": fields,
diff --git a/DaVinciExamples/tests/qmtest/tupling.qms/test_davinci_tupling_from_collections.qmt b/DaVinciExamples/tests/qmtest/tupling.qms/test_davinci_tupling_from_collections.qmt
index 5f3bc8e5f..9c29016d0 100644
--- a/DaVinciExamples/tests/qmtest/tupling.qms/test_davinci_tupling_from_collections.qmt
+++ b/DaVinciExamples/tests/qmtest/tupling.qms/test_davinci_tupling_from_collections.qmt
@@ -33,7 +33,7 @@ countErrorLines({"FATAL": 0, "WARNING": 0, "ERROR": 0},
 import sys, os
 from ROOT import TFile
 
-expected_branches    = ['BUNCHCROSSING_ID', 'BUNCHCROSSING_TYPE', 'D0_CaloClusterMass', 'D0_CaloNeutral1To9EnergyRatio', 'D0_CaloNeutral4To9EnergyRatio', 'D0_CaloNeutralEcalEnergy', 'D0_CaloNeutralHcal2EcalEnergyRatio', 'D0_CaloNeutralID', 'D0_CaloNeutralShowerShape', 'D0_CaloNumSaturatedCells', 'D0_CaloTrackMatchChi2', 'D0_ENERGY', 'D0_M', 'D0_MC_GD_GD_MOTHER_ID', 'D0_MC_GD_GD_MOTHER_KEY', 'D0_MC_GD_MOTHER_ID', 'D0_MC_GD_MOTHER_KEY', 'D0_MC_ISPROMPT', 'D0_MC_LONGLIVED_ID', 'D0_MC_LONGLIVED_KEY', 'D0_MC_MOTHER_ID', 'D0_MC_MOTHER_KEY', 'D0_P', 'D0_PARTICLE_ID', 'D0_PROBNN_D', 'D0_PROBNN_E', 'D0_PROBNN_GHOST', 'D0_PROBNN_K', 'D0_PROBNN_MU', 'D0_PROBNN_P', 'D0_PROBNN_PI', 'D0_PT', 'D0_PX', 'D0_PY', 'D0_PZ', 'D0_TRUEENDVERTEX_X', 'D0_TRUEENDVERTEX_Y', 'D0_TRUEENDVERTEX_Z', 'D0_TRUEENERGY', 'D0_TRUEID', 'D0_TRUEORIGINVERTEX_X', 'D0_TRUEORIGINVERTEX_Y', 'D0_TRUEORIGINVERTEX_Z', 'D0_TRUEP', 'D0_TRUEPT', 'D0_TRUEPX', 'D0_TRUEPY', 'D0_TRUEPZ', 'EVENTNUMBER', 'GPSTIME', 'Hlt2_TCK', 'Kminus_CaloClusterMass', 'Kminus_CaloNeutral1To9EnergyRatio', 'Kminus_CaloNeutral4To9EnergyRatio', 'Kminus_CaloNeutralEcalEnergy', 'Kminus_CaloNeutralHcal2EcalEnergyRatio', 'Kminus_CaloNeutralID', 'Kminus_CaloNeutralShowerShape', 'Kminus_CaloNumSaturatedCells', 'Kminus_CaloTrackMatchChi2', 'Kminus_ENERGY', 'Kminus_M', 'Kminus_MC_GD_GD_MOTHER_ID', 'Kminus_MC_GD_GD_MOTHER_KEY', 'Kminus_MC_GD_MOTHER_ID', 'Kminus_MC_GD_MOTHER_KEY', 'Kminus_MC_ISPROMPT', 'Kminus_MC_LONGLIVED_ID', 'Kminus_MC_LONGLIVED_KEY', 'Kminus_MC_MOTHER_ID', 'Kminus_MC_MOTHER_KEY', 'Kminus_P', 'Kminus_PARTICLE_ID', 'Kminus_PROBNN_D', 'Kminus_PROBNN_E', 'Kminus_PROBNN_GHOST', 'Kminus_PROBNN_K', 'Kminus_PROBNN_MU', 'Kminus_PROBNN_P', 'Kminus_PROBNN_PI', 'Kminus_PT', 'Kminus_PX', 'Kminus_PY', 'Kminus_PZ', 'Kminus_TRUEENDVERTEX_X', 'Kminus_TRUEENDVERTEX_Y', 'Kminus_TRUEENDVERTEX_Z', 'Kminus_TRUEENERGY', 'Kminus_TRUEID', 'Kminus_TRUEORIGINVERTEX_X', 'Kminus_TRUEORIGINVERTEX_Y', 'Kminus_TRUEORIGINVERTEX_Z', 'Kminus_TRUEP', 'Kminus_TRUEPT', 'Kminus_TRUEPX', 'Kminus_TRUEPY', 'Kminus_TRUEPZ', 'ODINTCK', 'RUNNUMBER', 'indx', 'piplus_CaloClusterMass', 'piplus_CaloNeutral1To9EnergyRatio', 'piplus_CaloNeutral4To9EnergyRatio', 'piplus_CaloNeutralEcalEnergy', 'piplus_CaloNeutralHcal2EcalEnergyRatio', 'piplus_CaloNeutralID', 'piplus_CaloNeutralShowerShape', 'piplus_CaloNumSaturatedCells', 'piplus_CaloTrackMatchChi2', 'piplus_ENERGY', 'piplus_M', 'piplus_MC_GD_GD_MOTHER_ID', 'piplus_MC_GD_GD_MOTHER_KEY', 'piplus_MC_GD_MOTHER_ID', 'piplus_MC_GD_MOTHER_KEY', 'piplus_MC_ISPROMPT', 'piplus_MC_LONGLIVED_ID', 'piplus_MC_LONGLIVED_KEY', 'piplus_MC_MOTHER_ID', 'piplus_MC_MOTHER_KEY', 'piplus_P', 'piplus_PARTICLE_ID', 'piplus_PROBNN_D', 'piplus_PROBNN_E', 'piplus_PROBNN_GHOST', 'piplus_PROBNN_K', 'piplus_PROBNN_MU', 'piplus_PROBNN_P', 'piplus_PROBNN_PI', 'piplus_PT', 'piplus_PX', 'piplus_PY', 'piplus_PZ', 'piplus_TRUEENDVERTEX_X', 'piplus_TRUEENDVERTEX_Y', 'piplus_TRUEENDVERTEX_Z', 'piplus_TRUEENERGY', 'piplus_TRUEID', 'piplus_TRUEORIGINVERTEX_X', 'piplus_TRUEORIGINVERTEX_Y', 'piplus_TRUEORIGINVERTEX_Z', 'piplus_TRUEP', 'piplus_TRUEPT', 'piplus_TRUEPX', 'piplus_TRUEPY', 'piplus_TRUEPZ', 'Hlt2Charm_D0ToKmPip_LineDecision']
+expected_branches    = ['BUNCHCROSSING_ID', 'BUNCHCROSSING_TYPE', 'D0_CaloClusterMass', 'D0_CaloNeutral1To9EnergyRatio', 'D0_CaloNeutral4To9EnergyRatio', 'D0_CaloNeutralEcalEnergy', 'D0_CaloNeutralHcal2EcalEnergyRatio', 'D0_CaloNeutralID', 'D0_CaloNeutralShowerShape', 'D0_CaloNumSaturatedCells', 'D0_CaloTrackMatchChi2', 'D0_ENERGY', 'D0_M', 'D0_MC_GD_GD_MOTHER_ID', 'D0_MC_GD_GD_MOTHER_KEY', 'D0_MC_GD_MOTHER_ID', 'D0_MC_GD_MOTHER_KEY', 'D0_MC_ISPROMPT', 'D0_MC_LONGLIVED_ID', 'D0_MC_LONGLIVED_KEY', 'D0_MC_MOTHER_ID', 'D0_MC_MOTHER_KEY', 'D0_P', 'D0_PARTICLE_ID', 'D0_PROBNN_D', 'D0_PROBNN_E', 'D0_PROBNN_GHOST', 'D0_PROBNN_K', 'D0_PROBNN_MU', 'D0_PROBNN_P', 'D0_PROBNN_PI', 'D0_PT', 'D0_PX', 'D0_PY', 'D0_PZ', 'D0_TRUEENDVERTEX_X', 'D0_TRUEENDVERTEX_Y', 'D0_TRUEENDVERTEX_Z', 'D0_TRUEENERGY', 'D0_TRUEID', 'D0_TRUEORIGINVERTEX_X', 'D0_TRUEORIGINVERTEX_Y', 'D0_TRUEORIGINVERTEX_Z', 'D0_TRUEP', 'D0_TRUEPT', 'D0_TRUEPX', 'D0_TRUEPY', 'D0_TRUEPZ', 'EVENTNUMBER', 'GPSTIME', 'Hlt2_TCK', 'Kminus_CaloClusterMass', 'Kminus_CaloNeutral1To9EnergyRatio', 'Kminus_CaloNeutral4To9EnergyRatio', 'Kminus_CaloNeutralEcalEnergy', 'Kminus_CaloNeutralHcal2EcalEnergyRatio', 'Kminus_CaloNeutralID', 'Kminus_CaloNeutralShowerShape', 'Kminus_CaloNumSaturatedCells', 'Kminus_CaloTrackMatchChi2', 'Kminus_ENERGY', 'Kminus_M', 'Kminus_MC_GD_GD_MOTHER_ID', 'Kminus_MC_GD_GD_MOTHER_KEY', 'Kminus_MC_GD_MOTHER_ID', 'Kminus_MC_GD_MOTHER_KEY', 'Kminus_MC_ISPROMPT', 'Kminus_MC_LONGLIVED_ID', 'Kminus_MC_LONGLIVED_KEY', 'Kminus_MC_MOTHER_ID', 'Kminus_MC_MOTHER_KEY', 'Kminus_P', 'Kminus_PARTICLE_ID', 'Kminus_PROBNN_D', 'Kminus_PROBNN_E', 'Kminus_PROBNN_GHOST', 'Kminus_PROBNN_K', 'Kminus_PROBNN_MU', 'Kminus_PROBNN_P', 'Kminus_PROBNN_PI', 'Kminus_PT', 'Kminus_PX', 'Kminus_PY', 'Kminus_PZ', 'Kminus_TRUEENDVERTEX_X', 'Kminus_TRUEENDVERTEX_Y', 'Kminus_TRUEENDVERTEX_Z', 'Kminus_TRUEENERGY', 'Kminus_TRUEID', 'Kminus_TRUEORIGINVERTEX_X', 'Kminus_TRUEORIGINVERTEX_Y', 'Kminus_TRUEORIGINVERTEX_Z', 'Kminus_TRUEP', 'Kminus_TRUEPT', 'Kminus_TRUEPX', 'Kminus_TRUEPY', 'Kminus_TRUEPZ', 'ODINTCK', 'RUNNUMBER', 'piplus_CaloClusterMass', 'piplus_CaloNeutral1To9EnergyRatio', 'piplus_CaloNeutral4To9EnergyRatio', 'piplus_CaloNeutralEcalEnergy', 'piplus_CaloNeutralHcal2EcalEnergyRatio', 'piplus_CaloNeutralID', 'piplus_CaloNeutralShowerShape', 'piplus_CaloNumSaturatedCells', 'piplus_CaloTrackMatchChi2', 'piplus_ENERGY', 'piplus_M', 'piplus_MC_GD_GD_MOTHER_ID', 'piplus_MC_GD_GD_MOTHER_KEY', 'piplus_MC_GD_MOTHER_ID', 'piplus_MC_GD_MOTHER_KEY', 'piplus_MC_ISPROMPT', 'piplus_MC_LONGLIVED_ID', 'piplus_MC_LONGLIVED_KEY', 'piplus_MC_MOTHER_ID', 'piplus_MC_MOTHER_KEY', 'piplus_P', 'piplus_PARTICLE_ID', 'piplus_PROBNN_D', 'piplus_PROBNN_E', 'piplus_PROBNN_GHOST', 'piplus_PROBNN_K', 'piplus_PROBNN_MU', 'piplus_PROBNN_P', 'piplus_PROBNN_PI', 'piplus_PT', 'piplus_PX', 'piplus_PY', 'piplus_PZ', 'piplus_TRUEENDVERTEX_X', 'piplus_TRUEENDVERTEX_Y', 'piplus_TRUEENDVERTEX_Z', 'piplus_TRUEENERGY', 'piplus_TRUEID', 'piplus_TRUEORIGINVERTEX_X', 'piplus_TRUEORIGINVERTEX_Y', 'piplus_TRUEORIGINVERTEX_Z', 'piplus_TRUEP', 'piplus_TRUEPT', 'piplus_TRUEPX', 'piplus_TRUEPY', 'piplus_TRUEPZ', 'Hlt2Charm_D0ToKmPip_LineDecision']
 expected_mc_branches = ['BUNCHCROSSING_ID', 'BUNCHCROSSING_TYPE', 'D0_MC_ACCT', 'D0_MC_ACCT1', 'D0_MC_ACCT1S', 'D0_MC_ACCT1X', 'D0_MC_ACCT2', 'D0_MC_ACCT2S', 'D0_MC_ACCT2X', 'D0_MC_ACCT3', 'D0_MC_ACCT3S', 'D0_MC_ACCT3X', 'D0_MC_ACCUT', 'D0_MC_ACCUT1', 'D0_MC_ACCUT2', 'D0_MC_ACCVELO', 'D0_MC_ACCVELO_AND_T', 'D0_MC_GD_GD_MOTHER_ID', 'D0_MC_GD_GD_MOTHER_KEY', 'D0_MC_GD_MOTHER_ID', 'D0_MC_GD_MOTHER_KEY', 'D0_MC_HAST', 'D0_MC_HAST1', 'D0_MC_HAST1S', 'D0_MC_HAST1X', 'D0_MC_HAST2', 'D0_MC_HAST2S', 'D0_MC_HAST2X', 'D0_MC_HAST3', 'D0_MC_HAST3S', 'D0_MC_HAST3X', 'D0_MC_HASUT', 'D0_MC_HASUT1', 'D0_MC_HASUT2', 'D0_MC_HASVELO', 'D0_MC_HASVELO_AND_T', 'D0_MC_ISPROMPT', 'D0_MC_LONGLIVED_ID', 'D0_MC_LONGLIVED_KEY', 'D0_MC_MOTHER_ID', 'D0_MC_MOTHER_KEY', 'D0_MC_RECONSTRUCTIBLE', 'D0_RECONSTRUCTED', 'D0_TRUEENDVERTEX_X', 'D0_TRUEENDVERTEX_Y', 'D0_TRUEENDVERTEX_Z', 'D0_TRUEID', 'D0_TRUEORIGINVERTEX_X', 'D0_TRUEORIGINVERTEX_Y', 'D0_TRUEORIGINVERTEX_Z', 'GPSTIME', 'Kminus_MC_ACCT', 'Kminus_MC_ACCT1', 'Kminus_MC_ACCT1S', 'Kminus_MC_ACCT1X', 'Kminus_MC_ACCT2', 'Kminus_MC_ACCT2S', 'Kminus_MC_ACCT2X', 'Kminus_MC_ACCT3', 'Kminus_MC_ACCT3S', 'Kminus_MC_ACCT3X', 'Kminus_MC_ACCUT', 'Kminus_MC_ACCUT1', 'Kminus_MC_ACCUT2', 'Kminus_MC_ACCVELO', 'Kminus_MC_ACCVELO_AND_T', 'Kminus_MC_GD_GD_MOTHER_ID', 'Kminus_MC_GD_GD_MOTHER_KEY', 'Kminus_MC_GD_MOTHER_ID', 'Kminus_MC_GD_MOTHER_KEY', 'Kminus_MC_HAST', 'Kminus_MC_HAST1', 'Kminus_MC_HAST1S', 'Kminus_MC_HAST1X', 'Kminus_MC_HAST2', 'Kminus_MC_HAST2S', 'Kminus_MC_HAST2X', 'Kminus_MC_HAST3', 'Kminus_MC_HAST3S', 'Kminus_MC_HAST3X', 'Kminus_MC_HASUT', 'Kminus_MC_HASUT1', 'Kminus_MC_HASUT2', 'Kminus_MC_HASVELO', 'Kminus_MC_HASVELO_AND_T', 'Kminus_MC_ISPROMPT', 'Kminus_MC_LONGLIVED_ID', 'Kminus_MC_LONGLIVED_KEY', 'Kminus_MC_MOTHER_ID', 'Kminus_MC_MOTHER_KEY', 'Kminus_MC_RECONSTRUCTIBLE', 'Kminus_RECONSTRUCTED', 'Kminus_TRUEENDVERTEX_X', 'Kminus_TRUEENDVERTEX_Y', 'Kminus_TRUEENDVERTEX_Z', 'Kminus_TRUEID', 'Kminus_TRUEORIGINVERTEX_X', 'Kminus_TRUEORIGINVERTEX_Y', 'Kminus_TRUEORIGINVERTEX_Z', 'MCPVT', 'MCPVX', 'MCPVY', 'MCPVZ', 'MCPV_IDX', 'MCPV_SIZE', 'ODINTCK', 'piplus_MC_ACCT', 'piplus_MC_ACCT1', 'piplus_MC_ACCT1S', 'piplus_MC_ACCT1X', 'piplus_MC_ACCT2', 'piplus_MC_ACCT2S', 'piplus_MC_ACCT2X', 'piplus_MC_ACCT3', 'piplus_MC_ACCT3S', 'piplus_MC_ACCT3X', 'piplus_MC_ACCUT', 'piplus_MC_ACCUT1', 'piplus_MC_ACCUT2', 'piplus_MC_ACCVELO', 'piplus_MC_ACCVELO_AND_T', 'piplus_MC_GD_GD_MOTHER_ID', 'piplus_MC_GD_GD_MOTHER_KEY', 'piplus_MC_GD_MOTHER_ID', 'piplus_MC_GD_MOTHER_KEY', 'piplus_MC_HAST', 'piplus_MC_HAST1', 'piplus_MC_HAST1S', 'piplus_MC_HAST1X', 'piplus_MC_HAST2', 'piplus_MC_HAST2S', 'piplus_MC_HAST2X', 'piplus_MC_HAST3', 'piplus_MC_HAST3S', 'piplus_MC_HAST3X', 'piplus_MC_HASUT', 'piplus_MC_HASUT1', 'piplus_MC_HASUT2', 'piplus_MC_HASVELO', 'piplus_MC_HASVELO_AND_T', 'piplus_MC_ISPROMPT', 'piplus_MC_LONGLIVED_ID', 'piplus_MC_LONGLIVED_KEY', 'piplus_MC_MOTHER_ID', 'piplus_MC_MOTHER_KEY', 'piplus_MC_RECONSTRUCTIBLE', 'piplus_RECONSTRUCTED', 'piplus_TRUEENDVERTEX_X', 'piplus_TRUEENDVERTEX_Y', 'piplus_TRUEENDVERTEX_Z', 'piplus_TRUEID', 'piplus_TRUEORIGINVERTEX_X', 'piplus_TRUEORIGINVERTEX_Y', 'piplus_TRUEORIGINVERTEX_Z']
 expected_branches   += ['piplus_DTF_PX', 'piplus_DTF_PY', 'D0_DTF_PY', 'piplus_DTF_PZ', 'Kminus_DTF_PE', 'Kminus_DTF_PY', 'D0_DTF_PX', 'piplus_DTF_PE', 'D0_DTF_PZ', 'D0_DTF_PE', 'Kminus_DTF_PX', 'Kminus_DTF_PZ']
 
diff --git a/DaVinciExamples/tests/qmtest/tupling.qms/test_davinci_tupling_from_spruce.qmt b/DaVinciExamples/tests/qmtest/tupling.qms/test_davinci_tupling_from_spruce.qmt
index ff7d0b4fa..d22d92b6e 100644
--- a/DaVinciExamples/tests/qmtest/tupling.qms/test_davinci_tupling_from_spruce.qmt
+++ b/DaVinciExamples/tests/qmtest/tupling.qms/test_davinci_tupling_from_spruce.qmt
@@ -1,7 +1,7 @@
 <?xml version="1.0" ?>
 <!--
 ###############################################################################
-# (c) Copyright 2021 CERN for the benefit of the LHCb Collaboration           #
+# (c) Copyright 2021-2023 CERN for the benefit of the LHCb Collaboration      #
 #                                                                             #
 # This software is distributed under the terms of the GNU General Public      #
 # Licence version 3 (GPL Version 3), copied verbatim in the file "COPYING".   #
@@ -20,7 +20,7 @@
   <argument name="options_yaml_fn"><text>$DAVINCIEXAMPLESROOT/example_data/Spruce_all_lines_dst.yaml</text></argument>
   <argument name="extra_options_yaml"><text>
     evt_pre_filters:
-      Hlt2TopoLineFilter: "HLT_PASS('Hlt2Topo2BodyLineDecision')"
+      Hlt2TopoLineFilter: "Hlt2Topo2BodyLineDecision"
     ntuple_file: "DV_example_sprucing_ntp.root"
     histo_file: "DV_example_sprucing_his.root"
     print_freq: 1
diff --git a/DaVinciExamples/tests/refs/test_davinci_configFuntuple.ref b/DaVinciExamples/tests/refs/test_davinci_configFuntuple.ref
index 224c5c4d2..22f3224a4 100644
--- a/DaVinciExamples/tests/refs/test_davinci_configFuntuple.ref
+++ b/DaVinciExamples/tests/refs/test_davinci_configFuntuple.ref
@@ -1,4 +1,3 @@
-DaVinciFilter.add_filter is deprecated -- please use create_lines_filter instead
 ApplicationMgr    SUCCESS
 ====================================================================================================================================
 ====================================================================================================================================
@@ -133,7 +132,7 @@ LAZY_AND: DaVinci                              #=113     Sum=1           Eff=|(0
  NONLAZY_OR: UserAnalysis                      #=113     Sum=1           Eff=|(0.8849558 +- 0.881031)%|
   LAZY_AND: B0Dspi                             #=113     Sum=1           Eff=|(0.8849558 +- 0.881031)%|
    RawBankSizeFilter/FilterDstDataSize_Spruce  #=113     Sum=113         Eff=|( 100.0000 +- 0.00000 )%|
-   LoKi__HDRFilter/Filter_B0Dspi               #=113     Sum=1           Eff=|(0.8849558 +- 0.881031)%|
+   VoidFilter/Filter_B0Dspi                    #=113     Sum=1           Eff=|(0.8849558 +- 0.881031)%|
    FunTupleBase_Particles/Tuple_B0Dspi         #=1       Sum=1           Eff=|( 100.0000 +- 0.00000 )%|
 RFileCnv                               INFO dumping contents of /NTUPLES/FILE1
 TFile: name=DV_example_configFuntuple_ntp.root, title=Gaudi Trees, option=CREATE
@@ -145,9 +144,7 @@ FilterDstDataSize_Spruce               INFO Number of counters : 1
  |*"Number of too small raw banks size"            |       113 |        113 |( 100.0000 +- 0.000000)% |
 Filter_B0Dspi                          INFO Number of counters : 1
  |    Counter                                      |     #     |    sum     | mean/eff^* | rms/err^*  |     min     |     max     |
- |*"#passed"                                       |       113 |          1 |(0.8849558 +- 0.8810313)% |
-ToolSvc.HltFactory                     INFO Number of counters : 1
- |    Counter                                      |     #     |    sum     | mean/eff^* | rms/err^*  |     min     |     max     |
+ |*"Cut selection efficiency"                      |       113 |          1 |(0.8849558 +- 0.8810313)% |
 ToolSvc.HybridFactory                  INFO Number of counters : 1
  |    Counter                                      |     #     |    sum     | mean/eff^* | rms/err^*  |     min     |     max     |
 Tuple_B0Dspi                           INFO Number of counters : 4
diff --git a/DaVinciExamples/tests/refs/test_davinci_configFuntuple.ref.detdesc b/DaVinciExamples/tests/refs/test_davinci_configFuntuple.ref.detdesc
index 224c5c4d2..22f3224a4 100644
--- a/DaVinciExamples/tests/refs/test_davinci_configFuntuple.ref.detdesc
+++ b/DaVinciExamples/tests/refs/test_davinci_configFuntuple.ref.detdesc
@@ -1,4 +1,3 @@
-DaVinciFilter.add_filter is deprecated -- please use create_lines_filter instead
 ApplicationMgr    SUCCESS
 ====================================================================================================================================
 ====================================================================================================================================
@@ -133,7 +132,7 @@ LAZY_AND: DaVinci                              #=113     Sum=1           Eff=|(0
  NONLAZY_OR: UserAnalysis                      #=113     Sum=1           Eff=|(0.8849558 +- 0.881031)%|
   LAZY_AND: B0Dspi                             #=113     Sum=1           Eff=|(0.8849558 +- 0.881031)%|
    RawBankSizeFilter/FilterDstDataSize_Spruce  #=113     Sum=113         Eff=|( 100.0000 +- 0.00000 )%|
-   LoKi__HDRFilter/Filter_B0Dspi               #=113     Sum=1           Eff=|(0.8849558 +- 0.881031)%|
+   VoidFilter/Filter_B0Dspi                    #=113     Sum=1           Eff=|(0.8849558 +- 0.881031)%|
    FunTupleBase_Particles/Tuple_B0Dspi         #=1       Sum=1           Eff=|( 100.0000 +- 0.00000 )%|
 RFileCnv                               INFO dumping contents of /NTUPLES/FILE1
 TFile: name=DV_example_configFuntuple_ntp.root, title=Gaudi Trees, option=CREATE
@@ -145,9 +144,7 @@ FilterDstDataSize_Spruce               INFO Number of counters : 1
  |*"Number of too small raw banks size"            |       113 |        113 |( 100.0000 +- 0.000000)% |
 Filter_B0Dspi                          INFO Number of counters : 1
  |    Counter                                      |     #     |    sum     | mean/eff^* | rms/err^*  |     min     |     max     |
- |*"#passed"                                       |       113 |          1 |(0.8849558 +- 0.8810313)% |
-ToolSvc.HltFactory                     INFO Number of counters : 1
- |    Counter                                      |     #     |    sum     | mean/eff^* | rms/err^*  |     min     |     max     |
+ |*"Cut selection efficiency"                      |       113 |          1 |(0.8849558 +- 0.8810313)% |
 ToolSvc.HybridFactory                  INFO Number of counters : 1
  |    Counter                                      |     #     |    sum     | mean/eff^* | rms/err^*  |     min     |     max     |
 Tuple_B0Dspi                           INFO Number of counters : 4
diff --git a/DaVinciExamples/tests/refs/test_davinci_tupling_from_spruce.ref b/DaVinciExamples/tests/refs/test_davinci_tupling_from_spruce.ref
index c00c98856..f2a0c9740 100644
--- a/DaVinciExamples/tests/refs/test_davinci_tupling_from_spruce.ref
+++ b/DaVinciExamples/tests/refs/test_davinci_tupling_from_spruce.ref
@@ -1,5 +1,3 @@
-DaVinciFilter.add_filter is deprecated -- please use create_lines_filter instead
-DaVinciFilter.add_filter is deprecated -- please use create_lines_filter instead
 ApplicationMgr    SUCCESS
 ====================================================================================================================================
 ====================================================================================================================================
@@ -138,12 +136,12 @@ LAZY_AND: DaVinci                              #=113     Sum=48          Eff=|(
  NONLAZY_OR: UserAnalysis                      #=113     Sum=48          Eff=|( 42.47788 +- 4.65007 )%|
   LAZY_AND: B0DsK                              #=113     Sum=48          Eff=|( 42.47788 +- 4.65007 )%|
    RawBankSizeFilter/FilterDstDataSize_Spruce  #=113     Sum=113         Eff=|( 100.0000 +- 0.00000 )%|
-   LoKi__HDRFilter/Hlt2TopoLineFilter          #=113     Sum=70          Eff=|( 61.94690 +- 4.56736 )%|
+   VoidFilter/Hlt2TopoLineFilter               #=113     Sum=70          Eff=|( 61.94690 +- 4.56736 )%|
    VoidFilter/HDRFilter_B0DsK                  #=70      Sum=48          Eff=|( 68.57143 +- 5.54862 )%|
    FunTupleBase_Particles/B0DsK_Tuple          #=48      Sum=48          Eff=|( 100.0000 +- 0.00000 )%|
   LAZY_AND: B0Dspi                             #=113     Sum=1           Eff=|(0.8849558 +- 0.881031)%|
    RawBankSizeFilter/FilterDstDataSize_Spruce  #=113     Sum=113         Eff=|( 100.0000 +- 0.00000 )%|
-   LoKi__HDRFilter/Hlt2TopoLineFilter          #=113     Sum=70          Eff=|( 61.94690 +- 4.56736 )%|
+   VoidFilter/Hlt2TopoLineFilter               #=113     Sum=70          Eff=|( 61.94690 +- 4.56736 )%|
    VoidFilter/HDRFilter_B0Dspi                 #=70      Sum=1           Eff=|( 1.428571 +- 1.41833 )%|
    FunTupleBase_Particles/B0Dspi_Tuple         #=1       Sum=1           Eff=|( 100.0000 +- 0.00000 )%|
 RFileCnv                               INFO dumping contents of /NTUPLES/FILE1
@@ -177,9 +175,7 @@ HDRFilter_B0Dspi                       INFO Number of counters : 1
  |*"Cut selection efficiency"                      |        70 |          1 |( 1.428571 +- 1.418331)% |
 Hlt2TopoLineFilter                     INFO Number of counters : 1
  |    Counter                                      |     #     |    sum     | mean/eff^* | rms/err^*  |     min     |     max     |
- |*"#passed"                                       |       113 |         70 |( 61.94690 +- 4.567364)% |
-ToolSvc.HltFactory                     INFO Number of counters : 1
- |    Counter                                      |     #     |    sum     | mean/eff^* | rms/err^*  |     min     |     max     |
+ |*"Cut selection efficiency"                      |       113 |         70 |( 61.94690 +- 4.567364)% |
 ToolSvc.HybridFactory                  INFO Number of counters : 1
  |    Counter                                      |     #     |    sum     | mean/eff^* | rms/err^*  |     min     |     max     |
 Unpack_Spruce__Event_Spruce_Spru...    INFO Number of counters : 4
diff --git a/DaVinciExamples/tests/refs/test_davinci_tupling_from_spruce.ref.detdesc b/DaVinciExamples/tests/refs/test_davinci_tupling_from_spruce.ref.detdesc
index c00c98856..f2a0c9740 100644
--- a/DaVinciExamples/tests/refs/test_davinci_tupling_from_spruce.ref.detdesc
+++ b/DaVinciExamples/tests/refs/test_davinci_tupling_from_spruce.ref.detdesc
@@ -1,5 +1,3 @@
-DaVinciFilter.add_filter is deprecated -- please use create_lines_filter instead
-DaVinciFilter.add_filter is deprecated -- please use create_lines_filter instead
 ApplicationMgr    SUCCESS
 ====================================================================================================================================
 ====================================================================================================================================
@@ -138,12 +136,12 @@ LAZY_AND: DaVinci                              #=113     Sum=48          Eff=|(
  NONLAZY_OR: UserAnalysis                      #=113     Sum=48          Eff=|( 42.47788 +- 4.65007 )%|
   LAZY_AND: B0DsK                              #=113     Sum=48          Eff=|( 42.47788 +- 4.65007 )%|
    RawBankSizeFilter/FilterDstDataSize_Spruce  #=113     Sum=113         Eff=|( 100.0000 +- 0.00000 )%|
-   LoKi__HDRFilter/Hlt2TopoLineFilter          #=113     Sum=70          Eff=|( 61.94690 +- 4.56736 )%|
+   VoidFilter/Hlt2TopoLineFilter               #=113     Sum=70          Eff=|( 61.94690 +- 4.56736 )%|
    VoidFilter/HDRFilter_B0DsK                  #=70      Sum=48          Eff=|( 68.57143 +- 5.54862 )%|
    FunTupleBase_Particles/B0DsK_Tuple          #=48      Sum=48          Eff=|( 100.0000 +- 0.00000 )%|
   LAZY_AND: B0Dspi                             #=113     Sum=1           Eff=|(0.8849558 +- 0.881031)%|
    RawBankSizeFilter/FilterDstDataSize_Spruce  #=113     Sum=113         Eff=|( 100.0000 +- 0.00000 )%|
-   LoKi__HDRFilter/Hlt2TopoLineFilter          #=113     Sum=70          Eff=|( 61.94690 +- 4.56736 )%|
+   VoidFilter/Hlt2TopoLineFilter               #=113     Sum=70          Eff=|( 61.94690 +- 4.56736 )%|
    VoidFilter/HDRFilter_B0Dspi                 #=70      Sum=1           Eff=|( 1.428571 +- 1.41833 )%|
    FunTupleBase_Particles/B0Dspi_Tuple         #=1       Sum=1           Eff=|( 100.0000 +- 0.00000 )%|
 RFileCnv                               INFO dumping contents of /NTUPLES/FILE1
@@ -177,9 +175,7 @@ HDRFilter_B0Dspi                       INFO Number of counters : 1
  |*"Cut selection efficiency"                      |        70 |          1 |( 1.428571 +- 1.418331)% |
 Hlt2TopoLineFilter                     INFO Number of counters : 1
  |    Counter                                      |     #     |    sum     | mean/eff^* | rms/err^*  |     min     |     max     |
- |*"#passed"                                       |       113 |         70 |( 61.94690 +- 4.567364)% |
-ToolSvc.HltFactory                     INFO Number of counters : 1
- |    Counter                                      |     #     |    sum     | mean/eff^* | rms/err^*  |     min     |     max     |
+ |*"Cut selection efficiency"                      |       113 |         70 |( 61.94690 +- 4.567364)% |
 ToolSvc.HybridFactory                  INFO Number of counters : 1
  |    Counter                                      |     #     |    sum     | mean/eff^* | rms/err^*  |     min     |     max     |
 Unpack_Spruce__Event_Spruce_Spru...    INFO Number of counters : 4
diff --git a/DaVinciTests/tests/qmtest/davinci.qms/test_davinci_filters.qmt b/DaVinciTests/tests/qmtest/davinci.qms/test_davinci_filters.qmt
index 6b24d0756..e83ea51c8 100644
--- a/DaVinciTests/tests/qmtest/davinci.qms/test_davinci_filters.qmt
+++ b/DaVinciTests/tests/qmtest/davinci.qms/test_davinci_filters.qmt
@@ -21,7 +21,7 @@
   <argument name="options_yaml_fn"><text>$DAVINCIEXAMPLESROOT/example_data/Spruce_all_lines_dst.yaml</text></argument>
   <argument name="extra_options_yaml"><text>
     evt_pre_filters:
-      Hlt2TopoLineFilter: "HLT_PASS('Hlt2Topo2BodyLineDecision')"
+      Hlt2TopoLineFilter: "Hlt2Topo2BodyLineDecision"
     ntuple_file: "davinci_filters_ntuple.root"
     histo_file: "davinci_filters_histos.root"
     print_freq: 1
diff --git a/DaVinciTests/tests/refs/test_davinci_filters.ref b/DaVinciTests/tests/refs/test_davinci_filters.ref
index 2b21e3097..1199d7758 100644
--- a/DaVinciTests/tests/refs/test_davinci_filters.ref
+++ b/DaVinciTests/tests/refs/test_davinci_filters.ref
@@ -1,5 +1,3 @@
-DaVinciFilter.add_filter is deprecated -- please use create_lines_filter instead
-DaVinciFilter.add_filter is deprecated -- please use create_lines_filter instead
 ApplicationMgr    SUCCESS
 ====================================================================================================================================
 ====================================================================================================================================
@@ -128,11 +126,11 @@ LAZY_AND: DaVinci                              #=113     Sum=48          Eff=|(
  NONLAZY_OR: UserAnalysis                      #=113     Sum=48          Eff=|( 42.47788 +- 4.65007 )%|
   LAZY_AND: B0DsK                              #=113     Sum=48          Eff=|( 42.47788 +- 4.65007 )%|
    RawBankSizeFilter/FilterDstDataSize_Spruce  #=113     Sum=113         Eff=|( 100.0000 +- 0.00000 )%|
-   LoKi__HDRFilter/Hlt2TopoLineFilter          #=113     Sum=70          Eff=|( 61.94690 +- 4.56736 )%|
+   VoidFilter/Hlt2TopoLineFilter               #=113     Sum=70          Eff=|( 61.94690 +- 4.56736 )%|
    VoidFilter/HDRFilter_B0DsK                  #=70      Sum=48          Eff=|( 68.57143 +- 5.54862 )%|
   LAZY_AND: B0Dspi                             #=113     Sum=1           Eff=|(0.8849558 +- 0.881031)%|
    RawBankSizeFilter/FilterDstDataSize_Spruce  #=113     Sum=113         Eff=|( 100.0000 +- 0.00000 )%|
-   LoKi__HDRFilter/Hlt2TopoLineFilter          #=113     Sum=70          Eff=|( 61.94690 +- 4.56736 )%|
+   VoidFilter/Hlt2TopoLineFilter               #=113     Sum=70          Eff=|( 61.94690 +- 4.56736 )%|
    VoidFilter/HDRFilter_B0Dspi                 #=70      Sum=1           Eff=|( 1.428571 +- 1.41833 )%|
 ApplicationMgr                         INFO Application Manager Finalized successfully
 ApplicationMgr                         INFO Application Manager Terminated successfully
@@ -147,6 +145,4 @@ HDRFilter_B0Dspi                       INFO Number of counters : 1
  |*"Cut selection efficiency"                      |        70 |          1 |( 1.428571 +- 1.418331)% |
 Hlt2TopoLineFilter                     INFO Number of counters : 1
  |    Counter                                      |     #     |    sum     | mean/eff^* | rms/err^*  |     min     |     max     |
- |*"#passed"                                       |       113 |         70 |( 61.94690 +- 4.567364)% |
-ToolSvc.HltFactory                     INFO Number of counters : 1
- |    Counter                                      |     #     |    sum     | mean/eff^* | rms/err^*  |     min     |     max     |
+ |*"Cut selection efficiency"                      |       113 |         70 |( 61.94690 +- 4.567364)% |
diff --git a/DaVinciTests/tests/refs/test_davinci_filters.ref.detdesc b/DaVinciTests/tests/refs/test_davinci_filters.ref.detdesc
index 2b21e3097..1199d7758 100644
--- a/DaVinciTests/tests/refs/test_davinci_filters.ref.detdesc
+++ b/DaVinciTests/tests/refs/test_davinci_filters.ref.detdesc
@@ -1,5 +1,3 @@
-DaVinciFilter.add_filter is deprecated -- please use create_lines_filter instead
-DaVinciFilter.add_filter is deprecated -- please use create_lines_filter instead
 ApplicationMgr    SUCCESS
 ====================================================================================================================================
 ====================================================================================================================================
@@ -128,11 +126,11 @@ LAZY_AND: DaVinci                              #=113     Sum=48          Eff=|(
  NONLAZY_OR: UserAnalysis                      #=113     Sum=48          Eff=|( 42.47788 +- 4.65007 )%|
   LAZY_AND: B0DsK                              #=113     Sum=48          Eff=|( 42.47788 +- 4.65007 )%|
    RawBankSizeFilter/FilterDstDataSize_Spruce  #=113     Sum=113         Eff=|( 100.0000 +- 0.00000 )%|
-   LoKi__HDRFilter/Hlt2TopoLineFilter          #=113     Sum=70          Eff=|( 61.94690 +- 4.56736 )%|
+   VoidFilter/Hlt2TopoLineFilter               #=113     Sum=70          Eff=|( 61.94690 +- 4.56736 )%|
    VoidFilter/HDRFilter_B0DsK                  #=70      Sum=48          Eff=|( 68.57143 +- 5.54862 )%|
   LAZY_AND: B0Dspi                             #=113     Sum=1           Eff=|(0.8849558 +- 0.881031)%|
    RawBankSizeFilter/FilterDstDataSize_Spruce  #=113     Sum=113         Eff=|( 100.0000 +- 0.00000 )%|
-   LoKi__HDRFilter/Hlt2TopoLineFilter          #=113     Sum=70          Eff=|( 61.94690 +- 4.56736 )%|
+   VoidFilter/Hlt2TopoLineFilter               #=113     Sum=70          Eff=|( 61.94690 +- 4.56736 )%|
    VoidFilter/HDRFilter_B0Dspi                 #=70      Sum=1           Eff=|( 1.428571 +- 1.41833 )%|
 ApplicationMgr                         INFO Application Manager Finalized successfully
 ApplicationMgr                         INFO Application Manager Terminated successfully
@@ -147,6 +145,4 @@ HDRFilter_B0Dspi                       INFO Number of counters : 1
  |*"Cut selection efficiency"                      |        70 |          1 |( 1.428571 +- 1.418331)% |
 Hlt2TopoLineFilter                     INFO Number of counters : 1
  |    Counter                                      |     #     |    sum     | mean/eff^* | rms/err^*  |     min     |     max     |
- |*"#passed"                                       |       113 |         70 |( 61.94690 +- 4.567364)% |
-ToolSvc.HltFactory                     INFO Number of counters : 1
- |    Counter                                      |     #     |    sum     | mean/eff^* | rms/err^*  |     min     |     max     |
+ |*"Cut selection efficiency"                      |       113 |         70 |( 61.94690 +- 4.567364)% |
diff --git a/Phys/DaVinci/python/DaVinci/LbExec.py b/Phys/DaVinci/python/DaVinci/LbExec.py
index 8a6aa1535..9cdad2060 100644
--- a/Phys/DaVinci/python/DaVinci/LbExec.py
+++ b/Phys/DaVinci/python/DaVinci/LbExec.py
@@ -33,7 +33,7 @@ class Options(DefaultOptions):
     The optional parameters that need to be set are :
     - input_stream (str): Stream name. Default is "default" (Note: for `input_process=Hlt2` the stream must be strictly empty. The default value is overwritten in this case.)
     - lumi (bool): Flag to store luminosity information. Default is False.
-    - evt_pre_filters (dict[str,str]): Event pre-filter code. Default is None.
+    - evt_pre_filters (dict[str,str]): Event pre-filter line name(s). Default is None.
     - write_fsr (bool): Flag to write file summary record. Default is True.
     - merge_genfsr (bool): Flag to merge the file summary record. Default is False.
     - metainfo_additional_tags: (list): Additional central tags for `PyConf.filecontent_metadata.metainfo_repos`. Default is [].
diff --git a/Phys/DaVinci/python/DaVinci/algorithms.py b/Phys/DaVinci/python/DaVinci/algorithms.py
index 504549076..e3b1004ad 100644
--- a/Phys/DaVinci/python/DaVinci/algorithms.py
+++ b/Phys/DaVinci/python/DaVinci/algorithms.py
@@ -8,94 +8,20 @@
 # granted to it by virtue of its status as an Intergovernmental Organization  #
 # or submit itself to any jurisdiction.                                       #
 ###############################################################################
-import re
 import logging
 import itertools
 from collections import OrderedDict
-from typing import Any, Union
+from typing import Any
 
 from GaudiConf.LbExec import InputProcessTypes  # type: ignore[import]
-from PyConf.Algorithms import LoKi__HDRFilter, LoKi__VoidFilter, VoidFilter  # type: ignore[import]
-from PyConf.Algorithms import HltDecReportsDecoder  # type: ignore[import]
-from PyConf.reading import get_particles, get_decreports, get_hlt_reports, dstdata_filter  # type: ignore[import]
+from PyConf.Algorithms import VoidFilter  # type: ignore[import]
+from PyConf.reading import get_particles, get_decreports, dstdata_filter  # type: ignore[import]
 import Functors as F  # type: ignore[import]
 from DaVinci.LbExec import Options
 
 log = logging.getLogger(__name__)
 
 
-def set_filter(
-    name: str, code: str, dec_reports: HltDecReportsDecoder
-) -> Union[LoKi__HDRFilter, LoKi__VoidFilter]:
-    """
-    Adding an HDR filter to FunTuple algorithms checking if the corresponding HLT/Sprucing line fired.
-
-    Args:
-        name (str): filter's name.
-        code (str): filter's code.
-        dec_reports (HltDecReportsDecoder instance): HltDecReportsDecoder containing the configuration for HLT/Sprucing lines.
-
-    Returns:
-        Filter (LoKi__HDRFilter or LoKi__VoidFilter) with name and code defined by the user.
-    """
-    if dec_reports:
-        algFilter = LoKi__HDRFilter(
-            name=name, Code=code, Location=dec_reports.OutputHltDecReportsLocation
-        )
-    else:
-        algFilter = LoKi__VoidFilter(name=name, Code=code)
-
-    return algFilter
-
-
-def add_filter(name: str, code: str) -> Union[LoKi__HDRFilter, LoKi__VoidFilter]:
-    """
-    Adding an event pre-filter using a code defined by the user.
-
-    Args:
-        name (str): filter's name.
-        code (str): filter's code.
-
-    Raises:
-        SyntaxError: if the specified filter code does not end with brackets ')'.
-
-    Returns:
-        Filter (LoKi__HDRFilter or LoKi__VoidFilter) with name and code defined by the user.
-    """
-    print(
-        "DaVinciFilter.add_filter is deprecated -- please use create_lines_filter instead"
-    )
-    # if code ends with HLT_PASS then check that the lines inside
-    # HLT_PASS contain suffix decision
-    if code.startswith("HLT_PASS("):
-        # check if it ends with braces
-        if not code.endswith(")"):
-            raise SyntaxError("The specified code must end with brackets ')'")
-
-        # find all the line names between apostrophe
-        # e.g. turns string "HLT_PASS('Line1 ','Line2')" to list('Line1', 'Line2)
-        line_names = re.findall(r"\'([^\']*)\'", code)
-
-        # remove whitespace
-        remove_whitespace = lambda s: s.replace(" ", "")
-        line_names = list(map(remove_whitespace, line_names))
-
-        # check for suffix 'Decision', if not add one
-        add_suff_to_elem = lambda s: s + "Decision" if not s.endswith("Decision") else s
-        line_names = list(map(add_suff_to_elem, line_names))
-
-        # put back the code together
-        code = "HLT_PASS('" + "','".join(line_names) + "')"
-
-    dec_reports = None
-    for source in ["Hlt2", "Spruce"]:
-        if re.search("^HLT_PASS.*" + source, code):
-            dec_reports = get_hlt_reports(source)
-            break
-
-    return set_filter(name, code, dec_reports)
-
-
 def create_lines_filter(name: str, lines: list[str]) -> VoidFilter:
     """
     Create an event pre-filter requiring the specified lines.
@@ -132,8 +58,8 @@ def create_lines_filter(name: str, lines: list[str]) -> VoidFilter:
 
 
 def apply_filters(
-    options: Options, algs_dict: dict[str, list[Any]]
-) -> dict[str, list[Any]]:
+    options: Options, algs_dict: dict[str, list[str]]
+) -> dict[str, list[VoidFilter]]:
     """
     Adding filter algorithms.
 
@@ -142,10 +68,10 @@ def apply_filters(
         algs_dict (dict): dict of the user algorithms.
 
     Returns:
-        Dict where at each node filters  are prepended to the initial list of user algorithms.
+        Dict where at each node filters are prepended to the initial list of user algorithms.
     """
 
-    alg_filterd_dict: dict[str, list[Any]] = {}
+    alg_filterd_dict: dict[str, list[VoidFilter]] = {}
     for name, algs in algs_dict.items():
         algs_list = []
 
@@ -159,9 +85,12 @@ def apply_filters(
             ]
 
         if options.evt_pre_filters:
-            evt_pre_filters: list[Any] = []
-            for title, code in options.evt_pre_filters.items():
-                evt_filter = add_filter(title, code)
+            evt_pre_filters: list[VoidFilter] = []
+            for title, line in options.evt_pre_filters.items():
+                assert isinstance(line, (str, list))
+                evt_filter = create_lines_filter(
+                    title, line if isinstance(line, list) else [line]
+                )
                 evt_pre_filters.append(evt_filter)
             algs_list += evt_pre_filters
 
@@ -244,7 +173,7 @@ def configured_FunTuple(config: dict[str, Any]) -> dict[str, Any]:
                 filter_name += f"_{i}"
                 i = i + 1
 
-            tupleFilter = add_filter(filter_name, line)
+            tupleFilter = create_lines_filter(filter_name, [line])
             dictAlgs[key].append(tupleFilter)
 
         funTuple = Funtuple(
diff --git a/Phys/DaVinci/tests/config/test_algorithms.py b/Phys/DaVinci/tests/config/test_algorithms.py
index 6a732f764..99e2df77b 100644
--- a/Phys/DaVinci/tests/config/test_algorithms.py
+++ b/Phys/DaVinci/tests/config/test_algorithms.py
@@ -16,7 +16,6 @@ from DaVinci import Options
 from DaVinci.algorithms import (
     make_fsr_algs,
     create_lines_filter,
-    add_filter,
     apply_filters,
     configured_FunTuple,
 )
@@ -95,22 +94,6 @@ def test_add_spruce_filter():
     assert test_filter.fullname.startswith("VoidFilter/test_filter")
 
 
-def test_add_void_filter():
-    reset_global_store()
-    """
-    Check if DaVinci is able to implement correctly a Void filter
-    if 'HLT_PASS' string is not found in the filter code."
-    """
-    # options = Options(
-    #    data_type="Upgrade",
-    #    input_process=InputProcessTypes("Gen"),
-    #    evt_max=1,
-    #    simulation=True,
-    # )
-    test_filter = add_filter("test_filter_{hash}", "VOIDTEST_Filter")
-    assert "VoidFilter" in test_filter.fullname
-
-
 def test_apply_filters():
     reset_global_store()
     """
@@ -120,13 +103,17 @@ def test_apply_filters():
         data_type="Upgrade",
         input_raw_format=0.5,
         input_process="Gen",
+        input_stream="default",
         evt_max=1,
-        evt_pre_filters={"test_filter_{hash}": "EVT_PREFILTER"},
+        evt_pre_filters={"Hlt2_test_filter_{hash}": "Hlt2_EVT_PREFILTER"},
         simulation=True,
     )
-    alg_dict = {"test_alg": [VoidConsumer()]}
-    test_alg_dict = apply_filters(options, alg_dict)
-    list_of_main_expected_algs = ["LoKi__VoidFilter"]
+    with default_raw_event.bind(
+        raw_event_format=options.input_raw_format, stream=options.input_stream
+    ):
+        alg_dict = {"test_alg": [VoidConsumer()]}
+        test_alg_dict = apply_filters(options, alg_dict)
+        list_of_main_expected_algs = ["VoidFilter"]
 
     for exp_alg in list_of_main_expected_algs:
         assert any(exp_alg in alg.fullname for alg in test_alg_dict["test_alg"])
@@ -144,7 +131,7 @@ def test_configured_funtuple():
     config = {
         "TestTuple": {
             "location": "/Event/Spruce/SpruceTestLine/Particles",
-            "filters": ["HLT_PASS('SpruceTestLine1Decision')", "VoidTest_Filter"],
+            "filters": ["SpruceTestLine1Decision"],
             "preamble": ["TRACK_MAX_PT = MAXTREE(ISBASIC & HASTRACK, PT, -1)"],
             "tuple": "DecayTree",
             "fields": fields,
diff --git a/doc/configuration/davinci_configuration.rst b/doc/configuration/davinci_configuration.rst
index fac92eb94..71f2c0440 100644
--- a/doc/configuration/davinci_configuration.rst
+++ b/doc/configuration/davinci_configuration.rst
@@ -32,23 +32,22 @@ Event unpacking, FunTuple and many other algorithms run in a job can be very tim
 the input files could be much faster and efficient if an event pre-filter is applied on top of the whole job chain
 selecting only the events that satisfy a specific set of conditions.
 For adding an event per-filter in a job one can set the value of the ``evt_pre_filters`` property with a dict
-containing the an element for each filter you want to implement, where the key is the filter name and the object is a string
-containing the filter code. Then DaVinci will automatically create a ``LoKi__HDRFilter`` or
-``LoKi__VoidFilter`` instance according to filter code for each dict entry.
-For example, the ``filter_code`` can exploit the ``HLT_PASS`` feature to ensure the trigger/sprucing corresponding to the input location fired in that specific event.
+containing an element for each filter you want to implement, where the key is the filter name and the object is a string
+corresponding to the filter line name. Then DaVinci will automatically create the filter instance.
+For example, the filter can ensure the trigger/sprucing line fired in that specific event.
 This is done by including the following in your ``options.yaml`` file:
 
 .. code-block:: yaml
 
    evt_pre_filters:
-      Hlt2TopoLineFilter: HLT_PASS('Hlt2Topo2BodyLineDecision')
+      Hlt2TopoLineFilter: "Hlt2Topo2BodyLineDecision"
 
-A filter can also be instantiated using the ``create_lines_filter`` function:
+A filter can also be instantiated directly using the ``create_lines_filter`` function:
 
 .. code-block:: python
 
    from DaVinci.algorithms import create_lines_filter
-   filter = create_lines_filter("Hlt2TopoLineFilter", lines=['Hlt2Topo2BodyLineDecision']).
+   filter = create_lines_filter("Hlt2TopoLineFilter", lines=["Hlt2Topo2BodyLineDecision"]).
 
 Additional examples can be found `here <https://gitlab.cern.ch/lhcb/DaVinci/-/blob/master/DaVinciTests/tests/options/option_davinci_filters.py>`_ and `here <https://gitlab.cern.ch/lhcb/DaVinci/-/blob/master/DaVinciExamples/python/DaVinciExamples/tupling/option_davinci_tupling_from_spruce.py>`__.
 Additional information on how to implement a filter code can be found `here <https://twiki.cern.ch/twiki/bin/view/LHCb/FAQ/DaVinciFAQ#How_to_process_the_stripped_DSTs>`__ and `here <https://gitlab.cern.ch/lhcb/Phys/blob/master/Phys/PhysConf/python/PhysConf/Filters.py>`__.
-- 
GitLab