15#ifndef INDETV0FINDERTOOL_H
16#define INDETV0FINDERTOOL_H
19#include "GaudiKernel/ToolHandle.h"
100 InDetV0FinderTool(
const std::string& t,
const std::string& n,
const IInterface* p);
118 "key for retrieval of TrackParticles" };
121 this,
"VertexFitterTool",
"Trk::V0VertexFitter"};
123 this,
"VKVertexFitterTool",
"Trk::TrkVKalVrtFitter"};
125 this,
"KshortFitterTool",
"Trk::TrkVKalVrtFitter"};
127 this,
"LambdaFitterTool",
"Trk::TrkVKalVrtFitter"};
129 this,
"LambdabarFitterTool",
"Trk::TrkVKalVrtFitter"};
131 this,
"GammaFitterTool",
"Trk::TrkVKalVrtFitter"};
133 this,
"V0Tools",
"Trk::V0Tools"};
135 this,
"TrackToVertexTool",
"Reco::TrackToVertex"};
137 this,
"TrackSelectorTool",
"InDet::TrackSelectorTool"};
139 this,
"VertexPointEstimator",
"InDet::VertexPointEstimator"};
141 this,
"Extrapolator",
"Trk::Extrapolator"};
147 BooleanProperty
m_pv{
this,
"trkSelPV",
false};
185 StringProperty
m_BDTFile{
this,
"BDTFile",
"XGBModelBetterVertex.root"};
196 void SGError(
const std::string& errService)
const;
212 std::unique_ptr<xAOD::Vertex>
massFit(
const EventContext& ctx,
int pdgID,
const std::vector<const xAOD::TrackParticle*> &pairV0,
const Amg::Vector3D &vertex)
const;
217 "primary vertex container" };
232 std::unique_ptr<MVAUtils::BDT>
m_BDT;
239 Gaudi::Property<std::string>
m_v0Key {
this,
"V0ContainerName",
"V0Candidates",
"V0 container name (same calling alg)" };
240 Gaudi::Property<std::string>
m_ksKey {
this,
"KshortContainerName",
"KshortCandidates",
"Ks container name (same calling alg)" };
241 Gaudi::Property<std::string>
m_laKey {
this,
"LambdaContainerName",
"LambdaCandidates",
242 "Lambda container name (same calling alg)" };
243 Gaudi::Property<std::string>
m_lbKey {
this,
"LambdabarContainerName",
"LambdabarCandidates",
244 "Lambdabar container name (same calling alg)" };
245 Gaudi::Property<int>
m_maxPV {
this,
"MaxPV", 999999 };
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
ElementLink implementation for ROOT usage.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
This class implements a vertex fitting algorithm optimised for V0 finding.
Eigen::Matrix< double, 3, 1 > Vector3D
static const InterfaceID IID_InDetV0FinderTool("InDetV0FinderTool", 1, 0)
constexpr double protonMassInMeV
the mass of the proton (in MeV)
constexpr double KZeroMassInMeV
the mass of the neutral kaon (K0) (in MeV)
constexpr double chargedPionMassInMeV
the mass of the charged pion (in MeV)
constexpr double electronMassInMeV
the mass of the electron (in MeV)
constexpr double lambdaMassInMeV
the mass of the lambda baryon (in MeV)
DecorHandleKeyArray< ReadDecorHandle< T, S >, ReadDecorHandleKey< T >, Gaudi::DataHandle::Reader > ReadDecorHandleKeyArray
HandleKeyArray< ReadHandle< T >, ReadHandleKey< T >, Gaudi::DataHandle::Reader > ReadHandleKeyArray
Ensure that the ATLAS eigen extensions are properly loaded.
ParametersBase< TrackParametersDim, Charged > TrackParameters
TrackParticle_v1 TrackParticle
Reference the current persistent version:
VertexContainer_v1 VertexContainer
Definition of the current "Vertex container version".
Vertex_v1 Vertex
Define the latest version of the vertex class.