ATLAS Offline Software
Loading...
Searching...
No Matches
TauTruthDecorationsAlg.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
6
7
8#ifndef TAU_ANALYSIS_ALGORITHMS__TAU_TRUTH_DECORATIONS_ALG_H
9#define TAU_ANALYSIS_ALGORITHMS__TAU_TRUTH_DECORATIONS_ALG_H
10
16
17#include <utility>
18#include <vector>
19
20
21namespace CP
22{
24
26 {
28 public:
30 StatusCode initialize () override;
31 StatusCode execute (const EventContext &ctx) const override;
32
34 private:
35 SG::ReadHandleKey<xAOD::TauJetContainer> m_tausKey { this, "taus", "", "the input tau jet container" };
36
38 private:
39 Gaudi::Property<std::vector<std::string>> m_doubleDecorations {this, "doubleDecorations", {}, "the list decorations with type double to copy"};
40 Gaudi::Property<std::vector<std::string>> m_floatDecorations {this, "floatDecorations", {}, "the list decorations with type float to copy"};
41 Gaudi::Property<std::vector<std::string>> m_intDecorations {this, "intDecorations", {}, "the list decorations with type int to copy"};
42 Gaudi::Property<std::vector<std::string>> m_unsignedIntDecorations {this, "unsignedIntDecorations", {}, "the list decorations with type unsigned int to copy"};
43 Gaudi::Property<std::vector<std::string>> m_charDecorations {this, "charDecorations", {}, "the list decorations with type char to copy"};
44 Gaudi::Property<std::string> m_prefix {this, "prefix", "truth_", "the prefix to be added to all output decorations"};
45
46 // the mapping of double to float is intentional to save disk space
47 std::vector<std::pair<SG::ConstAccessor<double>, SG::WriteDecorHandleKey<xAOD::TauJetContainer>>> m_doubleWriteHandleKeys;
48 std::vector<std::pair<SG::ConstAccessor<float>, SG::WriteDecorHandleKey<xAOD::TauJetContainer>>> m_floatWriteHandleKeys;
49 std::vector<std::pair<SG::ConstAccessor<int>, SG::WriteDecorHandleKey<xAOD::TauJetContainer>>> m_intWriteHandleKeys;
50 std::vector<std::pair<SG::ConstAccessor<unsigned int>, SG::WriteDecorHandleKey<xAOD::TauJetContainer>>> m_unsignedIntWriteHandleKeys;
51 std::vector<std::pair<SG::ConstAccessor<char>, SG::WriteDecorHandleKey<xAOD::TauJetContainer>>> m_charWriteHandleKeys;
52
54 this, "decayModeDecoration", "truth_DecayMode", "the decoration for the tau decay mode"};
56 this, "particleTypeDecoration", "truth_ParticleType", "the decoration for the tau particle type"};
57
59 this, "partonTruthLabelIDDecoration", "truth_PartonTruthLabelID", "the decoration for the tau parton truth label ID from the linked jet"};
60 };
61}
62
63#endif
Property holding a SG store/key/clid from which a ReadHandle is made.
an algorithm to decorate truth matched information
std::vector< std::pair< SG::ConstAccessor< char >, SG::WriteDecorHandleKey< xAOD::TauJetContainer > > > m_charWriteHandleKeys
SG::ReadHandleKey< xAOD::TauJetContainer > m_tausKey
the tau collection we run on
std::vector< std::pair< SG::ConstAccessor< int >, SG::WriteDecorHandleKey< xAOD::TauJetContainer > > > m_intWriteHandleKeys
SG::WriteDecorHandleKey< xAOD::TauJetContainer > m_partonTruthLabelIDKey
Gaudi::Property< std::vector< std::string > > m_unsignedIntDecorations
Gaudi::Property< std::vector< std::string > > m_doubleDecorations
the decoration for the tau scale factor
SG::WriteDecorHandleKey< xAOD::TauJetContainer > m_truthParticleTypeKey
std::vector< std::pair< SG::ConstAccessor< float >, SG::WriteDecorHandleKey< xAOD::TauJetContainer > > > m_floatWriteHandleKeys
Gaudi::Property< std::vector< std::string > > m_intDecorations
SG::WriteDecorHandleKey< xAOD::TauJetContainer > m_truthDecayModeKey
StatusCode execute(const EventContext &ctx) const override
std::vector< std::pair< SG::ConstAccessor< double >, SG::WriteDecorHandleKey< xAOD::TauJetContainer > > > m_doubleWriteHandleKeys
std::vector< std::pair< SG::ConstAccessor< unsigned int >, SG::WriteDecorHandleKey< xAOD::TauJetContainer > > > m_unsignedIntWriteHandleKeys
Gaudi::Property< std::vector< std::string > > m_charDecorations
Gaudi::Property< std::vector< std::string > > m_floatDecorations
Gaudi::Property< std::string > m_prefix
the base class for EventLoop reentrant algorithms
AnaReentrantAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
constructor with parameters
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
Select isolated Photons, Electrons and Muons.