From 062d04748e224afd41cb28946d454d36eca117d2 Mon Sep 17 00:00:00 2001
From: Eric Torrence <eric.torrence@cern.ch>
Date: Tue, 24 Sep 2024 06:29:16 +0200
Subject: [PATCH] Fix ntuple maker to work with waveforms

---
 .../NtupleDumper/python/NtupleDumperConfig.py     |  2 +-
 .../NtupleDumper/src/NtupleDumperAlg.cxx          |  7 ++++---
 .../WaveEventAthenaPool/CMakeLists.txt            |  3 ++-
 package_filters.txt                               | 15 ++++++++-------
 4 files changed, 15 insertions(+), 12 deletions(-)

diff --git a/PhysicsAnalysis/NtupleDumper/python/NtupleDumperConfig.py b/PhysicsAnalysis/NtupleDumper/python/NtupleDumperConfig.py
index cc68970f9..af6432263 100644
--- a/PhysicsAnalysis/NtupleDumper/python/NtupleDumperConfig.py
+++ b/PhysicsAnalysis/NtupleDumper/python/NtupleDumperConfig.py
@@ -23,7 +23,7 @@ def NtupleDumperAlgCfg(flags, OutName, **kwargs):
     actsExtrapolationTool = CompFactory.FaserActsExtrapolationTool("FaserActsExtrapolationTool")
     actsExtrapolationTool.MaxSteps = 10000
     actsExtrapolationTool.TrackingGeometryTool = actsTrackingGeometryTool 
-
+    
     NtupleDumperAlg = CompFactory.NtupleDumperAlg("NtupleDumperAlg",**kwargs)
     NtupleDumperAlg.ExtrapolationTool = actsExtrapolationTool
     acc.addEventAlgo(NtupleDumperAlg)
diff --git a/PhysicsAnalysis/NtupleDumper/src/NtupleDumperAlg.cxx b/PhysicsAnalysis/NtupleDumper/src/NtupleDumperAlg.cxx
index 6880f5dce..d964b1d2c 100644
--- a/PhysicsAnalysis/NtupleDumper/src/NtupleDumperAlg.cxx
+++ b/PhysicsAnalysis/NtupleDumper/src/NtupleDumperAlg.cxx
@@ -577,7 +577,6 @@ StatusCode NtupleDumperAlg::initialize()
   return StatusCode::SUCCESS;
 }
 
-
 StatusCode NtupleDumperAlg::execute(const EventContext &ctx) const
 {
   clearTree();
@@ -683,7 +682,7 @@ StatusCode NtupleDumperAlg::execute(const EventContext &ctx) const
       m_clock_phase = (clockHandle->phase() / 3.14159) * 12.5;
     }
   }
-
+  
   // process all waveform data for all scintillator and calorimeter channels
   // Not all are guaranteed to exist, so fill the ones that are valid
   SG::ReadHandle<xAOD::WaveformHitContainer> vetoNuContainer { m_vetoNuContainer, ctx };
@@ -1053,6 +1052,7 @@ StatusCode NtupleDumperAlg::execute(const EventContext &ctx) const
     m_calo_total_E_EM_fudged = m_calo_total_E_EM_fudged * m_caloMC_FudgeFactor;
   }
 
+
   // load in calibrated preshower container
   SG::ReadHandle<xAOD::CalorimeterHitContainer> preshowerCalibratedContainer { m_preshowerCalibratedContainer, ctx };
   ATH_CHECK(preshowerCalibratedContainer.isValid());
@@ -1066,7 +1066,8 @@ StatusCode NtupleDumperAlg::execute(const EventContext &ctx) const
 
     ATH_MSG_DEBUG("Calibrated preshower: ch is " << ch << ", edep is " << hit->E_dep() << ", E_EM is " << hit->E_EM() << ", Nmip is " << hit->Nmip() << ", fit_to_raw_ratio is " << hit->fit_to_raw_ratio());
   }
-
+ 
+  
   // enforce blinding such that events that miss the veto layers and have a large calo signal are skipped and not in the output root file
   // Only blind colliding BCIDs (+/- 1)
   bool blinded_event = false;
diff --git a/Waveform/WaveEventCnv/WaveEventAthenaPool/CMakeLists.txt b/Waveform/WaveEventCnv/WaveEventAthenaPool/CMakeLists.txt
index db8532180..497dde277 100644
--- a/Waveform/WaveEventCnv/WaveEventAthenaPool/CMakeLists.txt
+++ b/Waveform/WaveEventCnv/WaveEventAthenaPool/CMakeLists.txt
@@ -13,7 +13,8 @@ atlas_add_poolcnv_library( WaveEventAthenaPoolPoolCnv
    WaveRawEvent/RawWaveformContainer.h
    LINK_LIBRARIES Identifier GeneratorObjectsTPCnv AthAllocators AthContainers
    AthenaBaseComps AthenaKernel SGTools StoreGateLib AthenaPoolCnvSvcLib
-   AthenaPoolUtilities AtlasSealCLHEP GaudiKernel WaveRawEvent
+   AthenaPoolUtilities GaudiKernel WaveRawEvent
+   # AtlasSealCLHEP 
    )
 
 atlas_add_dictionary( WaveEventAthenaPoolCnvDict
diff --git a/package_filters.txt b/package_filters.txt
index c3167d0ab..6844b9487 100644
--- a/package_filters.txt
+++ b/package_filters.txt
@@ -149,13 +149,14 @@
 -Tracking/.*
 +Trigger/FaserTrigEventCnv/FaserTriggerByteStream
 #-Trigger/.*
-+Waveform/WaveDigiTools
-+Waveform/WaveEventCnv/WaveByteStream
-+Waveform/WaveformConditions/WaveformConditionsTools
-+Waveform/WaveRawEvent
-+Waveform/WaveRecAlgs
-+Waveform/WaveRecTools
--Waveform/.*
+#+Waveform/WaveDigiTools
+#+Waveform/WaveEventCnv/WaveByteStream
+#+Waveform/WaveEventCnv
+#+Waveform/WaveformConditions
+#+Waveform/WaveRawEvent
+#+Waveform/WaveRecAlgs
+#+Waveform/WaveRecTools
++Waveform/.*
 +faser-common/EventFormats
 +faser-common/Exceptions
 +faser-common/Logging
-- 
GitLab