diff --git a/JugAlgo/CMakeLists.txt b/JugAlgo/CMakeLists.txt index 1426c14840f55704af22317f9fa2b80429540e56..32f06aa01610dd31cfc60aaedf1f27caf78a97a7 100644 --- a/JugAlgo/CMakeLists.txt +++ b/JugAlgo/CMakeLists.txt @@ -7,7 +7,7 @@ gaudi_add_header_only_library(JugAlgo LINK - Gaudi::GaudiKernel Gaudi::GaudiAlgLib + Gaudi::GaudiKernel algorithms::core JugBase ) @@ -17,7 +17,7 @@ gaudi_add_module(JugAlgoPlugins SOURCES ${JugAlgoPlugins_sources} LINK - Gaudi::GaudiKernel Gaudi::GaudiAlgLib + Gaudi::GaudiKernel JugBase JugAlgo algorithms::core diff --git a/JugAlgo/include/JugAlgo/Algorithm.h b/JugAlgo/include/JugAlgo/Algorithm.h index 0e17e9c7138076983a5a0bd0294626a108ee29ce..ccbe65ddfbe95c3382950fe76f96aba108dc7552 100644 --- a/JugAlgo/include/JugAlgo/Algorithm.h +++ b/JugAlgo/include/JugAlgo/Algorithm.h @@ -7,7 +7,7 @@ #include <algorithms/algorithm.h> #include <algorithms/type_traits.h> -#include <GaudiAlg/GaudiAlgorithm.h> +#include <Gaudi/Algorithm.h> #include <GaudiKernel/Service.h> #include <JugAlgo/IAlgoServiceSvc.h> #include <JugAlgo/detail/DataProxy.h> @@ -23,7 +23,7 @@ namespace Jug::Algo { -template <class AlgoImpl> class Algorithm : public GaudiAlgorithm { +template <class AlgoImpl> class Algorithm : public Gaudi::Algorithm { public: using algo_type = AlgoImpl; using input_type = typename algo_type::input_type; @@ -32,7 +32,7 @@ public: using Output = typename algo_type::Output; Algorithm(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) + : Gaudi::Algorithm(name, svcLoc) , m_algo{name} , m_output{this, m_algo.outputNames()} , m_input{this, m_algo.inputNames()} { @@ -80,7 +80,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { try { m_algo.process(m_input.get(), m_output.get()); } catch (const std::exception& e) { diff --git a/JugAlgo/include/JugAlgo/detail/DataProxy.h b/JugAlgo/include/JugAlgo/detail/DataProxy.h index 8b0677f394e5bb0507246b78125af3a4c707ed2b..92810f0654c1e5e26b39f7b305c57608a9f1e0e5 100644 --- a/JugAlgo/include/JugAlgo/detail/DataProxy.h +++ b/JugAlgo/include/JugAlgo/detail/DataProxy.h @@ -7,7 +7,7 @@ #include <algorithms/algorithm.h> #include <algorithms/type_traits.h> -#include <GaudiAlg/GaudiAlgorithm.h> +#include <Gaudi/Algorithm.h> #include <k4FWCore/DataHandle.h> namespace Jug::Algo::detail { @@ -135,7 +135,7 @@ public: constexpr static size_t kSize = Data::kSize; using names_type = typename Data::key_type; using elements_type = - decltype(createElements<kMode>(std::declval<GaudiAlgorithm*>(), names_type(), data_type(), + decltype(createElements<kMode>(std::declval<Gaudi::Algorithm*>(), names_type(), data_type(), std::make_index_sequence<kSize>())); template <class Owner> diff --git a/JugBase/CMakeLists.txt b/JugBase/CMakeLists.txt index 0d1d09b2ebfa167c7e1042634c9af559f9c8628b..7a3f0118b394f11a4b57b415308136112b1b9ed3 100644 --- a/JugBase/CMakeLists.txt +++ b/JugBase/CMakeLists.txt @@ -7,7 +7,7 @@ gaudi_add_header_only_library(JugBase LINK - Gaudi::GaudiKernel Gaudi::GaudiAlgLib + Gaudi::GaudiKernel podio::podioRootIO ROOT::Core ROOT::RIO ROOT::Tree DD4hep::DDRec @@ -20,7 +20,7 @@ gaudi_add_module(JugBasePlugins SOURCES ${JugBasePlugins_sources} LINK - Gaudi::GaudiKernel Gaudi::GaudiAlgLib + Gaudi::GaudiKernel ROOT::Core ROOT::RIO ROOT::Tree JugBase EDM4HEP::edm4hep diff --git a/JugDigi/CMakeLists.txt b/JugDigi/CMakeLists.txt index 35d84729659696a7f6bda429029e42942851268f..4d35260ffbcfae5517471543c6823e7b23fe4ba1 100644 --- a/JugDigi/CMakeLists.txt +++ b/JugDigi/CMakeLists.txt @@ -10,7 +10,7 @@ gaudi_add_module(JugDigiPlugins SOURCES ${JugDigiPlugins_sources} LINK - Gaudi::GaudiAlgLib Gaudi::GaudiKernel + Gaudi::GaudiKernel JugBase ROOT::Core ROOT::RIO ROOT::Tree EDM4HEP::edm4hep diff --git a/JugDigi/src/components/CalorimeterBirksCorr.cpp b/JugDigi/src/components/CalorimeterBirksCorr.cpp index b29f56414d2191e3e2af0bfcd27b0ad19107c949..9e50b13f839360f0d5632d0124ff6b5e5c177df1 100644 --- a/JugDigi/src/components/CalorimeterBirksCorr.cpp +++ b/JugDigi/src/components/CalorimeterBirksCorr.cpp @@ -10,9 +10,7 @@ #include <algorithm> #include <cmath> -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "Gaudi/Property.h" #include "GaudiKernel/RndmGenerators.h" @@ -33,24 +31,24 @@ namespace Jug::Digi { * \ingroup digi * \ingroup calorimetry */ - class CalorimeterBirksCorr : public GaudiAlgorithm { + class CalorimeterBirksCorr : public Gaudi::Algorithm { public: // digitization settings Gaudi::Property<double> m_birksConstant{this, "birksConstant", 0.126*mm/MeV}; - DataHandle<edm4hep::SimCalorimeterHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, + mutable DataHandle<edm4hep::SimCalorimeterHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4hep::SimCalorimeterHitCollection> m_outputHitCollection{"outputHitCollection", Gaudi::DataHandle::Writer, + mutable DataHandle<edm4hep::SimCalorimeterHitCollection> m_outputHitCollection{"outputHitCollection", Gaudi::DataHandle::Writer, this}; SmartIF<IParticleSvc> m_pidSvc; // unitless conterpart of arguments double birksConstant{0}; - // ill-formed: using GaudiAlgorithm::GaudiAlgorithm; + // ill-formed: using Gaudi::Algorithm::GaudiAlgorithm; CalorimeterBirksCorr(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHitCollection", m_inputHitCollection, ""); declareProperty("outputHitCollection", m_outputHitCollection, ""); @@ -58,7 +56,7 @@ namespace Jug::Digi { StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } @@ -76,7 +74,7 @@ namespace Jug::Digi { return StatusCode::SUCCESS; } - StatusCode execute() override + StatusCode execute(const EventContext&) const override { auto& ohits = *m_outputHitCollection.createAndPut(); for (const auto& hit : *m_inputHitCollection.get()) { diff --git a/JugDigi/src/components/CalorimeterHitDigi.cpp b/JugDigi/src/components/CalorimeterHitDigi.cpp index e71d03bda03128e39e384eff41cbca304978d282..21dc57e240d16868485befb653459dc5ab1bf175 100644 --- a/JugDigi/src/components/CalorimeterHitDigi.cpp +++ b/JugDigi/src/components/CalorimeterHitDigi.cpp @@ -14,9 +14,7 @@ #include <cmath> #include <unordered_map> -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "Gaudi/Property.h" #include "GaudiKernel/RndmGenerators.h" @@ -44,7 +42,7 @@ namespace Jug::Digi { * \ingroup digi * \ingroup calorimetry */ - class CalorimeterHitDigi : public GaudiAlgorithm { + class CalorimeterHitDigi : public Gaudi::Algorithm { public: // additional smearing resolutions Gaudi::Property<std::vector<double>> u_eRes{this, "energyResolutions", {}}; // a/sqrt(E/GeV) + b + c/(E/GeV) @@ -80,25 +78,25 @@ namespace Jug::Digi { SmartIF<IGeoSvc> m_geoSvc; uint64_t id_mask{0}, ref_mask{0}; - DataHandle<edm4hep::SimCalorimeterHitCollection> m_inputHitCollection{ + mutable DataHandle<edm4hep::SimCalorimeterHitCollection> m_inputHitCollection{ "inputHitCollection", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4hep::RawCalorimeterHitCollection> m_outputHitCollection{ + mutable DataHandle<edm4hep::RawCalorimeterHitCollection> m_outputHitCollection{ "outputHitCollection", Gaudi::DataHandle::Writer, this}; - // ill-formed: using GaudiAlgorithm::GaudiAlgorithm; + // ill-formed: using Gaudi::Algorithm::GaudiAlgorithm; CalorimeterHitDigi(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHitCollection", m_inputHitCollection, ""); declareProperty("outputHitCollection", m_outputHitCollection, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } // random number generator from service - auto randSvc = svc<IRndmGenSvc>("RndmGenSvc", true); + auto randSvc = Gaudi::svcLocator()->service<IRndmGenSvc>("RndmGenSvc", true); auto sc = m_normDist.initialize(randSvc, Rndm::Gauss(0.0, 1.0)); if (!sc.isSuccess()) { return StatusCode::FAILURE; @@ -154,7 +152,7 @@ namespace Jug::Digi { return StatusCode::SUCCESS; } - StatusCode execute() override + StatusCode execute(const EventContext&) const override { if (!u_fields.value().empty()) { signal_sum_digi(); @@ -165,7 +163,7 @@ namespace Jug::Digi { } private: - void single_hits_digi() { + void single_hits_digi() const { // input collections const auto* const simhits = m_inputHitCollection.get(); // Create output collections @@ -202,7 +200,7 @@ namespace Jug::Digi { } } - void signal_sum_digi() { + void signal_sum_digi() const { const auto* const simhits = m_inputHitCollection.get(); auto* rawhits = m_outputHitCollection.createAndPut(); diff --git a/JugDigi/src/components/PhotoMultiplierDigi.cpp b/JugDigi/src/components/PhotoMultiplierDigi.cpp index daf42e6aed3ad3fcc5cff8a503142c18b89b0d02..bc63b6f0e63fd81bec4a98c692acbe2c47341daa 100644 --- a/JugDigi/src/components/PhotoMultiplierDigi.cpp +++ b/JugDigi/src/components/PhotoMultiplierDigi.cpp @@ -15,9 +15,7 @@ #include <unordered_map> #include <cmath> -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/Transformer.h" -#include "GaudiAlg/GaudiTool.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/PhysicalConstants.h" @@ -38,12 +36,12 @@ namespace Jug::Digi { * * \ingroup digi */ -class PhotoMultiplierDigi : public GaudiAlgorithm +class PhotoMultiplierDigi : public Gaudi::Algorithm { public: - DataHandle<edm4hep::SimTrackerHitCollection> + mutable DataHandle<edm4hep::SimTrackerHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::RawTrackerHitCollection> + mutable DataHandle<edm4eic::RawTrackerHitCollection> m_outputHitCollection{"outputHitCollection", Gaudi::DataHandle::Writer, this}; Gaudi::Property<std::vector<std::pair<double, double>>> u_quantumEfficiency{this, "quantumEfficiency", {{2.6*eV, 0.3}, {7.0*eV, 0.3}}}; @@ -57,7 +55,7 @@ public: // constructor PhotoMultiplierDigi(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHitCollection", m_inputHitCollection,""); declareProperty("outputHitCollection", m_outputHitCollection, ""); @@ -65,11 +63,11 @@ public: StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } - auto randSvc = svc<IRndmGenSvc>("RndmGenSvc", true); + auto randSvc = Gaudi::svcLocator()->service<IRndmGenSvc>("RndmGenSvc", true); auto sc1 = m_rngUni.initialize(randSvc, Rndm::Flat(0., 1.)); auto sc2 = m_rngNorm.initialize(randSvc, Rndm::Gauss(0., 1.)); if (!sc1.isSuccess() || !sc2.isSuccess()) { @@ -82,7 +80,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override + StatusCode execute(const EventContext&) const override { // input collection const auto &sim = *m_inputHitCollection.get(); diff --git a/JugDigi/src/components/SiliconTrackerDigi.cpp b/JugDigi/src/components/SiliconTrackerDigi.cpp index 18face7fd7a2be7c18a49016fe59605e461f28b9..6772ee6d76c547135515077414006323507781f3 100644 --- a/JugDigi/src/components/SiliconTrackerDigi.cpp +++ b/JugDigi/src/components/SiliconTrackerDigi.cpp @@ -5,9 +5,7 @@ #include <cmath> #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "GaudiKernel/RndmGenerators.h" @@ -27,34 +25,34 @@ namespace Jug::Digi { * * \ingroup digi */ -class SiliconTrackerDigi : public GaudiAlgorithm { +class SiliconTrackerDigi : public Gaudi::Algorithm { private: Gaudi::Property<double> m_timeResolution{this, "timeResolution", 10}; // todo : add units Gaudi::Property<double> m_threshold{this, "threshold", 0. * Gaudi::Units::keV}; Rndm::Numbers m_gaussDist; - DataHandle<edm4hep::SimTrackerHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, + mutable DataHandle<edm4hep::SimTrackerHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::RawTrackerHitCollection> m_outputHitCollection{"outputHitCollection", Gaudi::DataHandle::Writer, + mutable DataHandle<edm4eic::RawTrackerHitCollection> m_outputHitCollection{"outputHitCollection", Gaudi::DataHandle::Writer, this}; public: - // ill-formed: using GaudiAlgorithm::GaudiAlgorithm; - SiliconTrackerDigi(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + // ill-formed: using Gaudi::Algorithm::GaudiAlgorithm; + SiliconTrackerDigi(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHitCollection", m_inputHitCollection, ""); declareProperty("outputHitCollection", m_outputHitCollection, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } - IRndmGenSvc* randSvc = svc<IRndmGenSvc>("RndmGenSvc", true); + IRndmGenSvc* randSvc = Gaudi::svcLocator()->service<IRndmGenSvc>("RndmGenSvc", true); StatusCode sc = m_gaussDist.initialize(randSvc, Rndm::Gauss(0.0, m_timeResolution.value())); if (!sc.isSuccess()) { return StatusCode::FAILURE; } return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collection const auto* const simhits = m_inputHitCollection.get(); // Create output collections diff --git a/JugDigi/src/components/SimTrackerHitsCollector.cpp b/JugDigi/src/components/SimTrackerHitsCollector.cpp index fa3fbc4754a0bd07445f111e055baf5bb17d4ae2..6501a1195df60d8ee0ba79076852ff582b848f51 100644 --- a/JugDigi/src/components/SimTrackerHitsCollector.cpp +++ b/JugDigi/src/components/SimTrackerHitsCollector.cpp @@ -2,10 +2,8 @@ // Copyright (C) 2022 Wouter Deconinck, Whitney Armstrong, Chao Peng // Gaudi -#include "GaudiAlg/GaudiAlgorithm.h" +#include "Gaudi/Algorithm.h" #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" #include <k4FWCore/DataHandle.h> @@ -21,16 +19,16 @@ namespace Jug::Digi { * * \ingroup digi */ - class SimTrackerHitsCollector : public GaudiAlgorithm { + class SimTrackerHitsCollector : public Gaudi::Algorithm { private: Gaudi::Property<std::vector<std::string>> m_inputSimTrackerHits{this, "inputSimTrackerHits", {},"Tracker hits to be aggregated"}; - DataHandle<edm4hep::SimTrackerHitCollection> m_outputSimTrackerHits{"outputSimTrackerHits", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4hep::SimTrackerHitCollection> m_outputSimTrackerHits{"outputSimTrackerHits", Gaudi::DataHandle::Writer, this}; std::vector<DataHandle<edm4hep::SimTrackerHitCollection>*> m_hitCollections; public: SimTrackerHitsCollector(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) + : Gaudi::Algorithm(name, svcLoc) { declareProperty("outputSimTrackerHits", m_outputSimTrackerHits, "output hits combined into single collection"); } @@ -41,7 +39,7 @@ namespace Jug::Digi { } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } for (auto colname : m_inputSimTrackerHits) { @@ -51,7 +49,7 @@ namespace Jug::Digi { return StatusCode::SUCCESS; } - StatusCode execute() override + StatusCode execute(const EventContext&) const override { auto* outputHits = m_outputSimTrackerHits.createAndPut(); if (msgLevel(MSG::DEBUG)) { diff --git a/JugFast/CMakeLists.txt b/JugFast/CMakeLists.txt index b9d9810f357591a31154139e9060bce957264840..daec257e92025b39174afd6de34f5c63c9a2d77e 100644 --- a/JugFast/CMakeLists.txt +++ b/JugFast/CMakeLists.txt @@ -10,7 +10,7 @@ gaudi_add_module(JugFastPlugins SOURCES ${JugFastPlugins_sources} LINK - Gaudi::GaudiAlgLib Gaudi::GaudiKernel + Gaudi::GaudiKernel JugBase JugAlgo algorithms::core algorithms::truth diff --git a/JugFast/src/components/ClusterMerger.cpp b/JugFast/src/components/ClusterMerger.cpp index 07465ad63dc2a93cbf765c4ba40bd7d46788ddae..ccc4b42ee1c47c06c64eb639def645a0e9a83daf 100644 --- a/JugFast/src/components/ClusterMerger.cpp +++ b/JugFast/src/components/ClusterMerger.cpp @@ -7,9 +7,7 @@ #include <fmt/format.h> // Gaudi #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include <k4FWCore/DataHandle.h> @@ -28,17 +26,17 @@ namespace Jug::Fast { * * \ingroup fast */ -class ClusterMerger : public GaudiAlgorithm { +class ClusterMerger : public Gaudi::Algorithm { private: // Input - DataHandle<edm4eic::ClusterCollection> m_inputClusters{"InputClusters", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::MCRecoClusterParticleAssociationCollection> m_inputAssociations{"InputAssociations", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::ClusterCollection> m_inputClusters{"InputClusters", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::MCRecoClusterParticleAssociationCollection> m_inputAssociations{"InputAssociations", Gaudi::DataHandle::Reader, this}; // Output - DataHandle<edm4eic::ClusterCollection> m_outputClusters{"OutputClusters", Gaudi::DataHandle::Writer, this}; - DataHandle<edm4eic::MCRecoClusterParticleAssociationCollection> m_outputAssociations{"OutputAssociations", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4eic::ClusterCollection> m_outputClusters{"OutputClusters", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4eic::MCRecoClusterParticleAssociationCollection> m_outputAssociations{"OutputAssociations", Gaudi::DataHandle::Writer, this}; public: ClusterMerger(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputClusters", m_inputClusters, "Input cluster collection"); declareProperty("inputAssociations", m_inputAssociations, "Input cluster association"); declareProperty("outputClusters", m_outputClusters, "Cluster collection with good energy precision"); @@ -46,14 +44,14 @@ public: } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { if (msgLevel(MSG::DEBUG)) { debug() << "Merging cluster that belong to the same primary particle" << endmsg; } diff --git a/JugFast/src/components/InclusiveKinematicsTruth.cpp b/JugFast/src/components/InclusiveKinematicsTruth.cpp index 822e8c179bd88ce1c3d430604acd4285b4fedfc1..d5f7f3f755c757629448dfdc5378de9925e27536 100644 --- a/JugFast/src/components/InclusiveKinematicsTruth.cpp +++ b/JugFast/src/components/InclusiveKinematicsTruth.cpp @@ -1,10 +1,7 @@ // SPDX-License-Identifier: LGPL-3.0-or-later // Copyright (C) 2022 Wouter Deconinck -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Producer.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/PhysicalConstants.h" #include <algorithm> @@ -26,13 +23,13 @@ using ROOT::Math::PxPyPzEVector; namespace Jug::Fast { -class InclusiveKinematicsTruth : public GaudiAlgorithm { +class InclusiveKinematicsTruth : public Gaudi::Algorithm { private: - DataHandle<edm4hep::MCParticleCollection> m_inputMCParticleCollection{ + mutable DataHandle<edm4hep::MCParticleCollection> m_inputMCParticleCollection{ "inputMCParticles", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::InclusiveKinematicsCollection> m_outputInclusiveKinematicsCollection{ + mutable DataHandle<edm4eic::InclusiveKinematicsCollection> m_outputInclusiveKinematicsCollection{ "outputInclusiveKinematics", Gaudi::DataHandle::Writer, this}; @@ -44,13 +41,13 @@ private: public: InclusiveKinematicsTruth(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputMCParticles", m_inputMCParticleCollection, "MCParticles"); declareProperty("outputInclusiveKinematics", m_outputInclusiveKinematicsCollection, "InclusiveKinematicsTruth"); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } @@ -68,7 +65,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collections const auto& mcparts = *(m_inputMCParticleCollection.get()); // output collection diff --git a/JugFast/src/components/MatchClusters.cpp b/JugFast/src/components/MatchClusters.cpp index 553f33e3ad2d2716b80d92b1167c75217e3d8f05..0e0d9780d4e05a4ec4e6713ca0e9a6876b2ad33f 100644 --- a/JugFast/src/components/MatchClusters.cpp +++ b/JugFast/src/components/MatchClusters.cpp @@ -10,10 +10,7 @@ #include <fmt/format.h> -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Producer.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/RndmGenerators.h" #include <k4FWCore/DataHandle.h> @@ -29,13 +26,13 @@ namespace Jug::Fast { -class MatchClusters : public GaudiAlgorithm { +class MatchClusters : public Gaudi::Algorithm { private: // input data - DataHandle<edm4hep::MCParticleCollection> m_inputMCParticles{"MCParticles", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::ReconstructedParticleCollection> m_inputParticles{"ReconstructedChargedParticles", + mutable DataHandle<edm4hep::MCParticleCollection> m_inputMCParticles{"MCParticles", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::ReconstructedParticleCollection> m_inputParticles{"ReconstructedChargedParticles", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::MCRecoParticleAssociationCollection> m_inputParticlesAssoc{"ReconstructedChargedParticlesAssoc", + mutable DataHandle<edm4eic::MCRecoParticleAssociationCollection> m_inputParticlesAssoc{"ReconstructedChargedParticlesAssoc", Gaudi::DataHandle::Reader, this}; Gaudi::Property<std::vector<std::string>> m_inputClusters{this, "inputClusters", {}, "Clusters to be aggregated"}; Gaudi::Property<std::vector<std::string>> m_inputClustersAssoc{this, "inputClustersAssoc", {}, "Cluster associations to be aggregated"}; @@ -43,14 +40,14 @@ private: std::vector<DataHandle<edm4eic::MCRecoClusterParticleAssociationCollection>*> m_inputClustersAssocCollections; // output data - DataHandle<edm4eic::ReconstructedParticleCollection> m_outputParticles{"ReconstructedParticles", + mutable DataHandle<edm4eic::ReconstructedParticleCollection> m_outputParticles{"ReconstructedParticles", Gaudi::DataHandle::Writer, this}; - DataHandle<edm4eic::MCRecoParticleAssociationCollection> m_outputParticlesAssoc{"ReconstructedParticlesAssoc", + mutable DataHandle<edm4eic::MCRecoParticleAssociationCollection> m_outputParticlesAssoc{"ReconstructedParticlesAssoc", Gaudi::DataHandle::Writer, this}; public: MatchClusters(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputMCParticles", m_inputMCParticles, "MCParticles"); declareProperty("inputParticles", m_inputParticles, "ReconstructedChargedParticles"); declareProperty("inputParticlesAssoc", m_inputParticlesAssoc, "ReconstructedChargedParticlesAssoc"); @@ -59,14 +56,14 @@ public: } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } m_inputClustersCollections = getClusterCollections(m_inputClusters); m_inputClustersAssocCollections = getClusterAssociations(m_inputClustersAssoc); return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { if (msgLevel(MSG::DEBUG)) { debug() << "Processing cluster info for new event" << endmsg; } diff --git a/JugFast/src/components/ScatteredElectronFinder.cpp b/JugFast/src/components/ScatteredElectronFinder.cpp index 9e7c6fd0893d7702782bfc30ad9fe02dd487ff38..e9f056b51325af099d0048c39a27385f4f93a7e6 100644 --- a/JugFast/src/components/ScatteredElectronFinder.cpp +++ b/JugFast/src/components/ScatteredElectronFinder.cpp @@ -1,10 +1,7 @@ // SPDX-License-Identifier: LGPL-3.0-or-later // Copyright (C) 2022 Wouter Deconinck -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Producer.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/PhysicalConstants.h" #include <algorithm> @@ -23,29 +20,29 @@ using ROOT::Math::PxPyPzEVector; namespace Jug::Fast { -class ScatteredElectronFinder : public GaudiAlgorithm { +class ScatteredElectronFinder : public Gaudi::Algorithm { private: - DataHandle<edm4hep::MCParticleCollection> m_inputMCParticleCollection{ + mutable DataHandle<edm4hep::MCParticleCollection> m_inputMCParticleCollection{ "inputMCParticles", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4hep::MCParticleCollection> m_outputMCScatteredElectron{ + mutable DataHandle<edm4hep::MCParticleCollection> m_outputMCScatteredElectron{ "outputMCScatteredElectron", Gaudi::DataHandle::Writer, this}; public: ScatteredElectronFinder(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputMCParticles", m_inputMCParticleCollection, "MCParticles"); declareProperty("outputMCScatteredElectron", m_outputMCScatteredElectron, "MCScatteredElectron"); } StatusCode initialize() override { - return GaudiAlgorithm::initialize(); + return Gaudi::Algorithm::initialize(); } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collections const auto& mcparts = *(m_inputMCParticleCollection.get()); // output collection diff --git a/JugFast/src/components/SmearedFarForwardParticles.cpp b/JugFast/src/components/SmearedFarForwardParticles.cpp index 69b306acf62148cedf2bdac58e7a9b9650b896f3..c421c3afbcdc412b514d74af28c97dcb9a89562c 100644 --- a/JugFast/src/components/SmearedFarForwardParticles.cpp +++ b/JugFast/src/components/SmearedFarForwardParticles.cpp @@ -5,10 +5,7 @@ #include <cmath> #include <fmt/format.h> -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Producer.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/RndmGenerators.h" #include <k4FWCore/DataHandle.h> @@ -25,12 +22,12 @@ enum DetectorTags { kTagB0 = 1, kTagRP = 2, kTagOMD = 3, kTagZDC = 4 }; namespace Jug::Fast { -class SmearedFarForwardParticles : public GaudiAlgorithm { +class SmearedFarForwardParticles : public Gaudi::Algorithm { private: - DataHandle<edm4hep::MCParticleCollection> m_inputMCParticles{"inputMCParticles", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::ReconstructedParticleCollection> m_outputParticles{"SmearedFarForwardParticles", + mutable DataHandle<edm4hep::MCParticleCollection> m_inputMCParticles{"inputMCParticles", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::ReconstructedParticleCollection> m_outputParticles{"SmearedFarForwardParticles", Gaudi::DataHandle::Writer, this}; - DataHandle<edm4eic::MCRecoParticleAssociationCollection> m_outputAssocCollection{"MCRecoParticleAssociation", + mutable DataHandle<edm4eic::MCRecoParticleAssociationCollection> m_outputAssocCollection{"MCRecoParticleAssociation", Gaudi::DataHandle::Writer, this}; Gaudi::Property<bool> m_enableZDC{this, "enableZDC", true}; @@ -71,16 +68,16 @@ private: using RecData = std::pair<RecPart, Assoc>; public: - SmearedFarForwardParticles(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + SmearedFarForwardParticles(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputMCParticles", m_inputMCParticles, "MCParticles"); declareProperty("outputParticles", m_outputParticles, "ReconstructedParticles"); declareProperty("outputAssociations", m_outputAssocCollection, "MCRecoParticleAssociation"); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } - IRndmGenSvc* randSvc = svc<IRndmGenSvc>("RndmGenSvc", true); + IRndmGenSvc* randSvc = Gaudi::svcLocator()->service<IRndmGenSvc>("RndmGenSvc", true); // use 0 for mean and 1 for standard deviation. Can rescale appropriately for the // different subsystems StatusCode sc = m_gaussDist.initialize(randSvc, Rndm::Gauss(0.0, 1.0)); @@ -89,7 +86,7 @@ public: } return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { const auto& mc = *(m_inputMCParticles.get()); auto& rc = *(m_outputParticles.createAndPut()); auto& assoc = *(m_outputAssocCollection.createAndPut()); @@ -145,7 +142,7 @@ public: private: // ZDC smearing as in eic_smear // https://github.com/eic/eicsmeardetectors/blob/9a1831dd97bf517b80a06043b9ee4bfb96b483d8/SmearMatrixDetector_0_1_FF.cxx#L224 - std::vector<RecData> zdc(const edm4hep::MCParticleCollection& mc, const double /* ionBeamEnergy */) { + std::vector<RecData> zdc(const edm4hep::MCParticleCollection& mc, const double /* ionBeamEnergy */) const { std::vector<RecData> rc; for (const auto& part : mc) { if (part.getGeneratorStatus() > 1) { @@ -229,7 +226,7 @@ private: } // Fast B0 as in // https://github.com/eic/eicsmeardetectors/blob/9a1831dd97bf517b80a06043b9ee4bfb96b483d8/SmearMatrixDetector_0_1_FF.cxx#L254 - std::vector<RecData> b0(const edm4hep::MCParticleCollection& mc, const double /* ionBeamEnergy */) { + std::vector<RecData> b0(const edm4hep::MCParticleCollection& mc, const double /* ionBeamEnergy */) const { std::vector<RecData> rc; for (const auto& part : mc) { if (part.getGeneratorStatus() > 1) { @@ -274,7 +271,7 @@ private: return rc; } - std::vector<RecData> rp(const edm4hep::MCParticleCollection& mc, const double ionBeamEnergy) { + std::vector<RecData> rp(const edm4hep::MCParticleCollection& mc, const double ionBeamEnergy) const { std::vector<RecData> rc; for (const auto& part : mc) { if (part.getGeneratorStatus() > 1) { @@ -312,7 +309,7 @@ private: return rc; } - std::vector<RecData> omd(const edm4hep::MCParticleCollection& mc, const double ionBeamEnergy) { + std::vector<RecData> omd(const edm4hep::MCParticleCollection& mc, const double ionBeamEnergy) const { std::vector<RecData> rc; for (const auto& part : mc) { if (part.getGeneratorStatus() > 1) { @@ -350,7 +347,7 @@ private: // all momentum smearing in EIC-smear for the far-forward region uses // the same 2 relations for P and Pt smearing (B0, RP, OMD) - RecData smearMomentum(const edm4hep::MCParticle& part) { + RecData smearMomentum(const edm4hep::MCParticle& part) const { const auto mom_ion = rotateLabToIonDirection(part.getMomentum()); const double p = std::hypot(mom_ion.x, mom_ion.y, mom_ion.z); const double dp = (0.025 * p) * m_gaussDist(); @@ -392,21 +389,24 @@ private: } // Rotate 25mrad about the y-axis - edm4hep::Vector3f rotateLabToIonDirection(const edm4hep::Vector3f& vec) const { + template<typename Vector3> + Vector3 rotateLabToIonDirection(const Vector3& vec) const { const auto sth = sin(-m_crossingAngle); const auto cth = cos(-m_crossingAngle); return {static_cast<float>(cth * vec.x + sth * vec.z), static_cast<float>(vec.y), static_cast<float>(-sth * vec.x + cth * vec.z)}; } - edm4hep::Vector3f rotateIonToLabDirection(const edm4hep::Vector3f& vec) const { + template<typename Vector3> + Vector3 rotateIonToLabDirection(const Vector3& vec) const { const auto sth = sin(m_crossingAngle); const auto cth = cos(m_crossingAngle); return {static_cast<float>(cth * vec.x + sth * vec.z), static_cast<float>(vec.y), static_cast<float>(-sth * vec.x + cth * vec.z)}; } - edm4hep::Vector3f removeCrossingAngle(const edm4hep::Vector3f& vec) const { + template<typename Vector3> + Vector3 removeCrossingAngle(const Vector3& vec) const { const auto sth = std::sin(-m_crossingAngle); const auto cth = std::cos(-m_crossingAngle); return {static_cast<float>(cth * vec.x + sth * vec.z), static_cast<float>(vec.y), diff --git a/JugFast/src/components/TruthClustering.cpp b/JugFast/src/components/TruthClustering.cpp index 1f2f3b16556acfa3832ecd98963a27328d23aca7..b4165bb26966ff9a88cad3d09502eb0df0ec01f9 100644 --- a/JugFast/src/components/TruthClustering.cpp +++ b/JugFast/src/components/TruthClustering.cpp @@ -4,9 +4,7 @@ #include <algorithm> #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -33,28 +31,28 @@ namespace Jug::Fast { * * \ingroup reco */ -class TruthClustering : public GaudiAlgorithm { +class TruthClustering : public Gaudi::Algorithm { private: - DataHandle<edm4eic::CalorimeterHitCollection> m_inputHits{"inputHits", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4hep::SimCalorimeterHitCollection> m_mcHits{"mcHits", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::ProtoClusterCollection> m_outputProtoClusters{"outputProtoClusters", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4eic::CalorimeterHitCollection> m_inputHits{"inputHits", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4hep::SimCalorimeterHitCollection> m_mcHits{"mcHits", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::ProtoClusterCollection> m_outputProtoClusters{"outputProtoClusters", Gaudi::DataHandle::Writer, this}; public: TruthClustering(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHits", m_inputHits, "Input calorimeter reco hits"); declareProperty("mcHits", m_mcHits, "Input truth hits"); declareProperty("outputProtoClusters", m_outputProtoClusters, "Output proto clusters"); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collections const auto& hits = *m_inputHits.get(); const auto& mc = *m_mcHits.get(); diff --git a/JugFast/src/components/TruthEnergyPositionClusterMerger.cpp b/JugFast/src/components/TruthEnergyPositionClusterMerger.cpp index 7fd5b49580e2f92acfeec2f8a90eefdd25f6ac31..6554a2eca1d04d31da9ccba95ccadba1584fa556 100644 --- a/JugFast/src/components/TruthEnergyPositionClusterMerger.cpp +++ b/JugFast/src/components/TruthEnergyPositionClusterMerger.cpp @@ -7,9 +7,7 @@ #include <fmt/format.h> // Gaudi #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include <k4FWCore/DataHandle.h> @@ -32,21 +30,21 @@ namespace Jug::Fast { * * \ingroup reco */ -class TruthEnergyPositionClusterMerger : public GaudiAlgorithm { +class TruthEnergyPositionClusterMerger : public Gaudi::Algorithm { private: // Input - DataHandle<edm4hep::MCParticleCollection> m_inputMCParticles{"MCParticles", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::ClusterCollection> m_energyClusters{"EnergyClusters", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::MCRecoClusterParticleAssociationCollection> m_energyAssociations{"EnergyAssociations", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::ClusterCollection> m_positionClusters{"PositionClusters", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::MCRecoClusterParticleAssociationCollection> m_positionAssociations{"PositionAssociations", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4hep::MCParticleCollection> m_inputMCParticles{"MCParticles", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::ClusterCollection> m_energyClusters{"EnergyClusters", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::MCRecoClusterParticleAssociationCollection> m_energyAssociations{"EnergyAssociations", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::ClusterCollection> m_positionClusters{"PositionClusters", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::MCRecoClusterParticleAssociationCollection> m_positionAssociations{"PositionAssociations", Gaudi::DataHandle::Reader, this}; // Output - DataHandle<edm4eic::ClusterCollection> m_outputClusters{"OutputClusters", Gaudi::DataHandle::Writer, this}; - DataHandle<edm4eic::MCRecoClusterParticleAssociationCollection> m_outputAssociations{"OutputAssociations", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4eic::ClusterCollection> m_outputClusters{"OutputClusters", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4eic::MCRecoClusterParticleAssociationCollection> m_outputAssociations{"OutputAssociations", Gaudi::DataHandle::Writer, this}; public: TruthEnergyPositionClusterMerger(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputMCParticles", m_inputMCParticles, "MCParticles"); declareProperty("inputEnergyClusters", m_energyClusters, "Cluster collection with good energy precision"); declareProperty("inputEnergyAssociations", m_energyAssociations, "Cluster association with good energy precision"); @@ -58,7 +56,7 @@ public: StatusCode initialize() override { return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { if (msgLevel(MSG::DEBUG)) { debug() << "Merging energy and position clusters for new event" << endmsg; } diff --git a/JugPID/CMakeLists.txt b/JugPID/CMakeLists.txt index 34f30bfc791a193a9ca84a4eb90862d07cb5bbc0..205eb5a628d0b2afa6d9b547bd67bd7905a9624a 100644 --- a/JugPID/CMakeLists.txt +++ b/JugPID/CMakeLists.txt @@ -10,7 +10,7 @@ gaudi_add_module(JugPIDPlugins SOURCES ${JugPIDPlugins_sources} LINK - Gaudi::GaudiAlgLib Gaudi::GaudiKernel + Gaudi::GaudiKernel ROOT::Core ROOT::RIO ROOT::Tree EDM4HEP::edm4hep EDM4EIC::edm4eic diff --git a/JugPID/src/components/PhotoRingClusters.cpp b/JugPID/src/components/PhotoRingClusters.cpp index d2a7fa156c1ffedaac6841a678743c93d0861347..89b4c5042243c1c278a5f26da3a862f5e1f57354 100644 --- a/JugPID/src/components/PhotoRingClusters.cpp +++ b/JugPID/src/components/PhotoRingClusters.cpp @@ -11,9 +11,7 @@ #include <algorithm> #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -39,10 +37,10 @@ namespace Jug::Reco { * * \ingroup reco */ -class PhotoRingClusters : public GaudiAlgorithm { +class PhotoRingClusters : public Gaudi::Algorithm { private: - DataHandle<edm4eic::PMTHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::RingImageCollection> m_outputClusterCollection{"outputClusterCollection", Gaudi::DataHandle::Writer, + mutable DataHandle<edm4eic::PMTHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::RingImageCollection> m_outputClusterCollection{"outputClusterCollection", Gaudi::DataHandle::Writer, this}; // @TODO // A more realistic way is to have tracker info as the input to determine how much clusters should be found @@ -55,14 +53,14 @@ private: SmartIF<IGeoSvc> m_geoSvc; public: - // ill-formed: using GaudiAlgorithm::GaudiAlgorithm; - PhotoRingClusters(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + // ill-formed: using Gaudi::Algorithm::GaudiAlgorithm; + PhotoRingClusters(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHitCollection", m_inputHitCollection, ""); declareProperty("outputClusterCollection", m_outputClusterCollection, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } m_geoSvc = service("GeoSvc"); @@ -74,7 +72,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collections const auto& rawhits = *m_inputHitCollection.get(); // Create output collections diff --git a/JugReco/CMakeLists.txt b/JugReco/CMakeLists.txt index 2ce55022e73c3d61e712d2dd012cf994c9e52721..cd91d7f0a2ac8f4a8bdfe610745965ffaba57898 100644 --- a/JugReco/CMakeLists.txt +++ b/JugReco/CMakeLists.txt @@ -10,7 +10,7 @@ gaudi_add_module(JugRecoPlugins SOURCES ${JugRecoPlugins_sources} LINK - Gaudi::GaudiAlgLib Gaudi::GaudiKernel + Gaudi::GaudiKernel JugBase JugAlgo algorithms::core algorithms::calorimetry ROOT::Core ROOT::RIO ROOT::Tree diff --git a/JugReco/src/components/CalorimeterHitReco.cpp b/JugReco/src/components/CalorimeterHitReco.cpp index 8f7333233ac6a0a080730b2223ea33277efc6287..0850a859cfe6ece3ad30d2779a9f91104dd683c1 100644 --- a/JugReco/src/components/CalorimeterHitReco.cpp +++ b/JugReco/src/components/CalorimeterHitReco.cpp @@ -11,9 +11,7 @@ #include <bitset> #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -38,7 +36,7 @@ namespace Jug::Reco { * Reconstruct digitized outputs, paired with Jug::Digi::CalorimeterHitDigi * \ingroup reco */ -class CalorimeterHitReco : public GaudiAlgorithm { +class CalorimeterHitReco : public Gaudi::Algorithm { private: // length unit from dd4hep, should be fixed Gaudi::Property<double> m_lUnit{this, "lengthUnit", dd4hep::mm}; @@ -62,9 +60,9 @@ private: double thresholdADC{0}; double stepTDC{0}; - DataHandle<edm4hep::RawCalorimeterHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, + mutable DataHandle<edm4hep::RawCalorimeterHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::CalorimeterHitCollection> m_outputHitCollection{"outputHitCollection", Gaudi::DataHandle::Writer, + mutable DataHandle<edm4eic::CalorimeterHitCollection> m_outputHitCollection{"outputHitCollection", Gaudi::DataHandle::Writer, this}; // geometry service to get ids, ignored if no names provided @@ -81,17 +79,17 @@ private: // if nothing is provided, the lowest level DetElement (from cellID) will be used Gaudi::Property<std::string> m_localDetElement{this, "localDetElement", ""}; Gaudi::Property<std::vector<std::string>> u_localDetFields{this, "localDetFields", {}}; - dd4hep::DetElement local; + mutable dd4hep::DetElement local; size_t local_mask = ~0; public: - CalorimeterHitReco(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + CalorimeterHitReco(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHitCollection", m_inputHitCollection, ""); declareProperty("outputHitCollection", m_outputHitCollection, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } @@ -160,7 +158,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collections const auto& rawhits = *m_inputHitCollection.get(); // create output collections diff --git a/JugReco/src/components/CalorimeterHitsEtaPhiProjector.cpp b/JugReco/src/components/CalorimeterHitsEtaPhiProjector.cpp index a663a12f1cff659a7e745afc0d790cf75d044f77..f35d3014fc64667b34dec515066fa2d599a6fb35 100644 --- a/JugReco/src/components/CalorimeterHitsEtaPhiProjector.cpp +++ b/JugReco/src/components/CalorimeterHitsEtaPhiProjector.cpp @@ -16,9 +16,7 @@ #include <unordered_map> #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -56,24 +54,24 @@ namespace Jug::Reco { * * \ingroup reco */ -class CalorimeterHitsEtaPhiProjector : public GaudiAlgorithm { +class CalorimeterHitsEtaPhiProjector : public Gaudi::Algorithm { private: Gaudi::Property<std::vector<double>> u_gridSizes{this, "gridSizes", {0.001, 0.001 * rad}}; - DataHandle<edm4eic::CalorimeterHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, + mutable DataHandle<edm4eic::CalorimeterHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::CalorimeterHitCollection> m_outputHitCollection{"outputHitCollection", Gaudi::DataHandle::Writer, + mutable DataHandle<edm4eic::CalorimeterHitCollection> m_outputHitCollection{"outputHitCollection", Gaudi::DataHandle::Writer, this}; double gridSizes[2]{0.0, 0.0}; public: - CalorimeterHitsEtaPhiProjector(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + CalorimeterHitsEtaPhiProjector(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHitCollection", m_inputHitCollection, ""); declareProperty("outputHitCollection", m_outputHitCollection, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } @@ -87,7 +85,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // Create output collections auto& mhits = *m_outputHitCollection.createAndPut(); diff --git a/JugReco/src/components/CalorimeterHitsMerger.cpp b/JugReco/src/components/CalorimeterHitsMerger.cpp index 370d25a820eb004ee5a6ab9cead9f70271aec32b..bc4dbd966b90d9287695df33f1c70aac3ce328d4 100644 --- a/JugReco/src/components/CalorimeterHitsMerger.cpp +++ b/JugReco/src/components/CalorimeterHitsMerger.cpp @@ -13,9 +13,7 @@ #include <unordered_map> #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -45,7 +43,7 @@ namespace Jug::Reco { * * \ingroup reco */ -class CalorimeterHitsMerger : public GaudiAlgorithm { +class CalorimeterHitsMerger : public Gaudi::Algorithm { private: Gaudi::Property<std::string> m_geoSvcName{this, "geoServiceName", "GeoSvc"}; Gaudi::Property<std::string> m_readout{this, "readoutClass", ""}; @@ -53,8 +51,8 @@ private: Gaudi::Property<std::vector<std::string>> u_fields{this, "fields", {"layer"}}; // reference field numbers to locate position for each merged hits group Gaudi::Property<std::vector<int>> u_refs{this, "fieldRefNumbers", {}}; - DataHandle<edm4eic::CalorimeterHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::CalorimeterHitCollection> m_outputHitCollection{"outputHitCollection", Gaudi::DataHandle::Writer, + mutable DataHandle<edm4eic::CalorimeterHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::CalorimeterHitCollection> m_outputHitCollection{"outputHitCollection", Gaudi::DataHandle::Writer, this}; SmartIF<IGeoSvc> m_geoSvc; @@ -63,13 +61,13 @@ private: uint64_t id_mask{0}, ref_mask{0}; public: - CalorimeterHitsMerger(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + CalorimeterHitsMerger(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHitCollection", m_inputHitCollection, ""); declareProperty("outputHitCollection", m_outputHitCollection, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } @@ -107,7 +105,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collections const auto& inputs = *m_inputHitCollection.get(); // Create output collections diff --git a/JugReco/src/components/CalorimeterIslandCluster.cpp b/JugReco/src/components/CalorimeterIslandCluster.cpp index cabd6c6831e63429cf35fd3c742e5f4a83173b5d..8687272d832c09ae979664d91a929615fc16f60b 100644 --- a/JugReco/src/components/CalorimeterIslandCluster.cpp +++ b/JugReco/src/components/CalorimeterIslandCluster.cpp @@ -19,9 +19,7 @@ #include "fmt/format.h" #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -137,13 +135,13 @@ namespace Jug::Reco { * * \ingroup reco */ -class CalorimeterIslandCluster : public GaudiAlgorithm { +class CalorimeterIslandCluster : public Gaudi::Algorithm { private: Gaudi::Property<bool> m_splitCluster{this, "splitCluster", true}; Gaudi::Property<double> m_minClusterHitEdep{this, "minClusterHitEdep", 0.}; Gaudi::Property<double> m_minClusterCenterEdep{this, "minClusterCenterEdep", 50.0 * MeV}; - DataHandle<CaloHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::ProtoClusterCollection> m_outputProtoCollection{"outputProtoClusterCollection", + mutable DataHandle<CaloHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::ProtoClusterCollection> m_outputProtoCollection{"outputProtoClusterCollection", Gaudi::DataHandle::Writer, this}; Gaudi::Property<std::string> m_geoSvcName{this, "geoServiceName", "GeoSvc"}; @@ -172,13 +170,13 @@ private: dd4hep::IDDescriptor m_idSpec; public: - CalorimeterIslandCluster(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + CalorimeterIslandCluster(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHitCollection", m_inputHitCollection, ""); declareProperty("outputProtoClusterCollection", m_outputProtoCollection, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } @@ -288,7 +286,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collections const auto& hits = *(m_inputHitCollection.get()); // Create output collections diff --git a/JugReco/src/components/EnergyPositionClusterMerger.cpp b/JugReco/src/components/EnergyPositionClusterMerger.cpp index efd970a0d9e3f0c0ba4184e9e634de5f9cac69ac..353fc927b75b219fb0a23ccba45c6f344ba61f2e 100644 --- a/JugReco/src/components/EnergyPositionClusterMerger.cpp +++ b/JugReco/src/components/EnergyPositionClusterMerger.cpp @@ -7,9 +7,7 @@ #include <fmt/format.h> // Gaudi #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include <k4FWCore/DataHandle.h> @@ -34,13 +32,13 @@ namespace Jug::Reco { * * \ingroup reco */ -class EnergyPositionClusterMerger : public GaudiAlgorithm { +class EnergyPositionClusterMerger : public Gaudi::Algorithm { private: // Input - DataHandle<edm4eic::ClusterCollection> m_energyClusters{"energyClusters", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::ClusterCollection> m_positionClusters{"positionClusters", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::ClusterCollection> m_energyClusters{"energyClusters", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::ClusterCollection> m_positionClusters{"positionClusters", Gaudi::DataHandle::Reader, this}; // Output - DataHandle<edm4eic::ClusterCollection> m_outputClusters{"outputClusters", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4eic::ClusterCollection> m_outputClusters{"outputClusters", Gaudi::DataHandle::Writer, this}; // Negative values mean the tolerance check is disabled Gaudi::Property<double> m_zToleranceUnits{this, "zTolerance", -1 * cm}; Gaudi::Property<double> m_phiToleranceUnits{this, "phiTolerance", 20 * degree}; @@ -50,7 +48,7 @@ private: double m_phiTolerance{0}; public: - EnergyPositionClusterMerger(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + EnergyPositionClusterMerger(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("energyClusters", m_energyClusters, "Cluster collection with good energy precision"); declareProperty("positionClusters", m_positionClusters, "Cluster collection with good position precision"); declareProperty("outputClusters", m_outputClusters, ""); @@ -62,7 +60,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input const auto& e_clus = *(m_energyClusters.get()); const auto& pos_clus = *(m_positionClusters.get()); diff --git a/JugReco/src/components/FarForwardParticles.cpp b/JugReco/src/components/FarForwardParticles.cpp index 5a0097c11fec313a800e5f8bcb8e7ea722f5dc9b..e31110d84250b35b7ca480c4d6cc8117d360a28d 100644 --- a/JugReco/src/components/FarForwardParticles.cpp +++ b/JugReco/src/components/FarForwardParticles.cpp @@ -5,10 +5,7 @@ #include <cmath> #include <fmt/format.h> -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Producer.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/RndmGenerators.h" #include "DDRec/CellIDPositionConverter.h" @@ -25,10 +22,10 @@ namespace Jug::Reco { -class FarForwardParticles : public GaudiAlgorithm { +class FarForwardParticles : public Gaudi::Algorithm { private: - DataHandle<edm4eic::TrackerHitCollection> m_inputHitCollection{"FarForwardTrackerHits", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::ReconstructedParticleCollection> m_outputParticles{"outputParticles", Gaudi::DataHandle::Writer, + mutable DataHandle<edm4eic::TrackerHitCollection> m_inputHitCollection{"FarForwardTrackerHits", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::ReconstructedParticleCollection> m_outputParticles{"outputParticles", Gaudi::DataHandle::Writer, this}; //----- Define constants here ------ @@ -51,7 +48,7 @@ private: Gaudi::Property<std::string> m_localDetElement{this, "localDetElement", ""}; Gaudi::Property<std::vector<std::string>> u_localDetFields{this, "localDetFields", {}}; - dd4hep::DetElement local; + mutable dd4hep::DetElement local; size_t local_mask = ~0; const double aXRP[2][2] = {{2.102403743, 29.11067626}, {0.186640381, 0.192604619}}; @@ -61,7 +58,7 @@ private: double aYRPinv[2][2] = {{0.0, 0.0}, {0.0, 0.0}}; public: - FarForwardParticles(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + FarForwardParticles(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputCollection", m_inputHitCollection, "FarForwardTrackerHits"); declareProperty("outputCollection", m_outputParticles, "ReconstructedParticles"); } @@ -74,7 +71,7 @@ public: // include the Eigen libraries, used in ACTS, for the linear algebra. StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } m_geoSvc = service(m_geoSvcName); @@ -153,7 +150,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { const edm4eic::TrackerHitCollection* rawhits = m_inputHitCollection.get(); auto& rc = *(m_outputParticles.createAndPut()); diff --git a/JugReco/src/components/FarForwardParticlesOMD.cpp b/JugReco/src/components/FarForwardParticlesOMD.cpp index 0e00547997f1485086574440931620618bb1b6b0..e8fbe84bf6382ea624ff7f4e1fe45aa7a340b775 100644 --- a/JugReco/src/components/FarForwardParticlesOMD.cpp +++ b/JugReco/src/components/FarForwardParticlesOMD.cpp @@ -5,10 +5,7 @@ #include <cmath> #include <fmt/format.h> -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Producer.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/RndmGenerators.h" #include <k4FWCore/DataHandle.h> @@ -20,10 +17,10 @@ namespace Jug::Reco { -class FarForwardParticlesOMD : public GaudiAlgorithm { +class FarForwardParticlesOMD : public Gaudi::Algorithm { private: - DataHandle<edm4eic::TrackerHitCollection> m_inputHitCollection{"FarForwardTrackerHits", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::ReconstructedParticleCollection> m_outputParticles{"outputParticles", Gaudi::DataHandle::Writer, + mutable DataHandle<edm4eic::TrackerHitCollection> m_inputHitCollection{"FarForwardTrackerHits", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::ReconstructedParticleCollection> m_outputParticles{"outputParticles", Gaudi::DataHandle::Writer, this}; //----- Define constants here ------ @@ -43,13 +40,13 @@ private: public: FarForwardParticlesOMD(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputCollection", m_inputHitCollection, "FarForwardTrackerHits"); declareProperty("outputCollection", m_outputParticles, "ReconstructedParticles"); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } double det = aXOMD[0][0] * aXOMD[1][1] - aXOMD[0][1] * aXOMD[1][0]; @@ -74,7 +71,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { const edm4eic::TrackerHitCollection* rawhits = m_inputHitCollection.get(); auto& rc = *(m_outputParticles.createAndPut()); diff --git a/JugReco/src/components/ImagingClusterReco.cpp b/JugReco/src/components/ImagingClusterReco.cpp index f89e2bc7a1ca03642585492240dc21d170501ca0..4d68ed64c799cf9c9bcd1cd482a764363b8d07fc 100644 --- a/JugReco/src/components/ImagingClusterReco.cpp +++ b/JugReco/src/components/ImagingClusterReco.cpp @@ -12,9 +12,7 @@ #include <algorithm> #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -47,13 +45,13 @@ namespace Jug::Reco { * * \ingroup reco */ -class ImagingClusterReco : public GaudiAlgorithm { +class ImagingClusterReco : public Gaudi::Algorithm { private: Gaudi::Property<int> m_trackStopLayer{this, "trackStopLayer", 9}; - DataHandle<edm4eic::ProtoClusterCollection> m_inputProtoClusters{"inputProtoClusters", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::ClusterCollection> m_outputLayers{"outputLayers", Gaudi::DataHandle::Writer, this}; - DataHandle<edm4eic::ClusterCollection> m_outputClusters{"outputClusters", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::ProtoClusterCollection> m_inputProtoClusters{"inputProtoClusters", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::ClusterCollection> m_outputLayers{"outputLayers", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4eic::ClusterCollection> m_outputClusters{"outputClusters", Gaudi::DataHandle::Reader, this}; // Collection for MC hits when running on MC Gaudi::Property<std::string> m_mcHits{this, "mcHits", ""}; @@ -66,14 +64,14 @@ private: std::unique_ptr<DataHandle<edm4eic::MCRecoClusterParticleAssociationCollection>> m_outputAssociations_ptr; public: - ImagingClusterReco(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + ImagingClusterReco(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputProtoClusters", m_inputProtoClusters, ""); declareProperty("outputLayers", m_outputLayers, ""); declareProperty("outputClusters", m_outputClusters, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } @@ -94,7 +92,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collections const auto& proto = *m_inputProtoClusters.get(); // output collections @@ -195,7 +193,7 @@ public: private: template <typename T> static inline T pow2(const T& x) { return x * x; } - static std::vector<edm4eic::MutableCluster> reconstruct_cluster_layers(const edm4eic::ProtoCluster& pcl) { + std::vector<edm4eic::MutableCluster> reconstruct_cluster_layers(const edm4eic::ProtoCluster& pcl) const { const auto& hits = pcl.getHits(); const auto& weights = pcl.getWeights(); // using map to have hits sorted by layer @@ -218,7 +216,7 @@ private: return cl_layers; } - static edm4eic::MutableCluster reconstruct_layer(const std::vector<std::pair<edm4eic::CalorimeterHit, float>>& hits) { + edm4eic::MutableCluster reconstruct_layer(const std::vector<std::pair<edm4eic::CalorimeterHit, float>>& hits) const { edm4eic::MutableCluster layer; layer.setType(ClusterType::kClusterSlice); // Calculate averages @@ -257,7 +255,7 @@ private: return layer; } - edm4eic::MutableCluster reconstruct_cluster(const edm4eic::ProtoCluster& pcl) { + edm4eic::MutableCluster reconstruct_cluster(const edm4eic::ProtoCluster& pcl) const { edm4eic::MutableCluster cluster; const auto& hits = pcl.getHits(); diff --git a/JugReco/src/components/ImagingPixelDataCombiner.cpp b/JugReco/src/components/ImagingPixelDataCombiner.cpp index 9d93a1285103802c459df075da4077a0e24fdf9f..319b14c4592ea1b8941ec0d7b655071bc984a64c 100644 --- a/JugReco/src/components/ImagingPixelDataCombiner.cpp +++ b/JugReco/src/components/ImagingPixelDataCombiner.cpp @@ -12,9 +12,7 @@ #include <unordered_map> #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -42,25 +40,25 @@ namespace Jug::Reco { * * \ingroup reco */ -class ImagingPixelDataCombiner : public GaudiAlgorithm { +class ImagingPixelDataCombiner : public Gaudi::Algorithm { private: Gaudi::Property<int> m_layerIncrement{this, "layerIncrement", 0}; Gaudi::Property<std::string> m_rule{this, "rule", "concatenate"}; - DataHandle<edm4eic::CalorimeterHitCollection> m_inputHits1{"inputHits1", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::CalorimeterHitCollection> m_inputHits2{"inputHits2", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::CalorimeterHitCollection> m_outputHits{"outputHits", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4eic::CalorimeterHitCollection> m_inputHits1{"inputHits1", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::CalorimeterHitCollection> m_inputHits2{"inputHits2", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::CalorimeterHitCollection> m_outputHits{"outputHits", Gaudi::DataHandle::Writer, this}; std::vector<std::string> supported_rules{"concatenate", "interlayer"}; public: ImagingPixelDataCombiner(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHits1", m_inputHits1, ""); declareProperty("inputHits2", m_inputHits2, ""); declareProperty("outputHits", m_outputHits, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } @@ -74,7 +72,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collections const auto* const hits1 = m_inputHits1.get(); const auto* const hits2 = m_inputHits2.get(); diff --git a/JugReco/src/components/ImagingPixelDataSorter.cpp b/JugReco/src/components/ImagingPixelDataSorter.cpp index 69ac310c353ca7167e9c5cc201cb7c6d710a83cd..94cc565a3dc220721b76588ac4e352a7cb6c6440 100644 --- a/JugReco/src/components/ImagingPixelDataSorter.cpp +++ b/JugReco/src/components/ImagingPixelDataSorter.cpp @@ -11,9 +11,7 @@ #include <unordered_map> #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -43,18 +41,18 @@ namespace Jug::Reco { * * \ingroup reco */ - class ImagingPixelDataSorter : public GaudiAlgorithm { + class ImagingPixelDataSorter : public Gaudi::Algorithm { private: Gaudi::Property<int> m_nLayers{this, "numberOfLayers", 9}; Gaudi::Property<int> m_nHits{this, "numberOfHits", 50}; - DataHandle<edm4eic::CalorimeterHitCollection> m_inputHitCollection{"inputHitCollection", + mutable DataHandle<edm4eic::CalorimeterHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::CalorimeterHitCollection> m_outputHitCollection{"outputHitCollection", + mutable DataHandle<edm4eic::CalorimeterHitCollection> m_outputHitCollection{"outputHitCollection", Gaudi::DataHandle::Writer, this}; public: ImagingPixelDataSorter(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHitCollection", m_inputHitCollection, ""); declareProperty("outputHitCollection", m_outputHitCollection, ""); @@ -62,14 +60,14 @@ namespace Jug::Reco { StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } return StatusCode::SUCCESS; } - StatusCode execute() override + StatusCode execute(const EventContext&) const override { // input collections const auto& hits = *m_inputHitCollection.get(); diff --git a/JugReco/src/components/ImagingPixelMerger.cpp b/JugReco/src/components/ImagingPixelMerger.cpp index 44078bcfb464d1a2172bd4eea930c24915f67ccc..f12ce2f00aa8dd712bf7bfb5f5481111e0f0d0e3 100644 --- a/JugReco/src/components/ImagingPixelMerger.cpp +++ b/JugReco/src/components/ImagingPixelMerger.cpp @@ -15,9 +15,7 @@ #include <unordered_map> #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -52,28 +50,28 @@ namespace Jug::Reco { * * \ingroup reco */ -class ImagingPixelMerger : public GaudiAlgorithm { +class ImagingPixelMerger : public Gaudi::Algorithm { private: Gaudi::Property<float> m_etaSize{this, "etaSize", 0.001}; Gaudi::Property<float> m_phiSize{this, "phiSize", 0.001}; - DataHandle<edm4eic::CalorimeterHitCollection> m_inputHits{"inputHits", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::CalorimeterHitCollection> m_outputHits{"outputHits", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4eic::CalorimeterHitCollection> m_inputHits{"inputHits", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::CalorimeterHitCollection> m_outputHits{"outputHits", Gaudi::DataHandle::Writer, this}; public: - ImagingPixelMerger(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + ImagingPixelMerger(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHits", m_inputHits, ""); declareProperty("outputHits", m_outputHits, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collections const auto& hits = *m_inputHits.get(); // Create output collections diff --git a/JugReco/src/components/ImagingPixelReco.cpp b/JugReco/src/components/ImagingPixelReco.cpp index 86100661d8b9fa0ab4d74e8840dac396fd65baa6..d77b1727869b5ebf268a30af4fc43431748aa130 100644 --- a/JugReco/src/components/ImagingPixelReco.cpp +++ b/JugReco/src/components/ImagingPixelReco.cpp @@ -9,9 +9,7 @@ #include <bitset> #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -38,7 +36,7 @@ namespace Jug::Reco { * * \ingroup reco */ -class ImagingPixelReco : public GaudiAlgorithm { +class ImagingPixelReco : public Gaudi::Algorithm { private: // geometry service Gaudi::Property<std::string> m_geoSvcName{this, "geoServiceName", "GeoSvc"}; @@ -60,9 +58,9 @@ private: double dyRangeADC{0}; // hits containers - DataHandle<edm4hep::RawCalorimeterHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, + mutable DataHandle<edm4hep::RawCalorimeterHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::CalorimeterHitCollection> m_outputHitCollection{"outputHitCollection", Gaudi::DataHandle::Writer, + mutable DataHandle<edm4eic::CalorimeterHitCollection> m_outputHitCollection{"outputHitCollection", Gaudi::DataHandle::Writer, this}; // Pointer to the geometry service @@ -73,13 +71,13 @@ private: size_t sector_idx{0}, layer_idx{0}; public: - ImagingPixelReco(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + ImagingPixelReco(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHitCollection", m_inputHitCollection, ""); declareProperty("outputHitCollection", m_outputHitCollection, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } m_geoSvc = service(m_geoSvcName); @@ -110,7 +108,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collections const auto& rawhits = *m_inputHitCollection.get(); // Create output collections diff --git a/JugReco/src/components/ImagingTopoCluster.cpp b/JugReco/src/components/ImagingTopoCluster.cpp index 40f5eddd9ecb8d97c306f36e099ce705a1df10d6..f22a836766770c8a1fcf4a074aa0f20d42d3dff5 100644 --- a/JugReco/src/components/ImagingTopoCluster.cpp +++ b/JugReco/src/components/ImagingTopoCluster.cpp @@ -13,9 +13,7 @@ #include <algorithm> #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -48,7 +46,7 @@ namespace Jug::Reco { * * \ingroup reco */ -class ImagingTopoCluster : public GaudiAlgorithm { +class ImagingTopoCluster : public Gaudi::Algorithm { private: // maximum difference in layer numbers that can be considered as neighbours Gaudi::Property<int> m_neighbourLayersRange{this, "neighbourLayersRange", 1}; @@ -68,10 +66,10 @@ private: // minimum number of hits (to save this cluster) Gaudi::Property<int> m_minClusterNhits{this, "minClusterNhits", 10}; // input hits collection - DataHandle<edm4eic::CalorimeterHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, + mutable DataHandle<edm4eic::CalorimeterHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; // output clustered hits - DataHandle<edm4eic::ProtoClusterCollection> m_outputProtoClusterCollection{"outputProtoClusterCollection", + mutable DataHandle<edm4eic::ProtoClusterCollection> m_outputProtoClusterCollection{"outputProtoClusterCollection", Gaudi::DataHandle::Writer, this}; // unitless counterparts of the input parameters @@ -79,13 +77,13 @@ private: double minClusterHitEdep{0}, minClusterCenterEdep{0}, minClusterEdep{0}; public: - ImagingTopoCluster(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + ImagingTopoCluster(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHitCollection", m_inputHitCollection, ""); declareProperty("outputProtoClusterCollection", m_outputProtoClusterCollection, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } @@ -127,7 +125,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collections const auto& hits = *m_inputHitCollection.get(); // Create output collections diff --git a/JugReco/src/components/InclusiveKinematicsDA.cpp b/JugReco/src/components/InclusiveKinematicsDA.cpp index af63a5c73f12b5e77a2089912711d0e8b854a5da..6ad24d52ee9669c0e4df716fd5f042c611aaf8ae 100644 --- a/JugReco/src/components/InclusiveKinematicsDA.cpp +++ b/JugReco/src/components/InclusiveKinematicsDA.cpp @@ -1,10 +1,7 @@ // SPDX-License-Identifier: LGPL-3.0-or-later // Copyright (C) 2022 Wouter Deconinck -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Producer.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/PhysicalConstants.h" #include <algorithm> @@ -27,21 +24,21 @@ using ROOT::Math::PxPyPzEVector; namespace Jug::Reco { -class InclusiveKinematicsDA : public GaudiAlgorithm { +class InclusiveKinematicsDA : public Gaudi::Algorithm { private: - DataHandle<edm4hep::MCParticleCollection> m_inputMCParticleCollection{ + mutable DataHandle<edm4hep::MCParticleCollection> m_inputMCParticleCollection{ "inputMCParticles", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::ReconstructedParticleCollection> m_inputParticleCollection{ + mutable DataHandle<edm4eic::ReconstructedParticleCollection> m_inputParticleCollection{ "inputReconstructedParticles", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::MCRecoParticleAssociationCollection> m_inputParticleAssociation{ + mutable DataHandle<edm4eic::MCRecoParticleAssociationCollection> m_inputParticleAssociation{ "inputParticleAssociations", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::InclusiveKinematicsCollection> m_outputInclusiveKinematicsCollection{ + mutable DataHandle<edm4eic::InclusiveKinematicsCollection> m_outputInclusiveKinematicsCollection{ "outputInclusiveKinematics", Gaudi::DataHandle::Writer, this}; @@ -53,7 +50,7 @@ private: public: InclusiveKinematicsDA(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputMCParticles", m_inputMCParticleCollection, "MCParticles"); declareProperty("inputReconstructedParticles", m_inputParticleCollection, "ReconstructedParticles"); declareProperty("inputParticleAssociations", m_inputParticleAssociation, "MCRecoParticleAssociation"); @@ -61,7 +58,7 @@ public: } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) + if (Gaudi::Algorithm::initialize().isFailure()) return StatusCode::FAILURE; m_pidSvc = service("ParticleSvc"); @@ -78,7 +75,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collections const auto& mcparts = *(m_inputMCParticleCollection.get()); const auto& rcparts = *(m_inputParticleCollection.get()); diff --git a/JugReco/src/components/InclusiveKinematicsElectron.cpp b/JugReco/src/components/InclusiveKinematicsElectron.cpp index 928a5ae3bcf2effb15aa3ba3172aa7f42c1a81e5..7fd098b85908e9b6a403b966eddeab5e29111a0c 100644 --- a/JugReco/src/components/InclusiveKinematicsElectron.cpp +++ b/JugReco/src/components/InclusiveKinematicsElectron.cpp @@ -1,10 +1,7 @@ // SPDX-License-Identifier: LGPL-3.0-or-later // Copyright (C) 2022 Wouter Deconinck -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Producer.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/PhysicalConstants.h" #include <algorithm> @@ -27,21 +24,21 @@ using ROOT::Math::PxPyPzEVector; namespace Jug::Reco { -class InclusiveKinematicsElectron : public GaudiAlgorithm { +class InclusiveKinematicsElectron : public Gaudi::Algorithm { private: - DataHandle<edm4hep::MCParticleCollection> m_inputMCParticleCollection{ + mutable DataHandle<edm4hep::MCParticleCollection> m_inputMCParticleCollection{ "inputMCParticles", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::ReconstructedParticleCollection> m_inputParticleCollection{ + mutable DataHandle<edm4eic::ReconstructedParticleCollection> m_inputParticleCollection{ "inputReconstructedParticles", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::MCRecoParticleAssociationCollection> m_inputParticleAssociation{ + mutable DataHandle<edm4eic::MCRecoParticleAssociationCollection> m_inputParticleAssociation{ "inputParticleAssociations", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::InclusiveKinematicsCollection> m_outputInclusiveKinematicsCollection{ + mutable DataHandle<edm4eic::InclusiveKinematicsCollection> m_outputInclusiveKinematicsCollection{ "outputInclusiveKinematics", Gaudi::DataHandle::Writer, this}; @@ -53,7 +50,7 @@ private: public: InclusiveKinematicsElectron(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputMCParticles", m_inputMCParticleCollection, "MCParticles"); declareProperty("inputReconstructedParticles", m_inputParticleCollection, "ReconstructedParticles"); declareProperty("inputParticleAssociations", m_inputParticleAssociation, "MCRecoParticleAssociation"); @@ -61,7 +58,7 @@ public: } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) + if (Gaudi::Algorithm::initialize().isFailure()) return StatusCode::FAILURE; m_pidSvc = service("ParticleSvc"); @@ -78,7 +75,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collections const auto& mcparts = *(m_inputMCParticleCollection.get()); const auto& rcparts = *(m_inputParticleCollection.get()); diff --git a/JugReco/src/components/InclusiveKinematicsJB.cpp b/JugReco/src/components/InclusiveKinematicsJB.cpp index f0f64c7c4f17d07c515b94b77282aa867241d99c..cfc9a235efd3f1274be6e314c96a567e79b23a10 100644 --- a/JugReco/src/components/InclusiveKinematicsJB.cpp +++ b/JugReco/src/components/InclusiveKinematicsJB.cpp @@ -1,10 +1,7 @@ // SPDX-License-Identifier: LGPL-3.0-or-later // Copyright (C) 2022 Wouter Deconinck -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Producer.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "GaudiKernel/RndmGenerators.h" #include <algorithm> @@ -27,21 +24,21 @@ using ROOT::Math::PxPyPzEVector; namespace Jug::Reco { -class InclusiveKinematicsJB : public GaudiAlgorithm { +class InclusiveKinematicsJB : public Gaudi::Algorithm { private: - DataHandle<edm4hep::MCParticleCollection> m_inputMCParticleCollection{ + mutable DataHandle<edm4hep::MCParticleCollection> m_inputMCParticleCollection{ "inputMCParticles", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::ReconstructedParticleCollection> m_inputParticleCollection{ + mutable DataHandle<edm4eic::ReconstructedParticleCollection> m_inputParticleCollection{ "inputReconstructedParticles", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::MCRecoParticleAssociationCollection> m_inputParticleAssociation{ + mutable DataHandle<edm4eic::MCRecoParticleAssociationCollection> m_inputParticleAssociation{ "inputParticleAssociations", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::InclusiveKinematicsCollection> m_outputInclusiveKinematicsCollection{ + mutable DataHandle<edm4eic::InclusiveKinematicsCollection> m_outputInclusiveKinematicsCollection{ "outputInclusiveKinematics", Gaudi::DataHandle::Writer, this}; @@ -53,7 +50,7 @@ private: public: InclusiveKinematicsJB(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputMCParticles", m_inputMCParticleCollection, "MCParticles"); declareProperty("inputReconstructedParticles", m_inputParticleCollection, "ReconstructedParticles"); declareProperty("inputParticleAssociations", m_inputParticleAssociation, "MCRecoParticleAssociation"); @@ -61,7 +58,7 @@ public: } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) + if (Gaudi::Algorithm::initialize().isFailure()) return StatusCode::FAILURE; m_pidSvc = service("ParticleSvc"); @@ -79,7 +76,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collections const auto& mcparts = *(m_inputMCParticleCollection.get()); const auto& rcparts = *(m_inputParticleCollection.get()); diff --git a/JugReco/src/components/InclusiveKinematicsSigma.cpp b/JugReco/src/components/InclusiveKinematicsSigma.cpp index 59634a82cea0097992b69bc6bdfb306c11c1dc4b..b77bb23b53521036d800bdb20466d1272043ddf5 100644 --- a/JugReco/src/components/InclusiveKinematicsSigma.cpp +++ b/JugReco/src/components/InclusiveKinematicsSigma.cpp @@ -1,10 +1,7 @@ // SPDX-License-Identifier: LGPL-3.0-or-later // Copyright (C) 2022 Wouter Deconinck, Barak Schmookler -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Producer.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/PhysicalConstants.h" #include <algorithm> @@ -27,21 +24,21 @@ using ROOT::Math::PxPyPzEVector; namespace Jug::Reco { -class InclusiveKinematicsSigma : public GaudiAlgorithm { +class InclusiveKinematicsSigma : public Gaudi::Algorithm { private: - DataHandle<edm4hep::MCParticleCollection> m_inputMCParticleCollection{ + mutable DataHandle<edm4hep::MCParticleCollection> m_inputMCParticleCollection{ "inputMCParticles", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::ReconstructedParticleCollection> m_inputParticleCollection{ + mutable DataHandle<edm4eic::ReconstructedParticleCollection> m_inputParticleCollection{ "inputReconstructedParticles", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::MCRecoParticleAssociationCollection> m_inputParticleAssociation{ + mutable DataHandle<edm4eic::MCRecoParticleAssociationCollection> m_inputParticleAssociation{ "inputParticleAssociations", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::InclusiveKinematicsCollection> m_outputInclusiveKinematicsCollection{ + mutable DataHandle<edm4eic::InclusiveKinematicsCollection> m_outputInclusiveKinematicsCollection{ "outputInclusiveKinematics", Gaudi::DataHandle::Writer, this}; @@ -53,7 +50,7 @@ private: public: InclusiveKinematicsSigma(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputMCParticles", m_inputMCParticleCollection, "MCParticles"); declareProperty("inputReconstructedParticles", m_inputParticleCollection, "ReconstructedParticles"); declareProperty("inputParticleAssociations", m_inputParticleAssociation, "MCRecoParticleAssociation"); @@ -61,7 +58,7 @@ public: } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) + if (Gaudi::Algorithm::initialize().isFailure()) return StatusCode::FAILURE; m_pidSvc = service("ParticleSvc"); @@ -78,7 +75,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collections const auto& mcparts = *(m_inputMCParticleCollection.get()); const auto& rcparts = *(m_inputParticleCollection.get()); diff --git a/JugReco/src/components/InclusiveKinematicseSigma.cpp b/JugReco/src/components/InclusiveKinematicseSigma.cpp index 5d674fc4ff0aae9bd8ed24284eb8db90c1657c06..edef20735632005e444706af2f7cf03813556a2f 100644 --- a/JugReco/src/components/InclusiveKinematicseSigma.cpp +++ b/JugReco/src/components/InclusiveKinematicseSigma.cpp @@ -1,10 +1,7 @@ // SPDX-License-Identifier: LGPL-3.0-or-later // Copyright (C) 2022 Wouter Deconinck, Barak Schmookler -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Producer.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/PhysicalConstants.h" #include <algorithm> @@ -27,21 +24,21 @@ using ROOT::Math::PxPyPzEVector; namespace Jug::Reco { -class InclusiveKinematicseSigma : public GaudiAlgorithm { +class InclusiveKinematicseSigma : public Gaudi::Algorithm { private: - DataHandle<edm4hep::MCParticleCollection> m_inputMCParticleCollection{ + mutable DataHandle<edm4hep::MCParticleCollection> m_inputMCParticleCollection{ "inputMCParticles", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::ReconstructedParticleCollection> m_inputParticleCollection{ + mutable DataHandle<edm4eic::ReconstructedParticleCollection> m_inputParticleCollection{ "inputReconstructedParticles", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::MCRecoParticleAssociationCollection> m_inputParticleAssociation{ + mutable DataHandle<edm4eic::MCRecoParticleAssociationCollection> m_inputParticleAssociation{ "inputParticleAssociations", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::InclusiveKinematicsCollection> m_outputInclusiveKinematicsCollection{ + mutable DataHandle<edm4eic::InclusiveKinematicsCollection> m_outputInclusiveKinematicsCollection{ "outputInclusiveKinematics", Gaudi::DataHandle::Writer, this}; @@ -53,7 +50,7 @@ private: public: InclusiveKinematicseSigma(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputMCParticles", m_inputMCParticleCollection, "MCParticles"); declareProperty("inputReconstructedParticles", m_inputParticleCollection, "ReconstructedParticles"); declareProperty("inputParticleAssociations", m_inputParticleAssociation, "MCRecoParticleAssociation"); @@ -61,7 +58,7 @@ public: } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) + if (Gaudi::Algorithm::initialize().isFailure()) return StatusCode::FAILURE; m_pidSvc = service("ParticleSvc"); @@ -78,7 +75,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collections const auto& mcparts = *(m_inputMCParticleCollection.get()); const auto& rcparts = *(m_inputParticleCollection.get()); diff --git a/JugReco/src/components/ParticleCollector.cpp b/JugReco/src/components/ParticleCollector.cpp index 6818d4521ba620535626ade5c61f365bcb1ec090..490c0bcac29f87a26404546702fe6340c209775e 100644 --- a/JugReco/src/components/ParticleCollector.cpp +++ b/JugReco/src/components/ParticleCollector.cpp @@ -3,9 +3,7 @@ // Gaudi #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include <k4FWCore/DataHandle.h> @@ -21,16 +19,16 @@ namespace Jug::Reco { * * \ingroup reco */ -class ParticleCollector : public GaudiAlgorithm { +class ParticleCollector : public Gaudi::Algorithm { private: Gaudi::Property<std::vector<std::string>> m_inputParticles{this, "inputParticles", {}, "Particles to be aggregated"}; - DataHandle<edm4eic::ReconstructedParticleCollection> m_outputParticles{"outputParticles", Gaudi::DataHandle::Writer, + mutable DataHandle<edm4eic::ReconstructedParticleCollection> m_outputParticles{"outputParticles", Gaudi::DataHandle::Writer, this}; std::vector<DataHandle<edm4eic::ReconstructedParticleCollection>*> m_particleCollections; public: - ParticleCollector(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + ParticleCollector(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("outputParticles", m_outputParticles, "output particles combined into single collection"); } ~ParticleCollector() { @@ -40,7 +38,7 @@ public: } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } for (auto colname : m_inputParticles) { @@ -51,7 +49,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { auto* output = m_outputParticles.createAndPut(); if (msgLevel(MSG::DEBUG)) { debug() << "execute collector" << endmsg; diff --git a/JugReco/src/components/PhotoMultiplierReco.cpp b/JugReco/src/components/PhotoMultiplierReco.cpp index 57e48478a78ff241f8f86afe2721ceac5cdcc240..c38c1df26592564bad98ad71e4a02dd6c095f692 100644 --- a/JugReco/src/components/PhotoMultiplierReco.cpp +++ b/JugReco/src/components/PhotoMultiplierReco.cpp @@ -13,9 +13,7 @@ #include <algorithm> #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -42,10 +40,10 @@ namespace Jug::Reco { * * \ingroup reco */ -class PhotoMultiplierReco : public GaudiAlgorithm { +class PhotoMultiplierReco : public Gaudi::Algorithm { private: - DataHandle<edm4eic::RawTrackerHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::PMTHitCollection> m_outputHitCollection{"outputHitCollection", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4eic::RawTrackerHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::PMTHitCollection> m_outputHitCollection{"outputHitCollection", Gaudi::DataHandle::Writer, this}; Gaudi::Property<double> m_timeStep{this, "timeStep", 0.0625 * ns}; Gaudi::Property<double> m_minNpe{this, "minNpe", 0.0}; Gaudi::Property<double> m_speMean{this, "speMean", 80.0}; @@ -55,14 +53,14 @@ private: std::shared_ptr<const dd4hep::rec::CellIDPositionConverter> m_converter; public: - // ill-formed: using GaudiAlgorithm::GaudiAlgorithm; - PhotoMultiplierReco(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + // ill-formed: using Gaudi::Algorithm::GaudiAlgorithm; + PhotoMultiplierReco(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHitCollection", m_inputHitCollection, ""); declareProperty("outputHitCollection", m_outputHitCollection, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } m_geoSvc = service("GeoSvc"); @@ -75,7 +73,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collections const auto& rawhits = *m_inputHitCollection.get(); // Create output collections diff --git a/JugReco/src/components/SimpleClustering.cpp b/JugReco/src/components/SimpleClustering.cpp index e92e67ecb2ae7b23573e4e91cfc1c126cc913c6e..d5d7745f8ac1034d5e2a104c7f732e7b4ad0e447 100644 --- a/JugReco/src/components/SimpleClustering.cpp +++ b/JugReco/src/components/SimpleClustering.cpp @@ -4,9 +4,7 @@ #include <algorithm> #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -33,15 +31,15 @@ namespace Jug::Reco { * * \ingroup reco */ - class SimpleClustering : public GaudiAlgorithm { + class SimpleClustering : public Gaudi::Algorithm { private: using RecHits = edm4eic::CalorimeterHitCollection; using ProtoClusters = edm4eic::ProtoClusterCollection; using Clusters = edm4eic::ClusterCollection; - DataHandle<RecHits> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; - DataHandle<ProtoClusters> m_outputProtoClusters{"outputProtoCluster", Gaudi::DataHandle::Writer, this}; - DataHandle<Clusters> m_outputClusters{"outputClusterCollection", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<RecHits> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<ProtoClusters> m_outputProtoClusters{"outputProtoCluster", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<Clusters> m_outputClusters{"outputClusterCollection", Gaudi::DataHandle::Writer, this}; Gaudi::Property<std::string> m_mcHits{this, "mcHits", ""}; @@ -56,7 +54,7 @@ namespace Jug::Reco { public: SimpleClustering(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHitCollection", m_inputHitCollection, ""); declareProperty("outputProtoClusterCollection", m_outputClusters, "Output proto clusters"); declareProperty("outputClusterCollection", m_outputClusters, "Output clusters"); @@ -64,7 +62,7 @@ namespace Jug::Reco { StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } // Initialize the MC input hit collection if requested @@ -81,7 +79,7 @@ namespace Jug::Reco { return StatusCode::SUCCESS; } - StatusCode execute() override + StatusCode execute(const EventContext&) const override { // input collections const auto& hits = *m_inputHitCollection.get(); diff --git a/JugReco/src/components/TrackerHitReconstruction.cpp b/JugReco/src/components/TrackerHitReconstruction.cpp index 4642124df5c2b46f1a2438756e19fe10033c7981..66193c73354731675b48ef61f9060d2746f9fe45 100644 --- a/JugReco/src/components/TrackerHitReconstruction.cpp +++ b/JugReco/src/components/TrackerHitReconstruction.cpp @@ -4,11 +4,9 @@ #include <algorithm> // Gaudi -#include "GaudiAlg/GaudiAlgorithm.h" +#include "Gaudi/Algorithm.h" //#include "GaudiKernel/ToolHandle.h" #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" #include "GaudiKernel/RndmGenerators.h" #include "DD4hep/DD4hepUnits.h" @@ -43,12 +41,12 @@ namespace Jug::Reco { * * \ingroup reco */ - class TrackerHitReconstruction : public GaudiAlgorithm { + class TrackerHitReconstruction : public Gaudi::Algorithm { private: Gaudi::Property<float> m_timeResolution{this, "timeResolution", 10}; // in ns - DataHandle<edm4eic::RawTrackerHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, + mutable DataHandle<edm4eic::RawTrackerHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::TrackerHitCollection> m_outputHitCollection{"outputHitCollection", Gaudi::DataHandle::Writer, + mutable DataHandle<edm4eic::TrackerHitCollection> m_outputHitCollection{"outputHitCollection", Gaudi::DataHandle::Writer, this}; /// Pointer to the geometry service @@ -56,14 +54,14 @@ namespace Jug::Reco { std::shared_ptr<const dd4hep::rec::CellIDPositionConverter> m_converter; public: - // ill-formed: using GaudiAlgorithm::GaudiAlgorithm; - TrackerHitReconstruction(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + // ill-formed: using Gaudi::Algorithm::GaudiAlgorithm; + TrackerHitReconstruction(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHitCollection", m_inputHitCollection, ""); declareProperty("outputHitCollection", m_outputHitCollection, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } m_geoSvc = service("GeoSvc"); @@ -76,7 +74,7 @@ namespace Jug::Reco { return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { constexpr auto mm = dd4hep::mm; // input collection const auto* const rawhits = m_inputHitCollection.get(); diff --git a/JugReco/src/components/TrackingHitsCollector2.cpp b/JugReco/src/components/TrackingHitsCollector2.cpp index a51423491d4a28d8bd3cd66153c1ba155d79a9b2..0ca1f7ac47037cf6a72b3c8c292900e46012daa1 100644 --- a/JugReco/src/components/TrackingHitsCollector2.cpp +++ b/JugReco/src/components/TrackingHitsCollector2.cpp @@ -2,10 +2,8 @@ // Copyright (C) 2022 Whitney Armstrong, Sylvester Joosten, Wouter Deconinck // Gaudi -#include "GaudiAlg/GaudiAlgorithm.h" +#include "Gaudi/Algorithm.h" #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" #include <k4FWCore/DataHandle.h> @@ -21,16 +19,16 @@ namespace Jug::Reco { * * \ingroup reco */ - class TrackingHitsCollector2 : public GaudiAlgorithm { + class TrackingHitsCollector2 : public Gaudi::Algorithm { private: Gaudi::Property<std::vector<std::string>> m_inputTrackingHits{this, "inputTrackingHits", {},"Tracker hits to be aggregated"}; - DataHandle<edm4eic::TrackerHitCollection> m_trackingHits{"trackingHits", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4eic::TrackerHitCollection> m_trackingHits{"trackingHits", Gaudi::DataHandle::Writer, this}; - std::vector<DataHandle<edm4eic::TrackerHitCollection>*> m_hitCollections; + mutable std::vector<DataHandle<edm4eic::TrackerHitCollection>*> m_hitCollections; public: TrackingHitsCollector2(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) + : Gaudi::Algorithm(name, svcLoc) { declareProperty("trackingHits", m_trackingHits, "output hits combined into single collection"); } @@ -41,7 +39,7 @@ namespace Jug::Reco { } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } for (auto colname : m_inputTrackingHits) { @@ -51,7 +49,7 @@ namespace Jug::Reco { return StatusCode::SUCCESS; } - StatusCode execute() override + StatusCode execute(const EventContext&) const override { auto* outputHits = m_trackingHits.createAndPut(); if (msgLevel(MSG::DEBUG)) { diff --git a/JugTrack/CMakeLists.txt b/JugTrack/CMakeLists.txt index c348172dfaf41098793cce3b2236332493ca5ad1..ee3b68614fe2b74710d62a7313201c6a448e83fa 100644 --- a/JugTrack/CMakeLists.txt +++ b/JugTrack/CMakeLists.txt @@ -10,7 +10,7 @@ gaudi_add_module(JugTrackPlugins SOURCES ${JugTrackPlugins_sources} LINK - Gaudi::GaudiAlgLib Gaudi::GaudiKernel + Gaudi::GaudiKernel JugBase ROOT::Core ROOT::RIO ROOT::Tree EDM4HEP::edm4hep diff --git a/JugTrack/src/components/CKFTracking.cpp b/JugTrack/src/components/CKFTracking.cpp index 72542b8a30b19c0e0dad3549cc5c6140da629322..787c27b8f2d593e835c664aab3185b16fc130caa 100644 --- a/JugTrack/src/components/CKFTracking.cpp +++ b/JugTrack/src/components/CKFTracking.cpp @@ -4,10 +4,8 @@ #include "CKFTracking.h" // Gaudi -#include "GaudiAlg/GaudiAlgorithm.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiAlg/Transformer.h" -#include "GaudiAlg/GaudiTool.h" #include "GaudiKernel/RndmGenerators.h" #include "Gaudi/Property.h" @@ -94,7 +92,7 @@ namespace Jug::Reco { using namespace Acts::UnitLiterals; CKFTracking::CKFTracking(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) + : Gaudi::Algorithm(name, svcLoc) { #if Acts_VERSION_MAJOR < 37 || (Acts_VERSION_MAJOR == 37 && Acts_VERSION_MINOR < 1) declareProperty("inputSourceLinks", m_inputSourceLinks, ""); @@ -107,7 +105,7 @@ namespace Jug::Reco { StatusCode CKFTracking::initialize() { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } m_geoSvc = service("GeoSvc"); @@ -142,7 +140,7 @@ namespace Jug::Reco { return StatusCode::SUCCESS; } - StatusCode CKFTracking::execute() + StatusCode CKFTracking::execute(const EventContext&) const { // Read input data #if Acts_VERSION_MAJOR < 37 || (Acts_VERSION_MAJOR == 37 && Acts_VERSION_MINOR < 1) diff --git a/JugTrack/src/components/CKFTracking.h b/JugTrack/src/components/CKFTracking.h index ac69747f82b1b31b40d01f78e8f761510b36a24d..105e008652e9580fb3bff816f36dcf8a2635d1df 100644 --- a/JugTrack/src/components/CKFTracking.h +++ b/JugTrack/src/components/CKFTracking.h @@ -10,7 +10,7 @@ #include <vector> #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/ToolHandle.h" #include <k4FWCore/DataHandle.h> @@ -37,7 +37,7 @@ namespace Jug::Reco { * * \ingroup tracking */ -class CKFTracking : public GaudiAlgorithm { +class CKFTracking : public Gaudi::Algorithm { public: /// Track finder function that takes input measurements, initial trackstate /// and track finder options and returns some track-finder-specific result. @@ -76,13 +76,13 @@ public: public: #if Acts_VERSION_MAJOR < 37 || (Acts_VERSION_MAJOR == 37 && Acts_VERSION_MINOR < 1) - DataHandle<ActsExamples::IndexSourceLinkContainer> m_inputSourceLinks{"inputSourceLinks", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<ActsExamples::IndexSourceLinkContainer> m_inputSourceLinks{"inputSourceLinks", Gaudi::DataHandle::Reader, this}; #endif - DataHandle<ActsExamples::MeasurementContainer> m_inputMeasurements{"inputMeasurements", Gaudi::DataHandle::Reader, this}; - DataHandle<ActsExamples::TrackParametersContainer> m_inputInitialTrackParameters{"inputInitialTrackParameters", + mutable DataHandle<ActsExamples::MeasurementContainer> m_inputMeasurements{"inputMeasurements", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<ActsExamples::TrackParametersContainer> m_inputInitialTrackParameters{"inputInitialTrackParameters", Gaudi::DataHandle::Reader, this}; - DataHandle<ActsExamples::ConstTrackContainer> m_outputTracks{"outputTracks", Gaudi::DataHandle::Writer, this}; - DataHandle<ActsExamples::TrajectoriesContainer> m_outputTrajectories{"outputTrajectories", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<ActsExamples::ConstTrackContainer> m_outputTracks{"outputTracks", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<ActsExamples::TrajectoriesContainer> m_outputTrajectories{"outputTrajectories", Gaudi::DataHandle::Writer, this}; Gaudi::Property<std::vector<double>> m_etaBins{this, "etaBins", {}}; Gaudi::Property<std::vector<double>> m_chi2CutOff{this, "chi2CutOff", {15.}}; @@ -104,7 +104,7 @@ public: StatusCode initialize() override; - StatusCode execute() override; + StatusCode execute(const EventContext&) const override; }; } // namespace Jug::Reco diff --git a/JugTrack/src/components/ConformalXYPeakProtoTracks.cpp b/JugTrack/src/components/ConformalXYPeakProtoTracks.cpp index edb2877c3478420883461ed6c196f11de7c410ff..a510fdf95d51174ed87b100057a1bc361de46f3b 100644 --- a/JugTrack/src/components/ConformalXYPeakProtoTracks.cpp +++ b/JugTrack/src/components/ConformalXYPeakProtoTracks.cpp @@ -4,9 +4,7 @@ #include <cmath> // Gaudi #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/ToolHandle.h" #include <k4FWCore/DataHandle.h> @@ -28,31 +26,31 @@ namespace Jug::Reco { * * \ingroup tracking */ -class ConformalXYPeakProtoTracks : public GaudiAlgorithm { +class ConformalXYPeakProtoTracks : public Gaudi::Algorithm { private: - DataHandle<edm4eic::TrackerHitCollection> m_inputTrackerHits{"inputTrackerHits", Gaudi::DataHandle::Reader, this}; - DataHandle<ActsExamples::ProtoTrackContainer> m_outputProtoTracks{"outputProtoTracks", Gaudi::DataHandle::Writer, this}; - DataHandle<int> m_nProtoTracks{"nProtoTracks", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4eic::TrackerHitCollection> m_inputTrackerHits{"inputTrackerHits", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<ActsExamples::ProtoTrackContainer> m_outputProtoTracks{"outputProtoTracks", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<int> m_nProtoTracks{"nProtoTracks", Gaudi::DataHandle::Writer, this}; Gaudi::Property<int> m_nPhiBins{this, "nPhiBins", 100}; using ConformalHit = ROOT::Math::XYVector; public: - ConformalXYPeakProtoTracks(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + ConformalXYPeakProtoTracks(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputTrackerHits", m_inputTrackerHits, "tracker hits whose indices are used in proto-tracks"); declareProperty("outputProtoTracks", m_outputProtoTracks, "grouped hit indicies"); declareProperty("nProtoTracks", m_nProtoTracks, "number of proto tracks"); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collection const edm4eic::TrackerHitCollection* hits = m_inputTrackerHits.get(); // Create output collections diff --git a/JugTrack/src/components/FinderAlgoTemplate.cpp b/JugTrack/src/components/FinderAlgoTemplate.cpp index 2dcdc4c603b6c86f064376bf928c2b68e69d3923..255da1476cc33f96378938a3c740a3a8192e6779 100644 --- a/JugTrack/src/components/FinderAlgoTemplate.cpp +++ b/JugTrack/src/components/FinderAlgoTemplate.cpp @@ -4,9 +4,7 @@ #include <cmath> // Gaudi #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/ToolHandle.h" #include <k4FWCore/DataHandle.h> @@ -24,25 +22,25 @@ namespace Jug::Reco { * * \ingroup tracking */ -class FinderAlgoTemplate : public GaudiAlgorithm { +class FinderAlgoTemplate : public Gaudi::Algorithm { private: - DataHandle<edm4eic::TrackerHitCollection> m_inputTrackerHits{"inputTrackerHits", Gaudi::DataHandle::Reader, this}; - DataHandle<ActsExamples::ProtoTrackContainer> m_outputProtoTracks{"outputProtoTracks", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4eic::TrackerHitCollection> m_inputTrackerHits{"inputTrackerHits", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<ActsExamples::ProtoTrackContainer> m_outputProtoTracks{"outputProtoTracks", Gaudi::DataHandle::Writer, this}; public: - FinderAlgoTemplate(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + FinderAlgoTemplate(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputTrackerHits", m_inputTrackerHits, "tracker hits whose indices are used in proto-tracks"); declareProperty("outputProtoTracks", m_outputProtoTracks, "grouped hit indicies"); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collection //const edm4eic::TrackerHitCollection* hits = m_inputTrackerHits.get(); // Create output collections diff --git a/JugTrack/src/components/HoughTransformProtoTracks.cpp b/JugTrack/src/components/HoughTransformProtoTracks.cpp index f863fb3191ae8df3b9d1fd6b939629b820227d81..1e60b3a4804f5f0556ce6e138a36af35e1ef424f 100644 --- a/JugTrack/src/components/HoughTransformProtoTracks.cpp +++ b/JugTrack/src/components/HoughTransformProtoTracks.cpp @@ -4,9 +4,7 @@ #include <cmath> // Gaudi #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/ToolHandle.h" #include <k4FWCore/DataHandle.h> @@ -24,24 +22,24 @@ namespace Jug::Reco { * * \ingroup tracking */ -class HoughTransformProtoTracks : public GaudiAlgorithm { +class HoughTransformProtoTracks : public Gaudi::Algorithm { private: - DataHandle<edm4eic::TrackerHitCollection> m_inputTrackerHits{"inputTrackerHits", Gaudi::DataHandle::Reader, this}; - DataHandle<ActsExamples::ProtoTrackContainer> m_outputProtoTracks{"outputProtoTracks", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4eic::TrackerHitCollection> m_inputTrackerHits{"inputTrackerHits", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<ActsExamples::ProtoTrackContainer> m_outputProtoTracks{"outputProtoTracks", Gaudi::DataHandle::Writer, this}; public: - HoughTransformProtoTracks(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + HoughTransformProtoTracks(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputTrackerHits", m_inputTrackerHits, "tracker hits whose indices are used in proto-tracks"); declareProperty("outputProtoTracks", m_outputProtoTracks, "grouped hit indicies"); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) + if (Gaudi::Algorithm::initialize().isFailure()) return StatusCode::FAILURE; return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collection //const edm4eic::TrackerHitCollection* hits = m_inputTrackerHits.get(); // Create output collections diff --git a/JugTrack/src/components/ParticlesFromTrackFit.cpp b/JugTrack/src/components/ParticlesFromTrackFit.cpp index 1408e0d31cf349b7b01a23c625d68b9c734b34e5..ac2ed2be1def9c6863ba7eb33036a7f35aae5286 100644 --- a/JugTrack/src/components/ParticlesFromTrackFit.cpp +++ b/JugTrack/src/components/ParticlesFromTrackFit.cpp @@ -4,10 +4,8 @@ #include <algorithm> // Gaudi -#include "GaudiAlg/GaudiAlgorithm.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiAlg/Transformer.h" -#include "GaudiAlg/GaudiTool.h" #include "GaudiKernel/RndmGenerators.h" #include "Gaudi/Property.h" @@ -59,29 +57,29 @@ namespace Jug::Reco { * * \ingroup tracking */ - class ParticlesFromTrackFit : public GaudiAlgorithm { + class ParticlesFromTrackFit : public Gaudi::Algorithm { private: - DataHandle<ActsExamples::TrajectoriesContainer> m_inputTrajectories{"inputTrajectories", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::ReconstructedParticleCollection> m_outputParticles{"outputParticles", Gaudi::DataHandle::Writer, this}; - DataHandle<edm4eic::TrackParametersCollection> m_outputTrackParameters{"outputTrackParameters", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<ActsExamples::TrajectoriesContainer> m_inputTrajectories{"inputTrajectories", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::ReconstructedParticleCollection> m_outputParticles{"outputParticles", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4eic::TrackParametersCollection> m_outputTrackParameters{"outputTrackParameters", Gaudi::DataHandle::Writer, this}; public: - // ill-formed: using GaudiAlgorithm::GaudiAlgorithm; + // ill-formed: using Gaudi::Algorithm::GaudiAlgorithm; ParticlesFromTrackFit(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputTrajectories", m_inputTrajectories,""); declareProperty("outputParticles", m_outputParticles, ""); declareProperty("outputTrackParameters", m_outputTrackParameters, "Acts Track Parameters"); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collection const auto* const trajectories = m_inputTrajectories.get(); // create output collections diff --git a/JugTrack/src/components/ProtoTrackMatching.cpp b/JugTrack/src/components/ProtoTrackMatching.cpp index ec44a63fecb8da413405dbe370dd2a8a6f33e898..f284b8b531d0ab2aad0bf9258813a2b0840a0ed1 100644 --- a/JugTrack/src/components/ProtoTrackMatching.cpp +++ b/JugTrack/src/components/ProtoTrackMatching.cpp @@ -4,9 +4,7 @@ #include <cmath> // Gaudi #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/ToolHandle.h" #include <k4FWCore/DataHandle.h> @@ -24,15 +22,15 @@ namespace Jug::Reco { * * \ingroup tracking */ -class ProtoTrackMatching : public GaudiAlgorithm { +class ProtoTrackMatching : public Gaudi::Algorithm { private: - DataHandle<edm4eic::TrackerHitCollection> m_inputTrackerHits{"inputTrackerHits", Gaudi::DataHandle::Reader, this}; - DataHandle<ActsExamples::TrackParametersContainer> m_initialTrackParameters{"initialTrackParameters", Gaudi::DataHandle::Reader, this}; - DataHandle<ActsExamples::ProtoTrackContainer> m_inputProtoTracks{"inputProtoTracks", Gaudi::DataHandle::Reader, this}; - DataHandle<ActsExamples::ProtoTrackContainer> m_outputProtoTracks{"matchedProtoTracks", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4eic::TrackerHitCollection> m_inputTrackerHits{"inputTrackerHits", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<ActsExamples::TrackParametersContainer> m_initialTrackParameters{"initialTrackParameters", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<ActsExamples::ProtoTrackContainer> m_inputProtoTracks{"inputProtoTracks", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<ActsExamples::ProtoTrackContainer> m_outputProtoTracks{"matchedProtoTracks", Gaudi::DataHandle::Writer, this}; public: - ProtoTrackMatching(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + ProtoTrackMatching(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputTrackerHits", m_inputTrackerHits, ""); declareProperty("initialTrackParameters", m_initialTrackParameters, ""); declareProperty("inputProtoTracks", m_inputProtoTracks, ""); @@ -40,13 +38,13 @@ public: } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collection // hits is unused, commented out for now to avoid compiler warning diff --git a/JugTrack/src/components/SingleTrackSourceLinker.cpp b/JugTrack/src/components/SingleTrackSourceLinker.cpp index a020c0e4e890c0055a51876a30a5001561941935..3ffa762e31ab15425e0800abf159f4c93444e5e0 100644 --- a/JugTrack/src/components/SingleTrackSourceLinker.cpp +++ b/JugTrack/src/components/SingleTrackSourceLinker.cpp @@ -3,9 +3,7 @@ // Gaudi #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -45,22 +43,22 @@ namespace Jug::Reco { * * \ingroup tracking */ -class SingleTrackSourceLinker : public GaudiAlgorithm { +class SingleTrackSourceLinker : public Gaudi::Algorithm { private: - DataHandle<edm4eic::TrackerHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; - DataHandle<std::list<ActsExamples::IndexSourceLink>> m_sourceLinkStorage{"sourceLinkStorage", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4eic::TrackerHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<std::list<ActsExamples::IndexSourceLink>> m_sourceLinkStorage{"sourceLinkStorage", Gaudi::DataHandle::Writer, this}; #if Acts_VERSION_MAJOR < 37 || (Acts_VERSION_MAJOR == 37 && Acts_VERSION_MINOR == 0) - DataHandle<ActsExamples::IndexSourceLinkContainer> m_outputSourceLinks{"outputSourceLinks", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<ActsExamples::IndexSourceLinkContainer> m_outputSourceLinks{"outputSourceLinks", Gaudi::DataHandle::Writer, this}; #endif - DataHandle<ActsExamples::MeasurementContainer> m_outputMeasurements{"outputMeasurements", Gaudi::DataHandle::Writer, this}; - DataHandle<ActsExamples::ProtoTrackContainer> m_outputProtoTracks{"outputProtoTracks", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<ActsExamples::MeasurementContainer> m_outputMeasurements{"outputMeasurements", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<ActsExamples::ProtoTrackContainer> m_outputProtoTracks{"outputProtoTracks", Gaudi::DataHandle::Writer, this}; /// Pointer to the geometry service SmartIF<IGeoSvc> m_geoSvc; SmartIF<IActsGeoSvc> m_actsGeoSvc; std::shared_ptr<const dd4hep::rec::CellIDPositionConverter> m_converter; public: - SingleTrackSourceLinker(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + SingleTrackSourceLinker(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHitCollection", m_inputHitCollection, ""); declareProperty("sourceLinkStorage", m_sourceLinkStorage, ""); #if Acts_VERSION_MAJOR < 37 || (Acts_VERSION_MAJOR == 37 && Acts_VERSION_MINOR == 0) @@ -71,7 +69,7 @@ public: } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } m_geoSvc = service("GeoSvc"); @@ -90,7 +88,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collection const edm4eic::TrackerHitCollection* hits = m_inputHitCollection.get(); // Create output collections diff --git a/JugTrack/src/components/TestACTSLogger.cpp b/JugTrack/src/components/TestACTSLogger.cpp index 52945ca0cbf603f30f7fee7e024a020a618e7fb0..fef4453d9a774409080bc232a265eeb291705c2a 100644 --- a/JugTrack/src/components/TestACTSLogger.cpp +++ b/JugTrack/src/components/TestACTSLogger.cpp @@ -15,12 +15,12 @@ using namespace Acts; DECLARE_COMPONENT(TestACTSLogger) TestACTSLogger::TestACTSLogger(const std::string& aName, ISvcLocator* aSvcLoc) - : GaudiAlgorithm(aName, aSvcLoc) {} + : Gaudi::Algorithm(aName, aSvcLoc) {} TestACTSLogger::~TestACTSLogger() = default; StatusCode TestACTSLogger::initialize() { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } { @@ -46,7 +46,7 @@ StatusCode TestACTSLogger::initialize() { return StatusCode::SUCCESS; } -StatusCode TestACTSLogger::execute() { +StatusCode TestACTSLogger::execute(const EventContext&) const { return StatusCode::SUCCESS; } -StatusCode TestACTSLogger::finalize() { return GaudiAlgorithm::finalize(); } +StatusCode TestACTSLogger::finalize() { return Gaudi::Algorithm::finalize(); } diff --git a/JugTrack/src/components/TestACTSLogger.h b/JugTrack/src/components/TestACTSLogger.h index 2c54fbf67075551f6d280cde167234210e07cb85..05d25e56d589db2b87f47886341982414391d38c 100644 --- a/JugTrack/src/components/TestACTSLogger.h +++ b/JugTrack/src/components/TestACTSLogger.h @@ -5,7 +5,7 @@ #define TESTRECONSTRUCTION_TESTACTSLOGGER_H // GAUDI -#include "GaudiAlg/GaudiAlgorithm.h" +#include "Gaudi/Algorithm.h" #include "Gaudi/Property.h" // FCCSW @@ -15,7 +15,7 @@ * * \ingroup tracking */ -class TestACTSLogger : public GaudiAlgorithm { +class TestACTSLogger : public Gaudi::Algorithm { public: explicit TestACTSLogger(const std::string&, ISvcLocator*); virtual ~TestACTSLogger(); @@ -26,7 +26,7 @@ public: /** Execute. * @return status code */ - virtual StatusCode execute() final; + virtual StatusCode execute(const EventContext&) const final; /** Finalize. * @return status code */ diff --git a/JugTrack/src/components/TrackParamClusterInit.cpp b/JugTrack/src/components/TrackParamClusterInit.cpp index be430173885b3a343aebf323bd832533df3bd1ca..91b0555ee9d307fe199487e2c1e3c28c69cd444a 100644 --- a/JugTrack/src/components/TrackParamClusterInit.cpp +++ b/JugTrack/src/components/TrackParamClusterInit.cpp @@ -4,9 +4,7 @@ #include <cmath> // Gaudi #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -42,30 +40,30 @@ namespace Jug::Reco { * * \ingroup tracking */ -class TrackParamClusterInit : public GaudiAlgorithm { +class TrackParamClusterInit : public Gaudi::Algorithm { private: - DataHandle<edm4eic::ClusterCollection> m_inputClusters{"inputClusters", Gaudi::DataHandle::Reader, this}; - DataHandle<ActsExamples::TrackParametersContainer> m_outputInitialTrackParameters{"outputInitialTrackParameters", + mutable DataHandle<edm4eic::ClusterCollection> m_inputClusters{"inputClusters", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<ActsExamples::TrackParametersContainer> m_outputInitialTrackParameters{"outputInitialTrackParameters", Gaudi::DataHandle::Writer, this}; public: - TrackParamClusterInit(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + TrackParamClusterInit(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputClusters", m_inputClusters, "Input clusters"); declareProperty("outputInitialTrackParameters", m_outputInitialTrackParameters, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } - IRndmGenSvc* randSvc = svc<IRndmGenSvc>("RndmGenSvc", true); + IRndmGenSvc* randSvc = Gaudi::svcLocator()->service<IRndmGenSvc>("RndmGenSvc", true); if (randSvc == nullptr) { return StatusCode::FAILURE; } return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collection const auto* const clusters = m_inputClusters.get(); // Create output collections diff --git a/JugTrack/src/components/TrackParamImagingClusterInit.cpp b/JugTrack/src/components/TrackParamImagingClusterInit.cpp index 98b0ea1017a9c0f67e6b8d5253d24d885d454024..30629ee33f742744e5f82a5cb9bb241234a2f308 100644 --- a/JugTrack/src/components/TrackParamImagingClusterInit.cpp +++ b/JugTrack/src/components/TrackParamImagingClusterInit.cpp @@ -3,10 +3,8 @@ #include <cmath> // Gaudi -#include "GaudiAlg/GaudiAlgorithm.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiAlg/Transformer.h" -#include "GaudiAlg/GaudiTool.h" #include "GaudiKernel/RndmGenerators.h" #include "Gaudi/Property.h" @@ -42,31 +40,31 @@ namespace Jug::Reco { * * \ingroup tracking */ - class TrackParamImagingClusterInit : public GaudiAlgorithm { + class TrackParamImagingClusterInit : public Gaudi::Algorithm { private: - DataHandle<edm4eic::ClusterCollection> m_inputClusters{"inputClusters", Gaudi::DataHandle::Reader, this}; - DataHandle<ActsExamples::TrackParametersContainer> m_outputInitialTrackParameters{"outputInitialTrackParameters", + mutable DataHandle<edm4eic::ClusterCollection> m_inputClusters{"inputClusters", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<ActsExamples::TrackParametersContainer> m_outputInitialTrackParameters{"outputInitialTrackParameters", Gaudi::DataHandle::Writer, this}; public: TrackParamImagingClusterInit(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputClusters", m_inputClusters, "Input clusters"); declareProperty("outputInitialTrackParameters", m_outputInitialTrackParameters, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } - IRndmGenSvc* randSvc = svc<IRndmGenSvc>("RndmGenSvc", true); + IRndmGenSvc* randSvc = Gaudi::svcLocator()->service<IRndmGenSvc>("RndmGenSvc", true); if (randSvc == nullptr) { return StatusCode::FAILURE; } return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collection const auto* const clusters = m_inputClusters.get(); // Create output collections diff --git a/JugTrack/src/components/TrackParamTruthInit.cpp b/JugTrack/src/components/TrackParamTruthInit.cpp index e65de9a7656bfce253c94e051d82041b6386e9cd..478dc46c66b9b0ff4e7a8e856397744489c65387 100644 --- a/JugTrack/src/components/TrackParamTruthInit.cpp +++ b/JugTrack/src/components/TrackParamTruthInit.cpp @@ -4,9 +4,7 @@ #include <cmath> // Gaudi #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/Transformer.h" -#include "GaudiAlg/GaudiTool.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -43,11 +41,11 @@ namespace Jug::Reco { * TrackParmetersContainer * \ingroup tracking */ - class TrackParamTruthInit : public GaudiAlgorithm { + class TrackParamTruthInit : public Gaudi::Algorithm { private: - DataHandle<edm4hep::MCParticleCollection> m_inputMCParticles{"inputMCParticles", Gaudi::DataHandle::Reader, + mutable DataHandle<edm4hep::MCParticleCollection> m_inputMCParticles{"inputMCParticles", Gaudi::DataHandle::Reader, this}; - DataHandle<ActsExamples::TrackParametersContainer> m_outputInitialTrackParameters{"outputInitialTrackParameters", + mutable DataHandle<ActsExamples::TrackParametersContainer> m_outputInitialTrackParameters{"outputInitialTrackParameters", Gaudi::DataHandle::Writer, this}; // selection settings @@ -62,16 +60,16 @@ namespace Jug::Reco { public: TrackParamTruthInit(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputMCParticles", m_inputMCParticles, ""); declareProperty("outputInitialTrackParameters", m_outputInitialTrackParameters, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } - IRndmGenSvc* randSvc = svc<IRndmGenSvc>("RndmGenSvc", true); + IRndmGenSvc* randSvc = Gaudi::svcLocator()->service<IRndmGenSvc>("RndmGenSvc", true); if (randSvc == nullptr) { return StatusCode::FAILURE; } @@ -85,7 +83,7 @@ namespace Jug::Reco { return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collection const auto* const mcparts = m_inputMCParticles.get(); // Create output collections diff --git a/JugTrack/src/components/TrackParamVertexClusterInit.cpp b/JugTrack/src/components/TrackParamVertexClusterInit.cpp index 3c31fe1703f8fc84fff87b04546925ab721d1cbb..20439eb7f14f3a88d57cf4ebecbda01dd50b8f4f 100644 --- a/JugTrack/src/components/TrackParamVertexClusterInit.cpp +++ b/JugTrack/src/components/TrackParamVertexClusterInit.cpp @@ -5,9 +5,7 @@ // Gaudi #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/PhysicalConstants.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -35,33 +33,33 @@ namespace Jug::Reco { * * \ingroup tracking */ -class TrackParamVertexClusterInit : public GaudiAlgorithm { +class TrackParamVertexClusterInit : public Gaudi::Algorithm { private: - DataHandle<edm4eic::TrackerHitCollection> m_inputVertexHits{"inputVertexHits", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::ClusterCollection> m_inputClusters{"inputClusters", Gaudi::DataHandle::Reader, this}; - DataHandle<ActsExamples::TrackParametersContainer> m_outputInitialTrackParameters{"outputInitialTrackParameters", + mutable DataHandle<edm4eic::TrackerHitCollection> m_inputVertexHits{"inputVertexHits", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::ClusterCollection> m_inputClusters{"inputClusters", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<ActsExamples::TrackParametersContainer> m_outputInitialTrackParameters{"outputInitialTrackParameters", Gaudi::DataHandle::Writer, this}; Gaudi::Property<double> m_maxHitRadius{this, "maxHitRadius", 40.0 * mm}; public: - TrackParamVertexClusterInit(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + TrackParamVertexClusterInit(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputVertexHits", m_inputVertexHits, "Vertex tracker hits"); declareProperty("inputClusters", m_inputClusters, "Input clusters"); declareProperty("outputInitialTrackParameters", m_outputInitialTrackParameters, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } - IRndmGenSvc* randSvc = svc<IRndmGenSvc>("RndmGenSvc", true); + IRndmGenSvc* randSvc = Gaudi::svcLocator()->service<IRndmGenSvc>("RndmGenSvc", true); if (randSvc == nullptr) { return StatusCode::FAILURE; } return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collection const auto* const clusters = m_inputClusters.get(); const auto* const vtx_hits = m_inputVertexHits.get(); diff --git a/JugTrack/src/components/TrackProjector.cpp b/JugTrack/src/components/TrackProjector.cpp index b3b0ddf73b72b6caa5a21776eb819c828102cfd7..9fd7c90adbf955ee7619e45201b205ed04227253 100644 --- a/JugTrack/src/components/TrackProjector.cpp +++ b/JugTrack/src/components/TrackProjector.cpp @@ -4,10 +4,8 @@ #include <algorithm> // Gaudi -#include "GaudiAlg/GaudiAlgorithm.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiAlg/Transformer.h" -#include "GaudiAlg/GaudiTool.h" #include "GaudiKernel/RndmGenerators.h" #include "Gaudi/Property.h" @@ -48,10 +46,10 @@ namespace Jug::Reco { * * \ingroup tracking */ - class TrackProjector : public GaudiAlgorithm { + class TrackProjector : public Gaudi::Algorithm { private: - DataHandle<ActsExamples::TrajectoriesContainer> m_inputTrajectories{"inputTrajectories", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::TrackSegmentCollection> m_outputTrackSegments{"outputTrackSegments", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<ActsExamples::TrajectoriesContainer> m_inputTrajectories{"inputTrajectories", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<edm4eic::TrackSegmentCollection> m_outputTrackSegments{"outputTrackSegments", Gaudi::DataHandle::Writer, this}; Gaudi::Property<unsigned int> m_firstInVolumeID{this, "firstInVolumeID", 0}; Gaudi::Property<std::string> m_firstInVolumeName{this, "firstInVolumeName", ""}; @@ -62,20 +60,20 @@ namespace Jug::Reco { Acts::GeometryContext m_geoContext; public: - // ill-formed: using GaudiAlgorithm::GaudiAlgorithm; + // ill-formed: using Gaudi::Algorithm::GaudiAlgorithm; TrackProjector(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) { + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputTrajectories", m_inputTrajectories,""); declareProperty("outputTrackSegments", m_outputTrackSegments, ""); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) + if (Gaudi::Algorithm::initialize().isFailure()) return StatusCode::FAILURE; return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collection const auto* const trajectories = m_inputTrajectories.get(); // create output collections diff --git a/JugTrack/src/components/TrackerSourceLinker.cpp b/JugTrack/src/components/TrackerSourceLinker.cpp index e5f893135a83deabe9332d8ee657cb245a302cea..49440758a97bf224e6f62158b8f3128e8eec766b 100644 --- a/JugTrack/src/components/TrackerSourceLinker.cpp +++ b/JugTrack/src/components/TrackerSourceLinker.cpp @@ -5,9 +5,7 @@ // Gaudi #include "Gaudi/Property.h" -#include "GaudiAlg/GaudiAlgorithm.h" -#include "GaudiAlg/GaudiTool.h" -#include "GaudiAlg/Transformer.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/RndmGenerators.h" #include "GaudiKernel/ToolHandle.h" @@ -47,21 +45,21 @@ namespace Jug::Reco { * * \ingroup tracking */ -class TrackerSourceLinker : public GaudiAlgorithm { +class TrackerSourceLinker : public Gaudi::Algorithm { private: - DataHandle<edm4eic::TrackerHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; - DataHandle<std::list<ActsExamples::IndexSourceLink>> m_sourceLinkStorage{"sourceLinkStorage", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<edm4eic::TrackerHitCollection> m_inputHitCollection{"inputHitCollection", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<std::list<ActsExamples::IndexSourceLink>> m_sourceLinkStorage{"sourceLinkStorage", Gaudi::DataHandle::Writer, this}; #if Acts_VERSION_MAJOR < 37 || (Acts_VERSION_MAJOR == 37 && Acts_VERSION_MINOR == 0) - DataHandle<ActsExamples::IndexSourceLinkContainer> m_outputSourceLinks{"outputSourceLinks", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<ActsExamples::IndexSourceLinkContainer> m_outputSourceLinks{"outputSourceLinks", Gaudi::DataHandle::Writer, this}; #endif - DataHandle<ActsExamples::MeasurementContainer> m_outputMeasurements{"outputMeasurements", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<ActsExamples::MeasurementContainer> m_outputMeasurements{"outputMeasurements", Gaudi::DataHandle::Writer, this}; /// Pointer to the geometry services SmartIF<IGeoSvc> m_geoSvc; SmartIF<IActsGeoSvc> m_actsGeoSvc; std::shared_ptr<const dd4hep::rec::CellIDPositionConverter> m_converter; public: - TrackerSourceLinker(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + TrackerSourceLinker(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHitCollection", m_inputHitCollection, ""); declareProperty("sourceLinkStorage", m_sourceLinkStorage, ""); #if Acts_VERSION_MAJOR < 37 || (Acts_VERSION_MAJOR == 37 && Acts_VERSION_MINOR == 0) @@ -71,7 +69,7 @@ public: } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } m_geoSvc = service("GeoSvc"); @@ -91,7 +89,7 @@ public: return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { constexpr double mm_acts = Acts::UnitConstants::mm; constexpr double mm_conv = mm_acts / dd4hep::mm; // = 1/0.1 diff --git a/JugTrack/src/components/TruthTrackSeeding.cpp b/JugTrack/src/components/TruthTrackSeeding.cpp index a8e80b1c914a54b5493aa2aa66651e08a85a91f1..df5896634a15edc61c943f2c755d844818e528e8 100644 --- a/JugTrack/src/components/TruthTrackSeeding.cpp +++ b/JugTrack/src/components/TruthTrackSeeding.cpp @@ -3,10 +3,8 @@ #include <cmath> // Gaudi -#include "GaudiAlg/GaudiAlgorithm.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiAlg/Transformer.h" -#include "GaudiAlg/GaudiTool.h" #include "GaudiKernel/RndmGenerators.h" #include "Gaudi/Property.h" @@ -34,25 +32,25 @@ namespace Jug::Reco { * * \ingroup tracking */ - class TruthTrackSeeding : public GaudiAlgorithm { + class TruthTrackSeeding : public Gaudi::Algorithm { private: - DataHandle<edm4hep::MCParticleCollection> m_inputMCParticles{"inputMCParticles", Gaudi::DataHandle::Reader, + mutable DataHandle<edm4hep::MCParticleCollection> m_inputMCParticles{"inputMCParticles", Gaudi::DataHandle::Reader, this}; - DataHandle<edm4eic::TrackParametersCollection> m_outputTrackParameters{"outputTrackParameters", + mutable DataHandle<edm4eic::TrackParametersCollection> m_outputTrackParameters{"outputTrackParameters", Gaudi::DataHandle::Writer, this}; SmartIF<IParticleSvc> m_pidSvc; public: - TruthTrackSeeding(const std::string& name, ISvcLocator* svcLoc) : GaudiAlgorithm(name, svcLoc) { + TruthTrackSeeding(const std::string& name, ISvcLocator* svcLoc) : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputMCParticles", m_inputMCParticles, "mcparticle truth data from npsim"); declareProperty("outputTrackParameters", m_outputTrackParameters, "Output initial track parameters"); } StatusCode initialize() override { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } - IRndmGenSvc* randSvc = svc<IRndmGenSvc>("RndmGenSvc", true); + IRndmGenSvc* randSvc = Gaudi::svcLocator()->service<IRndmGenSvc>("RndmGenSvc", true); if (randSvc == nullptr) { return StatusCode::FAILURE; } @@ -66,7 +64,7 @@ namespace Jug::Reco { return StatusCode::SUCCESS; } - StatusCode execute() override { + StatusCode execute(const EventContext&) const override { // input collection const auto* const mcparts = m_inputMCParticles.get(); // Create output collections diff --git a/JugTrack/src/components/disabled/TrackFittingAlgorithm.cpp b/JugTrack/src/components/disabled/TrackFittingAlgorithm.cpp index f21b3d8f76f44a2538ac26d7c30a4bcb3bfb73b8..53970f6ece6c5c3b5a6c15d88e6b666c65f9434e 100644 --- a/JugTrack/src/components/disabled/TrackFittingAlgorithm.cpp +++ b/JugTrack/src/components/disabled/TrackFittingAlgorithm.cpp @@ -5,10 +5,8 @@ #include "TrackFittingAlgorithm.h" // Gaudi -#include "GaudiAlg/GaudiAlgorithm.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiAlg/Transformer.h" -#include "GaudiAlg/GaudiTool.h" #include "GaudiKernel/RndmGenerators.h" #include "Gaudi/Property.h" @@ -51,7 +49,7 @@ namespace Jug::Reco { using namespace Acts::UnitLiterals; TrackFittingAlgorithm::TrackFittingAlgorithm(const std::string& name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputSourceLinks", m_inputSourceLinks, ""); declareProperty("initialTrackParameters", m_initialTrackParameters, ""); @@ -63,7 +61,7 @@ namespace Jug::Reco { StatusCode TrackFittingAlgorithm::initialize() { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } m_geoSvc = service("GeoSvc"); @@ -86,7 +84,7 @@ namespace Jug::Reco { return StatusCode::SUCCESS; } - StatusCode TrackFittingAlgorithm::execute() + StatusCode TrackFittingAlgorithm::execute(const EventContext&) const { // Read input data const auto* const sourceLinks = m_inputSourceLinks.get(); diff --git a/JugTrack/src/components/disabled/TrackFittingAlgorithm.h b/JugTrack/src/components/disabled/TrackFittingAlgorithm.h index 5592ae5f768799125437e2a6daa27ca8b1db7002..80137ce9f1659a5e788dc5b3b08aa076ebd16b18 100644 --- a/JugTrack/src/components/disabled/TrackFittingAlgorithm.h +++ b/JugTrack/src/components/disabled/TrackFittingAlgorithm.h @@ -10,7 +10,7 @@ #include <random> #include <stdexcept> -#include "GaudiAlg/GaudiAlgorithm.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/ToolHandle.h" #include "Gaudi/Property.h" @@ -43,7 +43,7 @@ namespace Jug::Reco { * * \ingroup tracking */ - class TrackFittingAlgorithm : public GaudiAlgorithm { + class TrackFittingAlgorithm : public Gaudi::Algorithm { public: /// Track fitter function that takes input measurements, initial trackstate /// and fitter options and returns some track-fitter-specific result. @@ -58,12 +58,12 @@ namespace Jug::Reco { const std::vector<ActsExamples::IndexSourceLink>&, const ActsExamples::TrackParameters&, const TrackFitterOptions&)>; public: - DataHandle<ActsExamples::IndexSourceLinkContainer> m_inputSourceLinks{"inputSourceLinks", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<ActsExamples::IndexSourceLinkContainer> m_inputSourceLinks{"inputSourceLinks", Gaudi::DataHandle::Reader, this}; DataHandle<ActsExamples::TrackParametersContainer> m_initialTrackParameters{"initialTrackParameters", Gaudi::DataHandle::Reader, this}; - DataHandle<ActsExamples::MeasurementContainer> m_inputMeasurements{"inputMeasurements", Gaudi::DataHandle::Reader, this}; - DataHandle<ActsExamples::ProtoTrackContainer> m_inputProtoTracks{"inputProtoTracks", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<ActsExamples::MeasurementContainer> m_inputMeasurements{"inputMeasurements", Gaudi::DataHandle::Reader, this}; + mutable DataHandle<ActsExamples::ProtoTrackContainer> m_inputProtoTracks{"inputProtoTracks", Gaudi::DataHandle::Reader, this}; DataHandle<ActsExamples::TrajectoriesContainer> m_foundTracks{"foundTracks", Gaudi::DataHandle::Reader, this}; - DataHandle<ActsExamples::TrajectoriesContainer> m_outputTrajectories{"outputTrajectories", Gaudi::DataHandle::Writer, this}; + mutable DataHandle<ActsExamples::TrajectoriesContainer> m_outputTrajectories{"outputTrajectories", Gaudi::DataHandle::Writer, this}; FitterFunction m_trackFittingFunc; SmartIF<IGeoSvc> m_geoSvc; @@ -87,7 +87,7 @@ namespace Jug::Reco { StatusCode initialize() override; - StatusCode execute() override; + StatusCode execute(const EventContext&) const override; private: /// Helper function to call correct FitterFunction FitterResult fitTrack( diff --git a/JugTrack/src/components/disabled/TrackParamACTSSeeding.cpp b/JugTrack/src/components/disabled/TrackParamACTSSeeding.cpp index 70fc87350d665f85fc368b10a84ec1a11507fbd7..9bdefeab1697c0bc0f6ccad222a89747a427c320 100644 --- a/JugTrack/src/components/disabled/TrackParamACTSSeeding.cpp +++ b/JugTrack/src/components/disabled/TrackParamACTSSeeding.cpp @@ -17,10 +17,8 @@ #include "Acts/Seeding/SeedFinder.hpp" // Gaudi -#include "GaudiAlg/GaudiAlgorithm.h" +#include "Gaudi/Algorithm.h" #include "GaudiKernel/ToolHandle.h" -#include "GaudiAlg/Transformer.h" -#include "GaudiAlg/GaudiTool.h" #include "GaudiKernel/RndmGenerators.h" #include "Gaudi/Property.h" @@ -57,7 +55,7 @@ namespace Jug::Reco { * TrackParmetersContainer * \ingroup tracking */ - class TrackParamACTSSeeding : public GaudiAlgorithm { + class TrackParamACTSSeeding : public Gaudi::Algorithm { public: DataHandle<edm4eic::TrackerHitCollection> m_inputHitCollection { "inputHitCollection", @@ -238,7 +236,7 @@ namespace Jug::Reco { public: TrackParamACTSSeeding(const std::string &name, ISvcLocator* svcLoc) - : GaudiAlgorithm(name, svcLoc) + : Gaudi::Algorithm(name, svcLoc) { declareProperty("inputHitCollection", m_inputHitCollection, ""); @@ -248,13 +246,13 @@ namespace Jug::Reco { StatusCode initialize() override; - StatusCode execute() override; + StatusCode execute(const EventContext&) const override; }; StatusCode TrackParamACTSSeeding::initialize() { - if (GaudiAlgorithm::initialize().isFailure()) { + if (Gaudi::Algorithm::initialize().isFailure()) { return StatusCode::FAILURE; } @@ -332,7 +330,7 @@ namespace Jug::Reco { return StatusCode::SUCCESS; } - StatusCode TrackParamACTSSeeding::execute() + StatusCode TrackParamACTSSeeding::execute(const EventContext&) const { const edm4eic::TrackerHitCollection *hits = m_inputHitCollection.get();