ATLAS Offline Software
Loading...
Searching...
No Matches
METTauAssociator.h
Go to the documentation of this file.
1
2
3/*
4 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
5*/
6
7// METTauAssociator.h
8// Header file for class METTauAssociator
9//
10// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
11//
12// Author: P Loch, S Resconi, TJ Khoo, AS Mete
14#ifndef METRECONSTRUCTION_METTAUASSOCIATOR_H
15#define METRECONSTRUCTION_METTAUASSOCIATOR_H 1
16
17// METReconstruction includes
19//Includes for DataHandles
22
23
24namespace met{
25 class METTauAssociator final
26 : public METAssociator
27 {
28 // This macro defines the constructor with the interface declaration
30
31
32
33 // Public methods:
35 public:
36
37 // Constructor with name
38 METTauAssociator(const std::string& name);
39 ~METTauAssociator() = default;
40
41 // AsgTool Hooks
42 virtual StatusCode initialize() override;
43
45 // Private data:
47 protected:
48
49 StatusCode executeTool(xAOD::MissingETContainer* metCont, xAOD::MissingETAssociationMap* metMap) const final;
50 StatusCode extractTopoClusters(const xAOD::IParticle* obj,
51 std::vector<const xAOD::IParticle*>& tclist,
52 const met::METAssociator::ConstitHolder& constits) const final;
53
54 StatusCode extractPFO(const xAOD::IParticle* obj,
55 std::vector<const xAOD::IParticle*>& pfolist,
57 std::map<const xAOD::IParticle*,MissingETBase::Types::constvec_t> &momenta) const final;
58
59 StatusCode extractFE(const xAOD::IParticle* obj,
60 std::vector<const xAOD::IParticle*>& felist,
62 std::map<const xAOD::IParticle*,MissingETBase::Types::constvec_t> &momenta) const final;
63
64 StatusCode extractFEsFromLinks(const xAOD::TauJet* tau,
65 std::vector<const xAOD::IParticle*>& felist,
66 const met::METAssociator::ConstitHolder& constits) const;
67
68 StatusCode extractFEs(const xAOD::TauJet* tau,
69 std::vector<const xAOD::IParticle*>& felist,
70 const met::METAssociator::ConstitHolder& constits) const;
71
72 StatusCode extractTracks(const xAOD::IParticle* obj,
73 std::vector<const xAOD::IParticle*>& constlist,
74 const met::METAssociator::ConstitHolder& constits) const final;
75
76 private:
77
80
81 SG::ReadHandleKey<xAOD::TauJetContainer> m_tauContKey{this, "InputCollection", "TauJets", "taus input key"};
82 SG::ReadDecorHandleKey<xAOD::TauJetContainer> m_neutralFEReadDecorKey{this,"NeutralFEReadDecorKey","", "Neutral FlowElement links key"};
83 SG::ReadDecorHandleKey<xAOD::TauJetContainer> m_chargedFEReadDecorKey{this,"ChargedFEReadDecorKey","", "Charged FlowElement links key"};
84 };
85
86}
87
88#endif //> !METRECONSTRUCTION_METTAUASSOCIATOR_H
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
defines an "iterator" over instances of a given type in StoreGateSvc
Handle class for reading a decoration on an object.
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Property holding a SG store/key/clid from which a ReadHandle is made.
METAssociator(const std::string &name)
~METTauAssociator()=default
StatusCode executeTool(xAOD::MissingETContainer *metCont, xAOD::MissingETAssociationMap *metMap) const final
StatusCode extractFE(const xAOD::IParticle *obj, std::vector< const xAOD::IParticle * > &felist, const met::METAssociator::ConstitHolder &constits, std::map< const xAOD::IParticle *, MissingETBase::Types::constvec_t > &momenta) const final
SG::ReadHandleKey< xAOD::TauJetContainer > m_tauContKey
StatusCode extractFEs(const xAOD::TauJet *tau, std::vector< const xAOD::IParticle * > &felist, const met::METAssociator::ConstitHolder &constits) const
METTauAssociator()
Default constructor:
METTauAssociator(const std::string &name)
StatusCode extractTopoClusters(const xAOD::IParticle *obj, std::vector< const xAOD::IParticle * > &tclist, const met::METAssociator::ConstitHolder &constits) const final
virtual StatusCode initialize() override
Dummy implementation of the initialisation function.
StatusCode extractTracks(const xAOD::IParticle *obj, std::vector< const xAOD::IParticle * > &constlist, const met::METAssociator::ConstitHolder &constits) const final
StatusCode extractFEsFromLinks(const xAOD::TauJet *tau, std::vector< const xAOD::IParticle * > &felist, const met::METAssociator::ConstitHolder &constits) const
SG::ReadDecorHandleKey< xAOD::TauJetContainer > m_neutralFEReadDecorKey
SG::ReadDecorHandleKey< xAOD::TauJetContainer > m_chargedFEReadDecorKey
StatusCode extractPFO(const xAOD::IParticle *obj, std::vector< const xAOD::IParticle * > &pfolist, const met::METAssociator::ConstitHolder &constits, std::map< const xAOD::IParticle *, MissingETBase::Types::constvec_t > &momenta) const final
Class providing the definition of the 4-vector interface.
TauJet_v3 TauJet
Definition of the current "tau version".
MissingETAssociationMap_v1 MissingETAssociationMap
Version control by type defintion.