ATLAS Offline Software
Loading...
Searching...
No Matches
TauAODRunnerAlg.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TAUREC_TAUAODRUNNERALG_H
6#define TAUREC_TAUAODRUNNERALG_H
7
9
27#include "xAODTau/TauDefs.h"
28#include "GaudiKernel/ToolHandle.h"
29
45 public:
46 TauAODRunnerAlg(const std::string &name, ISvcLocator *);
47 virtual StatusCode initialize() override;
48 virtual StatusCode execute(const EventContext& ctx) const override;
49
50 private:
51 // Tool handle arrays
52 ToolHandleArray<ITauToolBase> m_modificationTools{this, "modificationTools", {}, "Tools for modifying the taus"};
53 ToolHandleArray<ITauToolBase> m_officialTools {this, "officialTools", {}, "Official Reconstruction tools for taus after the modifications"};
54
55 // Read and write keys
56 SG::ReadHandleKey<xAOD::TauJetContainer> m_tauContainer {this, "Key_tauContainer", "TauJets", "input tau key"};
57 SG::ReadHandleKey<xAOD::CaloClusterContainer> m_pi0ClusterInputContainer {this, "Key_pi0ClusterInputContainer", "TauPi0Clusters", "input pi0 cluster"};
58 SG::WriteHandleKey<xAOD::TauJetContainer> m_tauOutContainer {this, "Key_tauOutputContainer", "TauJets_AODReco", "output tau key"};
59 SG::WriteHandleKey<xAOD::ParticleContainer> m_pi0Container {this, "Key_pi0OutputContainer", "TauFinalPi0s_AODReco", "output tau final pi0 key"};
60 SG::WriteHandleKey<xAOD::PFOContainer> m_neutralPFOOutputContainer {this, "Key_neutralPFOOutputContainer", "TauNeutralPFOs_AODReco", "output tau neutral pfo key"};
61 SG::WriteHandleKey<xAOD::PFOContainer> m_chargedPFOOutputContainer {this, "Key_chargedPFOOutputContainer", "TauChargedPFOs_AODReco", "output tau charged pfo key"};
62 SG::WriteHandleKey<xAOD::PFOContainer> m_hadronicPFOOutputContainer{this, "Key_hadronicPFOOutputContainer", "TauHadronicPFOs_AODReco", "output tau hadronic pfo key"};
63 SG::WriteHandleKey<xAOD::TauTrackContainer> m_tauTrackOutputContainer {this, "Key_tauTrackOutputContainer", "TauTracks_AODReco", "output tau track key"};
64 SG::WriteHandleKey<xAOD::VertexContainer> m_vertexOutputContainer {this, "Key_vertexOutputContainer", "TauSecondaryVertices_AODReco", "output vertex container key"};
65
66 // Helper
67 static bool isTauModified(const xAOD::TauJet* newtau) ;
68};
69
70#endif // TAUREC_TAUAODRUNNERALG_H
Handle class for reading from StoreGate.
Handle class for recording to StoreGate.
An algorithm that can be simultaneously executed in multiple threads.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
virtual StatusCode initialize() override
virtual StatusCode execute(const EventContext &ctx) const override
ToolHandleArray< ITauToolBase > m_modificationTools
SG::ReadHandleKey< xAOD::TauJetContainer > m_tauContainer
SG::WriteHandleKey< xAOD::TauJetContainer > m_tauOutContainer
SG::WriteHandleKey< xAOD::PFOContainer > m_neutralPFOOutputContainer
SG::WriteHandleKey< xAOD::ParticleContainer > m_pi0Container
TauAODRunnerAlg(const std::string &name, ISvcLocator *)
ToolHandleArray< ITauToolBase > m_officialTools
SG::WriteHandleKey< xAOD::PFOContainer > m_chargedPFOOutputContainer
SG::WriteHandleKey< xAOD::PFOContainer > m_hadronicPFOOutputContainer
static bool isTauModified(const xAOD::TauJet *newtau)
SG::ReadHandleKey< xAOD::CaloClusterContainer > m_pi0ClusterInputContainer
SG::WriteHandleKey< xAOD::VertexContainer > m_vertexOutputContainer
SG::WriteHandleKey< xAOD::TauTrackContainer > m_tauTrackOutputContainer
TauJet_v3 TauJet
Definition of the current "tau version".