ATLAS Offline Software
Loading...
Searching...
No Matches
TauVertexFinder.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#ifndef TAURECTOOLS_TAUVERTEXFINDER_H
6#define TAURECTOOLS_TAUVERTEXFINDER_H
7
9#include "GaudiKernel/ToolHandle.h"
15
17
28
30public:
31 //-------------------------------------------------------------
33 //-------------------------------------------------------------
34 TauVertexFinder(const std::string& name);
37
38 //-------------------------------------------------------------
40 //-------------------------------------------------------------
41 StatusCode initialize() override;
42 StatusCode executeVertexFinder(xAOD::TauJet& pTau,
43 const xAOD::VertexContainer* vertexContainer = nullptr) const override;
44
45private:
47 getPV_TJVA(const xAOD::TauJet& tauJet,
48 const xAOD::VertexContainer& vertices,
49 float& maxJVF) const;
50
51 std::pair<float, float> getVertexScores(const std::vector<const xAOD::TrackParticle*>& tracks, float vx_z) const;
52
53private:
54
55 Gaudi::Property<bool> m_useTJVA {this, "UseTJVA", true};
56 Gaudi::Property<double> m_dDeltaRMax{ this, "DeltaRMax", 0.2, "Maximum DeltaR to consider tracks for TJVA"};
57 Gaudi::Property<std::string> m_assocTracksName {this, "AssociatedTracks", ""};
58
59 ToolHandle< InDet::IInDetTrackSelectionTool > m_TrackSelectionToolForTJVA {this, "InDetTrackSelectionToolForTJVA", ""};
60 ToolHandle<CP::ITrackVertexAssociationTool> m_trkVertexAssocTool{this, "TVATool", "Tau track-vertex association tool"};
61
62 SG::ReadHandleKey<xAOD::VertexContainer> m_vertexInputContainer{this,"Key_vertexInputContainer", "PrimaryVertices", "input vertex container key"};
63 SG::ReadHandleKey<xAOD::TrackParticleContainer> m_trackPartInputContainer{this,"Key_trackPartInputContainer", "InDetTrackParticles", "input track particle container key"};
64
65};
66
67#endif // TAURECTOOLS_TAUVERTEXFINDER_H
Handle class for reading from StoreGate.
The base class for all tau tools.
Property holding a SG store/key/clid from which a ReadHandle is made.
TauRecToolBase(const std::string &name)
ElementLink< xAOD::VertexContainer > getPV_TJVA(const xAOD::TauJet &tauJet, const xAOD::VertexContainer &vertices, float &maxJVF) const
TauVertexFinder(const std::string &name)
Constructor and Destructor.
StatusCode initialize() override
Algorithm functions.
std::pair< float, float > getVertexScores(const std::vector< const xAOD::TrackParticle * > &tracks, float vx_z) const
ToolHandle< CP::ITrackVertexAssociationTool > m_trkVertexAssocTool
Gaudi::Property< std::string > m_assocTracksName
Gaudi::Property< double > m_dDeltaRMax
Gaudi::Property< bool > m_useTJVA
ToolHandle< InDet::IInDetTrackSelectionTool > m_TrackSelectionToolForTJVA
SG::ReadHandleKey< xAOD::VertexContainer > m_vertexInputContainer
ASG_TOOL_CLASS2(TauVertexFinder, TauRecToolBase, ITauToolBase)
StatusCode executeVertexFinder(xAOD::TauJet &pTau, const xAOD::VertexContainer *vertexContainer=nullptr) const override
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_trackPartInputContainer
VertexContainer_v1 VertexContainer
Definition of the current "Vertex container version".
TauJet_v3 TauJet
Definition of the current "tau version".