From 1be0977397983675e41f1498022230fb00559edf Mon Sep 17 00:00:00 2001
From: Anil Sonay <anil.sonay@cern.ch>
Date: Wed, 27 Jan 2021 02:33:03 +0100
Subject: [PATCH 1/2] Adding boolean flage for legacy topo

---
 .../Root/InvariantMassDeltaPhiInclusive2.cxx                | 2 +-
 .../L1Topo/L1TopoCoreSim/L1TopoCoreSim/TopoSteering.h       | 4 ++++
 Trigger/TrigT1/L1Topo/L1TopoCoreSim/Root/TopoSteering.cxx   | 1 +
 .../L1TopoInterfaces/L1TopoInterfaces/ConfigurableAlg.h     | 6 ++++++
 .../TrigT1/L1Topo/L1TopoInterfaces/Root/ConfigurableAlg.cxx | 4 +++-
 .../TrigT1/L1Topo/L1TopoSimulation/src/L1TopoSimulation.cxx | 2 ++
 6 files changed, 17 insertions(+), 2 deletions(-)

diff --git a/Trigger/TrigT1/L1Topo/L1TopoAlgorithms/Root/InvariantMassDeltaPhiInclusive2.cxx b/Trigger/TrigT1/L1Topo/L1TopoAlgorithms/Root/InvariantMassDeltaPhiInclusive2.cxx
index d80b2f826445..f0583b2801a1 100644
--- a/Trigger/TrigT1/L1Topo/L1TopoAlgorithms/Root/InvariantMassDeltaPhiInclusive2.cxx
+++ b/Trigger/TrigT1/L1Topo/L1TopoAlgorithms/Root/InvariantMassDeltaPhiInclusive2.cxx
@@ -221,7 +221,7 @@ TCS::InvariantMassDeltaPhiInclusive2::process( const std::vector<TCS::TOBArray c
                 const int eta2 = (*tob2)->eta();
                 const unsigned int aeta1 = std::abs(eta1);
                 const unsigned int aeta2 = std::abs(eta2);
-               for(unsigned int i=0; i<numberOutputBits(); ++i) {
+                for(unsigned int i=0; i<numberOutputBits(); ++i) {
                    if( parType_t((*tob1)->Et()) <= p_MinET1[i]) continue; // ET cut
                    if( parType_t((*tob2)->Et()) <= p_MinET2[i]) continue; // ET cut
                    if(p_ApplyEtaCut &&
diff --git a/Trigger/TrigT1/L1Topo/L1TopoCoreSim/L1TopoCoreSim/TopoSteering.h b/Trigger/TrigT1/L1Topo/L1TopoCoreSim/L1TopoCoreSim/TopoSteering.h
index 0f035f6597e5..3b6a293cf740 100644
--- a/Trigger/TrigT1/L1Topo/L1TopoCoreSim/L1TopoCoreSim/TopoSteering.h
+++ b/Trigger/TrigT1/L1Topo/L1TopoCoreSim/L1TopoCoreSim/TopoSteering.h
@@ -88,6 +88,8 @@ namespace TCS {
 
       void setAlgMsgLevel( TrigConf::MSGTC::Level lvl );
 
+      void setLegacyMode(bool isLegacyTopo) {m_isLegacyTopo=isLegacyTopo;}
+
       /**
        * @brief enables the histogramming service
        */
@@ -144,6 +146,8 @@ namespace TCS {
    private:
       bool m_useBitwise{false};                  // Using bitwise algorithms? Disabled by default. Needs a menu global flag.
 
+      bool m_isLegacyTopo{false};
+     
       TopoInputEvent         m_inputEvent;       // the input event
 
       TopoCoreSimResult      m_simulationResult; // the result of the execution
diff --git a/Trigger/TrigT1/L1Topo/L1TopoCoreSim/Root/TopoSteering.cxx b/Trigger/TrigT1/L1Topo/L1TopoCoreSim/Root/TopoSteering.cxx
index b7a12be19a32..81b7d42e80c6 100644
--- a/Trigger/TrigT1/L1Topo/L1TopoCoreSim/Root/TopoSteering.cxx
+++ b/Trigger/TrigT1/L1Topo/L1TopoCoreSim/Root/TopoSteering.cxx
@@ -104,6 +104,7 @@ TopoSteering::initializeAlgorithms() {
          if(m_histSvc) {
             alg->setL1TopoHistSvc(m_histSvc);
          }
+	 alg->setLegacyMode(m_isLegacyTopo);
          alg->initialize();
       }
 
diff --git a/Trigger/TrigT1/L1Topo/L1TopoInterfaces/L1TopoInterfaces/ConfigurableAlg.h b/Trigger/TrigT1/L1Topo/L1TopoInterfaces/L1TopoInterfaces/ConfigurableAlg.h
index 2cc791c0d837..17118f12ff8e 100644
--- a/Trigger/TrigT1/L1Topo/L1TopoInterfaces/L1TopoInterfaces/ConfigurableAlg.h
+++ b/Trigger/TrigT1/L1Topo/L1TopoInterfaces/L1TopoInterfaces/ConfigurableAlg.h
@@ -41,6 +41,8 @@ namespace TCS {
       // setting the class name
       void setClassName(const std::string & className) { m_className = className; }
 
+      void setLegacyMode(bool isLegacyTopo) {m_isLegacyTopo=isLegacyTopo;}
+
       // accessors
       const std::string & name() const { return m_name; }
       const std::string & className() const { return m_className; }
@@ -58,6 +60,8 @@ namespace TCS {
 
       bool isDecisionAlg() const { return m_algType == DECISION; }
 
+      bool isLegacyTopo() const { return m_isLegacyTopo; }
+
       // const access to parameter
       const Parameter & parameter(const std::string & parameterName) const;
 
@@ -97,6 +101,7 @@ namespace TCS {
 
       void fillHist2D(const std::string & histName, double x, double y);
       
+     
    private:
 
       class ConfigurableAlgImpl;
@@ -114,6 +119,7 @@ namespace TCS {
 
       AlgType  m_algType; // stores type of alg (Sorting or Decision)
 
+      bool m_isLegacyTopo;
 
    };
 
diff --git a/Trigger/TrigT1/L1Topo/L1TopoInterfaces/Root/ConfigurableAlg.cxx b/Trigger/TrigT1/L1Topo/L1TopoInterfaces/Root/ConfigurableAlg.cxx
index a38063fe9ef9..93a2cdf567db 100644
--- a/Trigger/TrigT1/L1Topo/L1TopoInterfaces/Root/ConfigurableAlg.cxx
+++ b/Trigger/TrigT1/L1Topo/L1TopoInterfaces/Root/ConfigurableAlg.cxx
@@ -102,13 +102,15 @@ ConfigurableAlg::ConfigurableAlg(const  std::string & name, AlgType algType) :
    m_impl(new ConfigurableAlgImpl(name)),
    m_name(name),
    m_parameters(name),
-   m_algType(algType)
+   m_algType(algType),
+   m_isLegacyTopo(false)
 {}
 
 
 ConfigurableAlg::~ConfigurableAlg()
 {}
 
+
 // define parameters to be called by developer
 void
 ConfigurableAlg::defineParameter(const std::string & name, TCS::parType_t value) {
diff --git a/Trigger/TrigT1/L1Topo/L1TopoSimulation/src/L1TopoSimulation.cxx b/Trigger/TrigT1/L1Topo/L1TopoSimulation/src/L1TopoSimulation.cxx
index bd46c92c83a0..4692ab426f6f 100644
--- a/Trigger/TrigT1/L1Topo/L1TopoSimulation/src/L1TopoSimulation.cxx
+++ b/Trigger/TrigT1/L1Topo/L1TopoSimulation/src/L1TopoSimulation.cxx
@@ -132,6 +132,8 @@ L1TopoSimulation::initialize() {
 
    m_topoSteering->setHistSvc(topoHistSvc);
 
+   m_topoSteering->setLegacyMode(m_isLegacyTopo);
+
    return StatusCode::SUCCESS;
 }
 
-- 
GitLab


From 55f3da894126d7c6ea13c48bebc686aba7d6f0ac Mon Sep 17 00:00:00 2001
From: Anil Sonay <anil.sonay@cern.ch>
Date: Wed, 27 Jan 2021 11:04:04 +0100
Subject: [PATCH 2/2] Including the flag into l1topo menu configuration

---
 .../L1TopoCoreSim/L1TopoCoreSim/TopoSteeringStructure.h       | 2 +-
 Trigger/TrigT1/L1Topo/L1TopoCoreSim/Root/TopoSteering.cxx     | 2 +-
 .../L1Topo/L1TopoCoreSim/Root/TopoSteeringStructure.cxx       | 2 +-
 .../TrigT1/L1Topo/L1TopoSimulation/src/L1TopoSimulation.cxx   | 4 ++--
 4 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/Trigger/TrigT1/L1Topo/L1TopoCoreSim/L1TopoCoreSim/TopoSteeringStructure.h b/Trigger/TrigT1/L1Topo/L1TopoCoreSim/L1TopoCoreSim/TopoSteeringStructure.h
index 8aac19c35c5e..676de0e712b7 100644
--- a/Trigger/TrigT1/L1Topo/L1TopoCoreSim/L1TopoCoreSim/TopoSteeringStructure.h
+++ b/Trigger/TrigT1/L1Topo/L1TopoCoreSim/L1TopoCoreSim/TopoSteeringStructure.h
@@ -31,7 +31,7 @@ namespace TCS {
 
       ~TopoSteeringStructure();
 
-      StatusCode setupFromMenu(const TrigConf::L1Menu& l1menu, bool debug = false, bool legacy = false);
+      StatusCode setupFromMenu(const TrigConf::L1Menu& l1menu, bool legacy = false, bool debug = false);
 
       // accessors
       bool isConfigured() const { return m_isConfigured; }
diff --git a/Trigger/TrigT1/L1Topo/L1TopoCoreSim/Root/TopoSteering.cxx b/Trigger/TrigT1/L1Topo/L1TopoCoreSim/Root/TopoSteering.cxx
index 81b7d42e80c6..00090d47eb85 100644
--- a/Trigger/TrigT1/L1Topo/L1TopoCoreSim/Root/TopoSteering.cxx
+++ b/Trigger/TrigT1/L1Topo/L1TopoCoreSim/Root/TopoSteering.cxx
@@ -59,7 +59,7 @@ TCS::StatusCode
 TopoSteering::setupFromConfiguration(const TrigConf::L1Menu& l1menu){
 
 
-  TCS::StatusCode sc = m_structure.setupFromMenu( l1menu );
+  TCS::StatusCode sc = m_structure.setupFromMenu( l1menu, m_isLegacyTopo );
   
   // configure layout of the simulation result
   sc &= m_simulationResult.setupFromMenu( m_structure.outputConnectors() );
diff --git a/Trigger/TrigT1/L1Topo/L1TopoCoreSim/Root/TopoSteeringStructure.cxx b/Trigger/TrigT1/L1Topo/L1TopoCoreSim/Root/TopoSteeringStructure.cxx
index e06236282245..116d685268bb 100644
--- a/Trigger/TrigT1/L1Topo/L1TopoCoreSim/Root/TopoSteeringStructure.cxx
+++ b/Trigger/TrigT1/L1Topo/L1TopoCoreSim/Root/TopoSteeringStructure.cxx
@@ -120,7 +120,7 @@ TCS::TopoSteeringStructure::printParameters(std::ostream & o) const {
 
 
 TCS::StatusCode
-TCS::TopoSteeringStructure::setupFromMenu(const TrigConf::L1Menu& l1menu, bool debug, bool legacy) {
+TCS::TopoSteeringStructure::setupFromMenu(const TrigConf::L1Menu& l1menu, bool legacy, bool debug) {
 
    if(debug)
       cout << "/***************************************************************************/" << endl
diff --git a/Trigger/TrigT1/L1Topo/L1TopoSimulation/src/L1TopoSimulation.cxx b/Trigger/TrigT1/L1Topo/L1TopoSimulation/src/L1TopoSimulation.cxx
index 4692ab426f6f..7b50bf1e660b 100644
--- a/Trigger/TrigT1/L1Topo/L1TopoSimulation/src/L1TopoSimulation.cxx
+++ b/Trigger/TrigT1/L1Topo/L1TopoSimulation/src/L1TopoSimulation.cxx
@@ -73,6 +73,8 @@ L1TopoSimulation::initialize() {
 
    m_topoSteering->setMsgLevel( TrigConf::MSGTC::Level((int)m_topoSteeringOutputLevel) );
 
+   m_topoSteering->setLegacyMode(m_isLegacyTopo);
+   
    ATH_MSG_DEBUG("retrieving " << m_monitors);
    CHECK( m_monitors.retrieve() );
 
@@ -132,8 +134,6 @@ L1TopoSimulation::initialize() {
 
    m_topoSteering->setHistSvc(topoHistSvc);
 
-   m_topoSteering->setLegacyMode(m_isLegacyTopo);
-
    return StatusCode::SUCCESS;
 }
 
-- 
GitLab