ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
ElectronPhotonID
ElectronPhotonSelectorTools
ElectronPhotonSelectorTools
EGammaAmbiguityTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
// Dear emacs, this is -*-c++-*-
6
#ifndef __EGammaAmbiguityTool__
7
#define __EGammaAmbiguityTool__
8
15
16
// Atlas includes
17
#include "
AsgTools/AsgTool.h
"
18
#include "
EgammaAnalysisInterfaces/IEGammaAmbiguityTool.h
"
19
#include "
xAODEgamma/EgammaContainerFwd.h
"
20
21
class
EGammaAmbiguityTool
:
public
asg::AsgTool
,
22
virtual
public
IEGammaAmbiguityTool
23
{
24
ASG_TOOL_CLASS2
(
EGammaAmbiguityTool
,
IEGammaAmbiguityTool
,
asg::IAsgTool
)
25
26
public
:
28
EGammaAmbiguityTool
(
const
std::string& myname);
29
30
32
virtual
~EGammaAmbiguityTool
() =
default
;
33
34
35
public
:
37
virtual
StatusCode
initialize
() override final;
38
40
41
virtual
unsigned
int
ambiguityResolve
(
42
const
xAOD
::
CaloCluster
* cluster,
43
const
xAOD
::
Vertex
* vx,
44
const
xAOD
::TrackParticle* tp,
45
xAOD
::AmbiguityTool::AmbiguityType&
type
)
const
override final;
46
51
virtual
unsigned
int
ambiguityResolve
(
52
const
xAOD
::
CaloCluster
* cluster,
53
const
xAOD
::
Vertex
* vx,
54
const
xAOD
::TrackParticle* tp)
const
override final;
55
59
virtual
unsigned
int
ambiguityResolve
(
const
xAOD
::
Egamma
&
egamma
)
const
override final;
60
64
virtual
bool
accept
(
const
xAOD
::
Egamma
&
egamma
)
const
override final;
65
70
bool
hasInnermostPixelHit
(
const
xAOD
::TrackParticle& tp)
const
;
71
74
size_t
nTrkWithInnermostPixelHits
(
const
xAOD
::
Vertex
& vx)
const
;
75
77
bool
isInVertex
(
const
xAOD
::TrackParticle&,
const
xAOD
::
Vertex
&)
const
;
78
80
bool
passDeltaR_innermost
(
const
xAOD
::
Vertex
& vx)
const
;
81
82
private
:
83
85
int
m_MinNoSiHits
;
87
int
m_MinNoPixHits
;
89
float
m_maxEoverPCut
;
91
float
m_minPtCut
;
93
float
m_maxDeltaR_innermost
;
95
bool
m_noVertexNoInnermostAsAmb
;
97
bool
m_acceptAmbiguous
;
98
};
// End: class definition
99
100
#endif
ASG_TOOL_CLASS2
#define ASG_TOOL_CLASS2(CLASSNAME, INT1, INT2)
Definition
AsgToolMacros.h:77
AsgTool.h
EgammaContainerFwd.h
Vertex
boost::graph_traits< boost::adjacency_list< boost::vecS, boost::vecS, boost::bidirectionalS > >::vertex_descriptor Vertex
Definition
FPGATrackSimGNNRoadMakerTool.h:35
IEGammaAmbiguityTool.h
CaloCluster
Principal data class for CaloCell clusters.
Definition
Calorimeter/CaloEvent/CaloEvent/CaloCluster.h:79
EGammaAmbiguityTool::EGammaAmbiguityTool
EGammaAmbiguityTool(const std::string &myname)
Standard constructor.
Definition
EGammaAmbiguityTool.cxx:38
EGammaAmbiguityTool::m_noVertexNoInnermostAsAmb
bool m_noVertexNoInnermostAsAmb
no vertex && no innermost hit -> amb.
Definition
EGammaAmbiguityTool.h:95
EGammaAmbiguityTool::m_MinNoSiHits
int m_MinNoSiHits
Minimum number of silicon hits to be an electron and not a photon.
Definition
EGammaAmbiguityTool.h:85
EGammaAmbiguityTool::m_maxEoverPCut
float m_maxEoverPCut
Maximum EoverP, more that this is ambiguous.
Definition
EGammaAmbiguityTool.h:89
EGammaAmbiguityTool::nTrkWithInnermostPixelHits
size_t nTrkWithInnermostPixelHits(const xAOD::Vertex &vx) const
Return the number of tracks with "innermost pixel hits" (see above) in the given vertex.
Definition
EGammaAmbiguityTool.cxx:331
EGammaAmbiguityTool::~EGammaAmbiguityTool
virtual ~EGammaAmbiguityTool()=default
Standard destructor.
EGammaAmbiguityTool::isInVertex
bool isInVertex(const xAOD::TrackParticle &, const xAOD::Vertex &) const
Return true if the given TrackParticle is part of the vertex.
Definition
EGammaAmbiguityTool.cxx:342
EGammaAmbiguityTool::ambiguityResolve
virtual unsigned int ambiguityResolve(const xAOD::CaloCluster *cluster, const xAOD::Vertex *vx, const xAOD::TrackParticle *tp, xAOD::AmbiguityTool::AmbiguityType &type) const override final
Return value: AuthorElectron, AuthorPhoton, AuthorAmbiguous, AuthorUnknown.
Definition
EGammaAmbiguityTool.cxx:75
EGammaAmbiguityTool::m_maxDeltaR_innermost
float m_maxDeltaR_innermost
Maximum value for Rconv - RfirstHit for Si+Si conversions where both tracks have innermost hits.
Definition
EGammaAmbiguityTool.h:93
EGammaAmbiguityTool::m_minPtCut
float m_minPtCut
Minimum Pt, less that this is ambiguous.
Definition
EGammaAmbiguityTool.h:91
EGammaAmbiguityTool::hasInnermostPixelHit
bool hasInnermostPixelHit(const xAOD::TrackParticle &tp) const
Return true if track has innermost pixel hit or next-to-innermost in case innermost is not expected o...
Definition
EGammaAmbiguityTool.cxx:309
EGammaAmbiguityTool::m_MinNoPixHits
int m_MinNoPixHits
Minimum number of pixel hits to be an electron and not a photon.
Definition
EGammaAmbiguityTool.h:87
EGammaAmbiguityTool::accept
virtual bool accept(const xAOD::Egamma &egamma) const override final
Accept or reject egamma object based on ambiguity resolution (e.g.
Definition
EGammaAmbiguityTool.cxx:289
EGammaAmbiguityTool::initialize
virtual StatusCode initialize() override final
Gaudi Service Interface method implementations.
Definition
EGammaAmbiguityTool.cxx:68
EGammaAmbiguityTool::passDeltaR_innermost
bool passDeltaR_innermost(const xAOD::Vertex &vx) const
Return true if the vertex passes the requirement on Rconv - RfirstHit.
Definition
EGammaAmbiguityTool.cxx:352
EGammaAmbiguityTool::m_acceptAmbiguous
bool m_acceptAmbiguous
@When used as a selector reject/accpet ambiguous cases
Definition
EGammaAmbiguityTool.h:97
IEGammaAmbiguityTool
Definition
IEGammaAmbiguityTool.h:50
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition
AsgTool.h:47
asg::IAsgTool
Base class for the dual-use tool interface classes.
Definition
IAsgTool.h:41
egamma
elec/gamma data class.
Definition
egamma.h:59
const
Egamma
Definition
ClusMomentumPlots.cxx:11
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition
ICaloAffectedTool.h:24
type
private
#define private
Definition
testRead.cxx:27
Generated on
for ATLAS Offline Software by
1.17.0