ATLAS Offline Software
Loading...
Searching...
No Matches
OfflineTauDecoratorAlg.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef INDETTRACKPERFMON_OFFLINETAUDECORATORALG_H
6#define INDETTRACKPERFMON_OFFLINETAUDECORATORALG_H
7
15
18
22
24#include <string>
25#include <vector>
26
28#include "SafeDecorator.h"
29
30
31namespace IDTPM {
32
35
36 public:
37
40
41 OfflineTauDecoratorAlg( const std::string& name, ISvcLocator* pSvcLocator );
42
43 virtual ~OfflineTauDecoratorAlg() = default;
44
45 virtual StatusCode initialize() override;
46
47 virtual StatusCode execute( const EventContext& ctx ) const override;
48
49 private:
50
52 this, "OfflineTrkParticleContainerName", "InDetTrackParticles", "Name of container of offline tracks" };
53
54 StringProperty m_prefix { this, "Prefix", "LinkedTau_", "Decoration prefix to avoid clashes" };
55
56 StringProperty m_tauType { this, "TauType", "RNN", "Type of reconstructed hadronic Tau (BDT or RNN)" };
57
58 UnsignedIntegerProperty m_tauNprongs { this, "TauNprongs", 1, "Number of prongs in hadronic Tau decay (1 or 3)" };
59
60 StatusCode decorateTauTrack(
61 const xAOD::TrackParticle& track,
63 ElementTauLink_t > >& tau_decor,
64 const xAOD::TauJetContainer& taus ) const;
65
67 this, "TauContainerName", "TauJets", "Name of container of offline hadronic taus" };
68
77
78 const std::vector< std::string > m_decor_tau_names {
79 "All",
80 "Tight",
81 "Medium",
82 "Loose",
83 "VeryLoose"
84 };
85
88
89 };
90
91} // namespace IDTPM
92
93#endif // > ! INDETTRACKPERFMON_OFFLINETAUDECORATORALG_H
static Double_t taus
header file for function of same name adapted from original IDPVM implementation
An algorithm that can be simultaneously executed in multiple threads.
ElementLink< xAOD::TrackParticleContainer > ElementTrackLink_t
virtual StatusCode initialize() override
ElementLink< xAOD::TauJetContainer > ElementTauLink_t
const std::vector< std::string > m_decor_tau_names
virtual ~OfflineTauDecoratorAlg()=default
StatusCode decorateTauTrack(const xAOD::TrackParticle &track, std::vector< IDTPM::OptionalDecoration< xAOD::TrackParticleContainer, ElementTauLink_t > > &tau_decor, const xAOD::TauJetContainer &taus) const
OfflineTauDecoratorAlg(const std::string &name, ISvcLocator *pSvcLocator)
Local includes.
UnsignedIntegerProperty m_tauNprongs
std::vector< IDTPM::WriteKeyAccessorPair< xAOD::TrackParticleContainer, ElementTauLink_t > > m_decor_tau
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_offlineTrkParticlesName
virtual StatusCode execute(const EventContext &ctx) const override
SG::ReadHandleKey< xAOD::TauJetContainer > m_tausName
Property holding a SG store/key/clid from which a ReadHandle is made.
Athena include(s).
std::pair< SG::WriteDecorHandle< ContainerType, VariableType >, bool > OptionalDecoration
std::pair< SG::WriteDecorHandleKey< ContainerType >, SG::AuxElement::ConstAccessor< VariableType > > WriteKeyAccessorPair
Useful declarations.
TrackParticle_v1 TrackParticle
Reference the current persistent version:
TrackParticleContainer_v1 TrackParticleContainer
Definition of the current "TrackParticle container version".
TauJetContainer_v3 TauJetContainer
Definition of the current "taujet container version".