ATLAS Offline Software
METJetAssocTool.h
Go to the documentation of this file.
1 
3 /*
4  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // METJetAssocTool.h
8 // Header file for class METJetAssocTool
9 //
10 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
11 //
12 // Author: P Loch, S Resconi, TJ Khoo, AS Mete
14 #ifndef METRECONSTRUCTION_METJETASSOCTOOL_H
15 #define METRECONSTRUCTION_METJETASSOCTOOL_H 1
16 
17 // METReconstruction includes
19 
20 //Includes for DataHandles
21 #include "StoreGate/DataHandle.h"
22 
23 namespace met{
24  class METJetAssocTool final
25  : public METAssociator
26  {
27  // This macro defines the constructor with the interface declaration
29 
30 
31 
32  // Public methods:
34  public:
35 
36  // Constructor with name
37  METJetAssocTool(const std::string& name);
38  ~METJetAssocTool() = default;
39 
40  // AsgTool Hooks
41  virtual StatusCode initialize() override;
42 
44  // Private data:
46  protected:
47 
48  virtual
50 
51  virtual
53  std::vector<const xAOD::IParticle*>&,
55  std::map<const xAOD::IParticle*,MissingETBase::Types::constvec_t>&) const override
56  {return StatusCode::FAILURE;} // should not be called
57  virtual
59  std::vector<const xAOD::IParticle*>&,
61  std::map<const xAOD::IParticle*,MissingETBase::Types::constvec_t>&) const override
62  {return StatusCode::FAILURE;} // should not be called
63  virtual
65  std::vector<const xAOD::IParticle*>&,
66  const met::METAssociator::ConstitHolder&) const override
67  {return StatusCode::FAILURE;} // should not be called
68  virtual
70  std::vector<const xAOD::IParticle*>&,
71  const met::METAssociator::ConstitHolder&) const override
72  {return StatusCode::FAILURE;} // should not be called
73 
74  private:
75 
78  SG::ReadHandleKey<xAOD::JetContainer> m_jetContKey{this, "InputCollection", "AntiKt4EMPFlowJets", "jets input key"};
79  static void getPFOs(const xAOD::Jet *jet,
80  std::vector<const xAOD::IParticle*> &consts,
81  const met::METAssociator::ConstitHolder& constits,
82  std::map<const xAOD::IParticle*,MissingETBase::Types::constvec_t> &momenta) ;
83  static void getClus(const xAOD::Jet *jet,std::vector<const xAOD::IParticle*> &consts) ;
84  void getOther(const xAOD::Jet *jet,
85  std::vector<const xAOD::IParticle*> &consts,
86  std::set<const xAOD::IParticle*> *newConst) const;
87 
88  Gaudi::Property<double> m_matchRadius{this, "MatchRadius", 0.4, ""};
89  };
90 
91 }
92 
93 #endif //> !METRECONSTRUCTION_METJETASSOCTOOL_H
met::METJetAssocTool::extractPFO
virtual StatusCode extractPFO(const xAOD::IParticle *, std::vector< const xAOD::IParticle * > &, const met::METAssociator::ConstitHolder &, std::map< const xAOD::IParticle *, MissingETBase::Types::constvec_t > &) const override
Definition: METJetAssocTool.h:52
METAssociator.h
met::METJetAssocTool::getOther
void getOther(const xAOD::Jet *jet, std::vector< const xAOD::IParticle * > &consts, std::set< const xAOD::IParticle * > *newConst) const
Definition: METJetAssocTool.cxx:209
IMETAssocToolBase
Definition: IMETAssocToolBase.h:25
met::METJetAssocTool::m_matchRadius
Gaudi::Property< double > m_matchRadius
Definition: METJetAssocTool.h:88
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:40
DataHandle.h
xAOD::MissingETAssociationMap_v1
Definition: MissingETAssociationMap_v1.h:29
met::METJetAssocTool::getClus
static void getClus(const xAOD::Jet *jet, std::vector< const xAOD::IParticle * > &consts)
Definition: METJetAssocTool.cxx:203
met
Definition: IMETSignificance.h:24
jet
Definition: JetCalibTools_PlotJESFactors.cxx:23
met::METJetAssocTool::~METJetAssocTool
~METJetAssocTool()=default
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
met::METJetAssocTool::extractTopoClusters
virtual StatusCode extractTopoClusters(const xAOD::IParticle *, std::vector< const xAOD::IParticle * > &, const met::METAssociator::ConstitHolder &) const override
Definition: METJetAssocTool.h:69
met::METAssociator
Definition: METAssociator.h:55
xAOD::MissingETContainer_v1
Container for xAOD::MissingET_v1 objects.
Definition: MissingETContainer_v1.h:21
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
met::METJetAssocTool::executeTool
virtual StatusCode executeTool(xAOD::MissingETContainer *metCont, xAOD::MissingETAssociationMap *metMap) const override
Definition: METJetAssocTool.cxx:60
xAOD::Jet_v1
Class describing a jet.
Definition: Jet_v1.h:57
met::METJetAssocTool::METJetAssocTool
METJetAssocTool()
Default constructor:
met::METJetAssocTool
Definition: METJetAssocTool.h:26
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition: AsgToolMacros.h:68
met::METJetAssocTool::getPFOs
static void getPFOs(const xAOD::Jet *jet, std::vector< const xAOD::IParticle * > &consts, const met::METAssociator::ConstitHolder &constits, std::map< const xAOD::IParticle *, MissingETBase::Types::constvec_t > &momenta)
Definition: METJetAssocTool.cxx:143
met::METJetAssocTool::extractFE
virtual StatusCode extractFE(const xAOD::IParticle *, std::vector< const xAOD::IParticle * > &, const met::METAssociator::ConstitHolder &, std::map< const xAOD::IParticle *, MissingETBase::Types::constvec_t > &) const override
Definition: METJetAssocTool.h:58
met::METJetAssocTool::m_jetContKey
SG::ReadHandleKey< xAOD::JetContainer > m_jetContKey
Definition: METJetAssocTool.h:78
met::METJetAssocTool::extractTracks
virtual StatusCode extractTracks(const xAOD::IParticle *, std::vector< const xAOD::IParticle * > &, const met::METAssociator::ConstitHolder &) const override
Definition: METJetAssocTool.h:64
met::METAssociator::ConstitHolder
Definition: METAssociator.h:62
met::METJetAssocTool::initialize
virtual StatusCode initialize() override
Dummy implementation of the initialisation function.
Definition: METJetAssocTool.cxx:49