ATLAS Offline Software
AltMuJetOverlapTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ASSOCIATIONUTILS_ALTMUJETOVERLAPTOOL_H
6 #define ASSOCIATIONUTILS_ALTMUJETOVERLAPTOOL_H
7 
8 // EDM includes
10 #include "xAODJet/JetContainer.h"
12 
13 // Local includes
18 
19 namespace ORUtils
20 {
21 
45  class AltMuJetOverlapTool : public virtual IOverlapTool,
46  public BaseOverlapTool
47  {
48 
51 
52  public:
53 
55  AltMuJetOverlapTool(const std::string& name);
56 
61  virtual StatusCode
63  const xAOD::IParticleContainer& cont2) const override;
64 
67  virtual StatusCode
68  findOverlaps(const xAOD::MuonContainer& muons,
69  const xAOD::JetContainer& jets) const;
70 
71  protected:
72 
74  virtual StatusCode initializeDerived() override;
75 
78  const xAOD::Vertex* getPrimVtx() const;
79 
83  int getNumTracks(const xAOD::Jet* jet) const;
84 
85  private:
86 
87  //
88  // Configurable properties
89  //
90 
92  std::string m_bJetLabel;
93 
98 
100  float m_innerDR;
109 
110  //
111  // Utilities
112  //
113 
115  std::unique_ptr<BJetHelper> m_bJetHelper;
116 
118  std::unique_ptr<IParticleAssociator> m_dRMatchCone1;
120  std::unique_ptr<IParticleAssociator> m_dRMatchCone2;
121 
122  }; // class AltMuJetOverlapTool
123 
124 } // namespace ORUtils
125 
126 #endif
BJetHelper.h
ORUtils::AltMuJetOverlapTool::getPrimVtx
const xAOD::Vertex * getPrimVtx() const
Retrieve the primary vertex used to count jet tracks.
Definition: AltMuJetOverlapTool.cxx:146
ORUtils::AltMuJetOverlapTool
Implements mu-jet OR optimized for high-pt muons in boosted and highly radiative (jetty) topologies.
Definition: AltMuJetOverlapTool.h:47
ORUtils::AltMuJetOverlapTool::m_useRapidity
bool m_useRapidity
Calculate deltaR using rapidity.
Definition: AltMuJetOverlapTool.h:108
ORUtils::AltMuJetOverlapTool::m_slidingDRC2
double m_slidingDRC2
Outer cone C2, the inverse pt factor in sliding dR.
Definition: AltMuJetOverlapTool.h:104
ORUtils::AltMuJetOverlapTool::m_innerDR
float m_innerDR
Inner dR cone within which jets get removed.
Definition: AltMuJetOverlapTool.h:100
ORUtils::AltMuJetOverlapTool::m_slidingDRC1
double m_slidingDRC1
Outer cone C1, the constant offset in sliding dR.
Definition: AltMuJetOverlapTool.h:102
IObjectAssociator.h
ORUtils
Definition: AltMuJetOverlapTool.h:20
ORUtils::AltMuJetOverlapTool::m_bJetLabel
std::string m_bJetLabel
Input jet decoration which labels a bjet.
Definition: AltMuJetOverlapTool.h:92
ORUtils::AltMuJetOverlapTool::m_bJetHelper
std::unique_ptr< BJetHelper > m_bJetHelper
BJet helper.
Definition: AltMuJetOverlapTool.h:115
jet
Definition: JetCalibTools_PlotJESFactors.cxx:23
ORUtils::BaseOverlapTool
Common base class tool for overlap tools.
Definition: BaseOverlapTool.h:38
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ORUtils::AltMuJetOverlapTool::m_dRMatchCone1
std::unique_ptr< IParticleAssociator > m_dRMatchCone1
Delta-R matcher for the inner cone.
Definition: AltMuJetOverlapTool.h:118
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
ORUtils::AltMuJetOverlapTool::m_slidingDRMaxCone
double m_slidingDRMaxCone
MaxCone, the upper limit of the sliding cone.
Definition: AltMuJetOverlapTool.h:106
ORUtils::AltMuJetOverlapTool::findOverlaps
virtual StatusCode findOverlaps(const xAOD::IParticleContainer &cont1, const xAOD::IParticleContainer &cont2) const override
Identify overlapping muons and jets.
Definition: AltMuJetOverlapTool.cxx:76
ORUtils::AltMuJetOverlapTool::getNumTracks
int getNumTracks(const xAOD::Jet *jet) const
Helper method to get the number of tracks in a jet w.r.t.
Definition: AltMuJetOverlapTool.cxx:165
ORUtils::AltMuJetOverlapTool::m_dRMatchCone2
std::unique_ptr< IParticleAssociator > m_dRMatchCone2
Delta-R matcher for the outer cone.
Definition: AltMuJetOverlapTool.h:120
ORUtils::AltMuJetOverlapTool::m_numJetTrk
int m_numJetTrk
Minimum number of tracks to keep an overlapping jet.
Definition: AltMuJetOverlapTool.h:95
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
MuonContainer.h
xAOD::Jet_v1
Class describing a jet.
Definition: Jet_v1.h:57
VertexContainer.h
xAOD::Vertex_v1
Class describing a Vertex.
Definition: Vertex_v1.h:42
JetContainer.h
ORUtils::AltMuJetOverlapTool::AltMuJetOverlapTool
AltMuJetOverlapTool(const std::string &name)
Create proper constructor for Athena.
Definition: AltMuJetOverlapTool.cxx:28
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition: AsgToolMacros.h:68
ORUtils::AltMuJetOverlapTool::initializeDerived
virtual StatusCode initializeDerived() override
Initialize the tool.
Definition: AltMuJetOverlapTool.cxx:55
defineDB.jets
list jets
Definition: JetTagCalibration/share/defineDB.py:24
BaseOverlapTool.h
ORUtils::AltMuJetOverlapTool::m_muJetPtRatio
float m_muJetPtRatio
Maximum ratio of mu/jet PT to keep an overlapping jet.
Definition: AltMuJetOverlapTool.h:97
ORUtils::IOverlapTool
Interface class for overlap removal tools.
Definition: IOverlapTool.h:27
IOverlapTool.h