ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Reconstruction
RecoTools
TrackToVertex
src
TrackToVertex.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// TrackToVertex.h, (c) ATLAS Detector software 2005
8
9
10
#ifndef RECOTOOLS_TRACKTOVERTEX_H
11
#define RECOTOOLS_TRACKTOVERTEX_H
12
13
// Gaudi
14
#include "
AthenaBaseComps/AthAlgTool.h
"
15
#include "GaudiKernel/ToolHandle.h"
16
// Trk
17
#include "
ITrackToVertex/ITrackToVertex.h
"
18
#include "
TrkParameters/TrackParameters.h
"
19
#include "
TrkTrack/Track.h
"
20
#include "
GeoPrimitives/GeoPrimitives.h
"
21
#include "
BeamSpotConditionsData/BeamSpotData.h
"
22
#include "
TrkExInterfaces/IExtrapolator.h
"
23
24
namespace
Trk
{
25
class
StraightLineSurface
;
26
}
27
36
37
namespace
Reco
{
38
39
class
TrackToVertex
:
public
extends <AthAlgTool, ITrackToVertex>
40
{
41
public
:
42
44
TrackToVertex
(
const
std::string&,
const
std::string&,
const
IInterface*);
45
47
virtual
~TrackToVertex
() =
default
;
48
50
virtual
StatusCode
initialize
() override final;
51
53
virtual
std
::
unique_ptr
<
Trk
::StraightLineSurface>
GetBeamLine
(
54
const
InDet
::BeamSpotData*)
55
const
override final;
56
59
virtual
std
::
unique_ptr
<
Trk
::
Perigee
>
perigeeAtVertex
(
60
const
EventContext& ctx,
61
const
xAOD
::TrackParticle& tp,
62
const
Amg
::
Vector3D
& gp)
const
override final;
63
66
virtual
std
::
unique_ptr
<
Trk
::
Perigee
>
perigeeAtVertex
(
67
const
EventContext& ctx,
68
const
xAOD
::TrackParticle& tp)
const
override final;
69
71
virtual
std
::
unique_ptr
<
Trk
::
Perigee
>
perigeeAtVertex
(
72
const
EventContext& ctx,
73
const
Trk
::
Track
& trk,
74
const
Amg
::
Vector3D
& gp)
const
override final;
75
77
virtual
std
::
unique_ptr
<
Trk
::
Perigee
>
perigeeAtBeamline
(
78
const
EventContext& ctx,
79
const
Trk
::
Track
& trk,
80
const
InDet
::BeamSpotData*)
const
override final;
81
84
virtual
std
::
unique_ptr
<
Trk
::TrackParameters>
trackAtBeamline
(
85
const
EventContext& ctx,
86
const
xAOD
::TrackParticle& tp,
87
const
InDet
::BeamSpotData*)
const
override final;
88
91
virtual
std
::
unique_ptr
<
Trk
::TrackParameters>
trackAtBeamline
(
92
const
EventContext& ctx,
93
const
Trk
::
Track
& trk,
94
const
Trk
::StraightLineSurface* beamline)
const
override final;
95
98
virtual
std
::
unique_ptr
<
Trk
::TrackParameters>
trackAtBeamline
(
99
const
EventContext& ctx,
100
const
Trk
::TrackParameters& tpars,
101
const
Trk
::StraightLineSurface* beamline)
const
override final;
102
103
private
:
104
inline
bool
startAtOriginalPerigee
(
const
Trk
::
Track
& track)
const
{
105
return
m_startTRTSAAtPerigee
.value() &&
106
track.info().patternRecognition().test(
107
Trk::TrackInfo::TRTStandalone
) &&
108
track.perigeeParameters();
109
}
110
111
ToolHandle<Trk::IExtrapolator>
m_extrapolator
{
112
this
,
"Extrapolator"
,
113
"Trk::Extrapolator/AtlasExtrapolator"
};
114
115
Gaudi::Property<bool>
m_startTRTSAAtPerigee
{
116
this
,
"StartTRTStandaloneTracksAtOriginalPerigee"
,
false
,
117
"When extrapolating TRT standalone start at their original perigee "
118
"which may have a more realistic covariance"
};
119
120
const
static
Amg::Vector3D
s_origin
;
121
};
122
123
}
// end of namespace
124
125
126
#endif
// RECOTOOLS_TRACKTOVERTEX_H
127
AthAlgTool.h
BeamSpotData.h
OfflineHitType::Perigee
@ Perigee
Definition
FPGATrackSimTypes.h:31
GeoPrimitives.h
IExtrapolator.h
ITrackToVertex.h
Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition
GeoPrimitives.h:47
TrackParameters.h
Track.h
Reco::TrackToVertex::perigeeAtBeamline
virtual std::unique_ptr< Trk::Perigee > perigeeAtBeamline(const EventContext &ctx, const Trk::Track &trk, const InDet::BeamSpotData *) const override final
Interface method for use with Track and the beamline.
Definition
TrackToVertex.cxx:104
Reco::TrackToVertex::startAtOriginalPerigee
bool startAtOriginalPerigee(const Trk::Track &track) const
Definition
TrackToVertex.h:104
Reco::TrackToVertex::initialize
virtual StatusCode initialize() override final
AlgTool initailize method.
Definition
TrackToVertex.cxx:29
Reco::TrackToVertex::perigeeAtVertex
virtual std::unique_ptr< Trk::Perigee > perigeeAtVertex(const EventContext &ctx, const xAOD::TrackParticle &tp, const Amg::Vector3D &gp) const override final
Interface method for use with xAOD::Trackparticle and given vertex position.
Definition
TrackToVertex.cxx:50
Reco::TrackToVertex::GetBeamLine
virtual std::unique_ptr< Trk::StraightLineSurface > GetBeamLine(const InDet::BeamSpotData *) const override final
Use this for MT Coding.
Definition
TrackToVertex.cxx:35
Reco::TrackToVertex::m_startTRTSAAtPerigee
Gaudi::Property< bool > m_startTRTSAAtPerigee
Definition
TrackToVertex.h:115
Reco::TrackToVertex::~TrackToVertex
virtual ~TrackToVertex()=default
Virtual destructor.
Reco::TrackToVertex::TrackToVertex
TrackToVertex(const std::string &, const std::string &, const IInterface *)
AlgTool like constructor.
Definition
TrackToVertex.cxx:23
Reco::TrackToVertex::s_origin
static const Amg::Vector3D s_origin
static origin
Definition
TrackToVertex.h:120
Reco::TrackToVertex::trackAtBeamline
virtual std::unique_ptr< Trk::TrackParameters > trackAtBeamline(const EventContext &ctx, const xAOD::TrackParticle &tp, const InDet::BeamSpotData *) const override final
Interface method for use with TrackParticle and the beamline from the BeamSpotSvc - xAOD.
Definition
TrackToVertex.cxx:173
Reco::TrackToVertex::m_extrapolator
ToolHandle< Trk::IExtrapolator > m_extrapolator
ToolHandle for Extrapolator.
Definition
TrackToVertex.h:111
Trk::StraightLineSurface
Class for a StraightLineSurface in the ATLAS detector to describe dirft tube and straw like detectors...
Definition
StraightLineSurface.h:51
Trk::TrackInfo::TRTStandalone
@ TRTStandalone
TRT Standalone.
Definition
Tracking/TrkEvent/TrkTrack/TrkTrack/TrackInfo.h:162
unique_ptr
STL class.
const
Amg
Definition of ATLAS Math & Geometry primitives (Amg).
Definition
AmgStringHelpers.h:19
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition
GeoPrimitives.h:47
InDet
Primary Vertex Finder.
Definition
VP1ErrorUtils.h:36
Reco
Definition
TrackCounting.h:24
Track
Definition
TriggerChamberClusterOnTrackCreator.h:19
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition
FakeTrackBuilder.h:9
std
STL namespace.
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition
ICaloAffectedTool.h:24
private
#define private
Definition
testRead.cxx:27
Generated on
for ATLAS Offline Software by
1.17.0