ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigAlgorithms
TrigMuonEF
src
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
8
#include "
TrigMuonToolInterfaces/IMuonEFTrackIsolationTool.h
"
9
#include "
AthenaBaseComps/AthAlgTool.h
"
10
#include "
xAODMuon/Muon.h
"
11
#include "
xAODTracking/TrackParticleContainer.h
"
12
#include "
InDetTrackSelectionTool/IInDetTrackSelectionTool.h
"
13
22
class
TrigMuonEFTrackIsolationTool
:
public
AthAlgTool
,
virtual
public
IMuonEFTrackIsolationTool
{
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
44
bool
m_removeSelf
;
45
47
bool
m_useAnnulus
;
48
50
double
m_annulusSize
;
51
53
bool
m_useVarIso
;
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
AthAlgTool.h
Muon.h
TrackParticleContainer.h
IInDetTrackSelectionTool.h
IMuonEFTrackIsolationTool.h
AthAlgTool::AthAlgTool
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Definition
AthAlgTool.cxx:16
IMuonEFTrackIsolationTool
Interface for EF muon track isolation tools.
Definition
IMuonEFTrackIsolationTool.h:29
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:110
TrigMuonEFTrackIsolationTool::m_trkSelTool
ToolHandle< InDet::IInDetTrackSelectionTool > m_trkSelTool
Track selection tool.
Definition
TrigMuonEFTrackIsolationTool.h:56
TrigMuonEFTrackIsolationTool::m_annulusSize
double m_annulusSize
size of the annulus within which we ignore tracks
Definition
TrigMuonEFTrackIsolationTool.h:50
TrigMuonEFTrackIsolationTool::m_debug
bool m_debug
Definition
TrigMuonEFTrackIsolationTool.h:38
TrigMuonEFTrackIsolationTool::m_useAnnulus
bool m_useAnnulus
flag to determine if we should use an inner annulus
Definition
TrigMuonEFTrackIsolationTool.h:47
TrigMuonEFTrackIsolationTool::initialize
virtual StatusCode initialize() override
initialize the tool
Definition
TrigMuonEFTrackIsolationTool.cxx:243
TrigMuonEFTrackIsolationTool::TrigMuonEFTrackIsolationTool
TrigMuonEFTrackIsolationTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor.
Definition
TrigMuonEFTrackIsolationTool.cxx:16
TrigMuonEFTrackIsolationTool::m_removeSelf
bool m_removeSelf
flag to determine whether to remove pT of muon track from the calculation
Definition
TrigMuonEFTrackIsolationTool.h:44
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
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
TrigMuonEFTrackIsolationTool::m_useVarIso
bool m_useVarIso
flag to determine if we want to use offline isolation variables
Definition
TrigMuonEFTrackIsolationTool.h:53
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition
Event/xAOD/xAODBase/xAODBase/IParticle.h:41
Trk::Perigee
ParametersT< TrackParametersDim, Charged, PerigeeSurface > Perigee
Definition
Tracking/TrkEvent/TrkParameters/TrkParameters/TrackParameters.h:33
xAOD::TrackParticle
TrackParticle_v1 TrackParticle
Reference the current persistent version:
Definition
Event/xAOD/xAODTracking/xAODTracking/TrackParticle.h:13
xAOD::TrackParticleContainer
TrackParticleContainer_v1 TrackParticleContainer
Definition of the current "TrackParticle container version".
Definition
Event/xAOD/xAODTracking/xAODTracking/TrackParticleContainer.h:14
xAOD::Muon
Muon_v1 Muon
Reference the current persistent version:
Definition
Event/xAOD/xAODMuon/xAODMuon/Muon.h:13
type
Generated on
for ATLAS Offline Software by
1.17.0