ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetRecTools
InDetSecVxFinderTool
InDetSecVxFinderTool
InDetImprovedJetFitterVxFinder.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
6
/***************************************************************************
7
InDetImprovedJetFitterVxFinder.cxx - Description
8
-------------------
9
10
begin : January 2008!
11
authors: Giacinto Piacquadio (University of Freiburg),
12
Christian Weiser (University of Freiburg)
13
email : nicola.giacinto.piacquadio@cern.ch,
14
christian.weiser@cern.ch
15
changes: second version in January 2008!
16
17
2008 (c) Atlas Detector Software
18
19
This class implements the finder functionality for using
20
the JetFitter algorithm. It uses as input a ParticleJet and
21
then gives the VxJetCandidate out after having performed the
22
fit.
23
24
SECOND VERSION: many improvements, detailed reconstruction of conversions,
25
KS and Lambdas. KS are even used in the multi vertex fit in JetFitter in a
26
region of space of enough purity to allow it.
27
28
***************************************************************************/
29
30
#ifndef TrkJetVxFitter_InDetImprovedJetFitterVxFinder_H
31
#define TrkJetVxFitter_InDetImprovedJetFitterVxFinder_H
32
33
#include "
InDetRecToolInterfaces/ISecVertexInJetFinder.h
"
34
#include "
AthenaBaseComps/AthAlgTool.h
"
35
#include "GaudiKernel/ToolHandle.h"
36
37
#include "
TrkParticleBase/LinkToTrackParticleBase.h
"
38
#include "
TrkTrackLink/ITrackLink.h
"
39
40
namespace
Trk
{
41
class
TrackParticleBase
;
42
class
VxSecVertexInfo
;
43
class
VxJetCandidate
;
44
class
RecVertex
;
45
}
46
47
// Hackathon: add any new package here
48
namespace
InDet
{
49
class
JetFitterTrackSelectorTool
;
50
class
JetFitterTwoTrackVtxFinderTool
;
51
class
JetFitterV0FinderTool
;
52
class
JetFitterMultiStageFit
;
53
}
54
55
namespace
xAOD
56
{
57
class
IParticle
;
58
}
59
60
namespace
InDet
{
61
62
class
InDetImprovedJetFitterVxFinder
:
public
AthAlgTool
,
public
ISecVertexInJetFinder
63
{
64
65
public
:
66
67
68
virtual
StatusCode
initialize
()
override
;
69
70
InDetImprovedJetFitterVxFinder
(
const
std::string& t,
const
std::string& n,
const
IInterface* p);
71
72
~InDetImprovedJetFitterVxFinder
();
73
74
75
virtual
Trk::VxSecVertexInfo
*
findSecVertex
(
const
EventContext& ctx,
76
const
xAOD::Vertex
& primaryVertex,
77
const
TLorentzVector & jetMomentum,
78
const
std::vector<const xAOD::IParticle*> & inputTracks)
const override
;
79
83
virtual
std::vector<std::string>
trackDecorationNames
()
const override
;
84
85
86
private
:
87
88
void
sortTrackCollectionByPt
( std::vector< const Trk::ITrackLink* >& )
const
;
89
90
static
Trk::VxJetCandidate
*
findSecVertex
(
const
Trk::RecVertex
& primaryVertex,
91
const
TLorentzVector & jetMomentum,
92
const
std::vector<const Trk::ITrackLink*> & firstInputTracks,
93
const
std::vector<const Trk::ITrackLink*> & secondInputTracks,
94
const
Amg::Vector3D
& vtxSeedDirection) ;
95
96
97
void
doTheFit
(
Trk::VxJetCandidate
* myJetCandidate,
98
bool
performClustering=
true
)
const
;
99
100
private
:
101
ToolHandle< JetFitterTrackSelectorTool >
m_theTrackSelector
{
this
,
"JetFitterTrackSelectorTool"
,
"JetFitterTrackSelectorTool/JetFitterTrackSelectorTool"
,
""
};
//Hackathon addition
102
ToolHandle< JetFitterTwoTrackVtxFinderTool >
m_theTwoTrackVtxFinderTool
{
this
,
"JetFitterTwoTrackVtxFinderTool"
,
"JetFitterV0FinderTool/JetFitterTwoTrackVtxFinderTool"
,
""
};
//Hackathon addition
103
ToolHandle< JetFitterV0FinderTool >
m_theV0FinderTool
{
this
,
"JetFitterV0FinderTool"
,
"JetFitterV0FinderTool/JetFitterV0FinderTool"
,
""
};
//Hackathon addition
104
ToolHandle< JetFitterMultiStageFit >
m_multiStageFitter
{
this
,
"JetFitterMultiStageFit"
,
"JetFitterMultiStageFit/JetFitterMultiStageFit"
,
""
};
//Hackathon addition
105
106
};
//end class declaration
107
108
}
//end namespace Rec
109
110
111
#endif
112
AthAlgTool.h
ISecVertexInJetFinder.h
ITrackLink.h
LinkToTrackParticleBase.h
AthAlgTool::AthAlgTool
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Definition
AthAlgTool.cxx:16
InDet::ISecVertexInJetFinder
Definition
ISecVertexInJetFinder.h:55
InDet::InDetImprovedJetFitterVxFinder::InDetImprovedJetFitterVxFinder
InDetImprovedJetFitterVxFinder(const std::string &t, const std::string &n, const IInterface *p)
Definition
InDetImprovedJetFitterVxFinder.cxx:85
InDet::InDetImprovedJetFitterVxFinder::trackDecorationNames
virtual std::vector< std::string > trackDecorationNames() const override
Return a list of the names of track decorations created by this tool, in order to allow them to be lo...
Definition
InDetImprovedJetFitterVxFinder.cxx:255
InDet::InDetImprovedJetFitterVxFinder::m_theTrackSelector
ToolHandle< JetFitterTrackSelectorTool > m_theTrackSelector
Definition
InDetImprovedJetFitterVxFinder.h:101
InDet::InDetImprovedJetFitterVxFinder::sortTrackCollectionByPt
void sortTrackCollectionByPt(std::vector< const Trk::ITrackLink * > &) const
Definition
InDetImprovedJetFitterVxFinder.cxx:228
InDet::InDetImprovedJetFitterVxFinder::~InDetImprovedJetFitterVxFinder
~InDetImprovedJetFitterVxFinder()
InDet::InDetImprovedJetFitterVxFinder::m_multiStageFitter
ToolHandle< JetFitterMultiStageFit > m_multiStageFitter
Definition
InDetImprovedJetFitterVxFinder.h:104
InDet::InDetImprovedJetFitterVxFinder::initialize
virtual StatusCode initialize() override
Definition
InDetImprovedJetFitterVxFinder.cxx:96
InDet::InDetImprovedJetFitterVxFinder::m_theTwoTrackVtxFinderTool
ToolHandle< JetFitterTwoTrackVtxFinderTool > m_theTwoTrackVtxFinderTool
Definition
InDetImprovedJetFitterVxFinder.h:102
InDet::InDetImprovedJetFitterVxFinder::findSecVertex
virtual Trk::VxSecVertexInfo * findSecVertex(const EventContext &ctx, const xAOD::Vertex &primaryVertex, const TLorentzVector &jetMomentum, const std::vector< const xAOD::IParticle * > &inputTracks) const override
Definition
InDetImprovedJetFitterVxFinder.cxx:122
InDet::InDetImprovedJetFitterVxFinder::m_theV0FinderTool
ToolHandle< JetFitterV0FinderTool > m_theV0FinderTool
Definition
InDetImprovedJetFitterVxFinder.h:103
InDet::InDetImprovedJetFitterVxFinder::doTheFit
void doTheFit(Trk::VxJetCandidate *myJetCandidate, bool performClustering=true) const
Definition
InDetImprovedJetFitterVxFinder.cxx:223
InDet::JetFitterMultiStageFit
Definition
JetFitterMultiStageFit.h:32
InDet::JetFitterTrackSelectorTool
Definition
JetFitterTrackSelectorTool.h:35
InDet::JetFitterTwoTrackVtxFinderTool
Definition
JetFitterTwoTrackVtxFinderTool.h:19
InDet::JetFitterV0FinderTool
Definition
JetFitterV0FinderTool.h:29
Trk::RecVertex
Trk::RecVertex inherits from Trk::Vertex.
Definition
RecVertex.h:44
Trk::TrackParticleBase
Definition
TrackParticleBase.h:41
Trk::VxJetCandidate
Definition
VxJetCandidate.h:51
Trk::VxSecVertexInfo
Definition
VxSecVertexInfo.h:41
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition
Event/xAOD/xAODBase/xAODBase/IParticle.h:41
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition
GeoPrimitives.h:47
InDet
Primary Vertex Finder.
Definition
VP1ErrorUtils.h:36
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition
FakeTrackBuilder.h:9
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition
ICaloAffectedTool.h:24
xAOD::Vertex
Vertex_v1 Vertex
Define the latest version of the vertex class.
Definition
Event/xAOD/xAODTracking/xAODTracking/Vertex.h:16
Generated on
for ATLAS Offline Software by
1.17.0