ATLAS Offline Software
PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/TopObjectSelectionTools/Muon.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3  */
4 
5 #ifndef TOPOBJECTSELECTIONTOOLSMUON_H_
6 #define TOPOBJECTSELECTIONTOOLSMUON_H_
7 
10 
11 #include "AsgTools/ToolHandle.h"
13 
14 namespace top {
18  class Muon: public MuonSelectionBase {
19  public:
30  Muon(const double ptcut,
31  IsolationBase* isolation);
32 
33  Muon(const double ptcut,
34  IsolationBase* isolation,
35  const bool applyTTVACut);
36 
37  Muon(const double ptcut,
38  IsolationBase* isolation,
39  const double d0SigCut,
40  const double delta_z0,
41  const bool applyTTVACut = true);
42 
43  // Does nothing.
44  virtual ~Muon() {}
45 
52  virtual bool passSelection(const xAOD::Muon& mu) const override;
53 
60  virtual bool passSelectionLoose(const xAOD::Muon& mu) const override;
61 
68  virtual bool passTTVACuts(const xAOD::Muon& mu) const;
69 
70  // Print the cuts to the ostream.
71  virtual void print(std::ostream& os) const override;
72  protected:
73  // Lower pT threshold to apply to object selection.
74  double m_ptcut;
75 
76  // TTVA cuts
77  double m_d0SigCut;
78  double m_delta_z0;
79 
80  // Proper tool to select muons.
81  ToolHandle<CP::IMuonSelectionTool> m_muonSelectionTool;
82  ToolHandle<CP::IMuonSelectionTool> m_muonSelectionToolLoose;
83 
84  // Isolation tool, can be nullptr meaning "no isolation requirement"
85  std::unique_ptr<top::IsolationBase> m_isolation;
86 
87  // decide if TTVA cut should be applied at all
89  };
90 } // namespace top
91 
92 #endif // TOPOBJECTSELECTIONTOOLSMUON_H_
top
TopConfig A simple configuration that is NOT a singleton.
Definition: AnalysisTrackingHelper.cxx:58
top::Muon::passTTVACuts
virtual bool passTTVACuts(const xAOD::Muon &mu) const
The track-to-vertex association (TTVA) cuts.
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/Root/Muon.cxx:65
top::Muon::m_delta_z0
double m_delta_z0
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/TopObjectSelectionTools/Muon.h:78
top::Muon::m_d0SigCut
double m_d0SigCut
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/TopObjectSelectionTools/Muon.h:77
top::Muon::passSelectionLoose
virtual bool passSelectionLoose(const xAOD::Muon &mu) const override
The loose selection needed by some background estimates.
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/Root/Muon.cxx:49
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:49
Pythia8_A14_NNPDF23LO_forMGHT_EvtGen.ptcut
float ptcut
Definition: Pythia8_A14_NNPDF23LO_forMGHT_EvtGen.py:9
xAOD::Muon_v1
Class describing a Muon.
Definition: Muon_v1.h:38
IMuonSelectionTool.h
top::Muon::m_isolation
std::unique_ptr< top::IsolationBase > m_isolation
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/TopObjectSelectionTools/Muon.h:85
IsolationTools.h
top::Muon::passSelection
virtual bool passSelection(const xAOD::Muon &mu) const override
Implements the logic to select good muons.
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/Root/Muon.cxx:33
top::Muon::m_muonSelectionTool
ToolHandle< CP::IMuonSelectionTool > m_muonSelectionTool
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/TopObjectSelectionTools/Muon.h:81
top::MuonSelectionBase
Definition: MuonSelectionBase.h:11
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
top::Muon::m_muonSelectionToolLoose
ToolHandle< CP::IMuonSelectionTool > m_muonSelectionToolLoose
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/TopObjectSelectionTools/Muon.h:82
top::Muon::Muon
Muon(const double ptcut, IsolationBase *isolation)
Construct the tool to select good muons.
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/Root/Muon.cxx:30
top::Muon::m_applyTTVACut
bool m_applyTTVACut
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/TopObjectSelectionTools/Muon.h:88
MuonSelectionBase.h
top::Muon::~Muon
virtual ~Muon()
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/TopObjectSelectionTools/Muon.h:44
top::IsolationBase
A common base for implementing isolation cuts.
Definition: IsolationTools.h:16
top::Muon::print
virtual void print(std::ostream &os) const override
Because everybody likes to know what object definitions they ran with.
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/Root/Muon.cxx:89
top::Muon::m_ptcut
double m_ptcut
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/TopObjectSelectionTools/Muon.h:74
ToolHandle.h
CaloNoise_fillDB.mu
mu
Definition: CaloNoise_fillDB.py:53