ATLAS Offline Software
TrigMuonEFTrackIsolationTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRIGMUONEF_TRIGMUONEFTRACKISOLATIONTOOL_H
6 #define TRIGMUONEF_TRIGMUONEFTRACKISOLATIONTOOL_H
7 
10 #include "xAODMuon/Muon.h"
13 
23 
24  public:
25 
27  TrigMuonEFTrackIsolationTool(const std::string& type, const std::string& name, const IInterface* parent);
28 
30  virtual StatusCode initialize() override;
31 
32  // Do the isolation calculation for an EF muon
33  virtual
34  StatusCode calcTrackIsolation(const xAOD::Muon* efmuon, const xAOD::TrackParticleContainer* idtrks, const std::vector<double>& conesizes, std::vector<double>& results, std::vector<double>* dzvals, std::vector<double>* drvals, std::vector<double>* selfremoval) const override;
35 
36  private:
37 
38  bool m_debug;
39 
41  double m_deltaz_cut;
42 
45 
48 
50  double m_annulusSize;
51 
54 
56  ToolHandle<InDet::IInDetTrackSelectionTool> m_trkSelTool;
57 
58  StatusCode checkIsolation(const xAOD::IParticle* muon, double selfpt, const xAOD::TrackParticle* muon_idtrk, const Trk::Perigee* muidtrk_perigee, const xAOD::TrackParticleContainer* trks, std::vector<double> conesizes, std::vector<double>& results, std::vector<double>* dzvals, std::vector<double>* drvals, std::vector<double>* selfremoval) const;
59 
60 
61 };//class TrigMuonEFTrackIsolationTool
62 
63 
64 #endif //TRIGMUONEF_TRIGMUONEFTRACKISOLATIONTOOL_H
xAOD::muon
@ muon
Definition: TrackingPrimitives.h:195
verify_menu_config.results
results
Definition: verify_menu_config.py:67
Muon.h
TrigMuonEFTrackIsolationTool::m_deltaz_cut
double m_deltaz_cut
cut between z of muon id trk and z of id trks - < 0 means no cut
Definition: TrigMuonEFTrackIsolationTool.h:41
Trk::ParametersT
Dummy class used to allow special convertors to be called for surfaces owned by a detector element.
Definition: EMErrorDetail.h:25
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:41
TrigMuonEFTrackIsolationTool::m_debug
bool m_debug
Definition: TrigMuonEFTrackIsolationTool.h:38
xAOD::Muon_v1
Class describing a Muon.
Definition: Muon_v1.h:38
TrigMuonEFTrackIsolationTool::initialize
virtual StatusCode initialize() override
initialize the tool
Definition: TrigMuonEFTrackIsolationTool.cxx:244
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TrigMuonEFTrackIsolationTool::m_useVarIso
bool m_useVarIso
flag to determine if we want to use offline isolation variables
Definition: TrigMuonEFTrackIsolationTool.h:53
TrigMuonEFTrackIsolationTool::calcTrackIsolation
virtual StatusCode calcTrackIsolation(const xAOD::Muon *efmuon, const xAOD::TrackParticleContainer *idtrks, const std::vector< double > &conesizes, std::vector< double > &results, std::vector< double > *dzvals, std::vector< double > *drvals, std::vector< double > *selfremoval) const override
Sum the track pT in cones around the muon.
Definition: TrigMuonEFTrackIsolationTool.cxx:49
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
TrigMuonEFTrackIsolationTool::m_annulusSize
double m_annulusSize
size of the annulus within which we ignore tracks
Definition: TrigMuonEFTrackIsolationTool.h:50
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
IInDetTrackSelectionTool.h
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
TrigMuonEFTrackIsolationTool::checkIsolation
StatusCode checkIsolation(const xAOD::IParticle *muon, double selfpt, const xAOD::TrackParticle *muon_idtrk, const Trk::Perigee *muidtrk_perigee, const xAOD::TrackParticleContainer *trks, std::vector< double > conesizes, std::vector< double > &results, std::vector< double > *dzvals, std::vector< double > *drvals, std::vector< double > *selfremoval) const
Definition: TrigMuonEFTrackIsolationTool.cxx:111
TrigMuonEFTrackIsolationTool::m_removeSelf
bool m_removeSelf
flag to determine whether to remove pT of muon track from the calculation
Definition: TrigMuonEFTrackIsolationTool.h:44
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition: TrackParticle_v1.h:43
IMuonEFTrackIsolationTool
Interface for EF muon track isolation tools.
Definition: IMuonEFTrackIsolationTool.h:29
AthAlgTool
Definition: AthAlgTool.h:26
TrigMuonEFTrackIsolationTool::TrigMuonEFTrackIsolationTool
TrigMuonEFTrackIsolationTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor.
Definition: TrigMuonEFTrackIsolationTool.cxx:16
TrigMuonEFTrackIsolationTool
EF Track Isolation tool.
Definition: TrigMuonEFTrackIsolationTool.h:22
TrigMuonEFTrackIsolationTool::m_trkSelTool
ToolHandle< InDet::IInDetTrackSelectionTool > m_trkSelTool
Track selection tool.
Definition: TrigMuonEFTrackIsolationTool.h:56
TrigMuonEFTrackIsolationTool::m_useAnnulus
bool m_useAnnulus
flag to determine if we should use an inner annulus
Definition: TrigMuonEFTrackIsolationTool.h:47
TrackParticleContainer.h
IMuonEFTrackIsolationTool.h