|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef AFP_VERTEXRECO_AFP_TIMERECOTOOL_H
6 #define AFP_VERTEXRECO_AFP_TIMERECOTOOL_H
12 #include "GaudiKernel/ServiceHandle.h"
13 #include "Gaudi/Property.h"
30 #include "nlohmann/json.hpp"
54 StatusCode doVertexReco(std::unique_ptr<xAOD::AFPVertexContainer>& outputContainer,
const EventContext& ctx)
const override;
75 ToolHandle<AFP::IToFVtxParamDBTool>
m_tofVtxParamDBTool {
this,
"tofVtxParamDBTool",
"AFP__ToFLocParamDBTool",
"Tool to access DB to get the vertex ToF parameters"};
77 Gaudi::Property<double>
m_trackDistance{
this,
"TrackDistance", 0.5,
"Maximum distance between ToF train edge and proton"};
83 Gaudi::Property<std::string>
m_vertexContainerName{
this,
"verticesContainerName",
"AFPVertexContainer",
"Name of the container in which vertices are saved"};
86 xAOD::AFPVertex *
createVertex (
const double position,
const double distA,
const double distC, std::unique_ptr<xAOD::AFPVertexContainer>& outputContainer)
const;
Property holding a SG store/key/clid from which a ReadHandle is made.
AFP_VertexRecoBasic(const std::string &type, const std::string &name, const IInterface *parent)
Default constructor.
Gaudi::Property< double > m_trackDistance
StatusCode doVertexReco(std::unique_ptr< xAOD::AFPVertexContainer > &outputContainer, const EventContext &ctx) const override
Property holding a SG store/key/clid from which a ReadHandle is made.
const std::string & outputContainerName() const override
Class storing information about alignment.
StatusCode configInfo() const
virtual ~AFP_VertexRecoBasic()=default
SG::ReadHandleKey< xAOD::AFPToFTrackContainer > m_tofTrackContainerKey
::StatusCode StatusCode
StatusCode definition for legacy code.
xAOD::AFPVertex * createVertex(const double position, const double distA, const double distC, std::unique_ptr< xAOD::AFPVertexContainer > &outputContainer) const
Creates and sets up a vertex.
virtual StatusCode initialize() override
Loads parameterization.
xAOD::AFPVertex * reco(const double distA, const double distC, const xAOD::AFPToFTrack *toFTrackA, const xAOD::AFPToFTrack *toFTrackC, const xAOD::AFPProton *protonA, const xAOD::AFPProton *protonC, const AFP::ToFVtxParamData &TVP_A, const AFP::ToFVtxParamData &TVP_C, std::unique_ptr< xAOD::AFPVertexContainer > &outputContainer) const
Reconstructs single vertex from pair of ToFTracks and a pair of protons.
ToolHandle< AFP::IToFVtxParamDBTool > m_tofVtxParamDBTool
@ brief Tool for accessing DB to get the vertex ToF parameters
Class representing a proton reconstructed in AFP.
Tool for vertex reconstruction by basic algorithm.
void linkProtonsToVertex(const xAOD::AFPProton *proton, SG::ReadHandle< xAOD::AFPProtonContainer > &protonContainer, xAOD::AFPVertex *vertex) const
Links proton pair to reconstructed vertex.
SG::ReadHandleKey< xAOD::AFPProtonContainer > m_protonContainerKey
Class representing a vertex reconstructed in AFP.
Gaudi::Property< std::string > m_vertexContainerName
void linkToFTracksToVertex(const xAOD::AFPToFTrack *toFTrack, SG::ReadHandle< xAOD::AFPToFTrackContainer > &tofTrackContainer, xAOD::AFPVertex *vertex) const
Links ToF track pair to reconstructed vertex.
Class representing a track reconstructed in AFP ToF.