ATLAS Offline Software
InDetConversionFinderTools.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 /***************************************************************************
6  InDetConversionFinderTools.h - Description
7  -------------------
8  begin : 28-08-2006
9  authors : Tatjana Lenz
10  email : tatjana.lenz@cern.ch
11  changes :
12 ***************************************************************************/
13 #ifndef INDETCONVERSIONFINDERTOOLS_INDETCONVERSIONFINDERTOOLS_H
14 #define INDETCONVERSIONFINDERTOOLS_INDETCONVERSIONFINDERTOOLS_H
15 
17 
19 #include "GaudiKernel/ToolHandle.h"
20 
21 /* Tools*/
29 
31 /*xAOD collections */
35 
36 #include <vector>
37 
46 namespace InDet {
47 
49  : public AthAlgTool
50  , virtual public IVertexFinder
51 {
52 public:
53  InDetConversionFinderTools(const std::string& t,
54  const std::string& n,
55  const IInterface* p);
57 
58  virtual StatusCode initialize() override;
59  virtual StatusCode finalize() override;
60 
61  BooleanProperty m_removeTrt
62  {this, "RemoveTrtTracks", false, "Remove standalone TRT tracks"};
63  BooleanProperty m_isConversion
64  {this, "IsConversion", true, "Conversions or V0s"};
65  BooleanProperty m_decorateVertices
66  {this, "DecorateVertices", true, "Decorate vertices with values used for vertex selection"};
67 
70  virtual std::pair<xAOD::VertexContainer*, xAOD::VertexAuxContainer*>
71  findVertex(const EventContext& ctx,
72  const TrackCollection* trk_coll) const override;
73 
75  virtual std::pair<xAOD::VertexContainer*, xAOD::VertexAuxContainer*>
76  findVertex(const EventContext& ctx,
77  const xAOD::TrackParticleContainer* trk_coll) const override;
78 
79 protected:
80 
83  ToolHandle<Trk::IVertexFitter> m_iVertexFitter{ this,
84  "VertexFitterTool",
85  "Trk::TrkVKalVrtFitter",
86  "Vertex fitter Tool" };
88  ToolHandle<InDet::TrackPairsSelector> m_trackPairsSelector{
89  this,
90  "TrackPairsSelector",
91  "InDet::TrackPairsSelector",
92  "Track Pair Selector Tool"
93  };
95  ToolHandle<InDet::VertexPointEstimator> m_vertexEstimator{
96  this,
97  "VertexPointEstimator",
98  "InDet::VertexPointEstimator",
99  "Vertex point estimator"
100  };
102  ToolHandle<InDet::ConversionPostSelector> m_postSelector{
103  this,
104  "PostSelector",
105  "InDet::ConversionPostSelector",
106  "Tool for post selection of conversion candidates"
107  };
109  ToolHandle<InDet::SingleTrackConversionTool> m_singleTrkConvTool{
110  this,
111  "SingleTrackConversionTool",
112  "InDet::SingleTrackConversionTool",
113  "Tool for single track conversions"
114  };
115 
117  ToolHandle<Trk::ITrackSelectorTool> m_trkSelector{
118  this,
119  "TrackSelectorTool",
120  "InDet::TrackSelectorTool",
121  "Tool for track Selection"
122  };
123 
125  const xAOD::TrackParticle* track_pos,
126  const xAOD::TrackParticle* track_neg,
127  std::vector<Amg::Vector3D>& trackList,
128  Amg::Vector3D& initPos,
129  int& flag,
130  std::map<std::string, float>& intersectionDecors) const;
131 
133  DoubleProperty m_mindR{this, "MinDistVtxHit", -350.,
134  "Minimum allowed radial distance beteeen guess vertex and closest 1st hit of participating track"};
135  DoubleProperty m_maxdR{this, "MaxDistVtxHit", 250.,
136  "Maximum allowed radial distance between guess vertex and closest 1st hit of participating track"};
137  DoubleProperty m_MinInitVtxR{this, "MinInitVtxR", 0.,
138  "Minimum allowed radial position for initial guess vertex. Used only in V0 reconstruction."};
139  DoubleProperty m_MinFlightAngle{this, "MinFlightAngle", 0.,
140  "Minimum allowed angular difference between V0 and children direction. Used only in V0 reconstruction."};
141 };
142 
143 }
144 
145 #endif // INDETCONVERSIONFINDERTOOLS_INDETCONVERSIONFINDERTOOL_H
InDet::InDetConversionFinderTools
Definition: InDetConversionFinderTools.h:51
InDet::InDetConversionFinderTools::passPreSelection
bool passPreSelection(TrackPairsSelector::Cache &cache, const xAOD::TrackParticle *track_pos, const xAOD::TrackParticle *track_neg, std::vector< Amg::Vector3D > &trackList, Amg::Vector3D &initPos, int &flag, std::map< std::string, float > &intersectionDecors) const
Definition: InDetConversionFinderTools.cxx:348
InDet::IVertexFinder::findVertex
virtual std::pair< xAOD::VertexContainer *, xAOD::VertexAuxContainer * > findVertex(const EventContext &ctx, const TrackCollection *trackTES) const =0
Find vertex from Trk::TrackCollection.
VertexPointEstimator.h
InDet
Primary Vertex Finder.
Definition: VP1ErrorUtils.h:36
ConversionFinderUtils.h
InDet::InDetConversionFinderTools::m_maxdR
DoubleProperty m_maxdR
Definition: InDetConversionFinderTools.h:135
InDet::InDetConversionFinderTools::m_postSelector
ToolHandle< InDet::ConversionPostSelector > m_postSelector
Conversion post-fit selector tool.
Definition: InDetConversionFinderTools.h:102
TrackPairsSelector.h
InDet::InDetConversionFinderTools::m_iVertexFitter
ToolHandle< Trk::IVertexFitter > m_iVertexFitter
Vertex fitter interface.
Definition: InDetConversionFinderTools.h:83
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
InDet::IVertexFinder
Definition: IVertexFinder.h:70
IVertexFinder.h
InDet::InDetConversionFinderTools::m_vertexEstimator
ToolHandle< InDet::VertexPointEstimator > m_vertexEstimator
Initial conversion vertex estimator tool.
Definition: InDetConversionFinderTools.h:95
InDet::InDetConversionFinderTools::m_mindR
DoubleProperty m_mindR
Cuts.
Definition: InDetConversionFinderTools.h:133
InDet::InDetConversionFinderTools::m_trackPairsSelector
ToolHandle< InDet::TrackPairsSelector > m_trackPairsSelector
Initial conversion vertex estimator tool.
Definition: InDetConversionFinderTools.h:88
InDet::InDetConversionFinderTools::finalize
virtual StatusCode finalize() override
Definition: InDetConversionFinderTools.cxx:95
InDet::InDetConversionFinderTools::m_MinInitVtxR
DoubleProperty m_MinInitVtxR
Definition: InDetConversionFinderTools.h:137
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
beamspotman.n
n
Definition: beamspotman.py:731
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
SingleTrackConversionTool.h
InDet::InDetConversionFinderTools::m_singleTrkConvTool
ToolHandle< InDet::SingleTrackConversionTool > m_singleTrkConvTool
Single track conversion tool.
Definition: InDetConversionFinderTools.h:109
master.flag
bool flag
Definition: master.py:29
AthAlgTool.h
TrackCollection.h
DataVector< Trk::Track >
InDet::InDetConversionFinderTools::m_trkSelector
ToolHandle< Trk::ITrackSelectorTool > m_trkSelector
Track Selector Tool.
Definition: InDetConversionFinderTools.h:117
InDet::InDetConversionFinderTools::~InDetConversionFinderTools
~InDetConversionFinderTools()
InDet::InDetConversionFinderTools::m_isConversion
BooleanProperty m_isConversion
Definition: InDetConversionFinderTools.h:64
InDet::InDetConversionFinderTools::initialize
virtual StatusCode initialize() override
Definition: InDetConversionFinderTools.cxx:42
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
IVertexFitter.h
InDet::TrackPairsSelector::Cache
Definition: TrackPairsSelector.h:31
TrackParticle.h
VertexContainer.h
InDet::InDetConversionFinderTools::m_decorateVertices
BooleanProperty m_decorateVertices
Definition: InDetConversionFinderTools.h:66
InDet::InDetConversionFinderTools::m_MinFlightAngle
DoubleProperty m_MinFlightAngle
Definition: InDetConversionFinderTools.h:139
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition: TrackParticle_v1.h:43
AthAlgTool
Definition: AthAlgTool.h:26
ConversionPostSelector.h
ITrackSelectorTool.h
InDet::InDetConversionFinderTools::m_removeTrt
BooleanProperty m_removeTrt
Definition: InDetConversionFinderTools.h:62
InDet::InDetConversionFinderTools::findVertex
virtual std::pair< xAOD::VertexContainer *, xAOD::VertexAuxContainer * > findVertex(const EventContext &ctx, const TrackCollection *trk_coll) const override
< Conversion candidate reconstruction for Trk::Tracks.
Definition: InDetConversionFinderTools.cxx:102
InDet::InDetConversionFinderTools::InDetConversionFinderTools
InDetConversionFinderTools(const std::string &t, const std::string &n, const IInterface *p)
Definition: InDetConversionFinderTools.cxx:32
TrackParticleContainer.h