ATLAS Offline Software
Loading...
Searching...
No Matches
JetFitterTrackSelectorTool.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 * This tooltakes the input track collection of a jet candidate
7 * It runs a filter on track quality
8 * And separates tracks into primary vertex and secondary vertex tracks
9 * By computing their compatibility with the primary vertex
10 */
11
12#ifndef JETFITTER_TRACKSELECTOR_TOOL_H
13#define JETFITTER_TRACKSELECTOR_TOOL_H 1
14
16#include "GaudiKernel/ToolHandle.h"
17
19#include "xAODTracking/Vertex.h"
20
25
28
29#include "VxVertex/RecVertex.h"
30
31namespace InDet {
32
33 static const InterfaceID IID_JetFitterTrackSelectorTool("JetFitterTrackSelectorTool", 1, 0);
34
36 public:
37
38 static const InterfaceID& interfaceID() {
40 }
41
42 virtual StatusCode initialize() override;
43
44 JetFitterTrackSelectorTool(const std::string &t, const std::string &n, const IInterface *p);
46
47 /*
48 * method for performing track selection
49 */
50 const Trk::SelectedTracksInJet* doTrackSelection(const xAOD::Vertex &primaryVertex,
51 const TLorentzVector &jetMomentum,
52 const std::vector<const xAOD::IParticle *> &inputTracks) const;
53
57 std::vector<std::string> trackDecorationNames() const;
58
59
60 private:
62 std::string decorationName() const;
63
64 int computeTrackCompatibility( const xAOD::Vertex &primaryVertex,
65 const TLorentzVector &jetMomentum,
66 const xAOD::TrackParticle &trk_iter ) const;
67
68 private:
69 ToolHandle< Trk::IExtrapolator > m_extrapolator {this,"Extrapolator","Trk::Extrapolator/InDetExtrapolator",""};
70 ToolHandle< InDet::InDetJetFitterUtils > m_jetFitterUtils {this,"InDetJetFitterUtils","InDet::InDetJetFitterUtils/InDetJetFitterUtils",""};
71 ToolHandle< Trk::ITrackSelectorTool > m_trkFilter {this,"TrackSelector","InDet::InDetDetailedTrackSelectorTool",""};
72
73 private:
74 Gaudi::Property< bool > m_revertFromPositiveToNegativeTags {this,"revertFromPositiveToNegativeTags",false,""};
75 Gaudi::Property< double > m_cutCompatibilityPrimaryVertexForPositiveLifetimeTracks {this,"cutCompPrimaryVertexForPosLifetimeTracks",1e-1,""};
76 Gaudi::Property< double > m_cutCompatibilityPrimaryVertexForNegativeLifetimeTracks {this,"cutCompPrimaryVertexForNegLifetimeTracks",5e-2,""};
77 };
78
79}
80
81#endif
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Gaudi::Property< double > m_cutCompatibilityPrimaryVertexForPositiveLifetimeTracks
std::vector< std::string > trackDecorationNames() const
Return a list of the names of track decorations created by this tool, in order to allow them to be lo...
JetFitterTrackSelectorTool(const std::string &t, const std::string &n, const IInterface *p)
std::string decorationName() const
Return the name of the decoration we produce.
ToolHandle< Trk::ITrackSelectorTool > m_trkFilter
Gaudi::Property< bool > m_revertFromPositiveToNegativeTags
Gaudi::Property< double > m_cutCompatibilityPrimaryVertexForNegativeLifetimeTracks
int computeTrackCompatibility(const xAOD::Vertex &primaryVertex, const TLorentzVector &jetMomentum, const xAOD::TrackParticle &trk_iter) const
const Trk::SelectedTracksInJet * doTrackSelection(const xAOD::Vertex &primaryVertex, const TLorentzVector &jetMomentum, const std::vector< const xAOD::IParticle * > &inputTracks) const
ToolHandle< InDet::InDetJetFitterUtils > m_jetFitterUtils
ToolHandle< Trk::IExtrapolator > m_extrapolator
Primary Vertex Finder.
static const InterfaceID IID_JetFitterTrackSelectorTool("JetFitterTrackSelectorTool", 1, 0)
TrackParticle_v1 TrackParticle
Reference the current persistent version:
Vertex_v1 Vertex
Define the latest version of the vertex class.